Class XMLPropertyListConfiguration
- java.lang.Object
-
- org.apache.commons.configuration.event.EventSource
-
- org.apache.commons.configuration.AbstractConfiguration
-
- org.apache.commons.configuration.HierarchicalConfiguration
-
- org.apache.commons.configuration.AbstractHierarchicalFileConfiguration
-
- org.apache.commons.configuration.plist.XMLPropertyListConfiguration
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,Configuration
,ConfigurationErrorListener
,ConfigurationListener
,FileConfiguration
,FileSystemBased
,Reloadable
public class XMLPropertyListConfiguration extends AbstractHierarchicalFileConfiguration
Property list file (plist) in XML FORMAT as used by Mac OS X (http://www.apple.com/DTDs/PropertyList-1.0.dtd). This configuration doesn't support the binary FORMAT used in OS X 10.4.Example:
<?xml version="1.0"?> <!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd"> <plist version="1.0"> <dict> <key>string</key> <string>value1</string> <key>integer</key> <integer>12345</integer> <key>real</key> <real>-123.45E-1</real> <key>boolean</key> <true/> <key>date</key> <date>2005-01-01T12:00:00Z</date> <key>data</key> <data>RHJhY28gRG9ybWllbnMgTnVucXVhbSBUaXRpbGxhbmR1cw==</data> <key>array</key> <array> <string>value1</string> <string>value2</string> <string>value3</string> </array> <key>dictionnary</key> <dict> <key>key1</key> <string>value1</string> <key>key2</key> <string>value2</string> <key>key3</key> <string>value3</string> </dict> <key>nested</key> <dict> <key>node1</key> <dict> <key>node2</key> <dict> <key>node3</key> <string>value</string> </dict> </dict> </dict> </dict> </plist>
- Since:
- 1.2
- Version:
- $Id: XMLPropertyListConfiguration.java 1368665 2012-08-02 19:48:26Z oheger $
- Author:
- Emmanuel Bourg
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
XMLPropertyListConfiguration.ArrayNode
Container for array elements.static class
XMLPropertyListConfiguration.PListNode
Node extension with addXXX methods to parse the typed data passed by the SAX handler.-
Nested classes/interfaces inherited from class org.apache.commons.configuration.AbstractHierarchicalFileConfiguration
AbstractHierarchicalFileConfiguration.FileConfigurationDelegate
-
Nested classes/interfaces inherited from class org.apache.commons.configuration.HierarchicalConfiguration
HierarchicalConfiguration.BuilderVisitor, HierarchicalConfiguration.Node, HierarchicalConfiguration.NodeVisitor
-
-
Field Summary
-
Fields inherited from class org.apache.commons.configuration.HierarchicalConfiguration
EVENT_ADD_NODES, EVENT_CLEAR_TREE, EVENT_SUBNODE_CHANGED
-
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 XMLPropertyListConfiguration()
Creates an empty XMLPropertyListConfiguration object which can be used to synthesize a new plist file by adding values and then saving().XMLPropertyListConfiguration(java.io.File file)
Creates and loads the property list from the specified file.XMLPropertyListConfiguration(java.lang.String fileName)
Creates and loads the property list from the specified file.XMLPropertyListConfiguration(java.net.URL url)
Creates and loads the property list from the specified URL.XMLPropertyListConfiguration(HierarchicalConfiguration configuration)
Creates a new instance ofXMLPropertyListConfiguration
and copies the content of the specified configuration into this object.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addProperty(java.lang.String key, java.lang.Object value)
Add a property to the configuration.void
load(java.io.Reader in)
Load the configuration from the specified reader.void
save(java.io.Writer out)
Save the configuration to the specified writer.void
setProperty(java.lang.String key, java.lang.Object value)
Sets the value of the specified property.-
Methods inherited from class org.apache.commons.configuration.AbstractHierarchicalFileConfiguration
addNodes, addPropertyDirect, clearProperty, clearTree, configurationChanged, configurationError, containsKey, createDelegate, fetchNodeList, getBasePath, getDelegate, getEncoding, getFile, getFileName, getFileSystem, getKeys, getKeys, getProperty, getReloadingStrategy, getReloadLock, getURL, isAutoSave, isEmpty, load, load, load, load, load, load, refresh, reload, resetFileSystem, save, save, save, save, save, save, setAutoSave, setBasePath, setDelegate, setEncoding, setFile, setFileName, setFileSystem, setReloadingStrategy, setURL, subnodeConfigurationChanged
-
Methods inherited from class org.apache.commons.configuration.HierarchicalConfiguration
clear, clearNode, clearNode, clearReferences, clone, configurationAt, configurationAt, configurationsAt, createAddPath, createNode, createSubnodeConfiguration, createSubnodeConfiguration, fetchAddNode, findLastPathNode, findPropertyNodes, getDefaultExpressionEngine, getExpressionEngine, getMaxIndex, getRoot, getRootNode, interpolatedConfiguration, nodeDefined, nodeDefined, removeNode, removeNode, setDefaultExpressionEngine, setExpressionEngine, setRoot, setRootNode, subset
-
Methods inherited from class org.apache.commons.configuration.AbstractConfiguration
addErrorLogListener, append, clearPropertyDirect, copy, createInterpolator, getBigDecimal, getBigDecimal, getBigInteger, getBigInteger, getBoolean, getBoolean, getBoolean, getByte, getByte, getByte, getDefaultListDelimiter, getDelimiter, getDouble, getDouble, getDouble, getFloat, getFloat, getFloat, getInt, getInt, getInteger, getInterpolator, getList, getList, getListDelimiter, getLogger, getLong, getLong, getLong, getProperties, getProperties, getShort, getShort, getShort, getString, getString, getStringArray, getSubstitutor, interpolate, interpolate, interpolateHelper, isDelimiterParsingDisabled, isScalarValue, isThrowExceptionOnMissing, resolveContainerStore, setDefaultListDelimiter, setDelimiter, setDelimiterParsingDisabled, setListDelimiter, setLogger, setThrowExceptionOnMissing
-
Methods inherited from class org.apache.commons.configuration.event.EventSource
addConfigurationListener, addErrorListener, clearConfigurationListeners, clearErrorListeners, createErrorEvent, createEvent, fireError, fireEvent, 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, getList, getList, getLong, getLong, getLong, getProperties, getShort, getShort, getShort, getString, getString, getStringArray, subset
-
-
-
-
Constructor Detail
-
XMLPropertyListConfiguration
public XMLPropertyListConfiguration()
Creates an empty XMLPropertyListConfiguration object which can be used to synthesize a new plist file by adding values and then saving().
-
XMLPropertyListConfiguration
public XMLPropertyListConfiguration(HierarchicalConfiguration configuration)
Creates a new instance ofXMLPropertyListConfiguration
and copies the content of the specified configuration into this object.- Parameters:
configuration
- the configuration to copy- Since:
- 1.4
-
XMLPropertyListConfiguration
public XMLPropertyListConfiguration(java.lang.String fileName) throws ConfigurationException
Creates and loads the property list from the specified file.- Parameters:
fileName
- The name of the plist file to load.- Throws:
ConfigurationException
- Error while loading the plist file
-
XMLPropertyListConfiguration
public XMLPropertyListConfiguration(java.io.File file) throws ConfigurationException
Creates and loads the property list from the specified file.- Parameters:
file
- The plist file to load.- Throws:
ConfigurationException
- Error while loading the plist file
-
XMLPropertyListConfiguration
public XMLPropertyListConfiguration(java.net.URL url) throws ConfigurationException
Creates and loads the property list from the specified URL.- Parameters:
url
- The location of the plist file to load.- Throws:
ConfigurationException
- Error while loading the plist file
-
-
Method Detail
-
setProperty
public void setProperty(java.lang.String key, java.lang.Object value)
Description copied from class:HierarchicalConfiguration
Sets the value of the specified property.- Specified by:
setProperty
in interfaceConfiguration
- Overrides:
setProperty
in classAbstractHierarchicalFileConfiguration
- Parameters:
key
- the key of the property to setvalue
- the new value of this property
-
addProperty
public void addProperty(java.lang.String key, java.lang.Object value)
Description copied from interface:Configuration
Add a property to the configuration. If it already exists then the value stated here will be added to the configuration entry. For example, if the property:resource.loader = file
is already present in the configuration and you calladdProperty("resource.loader", "classpath")
Then you will end up with a List like the following:["file", "classpath"]
- Specified by:
addProperty
in interfaceConfiguration
- Overrides:
addProperty
in classAbstractConfiguration
- Parameters:
key
- The key to add the property to.value
- The value to add.
-
load
public void load(java.io.Reader in) throws ConfigurationException
Description copied from interface:FileConfiguration
Load the configuration from the specified reader.- Parameters:
in
- the reader- Throws:
ConfigurationException
- if an error occurs during the load operation
-
save
public void save(java.io.Writer out) throws ConfigurationException
Description copied from interface:FileConfiguration
Save the configuration to the specified writer.- Parameters:
out
- the writer- Throws:
ConfigurationException
- if an error occurs during the save operation
-
-