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