Project

General

Profile

Download (34.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.LockMode;
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.IClassificationService;
24
import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
25
import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
26
import eu.etaxonomy.cdm.api.service.exception.ReferencedObjectUndeletableException;
27
import eu.etaxonomy.cdm.api.service.pager.Pager;
28
import eu.etaxonomy.cdm.common.monitor.IProgressMonitor;
29
import eu.etaxonomy.cdm.model.common.Annotation;
30
import eu.etaxonomy.cdm.model.common.ISourceable;
31
import eu.etaxonomy.cdm.model.common.IdentifiableSource;
32
import eu.etaxonomy.cdm.model.common.LSID;
33
import eu.etaxonomy.cdm.model.common.Marker;
34
import eu.etaxonomy.cdm.model.common.MarkerType;
35
import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
36
import eu.etaxonomy.cdm.model.media.MediaRepresentation;
37
import eu.etaxonomy.cdm.model.media.Rights;
38
import eu.etaxonomy.cdm.model.name.Rank;
39
import eu.etaxonomy.cdm.model.taxon.Classification;
40
import eu.etaxonomy.cdm.model.taxon.ITaxonTreeNode;
41
import eu.etaxonomy.cdm.model.taxon.Taxon;
42
import eu.etaxonomy.cdm.model.taxon.TaxonNode;
43
import eu.etaxonomy.cdm.model.view.AuditEvent;
44
import eu.etaxonomy.cdm.model.view.AuditEventRecord;
45
import eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort;
46
import eu.etaxonomy.cdm.persistence.query.Grouping;
47
import eu.etaxonomy.cdm.persistence.query.MatchMode;
48
import eu.etaxonomy.cdm.persistence.query.OrderHint;
49
import eu.etaxonomy.cdm.strategy.cache.common.IIdentifiableEntityCacheStrategy;
50
import eu.etaxonomy.cdm.strategy.match.IMatchStrategy;
51
import eu.etaxonomy.cdm.strategy.merge.IMergeStrategy;
52

    
53
/**
54
 * @author pplitzner
55
 * @date 27.09.2013
56
 *
57
 */
58
public class TransientClassificationService implements IClassificationService {
59

    
60
    private final IClassificationService defaultClassificationService;
61

    
62
    /**
63
     * @param defaultClassificationService
64
     */
65
    public TransientClassificationService(IClassificationService defaultClassificationService) {
66
        this.defaultClassificationService = defaultClassificationService;
67
    }
68

    
69
    /**
70
     * @param t
71
     * @param pageSize
72
     * @param pageNumber
73
     * @param sort
74
     * @param propertyPaths
75
     * @return
76
     * @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)
77
     */
78
    @Override
79
    public Pager<AuditEventRecord<Classification>> pageAuditEvents(Classification t, Integer pageSize, Integer pageNumber, AuditEventSort sort, List<String> propertyPaths) {
80
        return defaultClassificationService.pageAuditEvents(t, pageSize, pageNumber, sort, propertyPaths);
81
    }
82

    
83
    /**
84
     * @param annotatedObj
85
     * @param status
86
     * @param pageSize
87
     * @param pageNumber
88
     * @param orderHints
89
     * @param propertyPaths
90
     * @return
91
     * @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)
92
     */
93
    @Override
94
    public Pager<Annotation> getAnnotations(Classification annotatedObj, MarkerType status, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
95
        return defaultClassificationService.getAnnotations(annotatedObj, status, pageSize, pageNumber, orderHints, propertyPaths);
96
    }
97

    
98
    /**
99
     * @param uuid
100
     * @return
101
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#getTaxonNodeByUuid(java.util.UUID)
102
     */
103
    @Override
104
    public TaxonNode getTaxonNodeByUuid(UUID uuid) {
105
        return defaultClassificationService.getTaxonNodeByUuid(uuid);
106
    }
107

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

    
118
    /**
119
     *
120
     * @see eu.etaxonomy.cdm.api.service.IService#clear()
121
     */
122
    @Override
123
    public void clear() {
124
        defaultClassificationService.clear();
125
    }
126

    
127
    /**
128
     * @param limit
129
     * @param start
130
     * @param orderHints
131
     * @param propertyPaths
132
     * @return
133
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#listClassifications(java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
134
     */
135
    @Override
136
    public List<Classification> listClassifications(Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
137
        return defaultClassificationService.listClassifications(limit, start, orderHints, propertyPaths);
138
    }
139

    
140
    /**
141
     * @param t
142
     * @param lockMode
143
     * @see eu.etaxonomy.cdm.api.service.IService#lock(eu.etaxonomy.cdm.model.common.ICdmBase, org.hibernate.LockMode)
144
     */
145
    @Override
146
    public void lock(Classification t, LockMode lockMode) {
147
        defaultClassificationService.lock(t, lockMode);
148
    }
149

    
150
    /**
151
     * @param t
152
     * @param lockMode
153
     * @param propertyPaths
154
     * @see eu.etaxonomy.cdm.api.service.IService#refresh(eu.etaxonomy.cdm.model.common.ICdmBase, org.hibernate.LockMode, java.util.List)
155
     */
156
    @Override
157
    public void refresh(Classification t, LockMode lockMode, List<String> propertyPaths) {
158
        defaultClassificationService.refresh(t, lockMode, propertyPaths);
159
    }
160

    
161
    /**
162
     * @param taxon
163
     * @param classificationUuid
164
     * @param propertyPaths
165
     * @return
166
     * @deprecated
167
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#loadTaxonNodeByTaxon(eu.etaxonomy.cdm.model.taxon.Taxon, java.util.UUID, java.util.List)
168
     */
169
    @Deprecated
170
    @Override
171
    public TaxonNode loadTaxonNodeByTaxon(Taxon taxon, UUID classificationUuid, List<String> propertyPaths) {
172
        return defaultClassificationService.loadTaxonNodeByTaxon(taxon, classificationUuid, propertyPaths);
173
    }
174

    
175
    /**
176
     *
177
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#updateTitleCache()
178
     */
179
    @Override
180
    public void updateTitleCache() {
181
        defaultClassificationService.updateTitleCache();
182
    }
183

    
184
    /**
185
     * @param t
186
     * @return
187
     * @see eu.etaxonomy.cdm.api.service.IVersionableService#getNextAuditEvent(eu.etaxonomy.cdm.model.common.VersionableEntity)
188
     */
189
    @Override
190
    public AuditEventRecord<Classification> getNextAuditEvent(Classification t) {
191
        return defaultClassificationService.getNextAuditEvent(t);
192
    }
193

    
194
    /**
195
     * @param annotatableEntity
196
     * @param technical
197
     * @param pageSize
198
     * @param pageNumber
199
     * @param orderHints
200
     * @param propertyPaths
201
     * @return
202
     * @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)
203
     */
204
    @Override
205
    public Pager<Marker> getMarkers(Classification annotatableEntity, Boolean technical, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
206
        return defaultClassificationService.getMarkers(annotatableEntity, technical, pageSize, pageNumber, orderHints, propertyPaths);
207
    }
208

    
209
    /**
210
     * @param clazz
211
     * @param stepSize
212
     * @param cacheStrategy
213
     * @param monitor
214
     * @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)
215
     */
216
    @Override
217
    public void updateTitleCache(Class<? extends Classification> clazz, Integer stepSize, IIdentifiableEntityCacheStrategy<Classification> cacheStrategy, IProgressMonitor monitor) {
218
        defaultClassificationService.updateTitleCache(clazz, stepSize, cacheStrategy, monitor);
219
    }
220

    
221
    /**
222
     * @param taxonNode
223
     * @param propertyPaths
224
     * @return
225
     * @deprecated
226
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#loadTaxonNode(eu.etaxonomy.cdm.model.taxon.TaxonNode, java.util.List)
227
     */
228
    @Deprecated
229
    @Override
230
    public TaxonNode loadTaxonNode(TaxonNode taxonNode, List<String> propertyPaths) {
231
        return defaultClassificationService.loadTaxonNode(taxonNode, propertyPaths);
232
    }
233

    
234
    /**
235
     * @param t
236
     * @return
237
     * @see eu.etaxonomy.cdm.api.service.IVersionableService#getPreviousAuditEvent(eu.etaxonomy.cdm.model.common.VersionableEntity)
238
     */
239
    @Override
240
    public AuditEventRecord<Classification> getPreviousAuditEvent(Classification t) {
241
        return defaultClassificationService.getPreviousAuditEvent(t);
242
    }
243

    
244
    /**
245
     * @param classification
246
     * @param rank
247
     * @param limit
248
     * @param start
249
     * @param propertyPaths
250
     * @return
251
     * @deprecated
252
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#loadRankSpecificRootNodes(eu.etaxonomy.cdm.model.taxon.Classification, eu.etaxonomy.cdm.model.name.Rank, java.lang.Integer, java.lang.Integer, java.util.List)
253
     */
254
    @Deprecated
255
    @Override
256
    public List<TaxonNode> loadRankSpecificRootNodes(Classification classification, Rank rank, Integer limit, Integer start, List<String> propertyPaths) {
257
        return defaultClassificationService.loadRankSpecificRootNodes(classification, rank, limit, start, propertyPaths);
258
    }
259

    
260
    /**
261
     * @param clazz
262
     * @return
263
     * @see eu.etaxonomy.cdm.api.service.IService#count(java.lang.Class)
264
     */
265
    @Override
266
    public int count(Class<? extends Classification> clazz) {
267
        return defaultClassificationService.count(clazz);
268
    }
269

    
270
    /**
271
     * @param clazz
272
     * @param from
273
     * @param to
274
     * @param criteria
275
     * @param pageSize
276
     * @param pageValue
277
     * @param sort
278
     * @param propertyPaths
279
     * @return
280
     * @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)
281
     */
282
    @Override
283
    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) {
284
        return defaultClassificationService.pageAuditEvents(clazz, from, to, criteria, pageSize, pageValue, sort, propertyPaths);
285
    }
286

    
287
    /**
288
     * @param lsid
289
     * @return
290
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#find(eu.etaxonomy.cdm.model.common.LSID)
291
     */
292
    @Override
293
    public Classification find(LSID lsid) {
294
        return defaultClassificationService.find(lsid);
295
    }
296

    
297
    /**
298
     * @param persistentObject
299
     * @return
300
     * @see eu.etaxonomy.cdm.api.service.IService#delete(eu.etaxonomy.cdm.model.common.ICdmBase)
301
     */
302
    @Override
303
    public String delete(Classification persistentObject) {
304
        return defaultClassificationService.delete(persistentObject);
305
    }
306

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

    
321
    /**
322
     * @param uuid
323
     * @return
324
     * @see eu.etaxonomy.cdm.api.service.IService#exists(java.util.UUID)
325
     */
326
    @Override
327
    public boolean exists(UUID uuid) {
328
        return defaultClassificationService.exists(uuid);
329
    }
330

    
331
    /**
332
     * @param x
333
     * @param y
334
     * @return
335
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#replace(eu.etaxonomy.cdm.model.common.IdentifiableEntity, eu.etaxonomy.cdm.model.common.IdentifiableEntity)
336
     */
337
    @Override
338
    public Classification replace(Classification x, Classification y) {
339
        return defaultClassificationService.replace(x, y);
340
    }
341

    
342
    /**
343
     * @param uuidSet
344
     * @return
345
     * @see eu.etaxonomy.cdm.api.service.IService#find(java.util.Set)
346
     */
347
    @Override
348
    public List<Classification> find(Set<UUID> uuidSet) {
349
        return defaultClassificationService.find(uuidSet);
350
    }
351

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

    
365
    /**
366
     * @param classification
367
     * @param rank
368
     * @param pageSize
369
     * @param pageIndex
370
     * @param propertyPaths
371
     * @return
372
     * @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)
373
     */
374
    @Override
375
    public List<TaxonNode> listRankSpecificRootNodes(Classification classification, Rank rank, Integer pageSize, Integer pageIndex, List<String> propertyPaths) {
376
        return defaultClassificationService.listRankSpecificRootNodes(classification, rank, pageSize, pageIndex, propertyPaths);
377
    }
378

    
379
    /**
380
     * @param uuid
381
     * @return
382
     * @see eu.etaxonomy.cdm.api.service.IService#find(java.util.UUID)
383
     */
384
    @Override
385
    public Classification find(UUID uuid) {
386
        return defaultClassificationService.find(uuid);
387
    }
388

    
389
    /**
390
     * @param id
391
     * @return
392
     * @see eu.etaxonomy.cdm.api.service.IService#find(int)
393
     */
394
    @Override
395
    public Classification find(int id) {
396
        return defaultClassificationService.find(id);
397
    }
398

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

    
412
    /**
413
     * @param clazz
414
     * @param technical
415
     * @return
416
     * @see eu.etaxonomy.cdm.api.service.IAnnotatableService#countMarkers(java.lang.Class, java.lang.Boolean)
417
     */
418
    @Override
419
    public int countMarkers(Class<? extends Classification> clazz, Boolean technical) {
420
        return defaultClassificationService.countMarkers(clazz, technical);
421
    }
422

    
423
    /**
424
     * @param idSet
425
     * @return
426
     * @see eu.etaxonomy.cdm.api.service.IService#findById(java.util.Set)
427
     */
428
    @Override
429
    public List<Classification> findById(Set<Integer> idSet) {
430
        return defaultClassificationService.findById(idSet);
431
    }
432

    
433
    /**
434
     * @param clazz
435
     * @param idInSource
436
     * @param idNamespace
437
     * @return
438
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getSourcedObjectByIdInSource(java.lang.Class, java.lang.String, java.lang.String)
439
     */
440
    @Override
441
    public ISourceable getSourcedObjectByIdInSource(Class clazz, String idInSource, String idNamespace) {
442
        return defaultClassificationService.getSourcedObjectByIdInSource(clazz, idInSource, idNamespace);
443
    }
444

    
445
    /**
446
     * @param classification
447
     * @param rank
448
     * @param pageSize
449
     * @param pageIndex
450
     * @param propertyPaths
451
     * @return
452
     * @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)
453
     */
454
    @Override
455
    public Pager<TaxonNode> pageRankSpecificRootNodes(Classification classification, Rank rank, Integer pageSize, Integer pageIndex, List<String> propertyPaths) {
456
        return defaultClassificationService.pageRankSpecificRootNodes(classification, rank, pageSize, pageIndex, propertyPaths);
457
    }
458

    
459
    /**
460
     * @return
461
     * @see eu.etaxonomy.cdm.api.service.IService#getSession()
462
     */
463
    @Override
464
    public Session getSession() {
465
        return defaultClassificationService.getSession();
466
    }
467

    
468
    /**
469
     * @return
470
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getUuidAndTitleCache()
471
     */
472
    @Override
473
    public List<UuidAndTitleCache<Classification>> getUuidAndTitleCache() {
474
        return defaultClassificationService.getUuidAndTitleCache();
475
    }
476

    
477
    /**
478
     * @param clazz
479
     * @param limit
480
     * @param start
481
     * @param groups
482
     * @param propertyPaths
483
     * @return
484
     * @see eu.etaxonomy.cdm.api.service.IService#group(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
485
     */
486
    @Override
487
    public List<Object[]> group(Class<? extends Classification> clazz, Integer limit, Integer start, List<Grouping> groups, List<String> propertyPaths) {
488
        return defaultClassificationService.group(clazz, limit, start, groups, propertyPaths);
489
    }
490

    
491
    /**
492
     * @param clazz
493
     * @param queryString
494
     * @param matchmode
495
     * @param criteria
496
     * @param pageSize
497
     * @param pageNumber
498
     * @param orderHints
499
     * @param propertyPaths
500
     * @return
501
     * @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)
502
     */
503
    @Override
504
    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) {
505
        return defaultClassificationService.findByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
506
    }
