Fix issues with merge conflicts
[taxeditor.git] / eu.etaxonomy.taxeditor.editor / src / main / java / eu / etaxonomy / taxeditor / editor / view / dataimport / transientServices / TransientClassificationService.java
index 8666796eecc064c22535b2c172e5f8b9a228d2a3..3279e09ffa7a8fcd504354cbd89a69d26df2d3cd 100644 (file)
@@ -15,23 +15,27 @@ import java.util.Map;
 import java.util.Set;
 import java.util.UUID;
 
-import org.hibernate.LockMode;
+import org.hibernate.LockOptions;
 import org.hibernate.Session;
 import org.hibernate.criterion.Criterion;
 import org.hibernate.envers.query.criteria.AuditCriterion;
 
+import eu.etaxonomy.cdm.api.service.DeleteResult;
 import eu.etaxonomy.cdm.api.service.IClassificationService;
+import eu.etaxonomy.cdm.api.service.UpdateResult;
+import eu.etaxonomy.cdm.api.service.config.CreateHierarchyForClassificationConfigurator;
+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.api.service.dto.FindByIdentifierDTO;
 import eu.etaxonomy.cdm.api.service.pager.Pager;
 import eu.etaxonomy.cdm.common.monitor.IProgressMonitor;
 import eu.etaxonomy.cdm.model.common.Annotation;
+import eu.etaxonomy.cdm.model.common.DefinedTerm;
 import eu.etaxonomy.cdm.model.common.ISourceable;
 import eu.etaxonomy.cdm.model.common.IdentifiableSource;
 import eu.etaxonomy.cdm.model.common.LSID;
 import eu.etaxonomy.cdm.model.common.Marker;
 import eu.etaxonomy.cdm.model.common.MarkerType;
-import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
 import eu.etaxonomy.cdm.model.media.MediaRepresentation;
 import eu.etaxonomy.cdm.model.media.Rights;
 import eu.etaxonomy.cdm.model.name.Rank;
@@ -42,6 +46,7 @@ import eu.etaxonomy.cdm.model.taxon.TaxonNode;
 import eu.etaxonomy.cdm.model.view.AuditEvent;
 import eu.etaxonomy.cdm.model.view.AuditEventRecord;
 import eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort;
+import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
 import eu.etaxonomy.cdm.persistence.query.Grouping;
 import eu.etaxonomy.cdm.persistence.query.MatchMode;
 import eu.etaxonomy.cdm.persistence.query.OrderHint;
