Project

General

Profile

Download (60.9 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.classic.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 uuid
331
     * @return
332
     * @see eu.etaxonomy.cdm.api.service.IService#find(java.util.UUID)
333
     */
334
    @Override
335
    public TaxonBase find(UUID uuid) {
336
        return defaultService.find(uuid);
337
    }
338

    
339
    /**
340
     * @param id
341
     * @return
342
     * @see eu.etaxonomy.cdm.api.service.IService#find(int)
343
     */
344
    @Override
345
    public TaxonBase find(int id) {
346
        return defaultService.find(id);
347
    }
348

    
349
    /**
350
     * @param t
351
     * @param pageSize
352
     * @param pageNumber
353
     * @param propertyPaths
354
     * @return
355
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getRights(eu.etaxonomy.cdm.model.common.IdentifiableEntity, java.lang.Integer, java.lang.Integer, java.util.List)
356
     */
357
    @Override
358
    public Pager<Rights> getRights(TaxonBase t, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
359
        return defaultService.getRights(t, pageSize, pageNumber, propertyPaths);
360
    }
361

    
362
    /**
363
     * @param clazz
364
     * @param technical
365
     * @return
366
     * @see eu.etaxonomy.cdm.api.service.IAnnotatableService#countMarkers(java.lang.Class, java.lang.Boolean)
367
     */
368
    @Override
369
    public int countMarkers(Class<? extends TaxonBase> clazz, Boolean technical) {
370
        return defaultService.countMarkers(clazz, technical);
371
    }
372

    
373
    /**
374
     * @param idSet
375
     * @return
376
     * @see eu.etaxonomy.cdm.api.service.IService#findById(java.util.Set)
377
     */
378
    @Override
379
    public List<TaxonBase> findById(Set<Integer> idSet) {
380
        return defaultService.findById(idSet);
381
    }
382

    
383
    /**
384
     * @param clazz
385
     * @param idInSource
386
     * @param idNamespace
387
     * @return
388
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getSourcedObjectByIdInSource(java.lang.Class, java.lang.String, java.lang.String)
389
     */
390
    @Override
391
    public ISourceable getSourcedObjectByIdInSource(Class clazz, String idInSource, String idNamespace) {
392
        return defaultService.getSourcedObjectByIdInSource(clazz, idInSource, idNamespace);
393
    }
394

    
395
    /**
396
     * @return
397
     * @see eu.etaxonomy.cdm.api.service.IService#getSession()
398
     */
399
    @Override
400
    public Session getSession() {
401
        return defaultService.getSession();
402
    }
403

    
404
    /**
405
     * @param clazz
406
     * @param limit
407
     * @param start
408
     * @param groups
409
     * @param propertyPaths
410
     * @return
411
     * @see eu.etaxonomy.cdm.api.service.IService#group(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
412
     */
413
    @Override
414
    public List<Object[]> group(Class<? extends TaxonBase> clazz, Integer limit, Integer start, List<Grouping> groups, List<String> propertyPaths) {
415
        return defaultService.group(clazz, limit, start, groups, propertyPaths);
416
    }
417

    
418
    /**
419
     * @param limit
420
     * @param start
421
     * @return
422
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#getAllRelationships(int, int)
423
     */
424
    @Override
425
    public List<RelationshipBase> getAllRelationships(int limit, int start) {
426
        return defaultService.getAllRelationships(limit, start);
427
    }
428

    
429
    /**
430
     * @param clazz
431
     * @param queryString
432
     * @param matchmode
433
     * @param criteria
434
     * @param pageSize
435
     * @param pageNumber
436
     * @param orderHints
437
     * @param propertyPaths
438
     * @return
439
     * @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)
440
     */
441
    @Override
442
    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) {
443
        return defaultService.findByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
444
    }
445

    
446
    /**
447
     * @param name
448
     * @param sec
449
     * @return
450
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#searchTaxaByName(java.lang.String, eu.etaxonomy.cdm.model.reference.Reference)
451
     */
452
    @Override
453
    public List<TaxonBase> searchTaxaByName(String name, Reference sec) {
454
        return defaultService.searchTaxaByName(name, sec);
455
    }
456

    
457

    
458
    /**
459
     * {@inheritDoc}
460
     */
461
    @Override
462
    public UpdateResult swapSynonymAndAcceptedTaxon(Synonym arg0, Taxon arg1) {
463
        return defaultService.swapSynonymAndAcceptedTaxon(arg0, arg1);
464

    
465
    }
466

    
467
    /**
468
     * @param type
469
     * @param limit
470
     * @param start
471
     * @param orderHints
472
     * @param propertyPaths
473
     * @return
474
     * @see eu.etaxonomy.cdm.api.service.IService#list(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
475
     */
476
    @Override
477
    public <S extends TaxonBase> List<S> list(Class<S> type, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
478
        return defaultService.list(type, limit, start, orderHints, propertyPaths);
479
    }
480

    
481
    /**
482
     * @param configurator
483
     * @return
484
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#findByTitle(eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator)
485
     */
486
    @Override
487
    public Pager<TaxonBase> findByTitle(IIdentifiableEntityServiceConfigurator<TaxonBase> configurator) {
488
        return defaultService.findByTitle(configurator);
489
    }
490

    
491
    /**
492
     * @param synonym
493
     * @param acceptedTaxon
494
     * @param deleteSynonym
495
     * @param copyCitationInfo
496
     * @param citation
497
     * @param microCitation
498
     * @return
499
     * @throws HomotypicalGroupChangeException
500
     * @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)
501
     */
502
    @Override
