3 * Copyright (C) 2007 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.
11 package eu
.etaxonomy
.cdm
.api
.application
;
13 import org
.springframework
.security
.access
.PermissionEvaluator
;
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
.conversation
.ConversationHolder
;
19 import eu
.etaxonomy
.cdm
.api
.service
.IAgentService
;
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
.IFeatureNodeService
;
26 import eu
.etaxonomy
.cdm
.api
.service
.IFeatureTreeService
;
27 import eu
.etaxonomy
.cdm
.api
.service
.IGrantedAuthorityService
;
28 import eu
.etaxonomy
.cdm
.api
.service
.IGroupService
;
29 import eu
.etaxonomy
.cdm
.api
.service
.IIdentificationKeyService
;
30 import eu
.etaxonomy
.cdm
.api
.service
.ILocationService
;
31 import eu
.etaxonomy
.cdm
.api
.service
.IMediaService
;
32 import eu
.etaxonomy
.cdm
.api
.service
.INameService
;
33 import eu
.etaxonomy
.cdm
.api
.service
.IOccurrenceService
;
34 import eu
.etaxonomy
.cdm
.api
.service
.IPolytomousKeyNodeService
;
35 import eu
.etaxonomy
.cdm
.api
.service
.IPolytomousKeyService
;
36 import eu
.etaxonomy
.cdm
.api
.service
.IReferenceService
;
37 import eu
.etaxonomy
.cdm
.api
.service
.IService
;
38 import eu
.etaxonomy
.cdm
.api
.service
.ITaxonNodeService
;
39 import eu
.etaxonomy
.cdm
.api
.service
.ITaxonService
;
40 import eu
.etaxonomy
.cdm
.api
.service
.ITermService
;
41 import eu
.etaxonomy
.cdm
.api
.service
.IUserService
;
42 import eu
.etaxonomy
.cdm
.api
.service
.IVocabularyService
;
43 import eu
.etaxonomy
.cdm
.api
.service
.IWorkingSetService
;
44 import eu
.etaxonomy
.cdm
.model
.common
.CdmBase
;
45 import eu
.etaxonomy
.cdm
.persistence
.hibernate
.permission
.CdmPermissionEvaluator
;
51 public interface ICdmApplicationConfiguration
{
53 public TransactionStatus
startTransaction();
55 public TransactionStatus
startTransaction(Boolean readOnly
);
57 public void commitTransaction(TransactionStatus tx
);
59 public Object
getBean(String string
);
66 public INameService
getNameService();
71 public ITaxonService
getTaxonService();
76 public IClassificationService
getClassificationService();
82 public ITaxonNodeService
getTaxonNodeService();
87 public IReferenceService
getReferenceService();
92 public IAgentService
getAgentService();
97 public IDescriptionService
getDescriptionService();
102 public IOccurrenceService
getOccurrenceService();
107 public IMediaService
getMediaService();
112 public IDatabaseService
getDatabaseService();
117 public ITermService
getTermService();
122 public ICommonService
getCommonService();
128 public ILocationService
getLocationService();
134 public IUserService
getUserService();
141 public IGroupService
getGroupService();
147 public IGrantedAuthorityService
getGrantedAuthorityService();
152 public IService
<CdmBase
> getMainService();
158 public IWorkingSetService
getWorkingSetService();
163 public PlatformTransactionManager
getTransactionManager();
170 public ProviderManager
getAuthenticationManager();
175 public ConversationHolder
NewConversation();
181 public ICollectionService
getCollectionService();
187 public IFeatureTreeService
getFeatureTreeService();
193 public IFeatureNodeService
getFeatureNodeService();
199 public IVocabularyService
getVocabularyService();
204 public IIdentificationKeyService
getIdentificationKeyService();
209 public IPolytomousKeyService
getPolytomousKeyService();
214 public IPolytomousKeyNodeService
getPolytomousKeyNodeService();
217 * @return the configured PermissionEvaluator, usually the {@link CdmPermissionEvaluator}
219 public PermissionEvaluator
getPermissionEvaluator();
221 void authenticate(String username
, String password
);