org.springframework.security.access.annotation
Class Jsr250MethodSecurityMetadataSource
java.lang.Object
org.springframework.security.access.method.AbstractMethodSecurityMetadataSource
org.springframework.security.access.method.AbstractFallbackMethodSecurityMetadataSource
org.springframework.security.access.annotation.Jsr250MethodSecurityMetadataSource
- All Implemented Interfaces:
- org.springframework.aop.framework.AopInfrastructureBean, MethodSecurityMetadataSource, SecurityMetadataSource
public class Jsr250MethodSecurityMetadataSource
- extends AbstractFallbackMethodSecurityMetadataSource
Sources method security metadata from major JSR 250 security annotations.
- Since:
- 2.0
Method Summary |
protected java.util.Collection<ConfigAttribute> |
findAttributes(java.lang.Class<?> clazz)
Obtains the security metadata registered against the specified class. |
protected java.util.Collection<ConfigAttribute> |
findAttributes(java.lang.reflect.Method method,
java.lang.Class<?> targetClass)
Obtains the security metadata applicable to the specified method invocation. |
java.util.Collection<ConfigAttribute> |
getAllConfigAttributes()
If available, returns all of the ConfigAttribute s defined by the implementing class. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Jsr250MethodSecurityMetadataSource
public Jsr250MethodSecurityMetadataSource()
findAttributes
protected java.util.Collection<ConfigAttribute> findAttributes(java.lang.Class<?> clazz)
- Description copied from class:
AbstractFallbackMethodSecurityMetadataSource
- Obtains the security metadata registered against the specified class.
Subclasses should only return metadata expressed at a class level. Subclasses should NOT
aggregate metadata for each method registered against a class, as the abstract superclass
will separate invoke AbstractFallbackMethodSecurityMetadataSource.findAttributes(Method, Class)
for individual methods as
appropriate.
- Specified by:
findAttributes
in class AbstractFallbackMethodSecurityMetadataSource
- Parameters:
clazz
- the target class for the invocation (never null
)
- Returns:
- the security metadata (or null if no metadata applies)
findAttributes
protected java.util.Collection<ConfigAttribute> findAttributes(java.lang.reflect.Method method,
java.lang.Class<?> targetClass)
- Description copied from class:
AbstractFallbackMethodSecurityMetadataSource
- Obtains the security metadata applicable to the specified method invocation.
Note that the Method.getDeclaringClass()
may not equal the targetClass
.
Both parameters are provided to assist subclasses which may wish to provide advanced
capabilities related to method metadata being "registered" against a method even if the
target class does not declare the method (i.e. the subclass may only inherit the method).
- Specified by:
findAttributes
in class AbstractFallbackMethodSecurityMetadataSource
- Parameters:
method
- the method for the current invocation (never null
)targetClass
- the target class for the invocation (may be null
)
- Returns:
- the security metadata (or null if no metadata applies)
getAllConfigAttributes
public java.util.Collection<ConfigAttribute> getAllConfigAttributes()
- Description copied from interface:
SecurityMetadataSource
- If available, returns all of the
ConfigAttribute
s defined by the implementing class.
This is used by the AbstractSecurityInterceptor
to perform startup time validation of each
ConfigAttribute
configured against it.
- Returns:
- the
ConfigAttribute
s or null
if unsupported