org.springframework.security.afterinvocation
Class AbstractAclProvider

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

public abstract class AbstractAclProvider
extends java.lang.Object
implements AfterInvocationProvider

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

Version:
$Id: AbstractAclProvider.java 3132 2008-06-06 03:01:51Z benalex $
Author:
Ben Alex

Field Summary
protected  AclService aclService
           
protected  ObjectIdentityRetrievalStrategy objectIdentityRetrievalStrategy
           
protected  java.lang.String processConfigAttribute
           
protected  java.lang.Class processDomainObjectClass
           
protected  Permission[] requirePermission
           
protected  SidRetrievalStrategy sidRetrievalStrategy
           
 
Constructor Summary
AbstractAclProvider(AclService aclService, java.lang.String processConfigAttribute, Permission[] requirePermission)
           
 
Method Summary
protected  java.lang.Class getProcessDomainObjectClass()
           
protected  boolean hasPermission(Authentication authentication, java.lang.Object domainObject)
           
 void setObjectIdentityRetrievalStrategy(ObjectIdentityRetrievalStrategy objectIdentityRetrievalStrategy)
           
protected  void setProcessConfigAttribute(java.lang.String processConfigAttribute)
           
 void setProcessDomainObjectClass(java.lang.Class processDomainObjectClass)
           
 void setSidRetrievalStrategy(SidRetrievalStrategy sidRetrievalStrategy)
           
 boolean supports(java.lang.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.afterinvocation.AfterInvocationProvider
decide
 

Field Detail

aclService

protected AclService aclService

processDomainObjectClass

protected java.lang.Class processDomainObjectClass

objectIdentityRetrievalStrategy

protected ObjectIdentityRetrievalStrategy objectIdentityRetrievalStrategy

sidRetrievalStrategy

protected SidRetrievalStrategy sidRetrievalStrategy

processConfigAttribute

protected java.lang.String processConfigAttribute

requirePermission

protected Permission[] requirePermission
Constructor Detail

AbstractAclProvider

public AbstractAclProvider(AclService aclService,
                           java.lang.String processConfigAttribute,
                           Permission[] requirePermission)
Method Detail

getProcessDomainObjectClass

protected java.lang.Class getProcessDomainObjectClass()

hasPermission

protected boolean hasPermission(Authentication authentication,
                                java.lang.Object domainObject)

setObjectIdentityRetrievalStrategy

public void setObjectIdentityRetrievalStrategy(ObjectIdentityRetrievalStrategy objectIdentityRetrievalStrategy)

setProcessConfigAttribute

protected void setProcessConfigAttribute(java.lang.String processConfigAttribute)

setProcessDomainObjectClass

public void setProcessDomainObjectClass(java.lang.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(java.lang.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