From d95495c9c7b2773068e49cb81f6dd39e1df8b52b Mon Sep 17 00:00:00 2001 From: Roxana Lucanu-Ghetu Date: Wed, 4 Apr 2018 15:16:18 +0300 Subject: [PATCH] RM-6171 Added restrictions for displaying classify option. --- .../capability/CapabilityService.java | 8 ++++++++ .../capability/CapabilityServiceImpl.java | 20 +++++++++++++++++++ .../jscript/app/JSONConversionComponent.java | 8 ++++++++ 3 files changed, 36 insertions(+) diff --git a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/capability/CapabilityService.java b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/capability/CapabilityService.java index 4b78cb894c..bddc21a8e7 100644 --- a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/capability/CapabilityService.java +++ b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/capability/CapabilityService.java @@ -151,4 +151,12 @@ public interface CapabilityService * @param group The group which should be removed */ void removeGroup(Group group); + + /** + * Check if the current user has the given capability. + * + * @param capabilityName + * @return + */ + boolean hasCapability(NodeRef nodeRef, String capabilityName); } diff --git a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/capability/CapabilityServiceImpl.java b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/capability/CapabilityServiceImpl.java index 648d401ffa..df5ca92702 100644 --- a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/capability/CapabilityServiceImpl.java +++ b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/capability/CapabilityServiceImpl.java @@ -282,4 +282,24 @@ public class CapabilityServiceImpl implements CapabilityService groups.remove(group.getId()); } + + /** + * @see org.alfresco.module.org_alfresco_module_rm.capability.CapabilityService#hasCapability(org.alfresco.service.cmr.repository.NodeRef, java.lang.String) + */ + @Override + public boolean hasCapability(NodeRef nodeRef, String capabilityName) + { + Capability capability = getCapability(capabilityName); + if (capability != null) + { + AccessStatus accessStatus = getCapabilityAccessState(nodeRef, capabilityName); + + if (accessStatus.equals(AccessStatus.ALLOWED)) + { + return true; + } + } + + return false; + } } diff --git a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/jscript/app/JSONConversionComponent.java b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/jscript/app/JSONConversionComponent.java index 52fe863632..49b0d04e82 100644 --- a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/jscript/app/JSONConversionComponent.java +++ b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/jscript/app/JSONConversionComponent.java @@ -154,6 +154,14 @@ public class JSONConversionComponent extends org.alfresco.repo.jscript.app.JS this.capabilityService = capabilityService; } + /** + * @return the nodeService + */ + protected CapabilityService getCapabilityService() + { + return this.capabilityService; + } + /** * @param dictionaryService dictionary service */