507

    
508
    /**
509
     * @param taxonNode
510
     * @param baseRank
511
     * @param propertyPaths
512
     * @return
513
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#loadTreeBranch(eu.etaxonomy.cdm.model.taxon.TaxonNode, eu.etaxonomy.cdm.model.name.Rank, java.util.List)
514
     */
515
    @Override
516
    public List<TaxonNode> loadTreeBranch(TaxonNode taxonNode, Rank baseRank, List<String> propertyPaths) {
517
        return defaultClassificationService.loadTreeBranch(taxonNode, baseRank, propertyPaths);
518
    }
519

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

    
534
    /**
535
     * @param taxon
536
     * @param classification
537
     * @param baseRank
538
     * @param propertyPaths
539
     * @return
540
     * @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)
541
     */
542
    @Override
543
    public List<TaxonNode> loadTreeBranchToTaxon(Taxon taxon, Classification classification, Rank baseRank, List<String> propertyPaths) {
544
        return defaultClassificationService.loadTreeBranchToTaxon(taxon, classification, baseRank, propertyPaths);
545
    }
546

    
547
    /**
548
     * @param configurator
549
     * @return
550
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#findByTitle(eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator)
551
     */
552
    @Override
553
    public Pager<Classification> findByTitle(IIdentifiableEntityServiceConfigurator<Classification> configurator) {
554
        return defaultClassificationService.findByTitle(configurator);
555
    }
