## org.apache.commons.configuration
Class ConfigurationXMLReader

    java.lang.Object
      org.apache.commons.configuration.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.

Version:
  $Id: ConfigurationXMLReader.java 439648 2006-09-02 20:42:10Z oheger $
Author:
  Oliver Heger

Field Summary
`protected static String` `NS_URI` Constant for the namespace URI.

Constructor Summary
`protected` `ConfigurationXMLReader()` Creates a new instance of `ConfigurationXMLReader`.

Method Summary
`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 acutal configuration object.
`void` `parse(String systemId)` Parses the acutal 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 acutal 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 acutal 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-2006 The Apache Software Foundation. All Rights Reserved.