Class AbstractSecurityExpressionHandler<T>
java.lang.Object
org.springframework.security.access.expression.AbstractSecurityExpressionHandler<T>
- All Implemented Interfaces:
 org.springframework.aop.framework.AopInfrastructureBean,org.springframework.beans.factory.Aware,org.springframework.context.ApplicationContextAware,SecurityExpressionHandler<T>
- Direct Known Subclasses:
 DefaultHttpSecurityExpressionHandler,DefaultMessageSecurityExpressionHandler,DefaultMethodSecurityExpressionHandler,DefaultWebSecurityExpressionHandler
public abstract class AbstractSecurityExpressionHandler<T>
extends Object
implements SecurityExpressionHandler<T>, org.springframework.context.ApplicationContextAware
Base implementation of the facade which isolates Spring Security's requirements for
 evaluating security expressions from the implementation of the underlying expression
 objects.
- Since:
 - 3.1
 
- 
Constructor Summary
Constructors - 
Method Summary
Modifier and TypeMethodDescriptionfinal org.springframework.expression.EvaluationContextcreateEvaluationContext(Authentication authentication, T invocation) Invokes the internal template methods to createStandardEvaluationContextandSecurityExpressionRootobjects.protected org.springframework.expression.spel.support.StandardEvaluationContextcreateEvaluationContextInternal(Authentication authentication, T invocation) Override to create a custom instance ofStandardEvaluationContext.protected abstract SecurityExpressionOperationscreateSecurityExpressionRoot(Authentication authentication, T invocation) Implement in order to create a root object of the correct type for the supported invocation type.protected org.springframework.expression.BeanResolverfinal org.springframework.expression.ExpressionParserprotected PermissionEvaluatorprotected RoleHierarchyvoidsetApplicationContext(org.springframework.context.ApplicationContext applicationContext) final voidsetExpressionParser(org.springframework.expression.ExpressionParser expressionParser) voidsetPermissionEvaluator(PermissionEvaluator permissionEvaluator) voidsetRoleHierarchy(RoleHierarchy roleHierarchy) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.springframework.security.access.expression.SecurityExpressionHandler
createEvaluationContext 
- 
Constructor Details
- 
AbstractSecurityExpressionHandler
public AbstractSecurityExpressionHandler() 
 - 
 - 
Method Details
- 
getExpressionParser
public final org.springframework.expression.ExpressionParser getExpressionParser()- Specified by:
 getExpressionParserin interfaceSecurityExpressionHandler<T>- Returns:
 - an expression parser for the expressions used by the implementation.
 
 - 
setExpressionParser
public final void setExpressionParser(org.springframework.expression.ExpressionParser expressionParser)  - 
createEvaluationContext
public final org.springframework.expression.EvaluationContext createEvaluationContext(Authentication authentication, T invocation) Invokes the internal template methods to createStandardEvaluationContextandSecurityExpressionRootobjects.- Specified by:
 createEvaluationContextin interfaceSecurityExpressionHandler<T>- Parameters:
 authentication- the current authentication objectinvocation- the invocation (filter, method, channel)- Returns:
 - the context object for use in evaluating the expression, populated with a suitable root object.
 
 - 
createEvaluationContextInternal
protected org.springframework.expression.spel.support.StandardEvaluationContext createEvaluationContextInternal(Authentication authentication, T invocation) Override to create a custom instance ofStandardEvaluationContext.The returned object will have a
SecurityExpressionRootPropertyAccessoradded, allowing beans in theApplicationContextto be accessed via expression properties.- Parameters:
 authentication- the current authentication objectinvocation- the invocation (filter, method, channel)- Returns:
 - A 
StandardEvaluationContextor potentially a custom subclass if overridden. 
 - 
createSecurityExpressionRoot
protected abstract SecurityExpressionOperations createSecurityExpressionRoot(Authentication authentication, T invocation) Implement in order to create a root object of the correct type for the supported invocation type.- Parameters:
 authentication- the current authentication objectinvocation- the invocation (filter, method, channel)- Returns:
 - the object
 
 - 
getRoleHierarchy
 - 
setRoleHierarchy
 - 
getPermissionEvaluator
 - 
setPermissionEvaluator
 - 
getBeanResolver
protected org.springframework.expression.BeanResolver getBeanResolver() - 
setApplicationContext
public void setApplicationContext(org.springframework.context.ApplicationContext applicationContext) - Specified by:
 setApplicationContextin interfaceorg.springframework.context.ApplicationContextAware
 
 -