Package org.alfresco.repo.tagging
Class TagScopePropertyMethodInterceptor
java.lang.Object
org.alfresco.repo.tagging.TagScopePropertyMethodInterceptor
- All Implemented Interfaces:
org.aopalliance.aop.Advice,org.aopalliance.intercept.Interceptor,org.aopalliance.intercept.MethodInterceptor
public class TagScopePropertyMethodInterceptor
extends Object
implements org.aopalliance.intercept.MethodInterceptor
This class is an interceptor of the NodeService that converts the content of the tagScopeCache property into a pseudo, multi-value text property (cm:tagScopeSummary) with each value of the spoofed property taking the form "=". This interceptor can be enabled by calling its static
setEnabled(Boolean) method. It is enabled by default. When enabled, a call to getProperties for a node that has a cm:tagScopeCache property will include the calculated cm:tagScopeSummary property. A call to getProperty specifying cm:tagScopeSummary as the property name will return the calculated property value or null if the node has no cm:tagScopeCache property value.- Author:
- Brian Remmington
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic final BooleangetTagSummary(NodeRef nodeRef, Map<QName, Serializable> allNodeProperties) Given a NodeRef and, optionally, the property map of that node, this operation establishes whether the node is a TagScope node, and returns the appropriate value of the cm:tagScopeSummary property.invoke(org.aopalliance.intercept.MethodInvocation invocation) voidsetCache(SimpleCache<String, List<String>> cache) voidsetContentService(ContentService contentService) static final BooleansetEnabled(Boolean enable) Allows the functionality of this interceptor to be enabled and disabled on a thread-by-thread basis.voidsetNodeService(NodeService nodeService)
-
Constructor Details
-
TagScopePropertyMethodInterceptor
public TagScopePropertyMethodInterceptor()
-
-
Method Details
-
setContentService
-
setNodeService
-
setCache
-
invoke
- Specified by:
invokein interfaceorg.aopalliance.intercept.MethodInterceptor- Throws:
Throwable
-
getTagSummary
Given a NodeRef and, optionally, the property map of that node, this operation establishes whether the node is a TagScope node, and returns the appropriate value of the cm:tagScopeSummary property.- Parameters:
nodeRef- NodeRefallNodeProperties- Optional. If the caller has a current property map for the node being queried then supplying it here saves a little time. This argument is allowed to be null.
-
getEnabled
-
setEnabled
Allows the functionality of this interceptor to be enabled and disabled on a thread-by-thread basis. The caller should ensure that the value is reset to its prior setting once it has finished using the thread of execution.- Parameters:
enable- Boolean- Returns:
- The setting prior to invoking this operation.
-