|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.commons.digester3.AbstractRulesImpl org.apache.commons.digester3.RulesBase
public class RulesBase
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.Note that wildcard patterns are ignored if an explicit match can be found (and when multiple wildcard patterns match, only the longest, ie most explicit, pattern is considered a match).
See the package documentation for package org.apache.commons.digester3 for more information.
Field Summary | |
---|---|
protected HashMap<String,List<Rule>> |
cache
The set of registered Rule instances, keyed by the matching pattern. |
protected ArrayList<Rule> |
rules
The set of registered Rule instances, in the order that they were originally registered. |
Constructor Summary | |
---|---|
RulesBase()
|
Method Summary | |
---|---|
void |
clear()
Clear all existing Rule instance registrations. |
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,
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. |
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. |
Methods inherited from class org.apache.commons.digester3.AbstractRulesImpl |
---|
add, getDigester, getNamespaceURI, setNamespaceURI |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected HashMap<String,List<Rule>> cache
protected ArrayList<Rule> rules
Constructor Detail |
---|
public RulesBase()
Method Detail |
---|
public void setDigester(Digester digester)
setDigester
in interface Rules
setDigester
in class AbstractRulesImpl
digester
- The newly associated Digester instanceprotected void registerRule(String pattern, Rule rule)
Rule
can
be assumed to have been set properly before this method is called.
registerRule
in class AbstractRulesImpl
pattern
- Nesting pattern to be matched for this Rulerule
- Rule instance to be registeredpublic void clear()
public List<Rule> match(String namespaceURI, String pattern, String name, Attributes attributes)
add()
method.
namespaceURI
- Namespace URI for which to select matching rules, or null
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
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 matched
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |