adapting to new use new ICdmPermissionEvaluator
[taxeditor.git] / eu.etaxonomy.taxeditor.bulkeditor / src / main / java / eu / etaxonomy / taxeditor / dataimport / transientServices / TransientCdmRepository.java
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.dataimport.transientServices;
11
12 import java.util.List;
13
14 import org.springframework.security.access.PermissionEvaluator;
15 import org.springframework.security.authentication.ProviderManager;
16 import org.springframework.transaction.PlatformTransactionManager;
17 import org.springframework.transaction.TransactionStatus;
18
19 import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration;
20 import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
21 import eu.etaxonomy.cdm.api.service.IAgentService;
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.IReferenceService;
39 import eu.etaxonomy.cdm.api.service.IService;
40 import eu.etaxonomy.cdm.api.service.ITaxonNodeService;
41 import eu.etaxonomy.cdm.api.service.ITaxonService;
42 import eu.etaxonomy.cdm.api.service.ITermService;
43 import eu.etaxonomy.cdm.api.service.IUserService;
44 import eu.etaxonomy.cdm.api.service.IVocabularyService;
45 import eu.etaxonomy.cdm.api.service.IWorkingSetService;
46 import eu.etaxonomy.cdm.model.common.CdmBase;
47 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
48 import eu.etaxonomy.cdm.persistence.hibernate.permission.ICdmPermissionEvaluator;
49
50 /**
51 * @author pplitzner
52 * @date 26.09.2013
53 *
54 */
55 public class TransientCdmRepository implements ICdmApplicationConfiguration {
56
57 private ICdmApplicationConfiguration defaultApplicationConfiguration;
58 private TransientOccurenceService occurenceService;
59
60 public List<SpecimenOrObservationBase> getUnits(){
61 return occurenceService.getUnits();
62 }
63
64 /**
65 * @param defaultApplicationConfiguration
66 */
67 public TransientCdmRepository(ICdmApplicationConfiguration defaultApplicationConfiguration) {
68 this.defaultApplicationConfiguration = defaultApplicationConfiguration;
69 }
70
71 /**
72 * @return
73 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#NewConversation()
74 */
75 @Override
76 public ConversationHolder NewConversation() {
77 return defaultApplicationConfiguration.NewConversation();
78 }
79
80 /**
81 * @param arg0
82 * @param arg1
83 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#authenticate(java.lang.String, java.lang.String)
84 */
85 @Override
86 public void authenticate(String arg0, String arg1) {
87 defaultApplicationConfiguration.authenticate(arg0, arg1);
88 }
89
90 /**
91 * @param arg0
92 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#commitTransaction(org.springframework.transaction.TransactionStatus)
93 */
94 @Override
95 public void commitTransaction(TransactionStatus arg0) {
96 defaultApplicationConfiguration.commitTransaction(arg0);
97 }
98
99 /**
100 * @return
101 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getAgentService()
102 */
103 @Override
104 public IAgentService getAgentService() {
105 return new TransientAgentService(defaultApplicationConfiguration.getAgentService());
106 }
107
108 /**
109 * @return
110 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getAuthenticationManager()
111 */
112 @Override
113 public ProviderManager getAuthenticationManager() {
114 return defaultApplicationConfiguration.getAuthenticationManager();
115 }
116
117 /**
118 * @param arg0
119 * @return
120 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getBean(java.lang.String)
121 */
122 @Override
123 public Object getBean(String arg0) {
124 return defaultApplicationConfiguration.getBean(arg0);
125 }
126
127 /**
128 * @return
129 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getClassificationService()
130 */
131 @Override
132 public IClassificationService getClassificationService() {
133 return new TransientClassificationService(defaultApplicationConfiguration.getClassificationService());
134 }
135
136 /**
137 * @return
138 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getCollectionService()
139 */
140 @Override
141 public ICollectionService getCollectionService() {
142 return new TransientCollectionService(defaultApplicationConfiguration.getCollectionService());
143 }
144
145 /**
146 * @return
147 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getCommonService()
148 */
149 @Override
150 public ICommonService getCommonService() {
151 return defaultApplicationConfiguration.getCommonService();
152 }
153
154 /**
155 * @return
156 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getDatabaseService()
157 */
158 @Override
159 public IDatabaseService getDatabaseService() {
160 return defaultApplicationConfiguration.getDatabaseService();
161 }
162
163 /**
164 * @return
165 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getDescriptionService()
166 */
167 @Override
168 public IDescriptionService getDescriptionService() {
169 return new TransientDescriptionService(defaultApplicationConfiguration.getDescriptionService());
170 }
171
172 /**
173 * @return
174 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getFeatureNodeService()
175 */
176 @Override
177 public IFeatureNodeService getFeatureNodeService() {
178 return defaultApplicationConfiguration.getFeatureNodeService();
179 }
180
181 /**
182 * @return
183 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getFeatureTreeService()
184 */
185 @Override
186 public IFeatureTreeService getFeatureTreeService() {
187 return defaultApplicationConfiguration.getFeatureTreeService();
188 }
189
190 /**
191 * @return
192 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getGrantedAuthorityService()
193 */
194 @Override
195 public IGrantedAuthorityService getGrantedAuthorityService() {
196 return defaultApplicationConfiguration.getGrantedAuthorityService();
197 }
198
199 /**
200 * @return
201 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getGroupService()
202 */
203 @Override
204 public IGroupService getGroupService() {
205 return defaultApplicationConfiguration.getGroupService();
206 }
207
208 /**
209 * @return
210 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getIdentificationKeyService()
211 */
212 @Override
213 public IIdentificationKeyService getIdentificationKeyService() {
214 return defaultApplicationConfiguration.getIdentificationKeyService();
215 }
216
217 /**
218 * @return
219 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getLocationService()
220 */
221 @Override
222 public ILocationService getLocationService() {
223 return defaultApplicationConfiguration.getLocationService();
224 }
225
226 /**
227 * @return
228 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getMainService()
229 */
230 @Override
231 public IService<CdmBase> getMainService() {
232 return defaultApplicationConfiguration.getMainService();
233 }
234
235 /**
236 * @return
237 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getMediaService()
238 */
239 @Override
240 public IMediaService getMediaService() {
241 return defaultApplicationConfiguration.getMediaService();
242 }
243
244 /**
245 * @return
246 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getNameService()
247 */
248 @Override
249 public INameService getNameService() {
250 return new TransientNameService(defaultApplicationConfiguration.getNameService());
251 }
252
253 /**
254 * @return
255 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getOccurrenceService()
256 */
257 @Override
258 public IOccurrenceService getOccurrenceService() {
259 if(occurenceService==null){
260 occurenceService = new TransientOccurenceService(defaultApplicationConfiguration.getOccurrenceService());
261 }
262 return occurenceService;
263 }
264
265 /**
266 * @return
267 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getPermissionEvaluator()
268 */
269 @Override
270 public ICdmPermissionEvaluator getPermissionEvaluator() {
271 return defaultApplicationConfiguration.getPermissionEvaluator();
272 }
273
274 /**
275 * @return
276 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getPolytomousKeyNodeService()
277 */
278 @Override
279 public IPolytomousKeyNodeService getPolytomousKeyNodeService() {
280 return defaultApplicationConfiguration.getPolytomousKeyNodeService();
281 }
282
283 /**
284 * @return
285 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getPolytomousKeyService()
286 */
287 @Override
288 public IPolytomousKeyService getPolytomousKeyService() {
289 return defaultApplicationConfiguration.getPolytomousKeyService();
290 }
291
292 /**
293 * @return
294 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getReferenceService()
295 */
296 @Override
297 public IReferenceService getReferenceService() {
298 return new TransientReferenceService(defaultApplicationConfiguration.getReferenceService());
299 }
300
301 /**
302 * @return
303 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTaxonNodeService()
304 */
305 @Override
306 public ITaxonNodeService getTaxonNodeService() {
307 return defaultApplicationConfiguration.getTaxonNodeService();
308 }
309
310 /**
311 * @return
312 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTaxonService()
313 */
314 @Override
315 public ITaxonService getTaxonService() {
316 return new TransientTaxonService(defaultApplicationConfiguration.getTaxonService());
317 }
318
319 /**
320 * @return
321 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTermService()
322 */
323 @Override
324 public ITermService getTermService() {
325 return new TransientTermService(defaultApplicationConfiguration.getTermService());
326 }
327
328 /**
329 * @return
330 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getTransactionManager()
331 */
332 @Override
333 public PlatformTransactionManager getTransactionManager() {
334 return defaultApplicationConfiguration.getTransactionManager();
335 }
336
337 /**
338 * @return
339 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getUserService()
340 */
341 @Override
342 public IUserService getUserService() {
343 return defaultApplicationConfiguration.getUserService();
344 }
345
346 /**
347 * @return
348 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getVocabularyService()
349 */
350 @Override
351 public IVocabularyService getVocabularyService() {
352 return defaultApplicationConfiguration.getVocabularyService();
353 }
354
355 /**
356 * @return
357 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#getWorkingSetService()
358 */
359 @Override
360 public IWorkingSetService getWorkingSetService() {
361 return defaultApplicationConfiguration.getWorkingSetService();
362 }
363
364 /**
365 * @return
366 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#startTransaction()
367 */
368 @Override
369 public TransactionStatus startTransaction() {
370 return defaultApplicationConfiguration.startTransaction();
371 }
372
373 /**
374 * @param arg0
375 * @return
376 * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#startTransaction(java.lang.Boolean)
377 */
378 @Override
379 public TransactionStatus startTransaction(Boolean arg0) {
380 return defaultApplicationConfiguration.startTransaction(arg0);
381 }
382
383
384
385 }