Package org.apache.commons.digester3
Class RegexRules
java.lang.Object
org.apache.commons.digester3.AbstractRulesImpl
org.apache.commons.digester3.RegexRules
- All Implemented Interfaces:
Rules
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.
- Since:
- 1.5
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static class
Used to associate rules with paths in the rules list -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate RegexMatcher
The regex strategy used by this RegexRulesprivate ArrayList
<RegexRules.RegisteredRule> All registeredRule
's -
Constructor Summary
ConstructorsConstructorDescriptionRegexRules
(RegexMatcher matcher) Construct sets the Regex matching strategy. -
Method Summary
Modifier and TypeMethodDescriptionvoid
clear()
Clear all existing Rule instance registrations.Gets the current regex matching strategy.match
(String namespaceURI, String pattern, String name, Attributes attributes) Return a List of all registered Rule instances that match the specified nesting pattern, or a zero-length List if there are no matches.protected void
registerRule
(String pattern, Rule rule) Register rule at given pattern.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.Methods inherited from class org.apache.commons.digester3.AbstractRulesImpl
add, getDigester, getNamespaceURI, setDigester, setNamespaceURI
-
Field Details
-
registeredRules
All registeredRule
's -
matcher
The regex strategy used by this RegexRules
-
-
Constructor Details
-
RegexRules
Construct sets the Regex matching strategy.- Parameters:
matcher
- the regex strategy to be used, not null
-
-
Method Details
-
getRegexMatcher
Gets the current regex matching strategy.- Returns:
- the current regex matching strategy.
-
setRegexMatcher
Sets the current regex matching strategy.- Parameters:
matcher
- use this RegexMatcher, not null
-
registerRule
Register rule at given pattern. The the Digester and namespaceURI properties of the givenRule
can be assumed to have been set properly before this method is called.- Specified by:
registerRule
in classAbstractRulesImpl
- Parameters:
pattern
- Nesting pattern to be matched for this Rulerule
- Rule instance to be registered
-
clear
public void clear()Clear all existing Rule instance registrations. -
match
Return a List of all registered Rule instances that match the specified nesting pattern, or a zero-length List if there are no matches. If more than one Rule instance matches, they must be returned in the order originally registered through theadd()
method.- Parameters:
namespaceURI
- Namespace URI for which to select matching rules, ornull
to match regardless of namespace URIpattern
- Nesting pattern to be matchedname
- the local name if the parser is namespace aware, or just the element name otherwiseattributes
- The attribute list of the current matching element- Returns:
- a List of all registered Rule instances that match the specified nesting pattern
-
rules
Return a List of all registered Rule instances, or a zero-length List if there are no registered Rule instances. If more than one Rule instance has been registered, they must be returned in the order originally registered through theadd()
method.- Returns:
- a List of all registered Rule instances
-