RM-664 (Not possible to edit event without changing the name)

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/BRANCHES/V2.0@48749 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Tuna Aksoy
2013-04-02 22:21:56 +00:00
parent 48383b497e
commit ccf4f1cd54
7 changed files with 542 additions and 377 deletions

View File

@@ -5,25 +5,25 @@
<!-- Records Management Service Registry --> <!-- Records Management Service Registry -->
<bean id="RecordsManagementServiceRegistry" class="org.alfresco.module.org_alfresco_module_rm.RecordsManagementServiceRegistryImpl" /> <bean id="RecordsManagementServiceRegistry" class="org.alfresco.module.org_alfresco_module_rm.RecordsManagementServiceRegistryImpl" />
<!-- Disposition selection strategy --> <!-- Disposition selection strategy -->
<bean id="org_alfresco_module_rm_dispositionSelectionStrategy" <bean id="org_alfresco_module_rm_dispositionSelectionStrategy"
class="org.alfresco.module.org_alfresco_module_rm.disposition.DispositionSelectionStrategy" > class="org.alfresco.module.org_alfresco_module_rm.disposition.DispositionSelectionStrategy" >
<property name="dispositionService" ref="dispositionService"/> <property name="dispositionService" ref="dispositionService"/>
</bean> </bean>
<!-- Records Management Service --> <!-- Records Management Service -->
<bean id="recordsManagementService" class="org.alfresco.module.org_alfresco_module_rm.RecordsManagementServiceImpl" <bean id="recordsManagementService" class="org.alfresco.module.org_alfresco_module_rm.RecordsManagementServiceImpl"
depends-on="org_alfresco_module_rm_dictionaryBootstrap" init-method="init"> depends-on="org_alfresco_module_rm_dictionaryBootstrap" init-method="init">
<property name="recordsManagementServiceRegistry" ref="RecordsManagementServiceRegistry"/> <property name="recordsManagementServiceRegistry" ref="RecordsManagementServiceRegistry"/>
<property name="rmActionService" ref="recordsManagementActionService"/> <property name="rmActionService" ref="recordsManagementActionService"/>
<property name="nodeService" ref="nodeService"/> <property name="nodeService" ref="nodeService"/>
<property name="policyComponent" ref="policyComponent"/> <property name="policyComponent" ref="policyComponent"/>
<property name="nodeDAO" ref="nodeDAO"/> <property name="nodeDAO" ref="nodeDAO"/>
</bean> </bean>
<bean id="RecordsManagementService" class="org.springframework.aop.framework.ProxyFactoryBean"> <bean id="RecordsManagementService" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces"> <property name="proxyInterfaces">
<value>org.alfresco.module.org_alfresco_module_rm.RecordsManagementService</value> <value>org.alfresco.module.org_alfresco_module_rm.RecordsManagementService</value>
@@ -87,26 +87,26 @@
org.alfresco.module.org_alfresco_module_rm.RecordsManagementService.createRecordCategory=RM.Write.0 org.alfresco.module.org_alfresco_module_rm.RecordsManagementService.createRecordCategory=RM.Write.0
org.alfresco.module.org_alfresco_module_rm.RecordsManagementService.isRecordFolderDeclared=RM.Read.0 org.alfresco.module.org_alfresco_module_rm.RecordsManagementService.isRecordFolderDeclared=RM.Read.0
org.alfresco.module.org_alfresco_module_rm.RecordsManagementService.isRecordFolderClosed=RM.Read.0 org.alfresco.module.org_alfresco_module_rm.RecordsManagementService.isRecordFolderClosed=RM.Read.0
org.alfresco.module.org_alfresco_module_rm.RecordsManagementService.createRecordFolder=RM.Write.0 org.alfresco.module.org_alfresco_module_rm.RecordsManagementService.createRecordFolder=RM.Write.0
org.alfresco.module.org_alfresco_module_rm.RecordsManagementService.getRecords=RM.Read.0,AFTER_RM.FilterNode org.alfresco.module.org_alfresco_module_rm.RecordsManagementService.getRecords=RM.Read.0,AFTER_RM.FilterNode
org.alfresco.module.org_alfresco_module_rm.RecordsManagementService.getRecordMetaDataAspects=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.RecordsManagementService.getRecordMetaDataAspects=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.RecordsManagementService.getRecordFolders=RM.Read.0,AFTER_RM.FilterNode org.alfresco.module.org_alfresco_module_rm.RecordsManagementService.getRecordFolders=RM.Read.0,AFTER_RM.FilterNode
org.alfresco.module.org_alfresco_module_rm.RecordsManagementService.isRecordDeclared=RM.Read.0 org.alfresco.module.org_alfresco_module_rm.RecordsManagementService.isRecordDeclared=RM.Read.0
org.alfresco.module.org_alfresco_module_rm.RecordsManagementService.*=RM_DENY org.alfresco.module.org_alfresco_module_rm.RecordsManagementService.*=RM_DENY
]]> ]]>
</value> </value>
</property> </property>
</bean> </bean>
<!-- Vital Record Service --> <!-- Vital Record Service -->
<bean id="vitalRecordService" class="org.alfresco.module.org_alfresco_module_rm.vital.VitalRecordServiceImpl" init-method="init"> <bean id="vitalRecordService" class="org.alfresco.module.org_alfresco_module_rm.vital.VitalRecordServiceImpl" init-method="init">
<property name="recordsManagementService" ref="RecordsManagementService"/> <property name="recordsManagementService" ref="RecordsManagementService"/>
<property name="recordsManagementActionService" ref="RecordsManagementActionService"/> <property name="recordsManagementActionService" ref="RecordsManagementActionService"/>
<property name="nodeService" ref="NodeService"/> <property name="nodeService" ref="NodeService"/>
<property name="policyComponent" ref="policyComponent"/> <property name="policyComponent" ref="policyComponent"/>
</bean> </bean>
<bean id="VitalRecordService" class="org.springframework.aop.framework.ProxyFactoryBean"> <bean id="VitalRecordService" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces"> <property name="proxyInterfaces">
<value>org.alfresco.module.org_alfresco_module_rm.vital.VitalRecordService</value> <value>org.alfresco.module.org_alfresco_module_rm.vital.VitalRecordService</value>
@@ -146,25 +146,25 @@
</property> </property>
<property name="objectDefinitionSource"> <property name="objectDefinitionSource">
<value> <value>
<![CDATA[ <![CDATA[
org.alfresco.module.org_alfresco_module_rm.vital.VitalRecordService.*=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.vital.VitalRecordService.*=RM_ALLOW
]]> ]]>
</value> </value>
</property> </property>
</bean> </bean>
<!-- Disposition Service --> <!-- Disposition Service -->
<bean id="dispositionService" class="org.alfresco.module.org_alfresco_module_rm.disposition.DispositionServiceImpl"> <bean id="dispositionService" class="org.alfresco.module.org_alfresco_module_rm.disposition.DispositionServiceImpl">
<property name="recordsManagementServiceRegistry" ref="RecordsManagementServiceRegistry"/> <property name="recordsManagementServiceRegistry" ref="RecordsManagementServiceRegistry"/>
<property name="nodeService" ref="NodeService"/> <property name="nodeService" ref="NodeService"/>
<property name="dictionaryService" ref="DictionaryService"/> <property name="dictionaryService" ref="DictionaryService"/>
<property name="behaviourFilter" ref="policyBehaviourFilter" /> <property name="behaviourFilter" ref="policyBehaviourFilter" />
<property name="dispositionSelectionStrategy"> <property name="dispositionSelectionStrategy">
<ref local="org_alfresco_module_rm_dispositionSelectionStrategy" /> <ref local="org_alfresco_module_rm_dispositionSelectionStrategy" />
</property> </property>
</bean> </bean>
<bean id="DispositionService" class="org.springframework.aop.framework.ProxyFactoryBean"> <bean id="DispositionService" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces"> <property name="proxyInterfaces">
<value>org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService</value> <value>org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService</value>
@@ -206,32 +206,32 @@
<value> <value>
<![CDATA[ <![CDATA[
org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.registerDispositionProperty=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.registerDispositionProperty=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.getDispositionProperties=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.getDispositionProperties=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.getDispositionSchedule=RM.Read.0 org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.getDispositionSchedule=RM.Read.0
org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.getAssociatedDispositionSchedule=RM.Read.0 org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.getAssociatedDispositionSchedule=RM.Read.0
org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.getAssociatedRecordsManagementContainer=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.getAssociatedRecordsManagementContainer=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.hasDisposableItems=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.hasDisposableItems=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.isDisposableItem=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.isDisposableItem=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.getDisposableItems=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.getDisposableItems=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.createDispositionSchedule=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.createDispositionSchedule=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.addDispositionActionDefinition=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.addDispositionActionDefinition=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.removeDispositionActionDefinition=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.removeDispositionActionDefinition=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.updateDispositionActionDefinition=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.updateDispositionActionDefinition=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.isNextDispositionActionEligible=RM.Read.0 org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.isNextDispositionActionEligible=RM.Read.0
org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.getNextDispositionAction=RM.Read.0 org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.getNextDispositionAction=RM.Read.0
org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.getCompletedDispositionActions=RM.Read.0 org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.getCompletedDispositionActions=RM.Read.0
org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.getLastCompletedDispostionAction=RM.Read.0 org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.getLastCompletedDispostionAction=RM.Read.0
org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.*=RM_DENY org.alfresco.module.org_alfresco_module_rm.disposition.DispositionService.*=RM_DENY
]]> ]]>
</value> </value>
</property> </property>
</bean> </bean>
<!-- Capability Service --> <!-- Capability Service -->
<bean id="capabilityService" class="org.alfresco.module.org_alfresco_module_rm.capability.CapabilityServiceImpl"> <bean id="capabilityService" class="org.alfresco.module.org_alfresco_module_rm.capability.CapabilityServiceImpl">
</bean> </bean>
<bean id="CapabilityService" class="org.springframework.aop.framework.ProxyFactoryBean"> <bean id="CapabilityService" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces"> <property name="proxyInterfaces">
<value>org.alfresco.module.org_alfresco_module_rm.capability.CapabilityService</value> <value>org.alfresco.module.org_alfresco_module_rm.capability.CapabilityService</value>
@@ -277,12 +277,12 @@
</value> </value>
</property> </property>
</bean> </bean>
<!-- Records Management Search Service --> <!-- Records Management Search Service -->
<bean id="recordsManagementSearchService" class="org.alfresco.module.org_alfresco_module_rm.search.RecordsManagementSearchServiceImpl"> <bean id="recordsManagementSearchService" class="org.alfresco.module.org_alfresco_module_rm.search.RecordsManagementSearchServiceImpl">
<property name="fileFolderService" ref="FileFolderService"/> <property name="fileFolderService" ref="FileFolderService"/>
<property name="siteService" ref="SiteService"/> <property name="siteService" ref="SiteService"/>
<property name="namespaceService" ref="NamespaceService" /> <property name="namespaceService" ref="NamespaceService" />
<property name="searchService" ref="SearchService" /> <property name="searchService" ref="SearchService" />
<property name="reportsJSON"> <property name="reportsJSON">
@@ -297,7 +297,7 @@
{ {
"records" : true, "records" : true,
"vitalrecords" : true "vitalrecords" : true
} }
}, },
{ {
"name" : "Undeclared Records", "name" : "Undeclared Records",
@@ -305,7 +305,7 @@
"search" : "ISNODE:T AND NOT ASPECT:\"rma:declaredRecord\"", "search" : "ISNODE:T AND NOT ASPECT:\"rma:declaredRecord\"",
"searchparams" : "searchparams" :
{ {
"records" : true, "records" : true,
"recordfolders" : false, "recordfolders" : false,
"undeclaredrecords" : true "undeclaredrecords" : true
} }
@@ -357,9 +357,9 @@
] ]
]]> ]]>
</value> </value>
</property> </property>
</bean> </bean>
<bean id="RecordsManagementSearchService" class="org.springframework.aop.framework.ProxyFactoryBean"> <bean id="RecordsManagementSearchService" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces"> <property name="proxyInterfaces">
<value>org.alfresco.module.org_alfresco_module_rm.search.RecordsManagementSearchService</value> <value>org.alfresco.module.org_alfresco_module_rm.search.RecordsManagementSearchService</value>
@@ -404,29 +404,29 @@
org.alfresco.module.org_alfresco_module_rm.search.RecordsManagementSearchService.getSavedSearches=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.search.RecordsManagementSearchService.getSavedSearches=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.search.RecordsManagementSearchService.getSavedSearch=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.search.RecordsManagementSearchService.getSavedSearch=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.search.RecordsManagementSearchService.saveSearch=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.search.RecordsManagementSearchService.saveSearch=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.search.RecordsManagementSearchService.deleteSavedSearch=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.search.RecordsManagementSearchService.deleteSavedSearch=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.search.RecordsManagementSearchService.addReports=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.search.RecordsManagementSearchService.addReports=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.search.RecordsManagementSearchService.*=RM_DENY org.alfresco.module.org_alfresco_module_rm.search.RecordsManagementSearchService.*=RM_DENY
]]> ]]>
</value> </value>
</property> </property>
</bean> </bean>
<!-- Records Management Security Service --> <!-- Records Management Security Service -->
<bean id="recordsManagementSecurityService" <bean id="recordsManagementSecurityService"
class="org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityServiceImpl" class="org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityServiceImpl"
depends-on="org_alfresco_module_rm_dictionaryBootstrap" depends-on="org_alfresco_module_rm_dictionaryBootstrap"
init-method="init"> init-method="init">
<property name="voter" ref="rmEntryVoter"/> <property name="voter" ref="rmEntryVoter"/>
<property name="capabilityService" ref="CapabilityService"/> <property name="capabilityService" ref="CapabilityService"/>
<property name="authorityService" ref="AuthorityService"/> <property name="authorityService" ref="AuthorityService"/>
<property name="permissionService" ref="PermissionService"/> <property name="permissionService" ref="PermissionService"/>
<property name="nodeService" ref="NodeService"/> <property name="nodeService" ref="NodeService"/>
<property name="policyComponent" ref="policyComponent"/> <property name="policyComponent" ref="policyComponent"/>
<property name="recordsManagementService" ref="RecordsManagementService"/> <property name="recordsManagementService" ref="RecordsManagementService"/>
</bean> </bean>
<bean id="RecordsManagementSecurityService" class="org.springframework.aop.framework.ProxyFactoryBean"> <bean id="RecordsManagementSecurityService" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces"> <property name="proxyInterfaces">
<value>org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService</value> <value>org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService</value>
@@ -466,11 +466,11 @@
</property> </property>
<property name="objectDefinitionSource"> <property name="objectDefinitionSource">
<value> <value>
<![CDATA[ <![CDATA[
org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.getProtectedAspects=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.getProtectedAspects=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.getProtectedProperties=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.getProtectedProperties=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.setPermission=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.setPermission=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.deletePermission=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.deletePermission=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.bootstrapDefaultRoles=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.bootstrapDefaultRoles=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.getRoles=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.getRoles=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.getRolesByUser=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.getRolesByUser=RM_ALLOW
@@ -480,19 +480,19 @@
org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.createRole=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.createRole=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.updateRole=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.updateRole=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.deleteRole=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.deleteRole=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.assignRoleToAuthority=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.security.RecordsManagementSecurityService.assignRoleToAuthority=RM_ALLOW
]]> ]]>
</value> </value>
</property> </property>
</bean> </bean>
<!-- Records Management Action Service --> <!-- Records Management Action Service -->
<bean id="recordsManagementActionService" class="org.alfresco.module.org_alfresco_module_rm.action.RecordsManagementActionServiceImpl" init-method="init"> <bean id="recordsManagementActionService" class="org.alfresco.module.org_alfresco_module_rm.action.RecordsManagementActionServiceImpl" init-method="init">
<property name="policyComponent" ref="policyComponent"/> <property name="policyComponent" ref="policyComponent"/>
<property name="nodeService" ref="NodeService"/> <property name="nodeService" ref="NodeService"/>
</bean> </bean>
<bean id="RecordsManagementActionService" class="org.springframework.aop.framework.ProxyFactoryBean"> <bean id="RecordsManagementActionService" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces"> <property name="proxyInterfaces">
<value>org.alfresco.module.org_alfresco_module_rm.action.RecordsManagementActionService</value> <value>org.alfresco.module.org_alfresco_module_rm.action.RecordsManagementActionService</value>
@@ -520,7 +520,7 @@
</property> </property>
</bean> </bean>
<bean id="RecordsManagementActionService_security" class="org.alfresco.repo.security.permissions.impl.acegi.MethodSecurityInterceptor"> <bean id="RecordsManagementActionService_security" class="org.alfresco.repo.security.permissions.impl.acegi.MethodSecurityInterceptor">
<property name="authenticationManager"> <property name="authenticationManager">
<ref bean="authenticationManager"/> <ref bean="authenticationManager"/>
@@ -533,7 +533,7 @@
</property> </property>
<property name="objectDefinitionSource"> <property name="objectDefinitionSource">
<value> <value>
<![CDATA[ <![CDATA[
org.alfresco.module.org_alfresco_module_rm.action.RecordsManagementActionService.getRecordsManagementActions=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.action.RecordsManagementActionService.getRecordsManagementActions=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.action.RecordsManagementActionService.getDispositionActions=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.action.RecordsManagementActionService.getDispositionActions=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.action.RecordsManagementActionService.getRecordsManagementAction=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.action.RecordsManagementActionService.getRecordsManagementAction=RM_ALLOW
@@ -549,14 +549,14 @@
</value> </value>
</property> </property>
</bean> </bean>
<!-- Records Management Event Service --> <!-- Records Management Event Service -->
<bean id="recordsManagementEventService" class="org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventServiceImpl"> <bean id="recordsManagementEventService" class="org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventServiceImpl">
<property name="nodeService" ref="NodeService"/> <property name="nodeService" ref="NodeService"/>
<property name="contentService" ref="ContentService"/> <property name="contentService" ref="ContentService"/>
</bean> </bean>
<bean id="RecordsManagementEventService" class="org.springframework.aop.framework.ProxyFactoryBean"> <bean id="RecordsManagementEventService" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces"> <property name="proxyInterfaces">
<value>org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService</value> <value>org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService</value>
@@ -584,7 +584,7 @@
</property> </property>
</bean> </bean>
<bean id="RecordsManagementEventService_security" class="org.alfresco.repo.security.permissions.impl.acegi.MethodSecurityInterceptor"> <bean id="RecordsManagementEventService_security" class="org.alfresco.repo.security.permissions.impl.acegi.MethodSecurityInterceptor">
<property name="authenticationManager"> <property name="authenticationManager">
<ref bean="authenticationManager"/> <ref bean="authenticationManager"/>
@@ -597,7 +597,7 @@
</property> </property>
<property name="objectDefinitionSource"> <property name="objectDefinitionSource">
<value> <value>
<![CDATA[ <![CDATA[
org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService.registerEventType=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService.registerEventType=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService.getEventTypes=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService.getEventTypes=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService.getEventType=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService.getEventType=RM_ALLOW
@@ -606,15 +606,16 @@
org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService.addEvent=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService.addEvent=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService.removeEvent=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService.removeEvent=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService.existsEvent=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService.existsEvent=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService.existsEventDisplayLabel=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService.canCreateEvent=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService.canEditEvent=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService.*=RM_DENY org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService.*=RM_DENY
]]> ]]>
</value> </value>
</property> </property>
</bean> </bean>
<!-- Records Management Admin Service --> <!-- Records Management Admin Service -->
<bean id="recordsManagementAdminService" class="org.alfresco.module.org_alfresco_module_rm.RecordsManagementAdminServiceImpl" init-method="init"> <bean id="recordsManagementAdminService" class="org.alfresco.module.org_alfresco_module_rm.RecordsManagementAdminServiceImpl" init-method="init">
<property name="dictionaryService" ref="DictionaryService"/> <property name="dictionaryService" ref="DictionaryService"/>
<property name="namespaceService" ref="NamespaceService"/> <property name="namespaceService" ref="NamespaceService"/>
@@ -627,11 +628,11 @@
<value>rma:recordCategory</value> <value>rma:recordCategory</value>
<value>rma:recordFolder</value> <value>rma:recordFolder</value>
<value>rma:record</value> <value>rma:record</value>
<value>rma:nonElectronicDocument</value> <value>rma:nonElectronicDocument</value>
</list> </list>
</property> </property>
</bean> </bean>
<bean id="RecordsManagementAdminService" class="org.springframework.aop.framework.ProxyFactoryBean"> <bean id="RecordsManagementAdminService" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces"> <property name="proxyInterfaces">
<value>org.alfresco.module.org_alfresco_module_rm.RecordsManagementAdminService</value> <value>org.alfresco.module.org_alfresco_module_rm.RecordsManagementAdminService</value>
@@ -659,7 +660,7 @@
</property> </property>
</bean> </bean>
<bean id="RecordsManagementAdminService_security" class="org.alfresco.repo.security.permissions.impl.acegi.MethodSecurityInterceptor"> <bean id="RecordsManagementAdminService_security" class="org.alfresco.repo.security.permissions.impl.acegi.MethodSecurityInterceptor">
<property name="authenticationManager"> <property name="authenticationManager">
<ref bean="authenticationManager"/> <ref bean="authenticationManager"/>
@@ -672,7 +673,7 @@
</property> </property>
<property name="objectDefinitionSource"> <property name="objectDefinitionSource">
<value> <value>
<![CDATA[ <![CDATA[
org.alfresco.module.org_alfresco_module_rm.RecordsManagementAdminService.initialiseCustomModel=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.RecordsManagementAdminService.initialiseCustomModel=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.RecordsManagementAdminService.getCustomisable=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.RecordsManagementAdminService.getCustomisable=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.RecordsManagementAdminService.isCustomisable=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.RecordsManagementAdminService.isCustomisable=RM_ALLOW
@@ -709,17 +710,17 @@
</value> </value>
</property> </property>
</bean> </bean>
<!-- Freeze Service --> <!-- Freeze Service -->
<bean id="freezeService" class="org.alfresco.module.org_alfresco_module_rm.freeze.FreezeServiceImpl" init-method="init"> <bean id="freezeService" class="org.alfresco.module.org_alfresco_module_rm.freeze.FreezeServiceImpl" init-method="init">
<property name="policyComponent" ref="policyComponent" /> <property name="policyComponent" ref="policyComponent" />
<property name="recordsManagementService" ref="RecordsManagementService" /> <property name="recordsManagementService" ref="RecordsManagementService" />
<property name="nodeService" ref="nodeService" /> <property name="nodeService" ref="nodeService" />
</bean> </bean>
<!-- Records Management Audit Service --> <!-- Records Management Audit Service -->
<bean id="recordsManagementAuditService" class="org.alfresco.module.org_alfresco_module_rm.audit.RecordsManagementAuditServiceImpl" init-method="init"> <bean id="recordsManagementAuditService" class="org.alfresco.module.org_alfresco_module_rm.audit.RecordsManagementAuditServiceImpl" init-method="init">
<property name="policyComponent" ref="policyComponent" /> <property name="policyComponent" ref="policyComponent" />
<property name="dictionaryService" ref="dictionaryService" /> <property name="dictionaryService" ref="dictionaryService" />
@@ -731,7 +732,7 @@
<property name="recordsManagementService" ref="RecordsManagementService" /> <property name="recordsManagementService" ref="RecordsManagementService" />
<property name="recordsManagementActionService" ref="RecordsManagementActionService" /> <property name="recordsManagementActionService" ref="RecordsManagementActionService" />
</bean> </bean>
<bean id="RecordsManagementAuditService" class="org.springframework.aop.framework.ProxyFactoryBean"> <bean id="RecordsManagementAuditService" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces"> <property name="proxyInterfaces">
<value>org.alfresco.module.org_alfresco_module_rm.audit.RecordsManagementAuditService</value> <value>org.alfresco.module.org_alfresco_module_rm.audit.RecordsManagementAuditService</value>
@@ -758,7 +759,7 @@
</props> </props>
</property> </property>
</bean> </bean>
<bean id="RecordsManagementAuditService_security" class="org.alfresco.repo.security.permissions.impl.acegi.MethodSecurityInterceptor"> <bean id="RecordsManagementAuditService_security" class="org.alfresco.repo.security.permissions.impl.acegi.MethodSecurityInterceptor">
<property name="authenticationManager"> <property name="authenticationManager">
<ref bean="authenticationManager"/> <ref bean="authenticationManager"/>
@@ -771,7 +772,7 @@
</property> </property>
<property name="objectDefinitionSource"> <property name="objectDefinitionSource">
<value> <value>
<![CDATA[ <![CDATA[
org.alfresco.module.org_alfresco_module_rm.audit.RecordsManagementAuditService.clear=RM_CAP.-1.rma:filePlanComponent.DeleteAudit org.alfresco.module.org_alfresco_module_rm.audit.RecordsManagementAuditService.clear=RM_CAP.-1.rma:filePlanComponent.DeleteAudit
org.alfresco.module.org_alfresco_module_rm.audit.RecordsManagementAuditService.getAuditTrail=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.audit.RecordsManagementAuditService.getAuditTrail=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.audit.RecordsManagementAuditService.getAuditTrailFile=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.audit.RecordsManagementAuditService.getAuditTrailFile=RM_ALLOW
@@ -787,10 +788,10 @@
</value> </value>
</property> </property>
</bean> </bean>
<!-- Custom EMail Mapping Service --> <!-- Custom EMail Mapping Service -->
<bean id="customEmailMappingService" <bean id="customEmailMappingService"
class="org.alfresco.module.org_alfresco_module_rm.email.CustomEmailMappingServiceImpl" > class="org.alfresco.module.org_alfresco_module_rm.email.CustomEmailMappingServiceImpl" >
<property name="extracter" ref="extracter.RFC822" /> <property name="extracter" ref="extracter.RFC822" />
<property name="nodeService" ref="nodeService" /> <property name="nodeService" ref="nodeService" />
@@ -800,10 +801,10 @@
</property> </property>
<property name="policyComponent"><ref bean="policyComponent" /></property> <property name="policyComponent"><ref bean="policyComponent" /></property>
<property name="transactionService"><ref bean="transactionService" /></property> <property name="transactionService"><ref bean="transactionService" /></property>
</bean> </bean>
<bean id="CustomEmailMappingService_transaction" class="org.springframework.transaction.interceptor.TransactionInterceptor"> <bean id="CustomEmailMappingService_transaction" class="org.springframework.transaction.interceptor.TransactionInterceptor">
<property name="transactionManager"> <property name="transactionManager">
<ref bean="transactionManager"/> <ref bean="transactionManager"/>
@@ -814,7 +815,7 @@
</props> </props>
</property> </property>
</bean> </bean>
<bean id="CustomEmailMappingService_security" class="org.alfresco.repo.security.permissions.impl.acegi.MethodSecurityInterceptor"> <bean id="CustomEmailMappingService_security" class="org.alfresco.repo.security.permissions.impl.acegi.MethodSecurityInterceptor">
<property name="authenticationManager"> <property name="authenticationManager">
<ref bean="authenticationManager"/> <ref bean="authenticationManager"/>
@@ -827,7 +828,7 @@
</property> </property>
<property name="objectDefinitionSource"> <property name="objectDefinitionSource">
<value> <value>
<![CDATA[ <![CDATA[
org.alfresco.module.org_alfresco_module_rm.email.CustomEmailMappingService.getCustomMappings=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.email.CustomEmailMappingService.getCustomMappings=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.email.CustomEmailMappingService.addCustomMapping=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.email.CustomEmailMappingService.addCustomMapping=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.email.CustomEmailMappingService.deleteCustomMapping=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.email.CustomEmailMappingService.deleteCustomMapping=RM_ALLOW
@@ -837,7 +838,7 @@
</property> </property>
</bean> </bean>
<bean id="CustomEmailMappingService" class="org.springframework.aop.framework.ProxyFactoryBean"> <bean id="CustomEmailMappingService" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces"> <property name="proxyInterfaces">
<list> <list>
@@ -855,10 +856,10 @@
</list> </list>
</property> </property>
</bean> </bean>
<!-- RM Notification Helper --> <!-- RM Notification Helper -->
<bean id="recordsManagementNotificationHelper" class="org.alfresco.module.org_alfresco_module_rm.notification.RecordsManagementNotificationHelper" > <bean id="recordsManagementNotificationHelper" class="org.alfresco.module.org_alfresco_module_rm.notification.RecordsManagementNotificationHelper" >
<property name="securityService" ref="RecordsManagementSecurityService"/> <property name="securityService" ref="RecordsManagementSecurityService"/>
<property name="notificationService" ref="NotificationService"/> <property name="notificationService" ref="NotificationService"/>
<property name="recordsManagementService" ref="RecordsManagementService"/> <property name="recordsManagementService" ref="RecordsManagementService"/>
@@ -869,17 +870,17 @@
<property name="siteService" ref="SiteService" /> <property name="siteService" ref="SiteService" />
<property name="authorityService" ref="authorityService" /> <property name="authorityService" ref="authorityService" />
<property name="notificationRole" value="${rm.notification.role}"/> <property name="notificationRole" value="${rm.notification.role}"/>
</bean> </bean>
<!-- RM caveats --> <!-- RM caveats -->
<bean id="caveatConfigService" class="org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigServiceImpl"> <bean id="caveatConfigService" class="org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigServiceImpl">
<property name="caveatConfigComponent" ref="caveatConfigComponent"/> <property name="caveatConfigComponent" ref="caveatConfigComponent"/>
<property name="dictionaryService" ref="dictionaryService"/> <property name="dictionaryService" ref="dictionaryService"/>
<property name="namespaceService" ref="namespaceService" /> <property name="namespaceService" ref="namespaceService" />
<property name="recordsManagementAdminService" ref = "recordsManagementAdminService"/> <property name="recordsManagementAdminService" ref = "recordsManagementAdminService"/>
</bean> </bean>
<bean id="caveatConfigComponent" class="org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigComponentImpl"> <bean id="caveatConfigComponent" class="org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigComponentImpl">
<property name="policyComponent" ref="policyComponent"/> <property name="policyComponent" ref="policyComponent"/>
<property name="contentService" ref="contentService"/> <property name="contentService" ref="contentService"/>
@@ -888,12 +889,12 @@
<property name="authorityService" ref="authorityService"/> <property name="authorityService" ref="authorityService"/>
<property name="personService" ref="personService"/> <property name="personService" ref="personService"/>
<property name="nodeService" ref="nodeService"/> <property name="nodeService" ref="nodeService"/>
<property name="caveatAspects" ref="caveatAspects"/> <property name="caveatAspects" ref="caveatAspects"/>
<property name="caveatModels" ref="caveatModels"/> <property name="caveatModels" ref="caveatModels"/>
</bean> </bean>
<bean id="caveatAspects" class="java.util.ArrayList" > <bean id="caveatAspects" class="java.util.ArrayList" >
<constructor-arg> <constructor-arg>
<list> <list>
@@ -901,7 +902,7 @@
</list> </list>
</constructor-arg> </constructor-arg>
</bean> </bean>
<bean id="caveatModels" class="java.util.ArrayList" > <bean id="caveatModels" class="java.util.ArrayList" >
<constructor-arg> <constructor-arg>
<list> <list>
@@ -909,11 +910,11 @@
</list> </list>
</constructor-arg> </constructor-arg>
</bean> </bean>
<bean id="rmListOfValuesContraintInit" class="org.alfresco.module.org_alfresco_module_rm.caveat.RMListOfValuesConstraint"> <bean id="rmListOfValuesContraintInit" class="org.alfresco.module.org_alfresco_module_rm.caveat.RMListOfValuesConstraint">
<property name="caveatConfigService" ref="caveatConfigService"/> <property name="caveatConfigService" ref="caveatConfigService"/>
</bean> </bean>
<bean id="CaveatConfigService_security" class="org.alfresco.repo.security.permissions.impl.acegi.MethodSecurityInterceptor"> <bean id="CaveatConfigService_security" class="org.alfresco.repo.security.permissions.impl.acegi.MethodSecurityInterceptor">
<property name="authenticationManager"> <property name="authenticationManager">
<ref bean="authenticationManager"/> <ref bean="authenticationManager"/>
@@ -926,8 +927,8 @@
</property> </property>
<property name="objectDefinitionSource"> <property name="objectDefinitionSource">
<value> <value>
<![CDATA[ <![CDATA[
org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.getRMAllowedValues=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.getRMAllowedValues=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.hasAccess=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.hasAccess=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.getRMConstraint=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.getRMConstraint=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.getAllRMConstraints=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.getAllRMConstraints=RM_ALLOW
@@ -937,7 +938,7 @@
org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.updateRMConstraintAllowedValues=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.updateRMConstraintAllowedValues=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.updateRMConstraintTitle=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.updateRMConstraintTitle=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.deleteRMConstraint=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.deleteRMConstraint=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.addRMConstraintListValue=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.addRMConstraintListValue=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.updateRMConstraintListAuthority=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.updateRMConstraintListAuthority=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.removeRMConstraintListAuthority=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.removeRMConstraintListAuthority=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.updateRMConstraintListValue=RM_ALLOW org.alfresco.module.org_alfresco_module_rm.caveat.RMCaveatConfigService.updateRMConstraintListValue=RM_ALLOW
@@ -946,7 +947,7 @@
]]> ]]>
</value> </value>
</property> </property>
</bean> </bean>
<bean id="CaveatConfigService_transaction" class="org.springframework.transaction.interceptor.TransactionInterceptor"> <bean id="CaveatConfigService_transaction" class="org.springframework.transaction.interceptor.TransactionInterceptor">
<property name="transactionManager"> <property name="transactionManager">
@@ -958,7 +959,7 @@
</props> </props>
</property> </property>
</bean> </bean>
<bean id="CaveatConfigService" class="org.springframework.aop.framework.ProxyFactoryBean"> <bean id="CaveatConfigService" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces"> <property name="proxyInterfaces">
<list> <list>
@@ -976,7 +977,7 @@
</list> </list>
</property> </property>
</bean> </bean>
<!-- Site service work around (see https://issues.alfresco.com/jira/browse/RM-387) --> <!-- Site service work around (see https://issues.alfresco.com/jira/browse/RM-387) -->
<bean name="siteGetChildrenCannedQueryFactory" class="org.alfresco.module.org_alfresco_module_rm.site.GetChildrenCannedQueryFactory"> <bean name="siteGetChildrenCannedQueryFactory" class="org.alfresco.module.org_alfresco_module_rm.site.GetChildrenCannedQueryFactory">
<property name="registry" ref="siteCannedQueryRegistry"/> <property name="registry" ref="siteCannedQueryRegistry"/>
@@ -989,5 +990,5 @@
<property name="cannedQueryDAO" ref="cannedQueryDAO"/> <property name="cannedQueryDAO" ref="cannedQueryDAO"/>
<property name="methodSecurity" ref="SiteService_security_listSites"/> <property name="methodSecurity" ref="SiteService_security_listSites"/>
</bean> </bean>
</beans> </beans>

View File

@@ -7,7 +7,7 @@
<property name="recordsManagementActionService" ref="RecordsManagementActionService"/> <property name="recordsManagementActionService" ref="RecordsManagementActionService"/>
<property name="nodeService" ref="NodeService"/> <property name="nodeService" ref="NodeService"/>
</bean> </bean>
<!-- Abstract parent bean for many RM get and post beans --> <!-- Abstract parent bean for many RM get and post beans -->
<bean id="rmBaseWebscript" parent="webscript" abstract="true"> <bean id="rmBaseWebscript" parent="webscript" abstract="true">
<property name="nodeService" ref="NodeService"/> <property name="nodeService" ref="NodeService"/>
@@ -20,7 +20,7 @@
<bean id="webscript.org.alfresco.rma.dodcustomtypes.get" class="org.alfresco.module.org_alfresco_module_rm.script.DodCustomTypesGet" parent="webscript"> <bean id="webscript.org.alfresco.rma.dodcustomtypes.get" class="org.alfresco.module.org_alfresco_module_rm.script.DodCustomTypesGet" parent="webscript">
<property name="dictionaryService" ref="DictionaryService"/> <property name="dictionaryService" ref="DictionaryService"/>
</bean> </bean>
<bean id="webscript.org.alfresco.rma.customisable.get" class="org.alfresco.module.org_alfresco_module_rm.script.CustomisableGet" parent="webscript"> <bean id="webscript.org.alfresco.rma.customisable.get" class="org.alfresco.module.org_alfresco_module_rm.script.CustomisableGet" parent="webscript">
<property name="recordsManagementAdminService" ref="RecordsManagementAdminService"/> <property name="recordsManagementAdminService" ref="RecordsManagementAdminService"/>
<property name="namespaceService" ref="NamespaceService"/> <property name="namespaceService" ref="NamespaceService"/>
@@ -29,25 +29,25 @@
<!-- REST impl for GET Custom Property Definitions --> <!-- REST impl for GET Custom Property Definitions -->
<bean id="webscript.org.alfresco.rma.custompropdefinitions.get" class="org.alfresco.module.org_alfresco_module_rm.script.CustomPropertyDefinitionsGet" parent="rmBaseWebscript"> <bean id="webscript.org.alfresco.rma.custompropdefinitions.get" class="org.alfresco.module.org_alfresco_module_rm.script.CustomPropertyDefinitionsGet" parent="rmBaseWebscript">
<property name="recordsManagementAdminService" ref="RecordsManagementAdminService"/> <property name="recordsManagementAdminService" ref="RecordsManagementAdminService"/>
</bean> </bean>
<!-- REST impl for PUT Custom Property Definitions --> <!-- REST impl for PUT Custom Property Definitions -->
<bean id="webscript.org.alfresco.rma.custompropdefinition.put" class="org.alfresco.module.org_alfresco_module_rm.script.CustomPropertyDefinitionPut" parent="rmBaseWebscript"> <bean id="webscript.org.alfresco.rma.custompropdefinition.put" class="org.alfresco.module.org_alfresco_module_rm.script.CustomPropertyDefinitionPut" parent="rmBaseWebscript">
<property name="recordsManagementAdminService" ref="RecordsManagementAdminService"/> <property name="recordsManagementAdminService" ref="RecordsManagementAdminService"/>
</bean> </bean>
<!-- REST impl for POST Custom Property Definitions --> <!-- REST impl for POST Custom Property Definitions -->
<bean id="webscript.org.alfresco.rma.custompropdefinition.post" class="org.alfresco.module.org_alfresco_module_rm.script.CustomPropertyDefinitionPost" parent="rmBaseWebscript"> <bean id="webscript.org.alfresco.rma.custompropdefinition.post" class="org.alfresco.module.org_alfresco_module_rm.script.CustomPropertyDefinitionPost" parent="rmBaseWebscript">
<property name="recordsManagementAdminService" ref="RecordsManagementAdminService"/> <property name="recordsManagementAdminService" ref="RecordsManagementAdminService"/>
</bean> </bean>
<!-- TODO Delete this --> <!-- TODO Delete this -->
<!-- REST impl for DELETE Custom Property Definitions --> <!-- REST impl for DELETE Custom Property Definitions -->
<bean id="webscript.org.alfresco.rma.custompropdefinition.delete" class="org.alfresco.module.org_alfresco_module_rm.script.CustomPropertyDefinitionDelete" parent="rmBaseWebscript"> <bean id="webscript.org.alfresco.rma.custompropdefinition.delete" class="org.alfresco.module.org_alfresco_module_rm.script.CustomPropertyDefinitionDelete" parent="rmBaseWebscript">
<property name="recordsManagementAdminService" ref="RecordsManagementAdminService"/> <property name="recordsManagementAdminService" ref="RecordsManagementAdminService"/>
</bean> </bean>
<!-- REST impl for GET Custom Reference Definitions --> <!-- REST impl for GET Custom Reference Definitions -->
<bean id="webscript.org.alfresco.rma.customrefdefinitions.get" class="org.alfresco.module.org_alfresco_module_rm.script.CustomReferenceDefinitionsGet" parent="webscript"> <bean id="webscript.org.alfresco.rma.customrefdefinitions.get" class="org.alfresco.module.org_alfresco_module_rm.script.CustomReferenceDefinitionsGet" parent="webscript">
<property name="recordsManagementAdminService" ref="RecordsManagementAdminService"/> <property name="recordsManagementAdminService" ref="RecordsManagementAdminService"/>
@@ -64,7 +64,7 @@
<bean id="webscript.org.alfresco.rma.customrefdefinition.post" class="org.alfresco.module.org_alfresco_module_rm.script.CustomReferenceDefinitionPost" parent="rmBaseWebscript"> <bean id="webscript.org.alfresco.rma.customrefdefinition.post" class="org.alfresco.module.org_alfresco_module_rm.script.CustomReferenceDefinitionPost" parent="rmBaseWebscript">
<property name="recordsManagementAdminService" ref="RecordsManagementAdminService"/> <property name="recordsManagementAdminService" ref="RecordsManagementAdminService"/>
</bean> </bean>
<!-- REST impl for GET Custom Reference Instances --> <!-- REST impl for GET Custom Reference Instances -->
<bean id="webscript.org.alfresco.rma.customrefs.get" class="org.alfresco.module.org_alfresco_module_rm.script.CustomRefsGet" parent="rmBaseWebscript"> <bean id="webscript.org.alfresco.rma.customrefs.get" class="org.alfresco.module.org_alfresco_module_rm.script.CustomRefsGet" parent="rmBaseWebscript">
<property name="recordsManagementAdminService" ref="RecordsManagementAdminService"/> <property name="recordsManagementAdminService" ref="RecordsManagementAdminService"/>
@@ -84,24 +84,24 @@
<!-- REST impl for GET Disposition Schedule --> <!-- REST impl for GET Disposition Schedule -->
<bean id="webscript.org.alfresco.rma.dispositionschedule.get" class="org.alfresco.module.org_alfresco_module_rm.script.DispositionScheduleGet" parent="rmBaseWebscript"> <bean id="webscript.org.alfresco.rma.dispositionschedule.get" class="org.alfresco.module.org_alfresco_module_rm.script.DispositionScheduleGet" parent="rmBaseWebscript">
</bean> </bean>
<!-- REST impl for POST Disposition Action Definition --> <!-- REST impl for POST Disposition Action Definition -->
<bean id="webscript.org.alfresco.rma.dispositionactiondefinitions.post" class="org.alfresco.module.org_alfresco_module_rm.script.DispositionActionDefinitionPost" parent="rmBaseWebscript"> <bean id="webscript.org.alfresco.rma.dispositionactiondefinitions.post" class="org.alfresco.module.org_alfresco_module_rm.script.DispositionActionDefinitionPost" parent="rmBaseWebscript">
</bean> </bean>
<!-- REST impl for PUT Disposition Action Definition --> <!-- REST impl for PUT Disposition Action Definition -->
<bean id="webscript.org.alfresco.rma.dispositionactiondefinition.put" class="org.alfresco.module.org_alfresco_module_rm.script.DispositionActionDefinitionPut" parent="rmBaseWebscript"> <bean id="webscript.org.alfresco.rma.dispositionactiondefinition.put" class="org.alfresco.module.org_alfresco_module_rm.script.DispositionActionDefinitionPut" parent="rmBaseWebscript">
</bean> </bean>
<!-- REST impl for DELETE Disposition Action Definition --> <!-- REST impl for DELETE Disposition Action Definition -->
<bean id="webscript.org.alfresco.rma.dispositionactiondefinition.delete" class="org.alfresco.module.org_alfresco_module_rm.script.DispositionActionDefinitionDelete" parent="rmBaseWebscript"> <bean id="webscript.org.alfresco.rma.dispositionactiondefinition.delete" class="org.alfresco.module.org_alfresco_module_rm.script.DispositionActionDefinitionDelete" parent="rmBaseWebscript">
</bean> </bean>
<!-- REST impl for GET Disposition Lifecycle --> <!-- REST impl for GET Disposition Lifecycle -->
<bean id="webscript.org.alfresco.rma.dispositionlifecycle.get" class="org.alfresco.module.org_alfresco_module_rm.script.DispositionLifecycleGet" parent="rmBaseWebscript"> <bean id="webscript.org.alfresco.rma.dispositionlifecycle.get" class="org.alfresco.module.org_alfresco_module_rm.script.DispositionLifecycleGet" parent="rmBaseWebscript">
<property name="personService" ref="PersonService"/> <property name="personService" ref="PersonService"/>
</bean> </bean>
<!-- REST impl for GET List Of Values --> <!-- REST impl for GET List Of Values -->
<bean id="webscript.org.alfresco.rma.listofvalues.get" class="org.alfresco.module.org_alfresco_module_rm.script.ListOfValuesGet" parent="webscript"> <bean id="webscript.org.alfresco.rma.listofvalues.get" class="org.alfresco.module.org_alfresco_module_rm.script.ListOfValuesGet" parent="webscript">
<property name="recordsManagementService" ref="RecordsManagementService"/> <property name="recordsManagementService" ref="RecordsManagementService"/>
@@ -112,21 +112,21 @@
<property name="dictionaryService" ref="DictionaryService"/> <property name="dictionaryService" ref="DictionaryService"/>
<property name="namespaceService" ref="NamespaceService"/> <property name="namespaceService" ref="NamespaceService"/>
</bean> </bean>
<!-- REST impl for GET disposition properties --> <!-- REST impl for GET disposition properties -->
<bean id="webscript.org.alfresco.rma.dispositionproperties.get" class="org.alfresco.module.org_alfresco_module_rm.script.DispositionPropertiesGet" parent="webscript"> <bean id="webscript.org.alfresco.rma.dispositionproperties.get" class="org.alfresco.module.org_alfresco_module_rm.script.DispositionPropertiesGet" parent="webscript">
<property name="dispositionService" ref="DispositionService"/> <property name="dispositionService" ref="DispositionService"/>
<property name="namespaceService" ref="NamespaceService"/> <property name="namespaceService" ref="NamespaceService"/>
<property name="dictionaryService" ref="DictionaryService"/> <property name="dictionaryService" ref="DictionaryService"/>
</bean> </bean>
<!-- REST impl for GET Records MetaData aspects --> <!-- REST impl for GET Records MetaData aspects -->
<bean id="webscript.org.alfresco.rma.recordmetadataaspects.get" class="org.alfresco.module.org_alfresco_module_rm.script.RecordMetaDataAspectsGet" parent="webscript"> <bean id="webscript.org.alfresco.rma.recordmetadataaspects.get" class="org.alfresco.module.org_alfresco_module_rm.script.RecordMetaDataAspectsGet" parent="webscript">
<property name="recordsManagementService" ref="RecordsManagementService"/> <property name="recordsManagementService" ref="RecordsManagementService"/>
<property name="dictionaryService" ref="DictionaryService"/> <property name="dictionaryService" ref="DictionaryService"/>
<property name="namespaceService" ref="NamespaceService"/> <property name="namespaceService" ref="NamespaceService"/>
</bean> </bean>
<!-- REST impl for GET Audit Log --> <!-- REST impl for GET Audit Log -->
<bean id="webscript.org.alfresco.rma.rmauditlog.get" class="org.alfresco.module.org_alfresco_module_rm.script.AuditLogGet" parent="webscript"> <bean id="webscript.org.alfresco.rma.rmauditlog.get" class="org.alfresco.module.org_alfresco_module_rm.script.AuditLogGet" parent="webscript">
<property name="nodeService" ref="nodeService"/> <property name="nodeService" ref="nodeService"/>
@@ -135,11 +135,11 @@
<property name="mimetypeService" ref="mimetypeService"/> <property name="mimetypeService" ref="mimetypeService"/>
<property name="recordsManagementAuditService" ref="RecordsManagementAuditService"/> <property name="recordsManagementAuditService" ref="RecordsManagementAuditService"/>
</bean> </bean>
<bean id="webscript.org.alfresco.rma.rmauditlogstatus.get" class="org.alfresco.module.org_alfresco_module_rm.script.AuditLogStatusGet" parent="webscript"> <bean id="webscript.org.alfresco.rma.rmauditlogstatus.get" class="org.alfresco.module.org_alfresco_module_rm.script.AuditLogStatusGet" parent="webscript">
<property name="recordsManagementAuditService" ref="RecordsManagementAuditService"/> <property name="recordsManagementAuditService" ref="RecordsManagementAuditService"/>
</bean> </bean>
<!-- REST impl for POST Audit Log --> <!-- REST impl for POST Audit Log -->
<bean id="webscript.org.alfresco.rma.rmauditlog.post" class="org.alfresco.module.org_alfresco_module_rm.script.AuditLogPost" parent="webscript"> <bean id="webscript.org.alfresco.rma.rmauditlog.post" class="org.alfresco.module.org_alfresco_module_rm.script.AuditLogPost" parent="webscript">
<property name="nodeService" ref="nodeService"/> <property name="nodeService" ref="nodeService"/>
@@ -148,17 +148,17 @@
<property name="mimetypeService" ref="mimetypeService"/> <property name="mimetypeService" ref="mimetypeService"/>
<property name="recordsManagementAuditService" ref="RecordsManagementAuditService"/> <property name="recordsManagementAuditService" ref="RecordsManagementAuditService"/>
</bean> </bean>
<!-- REST impl for PUT Audit Log (starting and stopping auditing) --> <!-- REST impl for PUT Audit Log (starting and stopping auditing) -->
<bean id="webscript.org.alfresco.rma.rmauditlog.put" class="org.alfresco.module.org_alfresco_module_rm.script.AuditLogPut" parent="webscript"> <bean id="webscript.org.alfresco.rma.rmauditlog.put" class="org.alfresco.module.org_alfresco_module_rm.script.AuditLogPut" parent="webscript">
<property name="recordsManagementAuditService" ref="RecordsManagementAuditService"/> <property name="recordsManagementAuditService" ref="RecordsManagementAuditService"/>
</bean> </bean>
<!-- REST impl for DELETE Audit Log (clears audit log) --> <!-- REST impl for DELETE Audit Log (clears audit log) -->
<bean id="webscript.org.alfresco.rma.rmauditlog.delete" class="org.alfresco.module.org_alfresco_module_rm.script.AuditLogDelete" parent="webscript"> <bean id="webscript.org.alfresco.rma.rmauditlog.delete" class="org.alfresco.module.org_alfresco_module_rm.script.AuditLogDelete" parent="webscript">
<property name="recordsManagementAuditService" ref="RecordsManagementAuditService"/> <property name="recordsManagementAuditService" ref="RecordsManagementAuditService"/>
</bean> </bean>
<!-- REST impl for POST export --> <!-- REST impl for POST export -->
<bean id="webscript.org.alfresco.rma.export.post" class="org.alfresco.module.org_alfresco_module_rm.script.ExportPost" parent="webscript"> <bean id="webscript.org.alfresco.rma.export.post" class="org.alfresco.module.org_alfresco_module_rm.script.ExportPost" parent="webscript">
<property name="nodeService" ref="nodeService"/> <property name="nodeService" ref="nodeService"/>
@@ -167,7 +167,7 @@
<property name="mimetypeService" ref="mimetypeService"/> <property name="mimetypeService" ref="mimetypeService"/>
<property name="exporterService" ref="ExporterService"/> <property name="exporterService" ref="ExporterService"/>
</bean> </bean>
<!-- REST impl for POST import --> <!-- REST impl for POST import -->
<bean id="webscript.org.alfresco.rma.import.post" class="org.alfresco.module.org_alfresco_module_rm.script.ImportPost" parent="webscript"> <bean id="webscript.org.alfresco.rma.import.post" class="org.alfresco.module.org_alfresco_module_rm.script.ImportPost" parent="webscript">
<property name="nodeService" ref="NodeService"/> <property name="nodeService" ref="NodeService"/>
@@ -176,7 +176,7 @@
<property name="recordsManagementService" ref="RecordsManagementService"/> <property name="recordsManagementService" ref="RecordsManagementService"/>
<property name="recordsManagementSecurityService" ref="RecordsManagementSecurityService"/> <property name="recordsManagementSecurityService" ref="RecordsManagementSecurityService"/>
</bean> </bean>
<!-- Base bean for transfer web scripts --> <!-- Base bean for transfer web scripts -->
<bean id="rmBaseTransferWebscript" parent="webscript" abstract="true"> <bean id="rmBaseTransferWebscript" parent="webscript" abstract="true">
<property name="nodeService" ref="nodeService"/> <property name="nodeService" ref="nodeService"/>
@@ -185,18 +185,18 @@
<property name="mimetypeService" ref="mimetypeService"/> <property name="mimetypeService" ref="mimetypeService"/>
<property name="exporterService" ref="ExporterService"/> <property name="exporterService" ref="ExporterService"/>
</bean> </bean>
<!-- REST impl for GET transfer --> <!-- REST impl for GET transfer -->
<bean id="webscript.org.alfresco.rma.transfer.get" class="org.alfresco.module.org_alfresco_module_rm.script.TransferGet" parent="rmBaseTransferWebscript"> <bean id="webscript.org.alfresco.rma.transfer.get" class="org.alfresco.module.org_alfresco_module_rm.script.TransferGet" parent="rmBaseTransferWebscript">
</bean> </bean>
<!-- REST impl for GET transfer report --> <!-- REST impl for GET transfer report -->
<bean id="webscript.org.alfresco.rma.transferreport.get" class="org.alfresco.module.org_alfresco_module_rm.script.TransferReportGet" parent="rmBaseTransferWebscript"> <bean id="webscript.org.alfresco.rma.transferreport.get" class="org.alfresco.module.org_alfresco_module_rm.script.TransferReportGet" parent="rmBaseTransferWebscript">
<property name="dictionaryService" ref="DictionaryService"/> <property name="dictionaryService" ref="DictionaryService"/>
<property name="recordsManagementService" ref="RecordsManagementService"/> <property name="recordsManagementService" ref="RecordsManagementService"/>
<property name="dispositionService" ref="DispositionService"/> <property name="dispositionService" ref="DispositionService"/>
</bean> </bean>
<!-- REST impl for POST transfer report --> <!-- REST impl for POST transfer report -->
<bean id="webscript.org.alfresco.rma.transferreport.post" class="org.alfresco.module.org_alfresco_module_rm.script.TransferReportPost" parent="rmBaseTransferWebscript"> <bean id="webscript.org.alfresco.rma.transferreport.post" class="org.alfresco.module.org_alfresco_module_rm.script.TransferReportPost" parent="rmBaseTransferWebscript">
<property name="dictionaryService" ref="DictionaryService"/> <property name="dictionaryService" ref="DictionaryService"/>
@@ -204,91 +204,94 @@
<property name="recordsManagementActionService" ref="RecordsManagementActionService"/> <property name="recordsManagementActionService" ref="RecordsManagementActionService"/>
<property name="dispositionService" ref="DispositionService"/> <property name="dispositionService" ref="DispositionService"/>
</bean> </bean>
<!-- RM Role API--> <!-- RM Role API-->
<bean id="webscript.org.alfresco.rma.admin.rmrole.rmroles.get" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmRolesGet" parent="webscript"> <bean id="webscript.org.alfresco.rma.admin.rmrole.rmroles.get" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmRolesGet" parent="webscript">
<property name="recordsManagementService" ref="RecordsManagementService"/> <property name="recordsManagementService" ref="RecordsManagementService"/>
<property name="recordsManagementSecurityService" ref="RecordsManagementSecurityService"/> <property name="recordsManagementSecurityService" ref="RecordsManagementSecurityService"/>
</bean> </bean>
<bean id="webscript.org.alfresco.rma.admin.rmrole.rmroles.post" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmRolesPost" parent="webscript"> <bean id="webscript.org.alfresco.rma.admin.rmrole.rmroles.post" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmRolesPost" parent="webscript">
<property name="recordsManagementService" ref="RecordsManagementService"/> <property name="recordsManagementService" ref="RecordsManagementService"/>
<property name="recordsManagementSecurityService" ref="RecordsManagementSecurityService"/> <property name="recordsManagementSecurityService" ref="RecordsManagementSecurityService"/>
<property name="capabilityService" ref="CapabilityService" /> <property name="capabilityService" ref="CapabilityService" />
</bean> </bean>
<bean id="webscript.org.alfresco.rma.admin.rmrole.rmrole.get" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmRoleGet" parent="webscript"> <bean id="webscript.org.alfresco.rma.admin.rmrole.rmrole.get" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmRoleGet" parent="webscript">
<property name="recordsManagementService" ref="RecordsManagementService"/> <property name="recordsManagementService" ref="RecordsManagementService"/>
<property name="recordsManagementSecurityService" ref="RecordsManagementSecurityService"/> <property name="recordsManagementSecurityService" ref="RecordsManagementSecurityService"/>
</bean> </bean>
<bean id="webscript.org.alfresco.rma.admin.rmrole.rmrole.put" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmRolePut" parent="webscript"> <bean id="webscript.org.alfresco.rma.admin.rmrole.rmrole.put" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmRolePut" parent="webscript">
<property name="recordsManagementService" ref="RecordsManagementService"/> <property name="recordsManagementService" ref="RecordsManagementService"/>
<property name="recordsManagementSecurityService" ref="RecordsManagementSecurityService"/> <property name="recordsManagementSecurityService" ref="RecordsManagementSecurityService"/>
<property name="capabilityService" ref="CapabilityService" /> <property name="capabilityService" ref="CapabilityService" />
</bean> </bean>
<bean id="webscript.org.alfresco.rma.admin.rmrole.rmrole.delete" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmRoleDelete" parent="webscript"> <bean id="webscript.org.alfresco.rma.admin.rmrole.rmrole.delete" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmRoleDelete" parent="webscript">
<property name="recordsManagementService" ref="RecordsManagementService"/> <property name="recordsManagementService" ref="RecordsManagementService"/>
<property name="recordsManagementSecurityService" ref="RecordsManagementSecurityService"/> <property name="recordsManagementSecurityService" ref="RecordsManagementSecurityService"/>
</bean> </bean>
<!-- Capability API --> <!-- Capability API -->
<bean id="webscript.org.alfresco.rma.capability.capabilities.get" <bean id="webscript.org.alfresco.rma.capability.capabilities.get"
class="org.alfresco.module.org_alfresco_module_rm.script.capability.CapabilitiesGet" class="org.alfresco.module.org_alfresco_module_rm.script.capability.CapabilitiesGet"
parent="webscript"> parent="webscript">
<property name="recordsManagementService" ref="RecordsManagementService"/> <property name="recordsManagementService" ref="RecordsManagementService"/>
<property name="capabilityService" ref="CapabilityService" /> <property name="capabilityService" ref="CapabilityService" />
</bean> </bean>
<!-- RM Event API--> <!-- RM Event API-->
<!-- Abstract parent bean for RM event beans -->
<bean id="rmEventBase" parent="webscript" abstract="true" />
<bean id="webscript.org.alfresco.rma.admin.rmevent.rmeventtypes.get" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmEventTypesGet" parent="webscript"> <bean id="webscript.org.alfresco.rma.admin.rmevent.rmeventtypes.get" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmEventTypesGet" parent="webscript">
<property name="recordsManagementEventService" ref="RecordsManagementEventService"/> <property name="recordsManagementEventService" ref="RecordsManagementEventService"/>
</bean> </bean>
<bean id="webscript.org.alfresco.rma.admin.rmevent.rmevents.get" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmEventsGet" parent="webscript"> <bean id="webscript.org.alfresco.rma.admin.rmevent.rmevents.get" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmEventsGet" parent="webscript">
<property name="recordsManagementEventService" ref="RecordsManagementEventService"/> <property name="recordsManagementEventService" ref="RecordsManagementEventService"/>
</bean> </bean>
<bean id="webscript.org.alfresco.rma.admin.rmevent.rmevents.post" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmEventsPost" parent="webscript"> <bean id="webscript.org.alfresco.rma.admin.rmevent.rmevents.post" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmEventsPost" parent="rmEventBase">
<property name="recordsManagementEventService" ref="RecordsManagementEventService"/> <property name="recordsManagementEventService" ref="RecordsManagementEventService"/>
</bean> </bean>
<bean id="webscript.org.alfresco.rma.admin.rmevent.rmevent.get" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmEventGet" parent="webscript"> <bean id="webscript.org.alfresco.rma.admin.rmevent.rmevent.get" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmEventGet" parent="webscript">
<property name="recordsManagementEventService" ref="RecordsManagementEventService"/> <property name="recordsManagementEventService" ref="RecordsManagementEventService"/>
</bean> </bean>
<bean id="webscript.org.alfresco.rma.admin.rmevent.rmevent.put" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmEventPut" parent="webscript"> <bean id="webscript.org.alfresco.rma.admin.rmevent.rmevent.put" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmEventPut" parent="rmEventBase">
<property name="recordsManagementEventService" ref="RecordsManagementEventService"/> <property name="recordsManagementEventService" ref="RecordsManagementEventService"/>
</bean> </bean>
<bean id="webscript.org.alfresco.rma.admin.rmevent.rmevent.delete" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmEventDelete" parent="webscript"> <bean id="webscript.org.alfresco.rma.admin.rmevent.rmevent.delete" class="org.alfresco.module.org_alfresco_module_rm.script.admin.RmEventDelete" parent="webscript">
<property name="recordsManagementEventService" ref="RecordsManagementEventService"/> <property name="recordsManagementEventService" ref="RecordsManagementEventService"/>
</bean> </bean>
<!-- REST impl for GET Email Map --> <!-- REST impl for GET Email Map -->
<bean id="webscript.org.alfresco.rma.admin.emailmap.get" class="org.alfresco.module.org_alfresco_module_rm.script.EmailMapGet" parent="webscript"> <bean id="webscript.org.alfresco.rma.admin.emailmap.get" class="org.alfresco.module.org_alfresco_module_rm.script.EmailMapGet" parent="webscript">
<property name="customEmailMappingService" ref="CustomEmailMappingService" /> <property name="customEmailMappingService" ref="CustomEmailMappingService" />
</bean> </bean>
<!-- REST impl for POST Email Map --> <!-- REST impl for POST Email Map -->
<bean id="webscript.org.alfresco.rma.admin.emailmap.post" class="org.alfresco.module.org_alfresco_module_rm.script.EmailMapPost" parent="webscript"> <bean id="webscript.org.alfresco.rma.admin.emailmap.post" class="org.alfresco.module.org_alfresco_module_rm.script.EmailMapPost" parent="webscript">
<property name="customEmailMappingService" ref="CustomEmailMappingService" /> <property name="customEmailMappingService" ref="CustomEmailMappingService" />
</bean> </bean>
<!-- REST impl for PUT Email Map --> <!-- REST impl for PUT Email Map -->
<bean id="webscript.org.alfresco.rma.admin.emailmap.put" class="org.alfresco.module.org_alfresco_module_rm.script.EmailMapPut" parent="webscript"> <bean id="webscript.org.alfresco.rma.admin.emailmap.put" class="org.alfresco.module.org_alfresco_module_rm.script.EmailMapPut" parent="webscript">
<property name="customEmailMappingService" ref="CustomEmailMappingService" /> <property name="customEmailMappingService" ref="CustomEmailMappingService" />
</bean> </bean>
<!-- REST impl for GET RM Constraint --> <!-- REST impl for GET RM Constraint -->
<bean id="webscript.org.alfresco.rma.rmconstraints.get" class="org.alfresco.module.org_alfresco_module_rm.script.RMConstraintGet" parent="webscript"> <bean id="webscript.org.alfresco.rma.rmconstraints.get" class="org.alfresco.module.org_alfresco_module_rm.script.RMConstraintGet" parent="webscript">
<property name="caveatConfigService" ref="CaveatConfigService" /> <property name="caveatConfigService" ref="CaveatConfigService" />
</bean> </bean>
<!-- REST impl for GET User Rights Report --> <!-- REST impl for GET User Rights Report -->
<bean id="webscript.org.alfresco.rma.userrightsreport.get" class="org.alfresco.module.org_alfresco_module_rm.script.UserRightsReportGet" parent="webscript"> <bean id="webscript.org.alfresco.rma.userrightsreport.get" class="org.alfresco.module.org_alfresco_module_rm.script.UserRightsReportGet" parent="webscript">
<property name="authorityService" ref="AuthorityService" /> <property name="authorityService" ref="AuthorityService" />
@@ -297,7 +300,7 @@
<property name="recordsManagementService" ref="RecordsManagementService" /> <property name="recordsManagementService" ref="RecordsManagementService" />
<property name="recordsManagementSecurityService" ref="RecordsManagementSecurityService" /> <property name="recordsManagementSecurityService" ref="RecordsManagementSecurityService" />
</bean> </bean>
<!-- REST impl for GET Bootstrap Test Data --> <!-- REST impl for GET Bootstrap Test Data -->
<bean id="webscript.org.alfresco.rma.bootstraptestdata.get" class="org.alfresco.module.org_alfresco_module_rm.script.BootstrapTestDataGet" parent="webscript"> <bean id="webscript.org.alfresco.rma.bootstraptestdata.get" class="org.alfresco.module.org_alfresco_module_rm.script.BootstrapTestDataGet" parent="webscript">
<property name="nodeService" ref="NodeService" /> <property name="nodeService" ref="NodeService" />
@@ -312,7 +315,7 @@
<property name="recordsManagementSearchBehaviour" ref="recordsManagementSearchBehaviour"/> <property name="recordsManagementSearchBehaviour" ref="recordsManagementSearchBehaviour"/>
<property name="dispositionService" ref="dispositionService"/> <property name="dispositionService" ref="dispositionService"/>
</bean> </bean>
<!-- REST impl for GET applydodcertmodelfixes --> <!-- REST impl for GET applydodcertmodelfixes -->
<!-- This webscript is intended for patching the RM custom model during the DoD certification process. --> <!-- This webscript is intended for patching the RM custom model during the DoD certification process. -->
<!-- TODO Delete this webscript after the certification process --> <!-- TODO Delete this webscript after the certification process -->
@@ -325,32 +328,32 @@
<bean id="webscript.org.alfresco.rma.applyfixmob1573.get" class="org.alfresco.module.org_alfresco_module_rm.script.ApplyFixMob1573Get" parent="webscript"> <bean id="webscript.org.alfresco.rma.applyfixmob1573.get" class="org.alfresco.module.org_alfresco_module_rm.script.ApplyFixMob1573Get" parent="webscript">
<property name="contentService" ref="ContentService" /> <property name="contentService" ref="ContentService" />
</bean> </bean>
<!-- RM search web script --> <!-- RM search web script -->
<bean id="webscript.org.alfresco.slingshot.rmsearch.rmsavedsearches.get" <bean id="webscript.org.alfresco.slingshot.rmsearch.rmsavedsearches.get"
class="org.alfresco.module.org_alfresco_module_rm.script.slingshot.RMSavedSearchesGet" class="org.alfresco.module.org_alfresco_module_rm.script.slingshot.RMSavedSearchesGet"
parent="webscript"> parent="webscript">
<property name="siteService" ref="SiteService"/> <property name="siteService" ref="SiteService"/>
<property name="recordsManagementSearchService" ref="RecordsManagementSearchService"/> <property name="recordsManagementSearchService" ref="RecordsManagementSearchService"/>
</bean> </bean>
<bean id="webscript.org.alfresco.slingshot.rmsearch.rmsavedsearches.post" <bean id="webscript.org.alfresco.slingshot.rmsearch.rmsavedsearches.post"
class="org.alfresco.module.org_alfresco_module_rm.script.slingshot.RMSavedSearchesPost" class="org.alfresco.module.org_alfresco_module_rm.script.slingshot.RMSavedSearchesPost"
parent="webscript"> parent="webscript">
<property name="siteService" ref="SiteService"/> <property name="siteService" ref="SiteService"/>
<property name="recordsManagementSearchService" ref="RecordsManagementSearchService"/> <property name="recordsManagementSearchService" ref="RecordsManagementSearchService"/>
<property name="namespaceService" ref="namespaceService"/> <property name="namespaceService" ref="namespaceService"/>
</bean> </bean>
<bean id="webscript.org.alfresco.slingshot.rmsearch.rmsavedsearches.delete" <bean id="webscript.org.alfresco.slingshot.rmsearch.rmsavedsearches.delete"
class="org.alfresco.module.org_alfresco_module_rm.script.slingshot.RMSavedSearchesDelete" class="org.alfresco.module.org_alfresco_module_rm.script.slingshot.RMSavedSearchesDelete"
parent="webscript"> parent="webscript">
<property name="siteService" ref="SiteService"/> <property name="siteService" ref="SiteService"/>
<property name="recordsManagementSearchService" ref="RecordsManagementSearchService"/> <property name="recordsManagementSearchService" ref="RecordsManagementSearchService"/>
</bean> </bean>
<bean id="webscript.org.alfresco.slingshot.rmsearch.rmsearch.get" <bean id="webscript.org.alfresco.slingshot.rmsearch.rmsearch.get"
class="org.alfresco.module.org_alfresco_module_rm.script.slingshot.RMSearchGet" class="org.alfresco.module.org_alfresco_module_rm.script.slingshot.RMSearchGet"
parent="webscript"> parent="webscript">
<property name="siteService" ref="SiteService"/> <property name="siteService" ref="SiteService"/>
<property name="recordsManagementSearchService" ref="RecordsManagementSearchService"/> <property name="recordsManagementSearchService" ref="RecordsManagementSearchService"/>
@@ -361,22 +364,22 @@
<property name="personService" ref="PersonService"/> <property name="personService" ref="PersonService"/>
<property name="contentService" ref="ContentService"/> <property name="contentService" ref="ContentService"/>
</bean> </bean>
<bean id="webscript.org.alfresco.slingshot.rmsearch.rmsearchproperties.get" <bean id="webscript.org.alfresco.slingshot.rmsearch.rmsearchproperties.get"
class="org.alfresco.module.org_alfresco_module_rm.script.slingshot.RMSearchPropertiesGet" class="org.alfresco.module.org_alfresco_module_rm.script.slingshot.RMSearchPropertiesGet"
parent="webscript"> parent="webscript">
<property name="namespaceService" ref="namespaceService"/> <property name="namespaceService" ref="namespaceService"/>
<property name="dictionaryService" ref="DictionaryService"/> <property name="dictionaryService" ref="DictionaryService"/>
<property name="adminService" ref="RecordsManagementAdminService"/> <property name="adminService" ref="RecordsManagementAdminService"/>
<property name="recordsManagementService" ref="RecordsManagementService" /> <property name="recordsManagementService" ref="RecordsManagementService" />
</bean> </bean>
<bean id="webscript.org.alfresco.slingshot.forms.metadata.get" <bean id="webscript.org.alfresco.slingshot.forms.metadata.get"
class="org.alfresco.module.org_alfresco_module_rm.script.slingshot.forms.RMMetaDataGet" class="org.alfresco.module.org_alfresco_module_rm.script.slingshot.forms.RMMetaDataGet"
parent="webscript"> parent="webscript">
<property name="recordsManagementService" ref="RecordsManagementService"/> <property name="recordsManagementService" ref="RecordsManagementService"/>
<property name="namespaceService" ref="namespaceService"/> <property name="namespaceService" ref="namespaceService"/>
<property name="nodeService" ref="NodeService"/> <property name="nodeService" ref="NodeService"/>
</bean> </bean>
</beans> </beans>

View File

@@ -22,79 +22,89 @@ import java.util.List;
/** /**
* Records management event service interface * Records management event service interface
* *
* @author Roy Wetherall * @author Roy Wetherall
*/ */
public interface RecordsManagementEventService public interface RecordsManagementEventService
{ {
/** /**
* Register an event type * Register an event type
* *
* @param eventType event type * @param eventType event type
*/ */
void registerEventType(RecordsManagementEventType eventType); void registerEventType(RecordsManagementEventType eventType);
/** /**
* Get a list of the event types * Get a list of the event types
* *
* @return List<RecordsManagementEventType> list of the event types * @return List<RecordsManagementEventType> list of the event types
*/ */
List<RecordsManagementEventType> getEventTypes(); List<RecordsManagementEventType> getEventTypes();
/** /**
* Get the records management event type * Get the records management event type
* *
* @param eventType name * @param eventType name
* @return RecordsManagementEventType event type * @return RecordsManagementEventType event type
*/ */
RecordsManagementEventType getEventType(String eventTypeName); RecordsManagementEventType getEventType(String eventTypeName);
/** /**
* Get the list of available events * Get the list of available events
* *
* @return List<RecordsManagementEvent> list of events * @return List<RecordsManagementEvent> list of events
*/ */
List<RecordsManagementEvent> getEvents(); List<RecordsManagementEvent> getEvents();
/** /**
* Get a records management event given its name. Returns null if the event name is not * Get a records management event given its name. Returns null if the event name is not
* recognised. * recognised.
* *
* @param eventName event name * @param eventName event name
* @return RecordsManagementEvent event * @return RecordsManagementEvent event
*/ */
RecordsManagementEvent getEvent(String eventName); RecordsManagementEvent getEvent(String eventName);
/** /**
* Indicates whether a perticular event exists. Returns true if it does, false otherwise. * Indicates whether a perticular event exists. Returns true if it does, false otherwise.
* *
* @param eventName event name * @param eventName event name
* @return boolean true if event exists, false otherwise * @return boolean true if event exists, false otherwise
*/ */
boolean existsEvent(String eventName); boolean existsEvent(String eventName);
/** /**
* Indicates whether a particular event display label exists. Returns true if it does, false otherwise. * Indicates whether a particular event can be created. Returns true if it is possible, false otherwise.
* *
* @param eventDisplayLabel event display label * @param eventDisplayLabel event display label
* @return true if event display label exists, false otherwise * @param eventName event name
* @return true if the event can be created, false otherwise
*/ */
boolean existsEventDisplayLabel(String eventDisplayLabel); boolean canCreateEvent(String eventDisplayLabel, String eventName);
/**
* Indicates whether a particular event can be edited. Returns true if it is possible, false otherwise.
*
* @param eventDisplayLabel event display label
* @param eventName event name
* @return true if the event can be edited, false otherwise
*/
boolean canEditEvent(String eventDisplayLabel, String eventName);
/** /**
* Add an event * Add an event
* *
* @param eventType event type * @param eventType event type
* @param eventName event name * @param eventName event name
* @param eventDisplayLabel event display label * @param eventDisplayLabel event display label
*/ */
RecordsManagementEvent addEvent(String eventType, String eventName, String eventDisplayLabel); RecordsManagementEvent addEvent(String eventType, String eventName, String eventDisplayLabel);
/** /**
* Remove an event * Remove an event
* *
* @param eventName event name * @param eventName event name
*/ */
void removeEvent(String eventName); void removeEvent(String eventName);
} }

View File

@@ -33,12 +33,13 @@ import org.alfresco.service.cmr.repository.ContentWriter;
import org.alfresco.service.cmr.repository.NodeRef; import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.cmr.repository.NodeService; import org.alfresco.service.cmr.repository.NodeService;
import org.alfresco.service.cmr.repository.StoreRef; import org.alfresco.service.cmr.repository.StoreRef;
import org.alfresco.util.ParameterCheck;
import org.json.JSONArray; import org.json.JSONArray;
import org.json.JSONObject; import org.json.JSONObject;
/** /**
* Records management event service implementation * Records management event service implementation
* *
* @author Roy Wetherall * @author Roy Wetherall
*/ */
public class RecordsManagementEventServiceImpl implements RecordsManagementEventService public class RecordsManagementEventServiceImpl implements RecordsManagementEventService
@@ -46,32 +47,32 @@ public class RecordsManagementEventServiceImpl implements RecordsManagementEvent
/** Reference to the rm event config node */ /** Reference to the rm event config node */
private static final StoreRef SPACES_STORE = new StoreRef(StoreRef.PROTOCOL_WORKSPACE, "SpacesStore"); private static final StoreRef SPACES_STORE = new StoreRef(StoreRef.PROTOCOL_WORKSPACE, "SpacesStore");
private static final NodeRef CONFIG_NODE_REF = new NodeRef(SPACES_STORE, "rm_event_config"); private static final NodeRef CONFIG_NODE_REF = new NodeRef(SPACES_STORE, "rm_event_config");
/** Node service */ /** Node service */
private NodeService nodeService; private NodeService nodeService;
/** Content service */ /** Content service */
private ContentService contentService; private ContentService contentService;
/** Registered event types */ /** Registered event types */
private Map<String, RecordsManagementEventType> eventTypes = new HashMap<String, RecordsManagementEventType>(7); private Map<String, RecordsManagementEventType> eventTypes = new HashMap<String, RecordsManagementEventType>(7);
/** Available events */ /** Available events */
private Map<String, RecordsManagementEvent> events; private Map<String, RecordsManagementEvent> events;
/** /**
* Set the node service * Set the node service
* *
* @param nodeService node service * @param nodeService node service
*/ */
public void setNodeService(NodeService nodeService) public void setNodeService(NodeService nodeService)
{ {
this.nodeService = nodeService; this.nodeService = nodeService;
} }
/** /**
* Set the content service * Set the content service
* *
* @param contentService content service * @param contentService content service
*/ */
public void setContentService(ContentService contentService) public void setContentService(ContentService contentService)
@@ -94,7 +95,7 @@ public class RecordsManagementEventServiceImpl implements RecordsManagementEvent
{ {
return new ArrayList<RecordsManagementEventType>(this.eventTypes.values()); return new ArrayList<RecordsManagementEventType>(this.eventTypes.values());
} }
/** /**
* @see org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService#getEvents() * @see org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService#getEvents()
*/ */
@@ -102,11 +103,11 @@ public class RecordsManagementEventServiceImpl implements RecordsManagementEvent
{ {
return new ArrayList<RecordsManagementEvent>(this.getEventMap().values()); return new ArrayList<RecordsManagementEvent>(this.getEventMap().values());
} }
/** /**
* @see org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService#getEvent(java.lang.String) * @see org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService#getEvent(java.lang.String)
*/ */
public RecordsManagementEvent getEvent(String eventName) public RecordsManagementEvent getEvent(String eventName)
{ {
if (getEventMap().containsKey(eventName) == false) if (getEventMap().containsKey(eventName) == false)
{ {
@@ -114,7 +115,7 @@ public class RecordsManagementEventServiceImpl implements RecordsManagementEvent
} }
return getEventMap().get(eventName); return getEventMap().get(eventName);
} }
/** /**
* @see org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService#existsEvent(java.lang.String) * @see org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService#existsEvent(java.lang.String)
*/ */
@@ -122,24 +123,76 @@ public class RecordsManagementEventServiceImpl implements RecordsManagementEvent
{ {
return getEventMap().containsKey(eventName); return getEventMap().containsKey(eventName);
} }
/** /**
* @see org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService#existsEventDisplayLabel(java.lang.String) * @see org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService#canCreateEvent(java.lang.String, java.lang.String)
*/ */
@SuppressWarnings("rawtypes") @SuppressWarnings("rawtypes")
public boolean existsEventDisplayLabel(String eventDisplayLabel) public boolean canCreateEvent(String eventDisplayLabel, String eventName)
{ {
for (Iterator iterator = getEventMap().values().iterator(); iterator.hasNext();) ParameterCheck.mandatoryString("eventDisplayLabel", eventDisplayLabel);
{ ParameterCheck.mandatoryString("eventName", eventName);
RecordsManagementEvent recordsManagementEvent = (RecordsManagementEvent) iterator.next();
if (recordsManagementEvent.getDisplayLabel().equalsIgnoreCase(eventDisplayLabel)) boolean canCreateEvent = true;
{
return true; if (existsEvent(eventName) == true)
} {
} canCreateEvent = false;
return false; }
}
if (canCreateEvent == true)
{
for (Iterator iterator = getEventMap().values().iterator(); iterator.hasNext();)
{
RecordsManagementEvent recordsManagementEvent = (RecordsManagementEvent) iterator.next();
if (recordsManagementEvent.getDisplayLabel().equalsIgnoreCase(eventDisplayLabel))
{
canCreateEvent = false;
break;
}
}
}
return canCreateEvent;
}
/**
* @see org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService#canEditEvent(java.lang.String, java.lang.String)
*/
@SuppressWarnings("rawtypes")
public boolean canEditEvent(String eventDisplayLabel, String eventName)
{
ParameterCheck.mandatoryString("eventDisplayLabel", eventDisplayLabel);
ParameterCheck.mandatoryString("eventName", eventName);
boolean canEditEvent = true;
if (existsEvent(eventName) == false)
{
throw new AlfrescoRuntimeException("The event '" + eventName + "' does not exist.");
}
for (Iterator iterator = getEventMap().values().iterator(); iterator.hasNext();)
{
RecordsManagementEvent recordsManagementEvent = (RecordsManagementEvent) iterator.next();
if (recordsManagementEvent.getDisplayLabel().equalsIgnoreCase(eventDisplayLabel))
{
if (recordsManagementEvent.getName().equalsIgnoreCase(eventName))
{
canEditEvent = false;
}
else
{
throw new AlfrescoRuntimeException("Cannot edit event. An event with the display label '"
+ eventDisplayLabel + "' already exist.");
}
break;
}
}
return canEditEvent;
}
/** /**
* @see org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService#addEvent(java.lang.String, java.lang.String, java.lang.String) * @see org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService#addEvent(java.lang.String, java.lang.String, java.lang.String)
*/ */
@@ -149,19 +202,19 @@ public class RecordsManagementEventServiceImpl implements RecordsManagementEvent
if (eventTypes.containsKey(eventType) == false) if (eventTypes.containsKey(eventType) == false)
{ {
throw new AlfrescoRuntimeException( throw new AlfrescoRuntimeException(
"Can not add event because event " + "Can not add event because event " +
eventName + eventName +
" has an undefined eventType. (" " has an undefined eventType. ("
+ eventType + ")"); + eventType + ")");
} }
// Create event and add to map // Create event and add to map
RecordsManagementEvent event = new RecordsManagementEvent(eventType, eventName, eventDisplayLabel); RecordsManagementEvent event = new RecordsManagementEvent(eventType, eventName, eventDisplayLabel);
getEventMap().put(event.getName(), event); getEventMap().put(event.getName(), event);
// Persist the changes to the event list // Persist the changes to the event list
saveEvents(); saveEvents();
return new RecordsManagementEvent(eventType, eventName, eventDisplayLabel); return new RecordsManagementEvent(eventType, eventName, eventDisplayLabel);
} }
@@ -172,14 +225,14 @@ public class RecordsManagementEventServiceImpl implements RecordsManagementEvent
{ {
// Remove the event from the map // Remove the event from the map
getEventMap().remove(eventName); getEventMap().remove(eventName);
// Persist the changes to the event list // Persist the changes to the event list
saveEvents(); saveEvents();
} }
/** /**
* Helper method to get the event map. Loads initial instance from persisted configuration file. * Helper method to get the event map. Loads initial instance from persisted configuration file.
* *
* @return Map<String, RecordsManagementEvent> map of available events by event name * @return Map<String, RecordsManagementEvent> map of available events by event name
*/ */
private Map<String, RecordsManagementEvent> getEventMap() private Map<String, RecordsManagementEvent> getEventMap()
@@ -190,7 +243,7 @@ public class RecordsManagementEventServiceImpl implements RecordsManagementEvent
} }
return this.events; return this.events;
} }
/** /**
* Load the events from the persistant storage * Load the events from the persistant storage
*/ */
@@ -205,46 +258,46 @@ public class RecordsManagementEventServiceImpl implements RecordsManagementEvent
{ {
throw new AlfrescoRuntimeException("Unable to find records management event configuration node."); throw new AlfrescoRuntimeException("Unable to find records management event configuration node.");
} }
// Read content from config node // Read content from config node
ContentReader reader = contentService.getReader(CONFIG_NODE_REF, ContentModel.PROP_CONTENT); ContentReader reader = contentService.getReader(CONFIG_NODE_REF, ContentModel.PROP_CONTENT);
String jsonString = reader.getContentString(); String jsonString = reader.getContentString();
JSONObject configJSON = new JSONObject(jsonString); JSONObject configJSON = new JSONObject(jsonString);
JSONArray eventsJSON = configJSON.getJSONArray("events"); JSONArray eventsJSON = configJSON.getJSONArray("events");
events = new HashMap<String, RecordsManagementEvent>(eventsJSON.length()); events = new HashMap<String, RecordsManagementEvent>(eventsJSON.length());
for (int i = 0; i < eventsJSON.length(); i++) for (int i = 0; i < eventsJSON.length(); i++)
{ {
// Get the JSON object that represents the event // Get the JSON object that represents the event
JSONObject eventJSON = eventsJSON.getJSONObject(i); JSONObject eventJSON = eventsJSON.getJSONObject(i);
// Get the details of the event // Get the details of the event
String eventType = eventJSON.getString("eventType"); String eventType = eventJSON.getString("eventType");
String eventName = eventJSON.getString("eventName"); String eventName = eventJSON.getString("eventName");
String eventDisplayLabel = eventJSON.getString("eventDisplayLabel"); String eventDisplayLabel = eventJSON.getString("eventDisplayLabel");
// Check that the eventType is valid // Check that the eventType is valid
if (eventTypes.containsKey(eventType) == false) if (eventTypes.containsKey(eventType) == false)
{ {
throw new AlfrescoRuntimeException( throw new AlfrescoRuntimeException(
"Can not load rm event configuration because event " + "Can not load rm event configuration because event " +
eventName + eventName +
" has an undefined eventType. (" " has an undefined eventType. ("
+ eventType + ")"); + eventType + ")");
} }
// Create event and add to map // Create event and add to map
RecordsManagementEvent event = new RecordsManagementEvent(eventType, eventName, eventDisplayLabel); RecordsManagementEvent event = new RecordsManagementEvent(eventType, eventName, eventDisplayLabel);
events.put(event.getName(), event); events.put(event.getName(), event);
} }
return null; return null;
} }
}, AuthenticationUtil.getSystemUserName()); }, AuthenticationUtil.getSystemUserName());
} }
/** /**
* Save the events to the peristant storage * Save the events to the peristant storage
*/ */
@@ -259,10 +312,10 @@ public class RecordsManagementEventServiceImpl implements RecordsManagementEvent
{ {
throw new AlfrescoRuntimeException("Unable to find records management event configuration node."); throw new AlfrescoRuntimeException("Unable to find records management event configuration node.");
} }
JSONObject configJSON = new JSONObject(); JSONObject configJSON = new JSONObject();
JSONArray eventsJSON = new JSONArray(); JSONArray eventsJSON = new JSONArray();
int index = 0; int index = 0;
for (RecordsManagementEvent event : events.values()) for (RecordsManagementEvent event : events.values())
{ {
@@ -270,19 +323,19 @@ public class RecordsManagementEventServiceImpl implements RecordsManagementEvent
eventJSON.put("eventType", event.getType()); eventJSON.put("eventType", event.getType());
eventJSON.put("eventName", event.getName()); eventJSON.put("eventName", event.getName());
eventJSON.put("eventDisplayLabel", event.getDisplayLabel()); eventJSON.put("eventDisplayLabel", event.getDisplayLabel());
eventsJSON.put(index, eventJSON); eventsJSON.put(index, eventJSON);
index++; index++;
} }
configJSON.put("events", eventsJSON); configJSON.put("events", eventsJSON);
// Get content writer // Get content writer
ContentWriter contentWriter = contentService.getWriter(CONFIG_NODE_REF, ContentModel.PROP_CONTENT, true); ContentWriter contentWriter = contentService.getWriter(CONFIG_NODE_REF, ContentModel.PROP_CONTENT, true);
contentWriter.putContent(configJSON.toString()); contentWriter.putContent(configJSON.toString());
return null; return null;
} }
}, AuthenticationUtil.getSystemUserName()); }, AuthenticationUtil.getSystemUserName());
} }

View File

@@ -0,0 +1,67 @@
/*
* Copyright (C) 2005-2013 Alfresco Software Limited.
*
* This file is part of Alfresco
*
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
package org.alfresco.module.org_alfresco_module_rm.script.admin;
import org.apache.commons.lang.StringUtils;
import org.json.JSONException;
import org.json.JSONObject;
import org.springframework.extensions.webscripts.DeclarativeWebScript;
import org.springframework.extensions.webscripts.Status;
import org.springframework.extensions.webscripts.WebScriptException;
/**
* Base class for Records management event web scripts
*
* @author Tuna Aksoy
* @since 2.1
*/
public class RMEventBase extends DeclarativeWebScript
{
/**
* Helper method for getting the value for a key from a JSON object
*
* @param json The request content as JSON object
* @param key The key for which the value should be retrieved (e.g. "eventName")
* @return String The value for the provided key if the key exists, null otherwise
* @throws JSONException If there is no string value for the key
*/
protected String getValue(JSONObject json, String key) throws JSONException
{
String result = null;
if (json.has(key) == true)
{
result = json.getString(key);
}
return result;
}
/**
* Helper method for checking the key (e.g. "eventName")
*
* @param key String The key which will be checked
* @param msg String The error message to throw if the key doesn't have a value
*/
protected void doCheck(String key, String msg)
{
if (StringUtils.isBlank(key))
{
throw new WebScriptException(Status.STATUS_BAD_REQUEST, msg);
}
}
}

View File

@@ -22,35 +22,31 @@ import java.io.IOException;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import org.alfresco.error.AlfrescoRuntimeException;
import org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEvent; import org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEvent;
import org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService; import org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService;
import org.springframework.extensions.webscripts.Cache; import org.alfresco.util.ParameterCheck;
import org.springframework.extensions.webscripts.DeclarativeWebScript;
import org.springframework.extensions.webscripts.Status;
import org.springframework.extensions.webscripts.WebScriptException;
import org.springframework.extensions.webscripts.WebScriptRequest;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.json.JSONException; import org.json.JSONException;
import org.json.JSONObject; import org.json.JSONObject;
import org.json.JSONTokener; import org.json.JSONTokener;
import org.springframework.extensions.webscripts.Cache;
import org.springframework.extensions.webscripts.Status;
import org.springframework.extensions.webscripts.WebScriptException;
import org.springframework.extensions.webscripts.WebScriptRequest;
/** /**
* Records management event PUT web script * Records management event PUT web script
* *
* @author Roy Wetherall * @author Roy Wetherall
*/ */
public class RmEventPut extends DeclarativeWebScript public class RmEventPut extends RMEventBase
{ {
@SuppressWarnings("unused") /** Records management event service */
private static Log logger = LogFactory.getLog(RmEventPut.class);
/** Reccords management event service */
private RecordsManagementEventService rmEventService; private RecordsManagementEventService rmEventService;
/** /**
* Set the records management event service * Set the records management event service
* *
* @param rmEventService * @param rmEventService
*/ */
public void setRecordsManagementEventService(RecordsManagementEventService rmEventService) public void setRecordsManagementEventService(RecordsManagementEventService rmEventService)
@@ -58,59 +54,49 @@ public class RmEventPut extends DeclarativeWebScript
this.rmEventService = rmEventService; this.rmEventService = rmEventService;
} }
/**
* @see org.springframework.extensions.webscripts.DeclarativeWebScript#executeImpl(org.springframework.extensions.webscripts.WebScriptRequest,
* org.springframework.extensions.webscripts.Status,
* org.springframework.extensions.webscripts.Cache)
*/
@Override @Override
public Map<String, Object> executeImpl(WebScriptRequest req, Status status, Cache cache) public Map<String, Object> executeImpl(WebScriptRequest req, Status status, Cache cache)
{ {
Map<String, Object> model = new HashMap<String, Object>(); ParameterCheck.mandatory("req", req);
Map<String, Object> model = new HashMap<String, Object>();
JSONObject json = null; JSONObject json = null;
try try
{ {
// Event name // Convert the request content to JSON
Map<String, String> templateVars = req.getServiceMatch().getTemplateVars();
String eventName = templateVars.get("eventname");
if (eventName == null)
{
throw new WebScriptException(Status.STATUS_NOT_FOUND, "No event name was provided on the URL.");
}
// Check the event exists
if (rmEventService.existsEvent(eventName) == false)
{
throw new WebScriptException(Status.STATUS_NOT_FOUND, "The event " + eventName + " does not exist.");
}
json = new JSONObject(new JSONTokener(req.getContent().getContent())); json = new JSONObject(new JSONTokener(req.getContent().getContent()));
String eventDisplayLabel = null; // Check the event name
if (json.has("eventDisplayLabel") == true) String eventName = getValue(json, "eventName");
doCheck(eventName, "No event name was provided.");
// Check the event display label
String eventDisplayLabel = getValue(json, "eventDisplayLabel");
doCheck(eventDisplayLabel, "No event display label was provided.");
// Check if the event can be edited or not
RecordsManagementEvent event = null;
if (canEditEvent(eventDisplayLabel, eventName) == true)
{ {
eventDisplayLabel = json.getString("eventDisplayLabel"); // Check the event type
String eventType = getValue(json, "eventType");
doCheck(eventType, "No event type was provided.");
// Create event
event = rmEventService.addEvent(eventType, eventName, eventDisplayLabel);
} }
if (eventDisplayLabel == null || eventDisplayLabel.length() == 0) else
{ {
throw new WebScriptException(Status.STATUS_BAD_REQUEST, "No event display label provided."); // Get event
event = rmEventService.getEvent(eventName);
} }
if (rmEventService.existsEventDisplayLabel(eventDisplayLabel))
{
throw new WebScriptException(Status.STATUS_BAD_REQUEST,
"Cannot edit event. The event display label '"
+ eventDisplayLabel + "' already exists.");
}
String eventType = null;
if (json.has("eventType") == true)
{
eventType = json.getString("eventType");
}
if (eventType == null || eventType.length() == 0)
{
throw new WebScriptException(Status.STATUS_BAD_REQUEST, "No event type provided.");
}
RecordsManagementEvent event = rmEventService.addEvent(eventType, eventName, eventDisplayLabel);
model.put("event", event); model.put("event", event);
} }
catch (IOException iox) catch (IOException iox)
{ {
@@ -122,7 +108,31 @@ public class RmEventPut extends DeclarativeWebScript
throw new WebScriptException(Status.STATUS_BAD_REQUEST, throw new WebScriptException(Status.STATUS_BAD_REQUEST,
"Could not parse JSON from req.", je); "Could not parse JSON from req.", je);
} }
return model; return model;
} }
/**
* Helper method for checking if an event can be edited or not. Throws an
* error if an event with the same display label already exists.
*
* @param eventDisplayLabel The display label of the event
* @param eventName The name of the event
* @return true if the event can be edited, false otherwise
*/
private boolean canEditEvent(String eventDisplayLabel, String eventName)
{
boolean canEditEvent;
try
{
canEditEvent = rmEventService.canEditEvent(eventDisplayLabel, eventName);
}
catch (AlfrescoRuntimeException are)
{
throw new WebScriptException(Status.STATUS_BAD_REQUEST, are.getLocalizedMessage());
}
return canEditEvent;
}
} }

