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