|
Spring Security Framework | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.springframework.security.intercept.web.DefaultFilterInvocationDefinitionSource
public class DefaultFilterInvocationDefinitionSource
Default implementation of FilterInvocationDefinitionSource.
Stores an ordered map of compiled URL paths to ConfigAttributeDefinitions and provides URL matching against the items stored in this map using the configured UrlMatcher.
The order of registering the regular expressions using the
addSecureUrl(String, ConfigAttributeDefinition)
is very important.
The system will identify the first matching regular
expression for a given HTTP URL. It will not proceed to evaluate later regular expressions if a match has already
been found. Accordingly, the most specific regular expressions should be registered first, with the most general
regular expressions registered last.
If URLs are registered for a particular HTTP method using
addSecureUrl(String, String, ConfigAttributeDefinition)
, then the method-specific matches will take
precedence over any URLs which are registered without an HTTP method.
Field Summary | |
---|---|
protected org.apache.commons.logging.Log |
logger
|
Constructor Summary | |
---|---|
DefaultFilterInvocationDefinitionSource(UrlMatcher urlMatcher,
LinkedHashMap requestMap)
Builds the internal request map from the supplied map. |
Method Summary | |
---|---|
ConfigAttributeDefinition |
getAttributes(Object object)
Accesses the ConfigAttributeDefinition that applies to a given secure object. |
Collection |
getConfigAttributeDefinitions()
If available, returns all of the ConfigAttributeDefinition s defined by the implementing class. |
int |
getMapSize()
|
protected UrlMatcher |
getUrlMatcher()
|
boolean |
isConvertUrlToLowercaseBeforeComparison()
|
protected ConfigAttributeDefinition |
lookupAttributes(String url)
|
ConfigAttributeDefinition |
lookupAttributes(String url,
String method)
Performs the actual lookup of the relevant ConfigAttributeDefinition for the specified
FilterInvocation . |
void |
setStripQueryStringFromUrls(boolean stripQueryStringFromUrls)
|
boolean |
supports(Class clazz)
Indicates whether the ObjectDefinitionSource implementation is able to provide
ConfigAttributeDefinition s for the indicated secure object type. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected final org.apache.commons.logging.Log logger
Constructor Detail |
---|
public DefaultFilterInvocationDefinitionSource(UrlMatcher urlMatcher, LinkedHashMap requestMap)
RequestKey
,
which contains a URL path and an optional HTTP method (may be null). The path stored in the key will depend on
the type of the supplied UrlMatcher.
urlMatcher
- typically an ant or regular expression matcher.requestMap
- order-preserving map of Method Detail |
---|
public Collection getConfigAttributeDefinitions()
ObjectDefinitionSource
ConfigAttributeDefinition
s defined by the implementing class.
This is used by the AbstractSecurityInterceptor
to perform startup time validation of each
ConfigAttribute
configured against it.
getConfigAttributeDefinitions
in interface ObjectDefinitionSource
ConfigAttributeDefinition
s or null
if unsupportedpublic ConfigAttributeDefinition getAttributes(Object object) throws IllegalArgumentException
ObjectDefinitionSource
ConfigAttributeDefinition
that applies to a given secure object.Returns
null
if no ConfigAttribiteDefinition
applies.
getAttributes
in interface ObjectDefinitionSource
object
- the object being secured
ConfigAttributeDefinition
that applies to the passed object
IllegalArgumentException
- if the passed object is not of a type supported by the
ObjectDefinitionSource
implementationprotected ConfigAttributeDefinition lookupAttributes(String url)
public ConfigAttributeDefinition lookupAttributes(String url, String method)
ConfigAttributeDefinition
for the specified
FilterInvocation
.
By default, iterates through the stored URL map and calls the
UrlMatcher.pathMatchesUrl(Object path, String url)
method until a match is found.
Subclasses can override if required to perform any modifications to the URL.
url
- the URI to retrieve configuration attributes formethod
- the HTTP method (GET, POST, DELETE...).
ConfigAttributeDefinition
that applies to the specified FilterInvocation
or null if no match is foudpublic boolean supports(Class clazz)
ObjectDefinitionSource
ObjectDefinitionSource
implementation is able to provide
ConfigAttributeDefinition
s for the indicated secure object type.
supports
in interface ObjectDefinitionSource
clazz
- the class that is being queried
public int getMapSize()
protected UrlMatcher getUrlMatcher()
public boolean isConvertUrlToLowercaseBeforeComparison()
public void setStripQueryStringFromUrls(boolean stripQueryStringFromUrls)
|
Spring Security Framework | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |