corrected visibility check for edit authorities editor
[taxeditor.git] / eu.etaxonomy.taxeditor.editor / src / main / java / eu / etaxonomy / taxeditor / editor / view / dataimport / transientServices / TransientTaxonService.java
1 // $Id$
2 /**
3 * Copyright (C) 2013 EDIT
4 * European Distributed Institute of Taxonomy
5 * http://www.e-taxonomy.eu
6 *
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.
9 */
10 package eu.etaxonomy.taxeditor.editor.view.dataimport.transientServices;
11
12 import java.io.IOException;
13 import java.util.Collection;
14 import java.util.EnumSet;
15 import java.util.List;
16 import java.util.Map;
17 import java.util.Set;
18 import java.util.UUID;
19
20 import org.apache.lucene.index.CorruptIndexException;
21 import org.apache.lucene.queryParser.ParseException;
22 import org.hibernate.LockOptions;
23 import org.hibernate.Session;
24 import org.hibernate.criterion.Criterion;
25 import org.hibernate.envers.query.criteria.AuditCriterion;
26
27 import eu.etaxonomy.cdm.api.service.DeleteResult;
28 import eu.etaxonomy.cdm.api.service.ITaxonService;
29 import eu.etaxonomy.cdm.api.service.TaxaAndNamesSearchMode;
30 import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
31 import eu.etaxonomy.cdm.api.service.config.IFindTaxaAndNamesConfigurator;
32 import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
33 import eu.etaxonomy.cdm.api.service.config.IncludedTaxonConfiguration;
34 import eu.etaxonomy.cdm.api.service.config.MatchingTaxonConfigurator;
35 import eu.etaxonomy.cdm.api.service.config.SynonymDeletionConfigurator;
36 import eu.etaxonomy.cdm.api.service.config.TaxonDeletionConfigurator;
37 import eu.etaxonomy.cdm.api.service.dto.FindByIdentifierDTO;
38 import eu.etaxonomy.cdm.api.service.dto.IncludedTaxaDTO;
39 import eu.etaxonomy.cdm.api.service.exception.DataChangeNoRollbackException;
40 import eu.etaxonomy.cdm.api.service.exception.HomotypicalGroupChangeException;
41 import eu.etaxonomy.cdm.api.service.pager.Pager;
42 import eu.etaxonomy.cdm.api.service.search.LuceneMultiSearchException;
43 import eu.etaxonomy.cdm.api.service.search.SearchResult;
44 import eu.etaxonomy.cdm.api.service.util.TaxonRelationshipEdge;
45 import eu.etaxonomy.cdm.common.monitor.IProgressMonitor;
46 import eu.etaxonomy.cdm.model.common.Annotation;
47 import eu.etaxonomy.cdm.model.common.DefinedTerm;
48 import eu.etaxonomy.cdm.model.common.ISourceable;
49 import eu.etaxonomy.cdm.model.common.IdentifiableEntity;
50 import eu.etaxonomy.cdm.model.common.IdentifiableSource;
51 import eu.etaxonomy.cdm.model.common.LSID;
52 import eu.etaxonomy.cdm.model.common.Language;
53 import eu.etaxonomy.cdm.model.common.Marker;
54 import eu.etaxonomy.cdm.model.common.MarkerType;
55 import eu.etaxonomy.cdm.model.common.OrderedTermVocabulary;
56 import eu.etaxonomy.cdm.model.common.RelationshipBase;
57 import eu.etaxonomy.cdm.model.common.RelationshipBase.Direction;
58 import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
59 import eu.etaxonomy.cdm.model.description.DescriptionElementBase;
60 import eu.etaxonomy.cdm.model.description.Feature;
61 import eu.etaxonomy.cdm.model.description.PresenceAbsenceTerm;
62 import eu.etaxonomy.cdm.model.location.NamedArea;
63 import eu.etaxonomy.cdm.model.media.Media;
64 import eu.etaxonomy.cdm.model.media.MediaRepresentation;
65 import eu.etaxonomy.cdm.model.media.Rights;
66 import eu.etaxonomy.cdm.model.name.HomotypicalGroup;
67 import eu.etaxonomy.cdm.model.name.Rank;
68 import eu.etaxonomy.cdm.model.name.TaxonNameBase;
69 import eu.etaxonomy.cdm.model.reference.Reference;
70 import eu.etaxonomy.cdm.model.taxon.Classification;
71 import eu.etaxonomy.cdm.model.taxon.Synonym;
72 import eu.etaxonomy.cdm.model.taxon.SynonymRelationship;
73 import eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType;
74 import eu.etaxonomy.cdm.model.taxon.Taxon;
75 import eu.etaxonomy.cdm.model.taxon.TaxonBase;
76 import eu.etaxonomy.cdm.model.taxon.TaxonNode;
77 import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;
78 import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;
79 import eu.etaxonomy.cdm.model.view.AuditEvent;
80 import eu.etaxonomy.cdm.model.view.AuditEventRecord;
81 import eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort;
82 import eu.etaxonomy.cdm.persistence.fetch.CdmFetch;
83 import eu.etaxonomy.cdm.persistence.query.Grouping;
84 import eu.etaxonomy.cdm.persistence.query.MatchMode;
85 import eu.etaxonomy.cdm.persistence.query.OrderHint;
86 import eu.etaxonomy.cdm.strategy.cache.common.IIdentifiableEntityCacheStrategy;
87 import eu.etaxonomy.cdm.strategy.match.IMatchStrategy;
88 import eu.etaxonomy.cdm.strategy.merge.IMergeStrategy;
89
90 /**
91 * @author pplitzner
92 * @date 27.09.2013
93 *
94 */
95 public class TransientTaxonService implements ITaxonService {
96
97 private final ITaxonService defaultService;
98
99 /**
100 * @param defaultTaxonService
101 */
102 public TransientTaxonService(ITaxonService defaultTaxonService) {
103 this.defaultService = defaultTaxonService;
104 }
105
106 /**
107 * @param t
108 * @param pageSize
109 * @param pageNumber
110 * @param sort
111 * @param propertyPaths
112 * @return
113 * @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)
114 */
115 @Override
116 public Pager<AuditEventRecord<TaxonBase>> pageAuditEvents(TaxonBase t, Integer pageSize, Integer pageNumber, AuditEventSort sort, List<String> propertyPaths) {
117 return defaultService.pageAuditEvents(t, pageSize, pageNumber, sort, propertyPaths);
118 }
119
120 /**
121 * @param annotatedObj
122 * @param status
123 * @param pageSize
124 * @param pageNumber
125 * @param orderHints
126 * @param propertyPaths
127 * @return
128 * @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)
129 */
130 @Override
131 public Pager<Annotation> getAnnotations(TaxonBase annotatedObj, MarkerType status, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
132 return defaultService.getAnnotations(annotatedObj, status, pageSize, pageNumber, orderHints, propertyPaths);
133 }
134
135 /**
136 *
137 * @see eu.etaxonomy.cdm.api.service.IService#clear()
138 */
139 @Override
140 public void clear() {
141 defaultService.clear();
142 }
143
144 /**
145 * @param t
146 * @param lockMode
147 * @see eu.etaxonomy.cdm.api.service.IService#lock(eu.etaxonomy.cdm.model.common.ICdmBase, org.hibernate.LockMode)
148 */
149 @Override
150 public void lock(TaxonBase t, LockOptions lockOptions) {
151 defaultService.lock(t, lockOptions);
152 }
153
154 /**
155 * @param t
156 * @param lockMode
157 * @param propertyPaths
158 * @see eu.etaxonomy.cdm.api.service.IService#refresh(eu.etaxonomy.cdm.model.common.ICdmBase, org.hibernate.LockMode, java.util.List)
159 */
160 @Override
161 public void refresh(TaxonBase t, LockOptions lockOptions, List<String> propertyPaths) {
162 defaultService.refresh(t, lockOptions, propertyPaths);
163 }
164
165 /**
166 *
167 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#updateTitleCache()
168 */
169 @Override
170 public void updateTitleCache() {
171 defaultService.updateTitleCache();
172 }
173
174 /**
175 * @param t
176 * @return
177 * @see eu.etaxonomy.cdm.api.service.IVersionableService#getNextAuditEvent(eu.etaxonomy.cdm.model.common.VersionableEntity)
178 */
179 @Override
180 public AuditEventRecord<TaxonBase> getNextAuditEvent(TaxonBase t) {
181 return defaultService.getNextAuditEvent(t);
182 }
183
184 /**
185 * @param annotatableEntity
186 * @param technical
187 * @param pageSize
188 * @param pageNumber
189 * @param orderHints
190 * @param propertyPaths
191 * @return
192 * @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)
193 */
194 @Override
195 public Pager<Marker> getMarkers(TaxonBase annotatableEntity, Boolean technical, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
196 return defaultService.getMarkers(annotatableEntity, technical, pageSize, pageNumber, orderHints, propertyPaths);
197 }
198
199 /**
200 * @param clazz
201 * @param stepSize
202 * @param cacheStrategy
203 * @param monitor
204 * @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)
205 */
206 @Override
207 public void updateTitleCache(Class<? extends TaxonBase> clazz, Integer stepSize, IIdentifiableEntityCacheStrategy<TaxonBase> cacheStrategy, IProgressMonitor monitor) {
208 defaultService.updateTitleCache(clazz, stepSize, cacheStrategy, monitor);
209 }
210
211 /**
212 * @param t
213 * @return
214 * @see eu.etaxonomy.cdm.api.service.IVersionableService#getPreviousAuditEvent(eu.etaxonomy.cdm.model.common.VersionableEntity)
215 */
216 @Override
217 public AuditEventRecord<TaxonBase> getPreviousAuditEvent(TaxonBase t) {
218 return defaultService.getPreviousAuditEvent(t);
219 }
220
221 /**
222 * @param clazz
223 * @return
224 * @see eu.etaxonomy.cdm.api.service.IService#count(java.lang.Class)
225 */
226 @Override
227 public int count(Class<? extends TaxonBase> clazz) {
228 return defaultService.count(clazz);
229 }
230
231 /**
232 * @param clazz
233 * @param from
234 * @param to
235 * @param criteria
236 * @param pageSize
237 * @param pageValue
238 * @param sort
239 * @param propertyPaths
240 * @return
241 * @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)
242 */
243 @Override
244 public Pager<AuditEventRecord<TaxonBase>> pageAuditEvents(Class<? extends TaxonBase> clazz, AuditEvent from, AuditEvent to, List<AuditCriterion> criteria, Integer pageSize, Integer pageValue, AuditEventSort sort, List<String> propertyPaths) {
245 return defaultService.pageAuditEvents(clazz, from, to, criteria, pageSize, pageValue, sort, propertyPaths);
246 }
247
248 /**
249 * @param lsid
250 * @return
251 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#find(eu.etaxonomy.cdm.model.common.LSID)
252 */
253 @Override
254 public TaxonBase find(LSID lsid) {
255 return defaultService.find(lsid);
256 }
257
258 /**
259 * @param persistentObject
260 * @return
261 * @see eu.etaxonomy.cdm.api.service.IService#delete(eu.etaxonomy.cdm.model.common.ICdmBase)
262 */
263 @Override
264 public DeleteResult delete(TaxonBase persistentObject) {
265 return defaultService.delete(persistentObject);
266 }
267
268 /**
269 * @param clazz
270 * @param technical
271 * @param pageSize
272 * @param pageNumber
273 * @param propertyPaths
274 * @return
275 * @see eu.etaxonomy.cdm.api.service.IAnnotatableService#groupMarkers(java.lang.Class, java.lang.Boolean, java.lang.Integer, java.lang.Integer, java.util.List)
276 */
277 @Override
278 public List<Object[]> groupMarkers(Class<? extends TaxonBase> clazz, Boolean technical, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
279 return defaultService.groupMarkers(clazz, technical, pageSize, pageNumber, propertyPaths);
280 }
281
282 /**
283 * @param uuid
284 * @return
285 * @see eu.etaxonomy.cdm.api.service.IService#exists(java.util.UUID)
286 */
287 @Override
288 public boolean exists(UUID uuid) {
289 return defaultService.exists(uuid);
290 }
291
292
293 /**
294 * @param x
295 * @param y
296 * @return
297 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#replace(eu.etaxonomy.cdm.model.common.IdentifiableEntity, eu.etaxonomy.cdm.model.common.IdentifiableEntity)
298 */
299 @Override
300 public TaxonBase replace(TaxonBase x, TaxonBase y) {
301 return defaultService.replace(x, y);
302 }
303
304 /**
305 * @param uuidSet
306 * @return
307 * @see eu.etaxonomy.cdm.api.service.IService#find(java.util.Set)
308 */
309 @Override
310 public List<TaxonBase> find(Set<UUID> uuidSet) {
311 return defaultService.find(uuidSet);
312 }
313
314 /**
315 * @param t
316 * @param pageSize
317 * @param pageNumber
318 * @param propertyPaths
319 * @return
320 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getSources(eu.etaxonomy.cdm.model.common.IdentifiableEntity, java.lang.Integer, java.lang.Integer, java.util.List)
321 */
322 @Override
323 public Pager<IdentifiableSource> getSources(TaxonBase t, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
324 return defaultService.getSources(t, pageSize, pageNumber, propertyPaths);
325 }
326
327 /**
328 * @param sec
329 * @param cdmFetch
330 * @param onlyWithChildren
331 * @return
332 * @deprecated
333 * @see eu.etaxonomy.cdm.api.service.ITaxonService#getRootTaxa(eu.etaxonomy.cdm.model.reference.Reference, eu.etaxonomy.cdm.persistence.fetch.CdmFetch, boolean)
334 */
335 @Deprecated
336 @Override
337 public List<Taxon> getRootTaxa(Reference sec, CdmFetch cdmFetch, boolean onlyWithChildren) {
338 return defaultService.getRootTaxa(sec, cdmFetch, onlyWithChildren);
339 }
340
341 /**
342 * @param uuid
343 * @return
344 * @see eu.etaxonomy.cdm.api.service.IService#find(java.util.UUID)
345 */
346 @Override
347 public TaxonBase find(UUID uuid) {
348 return defaultService.find(uuid);
349 }
350
351 /**
352 * @param rank
353 * @param sec
354 * @param onlyWithChildren
355 * @param withMisapplications
356 * @param propertyPaths
357 * @return
358 * @deprecated
359 * @see eu.etaxonomy.cdm.api.service.ITaxonService#getRootTaxa(eu.etaxonomy.cdm.model.name.Rank, eu.etaxonomy.cdm.model.reference.Reference, boolean, boolean, java.util.List)
360 */
361 @Deprecated
362 @Override
363 public List<Taxon> getRootTaxa(Rank rank, Reference sec, boolean onlyWithChildren, boolean withMisapplications, List<String> propertyPaths) {
364 return defaultService.getRootTaxa(rank, sec, onlyWithChildren, withMisapplications, propertyPaths);
365 }
366
367 /**
368 * @param id
369 * @return
370 * @see eu.etaxonomy.cdm.api.service.IService#find(int)
371 */
372 @Override
373 public TaxonBase find(int id) {
374 return defaultService.find(id);
375 }
376
377 /**
378 * @param t
379 * @param pageSize
380 * @param pageNumber
381 * @param propertyPaths
382 * @return
383 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getRights(eu.etaxonomy.cdm.model.common.IdentifiableEntity, java.lang.Integer, java.lang.Integer, java.util.List)
384 */
385 @Override
386 public Pager<Rights> getRights(TaxonBase t, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
387 return defaultService.getRights(t, pageSize, pageNumber, propertyPaths);
388 }
389
390 /**
391 * @param clazz
392 * @param technical
393 * @return
394 * @see eu.etaxonomy.cdm.api.service.IAnnotatableService#countMarkers(java.lang.Class, java.lang.Boolean)
395 */
396 @Override
397 public int countMarkers(Class<? extends TaxonBase> clazz, Boolean technical) {
398 return defaultService.countMarkers(clazz, technical);
399 }
400
401 /**
402 * @param idSet
403 * @return
404 * @see eu.etaxonomy.cdm.api.service.IService#findById(java.util.Set)
405 */
406 @Override
407 public List<TaxonBase> findById(Set<Integer> idSet) {
408 return defaultService.findById(idSet);
409 }
410
411 /**
412 * @param clazz
413 * @param idInSource
414 * @param idNamespace
415 * @return
416 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getSourcedObjectByIdInSource(java.lang.Class, java.lang.String, java.lang.String)
417 */
418 @Override
419 public ISourceable getSourcedObjectByIdInSource(Class clazz, String idInSource, String idNamespace) {
420 return defaultService.getSourcedObjectByIdInSource(clazz, idInSource, idNamespace);
421 }
422
423 /**
424 * @return
425 * @see eu.etaxonomy.cdm.api.service.IService#getSession()
426 */
427 @Override
428 public Session getSession() {
429 return defaultService.getSession();
430 }
431
432 /**
433 * @return
434 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getUuidAndTitleCache()
435 */
436 @Override
437 public List<UuidAndTitleCache<TaxonBase>> getUuidAndTitleCache() {
438 return defaultService.getUuidAndTitleCache();
439 }
440
441 /**
442 * @param clazz
443 * @param limit
444 * @param start
445 * @param groups
446 * @param propertyPaths
447 * @return
448 * @see eu.etaxonomy.cdm.api.service.IService#group(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
449 */
450 @Override
451 public List<Object[]> group(Class<? extends TaxonBase> clazz, Integer limit, Integer start, List<Grouping> groups, List<String> propertyPaths) {
452 return defaultService.group(clazz, limit, start, groups, propertyPaths);
453 }
454
455 /**
456 * @param limit
457 * @param start
458 * @return
459 * @see eu.etaxonomy.cdm.api.service.ITaxonService#getAllRelationships(int, int)
460 */
461 @Override
462 public List<RelationshipBase> getAllRelationships(int limit, int start) {
463 return defaultService.getAllRelationships(limit, start);
464 }
465
466 /**
467 * @param clazz
468 * @param queryString
469 * @param matchmode
470 * @param criteria
471 * @param pageSize
472 * @param pageNumber
473 * @param orderHints
474 * @param propertyPaths
475 * @return
476 * @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)
477 */
478 @Override
479 public Pager<TaxonBase> findByTitle(Class<? extends TaxonBase> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
480 return defaultService.findByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
481 }
482
483 /**
484 * @return
485 * @deprecated
486 * @see eu.etaxonomy.cdm.api.service.ITaxonService#getTaxonRelationshipTypeVocabulary()
487 */
488 @Deprecated
489 @Override
490 public OrderedTermVocabulary<TaxonRelationshipType> getTaxonRelationshipTypeVocabulary() {
491 return defaultService.getTaxonRelationshipTypeVocabulary();
492 }
493
494 /**
495 * @param name
496 * @param sec
497 * @return
498 * @see eu.etaxonomy.cdm.api.service.ITaxonService#searchTaxaByName(java.lang.String, eu.etaxonomy.cdm.model.reference.Reference)
499 */
500 @Override
501 public List<TaxonBase> searchTaxaByName(String name, Reference sec) {
502 return defaultService.searchTaxaByName(name, sec);
503 }
504
505 /**
506 * @param synonym
507 * @param acceptedTaxon
508 * @see eu.etaxonomy.cdm.api.service.ITaxonService#swapSynonymAndAcceptedTaxon(eu.etaxonomy.cdm.model.taxon.Synonym, eu.etaxonomy.cdm.model.taxon.Taxon)
509 */
510 @Override
511 public void swapSynonymAndAcceptedTaxon(Synonym synonym, Taxon acceptedTaxon) {
512 defaultService.swapSynonymAndAcceptedTaxon(synonym, acceptedTaxon);
513 }
514
515 /**
516 * @param type
517 * @param limit
518 * @param start
519 * @param orderHints
520 * @param propertyPaths
521 * @return
522 * @see eu.etaxonomy.cdm.api.service.IService#list(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
523 */
524 @Override
525 public <S extends TaxonBase> List<S> list(Class<S> type, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
526 return defaultService.list(type, limit, start, orderHints, propertyPaths);
527 }
528
529 /**
530 * @param configurator
531 * @return
532 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#findByTitle(eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator)
533 */
534 @Override
535 public Pager<TaxonBase> findByTitle(IIdentifiableEntityServiceConfigurator<TaxonBase> configurator) {
536 return defaultService.findByTitle(configurator);
537 }
538
539 /**
540 * @param synonym
541 * @param acceptedTaxon
542 * @param deleteSynonym
543 * @param copyCitationInfo
544 * @param citation
545 * @param microCitation
546 * @return
547 * @throws HomotypicalGroupChangeException
548 * @see eu.etaxonomy.cdm.api.service.ITaxonService#changeSynonymToAcceptedTaxon(eu.etaxonomy.cdm.model.taxon.Synonym, eu.etaxonomy.cdm.model.taxon.Taxon, boolean, boolean, eu.etaxonomy.cdm.model.reference.Reference, java.lang.String)
549 */
550 @Override
551 public Taxon changeSynonymToAcceptedTaxon(Synonym synonym, Taxon acceptedTaxon, boolean deleteSynonym, boolean copyCitationInfo, Reference citation, String microCitation) throws HomotypicalGroupChangeException {
552 return defaultService.changeSynonymToAcceptedTaxon(synonym, acceptedTaxon, deleteSynonym, copyCitationInfo, citation, microCitation);
553 }
554
555 /**
556 * @param clazz
557 * @param queryString
558 * @param matchmode
559 * @param criteria
560 * @return
561 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#countByTitle(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.persistence.query.MatchMode, java.util.List)
562 */
563 @Override
564 public Integer countByTitle(Class<? extends TaxonBase> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria) {
565 return defaultService.countByTitle(clazz, queryString, matchmode, criteria);
566 }
567
568 /**
569 * @param uuid
570 * @return
571 * @see eu.etaxonomy.cdm.api.service.IService#load(java.util.UUID)
572 */
573 @Override
574 public TaxonBase load(UUID uuid) {
575 return defaultService.load(uuid);
576 }
577
578 /**
579 * @param uuid
580 * @param propertyPaths
581 * @return
582 * @see eu.etaxonomy.cdm.api.service.IService#load(java.util.UUID, java.util.List)
583 */
584 @Override
585 public TaxonBase load(UUID uuid, List<String> propertyPaths) {
586 return defaultService.load(uuid, propertyPaths);
587 }
588
589 /**
590 * @param configurator
591 * @return
592 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#countByTitle(eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator)
593 */
594 @Override
595 public Integer countByTitle(IIdentifiableEntityServiceConfigurator<TaxonBase> configurator) {
596 return defaultService.countByTitle(configurator);
597 }
598
599 /**
600 * @param transientObject
601 * @return
602 * @see eu.etaxonomy.cdm.api.service.IService#merge(eu.etaxonomy.cdm.model.common.ICdmBase)
603 */
604 @Override
605 public TaxonBase merge(TaxonBase transientObject) {
606 return defaultService.merge(transientObject);
607 }
608
609 /**
610 * @param clazz
611 * @param queryString
612 * @param matchmode
613 * @param criteria
614 * @param pageSize
615 * @param pageNumber
616 * @param orderHints
617 * @param propertyPaths
618 * @return
619 * @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)
620 */
621 @Override
622 public List<TaxonBase> listByTitle(Class<? extends TaxonBase> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
623 return defaultService.listByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
624 }
625
626 /**
627 * @param type
628 * @param pageSize
629 * @param pageNumber
630 * @param orderHints
631 * @param propertyPaths
632 * @return
633 * @see eu.etaxonomy.cdm.api.service.IService#page(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
634 */
635 @Override
636 public <S extends TaxonBase> Pager<S> page(Class<S> type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
637 return defaultService.page(type, pageSize, pageNumber, orderHints, propertyPaths);
638 }
639
640 /**
641 * @param persistentObject
642 * @return
643 * @see eu.etaxonomy.cdm.api.service.IService#refresh(eu.etaxonomy.cdm.model.common.ICdmBase)
644 */
645 @Override
646 public UUID refresh(TaxonBase persistentObject) {
647 return defaultService.refresh(persistentObject);
648 }
649
650 /**
651 * @param synonym
652 * @param toTaxon
653 * @param taxonRelationshipType
654 * @param reference
655 * @param microReference
656 * @return
657 * @see eu.etaxonomy.cdm.api.service.ITaxonService#changeSynonymToRelatedTaxon(eu.etaxonomy.cdm.model.taxon.Synonym, eu.etaxonomy.cdm.model.taxon.Taxon, eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType, eu.etaxonomy.cdm.model.reference.Reference, java.lang.String)
658 */
659 @Override
660 public Taxon changeSynonymToRelatedTaxon(Synonym synonym, Taxon toTaxon, TaxonRelationshipType taxonRelationshipType, Reference reference, String microReference) {
661 return defaultService.changeSynonymToRelatedTaxon(synonym, toTaxon, taxonRelationshipType, reference, microReference);
662 }
663
664 /**
665 * @param clazz
666 * @param queryString
667 * @param matchmode
668 * @param criteria
669 * @param pageSize
670 * @param pageNumber
671 * @param orderHints
672 * @param propertyPaths
673 * @return
674 * @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)
675 */
676 @Override
677 public List<TaxonBase> listByReferenceTitle(Class<? extends TaxonBase> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
678 return defaultService.listByReferenceTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
679 }
680
681 /**
682 * @param tableName
683 * @param limit
684 * @param start
685 * @return
686 * @see eu.etaxonomy.cdm.api.service.IService#rows(java.lang.String, int, int)
687 */
688 @Override
689 public List<TaxonBase> rows(String tableName, int limit, int start) {
690 return defaultService.rows(tableName, limit, start);
691 }
692
693 /**
694 * @param newInstances
695 * @return
696 * @see eu.etaxonomy.cdm.api.service.IService#save(java.util.Collection)
697 */
698 @Override
699 public Map<UUID, TaxonBase> save(Collection<TaxonBase> newInstances) {
700 return null;
701 }
702
703 /**
704 * @param syn
705 * @param taxon
706 * @return
707 * @see eu.etaxonomy.cdm.api.service.ITaxonService#deleteSynonymRelationships(eu.etaxonomy.cdm.model.taxon.Synonym, eu.etaxonomy.cdm.model.taxon.Taxon)
708 */
709 @Override
710 public long deleteSynonymRelationships(Synonym syn, Taxon taxon) {
711 return defaultService.deleteSynonymRelationships(syn, taxon);
712 }
713
714 /**
715 * @param newInstance
716 * @return
717 * @see eu.etaxonomy.cdm.api.service.IService#save(eu.etaxonomy.cdm.model.common.ICdmBase)
718 */
719 @Override
720 public UUID save(TaxonBase newInstance) {
721 return null;
722 }
723
724 /**
725 * @param transientObject
726 * @return
727 * @see eu.etaxonomy.cdm.api.service.IService#saveOrUpdate(eu.etaxonomy.cdm.model.common.ICdmBase)
728 */
729 @Override
730 public UUID saveOrUpdate(TaxonBase transientObject) {
731 return null;
732 }
733
734 /**
735 * @param synonym
736 * @param newHomotypicalGroup
737 * @param targetTaxon
738 * @param removeFromOtherTaxa
739 * @param setBasionymRelationIfApplicable
740 * @see eu.etaxonomy.cdm.api.service.ITaxonService#changeHomotypicalGroupOfSynonym(eu.etaxonomy.cdm.model.taxon.Synonym, eu.etaxonomy.cdm.model.name.HomotypicalGroup, eu.etaxonomy.cdm.model.taxon.Taxon, boolean, boolean)
741 */
742 @Override
743 public void changeHomotypicalGroupOfSynonym(Synonym synonym, HomotypicalGroup newHomotypicalGroup, Taxon targetTaxon, boolean removeFromOtherTaxa, boolean setBasionymRelationIfApplicable) {
744 defaultService.changeHomotypicalGroupOfSynonym(synonym, newHomotypicalGroup, targetTaxon, removeFromOtherTaxa, setBasionymRelationIfApplicable);
745 }
746
747 /**
748 * @param transientObjects
749 * @return
750 * @see eu.etaxonomy.cdm.api.service.IService#saveOrUpdate(java.util.Collection)
751 */
752 @Override
753 public Map<UUID, TaxonBase> saveOrUpdate(Collection<TaxonBase> transientObjects) {
754 return null;
755 }
756
757 /**
758 * @param transientObject
759 * @return
760 * @see eu.etaxonomy.cdm.api.service.IService#update(eu.etaxonomy.cdm.model.common.ICdmBase)
761 */
762 @Override
763 public UUID update(TaxonBase transientObject) {
764 return defaultService.update(transientObject);
765 }
766
767 /**
768 * @param example
769 * @param includeProperties
770 * @param limit
771 * @param start
772 * @param orderHints
773 * @param propertyPaths
774 * @return
775 * @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)
776 */
777 @Override
778 public List<TaxonBase> list(TaxonBase example, Set<String> includeProperties, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
779 return defaultService.list(example, includeProperties, limit, start, orderHints, propertyPaths);
780 }
781
782 /**
783 * @param oldSynonymRelation
784 * @param newTaxon
785 * @param moveHomotypicGroup
786 * @param newSynonymRelationshipType
787 * @param newReference
788 * @param newReferenceDetail
789 * @param keepReference
790 * @return
791 * @throws HomotypicalGroupChangeException
792 * @see eu.etaxonomy.cdm.api.service.ITaxonService#moveSynonymToAnotherTaxon(eu.etaxonomy.cdm.model.taxon.SynonymRelationship, eu.etaxonomy.cdm.model.taxon.Taxon, boolean, eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType, eu.etaxonomy.cdm.model.reference.Reference, java.lang.String, boolean)
793 */
794 @Override
795 public SynonymRelationship moveSynonymToAnotherTaxon(SynonymRelationship oldSynonymRelation, Taxon newTaxon, boolean moveHomotypicGroup, SynonymRelationshipType newSynonymRelationshipType, Reference newReference, String newReferenceDetail, boolean keepReference) throws HomotypicalGroupChangeException {
796 return defaultService.moveSynonymToAnotherTaxon(oldSynonymRelation, newTaxon, moveHomotypicGroup, newSynonymRelationshipType, newReference, newReferenceDetail, keepReference);
797 }
798
799 /**
800 * @param clazz
801 * @param matchStrategy
802 * @param mergeStrategy
803 * @return
804 * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#deduplicate(java.lang.Class, eu.etaxonomy.cdm.strategy.match.IMatchStrategy, eu.etaxonomy.cdm.strategy.merge.IMergeStrategy)
805 */
806 @Override
807 public int deduplicate(Class<? extends TaxonBase> clazz, IMatchStrategy matchStrategy, IMergeStrategy mergeStrategy) {
808 return defaultService.deduplicate(clazz, matchStrategy, mergeStrategy);
809 }
810
811 /**
812 * @param clazz
813 * @param queryString
814 * @param pageSize
815 * @param pageNumber
816 * @param orderHints
817 * @param matchMode
818 * @return
819 * @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)
820 */
821 @Override
822 public Pager<TaxonBase> findTitleCache(Class<? extends TaxonBase> clazz, String queryString, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, MatchMode matchMode) {
823 return defaultService.findTitleCache(clazz, queryString, pageSize, pageNumber, orderHints, matchMode);
824 }
825
826 /**
827 * @param taxon
828 * @param type
829 * @param pageSize
830 * @param pageNumber
831 * @param orderHints
832 * @param propertyPaths
833 * @return
834 * @see eu.etaxonomy.cdm.api.service.ITaxonService#listToTaxonRelationships(eu.etaxonomy.cdm.model.taxon.Taxon, eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
835 */
836 @Override
837 public List<TaxonRelationship> listToTaxonRelationships(Taxon taxon, TaxonRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
838 return defaultService.listToTaxonRelationships(taxon, type, pageSize, pageNumber, orderHints, propertyPaths);
839 }
840
841 /**
842 * @param taxon
843 * @param type
844 * @param pageSize
845 * @param pageNumber
846 * @param orderHints
847 * @param propertyPaths
848 * @return
849 * @see eu.etaxonomy.cdm.api.service.ITaxonService#pageToTaxonRelationships(eu.etaxonomy.cdm.model.taxon.Taxon, eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
850 */
851 @Override
852 public Pager<TaxonRelationship> pageToTaxonRelationships(Taxon taxon, TaxonRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
853 return defaultService.pageToTaxonRelationships(taxon, type, pageSize, pageNumber, orderHints, propertyPaths);
854 }
855
856 /**
857 * @param taxon
858 * @param type
859 * @param pageSize
860 * @param pageNumber
861 * @param orderHints
862 * @param propertyPaths
863 * @return
864 * @see eu.etaxonomy.cdm.api.service.ITaxonService#listFromTaxonRelationships(eu.etaxonomy.cdm.model.taxon.Taxon, eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
865 */
866 @Override
867 public List<TaxonRelationship> listFromTaxonRelationships(Taxon taxon, TaxonRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
868 return defaultService.listFromTaxonRelationships(taxon, type, pageSize, pageNumber, orderHints, propertyPaths);
869 }
870
871 /**
872 * @param taxon
873 * @param type
874 * @param pageSize
875 * @param pageNumber
876 * @param orderHints
877 * @param propertyPaths
878 * @return
879 * @see eu.etaxonomy.cdm.api.service.ITaxonService#pageFromTaxonRelationships(eu.etaxonomy.cdm.model.taxon.Taxon, eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
880 */
881 @Override
882 public Pager<TaxonRelationship> pageFromTaxonRelationships(Taxon taxon, TaxonRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
883 return defaultService.pageFromTaxonRelationships(taxon, type, pageSize, pageNumber, orderHints, propertyPaths);
884 }
885
886 /**
887 * @param taxon
888 * @param includeRelationships
889 * @param maxDepth
890 * @param limit
891 * @param start
892 * @param propertyPaths
893 * @return
894 * @see eu.etaxonomy.cdm.api.service.ITaxonService#listRelatedTaxa(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.Set, java.lang.Integer, java.lang.Integer, java.lang.Integer, java.util.List)
895 */
896 @Override
897 public Set<Taxon> listRelatedTaxa(Taxon taxon, Set<TaxonRelationshipEdge> includeRelationships, Integer maxDepth, Integer limit, Integer start, List<String> propertyPaths) {
898 return defaultService.listRelatedTaxa(taxon, includeRelationships, maxDepth, limit, start, propertyPaths);
899 }
900
901 /**
902 * @param taxonBase
903 * @param limit
904 * @param start
905 * @param propertyPaths
906 * @return
907 * @see eu.etaxonomy.cdm.api.service.ITaxonService#listClassifications(eu.etaxonomy.cdm.model.taxon.TaxonBase, java.lang.Integer, java.lang.Integer, java.util.List)
908 */
909 @Override
910 public List<Classification> listClassifications(TaxonBase taxonBase, Integer limit, Integer start, List<String> propertyPaths) {
911 return defaultService.listClassifications(taxonBase, limit, start, propertyPaths);
912 }
913
914 /**
915 * @param synonym
916 * @param type
917 * @param pageSize
918 * @param pageNumber
919 * @param orderHints
920 * @param propertyPaths
921 * @return
922 * @see eu.etaxonomy.cdm.api.service.ITaxonService#getSynonyms(eu.etaxonomy.cdm.model.taxon.Synonym, eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
923 */
924 @Override
925 public Pager<SynonymRelationship> getSynonyms(Synonym synonym, SynonymRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
926 return defaultService.getSynonyms(synonym, type, pageSize, pageNumber, orderHints, propertyPaths);
927 }
928
929 /**
930 * @param taxon
931 * @param type
932 * @param pageSize
933 * @param pageNumber
934 * @param orderHints
935 * @param propertyPaths
936 * @return
937 * @see eu.etaxonomy.cdm.api.service.ITaxonService#getSynonyms(eu.etaxonomy.cdm.model.taxon.Taxon, eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
938 */
939 @Override
940 public Pager<SynonymRelationship> getSynonyms(Taxon taxon, SynonymRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
941 return defaultService.getSynonyms(taxon, type, pageSize, pageNumber, orderHints, propertyPaths);
942 }
943
944 /**
945 * @param taxon
946 * @param propertyPaths
947 * @return
948 * @see eu.etaxonomy.cdm.api.service.ITaxonService#getHomotypicSynonymsByHomotypicGroup(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.List)
949 */
950 @Override
951 public List<Synonym> getHomotypicSynonymsByHomotypicGroup(Taxon taxon, List<String> propertyPaths) {
952 return defaultService.getHomotypicSynonymsByHomotypicGroup(taxon, propertyPaths);
953 }
954
955 /**
956 * @param taxon
957 * @param propertyPaths
958 * @return
959 * @see eu.etaxonomy.cdm.api.service.ITaxonService#getHeterotypicSynonymyGroups(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.List)
960 */
961 @Override
962 public List<List<Synonym>> getHeterotypicSynonymyGroups(Taxon taxon, List<String> propertyPaths) {
963 return defaultService.getHeterotypicSynonymyGroups(taxon, propertyPaths);
964 }
965
966 /**
967 * @param clazz
968 * @param queryString
969 * @param pageSize
970 * @param pageNumber
971 * @param orderHints
972 * @param propertyPaths
973 * @return
974 * @see eu.etaxonomy.cdm.api.service.ITaxonService#search(java.lang.Class, java.lang.String, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
975 */
976 @Override
977 public Pager<TaxonBase> search(Class<? extends TaxonBase> clazz, String queryString, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
978 return defaultService.search(clazz, queryString, pageSize, pageNumber, orderHints, propertyPaths);
979 }
980
981 /**
982 * @param clazz
983 * @param uninomial
984 * @param infragenericEpithet
985 * @param specificEpithet
986 * @param infraspecificEpithet
987 * @param rank
988 * @param pageSize
989 * @param pageNumber
990 * @return
991 * @see eu.etaxonomy.cdm.api.service.ITaxonService#findTaxaByName(java.lang.Class, java.lang.String, java.lang.String, java.lang.String, java.lang.String, eu.etaxonomy.cdm.model.name.Rank, java.lang.Integer, java.lang.Integer)
992 */
993 @Override
994 public Pager<TaxonBase> findTaxaByName(Class<? extends TaxonBase> clazz, String uninomial, String infragenericEpithet, String specificEpithet, String infraspecificEpithet, Rank rank, Integer pageSize, Integer pageNumber) {
995 return defaultService.findTaxaByName(clazz, uninomial, infragenericEpithet, specificEpithet, infraspecificEpithet, rank, pageSize, pageNumber);
996 }
997
998 /**
999 * @param clazz
1000 * @param uninomial
1001 * @param infragenericEpithet
1002 * @param specificEpithet
1003 * @param infraspecificEpithet
1004 * @param rank
1005 * @param pageSize
1006 * @param pageNumber
1007 * @return
1008 * @see eu.etaxonomy.cdm.api.service.ITaxonService#listTaxaByName(java.lang.Class, java.lang.String, java.lang.String, java.lang.String, java.lang.String, eu.etaxonomy.cdm.model.name.Rank, java.lang.Integer, java.lang.Integer)
1009 */
1010 @Override
1011 public List<TaxonBase> listTaxaByName(Class<? extends TaxonBase> clazz, String uninomial, String infragenericEpithet, String specificEpithet, String infraspecificEpithet, Rank rank, Integer pageSize, Integer pageNumber) {
1012 return defaultService.listTaxaByName(clazz, uninomial, infragenericEpithet, specificEpithet, infraspecificEpithet, rank, pageSize, pageNumber);
1013 }
1014
1015 /**
1016 * @param configurator
1017 * @return
1018 * @see eu.etaxonomy.cdm.api.service.ITaxonService#findTaxaAndNames(eu.etaxonomy.cdm.api.service.config.IFindTaxaAndNamesConfigurator)
1019 */
1020 @Override
1021 public Pager<IdentifiableEntity> findTaxaAndNames(IFindTaxaAndNamesConfigurator configurator) {
1022 return defaultService.findTaxaAndNames(configurator);
1023 }
1024
1025 /**
1026 * @param queryString
1027 * @param classification
1028 * @param languages
1029 * @param highlightFragments
1030 * @param pageSize
1031 * @param pageNumber
1032 * @param orderHints
1033 * @param propertyPaths
1034 * @return
1035 * @throws CorruptIndexException
1036 * @throws IOException
1037 * @throws ParseException
1038 * @throws LuceneMultiSearchException
1039 * @deprecated
1040 * @see eu.etaxonomy.cdm.api.service.ITaxonService#findByEverythingFullText(java.lang.String, eu.etaxonomy.cdm.model.taxon.Classification, java.util.List, boolean, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
1041 */
1042 @Deprecated
1043 @Override
1044 public Pager<SearchResult<TaxonBase>> findByEverythingFullText(String queryString, Classification classification, List<Language> languages, boolean highlightFragments, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) throws CorruptIndexException, IOException, ParseException, LuceneMultiSearchException {
1045 return defaultService.findByEverythingFullText(queryString, classification, languages, highlightFragments, pageSize, pageNumber, orderHints, propertyPaths);
1046 }
1047
1048 /**
1049 * @param clazz
1050 * @param queryString
1051 * @param classification
1052 * @param languages
1053 * @param highlightFragments
1054 * @param pageSize
1055 * @param pageNumber
1056 * @param orderHints
1057 * @param propertyPaths
1058 * @return
1059 * @throws CorruptIndexException
1060 * @throws IOException
1061 * @throws ParseException
1062 * @see eu.etaxonomy.cdm.api.service.ITaxonService#findByFullText(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.model.taxon.Classification, java.util.List, boolean, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
1063 */
1064 @Override
1065 public Pager<SearchResult<TaxonBase>> findByFullText(Class<? extends TaxonBase> clazz, String queryString, Classification classification, List<Language> languages, boolean highlightFragments, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) throws CorruptIndexException, IOException, ParseException {
1066 return defaultService.findByFullText(clazz, queryString, classification, languages, highlightFragments, pageSize, pageNumber, orderHints, propertyPaths);
1067 }
1068
1069
1070 /* (non-Javadoc)
1071 * @see eu.etaxonomy.cdm.api.service.ITaxonService#findByDistribution(java.util.List, java.util.List, eu.etaxonomy.cdm.model.taxon.Classification, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
1072 */
1073 @Override
1074 public Pager<SearchResult<TaxonBase>> findByDistribution(List<NamedArea> areaFilter,
1075 List<PresenceAbsenceTerm> statusFilter, Classification classification, Integer pageSize,
1076 Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) throws IOException,
1077 ParseException {
1078 return defaultService.findByDistribution(areaFilter, statusFilter, classification, pageSize, pageNumber, orderHints, propertyPaths);
1079 }
1080
1081
1082 /* (non-Javadoc)
1083 * @see eu.etaxonomy.cdm.api.service.ITaxonService#findTaxaAndNamesByFullText(java.util.EnumSet, java.lang.String, eu.etaxonomy.cdm.model.taxon.Classification, java.util.Set, java.util.Set, java.util.List, boolean, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
1084 */
1085 @Override
1086 public Pager<SearchResult<TaxonBase>> findTaxaAndNamesByFullText(EnumSet<TaxaAndNamesSearchMode> searchModes,
1087 String queryString, Classification classification, Set<NamedArea> namedAreas,
1088 Set<PresenceAbsenceTerm> distributionStatus, List<Language> languages, boolean highlightFragments,
1089 Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths)
1090 throws CorruptIndexException, IOException, ParseException, LuceneMultiSearchException {
1091 return defaultService.findTaxaAndNamesByFullText(searchModes, queryString, classification, namedAreas, distributionStatus, languages, highlightFragments, pageSize, pageNumber, orderHints, propertyPaths);
1092 }
1093
1094 /**
1095 * @param clazz
1096 * @param queryString
1097 * @param classification
1098 * @param features
1099 * @param languages
1100 * @param highlightFragments
1101 * @param pageSize
1102 * @param pageNumber
1103 * @param orderHints
1104 * @param propertyPaths
1105 * @return
1106 * @throws CorruptIndexException
1107 * @throws IOException
1108 * @throws ParseException
1109 * @see eu.etaxonomy.cdm.api.service.ITaxonService#findByDescriptionElementFullText(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.model.taxon.Classification, java.util.List, java.util.List, boolean, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
1110 */
1111 @Override
1112 public Pager<SearchResult<TaxonBase>> findByDescriptionElementFullText(Class<? extends DescriptionElementBase> clazz, String queryString, Classification classification, List<Feature> features, List<Language> languages, boolean highlightFragments, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) throws CorruptIndexException, IOException, ParseException {
1113 return defaultService.findByDescriptionElementFullText(clazz, queryString, classification, features, languages, highlightFragments, pageSize, pageNumber, orderHints, propertyPaths);
1114 }
1115
1116 /**
1117 * @param taxon
1118 * @param size
1119 * @param height
1120 * @param widthOrDuration
1121 * @param mimeTypes
1122 * @return
1123 * @deprecated
1124 * @see eu.etaxonomy.cdm.api.service.ITaxonService#getAllMedia(eu.etaxonomy.cdm.model.taxon.Taxon, int, int, int, java.lang.String[])
1125 */
1126 @Deprecated
1127 @Override
1128 public List<MediaRepresentation> getAllMedia(Taxon taxon, int size, int height, int widthOrDuration, String[] mimeTypes) {
1129 return defaultService.getAllMedia(taxon, size, height, widthOrDuration, mimeTypes);
1130 }
1131
1132 /**
1133 * @param taxon
1134 * @param includeRelationships
1135 * @param limitToGalleries
1136 * @param propertyPath
1137 * @return
1138 * @deprecated
1139 * @see eu.etaxonomy.cdm.api.service.ITaxonService#listTaxonDescriptionMedia(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.Set, boolean, java.util.List)
1140 */
1141 @Deprecated
1142 @Override
1143 public List<Media> listTaxonDescriptionMedia(Taxon taxon, Set<TaxonRelationshipEdge> includeRelationships, boolean limitToGalleries, List<String> propertyPath) {
1144 return defaultService.listTaxonDescriptionMedia(taxon, includeRelationships, limitToGalleries, propertyPath);
1145 }
1146
1147 /**
1148 * @param taxon
1149 * @param includeRelationships
1150 * @param limitToGalleries
1151 * @param includeTaxonDescriptions
1152 * @param includeOccurrences
1153 * @param includeTaxonNameDescriptions
1154 * @param propertyPath
1155 * @return
1156 * @see eu.etaxonomy.cdm.api.service.ITaxonService#listMedia(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.Set, java.lang.Boolean, java.lang.Boolean, java.lang.Boolean, java.lang.Boolean, java.util.List)
1157 */
1158 @Override
1159 public List<Media> listMedia(Taxon taxon, Set<TaxonRelationshipEdge> includeRelationships, Boolean limitToGalleries, Boolean includeTaxonDescriptions, Boolean includeOccurrences, Boolean includeTaxonNameDescriptions, List<String> propertyPath) {
1160 return defaultService.listMedia(taxon, includeRelationships, limitToGalleries, includeTaxonDescriptions, includeOccurrences, includeTaxonNameDescriptions, propertyPath);
1161 }
1162
1163 /**
1164 * @param listOfIDs
1165 * @return
1166 * @see eu.etaxonomy.cdm.api.service.ITaxonService#findTaxaByID(java.util.Set)
1167 */
1168 @Override
1169 public List<TaxonBase> findTaxaByID(Set<Integer> listOfIDs) {
1170 return defaultService.findTaxaByID(listOfIDs);
1171 }
1172
1173 /**
1174 * @param uuid
1175 * @param propertyPaths
1176 * @return
1177 * @see eu.etaxonomy.cdm.api.service.ITaxonService#findTaxonByUuid(java.util.UUID, java.util.List)
1178 */
1179 @Override
1180 public TaxonBase findTaxonByUuid(UUID uuid, List<String> propertyPaths) {
1181 return defaultService.findTaxonByUuid(uuid, propertyPaths);
1182 }
1183
1184 /**
1185 * @return
1186 * @see eu.etaxonomy.cdm.api.service.ITaxonService#countAllRelationships()
1187 */
1188 @Override
1189 public int countAllRelationships() {
1190 return defaultService.countAllRelationships();
1191 }
1192
1193 /**
1194 * @param propertyPath
1195 * @return
1196 * @see eu.etaxonomy.cdm.api.service.ITaxonService#findIdenticalTaxonNames(java.util.List)
1197 */
1198 @Override
1199 public List<TaxonNameBase> findIdenticalTaxonNames(List<String> propertyPath) {
1200 return defaultService.findIdenticalTaxonNames(propertyPath);
1201 }
1202
1203 /**
1204 * @param propertyPath
1205 * @return
1206 * @see eu.etaxonomy.cdm.api.service.ITaxonService#findIdenticalTaxonNameIds(java.util.List)
1207 */
1208 @Override
1209 public List<TaxonNameBase> findIdenticalTaxonNameIds(List<String> propertyPath) {
1210 return defaultService.findIdenticalTaxonNameIds(propertyPath);
1211 }
1212
1213 /**
1214 * @param name
1215 * @return
1216 * @see eu.etaxonomy.cdm.api.service.ITaxonService#getPhylumName(eu.etaxonomy.cdm.model.name.TaxonNameBase)
1217 */
1218 @Override
1219 public String getPhylumName(TaxonNameBase name) {
1220 return defaultService.getPhylumName(name);
1221 }
1222
1223 /**
1224 * @param syn
1225 * @return
1226 * @see eu.etaxonomy.cdm.api.service.ITaxonService#deleteSynonymRelationships(eu.etaxonomy.cdm.model.taxon.Synonym)
1227 */
1228 @Override
1229 public long deleteSynonymRelationships(Synonym syn) {
1230 return defaultService.deleteSynonymRelationships(syn);
1231 }
1232
1233 /**
1234 * @param taxonBase
1235 * @param type
1236 * @param pageSize
1237 * @param pageNumber
1238 * @param orderHints
1239 * @param propertyPaths
1240 * @param direction
1241 * @return
1242 * @see eu.etaxonomy.cdm.api.service.ITaxonService#listSynonymRelationships(eu.etaxonomy.cdm.model.taxon.TaxonBase, eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List, eu.etaxonomy.cdm.model.common.RelationshipBase.Direction)
1243 */
1244 @Override
1245 public List<SynonymRelationship> listSynonymRelationships(TaxonBase taxonBase, SynonymRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths, Direction direction) {
1246 return defaultService.listSynonymRelationships(taxonBase, type, pageSize, pageNumber, orderHints, propertyPaths, direction);
1247 }
1248
1249 /**
1250 * @param taxonName
1251 * @return
1252 * @see eu.etaxonomy.cdm.api.service.ITaxonService#findBestMatchingTaxon(java.lang.String)
1253 */
1254 @Override
1255 public Taxon findBestMatchingTaxon(String taxonName) {
1256 return defaultService.findBestMatchingTaxon(taxonName);
1257 }
1258
1259 /**
1260 * @param config
1261 * @return
1262 * @see eu.etaxonomy.cdm.api.service.ITaxonService#findBestMatchingTaxon(eu.etaxonomy.cdm.api.service.config.MatchingTaxonConfigurator)
1263 */
1264 @Override
1265 public Taxon findBestMatchingTaxon(MatchingTaxonConfigurator config) {
1266 return defaultService.findBestMatchingTaxon(config);
1267 }
1268
1269 /**
1270 * @param taxonName
1271 * @return
1272 * @see eu.etaxonomy.cdm.api.service.ITaxonService#findBestMatchingSynonym(java.lang.String)
1273 */
1274 @Override
1275 public Synonym findBestMatchingSynonym(String taxonName) {
1276 return defaultService.findBestMatchingSynonym(taxonName);
1277 }
1278
1279 /**
1280 * @return
1281 * @see eu.etaxonomy.cdm.api.service.ITaxonService#getUuidAndTitleCacheTaxon()
1282 */
1283 @Override
1284 public List<UuidAndTitleCache<TaxonBase>> getUuidAndTitleCacheTaxon() {
1285 return defaultService.getUuidAndTitleCacheTaxon();
1286 }
1287
1288 /**
1289 * @return
1290 * @see eu.etaxonomy.cdm.api.service.ITaxonService#getUuidAndTitleCacheSynonym()
1291 */
1292 @Override
1293 public List<UuidAndTitleCache<TaxonBase>> getUuidAndTitleCacheSynonym() {
1294 return defaultService.getUuidAndTitleCacheSynonym();
1295 }
1296
1297 /**
1298 * @param configurator
1299 * @return
1300 * @see eu.etaxonomy.cdm.api.service.ITaxonService#findTaxaAndNamesForEditor(eu.etaxonomy.cdm.api.service.config.IFindTaxaAndNamesConfigurator)
1301 */
1302 @Override
1303 public List<UuidAndTitleCache<IdentifiableEntity>> findTaxaAndNamesForEditor(IFindTaxaAndNamesConfigurator configurator) {
1304 return defaultService.findTaxaAndNamesForEditor(configurator);
1305 }
1306
1307 /**
1308 * @param taxon
1309 * @param tree
1310 * @param type
1311 * @param doWithMisappliedNames
1312 * @return
1313 * @see eu.etaxonomy.cdm.api.service.ITaxonService#createInferredSynonyms(eu.etaxonomy.cdm.model.taxon.Taxon, eu.etaxonomy.cdm.model.taxon.Classification, eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType, boolean)
1314 */
1315 @Override
1316 public List<Synonym> createInferredSynonyms(Taxon taxon, Classification tree, SynonymRelationshipType type, boolean doWithMisappliedNames) {
1317 return defaultService.createInferredSynonyms(taxon, tree, type, doWithMisappliedNames);
1318 }
1319
1320 /**
1321 * @param taxon
1322 * @param tree
1323 * @param doWithMisappliedNames
1324 * @return
1325 * @see eu.etaxonomy.cdm.api.service.ITaxonService#createAllInferredSynonyms(eu.etaxonomy.cdm.model.taxon.Taxon, eu.etaxonomy.cdm.model.taxon.Classification, boolean)
1326 */
1327 @Override
1328 public List<Synonym> createAllInferredSynonyms(Taxon taxon, Classification tree, boolean doWithMisappliedNames) {
1329 return defaultService.createAllInferredSynonyms(taxon, tree, doWithMisappliedNames);
1330 }
1331
1332 @Override
1333 public DeleteResult deleteSynonym(Synonym arg0, SynonymDeletionConfigurator arg1) {
1334 return defaultService.deleteSynonym(arg0, arg1);
1335 }
1336
1337 @Override
1338 public DeleteResult deleteSynonym(Synonym arg0, Taxon arg1, SynonymDeletionConfigurator arg2) {
1339 return defaultService.deleteSynonym(arg0, arg1, arg2);
1340 }
1341
1342 @Override
1343 public DeleteResult deleteTaxon(Taxon arg0, TaxonDeletionConfigurator arg1, Classification arg2) {
1344 return defaultService.deleteTaxon(arg0, arg1, arg2);
1345 }
1346
1347 @Override
1348 public List<List<Synonym>> getSynonymsByHomotypicGroup(Taxon taxon, List<String> propertyPaths) {
1349 return defaultService.getSynonymsByHomotypicGroup(taxon, propertyPaths);
1350 }
1351
1352 @Override
1353 public Synonym changeRelatedTaxonToSynonym(Taxon fromTaxon, Taxon toTaxon,
1354 TaxonRelationshipType oldRelationshipType,
1355 SynonymRelationshipType synonymRelationshipType)
1356 throws DataChangeNoRollbackException {
1357
1358 return defaultService.changeRelatedTaxonToSynonym(fromTaxon, toTaxon, oldRelationshipType, synonymRelationshipType);
1359 }
1360
1361 /* (non-Javadoc)
1362 * @see eu.etaxonomy.cdm.api.service.ITaxonService#pageAcceptedTaxaFor(java.util.UUID, java.util.UUID, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
1363 */
1364 @Override
1365 public Pager<Taxon> pageAcceptedTaxaFor(UUID synonymUuid, UUID classificationUuid, Integer pageSize,
1366 Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
1367 return defaultService.pageAcceptedTaxaFor(synonymUuid, classificationUuid, pageSize, pageNumber, orderHints, propertyPaths);
1368 }
1369
1370 /* (non-Javadoc)
1371 * @see eu.etaxonomy.cdm.api.service.ITaxonService#listAcceptedTaxaFor(java.util.UUID, java.util.UUID, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
1372 */
1373 @Override
1374 public List<Taxon> listAcceptedTaxaFor(UUID synonymUuid, UUID classificationUuid, Integer pageSize,
1375 Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
1376 return defaultService.listAcceptedTaxaFor(synonymUuid, classificationUuid, pageSize, pageNumber, orderHints, propertyPaths);
1377 }
1378
1379 @Override
1380 public DeleteResult isDeletable(TaxonBase object,
1381 DeleteConfiguratorBase config) {
1382 // TODO Auto-generated method stub
1383 return null;
1384 }
1385
1386 @Override
1387 public IncludedTaxaDTO listIncludedTaxa(UUID taxonUuid,
1388 IncludedTaxonConfiguration configuration) {
1389 // TODO Auto-generated method stub
1390 return null;
1391 }
1392
1393 @Override
1394 public TaxonBase findWithoutFlush(UUID uuid) {
1395 return defaultService.findWithoutFlush(uuid);
1396 }
1397
1398 /* (non-Javadoc)
1399 * @see eu.etaxonomy.cdm.api.service.ITaxonService#findTaxaByName(eu.etaxonomy.cdm.api.service.config.MatchingTaxonConfigurator)
1400 */
1401 @Override
1402 public List<TaxonBase> findTaxaByName(MatchingTaxonConfigurator config) {
1403 return defaultService.findTaxaByName(config);
1404 }
1405
1406 @Override
1407 public <S extends TaxonBase> Pager<FindByIdentifierDTO<S>> findByIdentifier(Class<S> clazz, String identifier, DefinedTerm identifierType, MatchMode matchmode, boolean includeEntity, Integer pageSize, Integer pageNumber, List<String> propertyPaths){
1408 return defaultService.findByIdentifier(clazz, identifier, identifierType, matchmode, includeEntity, pageSize, pageNumber, propertyPaths);
1409 }
1410
1411 /* (non-Javadoc)
1412 * @see eu.etaxonomy.cdm.api.service.ITaxonService#findByIdentifier(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.model.common.DefinedTerm, eu.etaxonomy.cdm.model.taxon.TaxonNode, eu.etaxonomy.cdm.persistence.query.MatchMode, boolean, java.lang.Integer, java.lang.Integer, java.util.List)
1413 */
1414 @Override
1415 public <S extends TaxonBase> Pager<FindByIdentifierDTO<S>> findByIdentifier(Class<S> clazz, String identifier,
1416 DefinedTerm identifierType, TaxonNode subtreeFilter, MatchMode matchmode, boolean includeEntity,
1417 Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
1418 return defaultService.findByIdentifier(clazz, identifier, identifierType, subtreeFilter, matchmode, includeEntity, pageSize, pageNumber, propertyPaths);
1419 }
1420
1421
1422
1423
1424
1425
1426
1427 @Override
1428 public SynonymRelationship moveSynonymToAnotherTaxon(
1429 SynonymRelationship oldSynonymRelation, UUID newTaxonUUID,
1430 boolean moveHomotypicGroup,
1431 SynonymRelationshipType newSynonymRelationshipType,
1432 Reference reference, String referenceDetail, boolean keepReference)
1433 throws HomotypicalGroupChangeException {
1434
1435 return defaultService.moveSynonymToAnotherTaxon(oldSynonymRelation, newTaxonUUID, moveHomotypicGroup, newSynonymRelationshipType, reference, referenceDetail, keepReference);
1436 }
1437
1438
1439
1440
1441 }