- added transient service methods
[taxeditor.git] / eu.etaxonomy.taxeditor.editor / src / main / java / eu / etaxonomy / taxeditor / editor / view / dataimport / transientServices / TransientNameService.java
index 759e214c5996764f59be66692e77bac0c4142e6d..267831d4ad07b0e46d815c3a8ae552688b39c242 100644 (file)
@@ -11,6 +11,7 @@ package eu.etaxonomy.taxeditor.editor.view.dataimport.transientServices;
 
 import java.io.IOException;
 import java.util.Collection;
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
@@ -25,9 +26,11 @@ import org.hibernate.envers.query.criteria.AuditCriterion;
 
 import eu.etaxonomy.cdm.api.service.DeleteResult;
 import eu.etaxonomy.cdm.api.service.INameService;
+import eu.etaxonomy.cdm.api.service.UpdateResult;
 import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
 import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
 import eu.etaxonomy.cdm.api.service.config.NameDeletionConfigurator;
+import eu.etaxonomy.cdm.api.service.dto.FindByIdentifierDTO;
 import eu.etaxonomy.cdm.api.service.exception.ReferencedObjectUndeletableException;
 import eu.etaxonomy.cdm.api.service.pager.Pager;
 import eu.etaxonomy.cdm.api.service.search.DocumentSearchResult;
@@ -35,6 +38,7 @@ import eu.etaxonomy.cdm.api.service.search.SearchResult;
 import eu.etaxonomy.cdm.common.monitor.IProgressMonitor;
 import eu.etaxonomy.cdm.model.common.Annotation;
 import eu.etaxonomy.cdm.model.common.CdmBase;
+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;
@@ -44,7 +48,6 @@ import eu.etaxonomy.cdm.model.common.MarkerType;
 import eu.etaxonomy.cdm.model.common.ReferencedEntityBase;
 import eu.etaxonomy.cdm.model.common.RelationshipBase;
 import eu.etaxonomy.cdm.model.common.RelationshipBase.Direction;
-import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
 import eu.etaxonomy.cdm.model.media.Rights;
 import eu.etaxonomy.cdm.model.name.HomotypicalGroup;
 import eu.etaxonomy.cdm.model.name.HybridRelationship;
@@ -60,6 +63,7 @@ import eu.etaxonomy.cdm.model.name.TypeDesignationBase;
 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;
@@ -75,13 +79,13 @@ import eu.etaxonomy.cdm.strategy.merge.IMergeStrategy;
  */
 public class TransientNameService implements INameService {
 
-    private INameService defaultNameService;
+    private final INameService defaultService;
 
     /**
      *
      */
     public TransientNameService(INameService defaultNameService) {
-        this.defaultNameService = defaultNameService;
+        this.defaultService = defaultNameService;
     }
 
     /**
@@ -95,7 +99,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Pager<AuditEventRecord<TaxonNameBase>> pageAuditEvents(TaxonNameBase t, Integer pageSize, Integer pageNumber, AuditEventSort sort, List<String> propertyPaths) {
-        return defaultNameService.pageAuditEvents(t, pageSize, pageNumber, sort, propertyPaths);
+        return defaultService.pageAuditEvents(t, pageSize, pageNumber, sort, propertyPaths);
     }
 
     /**
@@ -110,7 +114,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Pager<Annotation> getAnnotations(TaxonNameBase annotatedObj, MarkerType status, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.getAnnotations(annotatedObj, status, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.getAnnotations(annotatedObj, status, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -119,7 +123,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public void clear() {
-        defaultNameService.clear();
+        defaultService.clear();
     }
 
     /**
@@ -129,7 +133,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public void lock(TaxonNameBase t, LockOptions lockOptions) {
-        defaultNameService.lock(t, lockOptions);
+        defaultService.lock(t, lockOptions);
     }
 
     /**
@@ -140,7 +144,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public void refresh(TaxonNameBase t, LockOptions lockOptions, List<String> propertyPaths) {
-        defaultNameService.refresh(t, lockOptions, propertyPaths);
+        defaultService.refresh(t, lockOptions, propertyPaths);
     }
 
     /**
@@ -149,7 +153,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public void updateTitleCache() {
-        defaultNameService.updateTitleCache();
+        defaultService.updateTitleCache();
     }
 
     /**
@@ -159,7 +163,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public AuditEventRecord<TaxonNameBase> getNextAuditEvent(TaxonNameBase t) {
-        return defaultNameService.getNextAuditEvent(t);
+        return defaultService.getNextAuditEvent(t);
     }
 
     /**
@@ -174,7 +178,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Pager<Marker> getMarkers(TaxonNameBase annotatableEntity, Boolean technical, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.getMarkers(annotatableEntity, technical, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.getMarkers(annotatableEntity, technical, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -186,7 +190,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public void updateTitleCache(Class<? extends TaxonNameBase> clazz, Integer stepSize, IIdentifiableEntityCacheStrategy<TaxonNameBase> cacheStrategy, IProgressMonitor monitor) {
-        defaultNameService.updateTitleCache(clazz, stepSize, cacheStrategy, monitor);
+        defaultService.updateTitleCache(clazz, stepSize, cacheStrategy, monitor);
     }
 
     /**
@@ -196,7 +200,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public AuditEventRecord<TaxonNameBase> getPreviousAuditEvent(TaxonNameBase t) {
-        return defaultNameService.getPreviousAuditEvent(t);
+        return defaultService.getPreviousAuditEvent(t);
     }
 
     /**
@@ -206,7 +210,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public int count(Class<? extends TaxonNameBase> clazz) {
-        return defaultNameService.count(clazz);
+        return defaultService.count(clazz);
     }
 
     /**
@@ -218,7 +222,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public DeleteResult delete(TaxonNameBase name, NameDeletionConfigurator config)  {
-        return defaultNameService.delete(name, config);
+        return defaultService.delete(name, config);
     }
 
     /**
@@ -235,7 +239,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Pager<AuditEventRecord<TaxonNameBase>> pageAuditEvents(Class<? extends TaxonNameBase> clazz, AuditEvent from, AuditEvent to, List<AuditCriterion> criteria, Integer pageSize, Integer pageValue, AuditEventSort sort, List<String> propertyPaths) {
-        return defaultNameService.pageAuditEvents(clazz, from, to, criteria, pageSize, pageValue, sort, propertyPaths);
+        return defaultService.pageAuditEvents(clazz, from, to, criteria, pageSize, pageValue, sort, propertyPaths);
     }
 
     /**
@@ -245,7 +249,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public TaxonNameBase find(LSID lsid) {
-        return defaultNameService.find(lsid);
+        return defaultService.find(lsid);
     }
 
     /**
@@ -255,7 +259,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public DeleteResult delete(TaxonNameBase persistentObject) {
-        return defaultNameService.delete(persistentObject);
+        return defaultService.delete(persistentObject);
     }
 
     /**
@@ -269,7 +273,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<Object[]> groupMarkers(Class<? extends TaxonNameBase> clazz, Boolean technical, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
-        return defaultNameService.groupMarkers(clazz, technical, pageSize, pageNumber, propertyPaths);
+        return defaultService.groupMarkers(clazz, technical, pageSize, pageNumber, propertyPaths);
     }
 
     /**
@@ -279,7 +283,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public boolean exists(UUID uuid) {
-        return defaultNameService.exists(uuid);
+        return defaultService.exists(uuid);
     }
 
     /**
@@ -289,7 +293,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public void deleteTypeDesignation(TaxonNameBase name, TypeDesignationBase typeDesignation) {
-        defaultNameService.deleteTypeDesignation(name, typeDesignation);
+        defaultService.deleteTypeDesignation(name, typeDesignation);
     }
 
     /**
@@ -300,7 +304,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public TaxonNameBase replace(TaxonNameBase x, TaxonNameBase y) {
-        return defaultNameService.replace(x, y);
+        return defaultService.replace(x, y);
     }
 
     /**
@@ -310,7 +314,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<TaxonNameBase> find(Set<UUID> uuidSet) {
-        return defaultNameService.find(uuidSet);
+        return defaultService.find(uuidSet);
     }
 
     /**
@@ -323,7 +327,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Pager<IdentifiableSource> getSources(TaxonNameBase t, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
-        return defaultNameService.getSources(t, pageSize, pageNumber, propertyPaths);
+        return defaultService.getSources(t, pageSize, pageNumber, propertyPaths);
     }
 
     /**
@@ -343,7 +347,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public TaxonNameBase find(UUID uuid) {
-        return defaultNameService.find(uuid);
+        return defaultService.find(uuid);
     }
 
     /**
@@ -373,7 +377,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public TaxonNameBase find(int id) {
-        return defaultNameService.find(id);
+        return defaultService.find(id);
     }
 
     /**
@@ -386,7 +390,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Pager<Rights> getRights(TaxonNameBase t, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
-        return defaultNameService.getRights(t, pageSize, pageNumber, propertyPaths);
+        return defaultService.getRights(t, pageSize, pageNumber, propertyPaths);
     }
 
     /**
@@ -397,7 +401,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public int countMarkers(Class<? extends TaxonNameBase> clazz, Boolean technical) {
-        return defaultNameService.countMarkers(clazz, technical);
+        return defaultService.countMarkers(clazz, technical);
     }
 
     /**
@@ -408,7 +412,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<NomenclaturalStatus> getAllNomenclaturalStatus(int limit, int start) {
-        return defaultNameService.getAllNomenclaturalStatus(limit, start);
+        return defaultService.getAllNomenclaturalStatus(limit, start);
     }
 
     /**
@@ -419,7 +423,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<TypeDesignationBase> getAllTypeDesignations(int limit, int start) {
-        return defaultNameService.getAllTypeDesignations(limit, start);
+        return defaultService.getAllTypeDesignations(limit, start);
     }
 
     /**
@@ -429,7 +433,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<TaxonNameBase> findById(Set<Integer> idSet) {
-        return defaultNameService.findById(idSet);
+        return defaultService.findById(idSet);
     }
 
     /**
@@ -439,7 +443,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<TaxonNameBase> getNamesByName(String name) {
-        return defaultNameService.getNamesByName(name);
+        return defaultService.getNamesByName(name);
     }
 
     /**
@@ -449,7 +453,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<NonViralName> getNamesByNameCache(String nameCache) {
-        return defaultNameService.getNamesByNameCache(nameCache);
+        return defaultService.getNamesByNameCache(nameCache);
     }
 
     /**
@@ -461,7 +465,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public ISourceable getSourcedObjectByIdInSource(Class clazz, String idInSource, String idNamespace) {
-        return defaultNameService.getSourcedObjectByIdInSource(clazz, idInSource, idNamespace);
+        return defaultService.getSourcedObjectByIdInSource(clazz, idInSource, idNamespace);
     }
 
     /**
@@ -470,7 +474,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Session getSession() {
-        return defaultNameService.getSession();
+        return defaultService.getSession();
     }
 
     /**
@@ -479,7 +483,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<UuidAndTitleCache<TaxonNameBase>> getUuidAndTitleCache() {
-        return defaultNameService.getUuidAndTitleCache();
+        return defaultService.getUuidAndTitleCache();
     }
 
     /**
@@ -493,7 +497,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<Object[]> group(Class<? extends TaxonNameBase> clazz, Integer limit, Integer start, List<Grouping> groups, List<String> propertyPaths) {
-        return defaultNameService.group(clazz, limit, start, groups, propertyPaths);
+        return defaultService.group(clazz, limit, start, groups, propertyPaths);
     }
 
     /**
@@ -505,7 +509,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<NonViralName> findNamesByTitleCache(String titleCache, MatchMode matchMode, List<String> propertyPaths) {
-        return defaultNameService.findNamesByTitleCache(titleCache, matchMode, propertyPaths);
+        return defaultService.findNamesByTitleCache(titleCache, matchMode, propertyPaths);
     }
 
     /**
@@ -517,7 +521,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<NonViralName> findNamesByNameCache(String nameCache, MatchMode matchMode, List<String> propertyPaths) {
-        return defaultNameService.findNamesByNameCache(nameCache, matchMode, propertyPaths);
+        return defaultService.findNamesByNameCache(nameCache, matchMode, propertyPaths);
     }
 
     /**
@@ -534,7 +538,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Pager<TaxonNameBase> findByTitle(Class<? extends TaxonNameBase> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.findByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.findByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -545,7 +549,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public NonViralName findNameByUuid(UUID uuid, List<String> propertyPaths) {
-        return defaultNameService.findNameByUuid(uuid, propertyPaths);
+        return defaultService.findNameByUuid(uuid, propertyPaths);
     }
 
     /**
@@ -556,7 +560,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List getNamesByName(String name, CdmBase sessionObject) {
-        return defaultNameService.getNamesByName(name, sessionObject);
+        return defaultService.getNamesByName(name, sessionObject);
     }
 
     /**
@@ -574,7 +578,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<SearchResult<TaxonNameBase>> findByNameFuzzySearch(String name, float accuracy, List<Language> languages, boolean highlightFragments, List<String> propertyPaths, int maxNoOfResults) throws CorruptIndexException, IOException, ParseException {
-        return defaultNameService.findByNameFuzzySearch(name, accuracy, languages, highlightFragments, propertyPaths, maxNoOfResults);
+        return defaultService.findByNameFuzzySearch(name, accuracy, languages, highlightFragments, propertyPaths, maxNoOfResults);
     }
 
     /**
@@ -588,7 +592,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public <S extends TaxonNameBase> List<S> list(Class<S> type, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.list(type, limit, start, orderHints, propertyPaths);
+        return defaultService.list(type, limit, start, orderHints, propertyPaths);
     }
 
     /**
@@ -598,7 +602,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Pager<TaxonNameBase> findByTitle(IIdentifiableEntityServiceConfigurator<TaxonNameBase> configurator) {
-        return defaultNameService.findByTitle(configurator);
+        return defaultService.findByTitle(configurator);
     }
 
     /**
@@ -611,7 +615,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Integer countByTitle(Class<? extends TaxonNameBase> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria) {
-        return defaultNameService.countByTitle(clazz, queryString, matchmode, criteria);
+        return defaultService.countByTitle(clazz, queryString, matchmode, criteria);
     }
 
     /**
@@ -621,7 +625,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public TaxonNameBase load(UUID uuid) {
-        return defaultNameService.load(uuid);
+        return defaultService.load(uuid);
     }
 
     /**
@@ -638,7 +642,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<DocumentSearchResult> findByNameFuzzySearch(String name, float accuracy, List<Language> languages, boolean highlightFragments, int maxNoOfResults) throws CorruptIndexException, IOException, ParseException {
-        return defaultNameService.findByNameFuzzySearch(name, accuracy, languages, highlightFragments, maxNoOfResults);
+        return defaultService.findByNameFuzzySearch(name, accuracy, languages, highlightFragments, maxNoOfResults);
     }
 
     /**
@@ -649,7 +653,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public TaxonNameBase load(UUID uuid, List<String> propertyPaths) {
-        return defaultNameService.load(uuid, propertyPaths);
+        return defaultService.load(uuid, propertyPaths);
     }
 
     /**
@@ -659,7 +663,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Integer countByTitle(IIdentifiableEntityServiceConfigurator<TaxonNameBase> configurator) {
-        return defaultNameService.countByTitle(configurator);
+        return defaultService.countByTitle(configurator);
     }
 
     /**
@@ -669,7 +673,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public TaxonNameBase merge(TaxonNameBase transientObject) {
-        return defaultNameService.merge(transientObject);
+        return defaultService.merge(transientObject);
     }
 
     /**
@@ -686,7 +690,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<TaxonNameBase> listByTitle(Class<? extends TaxonNameBase> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.listByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.listByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -700,7 +704,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public <S extends TaxonNameBase> Pager<S> page(Class<S> type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.page(type, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.page(type, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -717,7 +721,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<DocumentSearchResult> findByFuzzyNameCacheSearch(String name, float accuracy, List<Language> languages, boolean highlightFragments, int maxNoOfResults) throws CorruptIndexException, IOException, ParseException {
-        return defaultNameService.findByFuzzyNameCacheSearch(name, accuracy, languages, highlightFragments, maxNoOfResults);
+        return defaultService.findByFuzzyNameCacheSearch(name, accuracy, languages, highlightFragments, maxNoOfResults);
     }
 
     /**
@@ -734,7 +738,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<DocumentSearchResult> findByNameExactSearch(String name, boolean wildcard, List<Language> languages, boolean highlightFragments, int maxNoOfResults) throws CorruptIndexException, IOException, ParseException {
-        return defaultNameService.findByNameExactSearch(name, wildcard, languages, highlightFragments, maxNoOfResults);
+        return defaultService.findByNameExactSearch(name, wildcard, languages, highlightFragments, maxNoOfResults);
     }
 
     /**
@@ -744,7 +748,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public UUID refresh(TaxonNameBase persistentObject) {
-        return defaultNameService.refresh(persistentObject);
+        return defaultService.refresh(persistentObject);
     }
 
     /**
@@ -761,7 +765,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<TaxonNameBase> listByReferenceTitle(Class<? extends TaxonNameBase> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.listByReferenceTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.listByReferenceTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -773,7 +777,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<TaxonNameBase> rows(String tableName, int limit, int start) {
-        return defaultNameService.rows(tableName, limit, start);
+        return defaultService.rows(tableName, limit, start);
     }
 
     /**
@@ -803,7 +807,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List findNamesByTitle(String title) {
-        return defaultNameService.findNamesByTitle(title);
+        return defaultService.findNamesByTitle(title);
     }
 
     /**
@@ -814,7 +818,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List findNamesByTitle(String title, CdmBase sessionObject) {
-        return defaultNameService.findNamesByTitle(title, sessionObject);
+        return defaultService.findNamesByTitle(title, sessionObject);
     }
 
     /**
@@ -835,7 +839,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<HomotypicalGroup> getAllHomotypicalGroups(int limit, int start) {
-        return defaultNameService.getAllHomotypicalGroups(limit, start);
+        return defaultService.getAllHomotypicalGroups(limit, start);
     }
 
     /**
@@ -848,7 +852,7 @@ public class TransientNameService implements INameService {
     @Deprecated
     @Override
     public List<RelationshipBase> getAllRelationships(int limit, int start) {
-        return defaultNameService.getAllRelationships(limit, start);
+        return defaultService.getAllRelationships(limit, start);
     }
 
     /**
@@ -868,7 +872,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public UUID update(TaxonNameBase transientObject) {
-        return defaultNameService.update(transientObject);
+        return defaultService.update(transientObject);
     }
 
     /**
@@ -883,7 +887,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<TaxonNameBase> list(TaxonNameBase example, Set<String> includeProperties, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.list(example, includeProperties, limit, start, orderHints, propertyPaths);
+        return defaultService.list(example, includeProperties, limit, start, orderHints, propertyPaths);
     }
 
     /**
@@ -895,7 +899,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public int deduplicate(Class<? extends TaxonNameBase> clazz, IMatchStrategy matchStrategy, IMergeStrategy mergeStrategy) {
-        return defaultNameService.deduplicate(clazz, matchStrategy, mergeStrategy);
+        return defaultService.deduplicate(clazz, matchStrategy, mergeStrategy);
     }
 
     /**
@@ -911,7 +915,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<NameRelationship> listNameRelationships(TaxonNameBase name, Direction direction, NameRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.listNameRelationships(name, direction, type, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.listNameRelationships(name, direction, type, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -926,7 +930,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Pager<TaxonNameBase> findTitleCache(Class<? extends TaxonNameBase> clazz, String queryString, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, MatchMode matchMode) {
-        return defaultNameService.findTitleCache(clazz, queryString, pageSize, pageNumber, orderHints, matchMode);
+        return defaultService.findTitleCache(clazz, queryString, pageSize, pageNumber, orderHints, matchMode);
     }
 
     /**
@@ -942,7 +946,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Pager<NameRelationship> pageNameRelationships(TaxonNameBase name, Direction direction, NameRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.pageNameRelationships(name, direction, type, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.pageNameRelationships(name, direction, type, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -959,7 +963,7 @@ public class TransientNameService implements INameService {
     @Deprecated
     @Override
     public List<NameRelationship> listFromNameRelationships(TaxonNameBase name, NameRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.listFromNameRelationships(name, type, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.listFromNameRelationships(name, type, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -976,7 +980,7 @@ public class TransientNameService implements INameService {
     @Deprecated
     @Override
     public Pager<NameRelationship> pageFromNameRelationships(TaxonNameBase name, NameRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.pageFromNameRelationships(name, type, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.pageFromNameRelationships(name, type, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -993,7 +997,7 @@ public class TransientNameService implements INameService {
     @Deprecated
     @Override
     public List<NameRelationship> listToNameRelationships(TaxonNameBase name, NameRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.listToNameRelationships(name, type, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.listToNameRelationships(name, type, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -1010,7 +1014,7 @@ public class TransientNameService implements INameService {
     @Deprecated
     @Override
     public Pager<NameRelationship> pageToNameRelationships(TaxonNameBase name, NameRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.pageToNameRelationships(name, type, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.pageToNameRelationships(name, type, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -1025,7 +1029,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Pager<HybridRelationship> getHybridNames(NonViralName name, HybridRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.getHybridNames(name, type, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.getHybridNames(name, type, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -1038,7 +1042,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Pager<TypeDesignationBase> getTypeDesignations(TaxonNameBase name, SpecimenTypeDesignationStatus status, Integer pageSize, Integer pageNumber) {
-        return defaultNameService.getTypeDesignations(name, status, pageSize, pageNumber);
+        return defaultService.getTypeDesignations(name, status, pageSize, pageNumber);
     }
 
     /**
@@ -1052,7 +1056,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Pager<TypeDesignationBase> getTypeDesignations(TaxonNameBase name, SpecimenTypeDesignationStatus status, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
-        return defaultNameService.getTypeDesignations(name, status, pageSize, pageNumber, propertyPaths);
+        return defaultService.getTypeDesignations(name, status, pageSize, pageNumber, propertyPaths);
     }
 
     /**
@@ -1070,7 +1074,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Pager<TaxonNameBase> searchNames(String uninomial, String infraGenericEpithet, String specificEpithet, String infraspecificEpithet, Rank rank, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.searchNames(uninomial, infraGenericEpithet, specificEpithet, infraspecificEpithet, rank, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.searchNames(uninomial, infraGenericEpithet, specificEpithet, infraspecificEpithet, rank, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -1085,7 +1089,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Pager<TaxonNameBase> search(Class<? extends TaxonNameBase> clazz, String queryString, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.search(clazz, queryString, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.search(clazz, queryString, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -1094,7 +1098,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<UuidAndTitleCache> getUuidAndTitleCacheOfNames() {
-        return defaultNameService.getUuidAndTitleCacheOfNames();
+        return defaultService.getUuidAndTitleCacheOfNames();
     }
 
     /**
@@ -1111,7 +1115,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Pager<TaxonNameBase> findByName(Class<? extends TaxonNameBase> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.findByName(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
+        return defaultService.findByName(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -1121,7 +1125,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public HomotypicalGroup findHomotypicalGroup(UUID uuid) {
-        return defaultNameService.findHomotypicalGroup(uuid);
+        return defaultService.findHomotypicalGroup(uuid);
     }
 
     /**
@@ -1131,11 +1135,11 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<TaggedText> getTaggedName(UUID uuid) {
-        return defaultNameService.getTaggedName(uuid);
+        return defaultService.getTaggedName(uuid);
     }
 
        @Override
-       public List<String> isDeletable(TaxonNameBase object,
+       public DeleteResult isDeletable(TaxonNameBase object,
                        DeleteConfiguratorBase config) {
                // TODO Auto-generated method stub
                return null;
@@ -1143,8 +1147,43 @@ public class TransientNameService implements INameService {
 
        @Override
        public TaxonNameBase findWithoutFlush(UUID uuid) {
-               return defaultNameService.findWithoutFlush(uuid);
+               return defaultService.findWithoutFlush(uuid);
        }
 
 
+
+       @Override
+       public <S extends TaxonNameBase>  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 List<HashMap<String, String>> getNameRecords() {
+
+               return defaultService.getNameRecords();
+       }
+
+    /**
+     * {@inheritDoc}
+     */
+    @Override
+    public DeleteResult delete(UUID arg0) {
+        return defaultService.delete(arg0);
+    }
+
+    /**
+     * {@inheritDoc}
+     */
+    @Override
+    public UpdateResult setAsGroupsBasionym(UUID arg0) {
+        return defaultService.setAsGroupsBasionym(arg0);
+    }
+
+
+
+
+
+
 }