\r
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;\r
import eu.etaxonomy.cdm.api.conversation.ConversationHolderMock;\r
+import eu.etaxonomy.cdm.api.longrunningService.ILongRunningTasksService;\r
import eu.etaxonomy.cdm.api.service.IAgentService;\r
import eu.etaxonomy.cdm.api.service.IAnnotationService;\r
import eu.etaxonomy.cdm.api.service.IClassificationService;\r
import eu.etaxonomy.cdm.api.service.IPreferenceService;\r
import eu.etaxonomy.cdm.api.service.IProgressMonitorService;\r
import eu.etaxonomy.cdm.api.service.IReferenceService;\r
+import eu.etaxonomy.cdm.api.service.IRegistrationService;\r
+import eu.etaxonomy.cdm.api.service.IRightsService;\r
import eu.etaxonomy.cdm.api.service.IService;\r
import eu.etaxonomy.cdm.api.service.ITaxonNodeService;\r
import eu.etaxonomy.cdm.api.service.ITaxonService;\r
import eu.etaxonomy.cdm.api.service.ITestService;\r
import eu.etaxonomy.cdm.api.service.IUserService;\r
import eu.etaxonomy.cdm.api.service.IVocabularyService;\r
-import eu.etaxonomy.cdm.api.service.IWorkingSetService;\r
+import eu.etaxonomy.cdm.api.service.IDescriptiveDataSetService;\r
import eu.etaxonomy.cdm.api.service.molecular.IAmplificationService;\r
import eu.etaxonomy.cdm.api.service.molecular.IPrimerService;\r
import eu.etaxonomy.cdm.api.service.molecular.ISequenceService;\r
\r
private ICdmRemoteSource remoteSource;\r
\r
- private Map serviceMap = new HashMap<Class<IService>, IService>();\r
+ //TODO should be something like Map<Class<IService>, IService>, but we have no common service base interface yet\r
+ private Map<Class<?>, Object> serviceMap = new HashMap<>();\r
\r
private ICdmEntitySessionManager cdmEntitySessionManager;\r
\r
this.remoteSource = remoteSource;\r
}\r
\r
- private Object getService(Class<?> clazz, String serviceSuffix, HttpComponentsHttpInvokerRequestExecutor executor) {\r
+ private Object getService(Class<?/* extends IService*/> clazz, String serviceSuffix, HttpComponentsHttpInvokerRequestExecutor executor) {\r
if(serviceMap.containsKey(clazz)) {\r
return serviceMap.get(clazz);\r
}\r
return (ITermService) getService(ITermService.class, "/remoting/term.service", new TermServiceRequestExecutor());\r
}\r
\r
+ @Override\r
+ public IRightsService getRightsService(){\r
+ return (IRightsService) getService(IRightsService.class, "/remoting/rights.service", new CdmServiceRequestExecutor());\r
+ }\r
+\r
@Override\r
public ICommonService getCommonService(){\r
return (ICommonService) getService(ICommonService.class, "/remoting/common.service", new CdmServiceRequestExecutor());\r
\r
@Override\r
public ProviderManager getAuthenticationManager(){\r
- if(authenticationManager != null) {\r
- return authenticationManager;\r
+ if(authenticationManager == null) {\r
+ authenticationManager = getAuthenticationManager(getUserService());\r
}\r
-\r
- authenticationManager = getAuthenticationManager(getUserService());\r
return authenticationManager;\r
}\r
\r
}\r
\r
@Override\r
- public IWorkingSetService getWorkingSetService(){\r
- return (IWorkingSetService) getService(IWorkingSetService.class, "/remoting/workingset.service", new CdmServiceRequestExecutor());\r
+ public IDescriptiveDataSetService getDescriptiveDataSetService(){\r
+ return (IDescriptiveDataSetService) getService(IDescriptiveDataSetService.class, "/remoting/descriptivedataset.service", new CdmServiceRequestExecutor());\r
+ }\r
+\r
+ /**\r
+ * {@inheritDoc}\r
+ */\r
+ @Override\r
+ public IRegistrationService getRegistrationService() {\r
+ return (IRegistrationService) getService(IRegistrationService.class, "/remoting/registration.service", new CdmServiceRequestExecutor());\r
+\r
}\r
\r
@Override\r
if(cdmPermissionEvaluator != null) {\r
return cdmPermissionEvaluator;\r
}\r
- List<AccessDecisionVoter<? extends Object>> decisionVoters = new ArrayList<AccessDecisionVoter<? extends Object>>();\r
+ List<AccessDecisionVoter<? extends Object>> decisionVoters = new ArrayList<>();\r
decisionVoters.add(new GrantAlwaysVoter());\r
decisionVoters.add(new TaxonNodeVoter());\r
decisionVoters.add(new TaxonBaseVoter());\r
return (IIOService) getService(IIOService.class, "/remoting/io.service", new CdmServiceRequestExecutor());\r
}\r
\r
+ public ILongRunningTasksService getLongRunningTasksService() {\r
+ return (ILongRunningTasksService) getService(ILongRunningTasksService.class, "/remoting/longrunningtasks.service", new CdmServiceRequestExecutor());\r
+ }\r
+\r
public ITestService getTestService() {\r
return (ITestService) getService(ITestService.class, "/remoting/test.service", new CdmServiceRequestExecutor());\r
}\r