503
    public Taxon changeSynonymToAcceptedTaxon(Synonym synonym, Taxon acceptedTaxon, boolean deleteSynonym, boolean copyCitationInfo, Reference citation, String microCitation) throws HomotypicalGroupChangeException {
504
        return defaultService.changeSynonymToAcceptedTaxon(synonym, acceptedTaxon, deleteSynonym, copyCitationInfo, citation, microCitation);
505
    }
506

    
507
    /**
508
     * @param clazz
509
     * @param queryString
510
     * @param matchmode
511
     * @param criteria
512
     * @return
513
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#countByTitle(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.persistence.query.MatchMode, java.util.List)
514
     */
515
    @Override
516
    public Integer countByTitle(Class<? extends TaxonBase> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria) {
517
        return defaultService.countByTitle(clazz, queryString, matchmode, criteria);
518
    }
519

    
520
    /**
521
     * @param uuid
522
     * @return
523
     * @see eu.etaxonomy.cdm.api.service.IService#load(java.util.UUID)
524
     */
525
    @Override
526
    public TaxonBase load(UUID uuid) {
527
        return defaultService.load(uuid);
528
    }
529

    
530
    /**
531
     * @param uuid
532
     * @param propertyPaths
533
     * @return
534
     * @see eu.etaxonomy.cdm.api.service.IService#load(java.util.UUID, java.util.List)
535
     */
536
    @Override
537
    public TaxonBase load(UUID uuid, List<String> propertyPaths) {
538
        return defaultService.load(uuid, propertyPaths);
539
    }
540

    
541
    /**
542
     * @param configurator
543
     * @return
544
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#countByTitle(eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator)
545
     */
546
    @Override
547
    public Integer countByTitle(IIdentifiableEntityServiceConfigurator<TaxonBase> configurator) {
548
        return defaultService.countByTitle(configurator);
549
    }
550

    
551
    /**
552
     * @param transientObject
553
     * @return
554
     * @see eu.etaxonomy.cdm.api.service.IService#merge(eu.etaxonomy.cdm.model.common.ICdmBase)
555
     */
556
    @Override
557
    public TaxonBase merge(TaxonBase transientObject) {
558
        return defaultService.merge(transientObject);
559
    }
560

    
561
    /**
562
     * @param clazz
563
     * @param queryString
564
     * @param matchmode
565
     * @param criteria
566
     * @param pageSize
567
     * @param pageNumber
568
     * @param orderHints
569
     * @param propertyPaths
570
     * @return
571
     * @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)
572
     */
573
    @Override
574
    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) {
575
        return defaultService.listByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
576
    }
577

    
578
    /**
579
     * @param type
580
     * @param pageSize
581
     * @param pageNumber
582
     * @param orderHints
583
     * @param propertyPaths
584
     * @return
585
     * @see eu.etaxonomy.cdm.api.service.IService#page(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
586
     */
587
    @Override
588
    public  <S extends TaxonBase> Pager<S> page(Class<S> type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
589
        return defaultService.page(type, pageSize, pageNumber, orderHints, propertyPaths);
590
    }
591

    
592
    /**
593
     * @param persistentObject
594
     * @return
595
     * @see eu.etaxonomy.cdm.api.service.IService#refresh(eu.etaxonomy.cdm.model.common.ICdmBase)
596
     */
597
    @Override
598
    public UUID refresh(TaxonBase persistentObject) {
599
        return defaultService.refresh(persistentObject);
600
    }
601

    
602
    /**
603
     * @param synonym
604
     * @param toTaxon
605
     * @param taxonRelationshipType
606
     * @param reference
607
     * @param microReference
608
     * @return
609
     * @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)
610
     */
611
    @Override
612
    public Taxon changeSynonymToRelatedTaxon(Synonym synonym, Taxon toTaxon, TaxonRelationshipType taxonRelationshipType, Reference reference, String microReference) {
613
        return defaultService.changeSynonymToRelatedTaxon(synonym, toTaxon, taxonRelationshipType, reference, microReference);
614
    }
615

    
616
    /**
617
     * @param clazz
618
     * @param queryString
619
     * @param matchmode
620
     * @param criteria
621
     * @param pageSize
622
     * @param pageNumber
623
     * @param orderHints
624
     * @param propertyPaths
625
     * @return
626
     * @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)
627
     */
628
    @Override
629
    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) {
630
        return defaultService.listByReferenceTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
631
    }
632

    
633
    /**
634
     * @param tableName
635
     * @param limit
636
     * @param start
637
     * @return
638
     * @see eu.etaxonomy.cdm.api.service.IService#rows(java.lang.String, int, int)
639
     */
640
    @Override
641
    public List<TaxonBase> rows(String tableName, int limit, int start) {
642
        return defaultService.rows(tableName, limit, start);
643
    }
644

    
645
    /**
646
     * @param newInstances
647
     * @return
648
     * @see eu.etaxonomy.cdm.api.service.IService#save(java.util.Collection)
649
     */
650
    @Override
651
    public Map<UUID, TaxonBase> save(Collection<TaxonBase> newInstances) {
652
        return null;
653
    }
654

    
655
    /**
656
     * @param newInstance
657
     * @return
658
     * @see eu.etaxonomy.cdm.api.service.IService#save(eu.etaxonomy.cdm.model.common.ICdmBase)
659
     */
660
    @Override
661
    public TaxonBase save(TaxonBase newInstance) {
662
        return null;
663
    }
664

    
665
    /**
666
     * @param transientObject
667
     * @return
668
     * @see eu.etaxonomy.cdm.api.service.IService#saveOrUpdate(eu.etaxonomy.cdm.model.common.ICdmBase)
669
     */
670
    @Override
671
    public UUID saveOrUpdate(TaxonBase transientObject) {
672
        return null;
673
    }
