diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/log4j.properties b/rm-server/config/alfresco/module/org_alfresco_module_rm/log4j.properties index d8ed8d931b..19d4f43d4f 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/log4j.properties +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/log4j.properties @@ -5,9 +5,9 @@ log4j.logger.org.alfresco.module.org_alfresco_module_rm.caveat=warn log4j.logger.org.alfresco.module.org_alfresco_module_rm.security.RMMethodSecurityPostProcessor=warn # -# Module patch debug information +# Module patches # -#log4j.logger.org.alfresco.module.org_alfresco_module_rm.patch=debug +log4j.logger.org.alfresco.module.org_alfresco_module_rm.patch=debug # # RM Permission Debug Information diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-patch-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-patch-context.xml index 4a9b197554..f248d27a92 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-patch-context.xml +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-patch-context.xml @@ -92,6 +92,7 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/ModulePatchComponent.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/ModulePatchComponent.java index c64cfca7d3..8aff3c4314 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/ModulePatchComponent.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/ModulePatchComponent.java @@ -19,6 +19,8 @@ package org.alfresco.module.org_alfresco_module_rm.patch; import org.alfresco.repo.module.AbstractModuleComponent; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; /** @@ -29,11 +31,19 @@ import org.alfresco.repo.module.AbstractModuleComponent; */ public abstract class ModulePatchComponent extends AbstractModuleComponent { + /** logger */ + private static Log logger = LogFactory.getLog(ModulePatchComponent.class); + @Override protected void executeInternal() throws Throwable { try { + if (logger.isInfoEnabled() == true) + { + logger.info("Module patch component '" + getName() + "' is executing ..."); + } + executePatch(); } catch (Throwable exception) diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/RMv21InPlacePatch.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/RMv21InPlacePatch.java index 4ed480f95e..e32b587a83 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/RMv21InPlacePatch.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/RMv21InPlacePatch.java @@ -32,6 +32,7 @@ import org.alfresco.module.org_alfresco_module_rm.security.ExtendedReaderDynamic import org.alfresco.module.org_alfresco_module_rm.security.ExtendedWriterDynamicAuthority; import org.alfresco.module.org_alfresco_module_rm.security.FilePlanPermissionService; import org.alfresco.service.cmr.repository.NodeRef; +import org.alfresco.service.cmr.rule.RuleService; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.springframework.beans.factory.BeanNameAware; @@ -75,6 +76,9 @@ public class RMv21InPlacePatch extends ModulePatchComponent /** capability service */ private CapabilityService capabilityService; + /** rule service */ + private RuleService ruleService; + /** * @param filePlanRoleService file plan role service */ @@ -107,17 +111,20 @@ public class RMv21InPlacePatch extends ModulePatchComponent this.capabilityService = capabilityService; } + /** + * @param ruleService rule service + */ + public void setRuleService(RuleService ruleService) + { + this.ruleService = ruleService; + } + /** * @see org.alfresco.repo.module.AbstractModuleComponent#executeInternal() */ @Override protected void executePatch() throws Throwable - { - if (logger.isDebugEnabled() == true) - { - logger.debug("RM module: RMv21InPlacePatch executing ..."); - } - + { Set filePlans = filePlanService.getFilePlans(); if (logger.isDebugEnabled() == true) @@ -132,25 +139,28 @@ public class RMv21InPlacePatch extends ModulePatchComponent if (logger.isDebugEnabled() == true) { logger.debug(" ... updating file plan " + filePlan.toString()); + } + + ruleService.disableRules(); + try + { + // set permissions + filePlanPermissionService.setPermission(filePlan, ExtendedReaderDynamicAuthority.EXTENDED_READER, RMPermissionModel.READ_RECORDS); + filePlanPermissionService.setPermission(filePlan, ExtendedWriterDynamicAuthority.EXTENDED_WRITER, RMPermissionModel.FILING); + + // create unfiled container + filePlanService.createUnfiledContainer(filePlan); + + // add the inplace roles + filePlanRoleService.createRole(filePlan, ROLE_READERS, ROLE_READERS_LABEL, getCapabilities(ROLE_READERS_CAPABILITIES)); + filePlanRoleService.createRole(filePlan, ROLE_WRITERS, ROLE_WRITERS_LABEL, getCapabilities(ROLE_WRITERS_CAPABILITIES)); + } + finally + { + ruleService.enableRules(); } - - // set permissions - filePlanPermissionService.setPermission(filePlan, ExtendedReaderDynamicAuthority.EXTENDED_READER, RMPermissionModel.READ_RECORDS); - filePlanPermissionService.setPermission(filePlan, ExtendedWriterDynamicAuthority.EXTENDED_WRITER, RMPermissionModel.FILING); - - // create unfiled container - filePlanService.createUnfiledContainer(filePlan); - - // add the inplace roles - filePlanRoleService.createRole(filePlan, ROLE_READERS, ROLE_READERS_LABEL, getCapabilities(ROLE_READERS_CAPABILITIES)); - filePlanRoleService.createRole(filePlan, ROLE_WRITERS, ROLE_WRITERS_LABEL, getCapabilities(ROLE_WRITERS_CAPABILITIES)); } } - - if (logger.isDebugEnabled() == true) - { - logger.debug(" ... complete"); - } } private Set getCapabilities(String[] capabilityNames) diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/RMv2FilePlanNodeRefPatch.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/RMv2FilePlanNodeRefPatch.java index 0a128715d9..2d4c7924e4 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/RMv2FilePlanNodeRefPatch.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/patch/RMv2FilePlanNodeRefPatch.java @@ -116,12 +116,7 @@ public class RMv2FilePlanNodeRefPatch extends ModulePatchComponent */ @Override protected void executePatch() throws Throwable - { - if (logger.isDebugEnabled() == true) - { - logger.debug("RM Module RMv2FilePlanNodeRef Patch ..."); - } - + { Pair aspectPair = qnameDAO.getQName(ASPECT_FILE_PLAN_COMPONENT); if (aspectPair != null) { @@ -179,12 +174,6 @@ public class RMv2FilePlanNodeRefPatch extends ModulePatchComponent { behaviourFilter.enableBehaviour(); } - } - - if (logger.isDebugEnabled() == true) - { - logger.debug(" ... complete RM Module RMv2FilePlanNodeRef Patch"); - } - + } } }