Project

General

Profile

Download (38.7 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.util.Collection;
13
import java.util.List;
14
import java.util.Map;
15
import java.util.Set;
16
import java.util.UUID;
17

    
18
import org.hibernate.LockOptions;
19
import org.hibernate.Session;
20
import org.hibernate.criterion.Criterion;
21
import org.hibernate.envers.query.criteria.AuditCriterion;
22

    
23
import eu.etaxonomy.cdm.api.service.DeleteResult;
24
import eu.etaxonomy.cdm.api.service.IClassificationService;
25
import eu.etaxonomy.cdm.api.service.NodeSortMode;
26
import eu.etaxonomy.cdm.api.service.UpdateResult;
27
import eu.etaxonomy.cdm.api.service.config.CreateHierarchyForClassificationConfigurator;
28
import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
29
import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
30
import eu.etaxonomy.cdm.api.service.config.TaxonDeletionConfigurator;
31
import eu.etaxonomy.cdm.api.service.dto.GroupedTaxonDTO;
32
import eu.etaxonomy.cdm.api.service.dto.IdentifiedEntityDTO;
33
import eu.etaxonomy.cdm.api.service.dto.MarkedEntityDTO;
34
import eu.etaxonomy.cdm.api.service.dto.TaxonInContextDTO;
35
import eu.etaxonomy.cdm.api.service.pager.Pager;
36
import eu.etaxonomy.cdm.common.monitor.IProgressMonitor;
37
import eu.etaxonomy.cdm.model.common.Annotation;
38
import eu.etaxonomy.cdm.model.common.DefinedTerm;
39
import eu.etaxonomy.cdm.model.common.ISourceable;
40
import eu.etaxonomy.cdm.model.common.IdentifiableSource;
41
import eu.etaxonomy.cdm.model.common.LSID;
42
import eu.etaxonomy.cdm.model.common.Marker;
43
import eu.etaxonomy.cdm.model.common.MarkerType;
44
import eu.etaxonomy.cdm.model.media.MediaRepresentation;
45
import eu.etaxonomy.cdm.model.media.Rights;
46
import eu.etaxonomy.cdm.model.name.Rank;
47
import eu.etaxonomy.cdm.model.taxon.Classification;
48
import eu.etaxonomy.cdm.model.taxon.ITaxonTreeNode;
49
import eu.etaxonomy.cdm.model.taxon.Taxon;
50
import eu.etaxonomy.cdm.model.taxon.TaxonNode;
51
import eu.etaxonomy.cdm.model.view.AuditEvent;
52
import eu.etaxonomy.cdm.model.view.AuditEventRecord;
53
import eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort;
54
import eu.etaxonomy.cdm.persistence.dto.ClassificationLookupDTO;
55
import eu.etaxonomy.cdm.persistence.dto.MergeResult;
56
import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
57
import eu.etaxonomy.cdm.persistence.query.Grouping;
58
import eu.etaxonomy.cdm.persistence.query.MatchMode;
59
import eu.etaxonomy.cdm.persistence.query.OrderHint;
60
import eu.etaxonomy.cdm.strategy.cache.common.IIdentifiableEntityCacheStrategy;
61
import eu.etaxonomy.cdm.strategy.match.IMatchStrategy;
62
import eu.etaxonomy.cdm.strategy.merge.IMergeStrategy;
63

    
64
/**
65
 * @author pplitzner
66
 * @date 27.09.2013
67
 *
68
 */
69
public class TransientClassificationService implements IClassificationService {
70

    
71
    private final IClassificationService defaultService;
72

    
73
    /**
74
     * @param defaultClassificationService
75
     */
76
    public TransientClassificationService(IClassificationService defaultClassificationService) {
77
        this.defaultService = defaultClassificationService;
78
    }
79

    
80
    /**
81
     * @param t
82
     * @param pageSize
83
     * @param pageNumber
84
     * @param sort
85
     * @param propertyPaths
86
     * @return
87
     * @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)
88
     */
89
    @Override
90
    public Pager<AuditEventRecord<Classification>> pageAuditEvents(Classification t, Integer pageSize, Integer pageNumber, AuditEventSort sort, List<String> propertyPaths) {
91
        return defaultService.pageAuditEvents(t, pageSize, pageNumber, sort, propertyPaths);
92
    }
93

    
94
    /**
95
     * @param annotatedObj
96
     * @param status
97
     * @param pageSize
98
     * @param pageNumber
99
     * @param orderHints
100
     * @param propertyPaths
101
     * @return
102
     * @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)
103
     */
104
    @Override
105
    public Pager<Annotation> getAnnotations(Classification annotatedObj, MarkerType status, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
106
        return defaultService.getAnnotations(annotatedObj, status, pageSize, pageNumber, orderHints, propertyPaths);
107
    }
108

    
109
    /**
110
     * @param uuid
111
     * @return
112
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#getTaxonNodeByUuid(java.util.UUID)
113
     */
114
    @Override
115
    public TaxonNode getTaxonNodeByUuid(UUID uuid) {
116
        return defaultService.getTaxonNodeByUuid(uuid);
117
    }
118

    
119
    /**
120
     * @param uuid
121
     * @return
122
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#getTreeNodeByUuid(java.util.UUID)
123
     */
124
    @Override
125
    public ITaxonTreeNode getTreeNodeByUuid(UUID uuid) {
126
        return defaultService.getTreeNodeByUuid(uuid);
127
    }
128

    
129
    /**
130
     *
131
     * @see eu.etaxonomy.cdm.api.service.IService#clear()
132
     */
133
    @Override
134
    public void clear() {
135
        defaultService.clear();
136
    }
137

    
138
    /**
139
     * @param limit
140
     * @param start
141
     * @param orderHints
142
     * @param propertyPaths
143
     * @return
144
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#listClassifications(java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
145
     */
146
    @Override
147
    public List<Classification> listClassifications(Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
148
        return defaultService.listClassifications(limit, start, orderHints, propertyPaths);
149
    }
150

    
151
    /**
152
     * @param t
153
     * @param lockMode
154
     * @see eu.etaxonomy.cdm.api.service.IService#lock(eu.etaxonomy.cdm.model.common.ICdmBase, org.hibernate.LockMode)
155
     */
156
    @Override
157
    public void lock(Classification t, LockOptions lockOptions) {
158
        defaultService.lock(t, lockOptions);
159
    }
160

    
161
    /**
162
     * @param t
163
     * @param lockMode
164
     * @param propertyPaths
165
     * @see eu.etaxonomy.cdm.api.service.IService#refresh(eu.etaxonomy.cdm.model.common.ICdmBase, org.hibernate.LockMode, java.util.List)
166
     */
167
    @Override
168
    public void refresh(Classification t, LockOptions lockOptions, List<String> propertyPaths) {
169
        defaultService.refresh(t, lockOptions, propertyPaths);
170
    }
171

    
172
    /**
173
     * @param taxon
174
     * @param classificationUuid
175
     * @param propertyPaths
176
     * @return
177
     * @deprecated
178
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#loadTaxonNodeByTaxon(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.UUID, java.util.List)
179
     */
180
    @Deprecated
181
    @Override
182
    public TaxonNode loadTaxonNodeByTaxon(Taxon taxon, UUID classificationUuid, List<String> propertyPaths) {
183
        return defaultService.loadTaxonNodeByTaxon(taxon, classificationUuid, propertyPaths);
184
    }
185

    
186
    /**
187
     *
188
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#updateTitleCache()
189
     */
190
    @Override
191
    public void updateTitleCache() {
192
        defaultService.updateTitleCache();
193
    }
194

    
195
    /**
196
     * @param t
197
     * @return
198
     * @see eu.etaxonomy.cdm.api.service.IVersionableService#getNextAuditEvent(eu.etaxonomy.cdm.model.common.VersionableEntity)
199
     */
200
    @Override
201
    public AuditEventRecord<Classification> getNextAuditEvent(Classification t) {
202
        return defaultService.getNextAuditEvent(t);
203
    }
204

    
205
    /**
206
     * @param annotatableEntity
207
     * @param technical
208
     * @param pageSize
209
     * @param pageNumber
210
     * @param orderHints
211
     * @param propertyPaths
212
     * @return
213
     * @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)
214
     */
215
    @Override
216
    public Pager<Marker> getMarkers(Classification annotatableEntity, Boolean technical, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
217
        return defaultService.getMarkers(annotatableEntity, technical, pageSize, pageNumber, orderHints, propertyPaths);
218
    }
219

    
220
    /**
221
     * @param clazz
222
     * @param stepSize
223
     * @param cacheStrategy
224
     * @param monitor
225
     * @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)
226
     */
227
    @Override
228
    public void updateTitleCache(Class<? extends Classification> clazz, Integer stepSize, IIdentifiableEntityCacheStrategy<Classification> cacheStrategy, IProgressMonitor monitor) {
229
        defaultService.updateTitleCache(clazz, stepSize, cacheStrategy, monitor);
230
    }
231

    
232
    /**
233
     * @param taxonNode
234
     * @param propertyPaths
235
     * @return
236
     * @deprecated
237
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#loadTaxonNode(eu.etaxonomy.cdm.model.taxon.TaxonNode, java.util.List)
238
     */
239
    @Deprecated
240
    @Override
241
    public TaxonNode loadTaxonNode(TaxonNode taxonNode, List<String> propertyPaths) {
242
        return defaultService.loadTaxonNode(taxonNode, propertyPaths);
243
    }
244

    
245
    /**
246
     * @param t
247
     * @return
248
     * @see eu.etaxonomy.cdm.api.service.IVersionableService#getPreviousAuditEvent(eu.etaxonomy.cdm.model.common.VersionableEntity)
249
     */
250
    @Override
251
    public AuditEventRecord<Classification> getPreviousAuditEvent(Classification t) {
252
        return defaultService.getPreviousAuditEvent(t);
253
    }
254

    
255
    /**
256
     * @param clazz
257
     * @return
258
     * @see eu.etaxonomy.cdm.api.service.IService#count(java.lang.Class)
259
     */
260
    @Override
261
    public int count(Class<? extends Classification> clazz) {
262
        return defaultService.count(clazz);
263
    }
264

    
265
    /**
266
     * @param clazz
267
     * @param from
268
     * @param to
269
     * @param criteria
270
     * @param pageSize
271
     * @param pageValue
272
     * @param sort
273
     * @param propertyPaths
274
     * @return
275
     * @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)
276
     */
277
    @Override
278
    public Pager<AuditEventRecord<Classification>> pageAuditEvents(Class<? extends Classification> clazz, AuditEvent from, AuditEvent to, List<AuditCriterion> criteria, Integer pageSize, Integer pageValue, AuditEventSort sort, List<String> propertyPaths) {
279
        return defaultService.pageAuditEvents(clazz, from, to, criteria, pageSize, pageValue, sort, propertyPaths);
280
    }
281

    
282
    /**
283
     * @param lsid
284
     * @return
285
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#find(eu.etaxonomy.cdm.model.common.LSID)
286
     */
287
    @Override
288
    public Classification find(LSID lsid) {
289
        return defaultService.find(lsid);
290
    }
291

    
292
    /**
293
     * @param persistentObject
294
     * @return
295
     * @see eu.etaxonomy.cdm.api.service.IService#delete(eu.etaxonomy.cdm.model.common.ICdmBase)
296
     */
297
    @Override
298
    public DeleteResult delete(Classification persistentObject) {
299
        return defaultService.delete(persistentObject);
300
    }
301

    
302
    /**
303
     * @param clazz
304
     * @param technical
305
     * @param pageSize
306
     * @param pageNumber
307
     * @param propertyPaths
308
     * @return
309
     * @see eu.etaxonomy.cdm.api.service.IAnnotatableService#groupMarkers(java.lang.Class, java.lang.Boolean, java.lang.Integer, java.lang.Integer, java.util.List)
310
     */
311
    @Override
312
    public List<Object[]> groupMarkers(Class<? extends Classification> clazz, Boolean technical, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
313
        return defaultService.groupMarkers(clazz, technical, pageSize, pageNumber, propertyPaths);
314
    }
315

    
316
    /**
317
     * @param uuid
318
     * @return
319
     * @see eu.etaxonomy.cdm.api.service.IService#exists(java.util.UUID)
320
     */
321
    @Override
322
    public boolean exists(UUID uuid) {
323
        return defaultService.exists(uuid);
324
    }
325

    
326
    /**
327
     * @param x
328
     * @param y
329
     * @return
330
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#replace(eu.etaxonomy.cdm.model.common.IdentifiableEntity, eu.etaxonomy.cdm.model.common.IdentifiableEntity)
331
     */
332
    @Override
333
    public Classification replace(Classification x, Classification y) {
334
        return defaultService.replace(x, y);
335
    }
336

    
337
    /**
338
     * @param uuidSet
339
     * @return
340
     * @see eu.etaxonomy.cdm.api.service.IService#find(java.util.Set)
341
     */
342
    @Override
343
    public List<Classification> find(Set<UUID> uuidSet) {
344
        return defaultService.find(uuidSet);
345
    }
346

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

    
360
    /**
361
     * @param classification
362
     * @param rank
363
     * @param pageSize
364
     * @param pageIndex
365
     * @param propertyPaths
366
     * @return
367
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#listRankSpecificRootNodes(eu.etaxonomy.cdm.model.taxon.Classification, eu.etaxonomy.cdm.model.name.Rank, java.lang.Integer, java.lang.Integer, java.util.List)
368
     */
369
    @Override
370
    public List<TaxonNode> listRankSpecificRootNodes(Classification classification, Rank rank, Integer pageSize, Integer pageIndex, List<String> propertyPaths) {
371
        return defaultService.listRankSpecificRootNodes(classification, rank, pageSize, pageIndex, propertyPaths);
372
    }
373

    
374
    /**
375
     * @param uuid
376
     * @return
377
     * @see eu.etaxonomy.cdm.api.service.IService#find(java.util.UUID)
378
     */
379
    @Override
380
    public Classification find(UUID uuid) {
381
        return defaultService.find(uuid);
382
    }
383

    
384
    /**
385
     * @param id
386
     * @return
387
     * @see eu.etaxonomy.cdm.api.service.IService#find(int)
388
     */
389
    @Override
390
    public Classification find(int id) {
391
        return defaultService.find(id);
392
    }
393

    
394
    /**
395
     * @param t
396
     * @param pageSize
397
     * @param pageNumber
398
     * @param propertyPaths
399
     * @return
400
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getRights(eu.etaxonomy.cdm.model.common.IdentifiableEntity, java.lang.Integer, java.lang.Integer, java.util.List)
401
     */
402
    @Override
403
    public Pager<Rights> getRights(Classification t, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
404
        return defaultService.getRights(t, pageSize, pageNumber, propertyPaths);
405
    }
406

    
407
    /**
408
     * @param clazz
409
     * @param technical
410
     * @return
411
     * @see eu.etaxonomy.cdm.api.service.IAnnotatableService#countMarkers(java.lang.Class, java.lang.Boolean)
412
     */
413
    @Override
414
    public int countMarkers(Class<? extends Classification> clazz, Boolean technical) {
415
        return defaultService.countMarkers(clazz, technical);
416
    }
417

    
418
    /**
419
     * @param idSet
420
     * @return
421
     * @see eu.etaxonomy.cdm.api.service.IService#findById(java.util.Set)
422
     */
423
    @Override
424
    public List<Classification> findById(Set<Integer> idSet) {
425
        return defaultService.findById(idSet);
426
    }
427

    
428
    /**
429
     * @param clazz
430
     * @param idInSource
431
     * @param idNamespace
432
     * @return
433
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getSourcedObjectByIdInSource(java.lang.Class, java.lang.String, java.lang.String)
434
     */
435
    @Override
436
    public ISourceable getSourcedObjectByIdInSource(Class clazz, String idInSource, String idNamespace) {
437
        return defaultService.getSourcedObjectByIdInSource(clazz, idInSource, idNamespace);
438
    }
439

    
440
    /**
441
     * @param classification
442
     * @param rank
443
     * @param pageSize
444
     * @param pageIndex
445
     * @param propertyPaths
446
     * @return
447
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#pageRankSpecificRootNodes(eu.etaxonomy.cdm.model.taxon.Classification, eu.etaxonomy.cdm.model.name.Rank, java.lang.Integer, java.lang.Integer, java.util.List)
448
     */
449
    @Override
450
    public Pager<TaxonNode> pageRankSpecificRootNodes(Classification classification, Rank rank, Integer pageSize, Integer pageIndex, List<String> propertyPaths) {
451
        return defaultService.pageRankSpecificRootNodes(classification, rank, pageSize, pageIndex, propertyPaths);
452
    }
453

    
454
    /**
455
     * @return
456
     * @see eu.etaxonomy.cdm.api.service.IService#getSession()
457
     */
458
    @Override
459
    public Session getSession() {
460
        return defaultService.getSession();
461
    }
462

    
463
    /**
464
     * @param clazz
465
     * @param limit
466
     * @param start
467
     * @param groups
468
     * @param propertyPaths
469
     * @return
470
     * @see eu.etaxonomy.cdm.api.service.IService#group(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
471
     */
472
    @Override
473
    public List<Object[]> group(Class<? extends Classification> clazz, Integer limit, Integer start, List<Grouping> groups, List<String> propertyPaths) {
474
        return defaultService.group(clazz, limit, start, groups, propertyPaths);
475
    }
476

    
477
    /**
478
     * @param clazz
479
     * @param queryString
480
     * @param matchmode
481
     * @param criteria
482
     * @param pageSize
483
     * @param pageNumber
484
     * @param orderHints
485
     * @param propertyPaths
486
     * @return
487
     * @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)
488
     */
489
    @Override
490
    public Pager<Classification> findByTitle(Class<? extends Classification> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
491
        return defaultService.findByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
492
    }
493

    
494
    /**
495
     * @param taxonNode
496
     * @param baseRank
497
     * @param propertyPaths
498
     * @return
499
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#loadTreeBranch(eu.etaxonomy.cdm.model.taxon.TaxonNode, eu.etaxonomy.cdm.model.name.Rank, java.util.List)
500
     */
501
    @Override
502
    public List<TaxonNode> loadTreeBranch(TaxonNode taxonNode, Rank baseRank, List<String> propertyPaths) {
503
        return defaultService.loadTreeBranch(taxonNode, baseRank, propertyPaths);
504
    }
505

    
506
    /**
507
     * @param type
508
     * @param limit
509
     * @param start
510
     * @param orderHints
511
     * @param propertyPaths
512
     * @return
513
     * @see eu.etaxonomy.cdm.api.service.IService#list(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
514
     */
515
    @Override
516
    public <S extends Classification> List<S> list(Class<S> type, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
517
        return defaultService.list(type, limit, start, orderHints, propertyPaths);
518
    }
519

    
520
    /**
521
     * @param taxon
522
     * @param classification
523
     * @param baseRank
524
     * @param propertyPaths
525
     * @return
526
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#loadTreeBranchToTaxon(eu.etaxonomy.cdm.model.taxon.Taxon, eu.etaxonomy.cdm.model.taxon.Classification, eu.etaxonomy.cdm.model.name.Rank, java.util.List)
527
     */
528
    @Override
529
    public List<TaxonNode> loadTreeBranchToTaxon(Taxon taxon, Classification classification, Rank baseRank, List<String> propertyPaths) {
530
        return defaultService.loadTreeBranchToTaxon(taxon, classification, baseRank, propertyPaths);
531
    }
532

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

    
543
    /**
544
     * @param clazz
545
     * @param queryString
546
     * @param matchmode
547
     * @param criteria
548
     * @return
549
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#countByTitle(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.persistence.query.MatchMode, java.util.List)
550
     */
551
    @Override
552
    public Integer countByTitle(Class<? extends Classification> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria) {
553
        return defaultService.countByTitle(clazz, queryString, matchmode, criteria);
554
    }
555

    
556
    /**
557
     * @param uuid
558
     * @return
559
     * @see eu.etaxonomy.cdm.api.service.IService#load(java.util.UUID)
560
     */
561
    @Override
562
    public Classification load(UUID uuid) {
563
        return defaultService.load(uuid);
564
    }
565

    
566
    /**
567
     * @param uuid
568
     * @param propertyPaths
569
     * @return
570
     * @see eu.etaxonomy.cdm.api.service.IService#load(java.util.UUID, java.util.List)
571
     */
572
    @Override
573
    public Classification load(UUID uuid, List<String> propertyPaths) {
574
        return defaultService.load(uuid, propertyPaths);
575
    }
576

    
577
    /**
578
     * @param configurator
579
     * @return
580
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#countByTitle(eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator)
581
     */
582
    @Override
583
    public Integer countByTitle(IIdentifiableEntityServiceConfigurator<Classification> configurator) {
584
        return defaultService.countByTitle(configurator);
585
    }
586

    
587
    /**
588
     * @param transientObject
589
     * @return
590
     * @see eu.etaxonomy.cdm.api.service.IService#merge(eu.etaxonomy.cdm.model.common.ICdmBase)
591
     */
592
    @Override
593
    public Classification merge(Classification transientObject) {
594
        return defaultService.merge(transientObject);
595
    }
596

    
597
    /**
598
     * @param clazz
599
     * @param queryString
600
     * @param matchmode
601
     * @param criteria
602
     * @param pageSize
603
     * @param pageNumber
604
     * @param orderHints
605
     * @param propertyPaths
606
     * @return
607
     * @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)
608
     */
609
    @Override
610
    public List<Classification> listByTitle(Class<? extends Classification> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
611
        return defaultService.listByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
612
    }
613

    
614
    /**
615
     * @param type
616
     * @param pageSize
617
     * @param pageNumber
618
     * @param orderHints
619
     * @param propertyPaths
620
     * @return
621
     * @see eu.etaxonomy.cdm.api.service.IService#page(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
622
     */
623
    @Override
624
    public <S extends Classification> Pager<S> page(Class<S> type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
625
        return defaultService.page(type, pageSize, pageNumber, orderHints, propertyPaths);
626
    }
627

    
628
    /**
629
     * @param taxonNode
630
     * @param propertyPaths
631
     * @return
632
     * @deprecated
633
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#loadChildNodesOfTaxonNode(eu.etaxonomy.cdm.model.taxon.TaxonNode, java.util.List)
634
     */
635
    @Deprecated
636
    @Override
637
    public List<TaxonNode> loadChildNodesOfTaxonNode(TaxonNode taxonNode, List<String> propertyPaths) {
638
        return defaultService.loadChildNodesOfTaxonNode(taxonNode, propertyPaths);
639
    }
640

    
641

    
642
    /**
643
     * @param taxon
644
     * @param taxTree
645
     * @param propertyPaths
646
     * @param size
647
     * @param height
648
     * @param widthOrDuration
649
     * @param mimeTypes
650
     * @return
651
     * @deprecated
652
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#getAllMediaForChildNodes(eu.etaxonomy.cdm.model.taxon.Taxon, eu.etaxonomy.cdm.model.taxon.Classification, java.util.List, int, int, int, java.lang.String[])
653
     */
654
    @Deprecated
655
    @Override
656
    public Map<UUID, List<MediaRepresentation>> getAllMediaForChildNodes(Taxon taxon, Classification taxTree, List<String> propertyPaths, int size, int height, int widthOrDuration, String[] mimeTypes) {
657
        return defaultService.getAllMediaForChildNodes(taxon, taxTree, propertyPaths, size, height, widthOrDuration, mimeTypes);
658
    }
659

    
660
    /**
661
     * @param persistentObject
662
     * @return
663
     * @see eu.etaxonomy.cdm.api.service.IService#refresh(eu.etaxonomy.cdm.model.common.ICdmBase)
664
     */
665
    @Override
666
    public UUID refresh(Classification persistentObject) {
667
        return defaultService.refresh(persistentObject);
668
    }
669

    
670
    /**
671
     * @param clazz
672
     * @param queryString
673
     * @param matchmode
674
     * @param criteria
675
     * @param pageSize
676
     * @param pageNumber
677
     * @param orderHints
678
     * @param propertyPaths
679
     * @return
680
     * @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)
681
     */
682
    @Override
683
    public List<Classification> listByReferenceTitle(Class<? extends Classification> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
684
        return defaultService.listByReferenceTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
685
    }
686

    
687
    /**
688
     * @param taxonNode
689
     * @param propertyPaths
690
     * @param size
691
     * @param height
692
     * @param widthOrDuration
693
     * @param mimeTypes
694
     * @return
695
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#getAllMediaForChildNodes(eu.etaxonomy.cdm.model.taxon.TaxonNode, java.util.List, int, int, int, java.lang.String[])
696
     */
697
    @Override
698
    public Map<UUID, List<MediaRepresentation>> getAllMediaForChildNodes(TaxonNode taxonNode, List<String> propertyPaths, int size, int height, int widthOrDuration, String[] mimeTypes) {
699
        return defaultService.getAllMediaForChildNodes(taxonNode, propertyPaths, size, height, widthOrDuration, mimeTypes);
700
    }
701

    
702
    /**
703
     * @param tableName
704
     * @param limit
705
     * @param start
706
     * @return
707
     * @see eu.etaxonomy.cdm.api.service.IService#rows(java.lang.String, int, int)
708
     */
709
    @Override
710
    public List<Classification> rows(String tableName, int limit, int start) {
711
        return defaultService.rows(tableName, limit, start);
712
    }
713

    
714
    /**
715
     * @param newInstances
716
     * @return
717
     * @see eu.etaxonomy.cdm.api.service.IService#save(java.util.Collection)
718
     */
719
    @Override
720
    public Map<UUID, Classification> save(Collection<Classification> newInstances) {
721
        return null;
722
    }
723

    
724
    /**
725
     * @param taxonNode
726
     * @return
727
     * @deprecated
728
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#removeTaxonNode(eu.etaxonomy.cdm.model.taxon.TaxonNode)
729
     */
730
    @Deprecated
731
    @Override
732
    public UUID removeTaxonNode(TaxonNode taxonNode) {
733
        return defaultService.removeTaxonNode(taxonNode);
734
    }
735

    
736
    /**
737
     * @param taxonNode
738
     * @return
739
     * @deprecated
740
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#saveTaxonNode(eu.etaxonomy.cdm.model.taxon.TaxonNode)
741
     */
742
    @Deprecated
743
    @Override
744
    public UUID saveTaxonNode(TaxonNode taxonNode) {
745
        return null;
746
    }
747

    
748
    /**
749
     * @param newInstance
750
     * @return
751
     * @see eu.etaxonomy.cdm.api.service.IService#save(eu.etaxonomy.cdm.model.common.ICdmBase)
752
     */
753
    @Override
754
    public Classification save(Classification newInstance) {
755
        return null;
756
    }
757

    
758
    /**
759
     * @param taxonNodeCollection
760
     * @return
761
     * @deprecated
762
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#saveTaxonNodeAll(java.util.Collection)
763
     */
764
    @Deprecated
765
    @Override
766
    public Map<UUID, TaxonNode> saveTaxonNodeAll(Collection<TaxonNode> taxonNodeCollection) {
767
        return null;
768
    }
769

    
770
    /**
771
     * @param transientObject
772
     * @return
773
     * @see eu.etaxonomy.cdm.api.service.IService#saveOrUpdate(eu.etaxonomy.cdm.model.common.ICdmBase)
774
     */
775
    @Override
776
    public UUID saveOrUpdate(Classification transientObject) {
777
        return null;
778
    }
779

    
780
    /**
781
     * @param treeNode
782
     * @return
783
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#removeTreeNode(eu.etaxonomy.cdm.model.taxon.ITaxonTreeNode)
784
     */
785
    @Override
786
    public UUID removeTreeNode(ITaxonTreeNode treeNode) {
787
        return defaultService.removeTreeNode(treeNode);
788
    }
789

    
790
    /**
791
     * @param clazz
792
     * @param queryString
793
     * @param pageSize
794
     * @param pageNumber
795
     * @param orderHints
796
     * @param propertyPaths
797
     * @return
798
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#search(java.lang.Class, java.lang.String, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
799
     */
800
    @Override
801
    public Pager<Classification> search(Class<? extends Classification> clazz, String queryString, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
802
        return defaultService.search(clazz, queryString, pageSize, pageNumber, orderHints, propertyPaths);
803
    }
804

    
805
    /**
806
     * @param treeNode
807
     * @return
808
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#saveTreeNode(eu.etaxonomy.cdm.model.taxon.ITaxonTreeNode)
809
     */
810
    @Override
811
    public UUID saveTreeNode(ITaxonTreeNode treeNode) {
812
        return null;
813
    }
814

    
815
    /**
816
     * @param transientObjects
817
     * @return
818
     * @see eu.etaxonomy.cdm.api.service.IService#saveOrUpdate(java.util.Collection)
819
     */
820
    @Override
821
    public Map<UUID, Classification> saveOrUpdate(Collection<Classification> transientObjects) {
822
        return null;
823
    }
824

    
825
    /**
826
     * @return
827
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#getAllNodes()
828
     */
829
    @Override
830
    public List<TaxonNode> getAllNodes() {
831
        return defaultService.getAllNodes();
832
    }
833

    
834
    /**
835
     * @param transientObject
836
     * @return
837
     * @see eu.etaxonomy.cdm.api.service.IService#update(eu.etaxonomy.cdm.model.common.ICdmBase)
838
     */
839
    @Override
840
    public UUID update(Classification transientObject) {
841
        return defaultService.update(transientObject);
842
    }
843

    
844
    /**
845
     * @param example
846
     * @param includeProperties
847
     * @param limit
848
     * @param start
849
     * @param orderHints
850
     * @param propertyPaths
851
     * @return
852
     * @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)
853
     */
854
    @Override
855
    public List<Classification> list(Classification example, Set<String> includeProperties, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
856
        return defaultService.list(example, includeProperties, limit, start, orderHints, propertyPaths);
857
    }
858

    
859
    /**
860
     * @param clazz
861
     * @param matchStrategy
862
     * @param mergeStrategy
863
     * @return
864
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#deduplicate(java.lang.Class, eu.etaxonomy.cdm.strategy.match.IMatchStrategy, eu.etaxonomy.cdm.strategy.merge.IMergeStrategy)
865
     */
866
    @Override
867
    public int deduplicate(Class<? extends Classification> clazz, IMatchStrategy matchStrategy, IMergeStrategy mergeStrategy) {
868
        return defaultService.deduplicate(clazz, matchStrategy, mergeStrategy);
869
    }
870

    
871
    /**
872
     * @param clazz
873
     * @param queryString
874
     * @param pageSize
875
     * @param pageNumber
876
     * @param orderHints
877
     * @param matchMode
878
     * @return
879
     * @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)
880
     */
881
    @Override
882
    public Pager<Classification> findTitleCache(Class<? extends Classification> clazz, String queryString, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, MatchMode matchMode) {
883
        return defaultService.findTitleCache(clazz, queryString, pageSize, pageNumber, orderHints, matchMode);
884
    }
885

    
886
    /* (non-Javadoc)
887
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#listChildNodesOfTaxon(java.util.UUID, java.util.UUID, java.lang.Integer, java.lang.Integer, java.util.List)
888
     */
889
    @Override
890
    public List<TaxonNode> listChildNodesOfTaxon(UUID taxonUuid, UUID classificationUuid, Integer pageSize,
891
            Integer pageIndex, List<String> propertyPaths) {
892
        return defaultService.listChildNodesOfTaxon(taxonUuid, classificationUuid, pageSize, pageIndex, propertyPaths);
893
    }
894

    
895
	@Override
896
	public DeleteResult isDeletable(Classification object,
897
			DeleteConfiguratorBase config) {
898

    
899
		return defaultService.isDeletable(object, config);
900
	}
901

    
902
	@Override
903
	public Classification findWithoutFlush(UUID uuid) {
904
		return defaultService.findWithoutFlush(uuid);
905
	}
906

    
907

    
908
	@Override
909
	public <S extends Classification>  Pager<IdentifiedEntityDTO<S>> findByIdentifier(Class<S> clazz, String identifier, DefinedTerm identifierType, MatchMode matchmode, boolean includeEntity, Integer pageSize, Integer pageNumber, List<String> propertyPaths){
910
		return defaultService.findByIdentifier(clazz, identifier, identifierType, matchmode, includeEntity, pageSize, pageNumber, propertyPaths);
911
	}
912

    
913
    @Override
914
    public UpdateResult createHierarchyInClassification(Classification arg1, CreateHierarchyForClassificationConfigurator arg2) {
915
       return defaultService.createHierarchyInClassification(arg1, arg2);
916
    }
917

    
918
    /* (non-Javadoc)
919
     * @see eu.etaxonomy.cdm.api.service.IService#delete(java.util.UUID)
920
     */
921
    @Override
922
    public DeleteResult delete(UUID arg0) {
923
        return defaultService.delete(arg0);
924
    }
925

    
926
    /* (non-Javadoc)
927
     * @see eu.etaxonomy.cdm.api.service.IService#delete(java.util.Collection)
928
     */
929
    @Override
930
    public DeleteResult delete(Collection<UUID> arg0) {
931
        return defaultService.delete(arg0);
932
    }
933

    
934
    /* (non-Javadoc)
935
     * @see eu.etaxonomy.cdm.api.service.IService#merge(java.util.List)
936
     */
937
    @Override
938
    public List<Classification> merge(List<Classification> arg0) {
939
        return defaultService.merge(arg0);
940
    }
941

    
942
    /* (non-Javadoc)
943
     * @see eu.etaxonomy.cdm.api.service.IService#merge(java.util.List, boolean)
944
     */
945
    @Override
946
    public List<MergeResult<Classification>> merge(List<Classification> arg0, boolean arg1) {
947
        return defaultService.merge(arg0, arg1);
948
    }
949

    
950
    /* (non-Javadoc)
951
     * @see eu.etaxonomy.cdm.api.service.IService#merge(eu.etaxonomy.cdm.model.common.ICdmBase, boolean)
952
     */
953
    @Override
954
    public MergeResult<Classification> merge(Classification arg0, boolean arg1) {
955
        return defaultService.merge(arg0, arg1);
956
    }
957

    
958
    /* (non-Javadoc)
959
     * @see eu.etaxonomy.cdm.api.service.IService#loadWithUpdate(java.util.UUID)
960
     */
961
    @Override
962
    public Classification loadWithUpdate(UUID arg0) {
963
        return defaultService.loadWithUpdate(arg0);
964
    }
965

    
966

    
967
	@Override
968
	public List<UuidAndTitleCache<TaxonNode>> getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(
969
			UUID classificationUuid) {
970

    
971
		return defaultService.getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(classificationUuid);
972
	}
973

    
974
    /**
975
     * {@inheritDoc}
976
     */
977
    @Override
978
    public List<Classification> load(List<UUID> arg0, List<String> arg1) {
979
        return defaultService.load(arg0, arg1);
980
    }
981

    
982
	@Override
983
	public List<UuidAndTitleCache<Classification>> getUuidAndTitleCache(Integer limit, String pattern) {
984
		return defaultService.getUuidAndTitleCache(null, null);
985
	}
986

    
987
	@Override
988
	public List<TaxonNode> listSiblingsOfTaxon(UUID taxonUuid,
989
			UUID classificationUuid, Integer pageSize, Integer pageIndex,
990
			List<String> propertyPaths) {
991

    
992
		return defaultService.listSiblingsOfTaxon(taxonUuid, classificationUuid, pageSize, pageIndex, propertyPaths);
993
	}
994

    
995
	@Override
996
	public Pager<TaxonNode> pageSiblingsOfTaxon(UUID taxonUuid,
997
			UUID classificationUuid, Integer pageSize, Integer pageIndex,
998
			List<String> propertyPaths) {
999
		return defaultService.pageSiblingsOfTaxon(taxonUuid, classificationUuid, pageSize, pageIndex, propertyPaths);
1000
	}
1001

    
1002
	@Override
1003
	public List<Classification> loadByIds(List<Integer> idSet, List<String> propertyPaths) {
1004

    
1005
		return defaultService.loadByIds(idSet, propertyPaths);
1006
	}
1007

    
1008
	@Override
1009
	public ClassificationLookupDTO classificationLookup(Classification arg0) {
1010

    
1011
		return defaultService.classificationLookup(arg0);
1012
	}
1013

    
1014
	@Override
1015
	public DeleteResult delete(UUID arg0, TaxonDeletionConfigurator arg1) {
1016

    
1017
		return defaultService.delete(arg0, arg1);
1018
	}
1019

    
1020
	@Override
1021
	public List<GroupedTaxonDTO> groupTaxaByHigherTaxon(List<UUID> taxonUuids,
1022
			UUID classificationUuid, Rank minRank, Rank maxRank) {
1023
		return defaultService.groupTaxaByHigherTaxon(taxonUuids, classificationUuid, minRank, maxRank);
1024
	}
1025

    
1026
	@Override
1027
	public TaxonNode getRootNode(UUID arg0) {
1028
		return defaultService.getRootNode(arg0);
1029
	}
1030

    
1031
	@Override
1032
	public List<UuidAndTitleCache<TaxonNode>> getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(
1033
			Classification classification) {
1034
		return defaultService.getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(classification);
1035

    
1036
	}
1037

    
1038
	@Override
1039
	public List<UuidAndTitleCache<TaxonNode>> getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(
1040
			UUID classificationUuid, Integer limit, String pattern) {
1041
		
1042
		return defaultService.getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(classificationUuid, limit, pattern);
1043
	}
1044

    
1045
	@Override
1046
	public List<UuidAndTitleCache<TaxonNode>> getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(
1047
			Classification classification, Integer limit, String pattern) {
1048
		// TODO Auto-generated method stub
1049
		return defaultService.getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(classification, limit, pattern);
1050
	}
1051

    
1052
	@Override
1053
	public <S extends Classification> Pager<MarkedEntityDTO<S>> findByMarker(
1054
			Class<S> arg0, MarkerType arg1, Boolean arg2, boolean arg3,
1055
			Integer arg4, Integer arg5, List<String> arg6) {
1056
		// TODO Auto-generated method stub
1057
		return null;
1058
	}
1059

    
1060
	@Override
1061
	public UUID getTaxonNodeUuidByTaxonUuid(UUID arg0, UUID arg1) {
1062
		// TODO Auto-generated method stub
1063
		return null;
1064
	}
1065

    
1066
	@Override
1067
	public TaxonInContextDTO getTaxonInContext(UUID arg0, UUID arg1,
1068
			Boolean arg2, Boolean arg3, List<UUID> arg4, NodeSortMode arg5) {
1069
		// TODO Auto-generated method stub
1070
		return null;
1071
	}
1072

    
1073
	@Override
1074
	public <S extends Classification> List<UuidAndTitleCache<S>> getUuidAndTitleCache(
1075
			Class<S> arg0, Integer arg1, String arg2) {
1076
		// TODO Auto-generated method stub
1077
		return null;
1078
	}
1079

    
1080
   
1081

    
1082

    
1083
}
(3-3/11)