org.apache.commons.digester.xmlrules

Class FromXmlRuleSet

Implemented Interfaces:
RuleSet

public class FromXmlRuleSet
extends RuleSetBase

A Digester rule set where the rules come from an XML file.
Since:
1.2

Nested Class Summary

private class
FromXmlRuleSet.InputSourceXMLRulesLoader
Loads XMLRules from an InputSource
private class
FromXmlRuleSet.URLXMLRulesLoader
Loads XMLRules from an URL
private static class
FromXmlRuleSet.XMLRulesLoader
Worker class encapsulates loading mechanisms.

Field Summary

static String
DIGESTER_DTD_PATH
private DigesterRuleParser
parser
The rule set for parsing the Digester rules
private Digester
rulesDigester
The digester for loading the rules xml.
private FromXmlRuleSet.XMLRulesLoader
rulesLoader
The file containing the Digester rules, in XML.

Fields inherited from class org.apache.commons.digester.RuleSetBase

namespaceURI

Constructor Summary

FromXmlRuleSet(InputSource inputSource)
Constructs a FromXmlRuleSet using the default DigesterRuleParser and rulesDigester.
FromXmlRuleSet(InputSource inputSource, Digester rulesDigester)
Constructs a FromXmlRuleSet using the default DigesterRuleParser and a ruleDigester for loading the rules xml.
FromXmlRuleSet(InputSource inputSource, DigesterRuleParser parser)
FromXmlRuleSet(InputSource inputSource, DigesterRuleParser parser, Digester rulesDigester)
FromXmlRuleSet(URL rulesXml)
Constructs a FromXmlRuleSet using the default DigesterRuleParser and rulesDigester.
FromXmlRuleSet(URL rulesXml, Digester rulesDigester)
Constructs a FromXmlRuleSet using the default DigesterRuleParser and a ruleDigester for loading the rules xml.
FromXmlRuleSet(URL rulesXml, DigesterRuleParser parser)
FromXmlRuleSet(URL rulesXml, DigesterRuleParser parser, Digester rulesDigester)

Method Summary

void
addRuleInstances(Digester digester)
Adds to the digester the set of Rule instances defined in the XML file for this rule set.
void
addRuleInstances(Digester digester, String basePath)
Adds to the digester the set of Rule instances defined in the XML file for this rule set.
private void
init(FromXmlRuleSet.XMLRulesLoader rulesLoader, DigesterRuleParser parser, Digester rulesDigester)
Base constructor

Methods inherited from class org.apache.commons.digester.RuleSetBase

addRuleInstances, getNamespaceURI

Field Details

DIGESTER_DTD_PATH

public static final String DIGESTER_DTD_PATH

parser

private DigesterRuleParser parser
The rule set for parsing the Digester rules

rulesDigester

private Digester rulesDigester
The digester for loading the rules xml.

rulesLoader

private FromXmlRuleSet.XMLRulesLoader rulesLoader
The file containing the Digester rules, in XML.

Constructor Details

FromXmlRuleSet

public FromXmlRuleSet(InputSource inputSource)
Constructs a FromXmlRuleSet using the default DigesterRuleParser and rulesDigester.
Parameters:
inputSource - load the xml rules from this InputSource

FromXmlRuleSet

public FromXmlRuleSet(InputSource inputSource,
                      Digester rulesDigester)
Constructs a FromXmlRuleSet using the default DigesterRuleParser and a ruleDigester for loading the rules xml.
Parameters:
inputSource - load the xml rules from this InputSource
rulesDigester - the digester to read the rules xml.

FromXmlRuleSet

public FromXmlRuleSet(InputSource inputSource,
                      DigesterRuleParser parser)
Parameters:
inputSource - load the xml rules from this InputSource
parser - an instance of DigesterRuleParser, for parsing the rules from XML

FromXmlRuleSet

public FromXmlRuleSet(InputSource inputSource,
                      DigesterRuleParser parser,
                      Digester rulesDigester)
Parameters:
inputSource - load the xml rules from this InputSource
parser - an instance of DigesterRuleParser, for parsing the rules from XML
rulesDigester - the digester used to load the Xml rules.

FromXmlRuleSet

public FromXmlRuleSet(URL rulesXml)
Constructs a FromXmlRuleSet using the default DigesterRuleParser and rulesDigester.
Parameters:
rulesXml - the path to the XML document defining the Digester rules

FromXmlRuleSet

public FromXmlRuleSet(URL rulesXml,
                      Digester rulesDigester)
Constructs a FromXmlRuleSet using the default DigesterRuleParser and a ruleDigester for loading the rules xml.
Parameters:
rulesXml - the path to the XML document defining the Digester rules
rulesDigester - the digester to read the rules xml.

FromXmlRuleSet

public FromXmlRuleSet(URL rulesXml,
                      DigesterRuleParser parser)
Parameters:
rulesXml - the path to the XML document defining the Digester rules
parser - an instance of DigesterRuleParser, for parsing the rules from XML

FromXmlRuleSet

public FromXmlRuleSet(URL rulesXml,
                      DigesterRuleParser parser,
                      Digester rulesDigester)
Parameters:
rulesXml - the path to the XML document defining the Digester rules
parser - an instance of DigesterRuleParser, for parsing the rules from XML
rulesDigester - the digester used to load the Xml rules.

Method Details

addRuleInstances

public void addRuleInstances(Digester digester)
            throws XmlLoadException
Adds to the digester the set of Rule instances defined in the XML file for this rule set.
Specified by:
addRuleInstances in interface RuleSet
Overrides:
addRuleInstances in interface RuleSetBase
See Also:
RuleSetBase

addRuleInstances

public void addRuleInstances(Digester digester,
                             String basePath)
            throws XmlLoadException
Adds to the digester the set of Rule instances defined in the XML file for this rule set.

Note that this method doesn't have a matching one on the DigesterLoader class, because it is not expected to be widely used, and DigesterLoader's load method is already heavily overloaded.

Parameters:
digester - is the digester that rules will be added to.
basePath - is a path that will be prefixed to every pattern string defined in the xmlrules input file.
Since:
1.6
See Also:
RuleSetBase

init

private void init(FromXmlRuleSet.XMLRulesLoader rulesLoader,
                  DigesterRuleParser parser,
                  Digester rulesDigester)
Base constructor

Copyright 2001-2005 The Apache Software Foundation.