@@ -56,13 +61,13 @@ import eu.etaxonomy.cdm.strategy.merge.IMergeStrategy;
  */
 public class TransientClassificationService implements IClassificationService {
 
-    private IClassificationService defaultClassificationService;
+    private final IClassificationService defaultService;
 
     /**
      * @param defaultClassificationService
      */
     public TransientClassificationService(IClassificationService defaultClassificationService) {
-        this.defaultClassificationService = defaultClassificationService;
+        this.defaultService = defaultClassificationService;
     }
 
     /**
@@ -76,7 +81,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Pager<AuditEventRecord<Classification>> pageAuditEvents(Classification t, Integer pageSize, Integer pageNumber, AuditEventSort sort, List<String> propertyPaths) {
-        return defaultClassificationService.pageAuditEvents(t, pageSize, pageNumber, sort, propertyPaths);
+        return defaultService.pageAuditEvents(t, pageSize, pageNumber, sort, propertyPaths);
     }
 
     /**
@@ -91,7 +96,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Pager<Annotation> getAnnotations(Classification annotatedObj, MarkerType status, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultClassificationService.getAnnotations(annotatedObj, status, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.getAnnotations(annotatedObj, status, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -101,7 +106,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public TaxonNode getTaxonNodeByUuid(UUID uuid) {
-        return defaultClassificationService.getTaxonNodeByUuid(uuid);
+        return defaultService.getTaxonNodeByUuid(uuid);
     }
 
     /**
@@ -111,7 +116,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public ITaxonTreeNode getTreeNodeByUuid(UUID uuid) {
-        return defaultClassificationService.getTreeNodeByUuid(uuid);
+        return defaultService.getTreeNodeByUuid(uuid);
     }
 
     /**
@@ -120,7 +125,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public void clear() {
-        defaultClassificationService.clear();
+        defaultService.clear();
     }
 
     /**
@@ -133,7 +138,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public List<Classification> listClassifications(Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultClassificationService.listClassifications(limit, start, orderHints, propertyPaths);
+        return defaultService.listClassifications(limit, start, orderHints, propertyPaths);
     }
 
     /**
@@ -142,8 +147,8 @@ public class TransientClassificationService implements IClassificationService {
      * @see eu.etaxonomy.cdm.api.service.IService#lock(eu.etaxonomy.cdm.model.common.ICdmBase, org.hibernate.LockMode)
      */
     @Override
-    public void lock(Classification t, LockMode lockMode) {
-        defaultClassificationService.lock(t, lockMode);
+    public void lock(Classification t, LockOptions lockOptions) {
+        defaultService.lock(t, lockOptions);
     }
 
     /**
@@ -153,8 +158,8 @@ public class TransientClassificationService implements IClassificationService {
      * @see eu.etaxonomy.cdm.api.service.IService#refresh(eu.etaxonomy.cdm.model.common.ICdmBase, org.hibernate.LockMode, java.util.List)
      */
     @Override
-    public void refresh(Classification t, LockMode lockMode, List<String> propertyPaths) {
-        defaultClassificationService.refresh(t, lockMode, propertyPaths);
+    public void refresh(Classification t, LockOptions lockOptions, List<String> propertyPaths) {
+        defaultService.refresh(t, lockOptions, propertyPaths);
     }
 
     /**
@@ -168,7 +173,7 @@ public class TransientClassificationService implements IClassificationService {
     @Deprecated
     @Override
     public TaxonNode loadTaxonNodeByTaxon(Taxon taxon, UUID classificationUuid, List<String> propertyPaths) {
-        return defaultClassificationService.loadTaxonNodeByTaxon(taxon, classificationUuid, propertyPaths);
+        return defaultService.loadTaxonNodeByTaxon(taxon, classificationUuid, propertyPaths);
     }
 
     /**
@@ -177,7 +182,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public void updateTitleCache() {
-        defaultClassificationService.updateTitleCache();
+        defaultService.updateTitleCache();
     }
 
     /**
@@ -187,7 +192,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public AuditEventRecord<Classification> getNextAuditEvent(Classification t) {
-        return defaultClassificationService.getNextAuditEvent(t);
+        return defaultService.getNextAuditEvent(t);
     }
 
     /**
@@ -202,7 +207,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Pager<Marker> getMarkers(Classification annotatableEntity, Boolean technical, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultClassificationService.getMarkers(annotatableEntity, technical, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.getMarkers(annotatableEntity, technical, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -214,7 +219,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public void updateTitleCache(Class<? extends Classification> clazz, Integer stepSize, IIdentifiableEntityCacheStrategy<Classification> cacheStrategy, IProgressMonitor monitor) {
-        defaultClassificationService.updateTitleCache(clazz, stepSize, cacheStrategy, monitor);
+        defaultService.updateTitleCache(clazz, stepSize, cacheStrategy, monitor);
     }
 
     /**
@@ -227,7 +232,7 @@ public class TransientClassificationService implements IClassificationService {
     @Deprecated
     @Override
     public TaxonNode loadTaxonNode(TaxonNode taxonNode, List<String> propertyPaths) {
-        return defaultClassificationService.loadTaxonNode(taxonNode, propertyPaths);
+        return defaultService.loadTaxonNode(taxonNode, propertyPaths);
     }
 
     /**
@@ -237,7 +242,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public AuditEventRecord<Classification> getPreviousAuditEvent(Classification t) {
-        return defaultClassificationService.getPreviousAuditEvent(t);
+        return defaultService.getPreviousAuditEvent(t);
     }
 
     /**
@@ -253,7 +258,7 @@ public class TransientClassificationService implements IClassificationService {
     @Deprecated
     @Override
     public List<TaxonNode> loadRankSpecificRootNodes(Classification classification, Rank rank, Integer limit, Integer start, List<String> propertyPaths) {
-        return defaultClassificationService.loadRankSpecificRootNodes(classification, rank, limit, start, propertyPaths);
+        return defaultService.loadRankSpecificRootNodes(classification, rank, limit, start, propertyPaths);
     }
 
     /**
@@ -263,7 +268,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public int count(Class<? extends Classification> clazz) {
-        return defaultClassificationService.count(clazz);
+        return defaultService.count(clazz);
     }
 
     /**
@@ -280,7 +285,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Pager<AuditEventRecord<Classification>> pageAuditEvents(Class<? extends Classification> clazz, AuditEvent from, AuditEvent to, List<AuditCriterion> criteria, Integer pageSize, Integer pageValue, AuditEventSort sort, List<String> propertyPaths) {
-        return defaultClassificationService.pageAuditEvents(clazz, from, to, criteria, pageSize, pageValue, sort, propertyPaths);
+        return defaultService.pageAuditEvents(clazz, from, to, criteria, pageSize, pageValue, sort, propertyPaths);
     }
 
     /**
@@ -290,7 +295,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Classification find(LSID lsid) {
-        return defaultClassificationService.find(lsid);
+        return defaultService.find(lsid);
     }
 
     /**
@@ -299,8 +304,8 @@ public class TransientClassificationService implements IClassificationService {
      * @see eu.etaxonomy.cdm.api.service.IService#delete(eu.etaxonomy.cdm.model.common.ICdmBase)
      */
     @Override
-    public UUID delete(Classification persistentObject) throws ReferencedObjectUndeletableException{
-        return defaultClassificationService.delete(persistentObject);
+    public DeleteResult delete(Classification persistentObject) {
+        return defaultService.delete(persistentObject);
     }
 
     /**
@@ -314,7 +319,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public List<Object[]> groupMarkers(Class<? extends Classification> clazz, Boolean technical, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
-        return defaultClassificationService.groupMarkers(clazz, technical, pageSize, pageNumber, propertyPaths);
+        return defaultService.groupMarkers(clazz, technical, pageSize, pageNumber, propertyPaths);
     }
 
     /**
@@ -324,7 +329,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public boolean exists(UUID uuid) {
-        return defaultClassificationService.exists(uuid);
+        return defaultService.exists(uuid);
     }
 
     /**
@@ -335,7 +340,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Classification replace(Classification x, Classification y) {
-        return defaultClassificationService.replace(x, y);
+        return defaultService.replace(x, y);
     }
 
     /**
@@ -345,7 +350,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public List<Classification> find(Set<UUID> uuidSet) {
-        return defaultClassificationService.find(uuidSet);
+        return defaultService.find(uuidSet);
     }
 
     /**
@@ -358,7 +363,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Pager<IdentifiableSource> getSources(Classification t, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
-        return defaultClassificationService.getSources(t, pageSize, pageNumber, propertyPaths);
+        return defaultService.getSources(t, pageSize, pageNumber, propertyPaths);
     }
 
     /**
@@ -372,7 +377,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public List<TaxonNode> listRankSpecificRootNodes(Classification classification, Rank rank, Integer pageSize, Integer pageIndex, List<String> propertyPaths) {
-        return defaultClassificationService.listRankSpecificRootNodes(classification, rank, pageSize, pageIndex, propertyPaths);
+        return defaultService.listRankSpecificRootNodes(classification, rank, pageSize, pageIndex, propertyPaths);
     }
 
     /**
@@ -382,7 +387,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Classification find(UUID uuid) {
-        return defaultClassificationService.find(uuid);
+        return defaultService.find(uuid);
     }
 
     /**
@@ -392,7 +397,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Classification find(int id) {
-        return defaultClassificationService.find(id);
+        return defaultService.find(id);
     }
 
     /**
@@ -405,7 +410,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Pager<Rights> getRights(Classification t, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
-        return defaultClassificationService.getRights(t, pageSize, pageNumber, propertyPaths);
+        return defaultService.getRights(t, pageSize, pageNumber, propertyPaths);
     }
 
     /**
@@ -416,7 +421,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public int countMarkers(Class<? extends Classification> clazz, Boolean technical) {
-        return defaultClassificationService.countMarkers(clazz, technical);
+        return defaultService.countMarkers(clazz, technical);
     }
 
     /**
@@ -426,7 +431,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public List<Classification> findById(Set<Integer> idSet) {
-        return defaultClassificationService.findById(idSet);
+        return defaultService.findById(idSet);
     }
 
     /**
@@ -438,7 +443,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public ISourceable getSourcedObjectByIdInSource(Class clazz, String idInSource, String idNamespace) {
-        return defaultClassificationService.getSourcedObjectByIdInSource(clazz, idInSource, idNamespace);
+        return defaultService.getSourcedObjectByIdInSource(clazz, idInSource, idNamespace);
     }
 
     /**
@@ -452,7 +457,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Pager<TaxonNode> pageRankSpecificRootNodes(Classification classification, Rank rank, Integer pageSize, Integer pageIndex, List<String> propertyPaths) {
-        return defaultClassificationService.pageRankSpecificRootNodes(classification, rank, pageSize, pageIndex, propertyPaths);
+        return defaultService.pageRankSpecificRootNodes(classification, rank, pageSize, pageIndex, propertyPaths);
     }
 
     /**
@@ -461,7 +466,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Session getSession() {
-        return defaultClassificationService.getSession();
+        return defaultService.getSession();
     }
 
     /**
@@ -470,7 +475,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public List<UuidAndTitleCache<Classification>> getUuidAndTitleCache() {
-        return defaultClassificationService.getUuidAndTitleCache();
+        return defaultService.getUuidAndTitleCache();
     }
 
     /**
@@ -484,7 +489,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public List<Object[]> group(Class<? extends Classification> clazz, Integer limit, Integer start, List<Grouping> groups, List<String> propertyPaths) {
-        return defaultClassificationService.group(clazz, limit, start, groups, propertyPaths);
+        return defaultService.group(clazz, limit, start, groups, propertyPaths);
     }
 
     /**
@@ -501,7 +506,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Pager<Classification> findByTitle(Class<? extends Classification> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultClassificationService.findByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.findByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -513,7 +518,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public List<TaxonNode> loadTreeBranch(TaxonNode taxonNode, Rank baseRank, List<String> propertyPaths) {
-        return defaultClassificationService.loadTreeBranch(taxonNode, baseRank, propertyPaths);
+        return defaultService.loadTreeBranch(taxonNode, baseRank, propertyPaths);
     }
 
     /**
@@ -526,8 +531,8 @@ public class TransientClassificationService implements IClassificationService {
      * @see eu.etaxonomy.cdm.api.service.IService#list(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
      */
     @Override
-    public List<Classification> list(Class<? extends Classification> type, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultClassificationService.list(type, limit, start, orderHints, propertyPaths);
+    public <S extends Classification> List<S> list(Class<S> type, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
+        return defaultService.list(type, limit, start, orderHints, propertyPaths);
     }
 
     /**
@@ -540,7 +545,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public List<TaxonNode> loadTreeBranchToTaxon(Taxon taxon, Classification classification, Rank baseRank, List<String> propertyPaths) {
-        return defaultClassificationService.loadTreeBranchToTaxon(taxon, classification, baseRank, propertyPaths);
+        return defaultService.loadTreeBranchToTaxon(taxon, classification, baseRank, propertyPaths);
     }
 
     /**
@@ -550,7 +555,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Pager<Classification> findByTitle(IIdentifiableEntityServiceConfigurator<Classification> configurator) {
-        return defaultClassificationService.findByTitle(configurator);
+        return defaultService.findByTitle(configurator);
     }
 
     /**
@@ -563,7 +568,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Integer countByTitle(Class<? extends Classification> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria) {
-        return defaultClassificationService.countByTitle(clazz, queryString, matchmode, criteria);
+        return defaultService.countByTitle(clazz, queryString, matchmode, criteria);
     }
 
     /**
@@ -573,7 +578,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Classification load(UUID uuid) {
-        return defaultClassificationService.load(uuid);
+        return defaultService.load(uuid);
     }
 
     /**
@@ -584,7 +589,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Classification load(UUID uuid, List<String> propertyPaths) {
-        return defaultClassificationService.load(uuid, propertyPaths);
+        return defaultService.load(uuid, propertyPaths);
     }
 
     /**
@@ -594,19 +599,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Integer countByTitle(IIdentifiableEntityServiceConfigurator<Classification> configurator) {
-        return defaultClassificationService.countByTitle(configurator);
-    }
-
-    /**
-     * @param taxon
-     * @param classification
-     * @param propertyPaths
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IClassificationService#loadChildNodesOfTaxon(eu.etaxonomy.cdm.model.taxon.Taxon, eu.etaxonomy.cdm.model.taxon.Classification, java.util.List)
-     */
-    @Override
-    public List<TaxonNode> loadChildNodesOfTaxon(Taxon taxon, Classification classification, List<String> propertyPaths) {
-        return defaultClassificationService.loadChildNodesOfTaxon(taxon, classification, propertyPaths);
+        return defaultService.countByTitle(configurator);
     }
 
     /**
@@ -616,7 +609,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Classification merge(Classification transientObject) {
-        return defaultClassificationService.merge(transientObject);
+        return defaultService.merge(transientObject);
     }
 
     /**
@@ -633,7 +626,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public List<Classification> listByTitle(Class<? extends Classification> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultClassificationService.listByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.listByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -646,8 +639,8 @@ public class TransientClassificationService implements IClassificationService {
      * @see eu.etaxonomy.cdm.api.service.IService#page(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
      */
     @Override
-    public Pager<Classification> page(Class<? extends Classification> type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultClassificationService.page(type, pageSize, pageNumber, orderHints, propertyPaths);
+    public <S extends Classification> Pager<S> page(Class<S> type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
+        return defaultService.page(type, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -660,7 +653,7 @@ public class TransientClassificationService implements IClassificationService {
     @Deprecated
     @Override
     public List<TaxonNode> loadChildNodesOfTaxonNode(TaxonNode taxonNode, List<String> propertyPaths) {
-        return defaultClassificationService.loadChildNodesOfTaxonNode(taxonNode, propertyPaths);
+        return defaultService.loadChildNodesOfTaxonNode(taxonNode, propertyPaths);
     }
 
     /**
@@ -670,7 +663,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public List<UuidAndTitleCache<TaxonNode>> getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(Classification classification) {
-        return defaultClassificationService.getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(classification);
+        return defaultService.getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(classification);
     }
 
     /**
@@ -688,7 +681,7 @@ public class TransientClassificationService implements IClassificationService {
     @Deprecated
     @Override
     public Map<UUID, List<MediaRepresentation>> getAllMediaForChildNodes(Taxon taxon, Classification taxTree, List<String> propertyPaths, int size, int height, int widthOrDuration, String[] mimeTypes) {
-        return defaultClassificationService.getAllMediaForChildNodes(taxon, taxTree, propertyPaths, size, height, widthOrDuration, mimeTypes);
+        return defaultService.getAllMediaForChildNodes(taxon, taxTree, propertyPaths, size, height, widthOrDuration, mimeTypes);
     }
 
     /**
@@ -698,7 +691,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public UUID refresh(Classification persistentObject) {
-        return defaultClassificationService.refresh(persistentObject);
+        return defaultService.refresh(persistentObject);
     }
 
     /**
@@ -715,7 +708,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public List<Classification> listByReferenceTitle(Class<? extends Classification> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultClassificationService.listByReferenceTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.listByReferenceTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -730,7 +723,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Map<UUID, List<MediaRepresentation>> getAllMediaForChildNodes(TaxonNode taxonNode, List<String> propertyPaths, int size, int height, int widthOrDuration, String[] mimeTypes) {
-        return defaultClassificationService.getAllMediaForChildNodes(taxonNode, propertyPaths, size, height, widthOrDuration, mimeTypes);
+        return defaultService.getAllMediaForChildNodes(taxonNode, propertyPaths, size, height, widthOrDuration, mimeTypes);
     }
 
     /**
@@ -742,7 +735,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public List<Classification> rows(String tableName, int limit, int start) {
-        return defaultClassificationService.rows(tableName, limit, start);
+        return defaultService.rows(tableName, limit, start);
     }
 
     /**
@@ -764,7 +757,7 @@ public class TransientClassificationService implements IClassificationService {
     @Deprecated
     @Override
     public UUID removeTaxonNode(TaxonNode taxonNode) {
-        return defaultClassificationService.removeTaxonNode(taxonNode);
+        return defaultService.removeTaxonNode(taxonNode);
     }
 
     /**
@@ -818,7 +811,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public UUID removeTreeNode(ITaxonTreeNode treeNode) {
-        return defaultClassificationService.removeTreeNode(treeNode);
+        return defaultService.removeTreeNode(treeNode);
     }
 
     /**
@@ -833,7 +826,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Pager<Classification> search(Class<? extends Classification> clazz, String queryString, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultClassificationService.search(clazz, queryString, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.search(clazz, queryString, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -862,7 +855,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public List<TaxonNode> getAllNodes() {
-        return defaultClassificationService.getAllNodes();
+        return defaultService.getAllNodes();
     }
 
     /**
@@ -872,7 +865,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public UUID update(Classification transientObject) {
-        return defaultClassificationService.update(transientObject);
+        return defaultService.update(transientObject);
     }
 
     /**
@@ -887,7 +880,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public List<Classification> list(Classification example, Set<String> includeProperties, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultClassificationService.list(example, includeProperties, limit, start, orderHints, propertyPaths);
+        return defaultService.list(example, includeProperties, limit, start, orderHints, propertyPaths);
     }
 
     /**
@@ -899,7 +892,7 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public int deduplicate(Class<? extends Classification> clazz, IMatchStrategy matchStrategy, IMergeStrategy mergeStrategy) {
-        return defaultClassificationService.deduplicate(clazz, matchStrategy, mergeStrategy);
+        return defaultService.deduplicate(clazz, matchStrategy, mergeStrategy);
     }
 
     /**
@@ -914,9 +907,48 @@ public class TransientClassificationService implements IClassificationService {
      */
     @Override
     public Pager<Classification> findTitleCache(Class<? extends Classification> clazz, String queryString, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, MatchMode matchMode) {
-        return defaultClassificationService.findTitleCache(clazz, queryString, pageSize, pageNumber, orderHints, matchMode);
+        return defaultService.findTitleCache(clazz, queryString, pageSize, pageNumber, orderHints, matchMode);
     }
 
+    /* (non-Javadoc)
+     * @see eu.etaxonomy.cdm.api.service.IClassificationService#listChildNodesOfTaxon(java.util.UUID, java.util.UUID, java.lang.Integer, java.lang.Integer, java.util.List)
+     */
+    @Override
+    public List<TaxonNode> listChildNodesOfTaxon(UUID taxonUuid, UUID classificationUuid, Integer pageSize,
+            Integer pageIndex, List<String> propertyPaths) {
+        return defaultService.listChildNodesOfTaxon(taxonUuid, classificationUuid, pageSize, pageIndex, propertyPaths);
+    }
+
+       @Override
+       public DeleteResult isDeletable(Classification object,
+                       DeleteConfiguratorBase config) {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       @Override
+       public Classification findWithoutFlush(UUID uuid) {
+               return defaultService.findWithoutFlush(uuid);
+       }
+
+
+       @Override
+       public <S extends Classification>  Pager<FindByIdentifierDTO<S>> findByIdentifier(Class<S> clazz, String identifier, DefinedTerm identifierType, MatchMode matchmode, boolean includeEntity, Integer pageSize, Integer pageNumber, List<String> propertyPaths){
+               return defaultService.findByIdentifier(clazz, identifier, identifierType, matchmode, includeEntity, pageSize, pageNumber, propertyPaths);
+       }
+
+    @Override
+    public UpdateResult createHierarchyInClassification(Classification arg1, CreateHierarchyForClassificationConfigurator arg2) {
+       return defaultService.createHierarchyInClassification(arg1, arg2);
+    }
+
+    /* (non-Javadoc)
+     * @see eu.etaxonomy.cdm.api.service.IService#delete(java.util.UUID)
+     */
+    @Override
+    public DeleteResult delete(UUID arg0) {
+        return defaultService.delete(arg0);
+    }
 
 
 }