org.apache.avalon.framework.configuration
Class DefaultConfiguration

java.lang.Object
  |
  +--org.apache.avalon.framework.configuration.AbstractConfiguration
        |
        +--org.apache.avalon.framework.configuration.DefaultConfiguration
All Implemented Interfaces:
Configuration, Serializable

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
See Also:
Serialized Form

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
 void addAll(Configuration other)
          Add all the attributes, children and value from specified configuration element to current configuration element.
 void addAllAttributes(Configuration other)
          Add all attributes from specified configuration element to current configuration element.
 void addAllChildren(Configuration other)
          Add all child Configuration objects from specified configuration element to current configuration element.
 String addAttribute(String name, String value)
          Deprecated. Use setAttribute() instead
 void addChild(Configuration configuration)
          Add a child Configuration to this configuration element.
 void appendValueData(String value)
          Deprecated. Use setValue() instead
protected  void checkWriteable()
          heck if this configuration is writeable.
 String getAttribute(String name)
          Returns the value of the attribute specified by its name as a String.
 String[] getAttributeNames()
          Return an array of all attribute names.
 Configuration getChild(String name, boolean createNew)
          Return the first Configuration object child of this associated with the given name.
 int getChildCount()
          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.
 String getLocation()
          Returns a description of location of element.
 String getName()
          Returns the name of this configuration element.
 String getNamespace()
          Returns the namespace of this configuration element
protected  String getPrefix()
          Returns the prefix of the namespace
 String getValue()
          Returns the value of the configuration element as a String.
 String getValue(String defaultValue)
          Returns the value of the configuration element as a String.
 void makeReadOnly()
          Make this configuration read-only.
 void removeChild(Configuration configuration)
          Remove a child Configuration to this configuration element.
 void setAttribute(String name, String value)
          Set the value of the specified attribute to the specified string.
 void setValue(String value)
          Set the value of this Configuration object to the specified string.
 
Methods inherited from class org.apache.avalon.framework.configuration.AbstractConfiguration
getAttribute, getAttributeAsBoolean, getAttributeAsBoolean, getAttributeAsFloat, getAttributeAsFloat, getAttributeAsInteger, getAttributeAsInteger, getAttributeAsLong, getAttributeAsLong, getChild, getValueAsBoolean, getValueAsBoolean, getValueAsFloat, getValueAsFloat, getValueAsInteger, getValueAsInteger, getValueAsLong, getValueAsLong
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

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

getName

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

Specified by:
getName in interface Configuration
Returns:
a String value

getNamespace

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

Specified by:
getNamespace in interface Configuration
Returns:
a String value
Throws:
ConfigurationException - if an error occurs
Since:
4.1

getPrefix

protected String getPrefix()
                    throws ConfigurationException
Returns the prefix of the namespace

Specified by:
getPrefix in class AbstractConfiguration
Returns:
a String value
Throws:
ConfigurationException - if prefix is not present (null).
Since:
4.1

getLocation

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

Specified by:
getLocation in interface Configuration
Returns:
a String value

getValue

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

Specified by:
getValue in interface Configuration
Overrides:
getValue in class AbstractConfiguration
Parameters:
defaultValue - the default value to return if value malformed or empty
Returns:
a String value

getValue

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

Specified by:
getValue in interface Configuration
Returns:
a String value
Throws:
ConfigurationException - If the value is not present.

getAttributeNames

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

Specified by:
getAttributeNames in interface Configuration
Returns:
a String[] value

getChildren

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

Specified by:
getChildren in interface Configuration
Returns:
The child nodes with name

getAttribute

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

Specified by:
getAttribute in interface Configuration
Parameters:
name - a String value
Returns:
a String value
Throws:
ConfigurationException - If the attribute is not present.

getChild

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

Specified by:
getChild in interface Configuration
Overrides:
getChild in class AbstractConfiguration
Parameters:
name - a String value
createNew - a boolean value
Returns:
a Configuration value

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.

Specified by:
getChildren in interface Configuration
Parameters:
name - The name of the required children Configuration.
Returns:
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

setValue

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

Parameters:
value - a String 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

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

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

removeChild

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

Parameters:
configuration - a Configuration value

getChildCount

public int getChildCount()
Return count of children.

Returns:
an int value

makeReadOnly

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


checkWriteable

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

Throws:
IllegalStateException - if this configuration s read-only


Copyright © 2001 Apache Jakarta Project. All Rights Reserved.