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
.dataimport
.transientServices
;
12 import java
.util
.List
;
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
.IClassificationService
;
22 import eu
.etaxonomy
.cdm
.api
.service
.ICollectionService
;
23 import eu
.etaxonomy
.cdm
.api
.service
.ICommonService
;
24 import eu
.etaxonomy
.cdm
.api
.service
.IDatabaseService
;
25 import eu
.etaxonomy
.cdm
.api
.service
.IDescriptionService
;
26 import eu
.etaxonomy
.cdm
.api
.service
.IFeatureNodeService
;
27 import eu
.etaxonomy
.cdm
.api
.service
.IFeatureTreeService
;
28 import eu
.etaxonomy
.cdm
.api
.service
.IGrantedAuthorityService
;
29 import eu
.etaxonomy
.cdm
.api
.service
.IGroupService
;
30 import eu
.etaxonomy
.cdm
.api
.service
.IIdentificationKeyService
;
31 import eu
.etaxonomy
.cdm
.api
.service
.ILocationService
;
32 import eu
.etaxonomy
.cdm
.api
.service
.IMediaService
;
33 import eu
.etaxonomy
.cdm
.api
.service
.INameService
;
34 import eu
.etaxonomy
.cdm
.api
.service
.IOccurrenceService
;
35 import eu
.etaxonomy
.cdm
.api
.service
.IPolytomousKeyNodeService
;
36 import eu
.etaxonomy
.cdm
.api
.service
.IPolytomousKeyService
;
37 import eu
.etaxonomy
.cdm
.api
.service
.IReferenceService
;
38 import eu
.etaxonomy
.cdm
.api
.service
.IService
;
39 import eu
.etaxonomy
.cdm
.api
.service
.ITaxonNodeService
;
40 import eu
.etaxonomy
.cdm
.api
.service
.ITaxonService
;
41 import eu
.etaxonomy
.cdm
.api
.service
.ITermService
;
42 import eu
.etaxonomy
.cdm
.api
.service
.IUserService
;
43 import eu
.etaxonomy
.cdm
.api
.service
.IVocabularyService
;
44 import eu
.etaxonomy
.cdm
.api
.service
.IWorkingSetService
;
45 import eu
.etaxonomy
.cdm
.model
.common
.CdmBase
;
46 import eu
.etaxonomy
.cdm
.model
.occurrence
.SpecimenOrObservationBase
;
47 import eu
.etaxonomy
.cdm
.persistence
.hibernate
.permission
.ICdmPermissionEvaluator
;
54 public class TransientCdmRepository
implements ICdmApplicationConfiguration
{
56 private final ICdmApplicationConfiguration defaultApplicationConfiguration
;
57 private TransientOccurenceService occurenceService
;
59 public List
<SpecimenOrObservationBase
> getUnits(){
60 return occurenceService
.getUnits();
64 * @param defaultApplicationConfiguration
66 public TransientCdmRepository(ICdmApplicationConfiguration defaultApplicationConfiguration
) {
67 this.defaultApplicationConfiguration
= defaultApplicationConfiguration
;
68 this.occurenceService
= (TransientOccurenceService
) getOccurrenceService();
73 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#NewConversation()
76 public ConversationHolder
NewConversation() {
77 return defaultApplicationConfiguration
.NewConversation();
83 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#authenticate(java.lang.String, java.lang.String)
86 public void authenticate(String arg0
, String arg1
) {
87 defaultApplicationConfiguration
.authenticate(arg0
, arg1
);
92 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#commitTransaction(org.springframework.transaction.TransactionStatus)
95 public void commitTransaction(TransactionStatus arg0
) {
96 defaultApplicationConfiguration
.commitTransaction(arg0
);
101 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getAgentService()
104 public IAgentService
getAgentService() {
105 return new TransientAgentService(defaultApplicationConfiguration
.getAgentService());
110 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getAuthenticationManager()
113 public ProviderManager
getAuthenticationManager() {
114 return defaultApplicationConfiguration
.getAuthenticationManager();
120 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getBean(java.lang.String)
123 public Object
getBean(String arg0
) {
124 return defaultApplicationConfiguration
.getBean(arg0
);
129 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getClassificationService()
132 public IClassificationService
getClassificationService() {
133 return new TransientClassificationService(defaultApplicationConfiguration
.getClassificationService());
138 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getCollectionService()
141 public ICollectionService
getCollectionService() {
142 return new TransientCollectionService(defaultApplicationConfiguration
.getCollectionService());
147 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getCommonService()
150 public ICommonService
getCommonService() {
151 return defaultApplicationConfiguration
.getCommonService();
156 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getDatabaseService()
159 public IDatabaseService
getDatabaseService() {
160 return defaultApplicationConfiguration
.getDatabaseService();
165 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getDescriptionService()
168 public IDescriptionService
getDescriptionService() {
169 return new TransientDescriptionService(defaultApplicationConfiguration
.getDescriptionService());
174 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getFeatureNodeService()
177 public IFeatureNodeService
getFeatureNodeService() {
178 return defaultApplicationConfiguration
.getFeatureNodeService();
183 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getFeatureTreeService()
186 public IFeatureTreeService
getFeatureTreeService() {
187 return defaultApplicationConfiguration
.getFeatureTreeService();
192 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getGrantedAuthorityService()
195 public IGrantedAuthorityService
getGrantedAuthorityService() {
196 return defaultApplicationConfiguration
.getGrantedAuthorityService();
201 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getGroupService()
204 public IGroupService
getGroupService() {
205 return defaultApplicationConfiguration
.getGroupService();
210 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getIdentificationKeyService()
213 public IIdentificationKeyService
getIdentificationKeyService() {
214 return defaultApplicationConfiguration
.getIdentificationKeyService();
219 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getLocationService()
222 public ILocationService
getLocationService() {
223 return defaultApplicationConfiguration
.getLocationService();
228 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getMainService()
231 public IService
<CdmBase
> getMainService() {
232 return defaultApplicationConfiguration
.getMainService();
237 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getMediaService()
240 public IMediaService
getMediaService() {
241 return defaultApplicationConfiguration
.getMediaService();
246 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getNameService()
249 public INameService
getNameService() {
250 return new TransientNameService(defaultApplicationConfiguration
.getNameService());
255 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getOccurrenceService()
258 public IOccurrenceService
getOccurrenceService() {
259 if(occurenceService
==null){
260 occurenceService
= new TransientOccurenceService(defaultApplicationConfiguration
.getOccurrenceService());
262 return occurenceService
;
267 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getPermissionEvaluator()
270 public ICdmPermissionEvaluator
getPermissionEvaluator() {
271 return defaultApplicationConfiguration
.getPermissionEvaluator();
276 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getPolytomousKeyNodeService()
279 public IPolytomousKeyNodeService
getPolytomousKeyNodeService() {
280 return defaultApplicationConfiguration
.getPolytomousKeyNodeService();
285 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getPolytomousKeyService()
288 public IPolytomousKeyService
getPolytomousKeyService() {
289 return defaultApplicationConfiguration
.getPolytomousKeyService();
294 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getReferenceService()
297 public IReferenceService
getReferenceService() {
298 return new TransientReferenceService(defaultApplicationConfiguration
.getReferenceService());
303 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTaxonNodeService()
306 public ITaxonNodeService
getTaxonNodeService() {
307 return defaultApplicationConfiguration
.getTaxonNodeService();
312 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTaxonService()
315 public ITaxonService
getTaxonService() {
316 return new TransientTaxonService(defaultApplicationConfiguration
.getTaxonService());
321 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTermService()
324 public ITermService
getTermService() {
325 return new TransientTermService(defaultApplicationConfiguration
.getTermService());
330 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTransactionManager()
333 public PlatformTransactionManager
getTransactionManager() {
334 return defaultApplicationConfiguration
.getTransactionManager();
339 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getUserService()
342 public IUserService
getUserService() {
343 return defaultApplicationConfiguration
.getUserService();
348 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getVocabularyService()
351 public IVocabularyService
getVocabularyService() {
352 return defaultApplicationConfiguration
.getVocabularyService();
357 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getWorkingSetService()
360 public IWorkingSetService
getWorkingSetService() {
361 return defaultApplicationConfiguration
.getWorkingSetService();
366 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#startTransaction()
369 public TransactionStatus
startTransaction() {
370 return defaultApplicationConfiguration
.startTransaction();
376 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#startTransaction(java.lang.Boolean)
379 public TransactionStatus
startTransaction(Boolean arg0
) {
380 return defaultApplicationConfiguration
.startTransaction(arg0
);