org.apache.commons.configuration2

## Class ConfigurationXMLReader

- java.lang.Object
- - org.apache.commons.configuration2.ConfigurationXMLReader

- All Implemented Interfaces:
    XMLReader
  Direct Known Subclasses:
    BaseConfigurationXMLReader, HierarchicalConfigurationXMLReader

      public abstract class ConfigurationXMLReader
      extends Object
      implements XMLReader

  A base class for "faked" `XMLReader` classes that transform a configuration object in a set of SAX parsing events.

  This class provides dummy implementations for most of the methods defined in the `XMLReader` interface that are not used for this special purpose. There will be concrete sub classes that process specific configuration classes.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected static String` | `NS_URI` Constant for the namespace URI.

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `ConfigurationXMLReader()` Creates a new instance of `ConfigurationXMLReader`.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `fireCharacters(String text)` Fires a SAX characters event.
    `protected void` | `fireElementEnd(String name)` Fires a SAX element end event.
    `protected void` | `fireElementStart(String name, Attributes attribs)` Fires a SAX element start event.
    `ContentHandler` | `getContentHandler()` Returns the actually set content handler.
    `DTDHandler` | `getDTDHandler()` Returns the DTD handler.
    `EntityResolver` | `getEntityResolver()` Returns the entity resolver.
    `ErrorHandler` | `getErrorHandler()` Returns the error handler.
    `SAXException` | `getException()` Returns a reference to an exception that occurred during parsing.
    `boolean` | `getFeature(String name)` Dummy implementation of the interface method.
    `abstract Configuration` | `getParsedConfiguration()` Returns a reference to the configuration that is parsed by this object.
    `Object` | `getProperty(String name)` Dummy implementation of the interface method.
    `String` | `getRootName()` Returns the name to be used for the root element.
    `void` | `parse(InputSource input)` Parses the actual configuration object.
    `void` | `parse(String systemId)` Parses the current configuration object.
    `protected void` | `parseConfiguration()` Parses the configuration object and generates SAX events.
    `protected abstract void` | `processKeys()` Processes all keys stored in the actual configuration.
    `void` | `setContentHandler(ContentHandler handler)` Sets the content handler.
    `void` | `setDTDHandler(DTDHandler handler)` Sets the DTD handler.
    `void` | `setEntityResolver(EntityResolver resolver)` Sets the entity resolver.
    `void` | `setErrorHandler(ErrorHandler handler)` Sets the error handler.
    `void` | `setFeature(String name, boolean value)` Dummy implementation of the interface method.
    `void` | `setProperty(String name, Object value)` Dummy implementation of the interface method.
    `void` | `setRootName(String string)` Sets the name for the root element.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### NS_URI

          protected static final String NS_URI

      Constant for the namespace URI.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### ConfigurationXMLReader

          protected ConfigurationXMLReader()

      Creates a new instance of `ConfigurationXMLReader`.

  - ### Method Detail

    - #### parse

          public void parse(String systemId)
                     throws IOException,
                            SAXException

      Parses the current configuration object. The passed system ID will be ignored.
      Specified by:
        `parse` in interface `XMLReader`
      Parameters:
        `systemId` - the system ID (ignored)
      Throws:
        `IOException` - if no configuration was specified
        `SAXException` - if an error occurs during parsing

    - #### parse

          public void parse(InputSource input)
                     throws IOException,
                            SAXException

      Parses the actual configuration object. The passed input source will be ignored.
      Specified by:
        `parse` in interface `XMLReader`
      Parameters:
        `input` - the input source (ignored)
      Throws:
        `IOException` - if no configuration was specified
        `SAXException` - if an error occurs during parsing

    - #### getFeature

          public boolean getFeature(String name)

      Dummy implementation of the interface method.
      Specified by:
        `getFeature` in interface `XMLReader`
      Parameters:
        `name` - the name of the feature
      Returns:
        always false (no features are supported)

    - #### setFeature

          public void setFeature(String name,
                                 boolean value)

      Dummy implementation of the interface method.
      Specified by:
        `setFeature` in interface `XMLReader`
      Parameters:
        `name` - the name of the feature to be set
        `value` - the value of the feature

    - #### getContentHandler

          public ContentHandler getContentHandler()

      Returns the actually set content handler.
      Specified by:
        `getContentHandler` in interface `XMLReader`
      Returns:
        the content handler

    - #### setContentHandler

          public void setContentHandler(ContentHandler handler)

      Sets the content handler. The object specified here will receive SAX events during parsing.
      Specified by:
        `setContentHandler` in interface `XMLReader`
      Parameters:
        `handler` - the content handler

    - #### getDTDHandler

          public DTDHandler getDTDHandler()

      Returns the DTD handler. This class does not support DTD handlers, so this method always returns null.
      Specified by:
        `getDTDHandler` in interface `XMLReader`
      Returns:
        the DTD handler

    - #### setDTDHandler

          public void setDTDHandler(DTDHandler handler)

      Sets the DTD handler. The passed value is ignored.
      Specified by:
        `setDTDHandler` in interface `XMLReader`
      Parameters:
        `handler` - the handler to be set

    - #### getEntityResolver

          public EntityResolver getEntityResolver()

      Returns the entity resolver. This class does not support an entity resolver, so this method always returns null.
      Specified by:
        `getEntityResolver` in interface `XMLReader`
      Returns:
        the entity resolver

    - #### setEntityResolver

          public void setEntityResolver(EntityResolver resolver)

      Sets the entity resolver. The passed value is ignored.
      Specified by:
        `setEntityResolver` in interface `XMLReader`
      Parameters:
        `resolver` - the entity resolver

    - #### getErrorHandler

          public ErrorHandler getErrorHandler()

      Returns the error handler. This class does not support an error handler, so this method always returns null.
      Specified by:
        `getErrorHandler` in interface `XMLReader`
      Returns:
        the error handler

    - #### setErrorHandler

          public void setErrorHandler(ErrorHandler handler)

      Sets the error handler. The passed value is ignored.
      Specified by:
        `setErrorHandler` in interface `XMLReader`
      Parameters:
        `handler` - the error handler

    - #### getProperty

          public Object getProperty(String name)

      Dummy implementation of the interface method. No properties are supported, so this method always returns null.
      Specified by:
        `getProperty` in interface `XMLReader`
      Parameters:
        `name` - the name of the requested property
      Returns:
        the property value

    - #### setProperty

          public void setProperty(String name,
                                  Object value)

      Dummy implementation of the interface method. No properties are supported, so a call of this method just has no effect.
      Specified by:
        `setProperty` in interface `XMLReader`
      Parameters:
        `name` - the property name
        `value` - the property value

    - #### getRootName

          public String getRootName()

      Returns the name to be used for the root element.
      Returns:
        the name for the root element

    - #### setRootName

          public void setRootName(String string)

      Sets the name for the root element.
      Parameters:
        `string` - the name for the root element.

    - #### fireElementStart

          protected void fireElementStart(String name,
                                          Attributes attribs)

      Fires a SAX element start event.
      Parameters:
        `name` - the name of the actual element
        `attribs` - the attributes of this element (can be null)

    - #### fireElementEnd

          protected void fireElementEnd(String name)

      Fires a SAX element end event.
      Parameters:
        `name` - the name of the affected element

    - #### fireCharacters

          protected void fireCharacters(String text)

      Fires a SAX characters event.
      Parameters:
        `text` - the text

    - #### getException

          public SAXException getException()

      Returns a reference to an exception that occurred during parsing.
      Returns:
        a SAXExcpetion or null if none occurred

    - #### parseConfiguration

          protected void parseConfiguration()
                                     throws IOException,
                                            SAXException

      Parses the configuration object and generates SAX events. This is the main processing method.
      Throws:
        `IOException` - if no configuration has been specified
        `SAXException` - if an error occurs during parsing

    - #### getParsedConfiguration

          public abstract Configuration getParsedConfiguration()

      Returns a reference to the configuration that is parsed by this object.
      Returns:
        the parsed configuration

    - #### processKeys

          protected abstract void processKeys()
                                       throws IOException,
                                              SAXException

      Processes all keys stored in the actual configuration. This method is called by `parseConfiguration()` to start the main parsing process. `parseConfiguration()` calls the content handler's `startDocument()` and `endElement()` methods and cares for exception handling. The remaining actions are left to this method that must be implemented in a concrete sub class.
      Throws:
        `IOException` - if an IO error occurs
        `SAXException` - if a SAX error occurs

Copyright © 2001–2022 The Apache Software Foundation. All rights reserved.