Project

General

Profile

Download (14.9 KB) Statistics
| Branch: | Tag: | Revision:
1
// $Id$
2
/**
3
* Copyright (C) 2013 EDIT
4
* European Distributed Institute of Taxonomy
5
* http://www.e-taxonomy.eu
6
*
7
* The contents of this file are subject to the Mozilla Public License Version 1.1
8
* See LICENSE.TXT at the top of this package for the full license terms.
9
*/
10
package eu.etaxonomy.taxeditor.editor.view.dataimport.transientServices;
11

    
12
import java.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.IFeatureNodeService;
30
import eu.etaxonomy.cdm.api.service.IFeatureTreeService;
31
import eu.etaxonomy.cdm.api.service.IGrantedAuthorityService;
32
import eu.etaxonomy.cdm.api.service.IGroupService;
33
import eu.etaxonomy.cdm.api.service.IIdentificationKeyService;
34
import eu.etaxonomy.cdm.api.service.ILocationService;
35
import eu.etaxonomy.cdm.api.service.IMediaService;
36
import eu.etaxonomy.cdm.api.service.INameService;
37
import eu.etaxonomy.cdm.api.service.IOccurrenceService;
38
import eu.etaxonomy.cdm.api.service.IPolytomousKeyNodeService;
39
import eu.etaxonomy.cdm.api.service.IPolytomousKeyService;
40
import eu.etaxonomy.cdm.api.service.IReferenceService;
41
import eu.etaxonomy.cdm.api.service.IService;
42
import eu.etaxonomy.cdm.api.service.ITaxonNodeService;
43
import eu.etaxonomy.cdm.api.service.ITaxonService;
44
import eu.etaxonomy.cdm.api.service.ITermService;
45
import eu.etaxonomy.cdm.api.service.IUserService;
46
import eu.etaxonomy.cdm.api.service.IVocabularyService;
47
import eu.etaxonomy.cdm.api.service.IWorkingSetService;
48
import eu.etaxonomy.cdm.api.service.molecular.IAmplificationService;
49
import eu.etaxonomy.cdm.api.service.molecular.IPrimerService;
50
import eu.etaxonomy.cdm.api.service.molecular.ISequenceService;
51
import eu.etaxonomy.cdm.model.common.CdmBase;
52
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
53
import eu.etaxonomy.cdm.persistence.hibernate.permission.ICdmPermissionEvaluator;
54

    
55
/**
56
 * @author pplitzner
57
 * @date 26.09.2013
58
 *
59
 */