556

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

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

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

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

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

    
611
    /**
612
     * @param clazz
613
     * @param queryString
614
     * @param matchmode
615
     * @param criteria
616
     * @param pageSize
617
     * @param pageNumber
618
     * @param orderHints
619
     * @param propertyPaths
620
     * @return
621
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#listByTitle(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.persistence.query.MatchMode, java.util.List, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
622
     */
623
    @Override
624
    public List<Classification> listByTitle(Class<? extends Classification> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
625
        return defaultClassificationService.listByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
626
    }
627

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

    
642
    /**
643
     * @param taxonNode
644
     * @param propertyPaths
645
     * @return
646
     * @deprecated
647
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#loadChildNodesOfTaxonNode(eu.etaxonomy.cdm.model.taxon.TaxonNode, java.util.List)
648
     */
649
    @Deprecated
650
    @Override
651
    public List<TaxonNode> loadChildNodesOfTaxonNode(TaxonNode taxonNode, List<String> propertyPaths) {
652
        return defaultClassificationService.loadChildNodesOfTaxonNode(taxonNode, propertyPaths);
653
    }
654

    
655
    /**
656
     * @param classification
657
     * @return
658
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(eu.etaxonomy.cdm.model.taxon.Classification)
659
     */
660
    @Override
661
    public List<UuidAndTitleCache<TaxonNode>> getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(Classification classification) {
662
        return defaultClassificationService.getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(classification);
663
    }
