Class ConfigurationXMLReader
- java.lang.Object
-
- org.apache.commons.configuration2.ConfigurationXMLReader
-
- All Implemented Interfaces:
org.xml.sax.XMLReader
- Direct Known Subclasses:
BaseConfigurationXMLReader,HierarchicalConfigurationXMLReader
public abstract class ConfigurationXMLReader extends java.lang.Object implements org.xml.sax.XMLReaderA base class for "faked"
XMLReaderclasses 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
XMLReaderinterface 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 Description protected static java.lang.StringNS_URIConstant for the namespace URI.
-
Constructor Summary
Constructors Modifier Constructor Description protectedConfigurationXMLReader()Creates a new instance ofConfigurationXMLReader.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected voidfireCharacters(java.lang.String text)Fires a SAX characters event.protected voidfireElementEnd(java.lang.String name)Fires a SAX element end event.protected voidfireElementStart(java.lang.String name, org.xml.sax.Attributes attribs)Fires a SAX element start event.org.xml.sax.ContentHandlergetContentHandler()Gets the actually set content handler.org.xml.sax.DTDHandlergetDTDHandler()Gets the DTD handler.org.xml.sax.EntityResolvergetEntityResolver()Gets the entity resolver.org.xml.sax.ErrorHandlergetErrorHandler()Gets the error handler.org.xml.sax.SAXExceptiongetException()Gets a reference to an exception that occurred during parsing.booleangetFeature(java.lang.String name)Dummy implementation of the interface method.abstract ConfigurationgetParsedConfiguration()Gets a reference to the configuration that is parsed by this object.java.lang.ObjectgetProperty(java.lang.String name)Dummy implementation of the interface method.java.lang.StringgetRootName()Gets the name to be used for the root element.voidparse(java.lang.String systemId)Parses the current configuration object.voidparse(org.xml.sax.InputSource input)Parses the actual configuration object.protected voidparseConfiguration()Parses the configuration object and generates SAX events.protected abstract voidprocessKeys()Processes all keys stored in the actual configuration.voidsetContentHandler(org.xml.sax.ContentHandler handler)Sets the content handler.voidsetDTDHandler(org.xml.sax.DTDHandler handler)Sets the DTD handler.voidsetEntityResolver(org.xml.sax.EntityResolver resolver)Sets the entity resolver.voidsetErrorHandler(org.xml.sax.ErrorHandler handler)Sets the error handler.voidsetFeature(java.lang.String name, boolean value)Dummy implementation of the interface method.voidsetProperty(java.lang.String name, java.lang.Object value)Dummy implementation of the interface method.voidsetRootName(java.lang.String string)Sets the name for the root element.
-
-
-
Field Detail
-
NS_URI
protected static final java.lang.String NS_URI
Constant for the namespace URI.- See Also:
- Constant Field Values
-
-
Method Detail
-
parse
public void parse(java.lang.String systemId) throws java.io.IOException, org.xml.sax.SAXExceptionParses the current configuration object. The passed system ID will be ignored.- Specified by:
parsein interfaceorg.xml.sax.XMLReader- Parameters:
systemId- the system ID (ignored)- Throws:
java.io.IOException- if no configuration was specifiedorg.xml.sax.SAXException- if an error occurs during parsing
-
parse
public void parse(org.xml.sax.InputSource input) throws java.io.IOException, org.xml.sax.SAXExceptionParses the actual configuration object. The passed input source will be ignored.- Specified by:
parsein interfaceorg.xml.sax.XMLReader- Parameters:
input- the input source (ignored)- Throws:
java.io.IOException- if no configuration was specifiedorg.xml.sax.SAXException- if an error occurs during parsing
-
getFeature
public boolean getFeature(java.lang.String name)
Dummy implementation of the interface method.- Specified by:
getFeaturein interfaceorg.xml.sax.XMLReader- Parameters:
name- the name of the feature- Returns:
- always false (no features are supported)
-
setFeature
public void setFeature(java.lang.String name, boolean value)Dummy implementation of the interface method.- Specified by:
setFeaturein interfaceorg.xml.sax.XMLReader- Parameters:
name- the name of the feature to be setvalue- the value of the feature
-
getContentHandler
public org.xml.sax.ContentHandler getContentHandler()
Gets the actually set content handler.- Specified by:
getContentHandlerin interfaceorg.xml.sax.XMLReader- Returns:
- the content handler
-
setContentHandler
public void setContentHandler(org.xml.sax.ContentHandler handler)
Sets the content handler. The object specified here will receive SAX events during parsing.- Specified by:
setContentHandlerin interfaceorg.xml.sax.XMLReader- Parameters:
handler- the content handler
-
getDTDHandler
public org.xml.sax.DTDHandler getDTDHandler()
Gets the DTD handler. This class does not support DTD handlers, so this method always returns null.- Specified by:
getDTDHandlerin interfaceorg.xml.sax.XMLReader- Returns:
- the DTD handler
-
setDTDHandler
public void setDTDHandler(org.xml.sax.DTDHandler handler)
Sets the DTD handler. The passed value is ignored.- Specified by:
setDTDHandlerin interfaceorg.xml.sax.XMLReader- Parameters:
handler- the handler to be set
-
getEntityResolver
public org.xml.sax.EntityResolver getEntityResolver()
Gets the entity resolver. This class does not support an entity resolver, so this method always returns null.- Specified by:
getEntityResolverin interfaceorg.xml.sax.XMLReader- Returns:
- the entity resolver
-
setEntityResolver
public void setEntityResolver(org.xml.sax.EntityResolver resolver)
Sets the entity resolver. The passed value is ignored.- Specified by:
setEntityResolverin interfaceorg.xml.sax.XMLReader- Parameters:
resolver- the entity resolver
-
getErrorHandler
public org.xml.sax.ErrorHandler getErrorHandler()
Gets the error handler. This class does not support an error handler, so this method always returns null.- Specified by:
getErrorHandlerin interfaceorg.xml.sax.XMLReader- Returns:
- the error handler
-
setErrorHandler
public void setErrorHandler(org.xml.sax.ErrorHandler handler)
Sets the error handler. The passed value is ignored.- Specified by:
setErrorHandlerin interfaceorg.xml.sax.XMLReader- Parameters:
handler- the error handler
-
getProperty
public java.lang.Object getProperty(java.lang.String name)
Dummy implementation of the interface method. No properties are supported, so this method always returns null.- Specified by:
getPropertyin interfaceorg.xml.sax.XMLReader- Parameters:
name- the name of the requested property- Returns:
- the property value
-
setProperty
public void setProperty(java.lang.String name, java.lang.Object value)Dummy implementation of the interface method. No properties are supported, so a call of this method just has no effect.- Specified by:
setPropertyin interfaceorg.xml.sax.XMLReader- Parameters:
name- the property namevalue- the property value
-
getRootName
public java.lang.String getRootName()
Gets the name to be used for the root element.- Returns:
- the name for the root element
-
setRootName
public void setRootName(java.lang.String string)
Sets the name for the root element.- Parameters:
string- the name for the root element.
-
fireElementStart
protected void fireElementStart(java.lang.String name, org.xml.sax.Attributes attribs)Fires a SAX element start event.- Parameters:
name- the name of the actual elementattribs- the attributes of this element (can be null)
-
fireElementEnd
protected void fireElementEnd(java.lang.String name)
Fires a SAX element end event.- Parameters:
name- the name of the affected element
-
fireCharacters
protected void fireCharacters(java.lang.String text)
Fires a SAX characters event.- Parameters:
text- the text
-
getException
public org.xml.sax.SAXException getException()
Gets a reference to an exception that occurred during parsing.- Returns:
- a SAXExcpetion or null if none occurred
-
parseConfiguration
protected void parseConfiguration() throws java.io.IOException, org.xml.sax.SAXExceptionParses the configuration object and generates SAX events. This is the main processing method.- Throws:
java.io.IOException- if no configuration has been specifiedorg.xml.sax.SAXException- if an error occurs during parsing
-
getParsedConfiguration
public abstract Configuration getParsedConfiguration()
Gets a reference to the configuration that is parsed by this object.- Returns:
- the parsed configuration
-
processKeys
protected abstract void processKeys() throws java.io.IOException, org.xml.sax.SAXExceptionProcesses all keys stored in the actual configuration. This method is called byparseConfiguration()to start the main parsing process.parseConfiguration()calls the content handler'sstartDocument()andendElement()methods and cares for exception handling. The remaining actions are left to this method that must be implemented in a concrete sub class.- Throws:
java.io.IOException- if an IO error occursorg.xml.sax.SAXException- if a SAX error occurs
-
-