Class XMLPropertyListConfiguration
- java.lang.Object
-
- org.apache.commons.configuration2.event.BaseEventSource
-
- org.apache.commons.configuration2.AbstractConfiguration
-
- org.apache.commons.configuration2.AbstractHierarchicalConfiguration<ImmutableNode>
-
- org.apache.commons.configuration2.BaseHierarchicalConfiguration
-
- org.apache.commons.configuration2.plist.XMLPropertyListConfiguration
-
- All Implemented Interfaces:
java.lang.Cloneable
,Configuration
,EventSource
,FileBasedConfiguration
,HierarchicalConfiguration<ImmutableNode>
,ImmutableConfiguration
,ImmutableHierarchicalConfiguration
,FileBased
,FileLocatorAware
,SynchronizerSupport
,InMemoryNodeModelSupport
,NodeKeyResolver<ImmutableNode>
,NodeModelSupport<ImmutableNode>
public class XMLPropertyListConfiguration extends BaseHierarchicalConfiguration implements FileBasedConfiguration, FileLocatorAware
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
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.commons.configuration2.BaseHierarchicalConfiguration
BaseHierarchicalConfiguration.BuilderVisitor
-
-
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(HierarchicalConfiguration<ImmutableNode> 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 protected void
addPropertyInternal(java.lang.String key, java.lang.Object value)
Adds the property with the specified key.void
initFileLocator(FileLocator locator)
Stores the current file locator.void
read(java.io.Reader in)
Reads the content of this object from the given reader.protected void
setPropertyInternal(java.lang.String key, java.lang.Object value)
Sets the value of the specified property.void
write(java.io.Writer out)
Writes the content of this object to the given writer.-
Methods inherited from class org.apache.commons.configuration2.BaseHierarchicalConfiguration
childConfigurationsAt, childConfigurationsAt, cloneNodeModel, configurationAt, configurationAt, configurationsAt, configurationsAt, createSubConfigurationForTrackedNode, getNodeModel, getSubConfigurationNodeSelector, getSubConfigurationParentModel, immutableChildConfigurationsAt, immutableConfigurationAt, immutableConfigurationAt, immutableConfigurationsAt, initSubConfigurationForThisParent, interpolatedConfiguration, subnodeConfigurationChanged, subset
-
Methods inherited from class org.apache.commons.configuration2.AbstractHierarchicalConfiguration
addNodes, addNodesInternal, addPropertyDirect, clearInternal, clearPropertyDirect, clearTree, clearTreeInternal, clone, containsKeyInternal, fetchNodeList, getExpressionEngine, getKeysInternal, getKeysInternal, getMaxIndex, getMaxIndexInternal, getModel, getPropertyInternal, getRootElementName, getRootElementNameInternal, isEmptyInternal, nodeDefined, nodeKey, resolveAddKey, resolveKey, resolveNodeKey, resolveUpdateKey, setExpressionEngine, sizeInternal, toString
-
Methods inherited from class org.apache.commons.configuration2.AbstractConfiguration
addErrorLogListener, addProperty, append, beginRead, beginWrite, clear, clearProperty, cloneInterpolator, containsKey, 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, getList, getList, getList, getList, getListDelimiterHandler, getLogger, getLong, getLong, getLong, getProperties, getProperties, getProperty, getShort, getShort, getShort, getString, getString, getStringArray, getSynchronizer, immutableSubset, initLogger, installInterpolator, interpolate, interpolate, isEmpty, isScalarValue, isThrowExceptionOnMissing, lock, setConfigurationDecoder, setConversionHandler, setDefaultLookups, setInterpolator, setListDelimiterHandler, setLogger, setParentInterpolator, setPrefixLookups, setProperty, setSynchronizer, setThrowExceptionOnMissing, size, unlock
-
Methods inherited from class org.apache.commons.configuration2.event.BaseEventSource
addEventListener, clearErrorListeners, clearEventListeners, copyEventListeners, createErrorEvent, createEvent, fireError, fireEvent, getEventListenerRegistrations, getEventListeners, isDetailEvents, removeEventListener, setDetailEvents
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.commons.configuration2.Configuration
addProperty, clear, clearProperty, getInterpolator, installInterpolator, setInterpolator, setProperty, subset
-
Methods inherited from interface org.apache.commons.configuration2.ImmutableConfiguration
containsKey, 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, getList, getList, getList, getList, getLong, getLong, getLong, getProperties, getProperty, getShort, getShort, getShort, getString, getString, getStringArray, immutableSubset, isEmpty, size
-
Methods inherited from interface org.apache.commons.configuration2.sync.SynchronizerSupport
getSynchronizer, lock, setSynchronizer, unlock
-
-
-
-
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<ImmutableNode> 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
-
-
Method Detail
-
setPropertyInternal
protected void setPropertyInternal(java.lang.String key, java.lang.Object value)
Description copied from class:AbstractHierarchicalConfiguration
Sets the value of the specified property.- Overrides:
setPropertyInternal
in classAbstractHierarchicalConfiguration<ImmutableNode>
- Parameters:
key
- the key of the property to setvalue
- the new value of this property
-
addPropertyInternal
protected void addPropertyInternal(java.lang.String key, java.lang.Object value)
Description copied from class:AbstractHierarchicalConfiguration
Adds the property with the specified key. This task will be delegated to the associatedExpressionEngine
, so the passed in key must match the requirements of this implementation.- Overrides:
addPropertyInternal
in classAbstractHierarchicalConfiguration<ImmutableNode>
- Parameters:
key
- the key of the new propertyvalue
- the value of the new property
-
initFileLocator
public void initFileLocator(FileLocator locator)
Stores the current file locator. This method is called before I/O operations.- Specified by:
initFileLocator
in interfaceFileLocatorAware
- Parameters:
locator
- the currentFileLocator
-
read
public void read(java.io.Reader in) throws ConfigurationException
Description copied from interface:FileBased
Reads the content of this object from the given reader. Client code should not call this method directly, but use aFileHandler
for reading data.- Specified by:
read
in interfaceFileBased
- Parameters:
in
- the reader- Throws:
ConfigurationException
- if a non-I/O related problem occurs, e.g. the data read does not have the expected format
-
write
public void write(java.io.Writer out) throws ConfigurationException
Description copied from interface:FileBased
Writes the content of this object to the given writer. Client code should not call this method directly, but use aFileHandler
for writing data.- Specified by:
write
in interfaceFileBased
- Parameters:
out
- the writer- Throws:
ConfigurationException
- if a non-I/O related problem occurs, e.g. the data read does not have the expected format
-
-