(no commit message)
[taxeditor.git] / eu.etaxonomy.taxeditor.editor / src / main / java / eu / etaxonomy / taxeditor / editor / view / dataimport / transientServices / TransientNameService.java
index 50606709f29be44e6f72561b66a26baf7ae6b332..63d3eb8ebe0351c6033cde568d27cc8263edb848 100644 (file)
@@ -18,33 +18,35 @@ import java.util.UUID;
 
 import org.apache.lucene.index.CorruptIndexException;
 import org.apache.lucene.queryParser.ParseException;
-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.INameService;
 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;
 import eu.etaxonomy.cdm.api.service.search.SearchResult;
 import eu.etaxonomy.cdm.common.monitor.IProgressMonitor;
+import eu.etaxonomy.cdm.model.agent.AgentBase;
 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;
 import eu.etaxonomy.cdm.model.common.Language;
 import eu.etaxonomy.cdm.model.common.Marker;
 import eu.etaxonomy.cdm.model.common.MarkerType;
-import eu.etaxonomy.cdm.model.common.OrderedTermVocabulary;
 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.TermVocabulary;
 import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
 import eu.etaxonomy.cdm.model.media.Rights;
 import eu.etaxonomy.cdm.model.name.HomotypicalGroup;
@@ -53,7 +55,6 @@ import eu.etaxonomy.cdm.model.name.HybridRelationshipType;
 import eu.etaxonomy.cdm.model.name.NameRelationship;
 import eu.etaxonomy.cdm.model.name.NameRelationshipType;
 import eu.etaxonomy.cdm.model.name.NomenclaturalStatus;
-import eu.etaxonomy.cdm.model.name.NomenclaturalStatusType;
 import eu.etaxonomy.cdm.model.name.NonViralName;
 import eu.etaxonomy.cdm.model.name.Rank;
 import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignationStatus;