664

    
665
    /**
666
     * @param taxon
667
     * @param taxTree
668
     * @param propertyPaths
669
     * @param size
670
     * @param height
671
     * @param widthOrDuration
672
     * @param mimeTypes
673
     * @return
674
     * @deprecated
675
     * @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[])
676
     */
677
    @Deprecated
678
    @Override
679
    public Map<UUID, List<MediaRepresentation>> getAllMediaForChildNodes(Taxon taxon, Classification taxTree, List<String> propertyPaths, int size, int height, int widthOrDuration, String[] mimeTypes) {
680
        return defaultClassificationService.getAllMediaForChildNodes(taxon, taxTree, propertyPaths, size, height, widthOrDuration, mimeTypes);
681
    }
682

    
683
    /**
684
     * @param persistentObject
685
     * @return
686
     * @see eu.etaxonomy.cdm.api.service.IService#refresh(eu.etaxonomy.cdm.model.common.ICdmBase)
687
     */
688
    @Override
689
    public UUID refresh(Classification persistentObject) {
690
        return defaultClassificationService.refresh(persistentObject);
691
    }
692

    
693
    /**
694
     * @param clazz
695
     * @param queryString
696
     * @param matchmode
697
     * @param criteria
698
     * @param pageSize
699
     * @param pageNumber
700
     * @param orderHints
701
     * @param propertyPaths
702
     * @return
703
     * @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)
704
     */
