tabbed_properties branch merged into trunk completely
[taxeditor.git] / taxeditor-bulkeditor / src / main / java / eu / etaxonomy / taxeditor / bulkeditor / input / ReferenceEditorInput.java
index 8ae7af30e0f737f9b8df69fef18f1fc1c7293486..8ee2eb8a71f92406124e68f902da622992f4cc67 100644 (file)
@@ -9,7 +9,14 @@
 */\r
 package eu.etaxonomy.taxeditor.bulkeditor.input;\r
 \r
+import java.util.Arrays;\r
+import java.util.List;\r
+import java.util.UUID;\r
+\r
+import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;\r
 import eu.etaxonomy.cdm.model.common.MarkerType;\r
+import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
+import eu.etaxonomy.taxeditor.store.CdmStore;\r
 \r
 \r
 /**\r
@@ -17,7 +24,12 @@ import eu.etaxonomy.cdm.model.common.MarkerType;
  * @created 25.06.2009\r
  * @version 1.0\r
  */\r
-public class ReferenceEditorInput extends BulkEditorInput {\r
+public class ReferenceEditorInput extends AbstractBulkEditorInput<ReferenceBase> {\r
+\r
+       /**\r
+        * \r
+        */\r
+       private static final long serialVersionUID = 3806243517765126749L;\r
 \r
        public static final String ID = "bulkeditor.input.reference";\r
        \r
@@ -41,7 +53,7 @@ public class ReferenceEditorInput extends BulkEditorInput {
         * @see org.eclipse.ui.IEditorInput#getName()\r
         */\r
        public String getName() {\r
-               return "Bulk Editor - References";\r
+               return "References";\r
        }\r
 \r
        /* (non-Javadoc)\r
@@ -54,7 +66,7 @@ public class ReferenceEditorInput extends BulkEditorInput {
        /**\r
         * @return\r
         */\r
-       public static BulkEditorInput getInstance() {\r
+       public static AbstractBulkEditorInput getInstance() {\r
                if (instance == null) {\r
                        instance = new ReferenceEditorInput();\r
                }\r
@@ -79,4 +91,25 @@ public class ReferenceEditorInput extends BulkEditorInput {
                }\r
                return super.isMarkerTypeEditingEnabled(markerType);\r
        }\r
+\r
+       // Entity persistence\r
+       \r
+       @Override\r
+       public List listEntities(IIdentifiableEntityServiceConfigurator configurator) {\r
+               return CdmStore.findReferences(configurator);\r
+       }\r
+\r
+       @Override\r
+       public ReferenceBase loadEntity(UUID entityUuid) {\r
+               List<String> propertyPaths = Arrays.asList(new String[]{"*", "inReference.*", "authorTeam.*"}); \r
+               return CdmStore.getReferenceService().load(entityUuid, propertyPaths);\r
+       }\r
+\r
+       public boolean delete(Object entity) {\r
+               return CdmStore.getReferenceService().delete((ReferenceBase) entity) != null;\r
+       }\r
+\r
+       public boolean save(Object entity) {\r
+               return CdmStore.getReferenceService().saveOrUpdate((ReferenceBase) entity) != null;\r
+       }\r
 }
\ No newline at end of file