java.lang.Object
org.acegisecurity.intercept.web.AbstractFilterInvocationDefinitionSource
org.acegisecurity.intercept.web.RegExpBasedFilterInvocationDefinitionMap
- All Implemented Interfaces:
- FilterInvocationDefinitionMap, FilterInvocationDefinitionSource, org.acegisecurity.intercept.ObjectDefinitionSource
- public class RegExpBasedFilterInvocationDefinitionMap
- extends AbstractFilterInvocationDefinitionSource
- implements FilterInvocationDefinitionMap
Maintains a List of ConfigAttributeDefinitions
associated with different HTTP request URL regular expression patterns.
Regular expressions are used to match a HTTP request URL against a
ConfigAttributeDefinition.
The order of registering the regular expressions using the addSecureUrl(String, ConfigAttributeDefinition) 55 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 no registered regular expressions match the HTTP URL, null
is returned.
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
logger
private static final org.apache.commons.logging.Log logger
requestMap
private java.util.List requestMap
convertUrlToLowercaseBeforeComparison
private boolean convertUrlToLowercaseBeforeComparison
RegExpBasedFilterInvocationDefinitionMap
public RegExpBasedFilterInvocationDefinitionMap()
getConfigAttributeDefinitions
public java.util.Iterator getConfigAttributeDefinitions()
- Description copied from interface:
org.acegisecurity.intercept.ObjectDefinitionSource
- If available, all of the
ConfigAttributeDefinitions defined
by the implementing class.
This is used by the org.acegisecurity.intercept.AbstractSecurityInterceptor to perform
startup time validation of each ConfigAttribute configured
against it.
- Specified by:
getConfigAttributeDefinitions in interface org.acegisecurity.intercept.ObjectDefinitionSource
setConvertUrlToLowercaseBeforeComparison
public void setConvertUrlToLowercaseBeforeComparison(boolean convertUrlToLowercaseBeforeComparison)
- Specified by:
setConvertUrlToLowercaseBeforeComparison in interface FilterInvocationDefinitionMap
isConvertUrlToLowercaseBeforeComparison
public boolean isConvertUrlToLowercaseBeforeComparison()
getMapSize
public int getMapSize()
addSecureUrl
public void addSecureUrl(java.lang.String perl5RegExp,
ConfigAttributeDefinition attr)
- Specified by:
addSecureUrl in interface FilterInvocationDefinitionMap
lookupAttributes
public ConfigAttributeDefinition lookupAttributes(java.lang.String url)
- Description copied from class:
AbstractFilterInvocationDefinitionSource
- Performs the actual lookup of the relevant
ConfigAttributeDefinition for the specified
FilterInvocation.
Provided so subclasses need only to provide one basic method to properly
interface with the FilterInvocationDefinitionSource.
Public visiblity so that tablibs or other view helper classes can access
the ConfigAttributeDefinition applying to a given URI
pattern without needing to construct a mock
FilterInvocation and retrieving the attibutes via the
AbstractFilterInvocationDefinitionSource.getAttributes(Object) 55 method.
- Specified by:
lookupAttributes in class AbstractFilterInvocationDefinitionSource