705
    @Override
706
    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) {
707
        return defaultClassificationService.listByReferenceTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
708
    }
709

    
710
    /**
711
     * @param taxonNode
712
     * @param propertyPaths
713
     * @param size
714
     * @param height
715
     * @param widthOrDuration
716
     * @param mimeTypes
717
     * @return
718
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#getAllMediaForChildNodes(eu.etaxonomy.cdm.model.taxon.TaxonNode, java.util.List, int, int, int, java.lang.String[])
719
     */
720
    @Override
721
    public Map<UUID, List<MediaRepresentation>> getAllMediaForChildNodes(TaxonNode taxonNode, List<String> propertyPaths, int size, int height, int widthOrDuration, String[] mimeTypes) {
722
        return defaultClassificationService.getAllMediaForChildNodes(taxonNode, propertyPaths, size, height, widthOrDuration, mimeTypes);
723
    }
724

    
725
    /**
726
     * @param tableName
727
     * @param limit
728
     * @param start
729
     * @return
730
     * @see eu.etaxonomy.cdm.api.service.IService#rows(java.lang.String, int, int)
731
     */
732
    @Override
733
    public List<Classification> rows(String tableName, int limit, int start) {
734
        return defaultClassificationService.rows(tableName, limit, start);
735
    }
736

    
737
    /**
738
     * @param newInstances
739
     * @return
740
     * @see eu.etaxonomy.cdm.api.service.IService#save(java.util.Collection)
741
     */