View File

@@ -25,33 +25,29 @@ import java.util.Map;
import org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEvent; import org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEvent;
import org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService; import org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEventService;
import org.alfresco.util.GUID; import org.alfresco.util.GUID;
import org.springframework.extensions.webscripts.Cache; import org.alfresco.util.ParameterCheck;
import org.springframework.extensions.webscripts.DeclarativeWebScript; import org.apache.commons.lang.StringUtils;
import org.springframework.extensions.webscripts.Status;
import org.springframework.extensions.webscripts.WebScriptException;
import org.springframework.extensions.webscripts.WebScriptRequest;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.json.JSONException; import org.json.JSONException;
import org.json.JSONObject; import org.json.JSONObject;
import org.json.JSONTokener; import org.json.JSONTokener;
import org.springframework.extensions.webscripts.Cache;
import org.springframework.extensions.webscripts.Status;
import org.springframework.extensions.webscripts.WebScriptException;
import org.springframework.extensions.webscripts.WebScriptRequest;
/** /**
* * Records management event POST web script
* *
* @author Roy Wetherall * @author Roy Wetherall
*/ */
public class RmEventsPost extends DeclarativeWebScript public class RmEventsPost extends RMEventBase
{ {
@SuppressWarnings("unused") /** Records management event service */
private static Log logger = LogFactory.getLog(RmEventsPost.class);
/** Reccords management event service */
private RecordsManagementEventService rmEventService; private RecordsManagementEventService rmEventService;
/** /**
* Set the records management event service * Set the records management event service
* *
* @param rmEventService * @param rmEventService
*/ */
public void setRecordsManagementEventService(RecordsManagementEventService rmEventService) public void setRecordsManagementEventService(RecordsManagementEventService rmEventService)
@@ -59,57 +55,41 @@ public class RmEventsPost extends DeclarativeWebScript
this.rmEventService = rmEventService; this.rmEventService = rmEventService;
} }
/**
* @see org.springframework.extensions.webscripts.DeclarativeWebScript#executeImpl(org.springframework.extensions.webscripts.WebScriptRequest,
* org.springframework.extensions.webscripts.Status,
* org.springframework.extensions.webscripts.Cache)
*/
@Override @Override
public Map<String, Object> executeImpl(WebScriptRequest req, Status status, Cache cache) public Map<String, Object> executeImpl(WebScriptRequest req, Status status, Cache cache)
{ {
Map<String, Object> model = new HashMap<String, Object>(); ParameterCheck.mandatory("req", req);
Map<String, Object> model = new HashMap<String, Object>();
JSONObject json = null; JSONObject json = null;
try try
{ {
// Convert the request content to JSON
json = new JSONObject(new JSONTokener(req.getContent().getContent())); json = new JSONObject(new JSONTokener(req.getContent().getContent()));
String eventName = null; // Get the event name
if (json.has("eventName") == true) String eventName = getEventName(json);
{
eventName = json.getString("eventName"); // Check the event display label
} String eventDisplayLabel = getValue(json, "eventDisplayLabel");
doCheck(eventDisplayLabel, "No event display label was provided.");
if (eventName == null || eventName.length() == 0)
{ // Check if the event can be created
// Generate the event name canCreateEvent(eventDisplayLabel, eventName);
eventName = GUID.generate();
} // Check the event type
String eventType = getValue(json, "eventType");
String eventDisplayLabel = null; doCheck(eventType, "No event type was provided.");
if (json.has("eventDisplayLabel") == true)
{ // Create event
eventDisplayLabel = json.getString("eventDisplayLabel");
}
if (eventDisplayLabel == null || eventDisplayLabel.length() == 0)
{
throw new WebScriptException(Status.STATUS_BAD_REQUEST, "No event display label provided.");
}
if (rmEventService.existsEventDisplayLabel(eventDisplayLabel))
{
throw new WebScriptException(Status.STATUS_BAD_REQUEST,
"Cannot create event. The event display label '"
+ eventDisplayLabel + "' already exists.");
}
String eventType = null;
if (json.has("eventType") == true)
{
eventType = json.getString("eventType");
}
if (eventType == null || eventType.length() == 0)
{
throw new WebScriptException(Status.STATUS_BAD_REQUEST, "No event type provided.");
}
RecordsManagementEvent event = rmEventService.addEvent(eventType, eventName, eventDisplayLabel); RecordsManagementEvent event = rmEventService.addEvent(eventType, eventName, eventDisplayLabel);
model.put("event", event); model.put("event", event);
} }
catch (IOException iox) catch (IOException iox)
{ {
@@ -121,7 +101,48 @@ public class RmEventsPost extends DeclarativeWebScript
throw new WebScriptException(Status.STATUS_BAD_REQUEST, throw new WebScriptException(Status.STATUS_BAD_REQUEST,
"Could not parse JSON from req.", je); "Could not parse JSON from req.", je);
} }
return model; return model;
} }
/**
* Helper method for getting the event name
*
* @param json The request content as JSON object
* @return String The event name. A generated GUID if it doesn't exist
* @throws JSONException If there is no string value for the key
*/
private String getEventName(JSONObject json) throws JSONException
{
String eventName = getValue(json, "eventName");
if (StringUtils.isBlank(eventName))
{
// Generate the event name
eventName = GUID.generate();
}
return eventName;
}
/**
* Helper method for checking if an event can be created or not. Throws an
* error if the event already exists.
*
* @param eventDisplayLabel The display label of the event
* @param eventName The name of the event
*/
private boolean canCreateEvent(String eventDisplayLabel, String eventName)
{
boolean canCreateEvent = true;
if (rmEventService.canCreateEvent(eventDisplayLabel, eventName) == false)
{
throw new WebScriptException(Status.STATUS_BAD_REQUEST,
"Cannot create event. An event with the display label '"
+ eventDisplayLabel + "' already exists.");
}
return canCreateEvent;
}
} }