From df9ab69ab8484835aca2b80e9095f30c692048ec Mon Sep 17 00:00:00 2001 From: Tuna Aksoy Date: Wed, 8 Apr 2015 09:18:58 +0000 Subject: [PATCH] RM-1827 ("Declare" actions become available for user only after re-login) * Changes reverted git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@101292 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../rm-ui-evaluators-context.xml | 1 - .../jscript/app/JSONConversionComponent.java | 102 +----------------- 2 files changed, 3 insertions(+), 100 deletions(-) diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-ui-evaluators-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-ui-evaluators-context.xml index 5f8792cc13..7d9365adde 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-ui-evaluators-context.xml +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-ui-evaluators-context.xml @@ -17,7 +17,6 @@ - diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/jscript/app/JSONConversionComponent.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/jscript/app/JSONConversionComponent.java index 0c8f094baf..4a246536b0 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/jscript/app/JSONConversionComponent.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/jscript/app/JSONConversionComponent.java @@ -18,13 +18,10 @@ */ package org.alfresco.module.org_alfresco_module_rm.jscript.app; -import static org.alfresco.model.ContentModel.PROP_USERNAME; - import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.Set; import org.alfresco.model.ContentModel; import org.alfresco.module.org_alfresco_module_rm.capability.CapabilityService; @@ -44,15 +41,12 @@ import org.alfresco.service.cmr.model.FileInfo; import org.alfresco.service.cmr.repository.ChildAssociationRef; import org.alfresco.service.cmr.repository.NodeRef; import org.alfresco.service.cmr.security.AccessStatus; -import org.alfresco.service.cmr.security.AuthorityService; -import org.alfresco.service.cmr.security.AuthorityType; import org.alfresco.service.cmr.site.SiteInfo; import org.alfresco.service.cmr.site.SiteService; import org.alfresco.service.namespace.NamespaceService; import org.alfresco.service.namespace.QName; import org.alfresco.util.PathUtil; import org.apache.commons.lang.ArrayUtils; -import org.apache.commons.lang.StringUtils; import org.json.simple.JSONArray; import org.json.simple.JSONObject; @@ -63,15 +57,14 @@ import org.json.simple.JSONObject; */ public class JSONConversionComponent extends org.alfresco.repo.jscript.app.JSONConversionComponent implements NodeServicePolicies.OnDeleteNodePolicy, - NodeServicePolicies.OnCreateNodePolicy, - NodeServicePolicies.OnCreateChildAssociationPolicy, - NodeServicePolicies.OnDeleteChildAssociationPolicy + NodeServicePolicies.OnCreateNodePolicy { /** JSON values */ private static final String IS_RM_NODE = "isRmNode"; private static final String RM_NODE = "rmNode"; private static final String IS_RM_SITE_CREATED = "isRmSiteCreated"; private static final String IS_RECORD_CONTRIBUTOR_GROUP_ENABLED = "isRecordContributorGroupEnabled"; + private static final String RECORD_CONTRIBUTOR_GROUP_NAME = "recordContributorGroupName"; /** true if record contributor group is enabled, false otherwise */ private boolean isRecordContributorsGroupEnabled = false; @@ -94,9 +87,6 @@ public class JSONConversionComponent extends org.alfresco.repo.jscript.app.JS /** site service */ private SiteService siteService; - /** Authority service */ - private AuthorityService authorityService; - /** Indicators */ private List indicators = new ArrayList(); @@ -111,9 +101,6 @@ public class JSONConversionComponent extends org.alfresco.repo.jscript.app.JS /** Constants for checking the cache */ private static final String RM_SITE_EXISTS = "rmSiteExists"; - private static final String RM_RECORD_CONTRIBUTORS_GROUP_MEMBERS = "rmRecordContributorsGroupMembers"; - private static final String RM_RECORD_CONTRIBUTORS_GROUP_NODE_REF = "rmRecordContributorsGroupNodeRef"; - private static final String RM_SHOW_ACTIONS = "rmShowActions"; /** * @param enabled true if enabled, false otherwise @@ -171,14 +158,6 @@ public class JSONConversionComponent extends org.alfresco.repo.jscript.app.JS this.siteService = siteService; } - /** - * @param authorityService authority service - */ - public void setAuthorityService(AuthorityService authorityService) - { - this.authorityService = authorityService; - } - /** * @param indicator registered indicator */ @@ -237,16 +216,6 @@ public class JSONConversionComponent extends org.alfresco.repo.jscript.app.JS QName.createQName(NamespaceService.ALFRESCO_URI, "onCreateNode"), RecordsManagementModel.TYPE_RM_SITE, new JavaBehaviour(this, "onCreateNode")); - - policyComponent.bindAssociationBehaviour( - QName.createQName(NamespaceService.ALFRESCO_URI, "onCreateChildAssociation"), - ContentModel.TYPE_AUTHORITY, - new JavaBehaviour(this, "onCreateChildAssociation")); - - policyComponent.bindAssociationBehaviour( - QName.createQName(NamespaceService.ALFRESCO_URI, "onDeleteChildAssociation"), - ContentModel.TYPE_AUTHORITY, - new JavaBehaviour(this, "onDeleteChildAssociation")); } /** @@ -267,10 +236,7 @@ public class JSONConversionComponent extends org.alfresco.repo.jscript.app.JS // get the record contributor information rootJSONObject.put(IS_RECORD_CONTRIBUTOR_GROUP_ENABLED, isRecordContributorsGroupEnabled); - if (isRecordContributorsGroupEnabled) - { - rootJSONObject.put(RM_SHOW_ACTIONS, showRmActions()); - } + rootJSONObject.put(RECORD_CONTRIBUTOR_GROUP_NAME, recordContributorsGroupName); // Get the node reference for convenience NodeRef nodeRef = nodeInfo.getNodeRef(); @@ -292,20 +258,6 @@ public class JSONConversionComponent extends org.alfresco.repo.jscript.app.JS } } - private boolean showRmActions() - { - if (!getJsonConversionComponentCache().contains(RM_RECORD_CONTRIBUTORS_GROUP_MEMBERS)) - { - Set groupMembers = authorityService.getContainedAuthorities(AuthorityType.USER, AuthorityType.GROUP.getPrefixString() + recordContributorsGroupName, false); - getJsonConversionComponentCache().put(RM_RECORD_CONTRIBUTORS_GROUP_MEMBERS, groupMembers); - } - - @SuppressWarnings("unchecked") - Set recordContributorsMembers = (Set) getJsonConversionComponentCache().get(RM_RECORD_CONTRIBUTORS_GROUP_MEMBERS); - - return recordContributorsMembers.contains(AuthenticationUtil.getFullyAuthenticatedUser()); - } - /** * Checks for the existance of the RM site * @@ -624,52 +576,4 @@ public class JSONConversionComponent extends org.alfresco.repo.jscript.app.JS { getJsonConversionComponentCache().put(RM_SITE_EXISTS, true); } - - /** - * @see org.alfresco.repo.node.NodeServicePolicies.OnCreateChildAssociationPolicy#onCreateChildAssociation(org.alfresco.service.cmr.repository.ChildAssociationRef, boolean) - */ - @Override - public void onCreateChildAssociation(ChildAssociationRef childAssocRef, boolean isNewNode) - { - if (isRecordContributorsGroupEnabled) - { - if (!getJsonConversionComponentCache().contains(RM_RECORD_CONTRIBUTORS_GROUP_MEMBERS)) - { - Set groupMembers = authorityService.getContainedAuthorities(AuthorityType.USER, AuthorityType.GROUP.getPrefixString() + recordContributorsGroupName, false); - getJsonConversionComponentCache().put(RM_RECORD_CONTRIBUTORS_GROUP_MEMBERS, groupMembers); - - NodeRef recordContributorNodeRef = authorityService.getAuthorityNodeRef(AuthorityType.GROUP.getPrefixString() + recordContributorsGroupName); - getJsonConversionComponentCache().put(RM_RECORD_CONTRIBUTORS_GROUP_NODE_REF, recordContributorNodeRef); - } - - if (childAssocRef.getParentRef().equals(getJsonConversionComponentCache().get(RM_RECORD_CONTRIBUTORS_GROUP_NODE_REF))) - { - @SuppressWarnings("unchecked") - Set recordContributorsMembers = (Set) getJsonConversionComponentCache().get(RM_RECORD_CONTRIBUTORS_GROUP_MEMBERS); - String userName = (String) nodeService.getProperty(childAssocRef.getChildRef(), PROP_USERNAME); - if (StringUtils.isNotBlank(userName)) - { - recordContributorsMembers.add(userName); - } - } - } - } - - /** - * @see org.alfresco.repo.node.NodeServicePolicies.OnDeleteChildAssociationPolicy#onDeleteChildAssociation(org.alfresco.service.cmr.repository.ChildAssociationRef) - */ - @Override - public void onDeleteChildAssociation(ChildAssociationRef childAssocRef) - { - if (isRecordContributorsGroupEnabled && getJsonConversionComponentCache().contains(RM_RECORD_CONTRIBUTORS_GROUP_MEMBERS)) - { - @SuppressWarnings("unchecked") - Set groupMembers = (Set) getJsonConversionComponentCache().get(RM_RECORD_CONTRIBUTORS_GROUP_MEMBERS); - String userName = (String) nodeService.getProperty(childAssocRef.getChildRef(), PROP_USERNAME); - if (StringUtils.isNotBlank(userName)); - { - groupMembers.remove(userName); - } - } - } }