Project

General

Profile

Download (62.6 KB) Statistics
| Branch: | Tag: | Revision:
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.UpdateResult;
31
import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
32
import eu.etaxonomy.cdm.api.service.config.IFindTaxaAndNamesConfigurator;
33
import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
34
import eu.etaxonomy.cdm.api.service.config.IncludedTaxonConfiguration;
35
import eu.etaxonomy.cdm.api.service.config.MatchingTaxonConfigurator;
36
import eu.etaxonomy.cdm.api.service.config.SynonymDeletionConfigurator;
37
import eu.etaxonomy.cdm.api.service.config.TaxonDeletionConfigurator;
38
import eu.etaxonomy.cdm.api.service.dto.FindByIdentifierDTO;
39
import eu.etaxonomy.cdm.api.service.dto.IncludedTaxaDTO;
40
import eu.etaxonomy.cdm.api.service.exception.DataChangeNoRollbackException;
41
import eu.etaxonomy.cdm.api.service.exception.HomotypicalGroupChangeException;
42
import eu.etaxonomy.cdm.api.service.pager.Pager;
43
import eu.etaxonomy.cdm.api.service.search.LuceneMultiSearchException;
44
import eu.etaxonomy.cdm.api.service.search.SearchResult;
45
import eu.etaxonomy.cdm.api.service.util.TaxonRelationshipEdge;
46
import eu.etaxonomy.cdm.common.monitor.IProgressMonitor;
47
import eu.etaxonomy.cdm.model.common.Annotation;
48
import eu.etaxonomy.cdm.model.common.DefinedTerm;
49
import eu.etaxonomy.cdm.model.common.ISourceable;
50
import eu.etaxonomy.cdm.model.common.IdentifiableEntity;
51
import eu.etaxonomy.cdm.model.common.IdentifiableSource;
52
import eu.etaxonomy.cdm.model.common.LSID;
53
import eu.etaxonomy.cdm.model.common.Language;
54
import eu.etaxonomy.cdm.model.common.Marker;
55
import eu.etaxonomy.cdm.model.common.MarkerType;
56
import eu.etaxonomy.cdm.model.common.OrderedTermVocabulary;
57
import eu.etaxonomy.cdm.model.common.RelationshipBase;
58
import eu.etaxonomy.cdm.model.common.RelationshipBase.Direction;
59
import eu.etaxonomy.cdm.model.description.DescriptionElementBase;
60
import eu.etaxonomy.cdm.model.description.Feature;
61
import eu.etaxonomy.cdm.model.description.PresenceAbsenceTerm;
62
import eu.etaxonomy.cdm.model.location.NamedArea;
63
import eu.etaxonomy.cdm.model.media.Media;
64
import eu.etaxonomy.cdm.model.media.MediaRepresentation;
65
import eu.etaxonomy.cdm.model.media.Rights;
66
import eu.etaxonomy.cdm.model.name.HomotypicalGroup;
67
import eu.etaxonomy.cdm.model.name.Rank;
68
import eu.etaxonomy.cdm.model.name.TaxonNameBase;
69
import eu.etaxonomy.cdm.model.reference.Reference;
70
import eu.etaxonomy.cdm.model.taxon.Classification;
71
import eu.etaxonomy.cdm.model.taxon.Synonym;
72
import eu.etaxonomy.cdm.model.taxon.SynonymRelationship;
73
import eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType;
74
import eu.etaxonomy.cdm.model.taxon.Taxon;
75
import eu.etaxonomy.cdm.model.taxon.TaxonBase;
76
import eu.etaxonomy.cdm.model.taxon.TaxonNode;
77
import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;
78
import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;
79
import eu.etaxonomy.cdm.model.view.AuditEvent;
80
import eu.etaxonomy.cdm.model.view.AuditEventRecord;
81
import eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort;
82
import eu.etaxonomy.cdm.persistence.dto.MergeResult;
83
import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
84
import eu.etaxonomy.cdm.persistence.fetch.CdmFetch;
85
import eu.etaxonomy.cdm.persistence.query.Grouping;
86
import eu.etaxonomy.cdm.persistence.query.MatchMode;
87
import eu.etaxonomy.cdm.persistence.query.OrderHint;
88
import eu.etaxonomy.cdm.strategy.cache.common.IIdentifiableEntityCacheStrategy;
89
import eu.etaxonomy.cdm.strategy.match.IMatchStrategy;
90
import eu.etaxonomy.cdm.strategy.merge.IMergeStrategy;
91

    
92
/**
93
 * @author pplitzner
94
 * @date 27.09.2013
95
 *
96
 */
97
public class TransientTaxonService implements ITaxonService {
98

    
99
    private final ITaxonService defaultService;
100

    
101
    /**
102
     * @param defaultTaxonService
103
     */
104
    public TransientTaxonService(ITaxonService defaultTaxonService) {
105
        this.defaultService = defaultTaxonService;
106
    }
107

    
108
    /**
109
     * @param t
110
     * @param pageSize
111
     * @param pageNumber
112
     * @param sort
113
     * @param propertyPaths
114
     * @return
115
     * @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)
116
     */
117
    @Override
118
    public Pager<AuditEventRecord<TaxonBase>> pageAuditEvents(TaxonBase t, Integer pageSize, Integer pageNumber, AuditEventSort sort, List<String> propertyPaths) {
119
        return defaultService.pageAuditEvents(t, pageSize, pageNumber, sort, propertyPaths);
120
    }
121

    
122
    /**
123
     * @param annotatedObj
124
     * @param status
125
     * @param pageSize
126
     * @param pageNumber
127
     * @param orderHints
128
     * @param propertyPaths
129
     * @return
130
     * @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)
131
     */
132
    @Override
133
    public Pager<Annotation> getAnnotations(TaxonBase annotatedObj, MarkerType status, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
134
        return defaultService.getAnnotations(annotatedObj, status, pageSize, pageNumber, orderHints, propertyPaths);
135
    }
136

    
137
    /**
138
     *
139
     * @see eu.etaxonomy.cdm.api.service.IService#clear()
140
     */
141
    @Override
142
    public void clear() {
143
        defaultService.clear();
144
    }
145

    
146
    /**
147
     * @param t
148
     * @param lockMode
149
     * @see eu.etaxonomy.cdm.api.service.IService#lock(eu.etaxonomy.cdm.model.common.ICdmBase, org.hibernate.LockMode)
150
     */
151
    @Override
152
    public void lock(TaxonBase t, LockOptions lockOptions) {
153
        defaultService.lock(t, lockOptions);
154
    }
155

    
156
    /**
157
     * @param t
158
     * @param lockMode
159
     * @param propertyPaths
160
     * @see eu.etaxonomy.cdm.api.service.IService#refresh(eu.etaxonomy.cdm.model.common.ICdmBase, org.hibernate.LockMode, java.util.List)
161
     */
162
    @Override
163
    public void refresh(TaxonBase t, LockOptions lockOptions, List<String> propertyPaths) {
164
        defaultService.refresh(t, lockOptions, propertyPaths);
165
    }
166

    
167
    /**
168
     *
169
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#updateTitleCache()
170
     */
171
    @Override
172
    public void updateTitleCache() {
173
        defaultService.updateTitleCache();
174
    }
175

    
176
    /**
177
     * @param t
178
     * @return
179
     * @see eu.etaxonomy.cdm.api.service.IVersionableService#getNextAuditEvent(eu.etaxonomy.cdm.model.common.VersionableEntity)
180
     */
181
    @Override
182
    public AuditEventRecord<TaxonBase> getNextAuditEvent(TaxonBase t) {
183
        return defaultService.getNextAuditEvent(t);
184
    }
185

    
186
    /**
187
     * @param annotatableEntity
188
     * @param technical
189
     * @param pageSize
190
     * @param pageNumber
191
     * @param orderHints
192
     * @param propertyPaths
193
     * @return
194
     * @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)
195
     */
196
    @Override
197
    public Pager<Marker> getMarkers(TaxonBase annotatableEntity, Boolean technical, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
198
        return defaultService.getMarkers(annotatableEntity, technical, pageSize, pageNumber, orderHints, propertyPaths);
199
    }
200

    
201
    /**
202
     * @param clazz
203
     * @param stepSize
204
     * @param cacheStrategy
205
     * @param monitor
206
     * @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)
207
     */
208
    @Override
209
    public void updateTitleCache(Class<? extends TaxonBase> clazz, Integer stepSize, IIdentifiableEntityCacheStrategy<TaxonBase> cacheStrategy, IProgressMonitor monitor) {
210
        defaultService.updateTitleCache(clazz, stepSize, cacheStrategy, monitor);
211
    }
212

    
213
    /**
214
     * @param t
215
     * @return
216
     * @see eu.etaxonomy.cdm.api.service.IVersionableService#getPreviousAuditEvent(eu.etaxonomy.cdm.model.common.VersionableEntity)
217
     */
218
    @Override
219
    public AuditEventRecord<TaxonBase> getPreviousAuditEvent(TaxonBase t) {
220
        return defaultService.getPreviousAuditEvent(t);
221
    }
222

    
223
    /**
224
     * @param clazz
225
     * @return
226
     * @see eu.etaxonomy.cdm.api.service.IService#count(java.lang.Class)
227
     */
228
    @Override
229
    public int count(Class<? extends TaxonBase> clazz) {
230
        return defaultService.count(clazz);
231
    }
232

    
233
    /**
234
     * @param clazz
235
     * @param from
236
     * @param to
237
     * @param criteria
238
     * @param pageSize
239
     * @param pageValue
240
     * @param sort
241
     * @param propertyPaths
242
     * @return
243
     * @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)
244
     */
245
    @Override
246
    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) {
247
        return defaultService.pageAuditEvents(clazz, from, to, criteria, pageSize, pageValue, sort, propertyPaths);
248
    }
