Class XMLPropertiesConfiguration
java.lang.Object
org.apache.commons.configuration2.event.BaseEventSource
org.apache.commons.configuration2.AbstractConfiguration
org.apache.commons.configuration2.BaseConfiguration
org.apache.commons.configuration2.XMLPropertiesConfiguration
- All Implemented Interfaces:
Cloneable,Configuration,EventSource,FileBasedConfiguration,ImmutableConfiguration,FileBased,FileLocatorAware,SynchronizerSupport
public class XMLPropertiesConfiguration
extends BaseConfiguration
implements FileBasedConfiguration, FileLocatorAware
This configuration implements the XML properties format introduced in Java, see
https://docs.oracle.com/javase/8/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 runtime is not required to use this class. The default encoding for this configuration format is UTF-8. Note that unlike
PropertiesConfiguration, 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
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe default encoding (UTF-8 as specified by https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html) -
Constructor Summary
ConstructorsConstructorDescriptionCreates an empty XMLPropertyConfiguration object which can be used to synthesize a new Properties file by adding values and then saving().XMLPropertiesConfiguration(Element element) Creates and loads the XML properties from the specified DOM node. -
Method Summary
Modifier and TypeMethodDescriptionGets the header comment of this configuration.voidinitFileLocator(FileLocator locator) Initializes this object with aFileLocator.voidParses a DOM element containing the properties.voidReads the content of this object from the given reader.voidWrites the configuration as child to the given DOM nodevoidSets the header comment of this configuration.voidWrites the content of this object to the given writer.Methods inherited from class org.apache.commons.configuration2.BaseConfiguration
addPropertyDirect, clearInternal, clearPropertyDirect, clone, containsKeyInternal, containsValueInternal, getKeysInternal, getPropertyInternal, isEmptyInternal, sizeInternalMethods inherited from class org.apache.commons.configuration2.AbstractConfiguration
addErrorLogListener, addProperty, addPropertyInternal, append, beginRead, beginWrite, clear, clearProperty, cloneInterpolator, contains, containsKey, containsValue, copy, endRead, endWrite, get, get, getArray, getArray, getBigDecimal, getBigDecimal, getBigInteger, getBigInteger, getBoolean, getBoolean, getBoolean, getByte, getByte, getByte, getCollection, getCollection, getConfigurationDecoder, getConversionHandler, getDouble, getDouble, getDouble, getDuration, getDuration, getEncodedString, getEncodedString, getFloat, getFloat, getFloat, getInt, getInt, getInteger, getInterpolator, getKeys, getKeys, getKeys, getKeysInternal, getKeysInternal, getList, getList, getList, getList, getListDelimiterHandler, getLogger, getLong, getLong, getLong, getProperties, getProperties, getProperty, getShort, getShort, getShort, getString, getString, getStringArray, getSynchronizer, immutableSubset, initLogger, installInterpolator, interpolate, interpolate, interpolatedConfiguration, isEmpty, isScalarValue, isThrowExceptionOnMissing, lock, setConfigurationDecoder, setConversionHandler, setDefaultLookups, setInterpolator, setListDelimiterHandler, setLogger, setParentInterpolator, setPrefixLookups, setProperty, setPropertyInternal, setSynchronizer, setThrowExceptionOnMissing, size, subset, unlockMethods inherited from class org.apache.commons.configuration2.event.BaseEventSource
addEventListener, clearErrorListeners, clearEventListeners, copyEventListeners, createErrorEvent, createEvent, fireError, fireEvent, getEventListenerRegistrations, getEventListeners, isDetailEvents, removeEventListener, setDetailEventsMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.commons.configuration2.Configuration
addProperty, clear, clearProperty, getInterpolator, installInterpolator, setInterpolator, setProperty, subsetMethods inherited from interface org.apache.commons.configuration2.ImmutableConfiguration
containsKey, containsValue, get, get, getArray, getArray, getBigDecimal, getBigDecimal, getBigInteger, getBigInteger, getBoolean, getBoolean, getBoolean, getByte, getByte, getByte, getCollection, getCollection, getDouble, getDouble, getDouble, getDuration, getDuration, getEncodedString, getEncodedString, getEnum, getEnum, getFloat, getFloat, getFloat, getInt, getInt, getInteger, getKeys, getKeys, getKeys, getList, getList, getList, getList, getLong, getLong, getLong, getProperties, getProperty, getShort, getShort, getShort, getString, getString, getStringArray, immutableSubset, isEmpty, sizeMethods inherited from interface org.apache.commons.configuration2.sync.SynchronizerSupport
getSynchronizer, lock, setSynchronizer, unlock
-
Field Details
-
DEFAULT_ENCODING
The default encoding (UTF-8 as specified by https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html)
-
-
Constructor Details
-
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 constructor cannot be tickled into loading included files because it cannot supply a base for relative includes. -
XMLPropertiesConfiguration
Creates and loads the XML properties from the specified DOM node.- Parameters:
element- The non-null DOM element.- Throws:
ConfigurationException- Error while loading the Element.- Since:
- 2.0
-
-
Method Details
-
getHeader
Gets the header comment of this configuration.- Returns:
- the header comment
-
initFileLocator
Initializes this object with aFileLocator. The locator is accessed during load and save operations.- Specified by:
initFileLocatorin interfaceFileLocatorAware- Parameters:
locator- the associatedFileLocator
-
load
Parses a DOM element containing the properties. The DOM element has to follow the XML properties format introduced in Java, see https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html- Parameters:
element- The DOM element- Throws:
ConfigurationException- Error while interpreting the DOM- Since:
- 2.0
-
read
Description copied from interface:FileBasedReads the content of this object from the given reader. Client code should not call this method directly, but use aFileHandlerfor reading data.- Specified by:
readin interfaceFileBased- Parameters:
in- the reader- Throws:
ConfigurationException- if a non-I/O related problem occurs, for example the data read does not have the expected format
-
save
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
-
setHeader
Sets the header comment of this configuration.- Parameters:
header- the header comment
-
write
Description copied from interface:FileBasedWrites the content of this object to the given writer. Client code should not call this method directly, but use aFileHandlerfor writing data.- Specified by:
writein interfaceFileBased- Parameters:
out- the writer- Throws:
ConfigurationException- if a non-I/O related problem occurs, for example the data read does not have the expected format
-