fix #5692: adapt delete algorithm to annotatedLineEditor mechanisms
[taxeditor.git] / eu.etaxonomy.taxeditor.bulkeditor / src / main / java / eu / etaxonomy / taxeditor / bulkeditor / input / UserEditorInput.java
index e9469eca101555416640a607d1cbfdbeb6d9e92d..06bd812f7e98ac99755ca05adfac25cf3bcbb233 100644 (file)
 
 package eu.etaxonomy.taxeditor.bulkeditor.input;
 
+import java.util.Arrays;
 import java.util.List;
+import java.util.UUID;
 
 import eu.etaxonomy.cdm.api.service.IUserService;
+import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
 import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
 import eu.etaxonomy.cdm.api.service.exception.ReferencedObjectUndeletableException;
 import eu.etaxonomy.cdm.model.common.User;
@@ -62,20 +65,14 @@ public class UserEditorInput extends AbstractBulkEditorInput<User> {
         */
        @Override
        public User save(User entity) {
-           if(CdmStore.getCurrentSessionManager().isRemoting()) {
-               return CdmStore.getService(IUserService.class).merge(entity);
-           } else {
-               CdmStore.getService(IUserService.class).saveOrUpdate(entity);
-               return entity;
-           }
-
+           return CdmStore.getService(IUserService.class).merge(entity, true).getMergedEntity();
        }
 
        /* (non-Javadoc)
         * @see eu.etaxonomy.taxeditor.annotatedlineeditor.IEntityPersistenceService#delete(java.lang.Object)
         */
        @Override
-       public boolean delete(User entity) throws ReferencedObjectUndeletableException {
+       public boolean delete(User entity, DeleteConfiguratorBase config) throws ReferencedObjectUndeletableException {
                return CdmStore.getService(IUserService.class).delete(entity) != null;
        }
 
@@ -121,6 +118,14 @@ public class UserEditorInput extends AbstractBulkEditorInput<User> {
     public void merge() {
 
     }
+    
+
+       @Override
+       protected User loadEntity(UUID entityUuid) {
+               List<String> propertyPaths = Arrays.asList(new String[]{});
+               return CdmStore.getService(IUserService.class).load(entityUuid, propertyPaths);
+       }
+
 
 
 }