674

    
675
    /**
676
     * @param synonym
677
     * @param newHomotypicalGroup
678
     * @param targetTaxon
679
     * @param removeFromOtherTaxa
680
     * @param setBasionymRelationIfApplicable
681
     * @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)
682
     */
683
    @Override
684
    public void changeHomotypicalGroupOfSynonym(Synonym synonym, HomotypicalGroup newHomotypicalGroup, Taxon targetTaxon, boolean removeFromOtherTaxa, boolean setBasionymRelationIfApplicable) {
685
        defaultService.changeHomotypicalGroupOfSynonym(synonym, newHomotypicalGroup, targetTaxon, removeFromOtherTaxa, setBasionymRelationIfApplicable);
686
    }
687

    
688
    /**
689
     * @param transientObjects
690
     * @return
691
     * @see eu.etaxonomy.cdm.api.service.IService#saveOrUpdate(java.util.Collection)
692
     */
693
    @Override
694
    public Map<UUID, TaxonBase> saveOrUpdate(Collection<TaxonBase> transientObjects) {
695
        return null;
696
    }
697

    
698
    /**
699
     * @param transientObject
700
     * @return
701
     * @see eu.etaxonomy.cdm.api.service.IService#update(eu.etaxonomy.cdm.model.common.ICdmBase)
702
     */
703
    @Override
704
    public UUID update(TaxonBase transientObject) {
705
        return defaultService.update(transientObject);
706
    }
707

    
708
    /**
709
     * @param example
710
     * @param includeProperties
711
     * @param limit
712
     * @param start
713
     * @param orderHints
714
     * @param propertyPaths
715
     * @return
716
     * @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)
717
     */
718
    @Override
719
    public List<TaxonBase> list(TaxonBase example, Set<String> includeProperties, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
720
        return defaultService.list(example, includeProperties, limit, start, orderHints, propertyPaths);
721
    }
722

    
723
    /**
724
     * @param oldSynonymRelation
725
     * @param newTaxon
726
     * @param moveHomotypicGroup
727
     * @param newSynonymRelationshipType
728
     * @param newReference
729
     * @param newReferenceDetail
730
     * @param keepReference
731
     * @return
732
     * @throws HomotypicalGroupChangeException
733
     * @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)
734
     */
735
    @Override
736
    public UpdateResult moveSynonymToAnotherTaxon(SynonymRelationship oldSynonymRelation, Taxon newTaxon, boolean moveHomotypicGroup, SynonymRelationshipType newSynonymRelationshipType, Reference newReference, String newReferenceDetail, boolean keepReference) throws HomotypicalGroupChangeException {
737
        return defaultService.moveSynonymToAnotherTaxon(oldSynonymRelation, newTaxon, moveHomotypicGroup, newSynonymRelationshipType, newReference, newReferenceDetail, keepReference);
738
    }
739

    
740
    /**
741
     * @param clazz
742
     * @param matchStrategy
743
     * @param mergeStrategy
744
     * @return
745
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#deduplicate(java.lang.Class, eu.etaxonomy.cdm.strategy.match.IMatchStrategy, eu.etaxonomy.cdm.strategy.merge.IMergeStrategy)
746
     */
747
    @Override
748
    public int deduplicate(Class<? extends TaxonBase> clazz, IMatchStrategy matchStrategy, IMergeStrategy mergeStrategy) {
749
        return defaultService.deduplicate(clazz, matchStrategy, mergeStrategy);
750
    }
751

    
752
    /**
753
     * @param clazz
754
     * @param queryString
755
     * @param pageSize
756
     * @param pageNumber
757
     * @param orderHints
758
     * @param matchMode
759
     * @return
760
     * @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)
761
     */
762
    @Override
763
    public Pager<TaxonBase> findTitleCache(Class<? extends TaxonBase> clazz, String queryString, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, MatchMode matchMode) {
764
        return defaultService.findTitleCache(clazz, queryString, pageSize, pageNumber, orderHints, matchMode);
765
    }
766

    
767
    /**
768
     * @param taxon
769
     * @param type
770
     * @param pageSize
771
     * @param pageNumber
772
     * @param orderHints
773
     * @param propertyPaths
774
     * @return
775
     * @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)
776
     */
777
    @Override
778
    public List<TaxonRelationship> listToTaxonRelationships(Taxon taxon, TaxonRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
779
        return defaultService.listToTaxonRelationships(taxon, type, pageSize, pageNumber, orderHints, propertyPaths);
780
    }
781

    
782
    /**
783
     * @param taxon
784
     * @param type
785
     * @param pageSize
786
     * @param pageNumber
787
     * @param orderHints
788
     * @param propertyPaths
789
     * @return
790
     * @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)
791
     */
792
    @Override
793
    public Pager<TaxonRelationship> pageToTaxonRelationships(Taxon taxon, TaxonRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
794
        return defaultService.pageToTaxonRelationships(taxon, type, pageSize, pageNumber, orderHints, propertyPaths);
795
    }
796

    
797
    /**
798
     * @param taxon
799
     * @param type
800
     * @param pageSize
801
     * @param pageNumber
802
     * @param orderHints
803
     * @param propertyPaths
804
     * @return
805
     * @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)
806
     */
807
    @Override
808
    public List<TaxonRelationship> listFromTaxonRelationships(Taxon taxon, TaxonRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
809
        return defaultService.listFromTaxonRelationships(taxon, type, pageSize, pageNumber, orderHints, propertyPaths);
810
    }
811

    
812
    /**
813
     * @param taxon
814
     * @param type
815
     * @param pageSize
816
     * @param pageNumber
817
     * @param orderHints
818
     * @param propertyPaths
819
     * @return
820
     * @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)
821
     */
822
    @Override
823
    public Pager<TaxonRelationship> pageFromTaxonRelationships(Taxon taxon, TaxonRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
824
        return defaultService.pageFromTaxonRelationships(taxon, type, pageSize, pageNumber, orderHints, propertyPaths);
825
    }
826

    
827
    /**
828
     * @param taxon
829
     * @param includeRelationships
830
     * @param maxDepth
831
     * @param limit
832
     * @param start
833
     * @param propertyPaths
834
     * @return
835
     * @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)
836
     */
837
    @Override
838
    public Set<Taxon> listRelatedTaxa(Taxon taxon, Set<TaxonRelationshipEdge> includeRelationships, Integer maxDepth, Integer limit, Integer start, List<String> propertyPaths) {
839
        return defaultService.listRelatedTaxa(taxon, includeRelationships, maxDepth, limit, start, propertyPaths);
840
    }
841

    
842
    /**
843
     * @param taxonBase
844
     * @param limit
845
     * @param start
846
     * @param propertyPaths
847
     * @return
848
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#listClassifications(eu.etaxonomy.cdm.model.taxon.TaxonBase, java.lang.Integer, java.lang.Integer, java.util.List)
849
     */
850
    @Override
851
    public List<Classification> listClassifications(TaxonBase taxonBase, Integer limit, Integer start, List<String> propertyPaths) {
852
        return defaultService.listClassifications(taxonBase, limit, start, propertyPaths);
853
    }
854

    
855
    /**
856
     * @param synonym
857
     * @param type
858
     * @param pageSize
859
     * @param pageNumber
860
     * @param orderHints
861
     * @param propertyPaths
862
     * @return
863
     * @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)
864
     */
865
    @Override
866
    public Pager<SynonymRelationship> getSynonyms(Synonym synonym, SynonymRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
867
        return defaultService.getSynonyms(synonym, type, pageSize, pageNumber, orderHints, propertyPaths);
868
    }
869

    
870
    /**
871
     * @param taxon
872
     * @param type
873
     * @param pageSize
874
     * @param pageNumber
875
     * @param orderHints
876
     * @param propertyPaths
877
     * @return
878
     * @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)
879
     */
880
    @Override
881
    public Pager<SynonymRelationship> getSynonyms(Taxon taxon, SynonymRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
882
        return defaultService.getSynonyms(taxon, type, pageSize, pageNumber, orderHints, propertyPaths);
883
    }
884

    
885
    /**
886
     * @param taxon
887
     * @param propertyPaths
888
     * @return
889
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#getHomotypicSynonymsByHomotypicGroup(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.List)
890
     */
891
    @Override
892
    public List<Synonym> getHomotypicSynonymsByHomotypicGroup(Taxon taxon, List<String> propertyPaths) {
893
        return defaultService.getHomotypicSynonymsByHomotypicGroup(taxon, propertyPaths);
894
    }
895

    
896
    /**
897
     * @param taxon
898
     * @param propertyPaths
899
     * @return
900
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#getHeterotypicSynonymyGroups(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.List)
901
     */
902
    @Override
903
    public List<List<Synonym>> getHeterotypicSynonymyGroups(Taxon taxon, List<String> propertyPaths) {
904
        return defaultService.getHeterotypicSynonymyGroups(taxon, propertyPaths);
905
    }
906

    
907
    /**
908
     * @param clazz
909
     * @param queryString
910
     * @param pageSize
911
     * @param pageNumber
912
     * @param orderHints
913
     * @param propertyPaths
914
     * @return
915
     * @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)
916
     */
917
    @Override
918
    public Pager<TaxonBase> search(Class<? extends TaxonBase> clazz, String queryString, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
919
        return defaultService.search(clazz, queryString, pageSize, pageNumber, orderHints, propertyPaths);
920
    }
921

    
922
    /**
923
     * @param clazz
924
     * @param uninomial
925
     * @param infragenericEpithet
926
     * @param specificEpithet
927
     * @param infraspecificEpithet
928
     * @param rank
929
     * @param pageSize
930
     * @param pageNumber
931
     * @return
932
     * @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)
933
     */
934
    @Override
935
    public Pager<TaxonBase> findTaxaByName(Class<? extends TaxonBase> clazz, String uninomial, String infragenericEpithet, String specificEpithet, String infraspecificEpithet, String authorship, Rank rank, Integer pageSize, Integer pageNumber) {
936
        return defaultService.findTaxaByName(clazz, uninomial, infragenericEpithet, specificEpithet, infraspecificEpithet, authorship, rank, pageSize, pageNumber);
937
    }
938

    
939
    /**
940
     * @param clazz
941
     * @param uninomial
942
     * @param infragenericEpithet
943
     * @param specificEpithet
944
     * @param infraspecificEpithet
945
     * @param rank
946
     * @param pageSize
947
     * @param pageNumber
948
     * @return
949
     * @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)
950
     */
951
    @Override
952
    public List<TaxonBase> listTaxaByName(Class<? extends TaxonBase> clazz, String uninomial, String infragenericEpithet, String specificEpithet, String infraspecificEpithet, String authorship, Rank rank, Integer pageSize, Integer pageNumber) {
953
        return defaultService.listTaxaByName(clazz, uninomial, infragenericEpithet, specificEpithet, infraspecificEpithet, authorship, rank, pageSize, pageNumber);
954
    }
955

    
956
    /**
957
     * @param configurator
958
     * @return
959
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findTaxaAndNames(eu.etaxonomy.cdm.api.service.config.IFindTaxaAndNamesConfigurator)
960
     */
961
    @Override
962
    public Pager<IdentifiableEntity> findTaxaAndNames(IFindTaxaAndNamesConfigurator configurator) {
963
        return defaultService.findTaxaAndNames(configurator);
964
    }
965

    
966
    /**
967
     * @param queryString
968
     * @param classification
969
     * @param languages
970
     * @param highlightFragments
971
     * @param pageSize
972
     * @param pageNumber
973
     * @param orderHints
974
     * @param propertyPaths
975
     * @return
976
     * @throws CorruptIndexException
977
     * @throws IOException
978
     * @throws ParseException
979
     * @throws LuceneMultiSearchException
980
     * @deprecated
981
     * @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)
982
     */
983
    @Deprecated
984
    @Override
985
    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 {
986
        return defaultService.findByEverythingFullText(queryString, classification, languages, highlightFragments, pageSize, pageNumber, orderHints, propertyPaths);
987
    }
988

    
989
    /**
990
     * @param clazz
991
     * @param queryString
992
     * @param classification
993
     * @param languages
994
     * @param highlightFragments
995
     * @param pageSize
996
     * @param pageNumber
997
     * @param orderHints
998
     * @param propertyPaths
999
     * @return
1000
     * @throws CorruptIndexException
1001
     * @throws IOException
1002
     * @throws ParseException
1003
     * @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)
1004
     */
1005
    @Override
1006
    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 {
1007
        return defaultService.findByFullText(clazz, queryString, classification, languages, highlightFragments, pageSize, pageNumber, orderHints, propertyPaths);
1008
    }
1009

    
1010

    
1011
    /* (non-Javadoc)
1012
     * @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)
1013
     */
1014
    @Override
1015
    public Pager<SearchResult<TaxonBase>> findByDistribution(List<NamedArea> areaFilter,
1016
            List<PresenceAbsenceTerm> statusFilter, Classification classification, Integer pageSize,
1017
            Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) throws IOException,
1018
            ParseException {
1019
        return defaultService.findByDistribution(areaFilter, statusFilter, classification, pageSize, pageNumber, orderHints, propertyPaths);
1020
    }
1021

    
1022

    
1023
    /* (non-Javadoc)
1024
     * @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)
1025
     */
1026
    @Override
1027
    public Pager<SearchResult<TaxonBase>> findTaxaAndNamesByFullText(EnumSet<TaxaAndNamesSearchMode> searchModes,
1028
            String queryString, Classification classification, Set<NamedArea> namedAreas,
1029
            Set<PresenceAbsenceTerm> distributionStatus, List<Language> languages, boolean highlightFragments,
1030
            Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths)
1031
                    throws CorruptIndexException, IOException, ParseException, LuceneMultiSearchException {
1032
        return defaultService.findTaxaAndNamesByFullText(searchModes, queryString, classification, namedAreas, distributionStatus, languages, highlightFragments, pageSize, pageNumber, orderHints, propertyPaths);
1033
    }
1034

    
1035
    /**
1036
     * @param clazz
1037
     * @param queryString
1038
     * @param classification
1039
     * @param features
1040
     * @param languages
1041
     * @param highlightFragments
1042
     * @param pageSize
1043
     * @param pageNumber
1044
     * @param orderHints
1045
     * @param propertyPaths
1046
     * @return
1047
     * @throws CorruptIndexException
1048
     * @throws IOException
1049
     * @throws ParseException
1050
     * @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)
1051
     */
1052
    @Override
1053
    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 {
1054
        return defaultService.findByDescriptionElementFullText(clazz, queryString, classification, features, languages, highlightFragments, pageSize, pageNumber, orderHints, propertyPaths);
1055
    }
1056

    
1057
    /**
1058
     * @param taxon
1059
     * @param size
1060
     * @param height
1061
     * @param widthOrDuration
1062
     * @param mimeTypes
1063
     * @return
1064
     * @deprecated
1065
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#getAllMedia(eu.etaxonomy.cdm.model.taxon.Taxon, int, int, int, java.lang.String[])
1066
     */
1067
    @Deprecated
1068
    @Override
1069
    public List<MediaRepresentation> getAllMedia(Taxon taxon, int size, int height, int widthOrDuration, String[] mimeTypes) {
1070
        return defaultService.getAllMedia(taxon, size, height, widthOrDuration, mimeTypes);
1071
    }
1072

    
1073
    /**
1074
     * @param taxon
1075
     * @param includeRelationships
1076
     * @param limitToGalleries
1077
     * @param propertyPath
1078
     * @return
1079
     * @deprecated
1080
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#listTaxonDescriptionMedia(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.Set, boolean, java.util.List)
1081
     */
1082
    @Deprecated
1083
    @Override
1084
    public List<Media> listTaxonDescriptionMedia(Taxon taxon, Set<TaxonRelationshipEdge> includeRelationships, boolean limitToGalleries, List<String> propertyPath) {
1085
        return defaultService.listTaxonDescriptionMedia(taxon, includeRelationships, limitToGalleries, propertyPath);
1086
    }
1087

    
1088
    /**
1089
     * @param taxon
1090
     * @param includeRelationships
1091
     * @param limitToGalleries
1092
     * @param includeTaxonDescriptions
1093
     * @param includeOccurrences
1094
     * @param includeTaxonNameDescriptions
1095
     * @param propertyPath
1096
     * @return
1097
     * @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)
1098
     */
1099
    @Override
1100
    public List<Media> listMedia(Taxon taxon, Set<TaxonRelationshipEdge> includeRelationships, Boolean limitToGalleries, Boolean includeTaxonDescriptions, Boolean includeOccurrences, Boolean includeTaxonNameDescriptions, List<String> propertyPath) {
1101
        return defaultService.listMedia(taxon, includeRelationships, limitToGalleries, includeTaxonDescriptions, includeOccurrences, includeTaxonNameDescriptions, propertyPath);
1102
    }
1103

    
1104
    /**
1105
     * @param listOfIDs
1106
     * @return
1107
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findTaxaByID(java.util.Set)
1108
     */
1109
    @Override
1110
    public List<TaxonBase> findTaxaByID(Set<Integer> listOfIDs) {
1111
        return defaultService.findTaxaByID(listOfIDs);
1112
    }
1113

    
1114
    /**
1115
     * @param uuid
1116
     * @param propertyPaths
1117
     * @return
1118
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findTaxonByUuid(java.util.UUID, java.util.List)
1119
     */
1120
    @Override
1121
    public TaxonBase findTaxonByUuid(UUID uuid, List<String> propertyPaths) {
1122
        return defaultService.findTaxonByUuid(uuid, propertyPaths);
1123
    }
1124

    
1125
    /**
1126
     * @return
1127
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#countAllRelationships()
1128
     */
1129
    @Override
1130
    public int countAllRelationships() {
1131
        return defaultService.countAllRelationships();
1132
    }
1133

    
1134
    /**
1135
     * @param propertyPath
1136
     * @return
1137
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findIdenticalTaxonNames(java.util.List)
1138
     */
1139
    @Override
1140
    public List<TaxonNameBase> findIdenticalTaxonNames(List<String> propertyPath) {
1141
        return defaultService.findIdenticalTaxonNames(propertyPath);
1142
    }
1143

    
1144
    /**
1145
     * @param propertyPath
1146
     * @return
1147
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findIdenticalTaxonNameIds(java.util.List)
1148
     */
1149
    @Override
1150
    public List<TaxonNameBase> findIdenticalTaxonNameIds(List<String> propertyPath) {
1151
        return defaultService.findIdenticalTaxonNameIds(propertyPath);
1152
    }
1153

    
1154
    /**
1155
     * @param name
1156
     * @return
1157
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#getPhylumName(eu.etaxonomy.cdm.model.name.TaxonNameBase)
1158
     */
1159
    @Override
1160
    public String getPhylumName(TaxonNameBase name) {
1161
        return defaultService.getPhylumName(name);
1162
    }
1163

    
1164
    /**
1165
     * @param syn
1166
     * @return
1167
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#deleteSynonymRelationships(eu.etaxonomy.cdm.model.taxon.Synonym)
1168
     */
1169
    @Override
1170
    public long deleteSynonymRelationships(Synonym syn) {
1171
        return defaultService.deleteSynonymRelationships(syn);
1172
    }
1173

    
1174
    /**
1175
     * @param taxonBase
1176
     * @param type
1177
     * @param pageSize
1178
     * @param pageNumber
1179
     * @param orderHints
1180
     * @param propertyPaths
1181
     * @param direction
1182
     * @return
1183
     * @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)
1184
     */
1185
    @Override
1186
    public List<SynonymRelationship> listSynonymRelationships(TaxonBase taxonBase, SynonymRelationshipType type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths, Direction direction) {
1187
        return defaultService.listSynonymRelationships(taxonBase, type, pageSize, pageNumber, orderHints, propertyPaths, direction);
1188
    }
1189

    
1190
    /**
1191
     * @param taxonName
1192
     * @return
1193
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findBestMatchingTaxon(java.lang.String)
1194
     */
1195
    @Override
1196
    public Taxon findBestMatchingTaxon(String taxonName) {
1197
        return defaultService.findBestMatchingTaxon(taxonName);
1198
    }
1199

    
1200
    /**
1201
     * @param config
1202
     * @return
1203
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findBestMatchingTaxon(eu.etaxonomy.cdm.api.service.config.MatchingTaxonConfigurator)
1204
     */
1205
    @Override
1206
    public Taxon findBestMatchingTaxon(MatchingTaxonConfigurator config) {
1207
        return defaultService.findBestMatchingTaxon(config);
1208
    }
1209

    
1210
    /**
1211
     * @param taxonName
1212
     * @return
1213
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findBestMatchingSynonym(java.lang.String)
1214
     */
1215
    @Override
1216
    public Synonym findBestMatchingSynonym(String taxonName) {
1217
        return defaultService.findBestMatchingSynonym(taxonName);
1218
    }
1219

    
1220

    
1221
    /**
1222
     * @param configurator
1223
     * @return
1224
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findTaxaAndNamesForEditor(eu.etaxonomy.cdm.api.service.config.IFindTaxaAndNamesConfigurator)
1225
     */
1226
    @Override
1227
    public List<UuidAndTitleCache<IdentifiableEntity>> findTaxaAndNamesForEditor(IFindTaxaAndNamesConfigurator configurator) {
1228
        return defaultService.findTaxaAndNamesForEditor(configurator);
1229
    }
1230

    
1231
    /**
1232
     * @param taxon
1233
     * @param tree
1234
     * @param type
1235
     * @param doWithMisappliedNames
1236
     * @return
1237
     * @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)
1238
     */
1239
    @Override
1240
    public List<Synonym> createInferredSynonyms(Taxon taxon, Classification tree, SynonymRelationshipType type, boolean doWithMisappliedNames) {
1241
        return defaultService.createInferredSynonyms(taxon, tree, type, doWithMisappliedNames);
1242
    }
1243

    
1244
    /**
1245
     * @param taxon
1246
     * @param tree
1247
     * @param doWithMisappliedNames
1248
     * @return
1249
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#createAllInferredSynonyms(eu.etaxonomy.cdm.model.taxon.Taxon, eu.etaxonomy.cdm.model.taxon.Classification, boolean)
1250
     */
1251
    @Override
1252
    public List<Synonym> createAllInferredSynonyms(Taxon taxon, Classification tree, boolean doWithMisappliedNames) {
1253
        return defaultService.createAllInferredSynonyms(taxon, tree, doWithMisappliedNames);
1254
    }
1255

    
1256
    @Override
