Add IEventBaseService to application controller #5403
[cdmlib.git] / cdmlib-services / src / main / java / eu / etaxonomy / cdm / api / application / ICdmApplicationConfiguration.java
1 // $Id$
2 /**
3 * Copyright (C) 2007 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
11 package eu.etaxonomy.cdm.api.application;
12
13 import org.springframework.security.authentication.ProviderManager;
14 import org.springframework.transaction.PlatformTransactionManager;
15 import org.springframework.transaction.TransactionStatus;
16
17 import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
18 import eu.etaxonomy.cdm.api.service.IAgentService;
19 import eu.etaxonomy.cdm.api.service.IAnnotationService;
20 import eu.etaxonomy.cdm.api.service.IClassificationService;
21 import eu.etaxonomy.cdm.api.service.ICollectionService;
22 import eu.etaxonomy.cdm.api.service.ICommonService;
23 import eu.etaxonomy.cdm.api.service.IDatabaseService;
24 import eu.etaxonomy.cdm.api.service.IDescriptionService;
25 import eu.etaxonomy.cdm.api.service.IEntityConstraintViolationService;
26 import eu.etaxonomy.cdm.api.service.IEntityValidationService;
27 import eu.etaxonomy.cdm.api.service.IEventBaseService;
28 import eu.etaxonomy.cdm.api.service.IFeatureNodeService;
29 import eu.etaxonomy.cdm.api.service.IFeatureTreeService;
30 import eu.etaxonomy.cdm.api.service.IGrantedAuthorityService;
31 import eu.etaxonomy.cdm.api.service.IGroupService;
32 import eu.etaxonomy.cdm.api.service.IIdentificationKeyService;
33 import eu.etaxonomy.cdm.api.service.ILocationService;
34 import eu.etaxonomy.cdm.api.service.IMediaService;
35 import eu.etaxonomy.cdm.api.service.IMetadataService;
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.IProgressMonitorService;
41 import eu.etaxonomy.cdm.api.service.IReferenceService;
42 import eu.etaxonomy.cdm.api.service.IService;
43 import eu.etaxonomy.cdm.api.service.ITaxonNodeService;
44 import eu.etaxonomy.cdm.api.service.ITaxonService;
45 import eu.etaxonomy.cdm.api.service.ITermService;
46 import eu.etaxonomy.cdm.api.service.IUserService;
47 import eu.etaxonomy.cdm.api.service.IVocabularyService;
48 import eu.etaxonomy.cdm.api.service.IWorkingSetService;
49 import eu.etaxonomy.cdm.api.service.molecular.IAmplificationService;
50 import eu.etaxonomy.cdm.api.service.molecular.IPrimerService;
51 import eu.etaxonomy.cdm.api.service.molecular.ISequenceService;
52 import eu.etaxonomy.cdm.model.common.CdmBase;
53 import eu.etaxonomy.cdm.persistence.hibernate.permission.CdmPermissionEvaluator;
54 import eu.etaxonomy.cdm.persistence.hibernate.permission.ICdmPermissionEvaluator;
55
56 /**
57 * @author a.mueller
58 * @created 21.05.2008
59 */
60 public interface ICdmApplicationConfiguration{
61
62
63 public TransactionStatus startTransaction();
64
65 public TransactionStatus startTransaction(Boolean readOnly);
66
67 public void commitTransaction(TransactionStatus tx);
68
69
70 public Object getBean(String string);
71
72
73 /**
74 * @return
75 */
76 public IAnnotationService getAnnotationService();
77
78 /**
79 * @return
80 */
81 public INameService getNameService();
82
83
84 /**
85 * @return
86 */
87 public ITaxonService getTaxonService();
88
89
90 /**
91 * @return
92 */
93 public IClassificationService getClassificationService();
94
95
96 /**
97 *
98 * @return
99 */
100 public ITaxonNodeService getTaxonNodeService();
101
102
103 /**
104 * @return
105 */
106 public IReferenceService getReferenceService();
107
108
109 /**
110 * @return
111 */
112 public IAgentService getAgentService();
113
114
115 /**
116 * @return
117 */
118 public IDescriptionService getDescriptionService();
119
120
121 /**
122 * @return
123 */
124 public IOccurrenceService getOccurrenceService();
125
126
127 /**
128 * @return
129 */
130 public IPrimerService getPrimerService();
131
132
133 /**
134 * @return
135 */
136 public IAmplificationService getAmplificationService();
137
138
139 /**
140 * @return
141 */
142 public ISequenceService getSequenceService();
143
144 public IEventBaseService getEventBaseService();
145
146
147 /**
148 * @return
149 */
150 public IMediaService getMediaService();
151
152 /**
153 * @return
154 */
155 public IMetadataService getMetadataService();
156
157
158 /**
159 * @return
160 */
161 public IDatabaseService getDatabaseService();
162
163
164 /**
165 * @return
166 */
167 public ITermService getTermService();
168
169
170 /**
171 * @return
172 */
173 public ICommonService getCommonService();
174
175
176 /**
177 *
178 * @return
179 */
180 public ILocationService getLocationService();
181
182
183 /**
184 *
185 * @return
186 */
187 public IUserService getUserService();
188
189
190 /**
191 *
192 * @return
193 */
194 public IGroupService getGroupService();
195
196
197 /**
198 *
199 * @return
200 */
201 public IGrantedAuthorityService getGrantedAuthorityService();
202
203
204 /**
205 * @return
206 */
207 public IService<CdmBase> getMainService();
208
209
210 /**
211 * @return
212 */
213 public IWorkingSetService getWorkingSetService();
214
215
216 /**
217 * @return
218 */
219 public PlatformTransactionManager getTransactionManager();
220
221
222 /**
223 *
224 * @return
225 */
226 public ProviderManager getAuthenticationManager();
227
228
229 /**
230 * @return
231 */
232 public ConversationHolder NewConversation();
233
234
235 /**
236 *
237 * @return
238 */
239 public ICollectionService getCollectionService();
240
241
242 /**
243 *
244 * @return
245 */
246 public IFeatureTreeService getFeatureTreeService();
247
248
249 /**
250 *
251 * @return
252 */
253 public IFeatureNodeService getFeatureNodeService();
254
255
256 /**
257 *
258 * @return
259 */
260 public IVocabularyService getVocabularyService();
261
262
263 /**
264 * @return
265 */
266 public IIdentificationKeyService getIdentificationKeyService();
267
268
269 /**
270 * @return
271 */
272 public IPolytomousKeyService getPolytomousKeyService();
273
274
275 /**
276 * @return
277 */
278 public IPolytomousKeyNodeService getPolytomousKeyNodeService();
279
280 /**
281 * @return
282 */
283 public IProgressMonitorService getProgressMonitorService();
284
285 /**
286 * @return
287 */
288 public IEntityValidationService getEntityValidationService();
289
290
291 /**
292 * @return
293 */
294 public IEntityConstraintViolationService getEntityConstraintViolationService();
295
296
297 /**
298 * @return the configured PermissionEvaluator, usually the
299 * {@link CdmPermissionEvaluator}
300 */
301 public ICdmPermissionEvaluator getPermissionEvaluator();
302
303
304 void authenticate(String username, String password);
305
306 }