
org.xmind.core.marker.AbstractMarkerResource Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of xmindjbehaveplugin Show documentation
Show all versions of xmindjbehaveplugin Show documentation
Plugin that manages JBehave stories storage in XMind mindmap file, which allows design jBehave tests right after the brainstorm
The newest version!
/* ******************************************************************************
* Copyright (c) 2006-2012 XMind Ltd. and others.
*
* This file is a part of XMind 3. XMind releases 3 and
* above are dual-licensed under the Eclipse Public License (EPL),
* which is available at http://www.eclipse.org/legal/epl-v10.html
* and the GNU Lesser General Public License (LGPL),
* which is available at http://www.gnu.org/licenses/lgpl.html
* See http://www.xmind.net/license.html for details.
*
* Contributors:
* XMind Ltd. - initial API and implementation
*******************************************************************************/
package org.xmind.core.marker;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.List;
public abstract class AbstractMarkerResource implements IMarkerResource {
private String mainPath;
private IMarker marker;
private List variations = null;
public AbstractMarkerResource(IMarker marker) {
this(marker, null);
}
public AbstractMarkerResource(IMarker marker, String mainPath) {
if (marker == null)
throw new IllegalArgumentException();
this.marker = marker;
this.mainPath = mainPath == null ? "/" : mainPath; //$NON-NLS-1$
}
protected IMarker getMarker() {
return marker;
}
public String getPath() {
return marker.getResourcePath();
}
public String getFullPath() {
String path = getPath();
if (!path.startsWith("/")) { //$NON-NLS-1$
path = getMainPath() + path;
}
return path;
}
protected String getMainPath() {
return mainPath;
}
public synchronized List getVariations() {
if (variations == null) {
variations = new ArrayList();
loadVariations(variations);
}
return variations;
}
protected void loadVariations(List variations) {
}
public InputStream getInputStream(IMarkerVariation variation) {
return getInputStream();
}
public OutputStream getOutputStream(IMarkerVariation variation) {
return getOutputStream();
}
public boolean equals(Object obj) {
if (obj == this)
return true;
if (obj == null || !(obj instanceof AbstractMarkerResource))
return false;
AbstractMarkerResource that = (AbstractMarkerResource) obj;
return this.marker.equals(that.marker);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy