RM-1440: Edit Non Record Metadata capability is required to file a record

* can now file an electronic record with only CreateRecord capability
  * tidied up some of the policy code as I went
  * integration test
  * non-electronic records to follow



git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@73961 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Roy Wetherall
2014-06-17 06:44:19 +00:00
parent 901a8fd8c8
commit c9223cb510
18 changed files with 361 additions and 142 deletions

View File

@@ -43,13 +43,13 @@
<ref bean="rmEditRecordMetadataCapability"/>
<ref bean="rmModifyUnfiledRecordsContainerFolderCapability"/>
<ref bean="rmModifyHoldCapability"/>
<ref bean="rmCreateRecordsCapability"/>
</list>
</property>
</bean>
<bean id="rmUpdateProperties"
parent="compositeCapability"
class="org.alfresco.module.org_alfresco_module_rm.capability.impl.UpdatePropertiesCapability">
parent="compositeCapability">
<property name="name" value="UpdateProperties"/>
<property name="private" value="true"/>
<property name="capabilities">
@@ -62,6 +62,7 @@
<ref bean="rmEditRecordMetadataCapability"/>
<ref bean="rmModifyUnfiledRecordsContainerFolderCapability"/>
<ref bean="rmModifyHoldCapability"/>
<ref bean="rmCreateRecordsCapability"/>
</list>
</property>
</bean>

View File

@@ -211,7 +211,7 @@
<property name="group"><ref bean="recordsGroup"/></property>
<property name="index" value="10" />
</bean>
<bean id="rmEditNonRecordMetadataCapability"
parent="declarativeCapability">
<property name="name" value="EditNonRecordMetadata"/>
@@ -254,6 +254,7 @@
<property name="index" value="30" />
</bean>
<bean id="rmMoveRecordsCapability"
parent="declarativeCapability" >
<property name="name" value="MoveRecords" />

View File

@@ -9,6 +9,22 @@
<property name="beanName" value="NodeService_security" />
<property name="extendingBeanName" value="rm.NodeService_security" />
</bean>
<!-- extended file folder bean definition -->
<bean id="rm.fileFolderService" abstract="true" class="org.alfresco.repo.model.filefolder.ExtendedFileFolderServiceImpl">
<property name="recordService" ref="RecordService" />
</bean>
<bean class="org.alfresco.module.org_alfresco_module_rm.util.BeanExtender">
<property name="beanName" value="fileFolderService" />
<property name="extendingBeanName" value="rm.fileFolderService" />
</bean>
<!-- extend file folder service security to report capability details on failure -->
<bean id="rm.FileFolderService_security" abstract="true" class="org.alfresco.module.org_alfresco_module_rm.security.RMMethodSecurityInterceptor"/>
<bean class="org.alfresco.module.org_alfresco_module_rm.util.BeanExtender">
<property name="beanName" value="FileFolderService_security" />
<property name="extendingBeanName" value="rm.FileFolderService_security" />
</bean>
<bean id="ExtendedPermissionService" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces">

View File

@@ -1090,6 +1090,7 @@
org.alfresco.module.org_alfresco_module_rm.record.RecordService.isDeclared=RM.Read.0
org.alfresco.module.org_alfresco_module_rm.record.RecordService.isFiled=RM.Read.0
org.alfresco.module.org_alfresco_module_rm.record.RecordService.createRecord=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.record.RecordService.createRecordFromContent=RM.Create.0
org.alfresco.module.org_alfresco_module_rm.record.RecordService.file=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.record.RecordService.hideRecord=RM_ALLOW
org.alfresco.module.org_alfresco_module_rm.record.RecordService.isPropertyEditable=RM.Read.0

View File

@@ -65,7 +65,7 @@ rm.methodsecurity.org.alfresco.service.cmr.model.FileFolderService.rename=RM.Upd
rm.methodsecurity.org.alfresco.service.cmr.model.FileFolderService.move=RM.Move.0.1
rm.methodsecurity.org.alfresco.service.cmr.model.FileFolderService.moveFrom=RM.Move.0.2
rm.methodsecurity.org.alfresco.service.cmr.model.FileFolderService.copy=RM.Read.0,RM.Create.1.0
rm.methodsecurity.org.alfresco.service.cmr.model.FileFolderService.create=RM.Create.0.2
rm.methodsecurity.org.alfresco.service.cmr.model.FileFolderService.create=RM.Create.0
rm.methodsecurity.org.alfresco.service.cmr.model.FileFolderService.delete=RM.Delete.0
rm.methodsecurity.org.alfresco.service.cmr.model.FileFolderService.getNamePath=RM.Read.1
rm.methodsecurity.org.alfresco.service.cmr.model.FileFolderService.getNameOnlyPath=RM.Read.1