742
    @Override
743
    public Map<UUID, Classification> save(Collection<Classification> newInstances) {
744
        return null;
745
    }
746

    
747
    /**
748
     * @param taxonNode
749
     * @return
750
     * @deprecated
751
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#removeTaxonNode(eu.etaxonomy.cdm.model.taxon.TaxonNode)
752
     */
753
    @Deprecated
754
    @Override
755
    public UUID removeTaxonNode(TaxonNode taxonNode) {
756
        return defaultClassificationService.removeTaxonNode(taxonNode);
757
    }
758

    
759
    /**
760
     * @param taxonNode
761
     * @return
762
     * @deprecated
763
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#saveTaxonNode(eu.etaxonomy.cdm.model.taxon.TaxonNode)
764
     */
765
    @Deprecated
766
    @Override
767
    public UUID saveTaxonNode(TaxonNode taxonNode) {
768
        return null;
769
    }
770

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

    
781
    /**
782
     * @param taxonNodeCollection
783
     * @return
784
     * @deprecated
785
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#saveTaxonNodeAll(java.util.Collection)
786
     */
787
    @Deprecated
788
    @Override
789
    public Map<UUID, TaxonNode> saveTaxonNodeAll(Collection<TaxonNode> taxonNodeCollection) {
790
        return null;
791
    }
792

    
793
    /**
794
     * @param transientObject
795
     * @return
796
     * @see eu.etaxonomy.cdm.api.service.IService#saveOrUpdate(eu.etaxonomy.cdm.model.common.ICdmBase)
797
     */
798
    @Override
799
    public UUID saveOrUpdate(Classification transientObject) {
800
        return null;
801
    }
802

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

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

    
828
    /**
829
     * @param treeNode
830
     * @return
831
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#saveTreeNode(eu.etaxonomy.cdm.model.taxon.ITaxonTreeNode)
832
     */
833
    @Override
834
    public UUID saveTreeNode(ITaxonTreeNode treeNode) {
835
        return null;
836
    }
837

    
838
    /**
839
     * @param transientObjects
840
     * @return
841
     * @see eu.etaxonomy.cdm.api.service.IService#saveOrUpdate(java.util.Collection)
842
     */
843
    @Override
844
    public Map<UUID, Classification> saveOrUpdate(Collection<Classification> transientObjects) {
845
        return null;
846
    }
847

    
848
    /**
849
     * @return
850
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#getAllNodes()
851
     */
852
    @Override
853
    public List<TaxonNode> getAllNodes() {
854
        return defaultClassificationService.getAllNodes();
855
    }
856

    
857
    /**
858
     * @param transientObject
859
     * @return
860
     * @see eu.etaxonomy.cdm.api.service.IService#update(eu.etaxonomy.cdm.model.common.ICdmBase)
861
     */
862
    @Override
863
    public UUID update(Classification transientObject) {
864
        return defaultClassificationService.update(transientObject);
865
    }
866

    
867
    /**
868
     * @param example
869
     * @param includeProperties
870
     * @param limit
871
     * @param start
872
     * @param orderHints
873
     * @param propertyPaths
874
     * @return
875
     * @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)
876
     */
877
    @Override
878
    public List<Classification> list(Classification example, Set<String> includeProperties, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
879
        return defaultClassificationService.list(example, includeProperties, limit, start, orderHints, propertyPaths);
880
    }
881

    
882
    /**
883
     * @param clazz
884
     * @param matchStrategy
885
     * @param mergeStrategy
886
     * @return
887
     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#deduplicate(java.lang.Class, eu.etaxonomy.cdm.strategy.match.IMatchStrategy, eu.etaxonomy.cdm.strategy.merge.IMergeStrategy)
888
     */
889
    @Override
890
    public int deduplicate(Class<? extends Classification> clazz, IMatchStrategy matchStrategy, IMergeStrategy mergeStrategy) {
891
        return defaultClassificationService.deduplicate(clazz, matchStrategy, mergeStrategy);
892
    }
893

    
894
    /**
895
     * @param clazz
896
     * @param queryString
897
     * @param pageSize
898
     * @param pageNumber
899
     * @param orderHints
900
     * @param matchMode
901
     * @return
902
     * @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)
903
     */
904
    @Override
905
    public Pager<Classification> findTitleCache(Class<? extends Classification> clazz, String queryString, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, MatchMode matchMode) {
906
        return defaultClassificationService.findTitleCache(clazz, queryString, pageSize, pageNumber, orderHints, matchMode);
907
    }
908

    
909
    /* (non-Javadoc)
910
     * @see eu.etaxonomy.cdm.api.service.IClassificationService#listChildNodesOfTaxon(java.util.UUID, java.util.UUID, java.lang.Integer, java.lang.Integer, java.util.List)
911
     */
912
    @Override
913
    public List<TaxonNode> listChildNodesOfTaxon(UUID taxonUuid, UUID classificationUuid, Integer pageSize,
914
            Integer pageIndex, List<String> propertyPaths) {
915
        return defaultClassificationService.listChildNodesOfTaxon(taxonUuid, classificationUuid, pageSize, pageIndex, propertyPaths);
916
    }
917

    
918
	@Override
919
	public List<String> isDeletable(Classification object,
920
			DeleteConfiguratorBase config) {
921
		// TODO Auto-generated method stub
922
		return null;
923
	}
924

    
925

    
926

    
927
}
(3-3/9)