Deprecate getCharacterData method in service layer
[cdmlib.git] / cdmlib-services / src / main / java / eu / etaxonomy / cdm / api / service / IDescriptionService.java
index 4ef6871db25f9d11b048e9490a4272dffc67b36b..00390d74b7277668363dce9e2165b4a0e0dd24f0 100644 (file)
@@ -38,6 +38,7 @@ import eu.etaxonomy.cdm.model.media.Media;
 import eu.etaxonomy.cdm.model.name.TaxonNameBase;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.cdm.persistence.dao.initializer.IBeanInitializer;
+import eu.etaxonomy.cdm.persistence.dto.TermDto;
 import eu.etaxonomy.cdm.persistence.query.OrderHint;
 
 public interface IDescriptionService extends IIdentifiableEntityService<DescriptionBase> {
@@ -99,6 +100,8 @@ public interface IDescriptionService extends IIdentifiableEntityService<Descript
      */
     public UUID deleteDescriptionElement(DescriptionElementBase descriptionElement);
 
+    public UUID deleteDescriptionElement(UUID descriptionElementUuid);
+
     /**
      * List the descriptions of type <T>, filtered using the following parameters
      *
@@ -537,8 +540,9 @@ public interface IDescriptionService extends IIdentifiableEntityService<Descript
      * @param targetDescription
      * @param isPaste if true, the elements are only copied (cloned) and not removed from the
      *         old description
+     * @return
      */
-    public void moveDescriptionElementsToDescription(Collection<DescriptionElementBase> descriptionElements, DescriptionBase targetDescription, boolean isPaste);
+    public UpdateResult moveDescriptionElementsToDescription(Collection<DescriptionElementBase> descriptionElements, DescriptionBase targetDescription, boolean isPaste);
 
     /**
      * Pager method to get all {@link NamedAreas} instances which are currently used
@@ -556,9 +560,46 @@ public interface IDescriptionService extends IIdentifiableEntityService<Descript
      * @return a Pager for all NamedAreas instances which are currently in use.
      *
      */
-    public Pager<NamedArea> pageNamedAreasInUse(Integer pageSize,
-            Integer pageNumber, List<String> propertyPaths);
+    public Pager<TermDto> pageNamedAreasInUse(boolean includeAllParents, Integer pageSize,
+            Integer pageNumber);
+
+       public DeleteResult deleteDescription(DescriptionBase description);
+
+       public DeleteResult deleteDescription(UUID descriptionUuid);
+
+    /**
+     * @param sourceTaxon
+     * @param targetTaxon
+     * @return
+     */
+    public UpdateResult moveTaxonDescriptions(Taxon sourceTaxon, Taxon targetTaxon);
+
+    /**
+     * @param sourceTaxonUuid
+     * @param targetTaxonUuid
+     * @return
+     */
+    public UpdateResult moveTaxonDescriptions(UUID sourceTaxonUuid, UUID targetTaxonUuid);
+
+
+    /**
+     * @param descriptionElementUUIDs
+     * @param targetDescriptionUuid
+     * @param isCopy
+     * @return
+     */
+    public UpdateResult moveDescriptionElementsToDescription(Set<UUID> descriptionElementUUIDs, UUID targetDescriptionUuid,
+            boolean isCopy);
+
+    /**
+     * @param descriptionElementUUIDs
+     * @param targetTaxonUuid
+     * @param moveMessage
+     * @param isCopy
+     * @return
+     */
+    public UpdateResult moveDescriptionElementsToDescription(Set<UUID> descriptionElementUUIDs, UUID targetTaxonUuid,
+            String moveMessage, boolean isCopy);
 
-       UUID deleteDescription(DescriptionBase description);
 
 }
\ No newline at end of file