@@ -77,13 +78,13 @@ import eu.etaxonomy.cdm.strategy.merge.IMergeStrategy;
  */
 public class TransientNameService implements INameService {
 
-    private INameService defaultNameService;
+    private INameService defaultService;
 
     /**
      *
      */
     public TransientNameService(INameService defaultNameService) {
-        this.defaultNameService = defaultNameService;
+        this.defaultService = defaultNameService;
     }
 
     /**
@@ -97,7 +98,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);
     }
 
     /**
@@ -112,7 +113,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);
     }
 
     /**
@@ -121,7 +122,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public void clear() {
-        defaultNameService.clear();
+        defaultService.clear();
     }
 
     /**
@@ -130,8 +131,8 @@ public class TransientNameService implements INameService {
      * @see eu.etaxonomy.cdm.api.service.IService#lock(eu.etaxonomy.cdm.model.common.ICdmBase, org.hibernate.LockMode)
      */
     @Override
-    public void lock(TaxonNameBase t, LockMode lockMode) {
-        defaultNameService.lock(t, lockMode);
+    public void lock(TaxonNameBase t, LockOptions lockOptions) {
+        defaultService.lock(t, lockOptions);
     }
 
     /**
@@ -141,8 +142,8 @@ public class TransientNameService implements INameService {
      * @see eu.etaxonomy.cdm.api.service.IService#refresh(eu.etaxonomy.cdm.model.common.ICdmBase, org.hibernate.LockMode, java.util.List)
      */
     @Override
-    public void refresh(TaxonNameBase t, LockMode lockMode, List<String> propertyPaths) {
-        defaultNameService.refresh(t, lockMode, propertyPaths);
+    public void refresh(TaxonNameBase t, LockOptions lockOptions, List<String> propertyPaths) {
+        defaultService.refresh(t, lockOptions, propertyPaths);
     }
 
     /**
@@ -151,7 +152,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public void updateTitleCache() {
-        defaultNameService.updateTitleCache();
+        defaultService.updateTitleCache();
     }
 
     /**
@@ -161,7 +162,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public AuditEventRecord<TaxonNameBase> getNextAuditEvent(TaxonNameBase t) {
-        return defaultNameService.getNextAuditEvent(t);
+        return defaultService.getNextAuditEvent(t);
     }
 
     /**
@@ -176,7 +177,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);
     }
 
     /**
@@ -188,7 +189,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);
     }
 
     /**
@@ -198,7 +199,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public AuditEventRecord<TaxonNameBase> getPreviousAuditEvent(TaxonNameBase t) {
-        return defaultNameService.getPreviousAuditEvent(t);
+        return defaultService.getPreviousAuditEvent(t);
     }
 
     /**
@@ -208,7 +209,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public int count(Class<? extends TaxonNameBase> clazz) {
-        return defaultNameService.count(clazz);
+        return defaultService.count(clazz);
     }
 
     /**
@@ -219,8 +220,8 @@ public class TransientNameService implements INameService {
      * @see eu.etaxonomy.cdm.api.service.INameService#delete(eu.etaxonomy.cdm.model.name.TaxonNameBase, eu.etaxonomy.cdm.api.service.config.NameDeletionConfigurator)
      */
     @Override
-    public String delete(TaxonNameBase name, NameDeletionConfigurator config)  {
-        return defaultNameService.delete(name, config);
+    public DeleteResult delete(TaxonNameBase name, NameDeletionConfigurator config)  {
+        return defaultService.delete(name, config);
     }
 
     /**
@@ -237,7 +238,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);
     }
 
     /**
@@ -247,7 +248,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public TaxonNameBase find(LSID lsid) {
-        return defaultNameService.find(lsid);
+        return defaultService.find(lsid);
     }
 
     /**
@@ -256,8 +257,8 @@ public class TransientNameService implements INameService {
      * @see eu.etaxonomy.cdm.api.service.IService#delete(eu.etaxonomy.cdm.model.common.ICdmBase)
      */
     @Override
-    public String delete(TaxonNameBase persistentObject) {
-        return defaultNameService.delete(persistentObject);
+    public DeleteResult delete(TaxonNameBase persistentObject) {
+        return defaultService.delete(persistentObject);
     }
 
     /**
@@ -271,7 +272,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);
     }
 
     /**
@@ -281,7 +282,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public boolean exists(UUID uuid) {
-        return defaultNameService.exists(uuid);
+        return defaultService.exists(uuid);
     }
 
     /**
@@ -291,7 +292,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public void deleteTypeDesignation(TaxonNameBase name, TypeDesignationBase typeDesignation) {
-        defaultNameService.deleteTypeDesignation(name, typeDesignation);
+        defaultService.deleteTypeDesignation(name, typeDesignation);
     }
 
     /**
@@ -302,7 +303,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public TaxonNameBase replace(TaxonNameBase x, TaxonNameBase y) {
-        return defaultNameService.replace(x, y);
+        return defaultService.replace(x, y);
     }
 
     /**
@@ -312,7 +313,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<TaxonNameBase> find(Set<UUID> uuidSet) {
-        return defaultNameService.find(uuidSet);
+        return defaultService.find(uuidSet);
     }
 
     /**
@@ -325,7 +326,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);
     }
 
     /**
@@ -345,7 +346,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public TaxonNameBase find(UUID uuid) {
-        return defaultNameService.find(uuid);
+        return defaultService.find(uuid);
     }
 
     /**
@@ -375,7 +376,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public TaxonNameBase find(int id) {
-        return defaultNameService.find(id);
+        return defaultService.find(id);
     }
 
     /**
@@ -388,7 +389,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);
     }
 
     /**
@@ -399,7 +400,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);
     }
 
     /**
@@ -410,7 +411,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);
     }
 
     /**
@@ -421,7 +422,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);
     }
 
     /**
@@ -431,7 +432,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<TaxonNameBase> findById(Set<Integer> idSet) {
-        return defaultNameService.findById(idSet);
+        return defaultService.findById(idSet);
     }
 
     /**
@@ -441,7 +442,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<TaxonNameBase> getNamesByName(String name) {
-        return defaultNameService.getNamesByName(name);
+        return defaultService.getNamesByName(name);
     }
 
     /**
@@ -451,7 +452,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<NonViralName> getNamesByNameCache(String nameCache) {
-        return defaultNameService.getNamesByNameCache(nameCache);
+        return defaultService.getNamesByNameCache(nameCache);
     }
 
     /**
@@ -463,7 +464,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);
     }
 
     /**
@@ -472,7 +473,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Session getSession() {
-        return defaultNameService.getSession();
+        return defaultService.getSession();
     }
 
     /**
@@ -481,7 +482,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<UuidAndTitleCache<TaxonNameBase>> getUuidAndTitleCache() {
-        return defaultNameService.getUuidAndTitleCache();
+        return defaultService.getUuidAndTitleCache();
     }
 
     /**
@@ -495,7 +496,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);
     }
 
     /**
@@ -507,7 +508,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);
     }
 
     /**
@@ -519,7 +520,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);
     }
 
     /**
@@ -536,7 +537,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);
     }
 
     /**
@@ -547,7 +548,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);
     }
 
     /**
@@ -558,7 +559,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List getNamesByName(String name, CdmBase sessionObject) {
-        return defaultNameService.getNamesByName(name, sessionObject);
+        return defaultService.getNamesByName(name, sessionObject);
     }
 
     /**
@@ -576,7 +577,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);
     }
 
     /**
@@ -589,8 +590,8 @@ public class TransientNameService implements INameService {
      * @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<TaxonNameBase> list(Class<? extends TaxonNameBase> type, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.list(type, limit, start, orderHints, propertyPaths);
+    public <S extends TaxonNameBase> List<S> list(Class<S> type, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
+        return defaultService.list(type, limit, start, orderHints, propertyPaths);
     }
 
     /**
@@ -600,7 +601,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Pager<TaxonNameBase> findByTitle(IIdentifiableEntityServiceConfigurator<TaxonNameBase> configurator) {
-        return defaultNameService.findByTitle(configurator);
+        return defaultService.findByTitle(configurator);
     }
 
     /**
@@ -613,7 +614,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);
     }
 
     /**
@@ -623,7 +624,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public TaxonNameBase load(UUID uuid) {
-        return defaultNameService.load(uuid);
+        return defaultService.load(uuid);
     }
 
     /**
@@ -640,7 +641,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);
     }
 
     /**
@@ -651,7 +652,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);
     }
 
     /**
@@ -661,7 +662,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public Integer countByTitle(IIdentifiableEntityServiceConfigurator<TaxonNameBase> configurator) {
-        return defaultNameService.countByTitle(configurator);
+        return defaultService.countByTitle(configurator);
     }
 
     /**
@@ -671,7 +672,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public TaxonNameBase merge(TaxonNameBase transientObject) {
-        return defaultNameService.merge(transientObject);
+        return defaultService.merge(transientObject);
     }
 
     /**
@@ -688,7 +689,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);
     }
 
     /**
@@ -701,8 +702,8 @@ public class TransientNameService implements INameService {
      * @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<TaxonNameBase> page(Class<? extends TaxonNameBase> type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultNameService.page(type, pageSize, pageNumber, orderHints, propertyPaths);
+    public <S extends TaxonNameBase> Pager<S> page(Class<S> type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
+        return defaultService.page(type, pageSize, pageNumber, orderHints, propertyPaths);
     }
 
     /**
@@ -719,7 +720,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);
     }
 
     /**
@@ -736,7 +737,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);
     }
 
     /**
@@ -746,7 +747,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public UUID refresh(TaxonNameBase persistentObject) {
-        return defaultNameService.refresh(persistentObject);
+        return defaultService.refresh(persistentObject);
     }
 
     /**
@@ -763,7 +764,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);
     }
 
     /**
@@ -775,7 +776,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);
     }
 
     /**
@@ -805,7 +806,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List findNamesByTitle(String title) {
-        return defaultNameService.findNamesByTitle(title);
+        return defaultService.findNamesByTitle(title);
     }
 
     /**
@@ -816,7 +817,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List findNamesByTitle(String title, CdmBase sessionObject) {
-        return defaultNameService.findNamesByTitle(title, sessionObject);
+        return defaultService.findNamesByTitle(title, sessionObject);
     }
 
     /**
@@ -837,7 +838,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);
     }
 
     /**
@@ -850,18 +851,7 @@ public class TransientNameService implements INameService {
     @Deprecated
     @Override
     public List<RelationshipBase> getAllRelationships(int limit, int start) {
-        return defaultNameService.getAllRelationships(limit, start);
-    }
-
-    /**
-     * @return
-     * @deprecated
-     * @see eu.etaxonomy.cdm.api.service.INameService#getRankVocabulary()
-     */
-    @Deprecated
-    @Override
-    public OrderedTermVocabulary<Rank> getRankVocabulary() {
-        return defaultNameService.getRankVocabulary();
+        return defaultService.getAllRelationships(limit, start);
     }
 
     /**
@@ -874,17 +864,6 @@ public class TransientNameService implements INameService {
         return null;
     }
 
-    /**
-     * @return
-     * @deprecated
-     * @see eu.etaxonomy.cdm.api.service.INameService#getStatusTypeVocabulary()
-     */
-    @Deprecated
-    @Override
-    public TermVocabulary<NomenclaturalStatusType> getStatusTypeVocabulary() {
-        return defaultNameService.getStatusTypeVocabulary();
-    }
-
     /**
      * @param transientObject
      * @return
@@ -892,18 +871,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public UUID update(TaxonNameBase transientObject) {
-        return defaultNameService.update(transientObject);
-    }
-
-    /**
-     * @return
-     * @deprecated
-     * @see eu.etaxonomy.cdm.api.service.INameService#getSpecimenTypeDesignationStatusVocabulary()
-     */
-    @Deprecated
-    @Override
-    public TermVocabulary<SpecimenTypeDesignationStatus> getSpecimenTypeDesignationStatusVocabulary() {
-        return defaultNameService.getSpecimenTypeDesignationStatusVocabulary();
+        return defaultService.update(transientObject);
     }
 
     /**
@@ -918,29 +886,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
-     * @deprecated
-     * @see eu.etaxonomy.cdm.api.service.INameService#getSpecimenTypeDesignationVocabulary()
-     */
-    @Deprecated
-    @Override
-    public OrderedTermVocabulary<SpecimenTypeDesignationStatus> getSpecimenTypeDesignationVocabulary() {
-        return defaultNameService.getSpecimenTypeDesignationVocabulary();
-    }
-
-    /**
-     * @return
-     * @deprecated
-     * @see eu.etaxonomy.cdm.api.service.INameService#getNameRelationshipTypeVocabulary()
-     */
-    @Deprecated
-    @Override
-    public TermVocabulary<NameRelationshipType> getNameRelationshipTypeVocabulary() {
-        return defaultNameService.getNameRelationshipTypeVocabulary();
+        return defaultService.list(example, includeProperties, limit, start, orderHints, propertyPaths);
     }
 
     /**
@@ -952,7 +898,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);
     }
 
     /**
@@ -968,7 +914,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);
     }
 
     /**
@@ -983,7 +929,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);
     }
 
     /**
@@ -999,7 +945,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);
     }
 
     /**
@@ -1016,7 +962,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);
     }
 
     /**
@@ -1033,7 +979,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);
     }
 
     /**
@@ -1050,7 +996,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);
     }
 
     /**
@@ -1067,7 +1013,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);
     }
 
     /**
@@ -1082,7 +1028,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);
     }
 
     /**
@@ -1095,7 +1041,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);
     }
 
     /**
@@ -1109,7 +1055,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);
     }
 
     /**
@@ -1127,7 +1073,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);
     }
 
     /**
@@ -1142,7 +1088,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);
     }
 
     /**
@@ -1151,7 +1097,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public List<UuidAndTitleCache> getUuidAndTitleCacheOfNames() {
-        return defaultNameService.getUuidAndTitleCacheOfNames();
+        return defaultService.getUuidAndTitleCacheOfNames();
     }
 
     /**
@@ -1168,7 +1114,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);
     }
 
     /**
@@ -1178,7 +1124,7 @@ public class TransientNameService implements INameService {
      */
     @Override
     public HomotypicalGroup findHomotypicalGroup(UUID uuid) {
-        return defaultNameService.findHomotypicalGroup(uuid);
+        return defaultService.findHomotypicalGroup(uuid);
     }
 
     /**
@@ -1188,15 +1134,25 @@ 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;
        }
 
+       @Override
+       public TaxonNameBase findWithoutFlush(UUID 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);
+       }
+
 
 }