org.springframework.security.access
Interface AfterInvocationProvider

All Known Implementing Classes:
AbstractAclProvider, AclEntryAfterInvocationCollectionFilteringProvider, AclEntryAfterInvocationProvider, PostInvocationAdviceProvider

public interface AfterInvocationProvider

Indicates a class is responsible for participating in an AfterInvocationProviderManager decision.


Method Summary
 java.lang.Object decide(Authentication authentication, java.lang.Object object, java.util.Collection<ConfigAttribute> attributes, java.lang.Object returnedObject)
           
 boolean supports(java.lang.Class<?> clazz)
          Indicates whether the AfterInvocationProvider is able to provide "after invocation" processing for the indicated secured object type.
 boolean supports(ConfigAttribute attribute)
          Indicates whether this AfterInvocationProvider is able to participate in a decision involving the passed ConfigAttribute.
 

Method Detail

decide

java.lang.Object decide(Authentication authentication,
                        java.lang.Object object,
                        java.util.Collection<ConfigAttribute> attributes,
                        java.lang.Object returnedObject)
                        throws AccessDeniedException
Throws:
AccessDeniedException

supports

boolean supports(ConfigAttribute attribute)
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.

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

supports

boolean supports(java.lang.Class<?> clazz)
Indicates whether the AfterInvocationProvider is able to provide "after invocation" processing for the indicated secured object type.

Parameters:
clazz - the class of secure object that is being queried
Returns:
true if the implementation can process the indicated class