org.springframework.security.acls.afterinvocation
Class AbstractAclProvider

java.lang.Object
  extended by org.springframework.security.acls.afterinvocation.AbstractAclProvider
All Implemented Interfaces:
AfterInvocationProvider
Direct Known Subclasses:
AclEntryAfterInvocationCollectionFilteringProvider, AclEntryAfterInvocationProvider

public abstract class AbstractAclProvider
extends Object
implements AfterInvocationProvider

Abstract AfterInvocationProvider which provides commonly-used ACL-related services.


Field Summary
protected  AclService aclService
           
protected  ObjectIdentityRetrievalStrategy objectIdentityRetrievalStrategy
           
protected  String processConfigAttribute
           
protected  Class<?> processDomainObjectClass
           
protected  List<Permission> requirePermission
           
protected  SidRetrievalStrategy sidRetrievalStrategy
           
 
Constructor Summary
AbstractAclProvider(AclService aclService, String processConfigAttribute, List<Permission> requirePermission)
           
 
Method Summary
protected  Class<?> getProcessDomainObjectClass()
           
protected  boolean hasPermission(Authentication authentication, Object domainObject)
           
 void setObjectIdentityRetrievalStrategy(ObjectIdentityRetrievalStrategy objectIdentityRetrievalStrategy)
           
protected  void setProcessConfigAttribute(String processConfigAttribute)
           
 void setProcessDomainObjectClass(Class<?> processDomainObjectClass)
           
 void setSidRetrievalStrategy(SidRetrievalStrategy sidRetrievalStrategy)
           
 boolean supports(Class<?> clazz)
          This implementation supports any type of class, because it does not query the presented secure object.
 boolean supports(ConfigAttribute attribute)
          Indicates whether this AfterInvocationProvider is able to participate in a decision involving the passed ConfigAttribute.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.springframework.security.access.AfterInvocationProvider
decide
 

Field Detail

aclService

protected final AclService aclService

processDomainObjectClass

protected Class<?> processDomainObjectClass

objectIdentityRetrievalStrategy

protected ObjectIdentityRetrievalStrategy objectIdentityRetrievalStrategy

sidRetrievalStrategy

protected SidRetrievalStrategy sidRetrievalStrategy

processConfigAttribute

protected String processConfigAttribute

requirePermission

protected final List<Permission> requirePermission
Constructor Detail

AbstractAclProvider

public AbstractAclProvider(AclService aclService,
                           String processConfigAttribute,
                           List<Permission> requirePermission)
Method Detail

getProcessDomainObjectClass

protected Class<?> getProcessDomainObjectClass()

hasPermission

protected boolean hasPermission(Authentication authentication,
                                Object domainObject)

setObjectIdentityRetrievalStrategy

public void setObjectIdentityRetrievalStrategy(ObjectIdentityRetrievalStrategy objectIdentityRetrievalStrategy)

setProcessConfigAttribute

protected void setProcessConfigAttribute(String processConfigAttribute)

setProcessDomainObjectClass

public void setProcessDomainObjectClass(Class<?> processDomainObjectClass)

setSidRetrievalStrategy

public void setSidRetrievalStrategy(SidRetrievalStrategy sidRetrievalStrategy)

supports

public boolean supports(ConfigAttribute attribute)
Description copied from interface: AfterInvocationProvider
Indicates whether this AfterInvocationProvider is able to participate in a decision involving the passed ConfigAttribute.

This allows the AbstractSecurityInterceptor to check every configuration attribute can be consumed by the configured AccessDecisionManager and/or RunAsManager and/or AccessDecisionManager.

Specified by:
supports in interface AfterInvocationProvider
Parameters:
attribute - a configuration attribute that has been configured against the AbstractSecurityInterceptor
Returns:
true if this AfterInvocationProvider can support the passed configuration attribute

supports

public boolean supports(Class<?> clazz)
This implementation supports any type of class, because it does not query the presented secure object.

Specified by:
supports in interface AfterInvocationProvider
Parameters:
clazz - the secure object
Returns:
always true