Trim code
[taxeditor.git] / eu.etaxonomy.taxeditor.bulkeditor / src / main / java / eu / etaxonomy / taxeditor / bulkeditor / input / AbstractBulkEditorInput.java
index 664035344691867fae48a1e4a3e91aab11ef56a9..d57ea686635b84c2219f18ff87d83e6e1c1873d6 100644 (file)
@@ -10,7 +10,6 @@
 package eu.etaxonomy.taxeditor.bulkeditor.input;
 
 import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.Collections;
 import java.util.Comparator;
 import java.util.List;
@@ -21,6 +20,7 @@ import org.eclipse.jface.resource.ImageDescriptor;
 import org.eclipse.ui.IEditorInput;
 import org.eclipse.ui.IPersistableElement;
 
+import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
 import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
 import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
 import eu.etaxonomy.cdm.model.common.CdmBase;
@@ -41,8 +41,6 @@ import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.store.CdmStore;
 
 /**
- * <p>Abstract AbstractBulkEditorInput class.</p>
- *
  * @author p.ciardelli
  * @created 25.06.2009
  * @version 1.0
@@ -56,33 +54,20 @@ public abstract class AbstractBulkEditorInput<T extends ICdmBase> extends CdmEnt
        private List<T> model;
 
        private IEntityCreator<T> entityCreator;
-
-       private static Class serviceClass;
+       private final ConversationHolder conversation;
 
        public AbstractBulkEditorInput() {
-
+           super(true);
+           this.conversation = CdmStore.createConversation();
        }
 
-       /**
-        * <p>NewInstance</p>
-        *
-        * @param inputType a {@link eu.etaxonomy.taxeditor.bulkeditor.input.BulkEditorInputTypeValues.BulkEditorInputType} object.
-        * @return a {@link eu.etaxonomy.taxeditor.bulkeditor.input.AbstractBulkEditorInput} object.
-        */
        static public AbstractBulkEditorInput NewInstance(BulkEditorInputType inputType) {
 
                return BulkEditorInputType.getInput(inputType);
        }
 
-       /**
-        * <p>NewInstance</p>
-        *
-        * @param entity a {@link eu.etaxonomy.cdm.model.common.IdentifiableEntity} object.
-        * @return a {@link eu.etaxonomy.taxeditor.bulkeditor.input.AbstractBulkEditorInput} object.
-        */
        public static AbstractBulkEditorInput NewInstance(IdentifiableEntity entity) {
 
-
                BulkEditorInputType inputType = BulkEditorInputType.getByType(entity.getClass());
 
                AbstractBulkEditorInput editorInput = NewInstance(inputType);
@@ -92,83 +77,35 @@ public abstract class AbstractBulkEditorInput<T extends ICdmBase> extends CdmEnt
                return editorInput;
        }
 
-       /**
-        * <p>listEntities</p>
-        *
-        * @param configurator a {@link eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator} object.
-        * @return a {@link java.util.List} object.
-        */
        protected abstract List<T> listEntities(IIdentifiableEntityServiceConfigurator configurator);
 
-       /**
-        * <p>loadEntity</p>
-        *
-        * @param entityUuid a {@link java.util.UUID} object.
-        * @return a T object.
-        */
-       protected T loadEntity(UUID entityUuid) {
-               List<String> propertyPaths = Arrays.asList(new String[]{});
-               return (T) CdmStore.getService(serviceClass).load(entityUuid, propertyPaths);
-       }
+       protected abstract T loadEntity(UUID entityUuid);
 
        private void setEntityUuid(UUID entityUuid){
                this.entityUuid = entityUuid;
        }
 
-       /**
-        * <p>Getter for the field <code>entityUuid</code>.</p>
-        *
-        * @return a {@link java.util.UUID} object.
-        */
        public UUID getEntityUuid() {
                return entityUuid;
        }
 
-
-       /* (non-Javadoc)
-        * @see org.eclipse.ui.IEditorInput#exists()
-        */
-       /**
-        * <p>exists</p>
-        *
-        * @return a boolean.
-        */
        @Override
     public boolean exists() {
                // TODO Auto-generated method stub
                return false;
        }
 
