package eu.etaxonomy.taxeditor.molecular.editor;
+import java.util.Arrays;
+import java.util.List;
import java.util.UUID;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.ui.IEditorInput;
import org.eclipse.ui.IPersistableElement;
+import eu.etaxonomy.cdm.api.service.molecular.ISequenceService;
+import eu.etaxonomy.cdm.model.molecular.Sequence;
+import eu.etaxonomy.taxeditor.editor.CdmEntitySessionInput;
+import eu.etaxonomy.taxeditor.store.CdmStore;
+
/**
* @author Ben Stöver
* @date 04.08.2014
*/
-public class AlignmentEditorInput implements IEditorInput {
+public class AlignmentEditorInput extends CdmEntitySessionInput implements IEditorInput {
private static final String name = "AlignmentEditor";
private final UUID sequenceNodeUuid;
-
+ private Sequence sequenceNode;
public AlignmentEditorInput(UUID sequenceNodeUuid) {
- super();
+ super(false);
this.sequenceNodeUuid = sequenceNodeUuid;
+ initSession();
}
}
return true;
}
+
+
+ public void setSequenceNode(Sequence sequenceNode) {
+ this.sequenceNode = sequenceNode;
+ }
+
+ /* (non-Javadoc)
+ * @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled#getRootEntities()
+ */
+ @Override
+ public List<Sequence> getRootEntities() {
+ return Arrays.asList(sequenceNode);
+ }
+
+
+ /* (non-Javadoc)
+ * @see eu.etaxonomy.taxeditor.editor.CdmEntitySessionInput#merge()
+ */
+ @Override
+ public void merge() {
+ if(CdmStore.getCurrentSessionManager().isRemoting()) {
+ CdmStore.getService(ISequenceService.class).merge(sequenceNode, true);
+ }
+ }
}