249

    
250
    /**
251
     * @param lsid
252
     * @return
253
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#find(eu.etaxonomy.cdm.model.common.LSID)
254
     */
255
    @Override
256
    public TaxonBase find(LSID lsid) {
257
        return defaultService.find(lsid);
258
    }
259

    
260
    /**
261
     * @param persistentObject
262
     * @return
263
     * @see eu.etaxonomy.cdm.api.service.IService#delete(eu.etaxonomy.cdm.model.common.ICdmBase)
264
     */
265
    @Override
266
    public DeleteResult delete(TaxonBase persistentObject) {
267
        return defaultService.delete(persistentObject);
268
    }
269

    
270
    /**
271
     * @param clazz
272
     * @param technical
273
     * @param pageSize
274
     * @param pageNumber
275
     * @param propertyPaths
276
     * @return
277
     * @see eu.etaxonomy.cdm.api.service.IAnnotatableService#groupMarkers(java.lang.Class, java.lang.Boolean, java.lang.Integer, java.lang.Integer, java.util.List)
278
     */
279
    @Override
280
    public List<Object[]> groupMarkers(Class<? extends TaxonBase> clazz, Boolean technical, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
281
        return defaultService.groupMarkers(clazz, technical, pageSize, pageNumber, propertyPaths);
282
    }
283

    
284
    /**
285
     * @param uuid
286
     * @return
287
     * @see eu.etaxonomy.cdm.api.service.IService#exists(java.util.UUID)
288
     */
289
    @Override
290
    public boolean exists(UUID uuid) {
291
        return defaultService.exists(uuid);
292
    }
293

    
294

    
295
    /**
296
     * @param x
297
     * @param y
298
     * @return
299
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#replace(eu.etaxonomy.cdm.model.common.IdentifiableEntity, eu.etaxonomy.cdm.model.common.IdentifiableEntity)
300
     */
301
    @Override
302
    public TaxonBase replace(TaxonBase x, TaxonBase y) {
303
        return defaultService.replace(x, y);
304
    }
305

    
306
    /**
307
     * @param uuidSet
308
     * @return
309
     * @see eu.etaxonomy.cdm.api.service.IService#find(java.util.Set)
310
     */
311
    @Override
312
    public List<TaxonBase> find(Set<UUID> uuidSet) {
313
        return defaultService.find(uuidSet);
314
    }
315

    
316
    /**
317
     * @param t
318
     * @param pageSize
319
     * @param pageNumber
320
     * @param propertyPaths
321
     * @return
322
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getSources(eu.etaxonomy.cdm.model.common.IdentifiableEntity, java.lang.Integer, java.lang.Integer, java.util.List)
323
     */
324
    @Override
325
    public Pager<IdentifiableSource> getSources(TaxonBase t, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
326
        return defaultService.getSources(t, pageSize, pageNumber, propertyPaths);
327
    }
328

    
329
    /**
330
     * @param sec
331
     * @param cdmFetch
332
     * @param onlyWithChildren
333
     * @return
334
     * @deprecated
335
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#getRootTaxa(eu.etaxonomy.cdm.model.reference.Reference, eu.etaxonomy.cdm.persistence.fetch.CdmFetch, boolean)
336
     */
337
    @Deprecated
338
    @Override
339
    public List<Taxon> getRootTaxa(Reference sec, CdmFetch cdmFetch, boolean onlyWithChildren) {
340
        return defaultService.getRootTaxa(sec, cdmFetch, onlyWithChildren);
341
    }
342

    
343
    /**
344
     * @param uuid
345
     * @return
346
     * @see eu.etaxonomy.cdm.api.service.IService#find(java.util.UUID)
347
     */
348
    @Override
349
    public TaxonBase find(UUID uuid) {
350
        return defaultService.find(uuid);
351
    }
352

    
353
    /**
354
     * @param rank
355
     * @param sec
356
     * @param onlyWithChildren
357
     * @param withMisapplications
358
     * @param propertyPaths
359
     * @return
360
     * @deprecated
361
     * @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)
362
     */
363
    @Deprecated
364
    @Override
365
    public List<Taxon> getRootTaxa(Rank rank, Reference sec, boolean onlyWithChildren, boolean withMisapplications, List<String> propertyPaths) {
366
        return defaultService.getRootTaxa(rank, sec, onlyWithChildren, withMisapplications, propertyPaths);
367
    }
368

    
369
    /**
370
     * @param id
371
     * @return
372
     * @see eu.etaxonomy.cdm.api.service.IService#find(int)
373
     */
374
    @Override
375
    public TaxonBase find(int id) {
376
        return defaultService.find(id);
377
    }
378

    
379
    /**
380
     * @param t
381
     * @param pageSize
382
     * @param pageNumber
383
     * @param propertyPaths
384
     * @return
385
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getRights(eu.etaxonomy.cdm.model.common.IdentifiableEntity, java.lang.Integer, java.lang.Integer, java.util.List)
386
     */
387
    @Override
388
    public Pager<Rights> getRights(TaxonBase t, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
389
        return defaultService.getRights(t, pageSize, pageNumber, propertyPaths);
390
    }
391

    
392
    /**
393
     * @param clazz
394
     * @param technical
395
     * @return
396
     * @see eu.etaxonomy.cdm.api.service.IAnnotatableService#countMarkers(java.lang.Class, java.lang.Boolean)
397
     */
398
    @Override
