3 * Copyright (C) 2013 EDIT
4 * European Distributed Institute of Taxonomy
5 * http://www.e-taxonomy.eu
7 * The contents of this file are subject to the Mozilla Public License Version 1.1
8 * See LICENSE.TXT at the top of this package for the full license terms.
10 package eu
.etaxonomy
.taxeditor
.editor
.view
.dataimport
.transientServices
;
12 import java
.io
.IOException
;
13 import java
.util
.Collection
;
14 import java
.util
.List
;
17 import java
.util
.UUID
;
19 import org
.apache
.lucene
.index
.CorruptIndexException
;
20 import org
.apache
.lucene
.queryParser
.ParseException
;
21 import org
.hibernate
.LockMode
;
22 import org
.hibernate
.Session
;
23 import org
.hibernate
.criterion
.Criterion
;
24 import org
.hibernate
.envers
.query
.criteria
.AuditCriterion
;
26 import eu
.etaxonomy
.cdm
.api
.service
.DeleteResult
;
27 import eu
.etaxonomy
.cdm
.api
.service
.INameService
;
28 import eu
.etaxonomy
.cdm
.api
.service
.config
.DeleteConfiguratorBase
;
29 import eu
.etaxonomy
.cdm
.api
.service
.config
.IIdentifiableEntityServiceConfigurator
;
30 import eu
.etaxonomy
.cdm
.api
.service
.config
.NameDeletionConfigurator
;
31 import eu
.etaxonomy
.cdm
.api
.service
.exception
.ReferencedObjectUndeletableException
;
32 import eu
.etaxonomy
.cdm
.api
.service
.pager
.Pager
;
33 import eu
.etaxonomy
.cdm
.api
.service
.search
.DocumentSearchResult
;
34 import eu
.etaxonomy
.cdm
.api
.service
.search
.SearchResult
;
35 import eu
.etaxonomy
.cdm
.common
.monitor
.IProgressMonitor
;
36 import eu
.etaxonomy
.cdm
.model
.common
.Annotation
;
37 import eu
.etaxonomy
.cdm
.model
.common
.CdmBase
;
38 import eu
.etaxonomy
.cdm
.model
.common
.ISourceable
;
39 import eu
.etaxonomy
.cdm
.model
.common
.IdentifiableSource
;
40 import eu
.etaxonomy
.cdm
.model
.common
.LSID
;
41 import eu
.etaxonomy
.cdm
.model
.common
.Language
;
42 import eu
.etaxonomy
.cdm
.model
.common
.Marker
;
43 import eu
.etaxonomy
.cdm
.model
.common
.MarkerType
;
44 import eu
.etaxonomy
.cdm
.model
.common
.OrderedTermVocabulary
;
45 import eu
.etaxonomy
.cdm
.model
.common
.ReferencedEntityBase
;
46 import eu
.etaxonomy
.cdm
.model
.common
.RelationshipBase
;
47 import eu
.etaxonomy
.cdm
.model
.common
.RelationshipBase
.Direction
;
48 import eu
.etaxonomy
.cdm
.model
.common
.TermVocabulary
;
49 import eu
.etaxonomy
.cdm
.model
.common
.UuidAndTitleCache
;
50 import eu
.etaxonomy
.cdm
.model
.media
.Rights
;
51 import eu
.etaxonomy
.cdm
.model
.name
.HomotypicalGroup
;
52 import eu
.etaxonomy
.cdm
.model
.name
.HybridRelationship
;
53 import eu
.etaxonomy
.cdm
.model
.name
.HybridRelationshipType
;
54 import eu
.etaxonomy
.cdm
.model
.name
.NameRelationship
;
55 import eu
.etaxonomy
.cdm
.model
.name
.NameRelationshipType
;
56 import eu
.etaxonomy
.cdm
.model
.name
.NomenclaturalStatus
;
57 import eu
.etaxonomy
.cdm
.model
.name
.NomenclaturalStatusType
;
58 import eu
.etaxonomy
.cdm
.model
.name
.NonViralName
;
59 import eu
.etaxonomy
.cdm
.model
.name
.Rank
;
60 import eu
.etaxonomy
.cdm
.model
.name
.SpecimenTypeDesignationStatus
;
61 import eu
.etaxonomy
.cdm
.model
.name
.TaxonNameBase
;
62 import eu
.etaxonomy
.cdm
.model
.name
.TypeDesignationBase
;
63 import eu
.etaxonomy
.cdm
.model
.view
.AuditEvent
;
64 import eu
.etaxonomy
.cdm
.model
.view
.AuditEventRecord
;
65 import eu
.etaxonomy
.cdm
.persistence
.dao
.common
.AuditEventSort
;
66 import eu
.etaxonomy
.cdm
.persistence
.query
.Grouping
;
67 import eu
.etaxonomy
.cdm
.persistence
.query
.MatchMode
;
68 import eu
.etaxonomy
.cdm
.persistence
.query
.OrderHint
;
69 import eu
.etaxonomy
.cdm
.strategy
.cache
.TaggedText
;
70 import eu
.etaxonomy
.cdm
.strategy
.cache
.common
.IIdentifiableEntityCacheStrategy
;
71 import eu
.etaxonomy
.cdm
.strategy
.match
.IMatchStrategy
;
72 import eu
.etaxonomy
.cdm
.strategy
.merge
.IMergeStrategy
;
79 public class TransientNameService
implements INameService
{
81 private INameService defaultNameService
;
86 public TransientNameService(INameService defaultNameService
) {
87 this.defaultNameService
= defaultNameService
;
95 * @param propertyPaths
97 * @see eu.etaxonomy.cdm.api.service.IVersionableService#pageAuditEvents(eu.etaxonomy.cdm.model.common.VersionableEntity, java.lang.Integer, java.lang.Integer, eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort, java.util.List)
100 public Pager
<AuditEventRecord
<TaxonNameBase
>> pageAuditEvents(TaxonNameBase t
, Integer pageSize
, Integer pageNumber
, AuditEventSort sort
, List
<String
> propertyPaths
) {
101 return defaultNameService
.pageAuditEvents(t
, pageSize
, pageNumber
, sort
, propertyPaths
);
105 * @param annotatedObj
110 * @param propertyPaths
112 * @see eu.etaxonomy.cdm.api.service.IAnnotatableService#getAnnotations(eu.etaxonomy.cdm.model.common.AnnotatableEntity, eu.etaxonomy.cdm.model.common.MarkerType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
115 public Pager
<Annotation
> getAnnotations(TaxonNameBase annotatedObj
, MarkerType status
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
116 return defaultNameService
.getAnnotations(annotatedObj
, status
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
121 * @see eu.etaxonomy.cdm.api.service.IService#clear()
124 public void clear() {
125 defaultNameService
.clear();
131 * @see eu.etaxonomy.cdm.api.service.IService#lock(eu.etaxonomy.cdm.model.common.ICdmBase, org.hibernate.LockMode)
134 public void lock(TaxonNameBase t
, LockMode lockMode
) {
135 defaultNameService
.lock(t
, lockMode
);
141 * @param propertyPaths
142 * @see eu.etaxonomy.cdm.api.service.IService#refresh(eu.etaxonomy.cdm.model.common.ICdmBase, org.hibernate.LockMode, java.util.List)
145 public void refresh(TaxonNameBase t
, LockMode lockMode
, List
<String
> propertyPaths
) {
146 defaultNameService
.refresh(t
, lockMode
, propertyPaths
);
151 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#updateTitleCache()
154 public void updateTitleCache() {
155 defaultNameService
.updateTitleCache();
161 * @see eu.etaxonomy.cdm.api.service.IVersionableService#getNextAuditEvent(eu.etaxonomy.cdm.model.common.VersionableEntity)
164 public AuditEventRecord
<TaxonNameBase
> getNextAuditEvent(TaxonNameBase t
) {
165 return defaultNameService
.getNextAuditEvent(t
);
169 * @param annotatableEntity
174 * @param propertyPaths
176 * @see eu.etaxonomy.cdm.api.service.IAnnotatableService#getMarkers(eu.etaxonomy.cdm.model.common.AnnotatableEntity, java.lang.Boolean, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
179 public Pager
<Marker
> getMarkers(TaxonNameBase annotatableEntity
, Boolean technical
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
180 return defaultNameService
.getMarkers(annotatableEntity
, technical
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
186 * @param cacheStrategy
188 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#updateTitleCache(java.lang.Class, java.lang.Integer, eu.etaxonomy.cdm.strategy.cache.common.IIdentifiableEntityCacheStrategy, eu.etaxonomy.cdm.common.monitor.IProgressMonitor)
191 public void updateTitleCache(Class
<?
extends TaxonNameBase
> clazz
, Integer stepSize
, IIdentifiableEntityCacheStrategy
<TaxonNameBase
> cacheStrategy
, IProgressMonitor monitor
) {
192 defaultNameService
.updateTitleCache(clazz
, stepSize
, cacheStrategy
, monitor
);
198 * @see eu.etaxonomy.cdm.api.service.IVersionableService#getPreviousAuditEvent(eu.etaxonomy.cdm.model.common.VersionableEntity)
201 public AuditEventRecord
<TaxonNameBase
> getPreviousAuditEvent(TaxonNameBase t
) {
202 return defaultNameService
.getPreviousAuditEvent(t
);
208 * @see eu.etaxonomy.cdm.api.service.IService#count(java.lang.Class)
211 public int count(Class
<?
extends TaxonNameBase
> clazz
) {
212 return defaultNameService
.count(clazz
);
219 * @throws ReferencedObjectUndeletableException
220 * @see eu.etaxonomy.cdm.api.service.INameService#delete(eu.etaxonomy.cdm.model.name.TaxonNameBase, eu.etaxonomy.cdm.api.service.config.NameDeletionConfigurator)
223 public DeleteResult
delete(TaxonNameBase name
, NameDeletionConfigurator config
) {
224 return defaultNameService
.delete(name
, config
);
235 * @param propertyPaths
237 * @see eu.etaxonomy.cdm.api.service.IVersionableService#pageAuditEvents(java.lang.Class, eu.etaxonomy.cdm.model.view.AuditEvent, eu.etaxonomy.cdm.model.view.AuditEvent, java.util.List, java.lang.Integer, java.lang.Integer, eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort, java.util.List)
240 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
) {
241 return defaultNameService
.pageAuditEvents(clazz
, from
, to
, criteria
, pageSize
, pageValue
, sort
, propertyPaths
);
247 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#find(eu.etaxonomy.cdm.model.common.LSID)
250 public TaxonNameBase
find(LSID lsid
) {
251 return defaultNameService
.find(lsid
);
255 * @param persistentObject
257 * @see eu.etaxonomy.cdm.api.service.IService#delete(eu.etaxonomy.cdm.model.common.ICdmBase)
260 public DeleteResult
delete(TaxonNameBase persistentObject
) {
261 return defaultNameService
.delete(persistentObject
);
269 * @param propertyPaths
271 * @see eu.etaxonomy.cdm.api.service.IAnnotatableService#groupMarkers(java.lang.Class, java.lang.Boolean, java.lang.Integer, java.lang.Integer, java.util.List)
274 public List
<Object
[]> groupMarkers(Class
<?
extends TaxonNameBase
> clazz
, Boolean technical
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
275 return defaultNameService
.groupMarkers(clazz
, technical
, pageSize
, pageNumber
, propertyPaths
);
281 * @see eu.etaxonomy.cdm.api.service.IService#exists(java.util.UUID)
284 public boolean exists(UUID uuid
) {
285 return defaultNameService
.exists(uuid
);
290 * @param typeDesignation
291 * @see eu.etaxonomy.cdm.api.service.INameService#deleteTypeDesignation(eu.etaxonomy.cdm.model.name.TaxonNameBase, eu.etaxonomy.cdm.model.name.TypeDesignationBase)
294 public void deleteTypeDesignation(TaxonNameBase name
, TypeDesignationBase typeDesignation
) {
295 defaultNameService
.deleteTypeDesignation(name
, typeDesignation
);
302 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#replace(eu.etaxonomy.cdm.model.common.IdentifiableEntity, eu.etaxonomy.cdm.model.common.IdentifiableEntity)
305 public TaxonNameBase
replace(TaxonNameBase x
, TaxonNameBase y
) {
306 return defaultNameService
.replace(x
, y
);
312 * @see eu.etaxonomy.cdm.api.service.IService#find(java.util.Set)
315 public List
<TaxonNameBase
> find(Set
<UUID
> uuidSet
) {
316 return defaultNameService
.find(uuidSet
);
323 * @param propertyPaths
325 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getSources(eu.etaxonomy.cdm.model.common.IdentifiableEntity, java.lang.Integer, java.lang.Integer, java.util.List)
328 public Pager
<IdentifiableSource
> getSources(TaxonNameBase t
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
329 return defaultNameService
.getSources(t
, pageSize
, pageNumber
, propertyPaths
);
333 * @param typeDesignationCollection
335 * @see eu.etaxonomy.cdm.api.service.INameService#saveTypeDesignationAll(java.util.Collection)
338 public Map
<UUID
, TypeDesignationBase
> saveTypeDesignationAll(Collection
<TypeDesignationBase
> typeDesignationCollection
) {
345 * @see eu.etaxonomy.cdm.api.service.IService#find(java.util.UUID)
348 public TaxonNameBase
find(UUID uuid
) {
349 return defaultNameService
.find(uuid
);
353 * @param referencedEntityCollection
355 * @see eu.etaxonomy.cdm.api.service.INameService#saveReferencedEntitiesAll(java.util.Collection)
358 public Map
<UUID
, ReferencedEntityBase
> saveReferencedEntitiesAll(Collection
<ReferencedEntityBase
> referencedEntityCollection
) {
363 * @param homotypicalGroups
365 * @see eu.etaxonomy.cdm.api.service.INameService#saveAllHomotypicalGroups(java.util.Collection)
368 public Map
<UUID
, HomotypicalGroup
> saveAllHomotypicalGroups(Collection
<HomotypicalGroup
> homotypicalGroups
) {
375 * @see eu.etaxonomy.cdm.api.service.IService#find(int)
378 public TaxonNameBase
find(int id
) {
379 return defaultNameService
.find(id
);
386 * @param propertyPaths
388 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getRights(eu.etaxonomy.cdm.model.common.IdentifiableEntity, java.lang.Integer, java.lang.Integer, java.util.List)
391 public Pager
<Rights
> getRights(TaxonNameBase t
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
392 return defaultNameService
.getRights(t
, pageSize
, pageNumber
, propertyPaths
);
399 * @see eu.etaxonomy.cdm.api.service.IAnnotatableService#countMarkers(java.lang.Class, java.lang.Boolean)
402 public int countMarkers(Class
<?
extends TaxonNameBase
> clazz
, Boolean technical
) {
403 return defaultNameService
.countMarkers(clazz
, technical
);
410 * @see eu.etaxonomy.cdm.api.service.INameService#getAllNomenclaturalStatus(int, int)
413 public List
<NomenclaturalStatus
> getAllNomenclaturalStatus(int limit
, int start
) {
414 return defaultNameService
.getAllNomenclaturalStatus(limit
, start
);
421 * @see eu.etaxonomy.cdm.api.service.INameService#getAllTypeDesignations(int, int)
424 public List
<TypeDesignationBase
> getAllTypeDesignations(int limit
, int start
) {
425 return defaultNameService
.getAllTypeDesignations(limit
, start
);
431 * @see eu.etaxonomy.cdm.api.service.IService#findById(java.util.Set)
434 public List
<TaxonNameBase
> findById(Set
<Integer
> idSet
) {
435 return defaultNameService
.findById(idSet
);
441 * @see eu.etaxonomy.cdm.api.service.INameService#getNamesByName(java.lang.String)
444 public List
<TaxonNameBase
> getNamesByName(String name
) {
445 return defaultNameService
.getNamesByName(name
);
451 * @see eu.etaxonomy.cdm.api.service.INameService#getNamesByNameCache(java.lang.String)
454 public List
<NonViralName
> getNamesByNameCache(String nameCache
) {
455 return defaultNameService
.getNamesByNameCache(nameCache
);
463 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getSourcedObjectByIdInSource(java.lang.Class, java.lang.String, java.lang.String)
466 public ISourceable
getSourcedObjectByIdInSource(Class clazz
, String idInSource
, String idNamespace
) {
467 return defaultNameService
.getSourcedObjectByIdInSource(clazz
, idInSource
, idNamespace
);
472 * @see eu.etaxonomy.cdm.api.service.IService#getSession()
475 public Session
getSession() {
476 return defaultNameService
.getSession();
481 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getUuidAndTitleCache()
484 public List
<UuidAndTitleCache
<TaxonNameBase
>> getUuidAndTitleCache() {
485 return defaultNameService
.getUuidAndTitleCache();
493 * @param propertyPaths
495 * @see eu.etaxonomy.cdm.api.service.IService#group(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
498 public List
<Object
[]> group(Class
<?
extends TaxonNameBase
> clazz
, Integer limit
, Integer start
, List
<Grouping
> groups
, List
<String
> propertyPaths
) {
499 return defaultNameService
.group(clazz
, limit
, start
, groups
, propertyPaths
);
505 * @param propertyPaths
507 * @see eu.etaxonomy.cdm.api.service.INameService#findNamesByTitleCache(java.lang.String, eu.etaxonomy.cdm.persistence.query.MatchMode, java.util.List)
510 public List
<NonViralName
> findNamesByTitleCache(String titleCache
, MatchMode matchMode
, List
<String
> propertyPaths
) {
511 return defaultNameService
.findNamesByTitleCache(titleCache
, matchMode
, propertyPaths
);
517 * @param propertyPaths
519 * @see eu.etaxonomy.cdm.api.service.INameService#findNamesByNameCache(java.lang.String, eu.etaxonomy.cdm.persistence.query.MatchMode, java.util.List)
522 public List
<NonViralName
> findNamesByNameCache(String nameCache
, MatchMode matchMode
, List
<String
> propertyPaths
) {
523 return defaultNameService
.findNamesByNameCache(nameCache
, matchMode
, propertyPaths
);
534 * @param propertyPaths
536 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#findByTitle(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.persistence.query.MatchMode, java.util.List, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
539 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
) {
540 return defaultNameService
.findByTitle(clazz
, queryString
, matchmode
, criteria
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
545 * @param propertyPaths
547 * @see eu.etaxonomy.cdm.api.service.INameService#findNameByUuid(java.util.UUID, java.util.List)
550 public NonViralName
findNameByUuid(UUID uuid
, List
<String
> propertyPaths
) {
551 return defaultNameService
.findNameByUuid(uuid
, propertyPaths
);
556 * @param sessionObject
558 * @see eu.etaxonomy.cdm.api.service.INameService#getNamesByName(java.lang.String, eu.etaxonomy.cdm.model.common.CdmBase)
561 public List
getNamesByName(String name
, CdmBase sessionObject
) {
562 return defaultNameService
.getNamesByName(name
, sessionObject
);
569 * @param highlightFragments
570 * @param propertyPaths
571 * @param maxNoOfResults
573 * @throws CorruptIndexException
574 * @throws IOException
575 * @throws ParseException
576 * @see eu.etaxonomy.cdm.api.service.INameService#findByNameFuzzySearch(java.lang.String, float, java.util.List, boolean, java.util.List, int)
579 public List
<SearchResult
<TaxonNameBase
>> findByNameFuzzySearch(String name
, float accuracy
, List
<Language
> languages
, boolean highlightFragments
, List
<String
> propertyPaths
, int maxNoOfResults
) throws CorruptIndexException
, IOException
, ParseException
{
580 return defaultNameService
.findByNameFuzzySearch(name
, accuracy
, languages
, highlightFragments
, propertyPaths
, maxNoOfResults
);
588 * @param propertyPaths
590 * @see eu.etaxonomy.cdm.api.service.IService#list(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
593 public <S
extends TaxonNameBase
> List
<S
> list(Class
<S
> type
, Integer limit
, Integer start
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
594 return defaultNameService
.list(type
, limit
, start
, orderHints
, propertyPaths
);
598 * @param configurator
600 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#findByTitle(eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator)
603 public Pager
<TaxonNameBase
> findByTitle(IIdentifiableEntityServiceConfigurator
<TaxonNameBase
> configurator
) {
604 return defaultNameService
.findByTitle(configurator
);
613 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#countByTitle(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.persistence.query.MatchMode, java.util.List)
616 public Integer
countByTitle(Class
<?
extends TaxonNameBase
> clazz
, String queryString
, MatchMode matchmode
, List
<Criterion
> criteria
) {
617 return defaultNameService
.countByTitle(clazz
, queryString
, matchmode
, criteria
);
623 * @see eu.etaxonomy.cdm.api.service.IService#load(java.util.UUID)
626 public TaxonNameBase
load(UUID uuid
) {
627 return defaultNameService
.load(uuid
);
634 * @param highlightFragments
635 * @param maxNoOfResults
637 * @throws CorruptIndexException
638 * @throws IOException
639 * @throws ParseException
640 * @see eu.etaxonomy.cdm.api.service.INameService#findByNameFuzzySearch(java.lang.String, float, java.util.List, boolean, int)
643 public List
<DocumentSearchResult
> findByNameFuzzySearch(String name
, float accuracy
, List
<Language
> languages
, boolean highlightFragments
, int maxNoOfResults
) throws CorruptIndexException
, IOException
, ParseException
{
644 return defaultNameService
.findByNameFuzzySearch(name
, accuracy
, languages
, highlightFragments
, maxNoOfResults
);
649 * @param propertyPaths
651 * @see eu.etaxonomy.cdm.api.service.IService#load(java.util.UUID, java.util.List)
654 public TaxonNameBase
load(UUID uuid
, List
<String
> propertyPaths
) {
655 return defaultNameService
.load(uuid
, propertyPaths
);
659 * @param configurator
661 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#countByTitle(eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator)
664 public Integer
countByTitle(IIdentifiableEntityServiceConfigurator
<TaxonNameBase
> configurator
) {
665 return defaultNameService
.countByTitle(configurator
);
669 * @param transientObject
671 * @see eu.etaxonomy.cdm.api.service.IService#merge(eu.etaxonomy.cdm.model.common.ICdmBase)
674 public TaxonNameBase
merge(TaxonNameBase transientObject
) {
675 return defaultNameService
.merge(transientObject
);
686 * @param propertyPaths
688 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#listByTitle(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.persistence.query.MatchMode, java.util.List, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
691 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
) {
692 return defaultNameService
.listByTitle(clazz
, queryString
, matchmode
, criteria
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
700 * @param propertyPaths
702 * @see eu.etaxonomy.cdm.api.service.IService#page(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
705 public <S
extends TaxonNameBase
> Pager
<S
> page(Class
<S
> type
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
706 return defaultNameService
.page(type
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
713 * @param highlightFragments
714 * @param maxNoOfResults
716 * @throws CorruptIndexException
717 * @throws IOException
718 * @throws ParseException
719 * @see eu.etaxonomy.cdm.api.service.INameService#findByFuzzyNameCacheSearch(java.lang.String, float, java.util.List, boolean, int)
722 public List
<DocumentSearchResult
> findByFuzzyNameCacheSearch(String name
, float accuracy
, List
<Language
> languages
, boolean highlightFragments
, int maxNoOfResults
) throws CorruptIndexException
, IOException
, ParseException
{
723 return defaultNameService
.findByFuzzyNameCacheSearch(name
, accuracy
, languages
, highlightFragments
, maxNoOfResults
);
730 * @param highlightFragments
731 * @param maxNoOfResults
733 * @throws CorruptIndexException
734 * @throws IOException
735 * @throws ParseException
736 * @see eu.etaxonomy.cdm.api.service.INameService#findByNameExactSearch(java.lang.String, boolean, java.util.List, boolean, int)
739 public List
<DocumentSearchResult
> findByNameExactSearch(String name
, boolean wildcard
, List
<Language
> languages
, boolean highlightFragments
, int maxNoOfResults
) throws CorruptIndexException
, IOException
, ParseException
{
740 return defaultNameService
.findByNameExactSearch(name
, wildcard
, languages
, highlightFragments
, maxNoOfResults
);
744 * @param persistentObject
746 * @see eu.etaxonomy.cdm.api.service.IService#refresh(eu.etaxonomy.cdm.model.common.ICdmBase)
749 public UUID
refresh(TaxonNameBase persistentObject
) {
750 return defaultNameService
.refresh(persistentObject
);
761 * @param propertyPaths
763 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#listByReferenceTitle(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.persistence.query.MatchMode, java.util.List, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
766 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
) {
767 return defaultNameService
.listByReferenceTitle(clazz
, queryString
, matchmode
, criteria
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
775 * @see eu.etaxonomy.cdm.api.service.IService#rows(java.lang.String, int, int)
778 public List
<TaxonNameBase
> rows(String tableName
, int limit
, int start
) {
779 return defaultNameService
.rows(tableName
, limit
, start
);
783 * @param newInstances
785 * @see eu.etaxonomy.cdm.api.service.IService#save(java.util.Collection)
788 public Map
<UUID
, TaxonNameBase
> save(Collection
<TaxonNameBase
> newInstances
) {
795 * @see eu.etaxonomy.cdm.api.service.IService#save(eu.etaxonomy.cdm.model.common.ICdmBase)
798 public UUID
save(TaxonNameBase newInstance
) {
805 * @see eu.etaxonomy.cdm.api.service.INameService#findNamesByTitle(java.lang.String)
808 public List
findNamesByTitle(String title
) {
809 return defaultNameService
.findNamesByTitle(title
);
814 * @param sessionObject
816 * @see eu.etaxonomy.cdm.api.service.INameService#findNamesByTitle(java.lang.String, eu.etaxonomy.cdm.model.common.CdmBase)
819 public List
findNamesByTitle(String title
, CdmBase sessionObject
) {
820 return defaultNameService
.findNamesByTitle(title
, sessionObject
);
824 * @param transientObject
826 * @see eu.etaxonomy.cdm.api.service.IService#saveOrUpdate(eu.etaxonomy.cdm.model.common.ICdmBase)
829 public UUID
saveOrUpdate(TaxonNameBase transientObject
) {
837 * @see eu.etaxonomy.cdm.api.service.INameService#getAllHomotypicalGroups(int, int)
840 public List
<HomotypicalGroup
> getAllHomotypicalGroups(int limit
, int start
) {
841 return defaultNameService
.getAllHomotypicalGroups(limit
, start
);
849 * @see eu.etaxonomy.cdm.api.service.INameService#getAllRelationships(int, int)
853 public List
<RelationshipBase
> getAllRelationships(int limit
, int start
) {
854 return defaultNameService
.getAllRelationships(limit
, start
);
860 * @see eu.etaxonomy.cdm.api.service.INameService#getRankVocabulary()
864 public OrderedTermVocabulary
<Rank
> getRankVocabulary() {
865 return defaultNameService
.getRankVocabulary();
869 * @param transientObjects
871 * @see eu.etaxonomy.cdm.api.service.IService#saveOrUpdate(java.util.Collection)
874 public Map
<UUID
, TaxonNameBase
> saveOrUpdate(Collection
<TaxonNameBase
> transientObjects
) {
881 * @see eu.etaxonomy.cdm.api.service.INameService#getStatusTypeVocabulary()
885 public TermVocabulary
<NomenclaturalStatusType
> getStatusTypeVocabulary() {
886 return defaultNameService
.getStatusTypeVocabulary();
890 * @param transientObject
892 * @see eu.etaxonomy.cdm.api.service.IService#update(eu.etaxonomy.cdm.model.common.ICdmBase)
895 public UUID
update(TaxonNameBase transientObject
) {
896 return defaultNameService
.update(transientObject
);
902 * @see eu.etaxonomy.cdm.api.service.INameService#getSpecimenTypeDesignationStatusVocabulary()
906 public TermVocabulary
<SpecimenTypeDesignationStatus
> getSpecimenTypeDesignationStatusVocabulary() {
907 return defaultNameService
.getSpecimenTypeDesignationStatusVocabulary();
912 * @param includeProperties
916 * @param propertyPaths
918 * @see eu.etaxonomy.cdm.api.service.IService#list(eu.etaxonomy.cdm.model.common.ICdmBase, java.util.Set, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
921 public List
<TaxonNameBase
> list(TaxonNameBase example
, Set
<String
> includeProperties
, Integer limit
, Integer start
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
922 return defaultNameService
.list(example
, includeProperties
, limit
, start
, orderHints
, propertyPaths
);
928 * @see eu.etaxonomy.cdm.api.service.INameService#getSpecimenTypeDesignationVocabulary()
932 public OrderedTermVocabulary
<SpecimenTypeDesignationStatus
> getSpecimenTypeDesignationVocabulary() {
933 return defaultNameService
.getSpecimenTypeDesignationVocabulary();
939 * @see eu.etaxonomy.cdm.api.service.INameService#getNameRelationshipTypeVocabulary()
943 public TermVocabulary
<NameRelationshipType
> getNameRelationshipTypeVocabulary() {
944 return defaultNameService
.getNameRelationshipTypeVocabulary();
949 * @param matchStrategy
950 * @param mergeStrategy
952 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#deduplicate(java.lang.Class, eu.etaxonomy.cdm.strategy.match.IMatchStrategy, eu.etaxonomy.cdm.strategy.merge.IMergeStrategy)
955 public int deduplicate(Class
<?
extends TaxonNameBase
> clazz
, IMatchStrategy matchStrategy
, IMergeStrategy mergeStrategy
) {
956 return defaultNameService
.deduplicate(clazz
, matchStrategy
, mergeStrategy
);
966 * @param propertyPaths
968 * @see eu.etaxonomy.cdm.api.service.INameService#listNameRelationships(eu.etaxonomy.cdm.model.name.TaxonNameBase, eu.etaxonomy.cdm.model.common.RelationshipBase.Direction, eu.etaxonomy.cdm.model.name.NameRelationshipType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
971 public List
<NameRelationship
> listNameRelationships(TaxonNameBase name
, Direction direction
, NameRelationshipType type
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
972 return defaultNameService
.listNameRelationships(name
, direction
, type
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
983 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#findTitleCache(java.lang.Class, java.lang.String, java.lang.Integer, java.lang.Integer, java.util.List, eu.etaxonomy.cdm.persistence.query.MatchMode)
986 public Pager
<TaxonNameBase
> findTitleCache(Class
<?
extends TaxonNameBase
> clazz
, String queryString
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, MatchMode matchMode
) {
987 return defaultNameService
.findTitleCache(clazz
, queryString
, pageSize
, pageNumber
, orderHints
, matchMode
);
997 * @param propertyPaths
999 * @see eu.etaxonomy.cdm.api.service.INameService#pageNameRelationships(eu.etaxonomy.cdm.model.name.TaxonNameBase, eu.etaxonomy.cdm.model.common.RelationshipBase.Direction, eu.etaxonomy.cdm.model.name.NameRelationshipType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
1002 public Pager
<NameRelationship
> pageNameRelationships(TaxonNameBase name
, Direction direction
, NameRelationshipType type
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
1003 return defaultNameService
.pageNameRelationships(name
, direction
, type
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
1012 * @param propertyPaths
1015 * @see eu.etaxonomy.cdm.api.service.INameService#listFromNameRelationships(eu.etaxonomy.cdm.model.name.TaxonNameBase, eu.etaxonomy.cdm.model.name.NameRelationshipType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
1019 public List
<NameRelationship
> listFromNameRelationships(TaxonNameBase name
, NameRelationshipType type
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
1020 return defaultNameService
.listFromNameRelationships(name
, type
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
1029 * @param propertyPaths
1032 * @see eu.etaxonomy.cdm.api.service.INameService#pageFromNameRelationships(eu.etaxonomy.cdm.model.name.TaxonNameBase, eu.etaxonomy.cdm.model.name.NameRelationshipType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
1036 public Pager
<NameRelationship
> pageFromNameRelationships(TaxonNameBase name
, NameRelationshipType type
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
1037 return defaultNameService
.pageFromNameRelationships(name
, type
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
1046 * @param propertyPaths
1049 * @see eu.etaxonomy.cdm.api.service.INameService#listToNameRelationships(eu.etaxonomy.cdm.model.name.TaxonNameBase, eu.etaxonomy.cdm.model.name.NameRelationshipType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
1053 public List
<NameRelationship
> listToNameRelationships(TaxonNameBase name
, NameRelationshipType type
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
1054 return defaultNameService
.listToNameRelationships(name
, type
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
1063 * @param propertyPaths
1066 * @see eu.etaxonomy.cdm.api.service.INameService#pageToNameRelationships(eu.etaxonomy.cdm.model.name.TaxonNameBase, eu.etaxonomy.cdm.model.name.NameRelationshipType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
1070 public Pager
<NameRelationship
> pageToNameRelationships(TaxonNameBase name
, NameRelationshipType type
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
1071 return defaultNameService
.pageToNameRelationships(name
, type
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
1080 * @param propertyPaths
1082 * @see eu.etaxonomy.cdm.api.service.INameService#getHybridNames(eu.etaxonomy.cdm.model.name.NonViralName, eu.etaxonomy.cdm.model.name.HybridRelationshipType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
1085 public Pager
<HybridRelationship
> getHybridNames(NonViralName name
, HybridRelationshipType type
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
1086 return defaultNameService
.getHybridNames(name
, type
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
1095 * @see eu.etaxonomy.cdm.api.service.INameService#getTypeDesignations(eu.etaxonomy.cdm.model.name.TaxonNameBase, eu.etaxonomy.cdm.model.name.SpecimenTypeDesignationStatus, java.lang.Integer, java.lang.Integer)
1098 public Pager
<TypeDesignationBase
> getTypeDesignations(TaxonNameBase name
, SpecimenTypeDesignationStatus status
, Integer pageSize
, Integer pageNumber
) {
1099 return defaultNameService
.getTypeDesignations(name
, status
, pageSize
, pageNumber
);
1107 * @param propertyPaths
1109 * @see eu.etaxonomy.cdm.api.service.INameService#getTypeDesignations(eu.etaxonomy.cdm.model.name.TaxonNameBase, eu.etaxonomy.cdm.model.name.SpecimenTypeDesignationStatus, java.lang.Integer, java.lang.Integer, java.util.List)
1112 public Pager
<TypeDesignationBase
> getTypeDesignations(TaxonNameBase name
, SpecimenTypeDesignationStatus status
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
1113 return defaultNameService
.getTypeDesignations(name
, status
, pageSize
, pageNumber
, propertyPaths
);
1118 * @param infraGenericEpithet
1119 * @param specificEpithet
1120 * @param infraspecificEpithet
1125 * @param propertyPaths
1127 * @see eu.etaxonomy.cdm.api.service.INameService#searchNames(java.lang.String, java.lang.String, java.lang.String, java.lang.String, eu.etaxonomy.cdm.model.name.Rank, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
1130 public Pager
<TaxonNameBase
> searchNames(String uninomial
, String infraGenericEpithet
, String specificEpithet
, String infraspecificEpithet
, Rank rank
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
1131 return defaultNameService
.searchNames(uninomial
, infraGenericEpithet
, specificEpithet
, infraspecificEpithet
, rank
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
1136 * @param queryString
1140 * @param propertyPaths
1142 * @see eu.etaxonomy.cdm.api.service.INameService#search(java.lang.Class, java.lang.String, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
1145 public Pager
<TaxonNameBase
> search(Class
<?
extends TaxonNameBase
> clazz
, String queryString
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
1146 return defaultNameService
.search(clazz
, queryString
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
1151 * @see eu.etaxonomy.cdm.api.service.INameService#getUuidAndTitleCacheOfNames()
1154 public List
<UuidAndTitleCache
> getUuidAndTitleCacheOfNames() {
1155 return defaultNameService
.getUuidAndTitleCacheOfNames();
1160 * @param queryString
1166 * @param propertyPaths
1168 * @see eu.etaxonomy.cdm.api.service.INameService#findByName(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.persistence.query.MatchMode, java.util.List, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
1171 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
) {
1172 return defaultNameService
.findByName(clazz
, queryString
, matchmode
, criteria
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
1178 * @see eu.etaxonomy.cdm.api.service.INameService#findHomotypicalGroup(java.util.UUID)
1181 public HomotypicalGroup
findHomotypicalGroup(UUID uuid
) {
1182 return defaultNameService
.findHomotypicalGroup(uuid
);
1188 * @see eu.etaxonomy.cdm.api.service.INameService#getTaggedName(java.util.UUID)
1191 public List
<TaggedText
> getTaggedName(UUID uuid
) {
1192 return defaultNameService
.getTaggedName(uuid
);
1196 public List
<String
> isDeletable(TaxonNameBase object
,
1197 DeleteConfiguratorBase config
) {
1198 // TODO Auto-generated method stub
1203 public TaxonNameBase
findWithoutFlush(UUID uuid
) {
1204 return defaultNameService
.findWithoutFlush(uuid
);