Package org.apache.commons.configuration
Class XMLPropertiesConfiguration
- java.lang.Object
-
- org.apache.commons.configuration.event.EventSource
-
- org.apache.commons.configuration.AbstractConfiguration
-
- org.apache.commons.configuration.BaseConfiguration
-
- org.apache.commons.configuration.AbstractFileConfiguration
-
- org.apache.commons.configuration.PropertiesConfiguration
-
- org.apache.commons.configuration.XMLPropertiesConfiguration
-
- All Implemented Interfaces:
java.lang.Cloneable
,Configuration
,FileConfiguration
,FileSystemBased
public class XMLPropertiesConfiguration extends PropertiesConfiguration
This configuration implements the XML properties format introduced in Java 5.0, see http://java.sun.com/j2se/1.5.0/docs/api/java/util/Properties.html. An XML properties file looks like this:<?xml version="1.0"?> <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> <properties> <comment>Description of the property list</comment> <entry key="key1">value1</entry> <entry key="key2">value2</entry> <entry key="key3">value3</entry> </properties>
The Java 5.0 runtime is not required to use this class. The default encoding for this configuration format is UTF-8. Note that unlikePropertiesConfiguration
,XMLPropertiesConfiguration
does not support includes. Note:Configuration objects of this type can be read concurrently by multiple threads. However if one of these threads modifies the object, synchronization has to be performed manually.- Since:
- 1.1
- Version:
- $Id: XMLPropertiesConfiguration.java 1534399 2013-10-21 22:25:03Z henning $
- Author:
- Emmanuel Bourg, Alistair Young
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.commons.configuration.PropertiesConfiguration
PropertiesConfiguration.DefaultIOFactory, PropertiesConfiguration.IOFactory, PropertiesConfiguration.PropertiesReader, PropertiesConfiguration.PropertiesWriter
-
-
Field Summary
-
Fields inherited from class org.apache.commons.configuration.AbstractFileConfiguration
autoSave, basePath, EVENT_CONFIG_CHANGED, EVENT_RELOAD, fileName, reloadLock, strategy
-
Fields inherited from class org.apache.commons.configuration.AbstractConfiguration
END_TOKEN, EVENT_ADD_PROPERTY, EVENT_CLEAR, EVENT_CLEAR_PROPERTY, EVENT_READ_PROPERTY, EVENT_SET_PROPERTY, START_TOKEN
-
-
Constructor Summary
Constructors Constructor Description XMLPropertiesConfiguration()
Creates an empty XMLPropertyConfiguration object which can be used to synthesize a new Properties file by adding values and then saving().XMLPropertiesConfiguration(java.io.File file)
Creates and loads the xml properties from the specified file.XMLPropertiesConfiguration(java.lang.String fileName)
Creates and loads the xml properties from the specified file.XMLPropertiesConfiguration(java.net.URL url)
Creates and loads the xml properties from the specified URL.XMLPropertiesConfiguration(org.w3c.dom.Element element)
Creates and loads the xml properties from the specified DOM node.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
load(java.io.Reader in)
Load the properties from the given reader.void
load(org.w3c.dom.Element element)
Parses a DOM element containing the properties.void
save(java.io.Writer out)
Save the configuration to the specified stream.void
save(org.w3c.dom.Document document, org.w3c.dom.Node parent)
Writes the configuration as child to the given DOM node-
Methods inherited from class org.apache.commons.configuration.PropertiesConfiguration
clone, createLayout, getEncoding, getFooter, getHeader, getInclude, getIncludesAllowed, getIOFactory, getLayout, isIncludesAllowed, setBasePath, setFooter, setHeader, setInclude, setIncludesAllowed, setIOFactory, setLayout, unescapeJava
-
Methods inherited from class org.apache.commons.configuration.AbstractFileConfiguration
addProperty, clearProperty, closeSilent, configurationChanged, containsKey, enterNoReload, exitNoReload, fireEvent, getBasePath, getFile, getFileName, getFileSystem, getKeys, getPath, getProperty, getReloadingStrategy, getReloadLock, getURL, isAutoSave, isEmpty, load, load, load, load, load, load, possiblySave, refresh, reload, reload, resetFileSystem, save, save, save, save, save, save, setAutoSave, setEncoding, setFile, setFileName, setFileSystem, setPath, setProperty, setReloadingStrategy, setURL
-
Methods inherited from class org.apache.commons.configuration.BaseConfiguration
addPropertyDirect, clear, clearPropertyDirect
-
Methods inherited from class org.apache.commons.configuration.AbstractConfiguration
addErrorLogListener, append, copy, createInterpolator, getBigDecimal, getBigDecimal, getBigInteger, getBigInteger, getBoolean, getBoolean, getBoolean, getByte, getByte, getByte, getDefaultListDelimiter, getDelimiter, getDouble, getDouble, getDouble, getFloat, getFloat, getFloat, getInt, getInt, getInteger, getInterpolator, getKeys, getList, getList, getListDelimiter, getLogger, getLong, getLong, getLong, getProperties, getProperties, getShort, getShort, getShort, getString, getString, getStringArray, getSubstitutor, interpolate, interpolate, interpolatedConfiguration, interpolateHelper, isDelimiterParsingDisabled, isScalarValue, isThrowExceptionOnMissing, resolveContainerStore, setDefaultListDelimiter, setDelimiter, setDelimiterParsingDisabled, setListDelimiter, setLogger, setThrowExceptionOnMissing, subset
-
Methods inherited from class org.apache.commons.configuration.event.EventSource
addConfigurationListener, addErrorListener, clearConfigurationListeners, clearErrorListeners, createErrorEvent, createEvent, fireError, getConfigurationListeners, getErrorListeners, isDetailEvents, removeConfigurationListener, removeErrorListener, setDetailEvents
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.commons.configuration.Configuration
clear, getBigDecimal, getBigDecimal, getBigInteger, getBigInteger, getBoolean, getBoolean, getBoolean, getByte, getByte, getByte, getDouble, getDouble, getDouble, getFloat, getFloat, getFloat, getInt, getInt, getInteger, getKeys, getList, getList, getLong, getLong, getLong, getProperties, getShort, getShort, getShort, getString, getString, getStringArray, subset
-
-
-
-
Constructor Detail
-
XMLPropertiesConfiguration
public XMLPropertiesConfiguration()
Creates an empty XMLPropertyConfiguration object which can be used to synthesize a new Properties file by adding values and then saving(). An object constructed by this C'tor can not be tickled into loading included files because it cannot supply a base for relative includes.
-
XMLPropertiesConfiguration
public XMLPropertiesConfiguration(java.lang.String fileName) throws ConfigurationException
Creates and loads the xml properties from the specified file. The specified file can contain "include" properties which then are loaded and merged into the properties.- Parameters:
fileName
- The name of the properties file to load.- Throws:
ConfigurationException
- Error while loading the properties file
-
XMLPropertiesConfiguration
public XMLPropertiesConfiguration(java.io.File file) throws ConfigurationException
Creates and loads the xml properties from the specified file. The specified file can contain "include" properties which then are loaded and merged into the properties.- Parameters:
file
- The properties file to load.- Throws:
ConfigurationException
- Error while loading the properties file
-
XMLPropertiesConfiguration
public XMLPropertiesConfiguration(java.net.URL url) throws ConfigurationException
Creates and loads the xml properties from the specified URL. The specified file can contain "include" properties which then are loaded and merged into the properties.- Parameters:
url
- The location of the properties file to load.- Throws:
ConfigurationException
- Error while loading the properties file
-
XMLPropertiesConfiguration
public XMLPropertiesConfiguration(org.w3c.dom.Element element) throws ConfigurationException
Creates and loads the xml properties from the specified DOM node.- Parameters:
element
- The DOM element- Throws:
ConfigurationException
- Error while loading the properties file- Since:
- 2.0
-
-
Method Detail
-
load
public void load(java.io.Reader in) throws ConfigurationException
Description copied from class:PropertiesConfiguration
Load the properties from the given reader. Note that theclear()
method is not called, so the properties contained in the loaded file will be added to the actual set of properties.- Specified by:
load
in interfaceFileConfiguration
- Overrides:
load
in classPropertiesConfiguration
- Parameters:
in
- An InputStream.- Throws:
ConfigurationException
- if an error occurs
-
load
public void load(org.w3c.dom.Element element) throws ConfigurationException
Parses a DOM element containing the properties. The DOM element has to follow the XML properties format introduced in Java 5.0, see http://java.sun.com/j2se/1.5.0/docs/api/java/util/Properties.html- Parameters:
element
- The DOM element- Throws:
ConfigurationException
- Error while interpreting the DOM- Since:
- 2.0
-
save
public void save(java.io.Writer out) throws ConfigurationException
Description copied from class:PropertiesConfiguration
Save the configuration to the specified stream.- Specified by:
save
in interfaceFileConfiguration
- Overrides:
save
in classPropertiesConfiguration
- Parameters:
out
- the output stream used to save the configuration- Throws:
ConfigurationException
- if an error occurs
-
save
public void save(org.w3c.dom.Document document, org.w3c.dom.Node parent)
Writes the configuration as child to the given DOM node- Parameters:
document
- The DOM document to add the configuration toparent
- The DOM parent node- Since:
- 2.0
-
-