-       /* (non-Javadoc)
-        * @see org.eclipse.ui.IEditorInput#getImageDescriptor()
-        */
-       /**
-        * <p>getImageDescriptor</p>
-        *
-        * @return a {@link org.eclipse.jface.resource.ImageDescriptor} object.
-        */
        @Override
     public ImageDescriptor getImageDescriptor() {
                // TODO Auto-generated method stub
                return null;
        }
 
-       /* (non-Javadoc)
-        * @see org.eclipse.ui.IEditorInput#getPersistable()
-        */
-       /**
-        * <p>getPersistable</p>
-        *
-        * @return a {@link org.eclipse.ui.IPersistableElement} object.
-        */
        @Override
     public IPersistableElement getPersistable() {
                return null;
        }
 
-       /* (non-Javadoc)
-        * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
-        */
        /** {@inheritDoc} */
        @Override
     @SuppressWarnings("unchecked")
@@ -176,11 +113,6 @@ public abstract class AbstractBulkEditorInput<T extends ICdmBase> extends CdmEnt
                return null;
        }
 
-       /**
-        * <p>Setter for the field <code>query</code>.</p>
-        *
-        * @param bulkEditorQuery a {@link eu.etaxonomy.taxeditor.bulkeditor.IBulkEditorQuery} object.
-        */
        public void performSearch(final BulkEditorQuery bulkEditorQuery) {
 
                List<T> entityList = new ArrayList<T>();
@@ -206,29 +138,14 @@ public abstract class AbstractBulkEditorInput<T extends ICdmBase> extends CdmEnt
                model = entityList;
        }
 
-       /**
-        * <p>isMergingEnabled</p>
-        *
-        * @return a boolean.
-        */
        public boolean isMergingEnabled() {
                return false;
        }
 
-       /**
-        * <p>isMergingEnabled</p>
-        *
-        * @return a boolean.
-        */
        public boolean isConvertingEnabled() {
                return false;
        }
-       /**
-        * <p>isMarkerTypeEditingEnabled</p>
-        *
-        * @param markerType a {@link eu.etaxonomy.cdm.model.common.MarkerType} object.
-        * @return a boolean.
-        */
+
        public boolean isMarkerTypeEditingEnabled(MarkerType markerType) {
                return false;
        }
@@ -239,7 +156,7 @@ public abstract class AbstractBulkEditorInput<T extends ICdmBase> extends CdmEnt
     public boolean merge(T entity, T mergeTarget) {
                if (entity instanceof IMergable) {
                        try {
-                               CdmStore.getCommonService().merge(mergeTarget.getId(), entity.getId(), (Class<? extends CdmBase>)entity.getClass());
+                               CdmStore.getCommonService().merge(mergeTarget.getUuid(), entity.getUuid(), (Class<? extends CdmBase>)entity.getClass());
                        } catch (MergeException e) {
                                MessagingUtils.errorDialog("Bulk Editor Merge Error",
                                                this,
@@ -266,9 +183,6 @@ public abstract class AbstractBulkEditorInput<T extends ICdmBase> extends CdmEnt
                return entityCreator;
        }
 
-       /**
-        * @return
-        */
        protected abstract IEntityCreator<T> createEntityCreator();
 
        /**
@@ -295,10 +209,6 @@ public abstract class AbstractBulkEditorInput<T extends ICdmBase> extends CdmEnt
                return entity.getClass().getSimpleName();
        }
 
-       /**
-        * @param entity
-        * @return
-        */
        public String getText(T entity) {
                if(entity instanceof IdentifiableEntity){
                        IdentifiableEntity identifiableEntity = (IdentifiableEntity) HibernateProxyHelper.deproxy(entity);
@@ -309,9 +219,6 @@ public abstract class AbstractBulkEditorInput<T extends ICdmBase> extends CdmEnt
                return "No text. Implement in subclass";
        }
 
-       /**
-        * @return
-        */
        public List<T> getModel() {
                return model;
        }
@@ -326,21 +233,19 @@ public abstract class AbstractBulkEditorInput<T extends ICdmBase> extends CdmEnt
            }
        }
 
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled#getRootEntities()
-     */
     @Override
     public   List<T> getRootEntities() {
         return getModel();
     }
 
 
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled#getPropertyPathsMap()
-     */
     @Override
     public Map<Object, List<String>> getPropertyPathsMap() {
         // TODO Auto-generated method stub
         return null;
     }
+
+       public ConversationHolder getConversation() {
+               return conversation;
+       }
 }