399
    public int countMarkers(Class<? extends TaxonBase> clazz, Boolean technical) {
400
        return defaultService.countMarkers(clazz, technical);
401
    }
402

    
403
    /**
404
     * @param idSet
405
     * @return
406
     * @see eu.etaxonomy.cdm.api.service.IService#findById(java.util.Set)
407
     */
408
    @Override
409
    public List<TaxonBase> findById(Set<Integer> idSet) {
410
        return defaultService.findById(idSet);
411
    }
412

    
413
    /**
414
     * @param clazz
415
     * @param idInSource
416
     * @param idNamespace
417
     * @return
418
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getSourcedObjectByIdInSource(java.lang.Class, java.lang.String, java.lang.String)
419
     */
420
    @Override
421
    public ISourceable getSourcedObjectByIdInSource(Class clazz, String idInSource, String idNamespace) {
422
        return defaultService.getSourcedObjectByIdInSource(clazz, idInSource, idNamespace);
423
    }
424

    
425
    /**
426
     * @return
427
     * @see eu.etaxonomy.cdm.api.service.IService#getSession()
428
     */
429
    @Override
430
    public Session getSession() {
431
        return defaultService.getSession();
432
    }
433

    
434
    /**
435
     * @return
436
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getUuidAndTitleCache()
437
     */
438
    @Override
439
    public List<UuidAndTitleCache<TaxonBase>> getUuidAndTitleCache() {
440
        return defaultService.getUuidAndTitleCache();
441
    }
442

    
443
    /**
444
     * @param clazz
445
     * @param limit
446
     * @param start
447
     * @param groups
448
     * @param propertyPaths
449
     * @return
450
     * @see eu.etaxonomy.cdm.api.service.IService#group(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
451
     */
452
    @Override
453
    public List<Object[]> group(Class<? extends TaxonBase> clazz, Integer limit, Integer start, List<Grouping> groups, List<String> propertyPaths) {
454
        return defaultService.group(clazz, limit, start, groups, propertyPaths);
455
    }
456

    
457
    /**
458
     * @param limit
459
     * @param start
460
     * @return
461
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#getAllRelationships(int, int)
462
     */
463
    @Override
464
    public List<RelationshipBase> getAllRelationships(int limit, int start) {
465
        return defaultService.getAllRelationships(limit, start);
466
    }
467

    
468
    /**
469
     * @param clazz
470
     * @param queryString
471
     * @param matchmode
472
     * @param criteria
473
     * @param pageSize
474
     * @param pageNumber
475
     * @param orderHints
476
     * @param propertyPaths
477
     * @return
478
     * @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)
479
     */
480
    @Override
481
    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) {
482
        return defaultService.findByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
483
    }
484

    
485
    /**
486
     * @return
487
     * @deprecated
488
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#getTaxonRelationshipTypeVocabulary()
489
     */
490
    @Deprecated
491
    @Override
492
    public OrderedTermVocabulary<TaxonRelationshipType> getTaxonRelationshipTypeVocabulary() {
493
        return defaultService.getTaxonRelationshipTypeVocabulary();
494
    }
495

    
496
    /**
497
     * @param name
498
     * @param sec
499
     * @return
500
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#searchTaxaByName(java.lang.String, eu.etaxonomy.cdm.model.reference.Reference)
501
     */
502
    @Override
503
    public List<TaxonBase> searchTaxaByName(String name, Reference sec) {
504
        return defaultService.searchTaxaByName(name, sec);
505
    }
506

    
507

    
508
    /**
509
     * {@inheritDoc}
510
     */
511
    @Override
512
    public UpdateResult swapSynonymAndAcceptedTaxon(Synonym arg0, Taxon arg1) {
513
        return defaultService.swapSynonymAndAcceptedTaxon(arg0, arg1);
514

    
515
    }
516

    
517
    /**
518
     * @param type
519
     * @param limit
520
     * @param start
521
     * @param orderHints
522
     * @param propertyPaths
523
     * @return
524
     * @see eu.etaxonomy.cdm.api.service.IService#list(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
525
     */
526
    @Override
527
    public <S extends TaxonBase> List<S> list(Class<S> type, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
528
        return defaultService.list(type, limit, start, orderHints, propertyPaths);
529
    }
530

    
531
    /**
532
     * @param configurator
533
     * @return
534
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#findByTitle(eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator)
535
     */
536
    @Override
537
    public Pager<TaxonBase> findByTitle(IIdentifiableEntityServiceConfigurator<TaxonBase> configurator) {
538
        return defaultService.findByTitle(configurator);
539
    }
540

    
541
    /**
542
     * @param synonym
543
     * @param acceptedTaxon
544
     * @param deleteSynonym
545
     * @param copyCitationInfo
546
     * @param citation
547
     * @param microCitation
548
     * @return
549
     * @throws HomotypicalGroupChangeException
550
     * @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)
551
     */
552
    @Override
553
    public Taxon changeSynonymToAcceptedTaxon(Synonym synonym, Taxon acceptedTaxon, boolean deleteSynonym, boolean copyCitationInfo, Reference citation, String microCitation) throws HomotypicalGroupChangeException {
554
        return defaultService.changeSynonymToAcceptedTaxon(synonym, acceptedTaxon, deleteSynonym, copyCitationInfo, citation, microCitation);
555
    }
556

    
557
    /**
558
     * @param clazz
559
     * @param queryString
560
     * @param matchmode
561
     * @param criteria
562
     * @return
563
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#countByTitle(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.persistence.query.MatchMode, java.util.List)
564
     */
565
    @Override
566
    public Integer countByTitle(Class<? extends TaxonBase> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria) {
567
        return defaultService.countByTitle(clazz, queryString, matchmode, criteria);
568
    }
569

    
570
    /**
571
     * @param uuid
572
     * @return
573
     * @see eu.etaxonomy.cdm.api.service.IService#load(java.util.UUID)
574
     */
575
    @Override
576
    public TaxonBase load(UUID uuid) {
577
        return defaultService.load(uuid);
578
    }
579

    
580
    /**
581
     * @param uuid
582
     * @param propertyPaths
583
     * @return
584
     * @see eu.etaxonomy.cdm.api.service.IService#load(java.util.UUID, java.util.List)
585
     */
586
    @Override
587
    public TaxonBase load(UUID uuid, List<String> propertyPaths) {
588
        return defaultService.load(uuid, propertyPaths);
589
    }
590

    
591
    /**
592
     * @param configurator
593
     * @return
594
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#countByTitle(eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator)
595
     */
596
    @Override
597
    public Integer countByTitle(IIdentifiableEntityServiceConfigurator<TaxonBase> configurator) {
598
        return defaultService.countByTitle(configurator);
599
    }
600

    
601
    /**
602
     * @param transientObject
603
     * @return
604
     * @see eu.etaxonomy.cdm.api.service.IService#merge(eu.etaxonomy.cdm.model.common.ICdmBase)
605
     */
606
    @Override
607
    public TaxonBase merge(TaxonBase transientObject) {
608
        return defaultService.merge(transientObject);
609
    }
610

    
611
    /**
612
     * @param clazz
613
     * @param queryString
614
     * @param matchmode
615
     * @param criteria
616
     * @param pageSize
617
     * @param pageNumber
618
     * @param orderHints
619
     * @param propertyPaths
620
     * @return
621
     * @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)
622
     */
623
    @Override
624
    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) {
625
        return defaultService.listByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
626
    }
627

    
628
    /**
629
     * @param type
630
     * @param pageSize
631
     * @param pageNumber
632
     * @param orderHints
633
     * @param propertyPaths
634
     * @return
635
     * @see eu.etaxonomy.cdm.api.service.IService#page(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
636
     */
637
    @Override
