org.apache.avalon.framework.configuration

Class DefaultConfiguration

public class DefaultConfiguration extends AbstractConfiguration implements Serializable

This is the default Configuration implementation.

Version: CVS $Revision: 1.32 $ $Date: 2003/02/11 16:19:27 $

Author: Avalon Development Team

Field Summary
protected static Configuration[]EMPTY_ARRAY
An empty (length zero) array of configuration objects.
Constructor Summary
DefaultConfiguration(String name)
Create a new DefaultConfiguration instance.
DefaultConfiguration(String name, String location)
Create a new DefaultConfiguration instance.
DefaultConfiguration(String name, String location, String ns, String prefix)
Create a new DefaultConfiguration instance.
Method Summary
voidaddAll(Configuration other)
Add all the attributes, children and value from specified configuration element to current configuration element.
voidaddAllAttributes(Configuration other)
Add all attributes from specified configuration element to current configuration element.
voidaddAllChildren(Configuration other)
Add all child Configuration objects from specified configuration element to current configuration element.
StringaddAttribute(String name, String value)
Add an attribute to this configuration element, returning its old value or null.
voidaddChild(Configuration configuration)
Add a child Configuration to this configuration element.
voidappendValueData(String value)
Append data to the value of this configuration element.
protected voidcheckWriteable()
heck if this configuration is writeable.
StringgetAttribute(String name)
Returns the value of the attribute specified by its name as a String.
String[]getAttributeNames()
Return an array of all attribute names.
ConfigurationgetChild(String name, boolean createNew)
Return the first Configuration object child of this associated with the given name.
intgetChildCount()
Return count of children.
Configuration[]getChildren()
Return an array of Configuration elements containing all node children.
Configuration[]getChildren(String name)
Return an array of Configuration objects children of this associated with the given name.
StringgetLocation()
Returns a description of location of element.
StringgetName()
Returns the name of this configuration element.
StringgetNamespace()
Returns the namespace of this configuration element
protected StringgetPrefix()
Returns the prefix of the namespace
StringgetValue(String defaultValue)
Returns the value of the configuration element as a String.
StringgetValue()
Returns the value of the configuration element as a String.
voidmakeReadOnly()
Make this configuration read-only.
voidremoveChild(Configuration configuration)
Remove a child Configuration to this configuration element.
voidsetAttribute(String name, String value)
Set the value of the specified attribute to the specified string.
voidsetValue(String value)
Set the value of this Configuration object to the specified string.

Field Detail

EMPTY_ARRAY

protected static final Configuration[] EMPTY_ARRAY
An empty (length zero) array of configuration objects.

Constructor Detail

DefaultConfiguration

public DefaultConfiguration(String name)
Create a new DefaultConfiguration instance.

Parameters: name a String value

DefaultConfiguration

public DefaultConfiguration(String name, String location)
Create a new DefaultConfiguration instance.

Parameters: name a String value location a String value

DefaultConfiguration

public DefaultConfiguration(String name, String location, String ns, String prefix)
Create a new DefaultConfiguration instance.

Parameters: name config node name location Builder-specific locator string ns Namespace string (typically a URI). Should not be null; use "" if no namespace. prefix A short string prefixed to element names, associating elements with a longer namespace string. Should not be null; use "" if no namespace.

Since: 4.1

Method Detail

addAll

public void addAll(Configuration other)
Add all the attributes, children and value from specified configuration element to current configuration element.

Parameters: other the Configuration element

addAllAttributes

public void addAllAttributes(Configuration other)
Add all attributes from specified configuration element to current configuration element.

Parameters: other the Configuration element

addAllChildren

public void addAllChildren(Configuration other)
Add all child Configuration objects from specified configuration element to current configuration element.

Parameters: other the other Configuration value

addAttribute

public String addAttribute(String name, String value)

Deprecated: Use setAttribute() instead

Add an attribute to this configuration element, returning its old value or null.

Parameters: name a String value value a String value

Returns: a String value

addChild

public void addChild(Configuration configuration)
Add a child Configuration to this configuration element.

Parameters: configuration a Configuration value

appendValueData

public void appendValueData(String value)

Deprecated: Use setValue() instead

Append data to the value of this configuration element.

Parameters: value a String value

checkWriteable

protected final void checkWriteable()
heck if this configuration is writeable.

Throws: IllegalStateException if this configuration s read-only

getAttribute

public String getAttribute(String name)
Returns the value of the attribute specified by its name as a String.

Parameters: name a String value

Returns: a String value

Throws: ConfigurationException If the attribute is not present.

getAttributeNames

public String[] getAttributeNames()
Return an array of all attribute names.

Returns: a String[] value

getChild

public Configuration getChild(String name, boolean createNew)
Return the first Configuration object child of this associated with the given name.

Parameters: name a String value createNew a boolean value

Returns: a Configuration value

getChildCount

public int getChildCount()
Return count of children.

Returns: an int value

getChildren

public Configuration[] getChildren()
Return an array of Configuration elements containing all node children.

Returns: The child nodes with name

getChildren

public Configuration[] getChildren(String name)
Return an array of Configuration objects children of this associated with the given name.
The returned array may be empty but is never null.

Parameters: name The name of the required children Configuration.

Returns: a Configuration[] value

getLocation

public String getLocation()
Returns a description of location of element.

Returns: a String value

getName

public String getName()
Returns the name of this configuration element.

Returns: a String value

getNamespace

public String getNamespace()
Returns the namespace of this configuration element

Returns: a String value

Throws: ConfigurationException if an error occurs

Since: 4.1

getPrefix

protected String getPrefix()
Returns the prefix of the namespace

Returns: a String value

Throws: ConfigurationException if prefix is not present (null).

Since: 4.1

getValue

public String getValue(String defaultValue)
Returns the value of the configuration element as a String.

Parameters: defaultValue the default value to return if value malformed or empty

Returns: a String value

getValue

public String getValue()
Returns the value of the configuration element as a String.

Returns: a String value

Throws: ConfigurationException If the value is not present.

makeReadOnly

public void makeReadOnly()
Make this configuration read-only.

removeChild

public void removeChild(Configuration configuration)
Remove a child Configuration to this configuration element.

Parameters: configuration a Configuration value

setAttribute

public void setAttribute(String name, String value)
Set the value of the specified attribute to the specified string.

Parameters: name name of the attribute to set value a String value

setValue

public void setValue(String value)
Set the value of this Configuration object to the specified string.

Parameters: value a String value