60
public class TransientCdmRepository implements ICdmApplicationConfiguration {
61

    
62
    private final ICdmApplicationConfiguration defaultApplicationConfiguration;
63
    private TransientOccurenceService occurenceService;
64

    
65
    public Collection<SpecimenOrObservationBase<?>> getUnits(){
66
        return occurenceService.getUnits();
67
    }
68

    
69
    /**
70
     * @param defaultApplicationConfiguration
71
     */
72
    public TransientCdmRepository(ICdmApplicationConfiguration defaultApplicationConfiguration) {
73
        this.defaultApplicationConfiguration = defaultApplicationConfiguration;
74
        this.occurenceService = (TransientOccurenceService) getOccurrenceService();
75
    }
76

    
77
    /**
78
     * @return
79
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#NewConversation()
80
     */
81
    @Override
82
    public ConversationHolder NewConversation() {
83
        return defaultApplicationConfiguration.NewConversation();
84
    }
85

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

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

    
105
    /**
106
     * @return
107
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getAgentService()
108
     */
109
    @Override
110
    public IAgentService getAgentService() {
111
        return new TransientAgentService(defaultApplicationConfiguration.getAgentService());
112
    }
113

    
114
    /**
115
     * @return
116
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getAuthenticationManager()
117
     */
118
    @Override
119
    public ProviderManager getAuthenticationManager() {
120
        return defaultApplicationConfiguration.getAuthenticationManager();
121
    }
122

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

    
133
    /**
134
     * @return
135
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getClassificationService()
136
     */
137
    @Override
138
    public IClassificationService getClassificationService() {
139
        return new TransientClassificationService(defaultApplicationConfiguration.getClassificationService());
140
    }
141

    
142
    /**
143
     * @return
144
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getCollectionService()
145
     */
146
    @Override
147
    public ICollectionService getCollectionService() {
148
        return new TransientCollectionService(defaultApplicationConfiguration.getCollectionService());
149
    }
150

    
151
    /**
152
     * @return
153
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getCommonService()
154
     */
155
    @Override
156
    public ICommonService getCommonService() {
157
        return defaultApplicationConfiguration.getCommonService();
158
//        return new TransientCommonService(defaultApplicationConfiguration.getCommonService());
159
    }
160

    
161
    /**
162
     * @return
163
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getDatabaseService()
164
     */
165
    @Override
166
    public IDatabaseService getDatabaseService() {
167
        return defaultApplicationConfiguration.getDatabaseService();
168
//        return new TransientDatabaseService(defaultApplicationConfiguration.getDatabaseService());
169
    }
170

    
171
    /**
172
     * @return
173
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getDescriptionService()
174
     */
175
    @Override
176
    public IDescriptionService getDescriptionService() {
177
        return new TransientDescriptionService(defaultApplicationConfiguration.getDescriptionService());
178
    }
179

    
180
    /**
181
     * @return
182
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getFeatureNodeService()
183
     */
184
    @Override
185
    public IFeatureNodeService getFeatureNodeService() {
186
        return defaultApplicationConfiguration.getFeatureNodeService();
187
//        return new TransientFeatureNodeService(defaultApplicationConfiguration.getFeatureNodeService());
188
    }
189

    
190
    /**
191
     * @return
192
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getFeatureTreeService()
193
     */
194
    @Override
195
    public IFeatureTreeService getFeatureTreeService() {
196
        return defaultApplicationConfiguration.getFeatureTreeService();
197
//        return new TransientFeatureTreeService(defaultApplicationConfiguration.getFeatureTreeService());
198
    }
199

    
200
    /**
201
     * @return
202
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getGrantedAuthorityService()
203
     */
204
    @Override
205
    public IGrantedAuthorityService getGrantedAuthorityService() {
206
        return defaultApplicationConfiguration.getGrantedAuthorityService();
207
//        return new TransientGrantedAuthorityService(defaultApplicationConfiguration.getGrantedAuthorityService());
208
    }
209

    
210
    /**
211
     * @return
212
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getGroupService()
213
     */
214
    @Override
215
    public IGroupService getGroupService() {
216
        return defaultApplicationConfiguration.getGroupService();
217
//        return new TransientGroupService(defaultApplicationConfiguration.getGroupService());
218
    }
219

    
220
    /**
221
     * @return
222
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getIdentificationKeyService()
223
     */
224
    @Override
225
    public IIdentificationKeyService getIdentificationKeyService() {
226
        return defaultApplicationConfiguration.getIdentificationKeyService();
227
//        return new TransientIdentificationService(defaultApplicationConfiguration.getIdentificationKeyService());
228
    }
229

    
230
    /**
231
     * @return
232
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getLocationService()
233
     */
234
    @Override
235
    public ILocationService getLocationService() {
236
        return defaultApplicationConfiguration.getLocationService();
237
//        return new TransientLocationService(defaultApplicationConfiguration.getLocationService());
238
    }
239

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

    
250
    /**
251
     * @return
252
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getMediaService()
253
     */
254
    @Override
255
    public IMediaService getMediaService() {
256
        return defaultApplicationConfiguration.getMediaService();
257
//        return new TransientMediaService(defaultApplicationConfiguration.getMediaService());
258
    }
259

    
260
    /**
261
     * @return
262
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getNameService()
263
     */
264
    @Override
265
    public INameService getNameService() {
266
        return new TransientNameService(defaultApplicationConfiguration.getNameService());
267
    }
268

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

    
281
    /**
282
     * @return
283
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getPermissionEvaluator()
284
     */
285
    @Override
286
    public ICdmPermissionEvaluator getPermissionEvaluator() {
287
        return defaultApplicationConfiguration.getPermissionEvaluator();
288
    }
289

    
290
    /**
291
     * @return
292
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getPolytomousKeyNodeService()
293
     */
294
    @Override
295
    public IPolytomousKeyNodeService getPolytomousKeyNodeService() {
296
        return defaultApplicationConfiguration.getPolytomousKeyNodeService();
297
//        return new TransientPolytomousKeyNodeService(defaultApplicationConfiguration.getPolytomousKeyNodeService());
298
    }
299

    
300
    /**
301
     * @return
302
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getPolytomousKeyService()
303
     */
304
    @Override
305
    public IPolytomousKeyService getPolytomousKeyService() {
306
        return defaultApplicationConfiguration.getPolytomousKeyService();
307
//        return new TransientPolytomousKeyService(defaultApplicationConfiguration.getPolytomousKeyService());
308
    }
309

    
310
    /**
311
     * @return
312
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getReferenceService()
313
     */
314
    @Override
315
    public IReferenceService getReferenceService() {
316
        return new TransientReferenceService(defaultApplicationConfiguration.getReferenceService());
317
    }
318

    
319
    /**
320
     * @return
321
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTaxonNodeService()
322
     */
323
    @Override
324
    public ITaxonNodeService getTaxonNodeService() {
325
        return defaultApplicationConfiguration.getTaxonNodeService();
326
//        return new TransientTaxonNodeService(defaultApplicationConfiguration.getTaxonNodeService());
327
    }
328

    
329
    /**
330
     * @return
331
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTaxonService()
332
     */
333
    @Override
334
    public ITaxonService getTaxonService() {
335
        return new TransientTaxonService(defaultApplicationConfiguration.getTaxonService());
336
    }
337

    
338
    /**
339
     * @return
340
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTermService()
341
     */
342
    @Override
343
    public ITermService getTermService() {
344
        return new TransientTermService(defaultApplicationConfiguration.getTermService());
345
    }
346

    
347
    /**
348
     * @return
349
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTransactionManager()
350
     */
351
    @Override
352
    public PlatformTransactionManager getTransactionManager() {
353
        return defaultApplicationConfiguration.getTransactionManager();
354
    }
355

    
356
    @Override
357
    public IUserService getUserService() {
358
        return defaultApplicationConfiguration.getUserService();
359
//        return new TransientUserService(defaultApplicationConfiguration.getUserService());
360
    }
361

    
362
    /**
363
     * @return
364
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getVocabularyService()
365
     */
366
    @Override
367
    public IVocabularyService getVocabularyService() {
368
        return defaultApplicationConfiguration.getVocabularyService();
369
//        return new TransientVocabularyService(defaultApplicationConfiguration.getVocabularyService());
370
    }
371

    
372
    @Override
373
    public IWorkingSetService getWorkingSetService() {
374
        return defaultApplicationConfiguration.getWorkingSetService();
375
//        return new TransientWorkingSetService(defaultApplicationConfiguration.getWorkingSetService());
376
    }
377

    
378
    @Override
379
    public TransactionStatus startTransaction() {
380
        return defaultApplicationConfiguration.startTransaction();
381
    }
382

    
383

    
384
    @Override
385
    public TransactionStatus startTransaction(Boolean arg0) {
386
        return defaultApplicationConfiguration.startTransaction(arg0);
387
    }
388

    
389
    @Override
390
    public IPrimerService getPrimerService() {
391
        return defaultApplicationConfiguration.getPrimerService();
392
    }
393

    
394
    @Override
395
    public IAmplificationService getAmplificationService() {
396
        return defaultApplicationConfiguration.getAmplificationService();
397
    }
398

    
399
    @Override
400
    public ISequenceService getSequenceService() {
401
        return defaultApplicationConfiguration.getSequenceService();
402
    }
403

    
404
	@Override
405
	public IEntityConstraintViolationService getEntityConstraintViolationService() {
406
		return defaultApplicationConfiguration.getEntityConstraintViolationService();
407
	}
408

    
409
	@Override
410
	public IEntityValidationService getEntityValidationService() {
411
		return defaultApplicationConfiguration.getEntityValidationService();
412
	}
413

    
414
    /* (non-Javadoc)
415
     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getAnnotationService()
416
     */
417
    @Override
418
    public IAnnotationService getAnnotationService() {
419
        return defaultApplicationConfiguration.getAnnotationService();
420
    }
421
}
(2-2/10)