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
.dataimport
.transientServices
;
12 import java
.util
.Collection
;
13 import java
.util
.List
;
16 import java
.util
.UUID
;
18 import org
.hibernate
.LockMode
;
19 import org
.hibernate
.Session
;
20 import org
.hibernate
.criterion
.Criterion
;
21 import org
.hibernate
.envers
.query
.criteria
.AuditCriterion
;
23 import eu
.etaxonomy
.cdm
.api
.service
.DistributionTree
;
24 import eu
.etaxonomy
.cdm
.api
.service
.IDescriptionService
;
25 import eu
.etaxonomy
.cdm
.api
.service
.config
.IIdentifiableEntityServiceConfigurator
;
26 import eu
.etaxonomy
.cdm
.api
.service
.exception
.ReferencedObjectUndeletableException
;
27 import eu
.etaxonomy
.cdm
.api
.service
.pager
.Pager
;
28 import eu
.etaxonomy
.cdm
.common
.monitor
.IProgressMonitor
;
29 import eu
.etaxonomy
.cdm
.model
.common
.Annotation
;
30 import eu
.etaxonomy
.cdm
.model
.common
.DefinedTerm
;
31 import eu
.etaxonomy
.cdm
.model
.common
.ISourceable
;
32 import eu
.etaxonomy
.cdm
.model
.common
.IdentifiableSource
;
33 import eu
.etaxonomy
.cdm
.model
.common
.LSID
;
34 import eu
.etaxonomy
.cdm
.model
.common
.Language
;
35 import eu
.etaxonomy
.cdm
.model
.common
.Marker
;
36 import eu
.etaxonomy
.cdm
.model
.common
.MarkerType
;
37 import eu
.etaxonomy
.cdm
.model
.common
.TermVocabulary
;
38 import eu
.etaxonomy
.cdm
.model
.common
.UuidAndTitleCache
;
39 import eu
.etaxonomy
.cdm
.model
.description
.DescriptionBase
;
40 import eu
.etaxonomy
.cdm
.model
.description
.DescriptionElementBase
;
41 import eu
.etaxonomy
.cdm
.model
.description
.Feature
;
42 import eu
.etaxonomy
.cdm
.model
.description
.FeatureTree
;
43 import eu
.etaxonomy
.cdm
.model
.description
.PresenceAbsenceTermBase
;
44 import eu
.etaxonomy
.cdm
.model
.description
.TaxonDescription
;
45 import eu
.etaxonomy
.cdm
.model
.description
.TaxonNameDescription
;
46 import eu
.etaxonomy
.cdm
.model
.location
.NamedArea
;
47 import eu
.etaxonomy
.cdm
.model
.location
.NamedAreaLevel
;
48 import eu
.etaxonomy
.cdm
.model
.media
.Media
;
49 import eu
.etaxonomy
.cdm
.model
.media
.Rights
;
50 import eu
.etaxonomy
.cdm
.model
.name
.TaxonNameBase
;
51 import eu
.etaxonomy
.cdm
.model
.taxon
.Taxon
;
52 import eu
.etaxonomy
.cdm
.model
.view
.AuditEvent
;
53 import eu
.etaxonomy
.cdm
.model
.view
.AuditEventRecord
;
54 import eu
.etaxonomy
.cdm
.persistence
.dao
.common
.AuditEventSort
;
55 import eu
.etaxonomy
.cdm
.persistence
.query
.Grouping
;
56 import eu
.etaxonomy
.cdm
.persistence
.query
.MatchMode
;
57 import eu
.etaxonomy
.cdm
.persistence
.query
.OrderHint
;
58 import eu
.etaxonomy
.cdm
.strategy
.cache
.common
.IIdentifiableEntityCacheStrategy
;
59 import eu
.etaxonomy
.cdm
.strategy
.match
.IMatchStrategy
;
60 import eu
.etaxonomy
.cdm
.strategy
.merge
.IMergeStrategy
;
67 public class TransientDescriptionService
implements IDescriptionService
{
69 private IDescriptionService defaultDescriptionService
;
72 * @param defaultDescriptionService
74 public TransientDescriptionService(IDescriptionService defaultDescriptionService
) {
75 this.defaultDescriptionService
= defaultDescriptionService
;
83 * @param propertyPaths
85 * @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)
88 public Pager
<AuditEventRecord
<DescriptionBase
>> pageAuditEvents(DescriptionBase t
, Integer pageSize
, Integer pageNumber
, AuditEventSort sort
, List
<String
> propertyPaths
) {
89 return defaultDescriptionService
.pageAuditEvents(t
, pageSize
, pageNumber
, sort
, propertyPaths
);
98 * @param propertyPaths
100 * @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)
103 public Pager
<Annotation
> getAnnotations(DescriptionBase annotatedObj
, MarkerType status
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
104 return defaultDescriptionService
.getAnnotations(annotatedObj
, status
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
109 * @see eu.etaxonomy.cdm.api.service.IService#clear()
112 public void clear() {
113 defaultDescriptionService
.clear();
119 * @see eu.etaxonomy.cdm.api.service.IService#lock(eu.etaxonomy.cdm.model.common.ICdmBase, org.hibernate.LockMode)
122 public void lock(DescriptionBase t
, LockMode lockMode
) {
123 defaultDescriptionService
.lock(t
, lockMode
);
129 * @param propertyPaths
130 * @see eu.etaxonomy.cdm.api.service.IService#refresh(eu.etaxonomy.cdm.model.common.ICdmBase, org.hibernate.LockMode, java.util.List)
133 public void refresh(DescriptionBase t
, LockMode lockMode
, List
<String
> propertyPaths
) {
134 defaultDescriptionService
.refresh(t
, lockMode
, propertyPaths
);
139 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#updateTitleCache()
142 public void updateTitleCache() {
143 defaultDescriptionService
.updateTitleCache();
149 * @see eu.etaxonomy.cdm.api.service.IVersionableService#getNextAuditEvent(eu.etaxonomy.cdm.model.common.VersionableEntity)
152 public AuditEventRecord
<DescriptionBase
> getNextAuditEvent(DescriptionBase t
) {
153 return defaultDescriptionService
.getNextAuditEvent(t
);
159 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#getDefaultFeatureVocabulary()
163 public TermVocabulary
<Feature
> getDefaultFeatureVocabulary() {
164 return defaultDescriptionService
.getDefaultFeatureVocabulary();
168 * @param annotatableEntity
173 * @param propertyPaths
175 * @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)
178 public Pager
<Marker
> getMarkers(DescriptionBase annotatableEntity
, Boolean technical
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
179 return defaultDescriptionService
.getMarkers(annotatableEntity
, technical
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
186 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#getFeatureVocabulary(java.util.UUID)
190 public TermVocabulary
<Feature
> getFeatureVocabulary(UUID uuid
) {
191 return defaultDescriptionService
.getFeatureVocabulary(uuid
);
197 * @param cacheStrategy
199 * @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)
202 public void updateTitleCache(Class
<?
extends DescriptionBase
> clazz
, Integer stepSize
, IIdentifiableEntityCacheStrategy
<DescriptionBase
> cacheStrategy
, IProgressMonitor monitor
) {
203 defaultDescriptionService
.updateTitleCache(clazz
, stepSize
, cacheStrategy
, monitor
);
209 * @see eu.etaxonomy.cdm.api.service.IVersionableService#getPreviousAuditEvent(eu.etaxonomy.cdm.model.common.VersionableEntity)
212 public AuditEventRecord
<DescriptionBase
> getPreviousAuditEvent(DescriptionBase t
) {
213 return defaultDescriptionService
.getPreviousAuditEvent(t
);
219 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#getDescriptionElementByUuid(java.util.UUID)
222 public DescriptionElementBase
getDescriptionElementByUuid(UUID uuid
) {
223 return defaultDescriptionService
.getDescriptionElementByUuid(uuid
);
229 * @see eu.etaxonomy.cdm.api.service.IService#count(java.lang.Class)
232 public int count(Class
<?
extends DescriptionBase
> clazz
) {
233 return defaultDescriptionService
.count(clazz
);
238 * @param propertyPaths
240 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#loadDescriptionElement(java.util.UUID, java.util.List)
243 public DescriptionElementBase
loadDescriptionElement(UUID uuid
, List
<String
> propertyPaths
) {
244 return defaultDescriptionService
.loadDescriptionElement(uuid
, propertyPaths
);
255 * @param propertyPaths
257 * @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)
260 public Pager
<AuditEventRecord
<DescriptionBase
>> pageAuditEvents(Class
<?
extends DescriptionBase
> clazz
, AuditEvent from
, AuditEvent to
, List
<AuditCriterion
> criteria
, Integer pageSize
, Integer pageValue
, AuditEventSort sort
, List
<String
> propertyPaths
) {
261 return defaultDescriptionService
.pageAuditEvents(clazz
, from
, to
, criteria
, pageSize
, pageValue
, sort
, propertyPaths
);
267 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#find(eu.etaxonomy.cdm.model.common.LSID)
270 public DescriptionBase
find(LSID lsid
) {
271 return defaultDescriptionService
.find(lsid
);
275 * @param persistentObject
277 * @see eu.etaxonomy.cdm.api.service.IService#delete(eu.etaxonomy.cdm.model.common.ICdmBase)
280 public UUID
delete(DescriptionBase persistentObject
) throws ReferencedObjectUndeletableException
{
281 return defaultDescriptionService
.delete(persistentObject
);
289 * @param propertyPaths
291 * @see eu.etaxonomy.cdm.api.service.IAnnotatableService#groupMarkers(java.lang.Class, java.lang.Boolean, java.lang.Integer, java.lang.Integer, java.util.List)
294 public List
<Object
[]> groupMarkers(Class
<?
extends DescriptionBase
> clazz
, Boolean technical
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
295 return defaultDescriptionService
.groupMarkers(clazz
, technical
, pageSize
, pageNumber
, propertyPaths
);
301 * @see eu.etaxonomy.cdm.api.service.IService#exists(java.util.UUID)
304 public boolean exists(UUID uuid
) {
305 return defaultDescriptionService
.exists(uuid
);
312 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#replace(eu.etaxonomy.cdm.model.common.IdentifiableEntity, eu.etaxonomy.cdm.model.common.IdentifiableEntity)
315 public DescriptionBase
replace(DescriptionBase x
, DescriptionBase y
) {
316 return defaultDescriptionService
.replace(x
, y
);
320 * @param descriptionElement
322 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#saveDescriptionElement(eu.etaxonomy.cdm.model.description.DescriptionElementBase)
325 public UUID
saveDescriptionElement(DescriptionElementBase descriptionElement
) {
332 * @see eu.etaxonomy.cdm.api.service.IService#find(java.util.Set)
335 public List
<DescriptionBase
> find(Set
<UUID
> uuidSet
) {
336 return defaultDescriptionService
.find(uuidSet
);
340 * @param descriptionElements
342 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#saveDescriptionElement(java.util.Collection)
345 public Map
<UUID
, DescriptionElementBase
> saveDescriptionElement(Collection
<DescriptionElementBase
> descriptionElements
) {
353 * @param propertyPaths
355 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getSources(eu.etaxonomy.cdm.model.common.IdentifiableEntity, java.lang.Integer, java.lang.Integer, java.util.List)
358 public Pager
<IdentifiableSource
> getSources(DescriptionBase t
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
359 return defaultDescriptionService
.getSources(t
, pageSize
, pageNumber
, propertyPaths
);
363 * @param descriptionElement
365 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#deleteDescriptionElement(eu.etaxonomy.cdm.model.description.DescriptionElementBase)
368 public UUID
deleteDescriptionElement(DescriptionElementBase descriptionElement
) {
369 return defaultDescriptionService
.deleteDescriptionElement(descriptionElement
);
375 * @see eu.etaxonomy.cdm.api.service.IService#find(java.util.UUID)
378 public DescriptionBase
find(UUID uuid
) {
379 return defaultDescriptionService
.find(uuid
);
390 * @param propertyPaths
392 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#page(java.lang.Class, java.lang.Boolean, java.lang.Boolean, java.util.Set, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
395 public Pager
<DescriptionBase
> page(Class
<?
extends DescriptionBase
> type
, Boolean hasMedia
, Boolean hasText
, Set
<Feature
> feature
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
396 return defaultDescriptionService
.page(type
, hasMedia
, hasText
, feature
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
402 * @see eu.etaxonomy.cdm.api.service.IService#find(int)
405 public DescriptionBase
find(int id
) {
406 return defaultDescriptionService
.find(id
);
413 * @param propertyPaths
415 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getRights(eu.etaxonomy.cdm.model.common.IdentifiableEntity, java.lang.Integer, java.lang.Integer, java.util.List)
418 public Pager
<Rights
> getRights(DescriptionBase t
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
419 return defaultDescriptionService
.getRights(t
, pageSize
, pageNumber
, propertyPaths
);
426 * @see eu.etaxonomy.cdm.api.service.IAnnotatableService#countMarkers(java.lang.Class, java.lang.Boolean)
429 public int countMarkers(Class
<?
extends DescriptionBase
> clazz
, Boolean technical
) {
430 return defaultDescriptionService
.countMarkers(clazz
, technical
);
436 * @see eu.etaxonomy.cdm.api.service.IService#findById(java.util.Set)
439 public List
<DescriptionBase
> findById(Set
<Integer
> idSet
) {
440 return defaultDescriptionService
.findById(idSet
);
448 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getSourcedObjectByIdInSource(java.lang.Class, java.lang.String, java.lang.String)
451 public ISourceable
getSourcedObjectByIdInSource(Class clazz
, String idInSource
, String idNamespace
) {
452 return defaultDescriptionService
.getSourcedObjectByIdInSource(clazz
, idInSource
, idNamespace
);
457 * @see eu.etaxonomy.cdm.api.service.IService#getSession()
460 public Session
getSession() {
461 return defaultDescriptionService
.getSession();
466 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getUuidAndTitleCache()
469 public List
<UuidAndTitleCache
<DescriptionBase
>> getUuidAndTitleCache() {
470 return defaultDescriptionService
.getUuidAndTitleCache();
478 * @param propertyPaths
480 * @see eu.etaxonomy.cdm.api.service.IService#group(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
483 public List
<Object
[]> group(Class
<?
extends DescriptionBase
> clazz
, Integer limit
, Integer start
, List
<Grouping
> groups
, List
<String
> propertyPaths
) {
484 return defaultDescriptionService
.group(clazz
, limit
, start
, groups
, propertyPaths
);
493 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#count(java.lang.Class, java.lang.Boolean, java.lang.Boolean, java.util.Set)
496 public int count(Class
<?
extends DescriptionBase
> type
, Boolean hasImages
, Boolean hasText
, Set
<Feature
> feature
) {
497 return defaultDescriptionService
.count(type
, hasImages
, hasText
, feature
);
508 * @param propertyPaths
510 * @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)
513 public Pager
<DescriptionBase
> findByTitle(Class
<?
extends DescriptionBase
> clazz
, String queryString
, MatchMode matchmode
, List
<Criterion
> criteria
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
514 return defaultDescriptionService
.findByTitle(clazz
, queryString
, matchmode
, criteria
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
522 * @param propertyPaths
524 * @see eu.etaxonomy.cdm.api.service.IService#list(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
527 public List
<DescriptionBase
> list(Class
<?
extends DescriptionBase
> type
, Integer limit
, Integer start
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
528 return defaultDescriptionService
.list(type
, limit
, start
, orderHints
, propertyPaths
);
537 * @param propertyPaths
540 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#getDescriptionElements(eu.etaxonomy.cdm.model.description.DescriptionBase, java.util.Set, java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List)
544 public Pager
<DescriptionElementBase
> getDescriptionElements(DescriptionBase description
, Set
<Feature
> features
, Class
<?
extends DescriptionElementBase
> type
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
545 return defaultDescriptionService
.getDescriptionElements(description
, features
, type
, pageSize
, pageNumber
, propertyPaths
);
549 * @param configurator
551 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#findByTitle(eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator)
554 public Pager
<DescriptionBase
> findByTitle(IIdentifiableEntityServiceConfigurator
<DescriptionBase
> configurator
) {
555 return defaultDescriptionService
.findByTitle(configurator
);
564 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#countByTitle(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.persistence.query.MatchMode, java.util.List)
567 public Integer
countByTitle(Class
<?
extends DescriptionBase
> clazz
, String queryString
, MatchMode matchmode
, List
<Criterion
> criteria
) {
568 return defaultDescriptionService
.countByTitle(clazz
, queryString
, matchmode
, criteria
);
574 * @see eu.etaxonomy.cdm.api.service.IService#load(java.util.UUID)
577 public DescriptionBase
load(UUID uuid
) {
578 return defaultDescriptionService
.load(uuid
);
583 * @param propertyPaths
585 * @see eu.etaxonomy.cdm.api.service.IService#load(java.util.UUID, java.util.List)
588 public DescriptionBase
load(UUID uuid
, List
<String
> propertyPaths
) {
589 return defaultDescriptionService
.load(uuid
, propertyPaths
);
593 * @param configurator
595 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#countByTitle(eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator)
598 public Integer
countByTitle(IIdentifiableEntityServiceConfigurator
<DescriptionBase
> configurator
) {
599 return defaultDescriptionService
.countByTitle(configurator
);
603 * @param transientObject
605 * @see eu.etaxonomy.cdm.api.service.IService#merge(eu.etaxonomy.cdm.model.common.ICdmBase)
608 public DescriptionBase
merge(DescriptionBase transientObject
) {
609 return defaultDescriptionService
.merge(transientObject
);
614 * @param descriptionType
619 * @param propertyPaths
621 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#pageDescriptionElements(eu.etaxonomy.cdm.model.description.DescriptionBase, java.lang.Class, java.util.Set, java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List)
624 public Pager
<DescriptionElementBase
> pageDescriptionElements(DescriptionBase description
, Class
<?
extends DescriptionBase
> descriptionType
, Set
<Feature
> features
, Class
<?
extends DescriptionElementBase
> type
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
625 return defaultDescriptionService
.pageDescriptionElements(description
, descriptionType
, features
, type
, pageSize
, pageNumber
, propertyPaths
);
636 * @param propertyPaths
638 * @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)
641 public List
<DescriptionBase
> listByTitle(Class
<?
extends DescriptionBase
> clazz
, String queryString
, MatchMode matchmode
, List
<Criterion
> criteria
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
642 return defaultDescriptionService
.listByTitle(clazz
, queryString
, matchmode
, criteria
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
650 * @param propertyPaths
652 * @see eu.etaxonomy.cdm.api.service.IService#page(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
655 public Pager
<DescriptionBase
> page(Class
<?
extends DescriptionBase
> type
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
656 return defaultDescriptionService
.page(type
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
660 * @param persistentObject
662 * @see eu.etaxonomy.cdm.api.service.IService#refresh(eu.etaxonomy.cdm.model.common.ICdmBase)
665 public UUID
refresh(DescriptionBase persistentObject
) {
666 return defaultDescriptionService
.refresh(persistentObject
);
677 * @param propertyPaths
679 * @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)
682 public List
<DescriptionBase
> listByReferenceTitle(Class
<?
extends DescriptionBase
> clazz
, String queryString
, MatchMode matchmode
, List
<Criterion
> criteria
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
683 return defaultDescriptionService
.listByReferenceTitle(clazz
, queryString
, matchmode
, criteria
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
692 * @param propertyPaths
695 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#listDescriptionElements(eu.etaxonomy.cdm.model.description.DescriptionBase, java.util.Set, java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List)
699 public List
<DescriptionElementBase
> listDescriptionElements(DescriptionBase description
, Set
<Feature
> features
, Class
<?
extends DescriptionElementBase
> type
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
700 return defaultDescriptionService
.listDescriptionElements(description
, features
, type
, pageSize
, pageNumber
, propertyPaths
);
708 * @see eu.etaxonomy.cdm.api.service.IService#rows(java.lang.String, int, int)
711 public List
<DescriptionBase
> rows(String tableName
, int limit
, int start
) {
712 return defaultDescriptionService
.rows(tableName
, limit
, start
);
716 * @param newInstances
718 * @see eu.etaxonomy.cdm.api.service.IService#save(java.util.Collection)
721 public Map
<UUID
, DescriptionBase
> save(Collection
<DescriptionBase
> newInstances
) {
728 * @see eu.etaxonomy.cdm.api.service.IService#save(eu.etaxonomy.cdm.model.common.ICdmBase)
731 public UUID
save(DescriptionBase newInstance
) {
736 * @param transientObject
738 * @see eu.etaxonomy.cdm.api.service.IService#saveOrUpdate(eu.etaxonomy.cdm.model.common.ICdmBase)
741 public UUID
saveOrUpdate(DescriptionBase transientObject
) {
751 * @param propertyPaths
753 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#search(java.lang.Class, java.lang.String, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
756 public Pager
<DescriptionBase
> search(Class
<?
extends DescriptionBase
> clazz
, String queryString
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
757 return defaultDescriptionService
.search(clazz
, queryString
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
761 * @param transientObjects
763 * @see eu.etaxonomy.cdm.api.service.IService#saveOrUpdate(java.util.Collection)
766 public Map
<UUID
, DescriptionBase
> saveOrUpdate(Collection
<DescriptionBase
> transientObjects
) {
771 * @param transientObject
773 * @see eu.etaxonomy.cdm.api.service.IService#update(eu.etaxonomy.cdm.model.common.ICdmBase)
776 public UUID
update(DescriptionBase transientObject
) {
777 return defaultDescriptionService
.update(transientObject
);
782 * @param descriptionType
787 * @param propertyPaths
789 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#listDescriptionElements(eu.etaxonomy.cdm.model.description.DescriptionBase, java.lang.Class, java.util.Set, java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List)
792 public List
<DescriptionElementBase
> listDescriptionElements(DescriptionBase description
, Class
<?
extends DescriptionBase
> descriptionType
, Set
<Feature
> features
, Class
<?
extends DescriptionElementBase
> type
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
793 return defaultDescriptionService
.listDescriptionElements(description
, descriptionType
, features
, type
, pageSize
, pageNumber
, propertyPaths
);
798 * @param includeProperties
802 * @param propertyPaths
804 * @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)
807 public List
<DescriptionBase
> list(DescriptionBase example
, Set
<String
> includeProperties
, Integer limit
, Integer start
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
808 return defaultDescriptionService
.list(example
, includeProperties
, limit
, start
, orderHints
, propertyPaths
);
813 * @param matchStrategy
814 * @param mergeStrategy
816 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#deduplicate(java.lang.Class, eu.etaxonomy.cdm.strategy.match.IMatchStrategy, eu.etaxonomy.cdm.strategy.merge.IMergeStrategy)
819 public int deduplicate(Class
<?
extends DescriptionBase
> clazz
, IMatchStrategy matchStrategy
, IMergeStrategy mergeStrategy
) {
820 return defaultDescriptionService
.deduplicate(clazz
, matchStrategy
, mergeStrategy
);
824 * @param annotatedObj
829 * @param propertyPaths
831 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#getDescriptionElementAnnotations(eu.etaxonomy.cdm.model.description.DescriptionElementBase, eu.etaxonomy.cdm.model.common.MarkerType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
834 public Pager
<Annotation
> getDescriptionElementAnnotations(DescriptionElementBase annotatedObj
, MarkerType status
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
835 return defaultDescriptionService
.getDescriptionElementAnnotations(annotatedObj
, status
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
846 * @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)
849 public Pager
<DescriptionBase
> findTitleCache(Class
<?
extends DescriptionBase
> clazz
, String queryString
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, MatchMode matchMode
) {
850 return defaultDescriptionService
.findTitleCache(clazz
, queryString
, pageSize
, pageNumber
, orderHints
, matchMode
);
856 * @param geographicalScope
859 * @param propertyPaths
861 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#pageTaxonDescriptions(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.Set, java.util.Set, java.lang.Integer, java.lang.Integer, java.util.List)
864 public Pager
<TaxonDescription
> pageTaxonDescriptions(Taxon taxon
, Set
<DefinedTerm
> scopes
, Set
<NamedArea
> geographicalScope
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
865 return defaultDescriptionService
.pageTaxonDescriptions(taxon
, scopes
, geographicalScope
, pageSize
, pageNumber
, propertyPaths
);
871 * @param geographicalScope
875 * @param propertyPaths
877 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#pageTaxonDescriptions(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.Set, java.util.Set, java.util.Set, java.lang.Integer, java.lang.Integer, java.util.List)
880 public Pager
<TaxonDescription
> pageTaxonDescriptions(Taxon taxon
, Set
<DefinedTerm
> scopes
, Set
<NamedArea
> geographicalScope
, Set
<MarkerType
> markerTypes
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
881 return defaultDescriptionService
.pageTaxonDescriptions(taxon
, scopes
, geographicalScope
, markerTypes
, pageSize
, pageNumber
, propertyPaths
);
887 * @param geographicalScope
890 * @param propertyPaths
892 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#listTaxonDescriptions(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.Set, java.util.Set, java.lang.Integer, java.lang.Integer, java.util.List)
895 public List
<TaxonDescription
> listTaxonDescriptions(Taxon taxon
, Set
<DefinedTerm
> scopes
, Set
<NamedArea
> geographicalScope
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
896 return defaultDescriptionService
.listTaxonDescriptions(taxon
, scopes
, geographicalScope
, pageSize
, pageNumber
, propertyPaths
);
902 * @param geographicalScope
906 * @param propertyPaths
908 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#listTaxonDescriptions(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.Set, java.util.Set, java.util.Set, java.lang.Integer, java.lang.Integer, java.util.List)
911 public List
<TaxonDescription
> listTaxonDescriptions(Taxon taxon
, Set
<DefinedTerm
> scopes
, Set
<NamedArea
> geographicalScope
, Set
<MarkerType
> markerTypes
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
912 return defaultDescriptionService
.listTaxonDescriptions(taxon
, scopes
, geographicalScope
, markerTypes
, pageSize
, pageNumber
, propertyPaths
);
917 * @param limitToGalleries
921 * @param propertyPaths
923 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#listTaxonDescriptionMedia(java.util.UUID, boolean, java.util.Set, java.lang.Integer, java.lang.Integer, java.util.List)
926 public List
<Media
> listTaxonDescriptionMedia(UUID taxonUuid
, boolean limitToGalleries
, Set
<MarkerType
> markerTypes
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
927 return defaultDescriptionService
.listTaxonDescriptionMedia(taxonUuid
, limitToGalleries
, markerTypes
, pageSize
, pageNumber
, propertyPaths
);
932 * @param limitToGalleries
935 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#countTaxonDescriptionMedia(java.util.UUID, boolean, java.util.Set)
938 public int countTaxonDescriptionMedia(UUID taxonUuid
, boolean limitToGalleries
, Set
<MarkerType
> markerTypes
) {
939 return defaultDescriptionService
.countTaxonDescriptionMedia(taxonUuid
, limitToGalleries
, markerTypes
);
946 * @param propertyPaths
948 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#getTaxonNameDescriptions(eu.etaxonomy.cdm.model.name.TaxonNameBase, java.lang.Integer, java.lang.Integer, java.util.List)
951 public Pager
<TaxonNameDescription
> getTaxonNameDescriptions(TaxonNameBase name
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
952 return defaultDescriptionService
.getTaxonNameDescriptions(name
, pageSize
, pageNumber
, propertyPaths
);
961 * @param propertyPaths
963 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#searchDescriptionByDistribution(java.util.Set, eu.etaxonomy.cdm.model.description.PresenceAbsenceTermBase, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
966 public Pager
<TaxonDescription
> searchDescriptionByDistribution(Set
<NamedArea
> namedAreas
, PresenceAbsenceTermBase presence
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
967 return defaultDescriptionService
.searchDescriptionByDistribution(namedAreas
, presence
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
976 * @param propertyPaths
978 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#searchElements(java.lang.Class, java.lang.String, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
981 public Pager
<DescriptionElementBase
> searchElements(Class
<?
extends DescriptionElementBase
> clazz
, String queryString
, Integer pageSize
, Integer pageNumber
, List
<OrderHint
> orderHints
, List
<String
> propertyPaths
) {
982 return defaultDescriptionService
.searchElements(clazz
, queryString
, pageSize
, pageNumber
, orderHints
, propertyPaths
);
986 * @param descriptionElement
989 * @param propertyPaths
991 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#getMedia(eu.etaxonomy.cdm.model.description.DescriptionElementBase, java.lang.Integer, java.lang.Integer, java.util.List)
994 public Pager
<Media
> getMedia(DescriptionElementBase descriptionElement
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
995 return defaultDescriptionService
.getMedia(descriptionElement
, pageSize
, pageNumber
, propertyPaths
);
1004 * @param propertyPaths
1007 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#getDescriptionElementsForTaxon(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.Set, java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List)
1011 public <T
extends DescriptionElementBase
> List
<T
> getDescriptionElementsForTaxon(Taxon taxon
, Set
<Feature
> features
, Class
<T
> type
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
1012 return defaultDescriptionService
.getDescriptionElementsForTaxon(taxon
, features
, type
, pageSize
, pageNumber
, propertyPaths
);
1021 * @param propertyPaths
1023 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#listDescriptionElementsForTaxon(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.Set, java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List)
1026 public <T
extends DescriptionElementBase
> List
<T
> listDescriptionElementsForTaxon(Taxon taxon
, Set
<Feature
> features
, Class
<T
> type
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
1027 return defaultDescriptionService
.listDescriptionElementsForTaxon(taxon
, features
, type
, pageSize
, pageNumber
, propertyPaths
);
1036 * @param propertyPaths
1038 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#pageDescriptionElementsForTaxon(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.Set, java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List)
1041 public <T
extends DescriptionElementBase
> Pager
<T
> pageDescriptionElementsForTaxon(Taxon taxon
, Set
<Feature
> features
, Class
<T
> type
, Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
1042 return defaultDescriptionService
.pageDescriptionElementsForTaxon(taxon
, features
, type
, pageSize
, pageNumber
, propertyPaths
);
1046 * @param featureTree
1047 * @param description
1048 * @param preferredLanguages
1051 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#generateNaturalLanguageDescription(eu.etaxonomy.cdm.model.description.FeatureTree, eu.etaxonomy.cdm.model.description.TaxonDescription, java.util.List, java.lang.String)
1054 public String
generateNaturalLanguageDescription(FeatureTree featureTree
, TaxonDescription description
, List
<Language
> preferredLanguages
, String separator
) {
1055 return defaultDescriptionService
.generateNaturalLanguageDescription(featureTree
, description
, preferredLanguages
, separator
);
1059 * @param description
1062 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#hasStructuredData(eu.etaxonomy.cdm.model.description.DescriptionBase)
1066 public boolean hasStructuredData(DescriptionBase
<?
> description
) {
1067 return defaultDescriptionService
.hasStructuredData(description
);
1071 * @param descriptionElements
1072 * @param targetDescription
1074 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#moveDescriptionElementsToDescription(java.util.Collection, eu.etaxonomy.cdm.model.description.DescriptionBase, boolean)
1077 public void moveDescriptionElementsToDescription(Collection
<DescriptionElementBase
> descriptionElements
, DescriptionBase targetDescription
, boolean isPaste
) {
1078 defaultDescriptionService
.moveDescriptionElementsToDescription(descriptionElements
, targetDescription
, isPaste
);
1082 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#pageNamedAreasInUse(java.lang.Integer, java.lang.Integer, java.util.List)
1085 public Pager
<NamedArea
> pageNamedAreasInUse(Integer pageSize
, Integer pageNumber
, List
<String
> propertyPaths
) {
1086 return defaultDescriptionService
.pageNamedAreasInUse(pageSize
, pageNumber
, propertyPaths
);
1090 * @see eu.etaxonomy.cdm.api.service.IDescriptionService#getOrderedDistributions(java.util.Set, boolean, boolean, java.util.Set, java.util.Set, java.util.List)
1093 public DistributionTree
getOrderedDistributions(Set
<TaxonDescription
> taxonDescriptions
, boolean subAreaPreference
, boolean statusOrderPreference
, Set
<MarkerType
> hideMarkedAreas
, Set
<NamedAreaLevel
> omitLevels
, List
<String
> propertyPaths
) {
1094 return defaultDescriptionService
.getOrderedDistributions(taxonDescriptions
, subAreaPreference
, statusOrderPreference
, hideMarkedAreas
, omitLevels
, propertyPaths
);