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.Modifier and Type | Field and Description |
---|---|
protected HashMap<String,List<Rule>> |
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
Deprecated.
Unused. Will be removed in Tomcat 9.0.x
|
protected ArrayList<Rule> |
rules
The set of registered Rule instances, in the order that they were
originally registered.
|
Constructor and Description |
---|
RulesBase() |
Modifier and Type | Method and Description |
---|---|
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<Rule> |
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<Rule> |
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<Rule> |
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. |
protected HashMap<String,List<Rule>> cache
protected Digester digester
@Deprecated protected String namespaceURI
Rule
objects are relevant, or null
for matching independent
of namespaces.public Digester getDigester()
getDigester
in interface Rules
public void setDigester(Digester digester)
setDigester
in interface Rules
digester
- The newly associated Digester instancepublic String getNamespaceURI()
Rule
objects.getNamespaceURI
in interface Rules
Rule
objects.public void setNamespaceURI(String namespaceURI)
Rule
objects.setNamespaceURI
in interface Rules
namespaceURI
- Namespace URI that must match on all
subsequently added rules, or null
for matching
regardless of the current namespace URIpublic void add(String pattern, Rule rule)
public void clear()
public List<Rule> match(String namespaceURI, String pattern)
add()
method.public List<Rule> rules()
add()
method.protected List<Rule> lookup(String namespaceURI, String pattern)
null
.namespaceURI
- Namespace URI to match, or null
to
select matching rules regardless of namespace URIpattern
- Pattern to be matchedCopyright © 2000-2021 Apache Software Foundation. All Rights Reserved.