org.apache.tomcat.util.digester
public class RulesBase extends Object implements Rules
Default implementation of the Rules
interface that supports
the standard rule matching behavior. This class can also be used as a
base class for specialized Rules
implementations.
The matching policies implemented by this class support two different types of pattern matching rules:
<c>
element, nested inside a <b>
element, which is nested inside an <a>
element.<b>
element, nested inside an <a>
element, no matter how deeply the pair is nested.Field Summary | |
---|---|
protected HashMap | cache
The set of registered Rule instances, keyed by the matching pattern.
|
protected Digester | digester
The Digester instance with which this Rules instance is associated. |
protected String | namespaceURI
The namespace URI for which subsequently added Rule
objects are relevant, or null for matching independent
of namespaces. |
protected ArrayList | rules
The set of registered Rule instances, in the order that they were
originally registered. |
Method Summary | |
---|---|
void | add(String pattern, Rule rule)
Register a new Rule instance matching the specified pattern.
|
void | clear()
Clear all existing Rule instance registrations. |
Digester | getDigester()
Return the Digester instance with which this Rules instance is
associated. |
String | getNamespaceURI()
Return the namespace URI that will be applied to all subsequently
added Rule objects. |
protected List | lookup(String namespaceURI, String pattern)
Return a List of Rule instances for the specified pattern that also
match the specified namespace URI (if any). |
List | match(String pattern)
Return a List of all registered Rule instances that match the specified
nesting pattern, or a zero-length List if there are no matches. |
List | match(String namespaceURI, String pattern)
Return a List of all registered Rule instances that match the specified
nesting pattern, or a zero-length List if there are no matches. |
List | rules()
Return a List of all registered Rule instances, or a zero-length List
if there are no registered Rule instances. |
void | setDigester(Digester digester)
Set the Digester instance with which this Rules instance is associated.
|
void | setNamespaceURI(String namespaceURI)
Set the namespace URI that will be applied to all subsequently
added Rule objects.
|
Rule
objects are relevant, or null
for matching independent
of namespaces.Parameters: pattern Nesting pattern to be matched for this Rule rule Rule instance to be registered
Rule
objects.null
.
Parameters: namespaceURI Namespace URI to match, or null
to
select matching rules regardless of namespace URI pattern Pattern to be matched
Deprecated: Call match(namespaceURI,pattern) instead.
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: pattern Nesting pattern to be matched
add()
method.
Parameters: namespaceURI Namespace URI for which to select matching rules,
or null
to match regardless of namespace URI pattern Nesting pattern to be matched
add()
method.Parameters: digester The newly associated Digester instance
Rule
objects.
Parameters: namespaceURI Namespace URI that must match on all
subsequently added rules, or null
for matching
regardless of the current namespace URI