import org.springframework.security.access.PermissionEvaluator;
import org.springframework.security.authentication.AuthenticationManager;
import org.springframework.security.core.Authentication;
+import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.context.SecurityContext;
import org.springframework.security.core.context.SecurityContextHolder;
import eu.etaxonomy.cdm.api.cache.CdmServiceCacher;
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
import eu.etaxonomy.cdm.api.service.IAgentService;
+import eu.etaxonomy.cdm.api.service.IAnnotationService;
+import eu.etaxonomy.cdm.api.service.IClassificationService;
import eu.etaxonomy.cdm.api.service.ICollectionService;
import eu.etaxonomy.cdm.api.service.ICommonService;
+import eu.etaxonomy.cdm.api.service.IDescriptionService;
+import eu.etaxonomy.cdm.api.service.IEntityConstraintViolationService;
+import eu.etaxonomy.cdm.api.service.IEntityValidationService;
+import eu.etaxonomy.cdm.api.service.IFeatureNodeService;
+import eu.etaxonomy.cdm.api.service.IFeatureTreeService;
+import eu.etaxonomy.cdm.api.service.IGrantedAuthorityService;
+import eu.etaxonomy.cdm.api.service.IGroupService;
+import eu.etaxonomy.cdm.api.service.IMarkerService;
+import eu.etaxonomy.cdm.api.service.IMediaService;
import eu.etaxonomy.cdm.api.service.INameService;
import eu.etaxonomy.cdm.api.service.IOccurrenceService;
+import eu.etaxonomy.cdm.api.service.IPolytomousKeyNodeService;
import eu.etaxonomy.cdm.api.service.IPolytomousKeyService;
import eu.etaxonomy.cdm.api.service.IReferenceService;
+import eu.etaxonomy.cdm.api.service.IRegistrationService;
+import eu.etaxonomy.cdm.api.service.IRightsService;
import eu.etaxonomy.cdm.api.service.IService;
import eu.etaxonomy.cdm.api.service.ITaxonService;
+import eu.etaxonomy.cdm.api.service.ITermService;
import eu.etaxonomy.cdm.api.service.IUserService;
+import eu.etaxonomy.cdm.api.service.IVocabularyService;
+import eu.etaxonomy.cdm.api.service.IWorkingSetService;
import eu.etaxonomy.cdm.api.service.molecular.IAmplificationService;
import eu.etaxonomy.cdm.api.service.molecular.IPrimerService;
+import eu.etaxonomy.cdm.api.service.statistics.Statistics;
import eu.etaxonomy.cdm.config.ICdmSource;
import eu.etaxonomy.cdm.database.DbSchemaValidation;
import eu.etaxonomy.cdm.model.agent.AgentBase;
+import eu.etaxonomy.cdm.model.common.Annotation;
import eu.etaxonomy.cdm.model.common.CdmBase;
+import eu.etaxonomy.cdm.model.common.DefinedTerm;
+import eu.etaxonomy.cdm.model.common.DefinedTermBase;
+import eu.etaxonomy.cdm.model.common.Group;
import eu.etaxonomy.cdm.model.common.Language;
+import eu.etaxonomy.cdm.model.common.Marker;
+import eu.etaxonomy.cdm.model.common.TermVocabulary;
import eu.etaxonomy.cdm.model.common.User;
+import eu.etaxonomy.cdm.model.description.DescriptionBase;
+import eu.etaxonomy.cdm.model.description.FeatureNode;
+import eu.etaxonomy.cdm.model.description.FeatureTree;
import eu.etaxonomy.cdm.model.description.PolytomousKey;
+import eu.etaxonomy.cdm.model.description.PolytomousKeyNode;
+import eu.etaxonomy.cdm.model.description.WorkingSet;
+import eu.etaxonomy.cdm.model.media.Media;
+import eu.etaxonomy.cdm.model.media.Rights;
import eu.etaxonomy.cdm.model.molecular.Amplification;
import eu.etaxonomy.cdm.model.molecular.Primer;
+import eu.etaxonomy.cdm.model.name.Registration;
import eu.etaxonomy.cdm.model.name.TaxonName;
import eu.etaxonomy.cdm.model.occurrence.Collection;
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
import eu.etaxonomy.cdm.model.reference.Reference;
+import eu.etaxonomy.cdm.model.taxon.Classification;
import eu.etaxonomy.cdm.model.taxon.TaxonBase;
+import eu.etaxonomy.cdm.model.validation.EntityConstraintViolation;
+import eu.etaxonomy.cdm.model.validation.EntityValidation;
+import eu.etaxonomy.cdm.model.view.AuditEvent;
import eu.etaxonomy.cdm.persistence.hibernate.permission.CRUD;
import eu.etaxonomy.cdm.persistence.hibernate.permission.ICdmPermissionEvaluator;
import eu.etaxonomy.cdm.persistence.hibernate.permission.Role;
*/
public static void close(final IProgressMonitor monitor) {
Display.getDefault().asyncExec(new Runnable() {
- /*
- * (non-Javadoc)
- *
- * @see java.lang.Runnable#run()
- */
+
@Override
public void run() {
getContextManager().notifyContextAboutToStop(monitor);
else if (cdmBase instanceof SpecimenOrObservationBase) {
service = (IService<T>) getService(IOccurrenceService.class);
}
+ else if (cdmBase instanceof Media) {
+ service = (IService<T>) getService(IMediaService.class);
+ }
else if (cdmBase instanceof Collection) {
service = (IService<T>) getService(ICollectionService.class);
}
else if (cdmBase instanceof User) {
service = (IService<T>) getService(IUserService.class);
}
+ else if (cdmBase instanceof Group) {
+ service = (IService<T>) getService(IGroupService.class);
+ }
+ else if (cdmBase instanceof WorkingSet) {
+ service = (IService<T>) getService(IWorkingSetService.class);
+ }
+ else if (cdmBase instanceof TermVocabulary<?>) {
+ service = (IService<T>) getService(IVocabularyService.class);
+ }
+ else if (cdmBase instanceof DefinedTermBase<?>) {
+ service = (IService<T>) getService(ITermService.class);
+ }
else if (cdmBase instanceof Primer) {
service = (IService<T>) getService(IPrimerService.class);
}
else if (cdmBase instanceof Amplification) {
service = (IService<T>) getService(IAmplificationService.class);
- } else if (cdmBase instanceof PolytomousKey) {
+ }
+ else if (cdmBase instanceof PolytomousKey) {
service = (IService<T>) getService(IPolytomousKeyService.class);
}
+ else if (cdmBase instanceof PolytomousKeyNode) {
+ service = (IService<T>) getService(IPolytomousKeyNodeService.class);
+ }
+ else if (cdmBase instanceof Annotation) {
+ service = (IService<T>) getService(IAnnotationService.class);
+ }
+// else if (cdmBase instanceof AuditEvent) {
+// service = (IService<T>) getService(IAuditEventService.class);
+// }
+ else if (cdmBase instanceof Classification) {
+ service = (IService<T>) getService(IClassificationService.class);
+ }
+ else if (cdmBase instanceof DescriptionBase<?>) {
+ service = (IService<T>) getService(IDescriptionService.class);
+ }
+ else if (cdmBase instanceof EntityConstraintViolation) {
+ service = (IService<T>) getService(IEntityConstraintViolationService.class);
+ }
+ else if (cdmBase instanceof EntityValidation) {
+ service = (IService<T>) getService(IEntityValidationService.class);
+ }
+ else if (cdmBase instanceof FeatureNode) {
+ service = (IService<T>) getService(IFeatureNodeService.class);
+ }
+ else if (cdmBase instanceof FeatureTree) {
+ service = (IService<T>) getService(IFeatureTreeService.class);
+ }
+ else if (cdmBase instanceof GrantedAuthority) {
+ service = (IService<T>) getService(IGrantedAuthorityService.class);
+ }
+ else if (cdmBase instanceof Marker) {
+ service = (IService<T>) getService(IMarkerService.class);
+ }
+ else if (cdmBase instanceof Registration) {
+ service = (IService<T>) getService(IRegistrationService.class);
+ }
+ else if (cdmBase instanceof Rights) {
+ service = (IService<T>) getService(IRightsService.class);
+ }
+ else{
+ String message = "Service for entity of class %s not yet implemented in TaxEditor";
+ message = String.format(message, cdmBase.getClass().getSimpleName());
+ throw new RuntimeException(message);
+ }
}
return service;
}