3 * Copyright (C) 2013 EDIT
4 * European Distributed Institute of Taxonomy
5 * http://www.e-taxonomy.eu
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.
10 package eu
.etaxonomy
.taxeditor
.editor
.view
.dataimport
.transientServices
;
12 import java
.util
.Collection
;
14 import org
.springframework
.security
.authentication
.ProviderManager
;
15 import org
.springframework
.transaction
.PlatformTransactionManager
;
16 import org
.springframework
.transaction
.TransactionStatus
;
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
.IAmplificationService
;
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
.IFeatureNodeService
;
28 import eu
.etaxonomy
.cdm
.api
.service
.IFeatureTreeService
;
29 import eu
.etaxonomy
.cdm
.api
.service
.IGrantedAuthorityService
;
30 import eu
.etaxonomy
.cdm
.api
.service
.IGroupService
;
31 import eu
.etaxonomy
.cdm
.api
.service
.IIdentificationKeyService
;
32 import eu
.etaxonomy
.cdm
.api
.service
.ILocationService
;
33 import eu
.etaxonomy
.cdm
.api
.service
.IMediaService
;
34 import eu
.etaxonomy
.cdm
.api
.service
.INameService
;
35 import eu
.etaxonomy
.cdm
.api
.service
.IOccurrenceService
;
36 import eu
.etaxonomy
.cdm
.api
.service
.IPolytomousKeyNodeService
;
37 import eu
.etaxonomy
.cdm
.api
.service
.IPolytomousKeyService
;
38 import eu
.etaxonomy
.cdm
.api
.service
.IPrimerService
;
39 import eu
.etaxonomy
.cdm
.api
.service
.IReferenceService
;
40 import eu
.etaxonomy
.cdm
.api
.service
.ISequenceService
;
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
.model
.common
.CdmBase
;
49 import eu
.etaxonomy
.cdm
.model
.occurrence
.SpecimenOrObservationBase
;
50 import eu
.etaxonomy
.cdm
.persistence
.hibernate
.permission
.ICdmPermissionEvaluator
;
57 public class TransientCdmRepository
implements ICdmApplicationConfiguration
{
59 private final ICdmApplicationConfiguration defaultApplicationConfiguration
;
60 private TransientOccurenceService occurenceService
;
62 public Collection
<SpecimenOrObservationBase
> getUnits(){
63 return occurenceService
.getUnits();
67 * @param defaultApplicationConfiguration
69 public TransientCdmRepository(ICdmApplicationConfiguration defaultApplicationConfiguration
) {
70 this.defaultApplicationConfiguration
= defaultApplicationConfiguration
;
71 this.occurenceService
= (TransientOccurenceService
) getOccurrenceService();
76 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#NewConversation()
79 public ConversationHolder
NewConversation() {
80 return defaultApplicationConfiguration
.NewConversation();
86 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#authenticate(java.lang.String, java.lang.String)
89 public void authenticate(String arg0
, String arg1
) {
90 defaultApplicationConfiguration
.authenticate(arg0
, arg1
);
95 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#commitTransaction(org.springframework.transaction.TransactionStatus)
98 public void commitTransaction(TransactionStatus arg0
) {
99 defaultApplicationConfiguration
.commitTransaction(arg0
);
104 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getAgentService()
107 public IAgentService
getAgentService() {
108 return new TransientAgentService(defaultApplicationConfiguration
.getAgentService());
113 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getAuthenticationManager()
116 public ProviderManager
getAuthenticationManager() {
117 return defaultApplicationConfiguration
.getAuthenticationManager();
123 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getBean(java.lang.String)
126 public Object
getBean(String arg0
) {
127 return defaultApplicationConfiguration
.getBean(arg0
);
132 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getClassificationService()
135 public IClassificationService
getClassificationService() {
136 return new TransientClassificationService(defaultApplicationConfiguration
.getClassificationService());
141 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getCollectionService()
144 public ICollectionService
getCollectionService() {
145 return defaultApplicationConfiguration
.getCollectionService();
146 // return new TransientCollectionService(defaultApplicationConfiguration.getCollectionService());
151 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getCommonService()
154 public ICommonService
getCommonService() {
155 return defaultApplicationConfiguration
.getCommonService();
156 // return new TransientCommonService(defaultApplicationConfiguration.getCommonService());
161 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getDatabaseService()
164 public IDatabaseService
getDatabaseService() {
165 return defaultApplicationConfiguration
.getDatabaseService();
166 // return new TransientDatabaseService(defaultApplicationConfiguration.getDatabaseService());
171 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getDescriptionService()
174 public IDescriptionService
getDescriptionService() {
175 return new TransientDescriptionService(defaultApplicationConfiguration
.getDescriptionService());
180 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getFeatureNodeService()
183 public IFeatureNodeService
getFeatureNodeService() {
184 return defaultApplicationConfiguration
.getFeatureNodeService();
185 // return new TransientFeatureNodeService(defaultApplicationConfiguration.getFeatureNodeService());
190 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getFeatureTreeService()
193 public IFeatureTreeService
getFeatureTreeService() {
194 return defaultApplicationConfiguration
.getFeatureTreeService();
195 // return new TransientFeatureTreeService(defaultApplicationConfiguration.getFeatureTreeService());
200 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getGrantedAuthorityService()
203 public IGrantedAuthorityService
getGrantedAuthorityService() {
204 return defaultApplicationConfiguration
.getGrantedAuthorityService();
205 // return new TransientGrantedAuthorityService(defaultApplicationConfiguration.getGrantedAuthorityService());
210 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getGroupService()
213 public IGroupService
getGroupService() {
214 return defaultApplicationConfiguration
.getGroupService();
215 // return new TransientGroupService(defaultApplicationConfiguration.getGroupService());
220 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getIdentificationKeyService()
223 public IIdentificationKeyService
getIdentificationKeyService() {
224 return defaultApplicationConfiguration
.getIdentificationKeyService();
225 // return new TransientIdentificationService(defaultApplicationConfiguration.getIdentificationKeyService());
230 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getLocationService()
233 public ILocationService
getLocationService() {
234 return defaultApplicationConfiguration
.getLocationService();
235 // return new TransientLocationService(defaultApplicationConfiguration.getLocationService());
240 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getMainService()
243 public IService
<CdmBase
> getMainService() {
244 return defaultApplicationConfiguration
.getMainService();
245 // return new TransientMainService(defaultApplicationConfiguration.getMainService());
250 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getMediaService()
253 public IMediaService
getMediaService() {
254 return defaultApplicationConfiguration
.getMediaService();
255 // return new TransientMediaService(defaultApplicationConfiguration.getMediaService());
260 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getNameService()
263 public INameService
getNameService() {
264 return new TransientNameService(defaultApplicationConfiguration
.getNameService());
269 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getOccurrenceService()
272 public IOccurrenceService
getOccurrenceService() {
273 if(occurenceService
==null){
274 occurenceService
= new TransientOccurenceService(defaultApplicationConfiguration
.getOccurrenceService());
276 return occurenceService
;
281 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getPermissionEvaluator()
284 public ICdmPermissionEvaluator
getPermissionEvaluator() {
285 return defaultApplicationConfiguration
.getPermissionEvaluator();
290 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getPolytomousKeyNodeService()
293 public IPolytomousKeyNodeService
getPolytomousKeyNodeService() {
294 return defaultApplicationConfiguration
.getPolytomousKeyNodeService();
295 // return new TransientPolytomousKeyNodeService(defaultApplicationConfiguration.getPolytomousKeyNodeService());
300 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getPolytomousKeyService()
303 public IPolytomousKeyService
getPolytomousKeyService() {
304 return defaultApplicationConfiguration
.getPolytomousKeyService();
305 // return new TransientPolytomousKeyService(defaultApplicationConfiguration.getPolytomousKeyService());
310 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getReferenceService()
313 public IReferenceService
getReferenceService() {
314 return new TransientReferenceService(defaultApplicationConfiguration
.getReferenceService());
319 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTaxonNodeService()
322 public ITaxonNodeService
getTaxonNodeService() {
323 return defaultApplicationConfiguration
.getTaxonNodeService();
324 // return new TransientTaxonNodeService(defaultApplicationConfiguration.getTaxonNodeService());
329 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTaxonService()
332 public ITaxonService
getTaxonService() {
333 return new TransientTaxonService(defaultApplicationConfiguration
.getTaxonService());
338 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTermService()
341 public ITermService
getTermService() {
342 return new TransientTermService(defaultApplicationConfiguration
.getTermService());
347 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTransactionManager()
350 public PlatformTransactionManager
getTransactionManager() {
351 return defaultApplicationConfiguration
.getTransactionManager();
356 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getUserService()
359 public IUserService
getUserService() {
360 return defaultApplicationConfiguration
.getUserService();
361 // return new TransientUserService(defaultApplicationConfiguration.getUserService());
366 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getVocabularyService()
369 public IVocabularyService
getVocabularyService() {
370 return defaultApplicationConfiguration
.getVocabularyService();
371 // return new TransientVocabularyService(defaultApplicationConfiguration.getVocabularyService());
376 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getWorkingSetService()
379 public IWorkingSetService
getWorkingSetService() {
380 return defaultApplicationConfiguration
.getWorkingSetService();
381 // return new TransientWorkingSetService(defaultApplicationConfiguration.getWorkingSetService());
386 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#startTransaction()
389 public TransactionStatus
startTransaction() {
390 return defaultApplicationConfiguration
.startTransaction();
396 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#startTransaction(java.lang.Boolean)
399 public TransactionStatus
startTransaction(Boolean arg0
) {
400 return defaultApplicationConfiguration
.startTransaction(arg0
);
404 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getPrimerService()
407 public IPrimerService
getPrimerService() {
408 return defaultApplicationConfiguration
.getPrimerService();
412 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getAmplificationService()
415 public IAmplificationService
getAmplificationService() {
416 return defaultApplicationConfiguration
.getAmplificationService();
420 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getSequenceService()
423 public ISequenceService
getSequenceService() {
424 return defaultApplicationConfiguration
.getSequenceService();