1257
    public DeleteResult deleteSynonym(Synonym arg0, SynonymDeletionConfigurator arg1) {
1258
        return defaultService.deleteSynonym(arg0, arg1);
1259
    }
1260

    
1261
    @Override
1262
    public DeleteResult deleteSynonym(Synonym arg0, Taxon arg1, SynonymDeletionConfigurator arg2) {
1263
        return defaultService.deleteSynonym(arg0, arg1, arg2);
1264
    }
1265

    
1266
    @Override
1267
    public List<List<Synonym>> getSynonymsByHomotypicGroup(Taxon taxon, List<String> propertyPaths) {
1268
        return defaultService.getSynonymsByHomotypicGroup(taxon, propertyPaths);
1269
    }
1270

    
1271
    @Override
1272
    public Synonym changeRelatedTaxonToSynonym(Taxon fromTaxon, Taxon toTaxon,
1273
            TaxonRelationshipType oldRelationshipType,
1274
            SynonymRelationshipType synonymRelationshipType)
1275
                    throws DataChangeNoRollbackException {
1276

    
1277
        return defaultService.changeRelatedTaxonToSynonym(fromTaxon, toTaxon, oldRelationshipType, synonymRelationshipType);
1278
    }
1279

    
1280
    /* (non-Javadoc)
1281
     * @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)
1282
     */
1283
    @Override
1284
    public Pager<Taxon> pageAcceptedTaxaFor(UUID synonymUuid, UUID classificationUuid, Integer pageSize,
1285
            Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
1286
        return defaultService.pageAcceptedTaxaFor(synonymUuid, classificationUuid, pageSize, pageNumber, orderHints, propertyPaths);
1287
    }
1288

    
1289
    /* (non-Javadoc)
1290
     * @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)
1291
     */
1292
    @Override
1293
    public List<Taxon> listAcceptedTaxaFor(UUID synonymUuid, UUID classificationUuid, Integer pageSize,
1294
            Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
1295
        return defaultService.listAcceptedTaxaFor(synonymUuid, classificationUuid, pageSize, pageNumber, orderHints, propertyPaths);
1296
    }
1297

    
1298
    @Override
1299
    public DeleteResult isDeletable(TaxonBase object,
1300
            DeleteConfiguratorBase config) {
1301
        // TODO Auto-generated method stub
1302
        return null;
1303
    }
1304

    
1305
    @Override
1306
    public IncludedTaxaDTO listIncludedTaxa(UUID taxonUuid,
1307
            IncludedTaxonConfiguration configuration) {
1308
        // TODO Auto-generated method stub
1309
        return null;
1310
    }
1311

    
1312
    @Override
1313
    public TaxonBase findWithoutFlush(UUID uuid) {
1314
        return defaultService.findWithoutFlush(uuid);
1315
    }
1316

    
1317
    /* (non-Javadoc)
1318
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#findTaxaByName(eu.etaxonomy.cdm.api.service.config.MatchingTaxonConfigurator)
1319
     */
1320
    @Override
1321
    public List<TaxonBase> findTaxaByName(MatchingTaxonConfigurator config) {
1322
        return defaultService.findTaxaByName(config);
1323
    }
1324

    
1325
    @Override
1326
    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){
1327
        return defaultService.findByIdentifier(clazz, identifier, identifierType, matchmode, includeEntity, pageSize, pageNumber, propertyPaths);
1328
    }
1329

    
1330
    /* (non-Javadoc)
1331
     * @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)
1332
     */
1333
    @Override
1334
    public <S extends TaxonBase> Pager<FindByIdentifierDTO<S>> findByIdentifier(Class<S> clazz, String identifier,
1335
            DefinedTerm identifierType, TaxonNode subtreeFilter, MatchMode matchmode, boolean includeEntity,
1336
            Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
1337
        return defaultService.findByIdentifier(clazz, identifier, identifierType, subtreeFilter, matchmode, includeEntity, pageSize, pageNumber, propertyPaths);
1338
    }
1339

    
1340

    
1341

    
1342
    /* (non-Javadoc)
1343
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#deleteSynonym(java.util.UUID, java.util.UUID, eu.etaxonomy.cdm.api.service.config.SynonymDeletionConfigurator)
1344
     */
1345
    @Override
1346
    public DeleteResult deleteSynonym(UUID synonymUuid, UUID taxonUuid, SynonymDeletionConfigurator config) {
1347
        return defaultService.deleteSynonym(synonymUuid, taxonUuid, config);
1348
    }
1349

    
1350

    
1351
    /**
1352
     * {@inheritDoc}
1353

    
1354
     */
1355
    @Override
1356
    public UpdateResult swapSynonymAndAcceptedTaxon(UUID synonymUUid, UUID acceptedTaxonUuid) {
1357
        return defaultService.swapSynonymAndAcceptedTaxon(synonymUUid, acceptedTaxonUuid);
1358
    }
1359

    
1360
    /* (non-Javadoc)
1361
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#deleteTaxon(java.util.UUID, eu.etaxonomy.cdm.api.service.config.TaxonDeletionConfigurator, java.util.UUID)
1362
     */
1363
    @Override
1364
    public DeleteResult deleteTaxon(UUID taxonUuid, TaxonDeletionConfigurator config, UUID classificationUuid) {
1365
        return defaultService.deleteTaxon(taxonUuid, config, classificationUuid);
1366
    }
1367

    
1368

    
1369
	@Override
1370
	public UpdateResult moveFactualDateToAnotherTaxon(UUID arg0, UUID arg1) {
1371
		return defaultService.moveFactualDateToAnotherTaxon(arg0, arg1);
1372
	}
1373

    
1374

    
1375
    /**
1376
     * {@inheritDoc}
1377
     */
1378
    @Override
1379
    public UpdateResult moveSynonymToAnotherTaxon(
1380
            SynonymRelationship oldSynonymRelation, UUID newTaxonUUID,
1381
            boolean moveHomotypicGroup,
1382
            SynonymRelationshipType newSynonymRelationshipType,
1383
            Reference reference, String referenceDetail, boolean keepReference)
1384
                    throws HomotypicalGroupChangeException {
1385

    
1386
        return defaultService.moveSynonymToAnotherTaxon(oldSynonymRelation, newTaxonUUID, moveHomotypicGroup, newSynonymRelationshipType, reference, referenceDetail, keepReference);
1387
    }
1388

    
1389

    
1390
    /* (non-Javadoc)
1391
     * @see eu.etaxonomy.cdm.api.service.IService#delete(java.util.UUID)
1392
     */
1393
    @Override
1394
    public DeleteResult delete(UUID uuid) {
1395
        return defaultService.delete(uuid);
1396

    
1397
    }
1398

    
1399
    /* (non-Javadoc)
1400
     * @see eu.etaxonomy.cdm.api.service.IService#delete(java.util.Collection)
1401
     */
1402
    @Override
1403
    public DeleteResult delete(Collection<UUID> arg0) {
1404
        return defaultService.delete(arg0);
1405
    }
1406

    
1407
    /* (non-Javadoc)
1408
     * @see eu.etaxonomy.cdm.api.service.IService#merge(java.util.List)
1409
     */
1410
    @Override
1411
    public List<TaxonBase> merge(List<TaxonBase> arg0) {
1412
        return defaultService.merge(arg0);
1413
    }
1414

    
1415
    /* (non-Javadoc)
1416
     * @see eu.etaxonomy.cdm.api.service.ITaxonService#deleteSynonym(java.util.UUID, eu.etaxonomy.cdm.api.service.config.SynonymDeletionConfigurator)
1417
     */
1418
    @Override
1419
    public DeleteResult deleteSynonym(UUID arg0, SynonymDeletionConfigurator arg1) {
1420
        return defaultService.deleteSynonym(arg0, arg1);
1421
    }
1422

    
1423
    /* (non-Javadoc)
1424
     * @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)
1425
     */
1426
    @Override
1427
    public UpdateResult changeSynonymToRelatedTaxon(UUID arg0, UUID arg1, TaxonRelationshipType arg2, Reference arg3,
1428
            String arg4) {
1429
        return defaultService.changeSynonymToRelatedTaxon(arg0, arg1, arg2, arg3, arg4);
1430
    }
1431

    
1432
    /* (non-Javadoc)
1433
     * @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)
1434
     */
1435
    @Override
1436
    public UpdateResult changeRelatedTaxonToSynonym(UUID arg0, UUID arg1, TaxonRelationshipType arg2,
1437
            SynonymRelationshipType arg3) throws DataChangeNoRollbackException {
1438
        return defaultService.changeRelatedTaxonToSynonym(arg0, arg1, arg2, arg3);
1439

    
1440
    }
1441

    
1442
    /* (non-Javadoc)
1443
     * @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)
1444
     */
1445
    @Override
1446
    public UpdateResult changeSynonymToAcceptedTaxon(UUID arg0, UUID arg1, UUID arg2, boolean arg3, boolean arg4,
1447
            Reference arg5, String arg6) throws HomotypicalGroupChangeException {
1448
        return defaultService.changeSynonymToAcceptedTaxon(arg0, arg1, arg2, arg3, arg4, arg5, arg6);
1449
    }
1450

    
1451
    /* (non-Javadoc)
1452
     * @see eu.etaxonomy.cdm.api.service.IService#merge(java.util.List, boolean)
1453
     */
1454
    @Override
1455
    public List<MergeResult<TaxonBase>> merge(List<TaxonBase> arg0, boolean arg1) {
1456
        return defaultService.merge(arg0, arg1);
1457
    }
1458

    
1459
    /* (non-Javadoc)
1460
     * @see eu.etaxonomy.cdm.api.service.IService#merge(eu.etaxonomy.cdm.model.common.ICdmBase, boolean)
1461
     */
1462
    @Override
1463
    public MergeResult<TaxonBase> merge(TaxonBase arg0, boolean arg1) {
1464
        return defaultService.merge(arg0, arg1);
1465
    }
1466

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

    
1475
    /**
1476
     * {@inheritDoc}
1477
     */
1478
    @Override
1479
    public List<TaxonBase> load(List<UUID> arg0, List<String> arg1) {
1480
        return defaultService.load(arg0, arg1);
1481
    }
1482

    
1483
	@Override
1484
	public List<UuidAndTitleCache<TaxonBase>> getUuidAndTitleCache(
1485
			Integer limit, String pattern) {
1486
		return defaultService.getUuidAndTitleCache(limit, pattern);
1487
	}
1488

    
1489
	@Override
1490
	public List<UuidAndTitleCache<TaxonBase>> getUuidAndTitleCacheTaxon(
1491
			Integer limit, String pattern) {
1492
		return defaultService.getUuidAndTitleCacheTaxon(limit, pattern);
1493
	}
1494

    
1495
	@Override
1496
	public List<UuidAndTitleCache<TaxonBase>> getUuidAndTitleCacheSynonym(
1497
			Integer limit, String pattern) {
1498
		return defaultService.getUuidAndTitleCacheSynonym(limit, pattern);
1499
	}
1500

    
1501
	@Override
1502
	public List<TaxonBase> loadByIds(List<Integer> idSet, List<String> propertyPaths) {
1503
		
1504
		return defaultService.loadByIds(idSet, propertyPaths);
1505
	}
1506

    
1507

    
1508
}
(10-10/11)