638
    public  <S extends TaxonBase> Pager<S> page(Class<S> type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
639
        return defaultService.page(type, pageSize, pageNumber, orderHints, propertyPaths);
640
    }
641

    
642
    /**
643
     * @param persistentObject
644
     * @return
645
     * @see eu.etaxonomy.cdm.api.service.IService#refresh(eu.etaxonomy.cdm.model.common.ICdmBase)
646
     */
647
    @Override
648
    public UUID refresh(TaxonBase persistentObject) {
649
        return defaultService.refresh(persistentObject);
650
    }
651

    
652
    /**
653
     * @param synonym
654
     * @param toTaxon
655
     * @param taxonRelationshipType
656
     * @param reference
657
     * @param microReference
658
     * @return
659
     * @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)
660
     */
661
    @Override
662
    public Taxon changeSynonymToRelatedTaxon(Synonym synonym, Taxon toTaxon, TaxonRelationshipType taxonRelationshipType, Reference reference, String microReference) {
663
        return defaultService.changeSynonymToRelatedTaxon(synonym, toTaxon, taxonRelationshipType, reference, microReference);
664
    }
665

    
666
    /**
667
     * @param clazz
668
     * @param queryString
669
     * @param matchmode
670
     * @param criteria
671
     * @param pageSize
672
     * @param pageNumber
673
     * @param orderHints
674
     * @param propertyPaths
675
     * @return
676
     * @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)
677
     */
678
    @Override
679
    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) {
680
        return defaultService.listByReferenceTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
681
    }
682

    
683
    /**
684
     * @param tableName
685
     * @param limit
686
     * @param start
687
     * @return
688
     * @see eu.etaxonomy.cdm.api.service.IService#rows(java.lang.String, int, int)
689
     */
690
    @Override
691
    public List<TaxonBase> rows(String tableName, int limit, int start) {
692
        return defaultService.rows(tableName, limit, start);
693
    }
694

    
695
    /**
696
     * @param newInstances
697
     * @return
698
     * @see eu.etaxonomy.cdm.api.service.IService#save(java.util.Collection)
699
     */
700
    @Override
701
    public Map<UUID, TaxonBase> save(Collection<TaxonBase> newInstances) {
702
        return null;
703
    }
704

    
705
    /**
706
     * @param syn
707
     * @param taxon
708
     * @return
709
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#deleteSynonymRelationships(eu.etaxonomy.cdm.model.taxon.Synonym, eu.etaxonomy.cdm.model.taxon.Taxon)
710
     */
711
    @Override
712
    public long deleteSynonymRelationships(Synonym syn, Taxon taxon) {
713
        return defaultService.deleteSynonymRelationships(syn, taxon);
714
    }
715

    
716
    /**
717
     * @param newInstance
718
     * @return
719
     * @see eu.etaxonomy.cdm.api.service.IService#save(eu.etaxonomy.cdm.model.common.ICdmBase)
720
     */
721
    @Override
722
    public TaxonBase save(TaxonBase newInstance) {
723
        return null;
724
    }
725

    
726
    /**
727
     * @param transientObject
728
     * @return
729
     * @see eu.etaxonomy.cdm.api.service.IService#saveOrUpdate(eu.etaxonomy.cdm.model.common.ICdmBase)
730
     */
731
    @Override
732
    public UUID saveOrUpdate(TaxonBase transientObject) {
733
        return null;
734
    }
735

    
736
    /**
737
     * @param synonym
738
     * @param newHomotypicalGroup
739
     * @param targetTaxon
740
     * @param removeFromOtherTaxa
741
     * @param setBasionymRelationIfApplicable
742
     * @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)
743
     */
744
    @Override
745
    public void changeHomotypicalGroupOfSynonym(Synonym synonym, HomotypicalGroup newHomotypicalGroup, Taxon targetTaxon, boolean removeFromOtherTaxa, boolean setBasionymRelationIfApplicable) {
746
        defaultService.changeHomotypicalGroupOfSynonym(synonym, newHomotypicalGroup, targetTaxon, removeFromOtherTaxa, setBasionymRelationIfApplicable);
747
    }
748

    
749
    /**
750
     * @param transientObjects
751
     * @return
752
     * @see eu.etaxonomy.cdm.api.service.IService#saveOrUpdate(java.util.Collection)
753
     */
754
    @Override
755
    public Map<UUID, TaxonBase> saveOrUpdate(Collection<TaxonBase> transientObjects) {
756
        return null;
757
    }
758

    
759
    /**
760
     * @param transientObject
761
     * @return
762
     * @see eu.etaxonomy.cdm.api.service.IService#update(eu.etaxonomy.cdm.model.common.ICdmBase)
763
     */
764
    @Override
765
    public UUID update(TaxonBase transientObject) {
766
        return defaultService.update(transientObject);
767
    }
768

    
769
    /**
770
     * @param example
771
     * @param includeProperties
772
     * @param limit
773
     * @param start
774
     * @param orderHints
775
     * @param propertyPaths
776
     * @return
777
     * @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)
778
     */
779
    @Override
780
    public List<TaxonBase> list(TaxonBase example, Set<String> includeProperties, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
781
        return defaultService.list(example, includeProperties, limit, start, orderHints, propertyPaths);
782
    }
783

    
784
    /**
785
     * @param oldSynonymRelation
786
     * @param newTaxon
787
     * @param moveHomotypicGroup
788
     * @param newSynonymRelationshipType
789
     * @param newReference
790
     * @param newReferenceDetail
791
     * @param keepReference
792
     * @return
793
     * @throws HomotypicalGroupChangeException
794
     * @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)
795
     */
796
    @Override
797
    public SynonymRelationship moveSynonymToAnotherTaxon(SynonymRelationship oldSynonymRelation, Taxon newTaxon, boolean moveHomotypicGroup, SynonymRelationshipType newSynonymRelationshipType, Reference newReference, String newReferenceDetail, boolean keepReference) throws HomotypicalGroupChangeException {
798
        return defaultService.moveSynonymToAnotherTaxon(oldSynonymRelation, newTaxon, moveHomotypicGroup, newSynonymRelationshipType, newReference, newReferenceDetail, keepReference);
799
    }
800

    
801
    /**
802
     * @param clazz
803
     * @param matchStrategy
804
     * @param mergeStrategy
805
     * @return
806
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#deduplicate(java.lang.Class, eu.etaxonomy.cdm.strategy.match.IMatchStrategy, eu.etaxonomy.cdm.strategy.merge.IMergeStrategy)
807
     */
808
    @Override
809
    public int deduplicate(Class<? extends TaxonBase> clazz, IMatchStrategy matchStrategy, IMergeStrategy mergeStrategy) {
810
        return defaultService.deduplicate(clazz, matchStrategy, mergeStrategy);
811
    }
812

    
813
    /**
814
     * @param clazz
815
     * @param queryString
816
     * @param pageSize
817
     * @param pageNumber
818
     * @param orderHints
819
     * @param matchMode
820
     * @return
821
     * @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)
822
     */
823
    @Override
824
    public Pager<TaxonBase> findTitleCache(Class<? extends TaxonBase> clazz, String queryString, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, MatchMode matchMode) {
825
        return defaultService.findTitleCache(clazz, queryString, pageSize, pageNumber, orderHints, matchMode);
826
    }
827

    
828
    /**
829
     * @param taxon
830
     * @param type
831
     * @param pageSize
832
     * @param pageNumber
833
     * @param orderHints
834
     * @param propertyPaths
835
     * @return
836
     * @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)
837
     */
838
    @Override
