mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
RM: Policy refactor
* moved policy implementations out of RMEntryVoter and into separate classes * rather than being a hard coded list, policies are now registered via spring allowing others to be easily added * re-arrange some of the support implementation * RMEntryVoter is now significantly smaller and most of the logic that was once encapsulated in here is spread over supporting classes and services * TODO .. need to review policies and determine which are appropraite .. much easier to do now! git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@48815 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -78,6 +78,7 @@
|
||||
<!-- Import fixed permission definitions for RM -->
|
||||
<import resource="classpath:alfresco/module/org_alfresco_module_rm/rm-public-services-security-context.xml"/>
|
||||
<import resource="classpath:alfresco/module/org_alfresco_module_rm/security/rm-method-security-context.xml"/>
|
||||
<import resource="classpath:alfresco/module/org_alfresco_module_rm/security/rm-policy-context.xml"/>
|
||||
|
||||
<!-- Import the RM service's -->
|
||||
<import resource="classpath:alfresco/module/org_alfresco_module_rm/rm-service-context.xml"/>
|
||||
|
@@ -14,7 +14,6 @@
|
||||
abstract="true"
|
||||
parent="RMSecurityCommon"
|
||||
init-method="init">
|
||||
<property name="voter" ref="rmEntryVoter"/>
|
||||
<property name="capabilityService" ref="CapabilityService"/>
|
||||
</bean>
|
||||
|
||||
|
@@ -93,10 +93,7 @@
|
||||
lazy-init="false"
|
||||
parent="RMSecurityCommon"
|
||||
depends-on="CapabilityService">
|
||||
<!-- Services -->
|
||||
<property name="namespacePrefixResolver" ref="namespaceService"/>
|
||||
<property name="dictionaryService" ref="dictionaryService"/>
|
||||
<property name="dispositionService" ref="dispositionService"/>
|
||||
<property name="capabilityService" ref="capabilityService"/>
|
||||
|
||||
</bean>
|
||||
|
@@ -15,6 +15,6 @@
|
||||
|
||||
<bean id="rm-method-security-post-processor" class="org.alfresco.module.org_alfresco_module_rm.security.RMMethodSecurityPostProcessor">
|
||||
<property name="properties" ref="rm-method-security-properties"/>
|
||||
</bean>
|
||||
</bean>
|
||||
|
||||
</beans>
|
@@ -0,0 +1,55 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>
|
||||
|
||||
<beans>
|
||||
|
||||
<bean id="basePolicy" abstract="true" parent="RMSecurityCommon" init-method="init">
|
||||
<property name="capabilityService" ref="capabilityService" />
|
||||
<property name="rmEntryVoter" ref="rmEntryVoter" />
|
||||
</bean>
|
||||
|
||||
<bean id="readPolicy" parent="basePolicy" class="org.alfresco.module.org_alfresco_module_rm.capability.policy.ReadPolicy">
|
||||
<property name="name" value="Read"/>
|
||||
</bean>
|
||||
|
||||
<bean id="createPolicy" parent="basePolicy" class="org.alfresco.module.org_alfresco_module_rm.capability.policy.CreatePolicy">
|
||||
<property name="name" value="Create"/>
|
||||
</bean>
|
||||
|
||||
<bean id="movePolicy" parent="basePolicy" class="org.alfresco.module.org_alfresco_module_rm.capability.policy.MovePolicy">
|
||||
<property name="name" value="Move"/>
|
||||
</bean>
|
||||
|
||||
<bean id="updatePolicy" parent="basePolicy" class="org.alfresco.module.org_alfresco_module_rm.capability.policy.UpdatePolicy">
|
||||
<property name="name" value="Update"/>
|
||||
</bean>
|
||||
|
||||
<bean id="deletePolicy" parent="basePolicy" class="org.alfresco.module.org_alfresco_module_rm.capability.policy.DeletePolicy">
|
||||
<property name="name" value="Delete"/>
|
||||
</bean>
|
||||
|
||||
<bean id="updatePropertiesPolicy" parent="basePolicy" class="org.alfresco.module.org_alfresco_module_rm.capability.policy.UpdatePropertiesPolicy">
|
||||
<property name="name" value="UpdateProperties"/>
|
||||
</bean>
|
||||
|
||||
<bean id="assocPolicy" parent="basePolicy" class="org.alfresco.module.org_alfresco_module_rm.capability.policy.AssocPolicy">
|
||||
<property name="name" value="Assoc"/>
|
||||
</bean>
|
||||
|
||||
<bean id="writeContentPolicy" parent="basePolicy" class="org.alfresco.module.org_alfresco_module_rm.capability.policy.WriteContentPolicy">
|
||||
<property name="name" value="WriteContent"/>
|
||||
</bean>
|
||||
|
||||
<bean id="capabilityPolicy" parent="basePolicy" class="org.alfresco.module.org_alfresco_module_rm.capability.policy.CapabilityPolicy">
|
||||
<property name="name" value="Capability"/>
|
||||
</bean>
|
||||
|
||||
<bean id="declarePolicy" parent="basePolicy" class="org.alfresco.module.org_alfresco_module_rm.capability.policy.DeclarePolicy">
|
||||
<property name="name" value="Declare"/>
|
||||
</bean>
|
||||
|
||||
<bean id="readPropertyPolicy" parent="basePolicy" class="org.alfresco.module.org_alfresco_module_rm.capability.policy.ReadPropertyPolicy">
|
||||
<property name="name" value="ReadProperty"/>
|
||||
</bean>
|
||||
|
||||
</beans>
|
Reference in New Issue
Block a user