Class ConfigParser


  • public class ConfigParser
    extends java.lang.Object

    Class to parse the contents of an XML configuration file (using Commons Digester) that defines and configures commands and command chains to be registered in a Catalog. Advanced users can configure the detailed parsing behavior by configuring the properties of an instance of this class prior to calling the parse() method. It is legal to call the parse() method more than once, in order to parse more than one configuration document.

    Version:
    $Revision: 482967 $ $Date: 2006-12-06 08:43:48 +0000 (Wed, 06 Dec 2006) $
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private org.apache.commons.digester.Digester digester
      The Digester to be used for parsing.
      private org.apache.commons.digester.RuleSet ruleSet
      The RuleSet to be used for configuring our Digester parsing rules.
      private boolean useContextClassLoader
      Should Digester use the context class loader?
    • Constructor Summary

      Constructors 
      Constructor Description
      ConfigParser()  
    • Method Summary

      All Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      org.apache.commons.digester.Digester getDigester()
      Return the Digester instance to be used for parsing, creating one if necessary.
      org.apache.commons.digester.RuleSet getRuleSet()
      Return the RuleSet to be used for configuring our Digester parsing rules, creating one if necessary.
      boolean getUseContextClassLoader()
      Return the "use context class loader" flag.
      void parse​(java.net.URL url)
      Parse the XML document at the specified URL using the configured RuleSet, registering catalogs with nested chains and commands as they are encountered.
      void parse​(Catalog catalog, java.net.URL url)
      Deprecated.
      Use parse(URL) on a configuration resource with "factory" element(s) embedded
      void setRuleSet​(org.apache.commons.digester.RuleSet ruleSet)
      Set the RuleSet to be used for configuring our Digester parsing rules.
      void setUseContextClassLoader​(boolean useContextClassLoader)
      Set the "use context class loader" flag.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • digester

        private org.apache.commons.digester.Digester digester

        The Digester to be used for parsing.

      • ruleSet

        private org.apache.commons.digester.RuleSet ruleSet

        The RuleSet to be used for configuring our Digester parsing rules.

      • useContextClassLoader

        private boolean useContextClassLoader

        Should Digester use the context class loader?

    • Constructor Detail

      • ConfigParser

        public ConfigParser()
    • Method Detail

      • getDigester

        public org.apache.commons.digester.Digester getDigester()

        Return the Digester instance to be used for parsing, creating one if necessary.

        Returns:
        A Digester instance.
      • getRuleSet

        public org.apache.commons.digester.RuleSet getRuleSet()

        Return the RuleSet to be used for configuring our Digester parsing rules, creating one if necessary.

        Returns:
        The RuleSet for configuring a Digester instance.
      • setRuleSet

        public void setRuleSet​(org.apache.commons.digester.RuleSet ruleSet)

        Set the RuleSet to be used for configuring our Digester parsing rules.

        Parameters:
        ruleSet - The new RuleSet to use
      • getUseContextClassLoader

        public boolean getUseContextClassLoader()

        Return the "use context class loader" flag. If set to true, Digester will attempt to instantiate new command and chain instances from the context class loader.

        Returns:
        true if Digester should use the context class loader.
      • setUseContextClassLoader

        public void setUseContextClassLoader​(boolean useContextClassLoader)

        Set the "use context class loader" flag.

        Parameters:
        useContextClassLoader - The new flag value
      • parse

        public void parse​(Catalog catalog,
                          java.net.URL url)
                   throws java.lang.Exception
        Deprecated.
        Use parse(URL) on a configuration resource with "factory" element(s) embedded

        Parse the XML document at the specified URL, using the configured RuleSet, registering top level commands into the specified Catalog. Use this method only if you have NOT included any factory element in your configuration resource, and wish to supply the catalog explictly.

        Parameters:
        catalog - Catalog into which configured chains are to be registered
        url - URL of the XML document to be parsed
        Throws:
        java.lang.Exception - if a parsing error occurs
      • parse

        public void parse​(java.net.URL url)
                   throws java.lang.Exception

        Parse the XML document at the specified URL using the configured RuleSet, registering catalogs with nested chains and commands as they are encountered. Use this method only if you have included one or more factory elements in your configuration resource.

        Parameters:
        url - URL of the XML document to be parsed
        Throws:
        java.lang.Exception - if a parsing error occurs