org.apache.commons.configuration
Class ConfigurationXMLReader

java.lang.Object
  extended by 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-2007 The Apache Software Foundation. All Rights Reserved.