Project

General

Profile

Download (15.8 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

    
14
import org.springframework.security.authentication.ProviderManager;
15
import org.springframework.transaction.PlatformTransactionManager;
16
import org.springframework.transaction.TransactionStatus;
17

    
18
import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration;
19
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
20
import eu.etaxonomy.cdm.api.service.IAgentService;
21
import eu.etaxonomy.cdm.api.service.IAnnotationService;
22
import eu.etaxonomy.cdm.api.service.IClassificationService;
23
import eu.etaxonomy.cdm.api.service.ICollectionService;
24
import eu.etaxonomy.cdm.api.service.ICommonService;
25
import eu.etaxonomy.cdm.api.service.IDatabaseService;
26
import eu.etaxonomy.cdm.api.service.IDescriptionService;
27
import eu.etaxonomy.cdm.api.service.IEntityConstraintViolationService;
28
import eu.etaxonomy.cdm.api.service.IEntityValidationService;
29
import eu.etaxonomy.cdm.api.service.IEventBaseService;
30
import eu.etaxonomy.cdm.api.service.IFeatureNodeService;
31
import eu.etaxonomy.cdm.api.service.IFeatureTreeService;
32
import eu.etaxonomy.cdm.api.service.IGrantedAuthorityService;
33
import eu.etaxonomy.cdm.api.service.IGroupService;
34
import eu.etaxonomy.cdm.api.service.IIdentificationKeyService;
35
import eu.etaxonomy.cdm.api.service.ILocationService;
36
import eu.etaxonomy.cdm.api.service.IMediaService;
37
import eu.etaxonomy.cdm.api.service.IMetadataService;
38
import eu.etaxonomy.cdm.api.service.INameService;
39
import eu.etaxonomy.cdm.api.service.IOccurrenceService;
40
import eu.etaxonomy.cdm.api.service.IPolytomousKeyNodeService;
41
import eu.etaxonomy.cdm.api.service.IPolytomousKeyService;
42
import eu.etaxonomy.cdm.api.service.IPreferenceService;
43
import eu.etaxonomy.cdm.api.service.IProgressMonitorService;
44
import eu.etaxonomy.cdm.api.service.IReferenceService;
45
import eu.etaxonomy.cdm.api.service.IService;
46
import eu.etaxonomy.cdm.api.service.ITaxonNodeService;
47
import eu.etaxonomy.cdm.api.service.ITaxonService;
48
import eu.etaxonomy.cdm.api.service.ITermService;
49
import eu.etaxonomy.cdm.api.service.IUserService;
50
import eu.etaxonomy.cdm.api.service.IVocabularyService;
51
import eu.etaxonomy.cdm.api.service.IWorkingSetService;
52
import eu.etaxonomy.cdm.api.service.molecular.IAmplificationService;
53
import eu.etaxonomy.cdm.api.service.molecular.IPrimerService;
54
import eu.etaxonomy.cdm.api.service.molecular.ISequenceService;
55
import eu.etaxonomy.cdm.model.common.CdmBase;
56
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
57
import eu.etaxonomy.cdm.persistence.hibernate.permission.ICdmPermissionEvaluator;
58

    
59
/**
60
 * @author pplitzner
61
 * @date 26.09.2013
62
 *
63
 */
64
public class TransientCdmRepository implements ICdmApplicationConfiguration {
65

    
66
    private final ICdmApplicationConfiguration defaultApplicationConfiguration;
67
    private TransientOccurenceService occurenceService;
68

    
69
    public Collection<SpecimenOrObservationBase<?>> getUnits(){
70
        return occurenceService.getUnits();
71
    }
72

    
73
    /**
74
     * @param defaultApplicationConfiguration
75
     */
76
    public TransientCdmRepository(ICdmApplicationConfiguration defaultApplicationConfiguration) {
77
        this.defaultApplicationConfiguration = defaultApplicationConfiguration;
78
        this.occurenceService = (TransientOccurenceService) getOccurrenceService();
79
    }
80

    
81
    /**
82
     * @return
83
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#NewConversation()
84
     */
85
    @Override
86
    public ConversationHolder NewConversation() {
87
        return defaultApplicationConfiguration.NewConversation();
88
    }
89

    
90
    /**
91
     * @param arg0
92
     * @param arg1
93
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#authenticate(java.lang.String, java.lang.String)
94
     */
95
    @Override
96
    public void authenticate(String arg0, String arg1) {
97
        defaultApplicationConfiguration.authenticate(arg0, arg1);
98
    }
99

    
100
    /**
101
     * @param arg0
102
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#commitTransaction(org.springframework.transaction.TransactionStatus)
103
     */
104
    @Override
105
    public void commitTransaction(TransactionStatus arg0) {
106
        defaultApplicationConfiguration.commitTransaction(arg0);
107
    }
108

    
109
    /**
110
     * @return
111
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getAgentService()
112
     */
113
    @Override
114
    public IAgentService getAgentService() {
115
        return new TransientAgentService(defaultApplicationConfiguration.getAgentService());
116
    }
117

    
118
    /**
119
     * @return
120
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getAuthenticationManager()
121
     */
122
    @Override
123
    public ProviderManager getAuthenticationManager() {
124
        return defaultApplicationConfiguration.getAuthenticationManager();
125
    }
126

    
127
    /**
128
     * @param arg0
129
     * @return
130
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getBean(java.lang.String)
131
     */
132
    @Override
133
    public Object getBean(String arg0) {
134
        return defaultApplicationConfiguration.getBean(arg0);
135
    }
136

    
137
    /**
138
     * @return
139
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getClassificationService()
140
     */
141
    @Override
142
    public IClassificationService getClassificationService() {
143
        return new TransientClassificationService(defaultApplicationConfiguration.getClassificationService());
144
    }
145

    
146
    /**
147
     * @return
148
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getCollectionService()
149
     */
150
    @Override
151
    public ICollectionService getCollectionService() {
152
        return new TransientCollectionService(defaultApplicationConfiguration.getCollectionService());
153
    }
154

    
155
    /**
156
     * @return
157
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getCommonService()
158
     */
159
    @Override
160
    public ICommonService getCommonService() {
161
        return defaultApplicationConfiguration.getCommonService();
162
//        return new TransientCommonService(defaultApplicationConfiguration.getCommonService());
163
    }
164

    
165
    /**
166
     * @return
167
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getDatabaseService()
168
     */
169
    @Override
170
    public IDatabaseService getDatabaseService() {
171
        return defaultApplicationConfiguration.getDatabaseService();
172
//        return new TransientDatabaseService(defaultApplicationConfiguration.getDatabaseService());
173
    }
174

    
175
    /**
176
     * @return
177
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getDescriptionService()
178
     */
179
    @Override
180
    public IDescriptionService getDescriptionService() {
181
        return new TransientDescriptionService(defaultApplicationConfiguration.getDescriptionService());
182
    }
183

    
184
    /**
185
     * @return
186
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getFeatureNodeService()
187
     */
188
    @Override
189
    public IFeatureNodeService getFeatureNodeService() {
190
        return defaultApplicationConfiguration.getFeatureNodeService();
191
//        return new TransientFeatureNodeService(defaultApplicationConfiguration.getFeatureNodeService());
192
    }
193

    
194
    /**
195
     * @return
196
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getFeatureTreeService()
197
     */
198
    @Override
199
    public IFeatureTreeService getFeatureTreeService() {
200
        return defaultApplicationConfiguration.getFeatureTreeService();
201
//        return new TransientFeatureTreeService(defaultApplicationConfiguration.getFeatureTreeService());
202
    }
203

    
204
    /**
205
     * @return
206
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getGrantedAuthorityService()
207
     */
208
    @Override
209
    public IGrantedAuthorityService getGrantedAuthorityService() {
210
        return defaultApplicationConfiguration.getGrantedAuthorityService();
211
//        return new TransientGrantedAuthorityService(defaultApplicationConfiguration.getGrantedAuthorityService());
212
    }
213

    
214
    /**
215
     * @return
216
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getGroupService()
217
     */
218
    @Override
219
    public IGroupService getGroupService() {
220
        return defaultApplicationConfiguration.getGroupService();
221
//        return new TransientGroupService(defaultApplicationConfiguration.getGroupService());
222
    }
223

    
224
    /**
225
     * @return
226
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getIdentificationKeyService()
227
     */
228
    @Override
229
    public IIdentificationKeyService getIdentificationKeyService() {
230
        return defaultApplicationConfiguration.getIdentificationKeyService();
231
//        return new TransientIdentificationService(defaultApplicationConfiguration.getIdentificationKeyService());
232
    }
233

    
234
    /**
235
     * @return
236
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getLocationService()
237
     */
238
    @Override
239
    public ILocationService getLocationService() {
240
        return defaultApplicationConfiguration.getLocationService();
241
//        return new TransientLocationService(defaultApplicationConfiguration.getLocationService());
242
    }
243

    
244
    /**
245
     * @return
246
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getMainService()
247
     */
248
    @Override
249
    public IService<CdmBase> getMainService() {
250
        return defaultApplicationConfiguration.getMainService();
251
//        return new TransientMainService(defaultApplicationConfiguration.getMainService());
252
    }
253

    
254
    /**
255
     * @return
256
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getMediaService()
257
     */
258
    @Override
259
    public IMediaService getMediaService() {
260
        return defaultApplicationConfiguration.getMediaService();
261
//        return new TransientMediaService(defaultApplicationConfiguration.getMediaService());
262
    }
263

    
264
    /**
265
     * @return
266
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getNameService()
267
     */
268
    @Override
269
    public INameService getNameService() {
270
        return new TransientNameService(defaultApplicationConfiguration.getNameService());
271
    }
272

    
273
    /**
274
     * @return
275
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getOccurrenceService()
276
     */
277
    @Override
278
    public IOccurrenceService getOccurrenceService() {
279
        if(occurenceService==null){
280
            occurenceService = new TransientOccurenceService(defaultApplicationConfiguration.getOccurrenceService());
281
        }
282
        return occurenceService;
283
    }
284

    
285
    /**
286
     * @return
287
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getPermissionEvaluator()
288
     */
289
    @Override
290
    public ICdmPermissionEvaluator getPermissionEvaluator() {
291
        return defaultApplicationConfiguration.getPermissionEvaluator();
292
    }
293

    
294
    /**
295
     * @return
296
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getPolytomousKeyNodeService()
297
     */
298
    @Override
299
    public IPolytomousKeyNodeService getPolytomousKeyNodeService() {
300
        return defaultApplicationConfiguration.getPolytomousKeyNodeService();
301
//        return new TransientPolytomousKeyNodeService(defaultApplicationConfiguration.getPolytomousKeyNodeService());
302
    }
303

    
304
    /**
305
     * @return
306
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getPolytomousKeyService()
307
     */
308
    @Override
309
    public IPolytomousKeyService getPolytomousKeyService() {
310
        return defaultApplicationConfiguration.getPolytomousKeyService();
311
//        return new TransientPolytomousKeyService(defaultApplicationConfiguration.getPolytomousKeyService());
312
    }
313

    
314
    /**
315
     * @return
316
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getReferenceService()
317
     */
318
    @Override
319
    public IReferenceService getReferenceService() {
320
        return new TransientReferenceService(defaultApplicationConfiguration.getReferenceService());
321
    }
322

    
323
    /**
324
     * @return
325
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTaxonNodeService()
326
     */
327
    @Override
328
    public ITaxonNodeService getTaxonNodeService() {
329
        return defaultApplicationConfiguration.getTaxonNodeService();
330
//        return new TransientTaxonNodeService(defaultApplicationConfiguration.getTaxonNodeService());
331
    }
332

    
333
    /**
334
     * @return
335
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTaxonService()
336
     */
337
    @Override
338
    public ITaxonService getTaxonService() {
339
        return new TransientTaxonService(defaultApplicationConfiguration.getTaxonService());
340
    }
341

    
342
    /**
343
     * @return
344
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTermService()
345
     */
346
    @Override
347
    public ITermService getTermService() {
348
        return new TransientTermService(defaultApplicationConfiguration.getTermService());
349
    }
350

    
351
    /**
352
     * @return
353
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTransactionManager()
354
     */
355
    @Override
356
    public PlatformTransactionManager getTransactionManager() {
357
        return defaultApplicationConfiguration.getTransactionManager();
358
    }
359

    
360
    @Override
361
    public IUserService getUserService() {
362
        return defaultApplicationConfiguration.getUserService();
363
//        return new TransientUserService(defaultApplicationConfiguration.getUserService());
364
    }
365

    
366
    /**
367
     * @return
368
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getVocabularyService()
369
     */
370
    @Override
371
    public IVocabularyService getVocabularyService() {
372
        return defaultApplicationConfiguration.getVocabularyService();
373
//        return new TransientVocabularyService(defaultApplicationConfiguration.getVocabularyService());
374
    }
375

    
376
    @Override
377
    public IWorkingSetService getWorkingSetService() {
378
        return defaultApplicationConfiguration.getWorkingSetService();
379
//        return new TransientWorkingSetService(defaultApplicationConfiguration.getWorkingSetService());
380
    }
381

    
382
    @Override
383
    public TransactionStatus startTransaction() {
384
        return defaultApplicationConfiguration.startTransaction();
385
    }
386

    
387

    
388
    @Override
389
    public TransactionStatus startTransaction(Boolean arg0) {
390
        return defaultApplicationConfiguration.startTransaction(arg0);
391
    }
392

    
393
    @Override
394
    public IPrimerService getPrimerService() {
395
        return defaultApplicationConfiguration.getPrimerService();
396
    }
397

    
398
    @Override
399
    public IAmplificationService getAmplificationService() {
400
        return defaultApplicationConfiguration.getAmplificationService();
401
    }
402

    
403
    @Override
404
    public ISequenceService getSequenceService() {
405
        return defaultApplicationConfiguration.getSequenceService();
406
    }
407

    
408
    @Override
409
    public IEventBaseService getEventBaseService() {
410
        return defaultApplicationConfiguration.getEventBaseService();
411
    }
412

    
413
	@Override
414
	public IEntityConstraintViolationService getEntityConstraintViolationService() {
415
		return defaultApplicationConfiguration.getEntityConstraintViolationService();
416
	}
417

    
418
	@Override
419
	public IEntityValidationService getEntityValidationService() {
420
		return defaultApplicationConfiguration.getEntityValidationService();
421
	}
422

    
423
    /* (non-Javadoc)
424
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getAnnotationService()
425
     */
426
    @Override
427
    public IAnnotationService getAnnotationService() {
428
        return defaultApplicationConfiguration.getAnnotationService();
429
    }
430

    
431
    /**
432
     * {@inheritDoc}
433
     */
434
    @Override
435
    public IProgressMonitorService getProgressMonitorService() {
436
        return defaultApplicationConfiguration.getProgressMonitorService();
437
    }
438

    
439
    /**
440
     * {@inheritDoc}
441
     */
442
    @Override
443
    public IMetadataService getMetadataService() {
444
        return defaultApplicationConfiguration.getMetadataService();
445
    }
446

    
447
	@Override
448
	public IPreferenceService getPreferenceService() {
449
		
450
		return defaultApplicationConfiguration.getPreferenceService();
451
	}
452
}
(2-2/11)