#5277 Correct session intialisation and default feature tree caching
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / editor / definedterm / DefinedTermEditor.java
index 3c1622449a607285cf67c703adf7986b26447cc9..11bea5cfb7573b68bc2063613dac4034cdbfd511 100644 (file)
@@ -9,11 +9,6 @@
  */\r
 package eu.etaxonomy.taxeditor.editor.definedterm;\r
 \r
-import java.util.ArrayList;\r
-import java.util.List;\r
-import java.util.Map;\r
-import java.util.Set;\r
-\r
 import org.eclipse.core.runtime.IProgressMonitor;\r
 import org.eclipse.jface.action.GroupMarker;\r
 import org.eclipse.jface.action.MenuManager;\r
@@ -40,17 +35,12 @@ import org.eclipse.ui.part.EditorPart;
 \r
 import eu.etaxonomy.cdm.api.conversation.ConversationHolder;\r
 import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;\r
-import eu.etaxonomy.cdm.api.service.IVocabularyService;\r
 import eu.etaxonomy.cdm.model.common.CdmBase;\r
-import eu.etaxonomy.cdm.model.common.DefinedTermBase;\r
 import eu.etaxonomy.cdm.model.common.OrderedTermBase;\r
-import eu.etaxonomy.cdm.model.common.TermVocabulary;\r
 import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;\r
 import eu.etaxonomy.taxeditor.editor.definedterm.input.TermEditorInput;\r
 import eu.etaxonomy.taxeditor.model.IDirtyMarkable;\r
 import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;\r
-import eu.etaxonomy.taxeditor.session.ICdmEntitySession;\r
-import eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled;\r
 import eu.etaxonomy.taxeditor.store.CdmStore;\r
 import eu.etaxonomy.taxeditor.ui.element.LayoutConstants;\r
 \r
@@ -59,7 +49,7 @@ import eu.etaxonomy.taxeditor.ui.element.LayoutConstants;
  * @date 3 Jan 2012\r
  *\r
  */\r
-public class DefinedTermEditor extends EditorPart implements IConversationEnabled, ISelectionListener, IDirtyMarkable, IPostOperationEnabled, ICdmEntitySessionEnabled {\r
+public class DefinedTermEditor extends EditorPart implements IConversationEnabled, ISelectionListener, IDirtyMarkable, IPostOperationEnabled {\r
 \r
        public static final String ID = "eu.etaxonomy.taxeditor.editor.definedTerm";\r
 \r
@@ -70,8 +60,6 @@ public class DefinedTermEditor extends EditorPart implements IConversationEnable
        private ISelectionService selectionService;\r
        private boolean dirty;\r
 \r
-       private final ICdmEntitySession cdmEntitySession;\r
-\r
 \r
        private final int dndOperations = DND.DROP_COPY | DND.DROP_MOVE;\r
        /**\r
@@ -80,7 +68,6 @@ public class DefinedTermEditor extends EditorPart implements IConversationEnable
        public DefinedTermEditor() {\r
                super();\r
                conversation = CdmStore.createConversation();\r
-               cdmEntitySession = CdmStore.getCurrentSessionManager().newSession(this, true);\r
        }\r
 \r
        @Override\r
@@ -161,9 +148,7 @@ public class DefinedTermEditor extends EditorPart implements IConversationEnable
        @Override\r
        public void doSave(IProgressMonitor monitor) {\r
                getConversationHolder().commit();\r
-               if(CdmStore.getCurrentSessionManager().isRemoting()) {\r
-                   CdmStore.getService(IVocabularyService.class).merge(new ArrayList<TermVocabulary>(getRootEntities()), true);\r
-               }\r
+               getDefinedTermEditorInput().merge();\r
                setDirty(false);\r
                getDefinedTermEditorInput().initialiseVocabularies();\r
                viewer.refresh();\r
@@ -194,7 +179,7 @@ public class DefinedTermEditor extends EditorPart implements IConversationEnable
        public void setFocus() {\r
            viewer.getControl().setFocus();\r
                getConversationHolder().bind();\r
-               cdmEntitySession.bind();\r
+               getDefinedTermEditorInput().bind();\r
        }\r
 \r
        @Override\r
@@ -275,34 +260,7 @@ public class DefinedTermEditor extends EditorPart implements IConversationEnable
 \r
        @Override\r
        public void dispose() {\r
-           cdmEntitySession.dispose();\r
+           getDefinedTermEditorInput().dispose();\r
            super.dispose();\r
        }\r
-\r
-    /* (non-Javadoc)\r
-     * @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled#getCdmEntitySession()\r
-     */\r
-    @Override\r
-    public ICdmEntitySession getCdmEntitySession() {\r
-        return cdmEntitySession;\r
-    }\r
-\r
-    /* (non-Javadoc)\r
-     * @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled#getRootEntities()\r
-     */\r
-    @Override\r
-    public Set<TermVocabulary<DefinedTermBase>> getRootEntities() {\r
-        return getDefinedTermEditorInput().getVocabularies();\r
-    }\r
-\r
-    /* (non-Javadoc)\r
-     * @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled#getPropertyPathsMap()\r
-     */\r
-    @Override\r
-    public Map<Object, List<String>> getPropertyPathsMap() {\r
-        // TODO Auto-generated method stub\r
-        return null;\r
-    }\r
-\r
-\r
 }
\ No newline at end of file