## org.apache.commons.configuration
Class HierarchicalConfiguration.Node

    java.lang.Object
      org.apache.commons.configuration.tree.DefaultConfigurationNode
          org.apache.commons.configuration.HierarchicalConfiguration.Node

All Implemented Interfaces:
  Serializable, Cloneable, ConfigurationNode

Direct Known Subclasses:
  XMLConfiguration.XMLNode, XMLPropertyListConfiguration.PListNode

Enclosing class:
  HierarchicalConfiguration

    public static class HierarchicalConfiguration.Node

extends DefaultConfigurationNode
implements Serializable

A data class for storing (hierarchical) property information. A property can have a value and an arbitrary number of child properties. From version 1.3 on this class is only a thin wrapper over the ``DefaultconfigurationNode`` class that exists mainly for the purpose of backwards compatibility.

See Also:
  Serialized Form

Nested Class Summary

Nested classes/interfaces inherited from class org.apache.commons.configuration.tree.DefaultConfigurationNode
`DefaultConfigurationNode.SubNodes`

Constructor Summary
`HierarchicalConfiguration.Node()` Creates a new instance of `Node`.
`HierarchicalConfiguration.Node(ConfigurationNode src)` Creates a new instance of `Node` based on the given source node.
`HierarchicalConfiguration.Node(String name)` Creates a new instance of `Node` and sets the name.
`HierarchicalConfiguration.Node(String name, Object value)` Creates a new instance of `Node` and sets the name and the value.

Method Summary
`void` `addChild(HierarchicalConfiguration.Node node)` Adds the given node to the children of this node.
`HierarchicalConfiguration.Node` `getParent()` Returns the parent of this node.
`boolean` `hasChildren()` Returns a flag whether this node has child elements.
`boolean` `remove(HierarchicalConfiguration.Node child)` Removes the specified child from this node.
`boolean` `remove(String name)` Removes all children with the given name.
`void` `setParent(HierarchicalConfiguration.Node node)` Sets the parent of this node.
`void` `visit(HierarchicalConfiguration.NodeVisitor visitor, ConfigurationKey key)` A generic method for traversing this node and all of its children.

Methods inherited from class org.apache.commons.configuration.tree.DefaultConfigurationNode

`addAttribute, addChild, checkState, clone, createSubNodes, getAttribute, getAttributeCount, getAttributeCount, getAttributes, getAttributes, getChild, getChildren, getChildren, getChildrenCount, getChildrenCount, getName, getParentNode, getReference, getValue, isAttribute, isDefined, removeAttribute, removeAttribute, removeAttributes, removeChild, removeChild, removeChildren, removeReference, setAttribute, setName, setParentNode, setReference, setValue, visit`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### HierarchicalConfiguration.Node

    public HierarchicalConfiguration.Node()

  Creates a new instance of `Node`.

### HierarchicalConfiguration.Node

    public HierarchicalConfiguration.Node(String name)

  Creates a new instance of `Node` and sets the name.

  Parameters:
    `name` - the node's name

### HierarchicalConfiguration.Node

    public HierarchicalConfiguration.Node(String name,
                                          Object value)

  Creates a new instance of `Node` and sets the name and the value.

  Parameters:
    `name` - the node's name
    `value` - the value

### HierarchicalConfiguration.Node

    public HierarchicalConfiguration.Node(ConfigurationNode src)

  Creates a new instance of `Node` based on the given source node. All properties of the source node, including its children and attributes, will be copied.

  Parameters:
    `src` - the node to be copied

Method Detail

### getParent

    public HierarchicalConfiguration.Node getParent()

  Returns the parent of this node.

  Returns:
    this node's parent (can be null)

### setParent

    public void setParent(HierarchicalConfiguration.Node node)

  Sets the parent of this node.

  Parameters:
    `node` - the parent node

### addChild

    public void addChild(HierarchicalConfiguration.Node node)

  Adds the given node to the children of this node.

  Parameters:
    `node` - the child to be added

### hasChildren

    public boolean hasChildren()

  Returns a flag whether this node has child elements.

  Returns:
    true if there is a child node, false otherwise

### remove

    public boolean remove(HierarchicalConfiguration.Node child)

  Removes the specified child from this node.

  Parameters:
    `child` - the child node to be removed
  Returns:
    a flag if the child could be found

### remove

    public boolean remove(String name)

  Removes all children with the given name.

  Parameters:
    `name` - the name of the children to be removed
  Returns:
    a flag if children with this name existed

### visit

    public void visit(HierarchicalConfiguration.NodeVisitor visitor,
                      ConfigurationKey key)

  A generic method for traversing this node and all of its children. This method sends the passed in visitor to this node and all of its children.

  Parameters:
    `visitor` - the visitor
    `key` - here a configuration key with the name of the root node of the iteration can be passed; if this key is not null , the full pathes to the visited nodes are builded and passed to the visitor's `visit()` methods

Copyright © 2001-2006 The Apache Software Foundation. All Rights Reserved.