Rules
public class RegexRules extends AbstractRulesImpl
Rules implementation that uses regular expression matching for paths.
The regex implementation is pluggable, allowing different strategies to be used. The basic way that this class work does not vary. All patterns are tested to see if they match the path using the regex matcher. All those that do are return in the order which the rules were added.
Modifier and Type | Class | Description |
---|---|---|
private class |
RegexRules.RegisteredRule |
Used to associate rules with paths in the rules list
|
Modifier and Type | Field | Description |
---|---|---|
private RegexMatcher |
matcher |
The regex strategy used by this RegexRules
|
private java.util.ArrayList |
registeredRules |
All registered
Rule 's |
Constructor | Description |
---|---|
RegexRules(RegexMatcher matcher) |
Construct sets the Regex matching strategy.
|
Modifier and Type | Method | Description |
---|---|---|
void |
clear() |
Clear all existing Rule instance registrations.
|
RegexMatcher |
getRegexMatcher() |
Gets the current regex matching strategy.
|
java.util.List |
match(java.lang.String namespaceURI,
java.lang.String pattern) |
Finds matching rules by using current regex matching strategy.
|
protected void |
registerRule(java.lang.String pattern,
Rule rule) |
Register a new Rule instance matching the specified pattern.
|
java.util.List |
rules() |
Return a List of all registered Rule instances, or a zero-length List
if there are no registered Rule instances.
|
void |
setRegexMatcher(RegexMatcher matcher) |
Sets the current regex matching strategy.
|
add, getDigester, getNamespaceURI, match, setDigester, setNamespaceURI
private java.util.ArrayList registeredRules
Rule
'sprivate RegexMatcher matcher
public RegexRules(RegexMatcher matcher)
matcher
- the regex strategy to be used, not nulljava.lang.IllegalArgumentException
- if the strategy is nullpublic RegexMatcher getRegexMatcher()
public void setRegexMatcher(RegexMatcher matcher)
matcher
- use this RegexMatcher, not nulljava.lang.IllegalArgumentException
- if the strategy is nullprotected void registerRule(java.lang.String pattern, Rule rule)
registerRule
in class AbstractRulesImpl
pattern
- Nesting pattern to be matched for this Rulerule
- Rule instance to be registeredpublic void clear()
clear
in interface Rules
clear
in class AbstractRulesImpl
public java.util.List match(java.lang.String namespaceURI, java.lang.String pattern)
match
in interface Rules
match
in class AbstractRulesImpl
namespaceURI
- Namespace URI for which to select matching rules,
or null
to match regardless of namespace URIpattern
- Nesting pattern to be matchedRule
'spublic java.util.List rules()
add()
method.rules
in interface Rules
rules
in class AbstractRulesImpl
Copyright 2001-2005 The Apache Software Foundation.