839
    public List<TaxonRelationship> listToTaxonRelationships(Taxon taxon, TaxonRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
840
        return defaultService.listToTaxonRelationships(taxon, type, pageSize, pageNumber, orderHints, propertyPaths);
841
    }
842

    
843
    /**
844
     * @param taxon
845
     * @param type
846
     * @param pageSize
847
     * @param pageNumber
848
     * @param orderHints
849
     * @param propertyPaths
850
     * @return
851
     * @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)
852
     */
853
    @Override
854
    public Pager<TaxonRelationship> pageToTaxonRelationships(Taxon taxon, TaxonRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
855
        return defaultService.pageToTaxonRelationships(taxon, type, pageSize, pageNumber, orderHints, propertyPaths);
856
    }
857

    
858
    /**
859
     * @param taxon
860
     * @param type
861
     * @param pageSize
862
     * @param pageNumber
863
     * @param orderHints
864
     * @param propertyPaths
865
     * @return
866
     * @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)
867
     */
868
    @Override
869
    public List<TaxonRelationship> listFromTaxonRelationships(Taxon taxon, TaxonRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
870
        return defaultService.listFromTaxonRelationships(taxon, type, pageSize, pageNumber, orderHints, propertyPaths);
871
    }
872

    
873
    /**
874
     * @param taxon
875
     * @param type
876
     * @param pageSize
877
     * @param pageNumber
878
     * @param orderHints
879
     * @param propertyPaths
880
     * @return
881
     * @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)
882
     */
883
    @Override
884
    public Pager<TaxonRelationship> pageFromTaxonRelationships(Taxon taxon, TaxonRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
885
        return defaultService.pageFromTaxonRelationships(taxon, type, pageSize, pageNumber, orderHints, propertyPaths);
886
    }
887

    
888
    /**
889
     * @param taxon
890
     * @param includeRelationships
891
     * @param maxDepth
892
     * @param limit
893
     * @param start
894
     * @param propertyPaths
895
     * @return
896
     * @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)
897
     */
898
    @Override
899
    public Set<Taxon> listRelatedTaxa(Taxon taxon, Set<TaxonRelationshipEdge> includeRelationships, Integer maxDepth, Integer limit, Integer start, List<String> propertyPaths) {
900
        return defaultService.listRelatedTaxa(taxon, includeRelationships, maxDepth, limit, start, propertyPaths);
901
    }
902

    
903
    /**
904
     * @param taxonBase
905
     * @param limit
906
     * @param start
907
     * @param propertyPaths
908
     * @return
909
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#listClassifications(eu.etaxonomy.cdm.model.taxon.TaxonBase, java.lang.Integer, java.lang.Integer, java.util.List)
910
     */
911
    @Override
912
    public List<Classification> listClassifications(TaxonBase taxonBase, Integer limit, Integer start, List<String> propertyPaths) {
913
        return defaultService.listClassifications(taxonBase, limit, start, propertyPaths);
914
    }
915

    
916
    /**
917
     * @param synonym
918
     * @param type
919
     * @param pageSize
920
     * @param pageNumber
921
     * @param orderHints
922
     * @param propertyPaths
923
     * @return
924
     * @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)
925
     */
926
    @Override
927
    public Pager<SynonymRelationship> getSynonyms(Synonym synonym, SynonymRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
928
        return defaultService.getSynonyms(synonym, type, pageSize, pageNumber, orderHints, propertyPaths);
929
    }
930

    
931
    /**
932
     * @param taxon
933
     * @param type
934
     * @param pageSize
935
     * @param pageNumber
936
     * @param orderHints
937
     * @param propertyPaths
938
     * @return
939
     * @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)
940
     */
941
    @Override
942
    public Pager<SynonymRelationship> getSynonyms(Taxon taxon, SynonymRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
943
        return defaultService.getSynonyms(taxon, type, pageSize, pageNumber, orderHints, propertyPaths);
944
    }
945

    
946
    /**
947
     * @param taxon
948
     * @param propertyPaths
949
     * @return
950
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#getHomotypicSynonymsByHomotypicGroup(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.List)
951
     */
952
    @Override
953
    public List<Synonym> getHomotypicSynonymsByHomotypicGroup(Taxon taxon, List<String> propertyPaths) {
954
        return defaultService.getHomotypicSynonymsByHomotypicGroup(taxon, propertyPaths);
955
    }
956

    
957
    /**
958
     * @param taxon
959
     * @param propertyPaths
960
     * @return
961
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#getHeterotypicSynonymyGroups(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.List)
962
     */
963
    @Override
964
    public List<List<Synonym>> getHeterotypicSynonymyGroups(Taxon taxon, List<String> propertyPaths) {
965
        return defaultService.getHeterotypicSynonymyGroups(taxon, propertyPaths);
966
    }
967

    
968
    /**
969
     * @param clazz
970
     * @param queryString
971
     * @param pageSize
972
     * @param pageNumber
973
     * @param orderHints
974
     * @param propertyPaths
975
     * @return
976
     * @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)
977
     */
978
    @Override
979
    public Pager<TaxonBase> search(Class<? extends TaxonBase> clazz, String queryString, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
980
        return defaultService.search(clazz, queryString, pageSize, pageNumber, orderHints, propertyPaths);
981
    }
982

    
983
    /**
984
     * @param clazz
985
     * @param uninomial
986
     * @param infragenericEpithet
987
     * @param specificEpithet
988
     * @param infraspecificEpithet
989
     * @param rank
990
     * @param pageSize
991
     * @param pageNumber
992
     * @return
993
     * @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)
994
     */
995
    @Override
996
    public Pager<TaxonBase> findTaxaByName(Class<? extends TaxonBase> clazz, String uninomial, String infragenericEpithet, String specificEpithet, String infraspecificEpithet, Rank rank, Integer pageSize, Integer pageNumber) {
997
        return defaultService.findTaxaByName(clazz, uninomial, infragenericEpithet, specificEpithet, infraspecificEpithet, rank, pageSize, pageNumber);
998
    }
999

    
1000
    /**
1001
     * @param clazz
1002
     * @param uninomial
1003
     * @param infragenericEpithet
1004
     * @param specificEpithet
1005
     * @param infraspecificEpithet
1006
     * @param rank
1007
     * @param pageSize
1008
     * @param pageNumber
1009
     * @return
1010
     * @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)
1011
     */
1012
    @Override
1013
    public List<TaxonBase> listTaxaByName(Class<? extends TaxonBase> clazz, String uninomial, String infragenericEpithet, String specificEpithet, String infraspecificEpithet, Rank rank, Integer pageSize, Integer pageNumber) {
1014
        return defaultService.listTaxaByName(clazz, uninomial, infragenericEpithet, specificEpithet, infraspecificEpithet, rank, pageSize, pageNumber);
1015
    }
1016

    
1017
    /**
1018
     * @param configurator
1019
     * @return
1020
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findTaxaAndNames(eu.etaxonomy.cdm.api.service.config.IFindTaxaAndNamesConfigurator)
1021
     */
1022
    @Override
1023
    public Pager<IdentifiableEntity> findTaxaAndNames(IFindTaxaAndNamesConfigurator configurator) {
1024
        return defaultService.findTaxaAndNames(configurator);
1025
    }
1026

    
1027
    /**
1028
     * @param queryString
1029
     * @param classification
1030
     * @param languages
1031
     * @param highlightFragments
1032
     * @param pageSize
1033
     * @param pageNumber
1034
     * @param orderHints
1035
     * @param propertyPaths
1036
     * @return
1037
     * @throws CorruptIndexException
1038
     * @throws IOException
1039
     * @throws ParseException
1040
     * @throws LuceneMultiSearchException
1041
     * @deprecated
1042
     * @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)
1043
     */
1044
    @Deprecated
1045
    @Override
1046
    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 {
1047
        return defaultService.findByEverythingFullText(queryString, classification, languages, highlightFragments, pageSize, pageNumber, orderHints, propertyPaths);
1048
    }
1049

    
1050
    /**
1051
     * @param clazz
1052
     * @param queryString
1053
     * @param classification
1054
     * @param languages
1055
     * @param highlightFragments
1056
     * @param pageSize
1057
     * @param pageNumber
1058
     * @param orderHints
1059
     * @param propertyPaths
1060
     * @return
1061
     * @throws CorruptIndexException
1062
     * @throws IOException
1063
     * @throws ParseException
1064
     * @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)
1065
     */
1066
    @Override
1067
    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 {
1068
        return defaultService.findByFullText(clazz, queryString, classification, languages, highlightFragments, pageSize, pageNumber, orderHints, propertyPaths);
1069
    }
1070

    
1071

    
1072
    /* (non-Javadoc)
1073
     * @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)
1074
     */
1075
    @Override
1076
    public Pager<SearchResult<TaxonBase>> findByDistribution(List<NamedArea> areaFilter,
1077
            List<PresenceAbsenceTerm> statusFilter, Classification classification, Integer pageSize,
1078
            Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) throws IOException,
1079
            ParseException {
1080
        return defaultService.findByDistribution(areaFilter, statusFilter, classification, pageSize, pageNumber, orderHints, propertyPaths);
1081
    }
1082

    
1083

    
1084
    /* (non-Javadoc)
1085
     * @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)
1086
     */
1087
    @Override
1088
    public Pager<SearchResult<TaxonBase>> findTaxaAndNamesByFullText(EnumSet<TaxaAndNamesSearchMode> searchModes,
1089
            String queryString, Classification classification, Set<NamedArea> namedAreas,
1090
            Set<PresenceAbsenceTerm> distributionStatus, List<Language> languages, boolean highlightFragments,
1091
            Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths)
1092
                    throws CorruptIndexException, IOException, ParseException, LuceneMultiSearchException {
1093
        return defaultService.findTaxaAndNamesByFullText(searchModes, queryString, classification, namedAreas, distributionStatus, languages, highlightFragments, pageSize, pageNumber, orderHints, propertyPaths);
1094
    }
1095

    
1096
    /**
1097
     * @param clazz
1098
     * @param queryString
1099
     * @param classification
1100
     * @param features
1101
     * @param languages
1102
     * @param highlightFragments
1103
     * @param pageSize
1104
     * @param pageNumber
1105
     * @param orderHints
1106
     * @param propertyPaths
1107
     * @return
1108
     * @throws CorruptIndexException
1109
     * @throws IOException
1110
     * @throws ParseException
1111
     * @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)
1112
     */
1113
    @Override
1114
    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 {
1115
        return defaultService.findByDescriptionElementFullText(clazz, queryString, classification, features, languages, highlightFragments, pageSize, pageNumber, orderHints, propertyPaths);
1116
    }
1117

    
1118
    /**
1119
     * @param taxon
1120
     * @param size
1121
     * @param height
1122
     * @param widthOrDuration
1123
     * @param mimeTypes
1124
     * @return
1125
     * @deprecated
1126
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#getAllMedia(eu.etaxonomy.cdm.model.taxon.Taxon, int, int, int, java.lang.String[])
1127
     */
1128
    @Deprecated
1129
    @Override
1130
    public List<MediaRepresentation> getAllMedia(Taxon taxon, int size, int height, int widthOrDuration, String[] mimeTypes) {
1131
        return defaultService.getAllMedia(taxon, size, height, widthOrDuration, mimeTypes);
1132
    }
1133

    
1134
    /**
1135
     * @param taxon
1136
     * @param includeRelationships
1137
     * @param limitToGalleries
1138
     * @param propertyPath
1139
     * @return
1140
     * @deprecated
1141
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#listTaxonDescriptionMedia(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.Set, boolean, java.util.List)
1142
     */
1143
    @Deprecated
1144
    @Override
1145
    public List<Media> listTaxonDescriptionMedia(Taxon taxon, Set<TaxonRelationshipEdge> includeRelationships, boolean limitToGalleries, List<String> propertyPath) {
1146
        return defaultService.listTaxonDescriptionMedia(taxon, includeRelationships, limitToGalleries, propertyPath);
1147
    }
1148

    
1149
    /**
1150
     * @param taxon
1151
     * @param includeRelationships
1152
     * @param limitToGalleries
1153
     * @param includeTaxonDescriptions
1154
     * @param includeOccurrences
1155
     * @param includeTaxonNameDescriptions
1156
     * @param propertyPath
1157
     * @return
1158
     * @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)
1159
     */
1160
    @Override
1161
    public List<Media> listMedia(Taxon taxon, Set<TaxonRelationshipEdge> includeRelationships, Boolean limitToGalleries, Boolean includeTaxonDescriptions, Boolean includeOccurrences, Boolean includeTaxonNameDescriptions, List<String> propertyPath) {
1162
        return defaultService.listMedia(taxon, includeRelationships, limitToGalleries, includeTaxonDescriptions, includeOccurrences, includeTaxonNameDescriptions, propertyPath);
1163
    }
1164

    
1165
    /**
1166
     * @param listOfIDs
1167
     * @return
1168
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findTaxaByID(java.util.Set)
1169
     */
1170
    @Override
1171
    public List<TaxonBase> findTaxaByID(Set<Integer> listOfIDs) {
1172
        return defaultService.findTaxaByID(listOfIDs);
1173
    }
1174

    
1175
    /**
1176
     * @param uuid
1177
     * @param propertyPaths
1178
     * @return
1179
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findTaxonByUuid(java.util.UUID, java.util.List)
1180
     */
1181
    @Override
1182
    public TaxonBase findTaxonByUuid(UUID uuid, List<String> propertyPaths) {
1183
        return defaultService.findTaxonByUuid(uuid, propertyPaths);
1184
    }
1185

    
1186
    /**
1187
     * @return
1188
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#countAllRelationships()
1189
     */
1190
    @Override
1191
    public int countAllRelationships() {
1192
        return defaultService.countAllRelationships();
1193
    }
1194

    
1195
    /**
1196
     * @param propertyPath
1197
     * @return
1198
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findIdenticalTaxonNames(java.util.List)
1199
     */
1200
    @Override
1201
    public List<TaxonNameBase> findIdenticalTaxonNames(List<String> propertyPath) {
1202
        return defaultService.findIdenticalTaxonNames(propertyPath);
1203
    }
1204

    
1205
    /**
1206
     * @param propertyPath
1207
     * @return
1208
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findIdenticalTaxonNameIds(java.util.List)
1209
     */
1210
    @Override
1211
    public List<TaxonNameBase> findIdenticalTaxonNameIds(List<String> propertyPath) {
1212
        return defaultService.findIdenticalTaxonNameIds(propertyPath);
1213
    }
1214

    
1215
    /**
1216
     * @param name
1217
     * @return
1218
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#getPhylumName(eu.etaxonomy.cdm.model.name.TaxonNameBase)
1219
     */
1220
    @Override
1221
    public String getPhylumName(TaxonNameBase name) {
1222
        return defaultService.getPhylumName(name);
1223
    }
1224

    
1225
    /**
1226
     * @param syn
1227
     * @return
1228
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#deleteSynonymRelationships(eu.etaxonomy.cdm.model.taxon.Synonym)
1229
     */
1230
    @Override
1231
    public long deleteSynonymRelationships(Synonym syn) {
1232
        return defaultService.deleteSynonymRelationships(syn);
1233
    }
1234

    
1235
    /**
1236
     * @param taxonBase
1237
     * @param type
1238
     * @param pageSize
1239
     * @param pageNumber
1240
     * @param orderHints
1241
     * @param propertyPaths
1242
     * @param direction
1243
     * @return
1244
     * @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)
1245
     */
1246
    @Override
1247
    public List<SynonymRelationship> listSynonymRelationships(TaxonBase taxonBase, SynonymRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths, Direction direction) {
1248
        return defaultService.listSynonymRelationships(taxonBase, type, pageSize, pageNumber, orderHints, propertyPaths, direction);
1249
    }
1250

    
1251
    /**
1252
     * @param taxonName
1253
     * @return
1254
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findBestMatchingTaxon(java.lang.String)
1255
     */
1256
    @Override
1257
    public Taxon findBestMatchingTaxon(String taxonName) {
1258
        return defaultService.findBestMatchingTaxon(taxonName);
1259
    }
1260

    
1261
    /**
1262
     * @param config
1263
     * @return
1264
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findBestMatchingTaxon(eu.etaxonomy.cdm.api.service.config.MatchingTaxonConfigurator)
1265
     */
1266
    @Override
1267
    public Taxon findBestMatchingTaxon(MatchingTaxonConfigurator config) {
1268
        return defaultService.findBestMatchingTaxon(config);
1269
    }
1270

    
1271
    /**
1272
     * @param taxonName
1273
     * @return
1274
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findBestMatchingSynonym(java.lang.String)
1275
     */
1276
    @Override
1277
    public Synonym findBestMatchingSynonym(String taxonName) {
1278
        return defaultService.findBestMatchingSynonym(taxonName);
1279
    }
1280

    
1281
    /**
1282
     * @return
1283
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#getUuidAndTitleCacheTaxon()
1284
     */
1285
    @Override
1286
    public List<UuidAndTitleCache<TaxonBase>> getUuidAndTitleCacheTaxon() {
1287
        return defaultService.getUuidAndTitleCacheTaxon();
1288
    }
1289

    
1290
    /**
1291
     * @return
1292
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#getUuidAndTitleCacheSynonym()
1293
     */
1294
    @Override
1295
    public List<UuidAndTitleCache<TaxonBase>> getUuidAndTitleCacheSynonym() {
1296
        return defaultService.getUuidAndTitleCacheSynonym();
1297
    }
1298

    
1299
    /**
1300
     * @param configurator
1301
     * @return
1302
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findTaxaAndNamesForEditor(eu.etaxonomy.cdm.api.service.config.IFindTaxaAndNamesConfigurator)
1303
     */
1304
    @Override
1305
    public List<UuidAndTitleCache<IdentifiableEntity>> findTaxaAndNamesForEditor(IFindTaxaAndNamesConfigurator configurator) {
1306
        return defaultService.findTaxaAndNamesForEditor(configurator);
1307
    }
1308

    
1309
    /**
1310
     * @param taxon
1311
     * @param tree
1312
     * @param type
1313
     * @param doWithMisappliedNames
1314
     * @return
1315
     * @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)
1316
     */
1317
    @Override
1318
    public List<Synonym> createInferredSynonyms(Taxon taxon, Classification tree, SynonymRelationshipType type, boolean doWithMisappliedNames) {
1319
        return defaultService.createInferredSynonyms(taxon, tree, type, doWithMisappliedNames);
1320
    }
1321

    
1322
    /**
1323
     * @param taxon
1324
     * @param tree
1325
     * @param doWithMisappliedNames
1326
     * @return
1327
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#createAllInferredSynonyms(eu.etaxonomy.cdm.model.taxon.Taxon, eu.etaxonomy.cdm.model.taxon.Classification, boolean)
1328
     */
1329
    @Override
1330
    public List<Synonym> createAllInferredSynonyms(Taxon taxon, Classification tree, boolean doWithMisappliedNames) {
1331
        return defaultService.createAllInferredSynonyms(taxon, tree, doWithMisappliedNames);
1332
    }
1333

    
1334
    @Override
1335
    public DeleteResult deleteSynonym(Synonym arg0, SynonymDeletionConfigurator arg1) {
1336
        return defaultService.deleteSynonym(arg0, arg1);
1337
    }
1338

    
1339
    @Override
1340
    public DeleteResult deleteSynonym(Synonym arg0, Taxon arg1, SynonymDeletionConfigurator arg2) {
1341
        return defaultService.deleteSynonym(arg0, arg1, arg2);
1342
    }
1343

    
1344
    @Override
1345
    public List<List<Synonym>> getSynonymsByHomotypicGroup(Taxon taxon, List<String> propertyPaths) {
1346
        return defaultService.getSynonymsByHomotypicGroup(taxon, propertyPaths);
1347
    }
1348

    
1349
    @Override
1350
    public Synonym changeRelatedTaxonToSynonym(Taxon fromTaxon, Taxon toTaxon,
1351
            TaxonRelationshipType oldRelationshipType,
1352
            SynonymRelationshipType synonymRelationshipType)
1353
                    throws DataChangeNoRollbackException {
1354

    
1355
        return defaultService.changeRelatedTaxonToSynonym(fromTaxon, toTaxon, oldRelationshipType, synonymRelationshipType);
1356
    }
1357

    
1358
    /* (non-Javadoc)
1359
     * @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)
1360
     */
1361
    @Override
1362
    public Pager<Taxon> pageAcceptedTaxaFor(UUID synonymUuid, UUID classificationUuid, Integer pageSize,
1363
            Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
1364
        return defaultService.pageAcceptedTaxaFor(synonymUuid, classificationUuid, pageSize, pageNumber, orderHints, propertyPaths);
1365
    }
1366

    
1367
    /* (non-Javadoc)
1368
     * @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)
1369
     */
1370
    @Override
1371
    public List<Taxon> listAcceptedTaxaFor(UUID synonymUuid, UUID classificationUuid, Integer pageSize,
1372
            Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
1373
        return defaultService.listAcceptedTaxaFor(synonymUuid, classificationUuid, pageSize, pageNumber, orderHints, propertyPaths);
1374
    }
1375

    
1376
    @Override
1377
    public DeleteResult isDeletable(TaxonBase object,
1378
            DeleteConfiguratorBase config) {
1379
        // TODO Auto-generated method stub
1380
        return null;
1381
    }
1382

    
1383
    @Override
1384
    public IncludedTaxaDTO listIncludedTaxa(UUID taxonUuid,
1385
            IncludedTaxonConfiguration configuration) {
1386
        // TODO Auto-generated method stub
1387
        return null;
1388
    }
1389

    
1390
    @Override
1391
    public TaxonBase findWithoutFlush(UUID uuid) {
1392
        return defaultService.findWithoutFlush(uuid);
1393
    }
1394

    
1395
    /* (non-Javadoc)
1396
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findTaxaByName(eu.etaxonomy.cdm.api.service.config.MatchingTaxonConfigurator)
1397
     */
1398
    @Override
1399
    public List<TaxonBase> findTaxaByName(MatchingTaxonConfigurator config) {
1400
        return defaultService.findTaxaByName(config);
1401
    }
1402

    
1403
    @Override
1404
    public <S extends TaxonBase>  Pager<FindByIdentifierDTO<S>> findByIdentifier(Class<S> clazz, String identifier, DefinedTerm identifierType, MatchMode matchmode, boolean includeEntity, Integer pageSize, Integer pageNumber, List<String> propertyPaths){
1405
        return defaultService.findByIdentifier(clazz, identifier, identifierType, matchmode, includeEntity, pageSize, pageNumber, propertyPaths);
1406
    }
1407

    
1408
    /* (non-Javadoc)
1409
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findByIdentifier(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.model.common.DefinedTerm, eu.etaxonomy.cdm.model.taxon.TaxonNode, eu.etaxonomy.cdm.persistence.query.MatchMode, boolean, java.lang.Integer, java.lang.Integer, java.util.List)
1410
     */
1411
    @Override
1412
    public <S extends TaxonBase> Pager<FindByIdentifierDTO<S>> findByIdentifier(Class<S> clazz, String identifier,
1413
            DefinedTerm identifierType, TaxonNode subtreeFilter, MatchMode matchmode, boolean includeEntity,
1414
            Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
1415
        return defaultService.findByIdentifier(clazz, identifier, identifierType, subtreeFilter, matchmode, includeEntity, pageSize, pageNumber, propertyPaths);
1416
    }
1417

    
1418

    
1419

    
1420
    /* (non-Javadoc)
1421
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#deleteSynonym(java.util.UUID, java.util.UUID, eu.etaxonomy.cdm.api.service.config.SynonymDeletionConfigurator)
1422
     */
1423
    @Override
1424
    public DeleteResult deleteSynonym(UUID synonymUuid, UUID taxonUuid, SynonymDeletionConfigurator config) {
1425
        return defaultService.deleteSynonym(synonymUuid, taxonUuid, config);
1426
    }
1427

    
1428

    
1429
    /**
1430
     * {@inheritDoc}
1431

    
1432
     */
1433
    @Override
1434
    public UpdateResult swapSynonymAndAcceptedTaxon(UUID synonymUUid, UUID acceptedTaxonUuid) {
1435
        return defaultService.swapSynonymAndAcceptedTaxon(synonymUUid, acceptedTaxonUuid);
1436
    }
1437

    
1438
    /* (non-Javadoc)
1439
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#deleteTaxon(java.util.UUID, eu.etaxonomy.cdm.api.service.config.TaxonDeletionConfigurator, java.util.UUID)
1440
     */
1441
    @Override
1442
    public DeleteResult deleteTaxon(UUID taxonUuid, TaxonDeletionConfigurator config, UUID classificationUuid) {
1443
        return defaultService.deleteTaxon(taxonUuid, config, classificationUuid);
1444
    }
1445

    
1446

    
1447
	@Override
1448
	public UpdateResult moveFactualDateToAnotherTaxon(UUID arg0, UUID arg1) {
1449
		return defaultService.moveFactualDateToAnotherTaxon(arg0, arg1);
1450
	}
1451

    
1452

    
1453
    /**
1454
     * {@inheritDoc}
1455
     */
1456
    @Override
1457
    public UpdateResult moveSynonymToAnotherTaxon(
1458
            SynonymRelationship oldSynonymRelation, UUID newTaxonUUID,
1459
            boolean moveHomotypicGroup,
1460
            SynonymRelationshipType newSynonymRelationshipType,
1461
            Reference reference, String referenceDetail, boolean keepReference)
1462
                    throws HomotypicalGroupChangeException {
1463

    
1464
        return defaultService.moveSynonymToAnotherTaxon(oldSynonymRelation, newTaxonUUID, moveHomotypicGroup, newSynonymRelationshipType, reference, referenceDetail, keepReference);
1465
    }
1466

    
1467

    
1468
    /* (non-Javadoc)
1469
     * @see eu.etaxonomy.cdm.api.service.IService#delete(java.util.UUID)
1470
     */
1471
    @Override
1472
    public DeleteResult delete(UUID uuid) {
1473
        return defaultService.delete(uuid);
1474

    
1475
    }
1476

    
1477
    /* (non-Javadoc)
1478
     * @see eu.etaxonomy.cdm.api.service.IService#delete(java.util.Collection)
1479
     */
1480
    @Override
1481
    public DeleteResult delete(Collection<UUID> arg0) {
1482
        return defaultService.delete(arg0);
1483
    }
1484

    
1485
    /* (non-Javadoc)
1486
     * @see eu.etaxonomy.cdm.api.service.IService#merge(java.util.List)
1487
     */
1488
    @Override
1489
    public List<TaxonBase> merge(List<TaxonBase> arg0) {
1490
        return defaultService.merge(arg0);
1491
    }
1492

    
1493
    /* (non-Javadoc)
1494
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#deleteSynonym(java.util.UUID, eu.etaxonomy.cdm.api.service.config.SynonymDeletionConfigurator)
1495
     */
1496
    @Override
1497
    public DeleteResult deleteSynonym(UUID arg0, SynonymDeletionConfigurator arg1) {
1498
        return defaultService.deleteSynonym(arg0, arg1);
1499
    }
1500

    
1501
    /* (non-Javadoc)
1502
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#changeSynonymToRelatedTaxon(java.util.UUID, java.util.UUID, eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType, eu.etaxonomy.cdm.model.reference.Reference, java.lang.String)
1503
     */
1504
    @Override
1505
    public UpdateResult changeSynonymToRelatedTaxon(UUID arg0, UUID arg1, TaxonRelationshipType arg2, Reference arg3,
1506
            String arg4) {
1507
        return defaultService.changeSynonymToRelatedTaxon(arg0, arg1, arg2, arg3, arg4);
1508
    }
1509

    
1510
    /* (non-Javadoc)
1511
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#changeRelatedTaxonToSynonym(java.util.UUID, java.util.UUID, eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType, eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType)
1512
     */
1513
    @Override
1514
    public UpdateResult changeRelatedTaxonToSynonym(UUID arg0, UUID arg1, TaxonRelationshipType arg2,
1515
            SynonymRelationshipType arg3) throws DataChangeNoRollbackException {
1516
        return defaultService.changeRelatedTaxonToSynonym(arg0, arg1, arg2, arg3);
1517

    
1518
    }
1519

    
1520
    /* (non-Javadoc)
1521
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#changeSynonymToAcceptedTaxon(java.util.UUID, java.util.UUID, java.util.UUID, boolean, boolean, eu.etaxonomy.cdm.model.reference.Reference, java.lang.String)
1522
     */
1523
    @Override
1524
    public UpdateResult changeSynonymToAcceptedTaxon(UUID arg0, UUID arg1, UUID arg2, boolean arg3, boolean arg4,
1525
            Reference arg5, String arg6) throws HomotypicalGroupChangeException {
1526
        return defaultService.changeSynonymToAcceptedTaxon(arg0, arg1, arg2, arg3, arg4, arg5, arg6);
1527
    }
1528

    
1529
    /* (non-Javadoc)
1530
     * @see eu.etaxonomy.cdm.api.service.IService#merge(java.util.List, boolean)
1531
     */
1532
    @Override
1533
    public List<MergeResult<TaxonBase>> merge(List<TaxonBase> arg0, boolean arg1) {
1534
        return defaultService.merge(arg0, arg1);
1535
    }
1536

    
1537
    /* (non-Javadoc)
1538
     * @see eu.etaxonomy.cdm.api.service.IService#merge(eu.etaxonomy.cdm.model.common.ICdmBase, boolean)
1539
     */
1540
    @Override
1541
    public MergeResult<TaxonBase> merge(TaxonBase arg0, boolean arg1) {
1542
        return defaultService.merge(arg0, arg1);
1543
    }
1544

    
1545
    /* (non-Javadoc)
1546
     * @see eu.etaxonomy.cdm.api.service.IService#loadWithUpdate(java.util.UUID)
1547
     */
1548
    @Override
1549
    public TaxonBase loadWithUpdate(UUID arg0) {
1550
        return defaultService.loadWithUpdate(arg0);
1551
    }
1552

    
1553

    
1554
}
(9-9/10)