## Uses of Class
org.apache.commons.configuration2.tree.ImmutableNode

- Packages that use ImmutableNode
  Package | Description
  --- | ---
  org.apache.commons.configuration2 | The Configuration main package.
  org.apache.commons.configuration2.plist | Configuration classes supporting NeXT / OpenStep /GNUStep style configuration.
  org.apache.commons.configuration2.tree | A package with helper and utility classes used by hierarchical configurations.

- - ### Uses of ImmutableNode in org.apache.commons.configuration2

    Methods in org.apache.commons.configuration2 that return types with arguments of type ImmutableNode
    Modifier and Type | Method and Description
    --- | ---
    `List<HierarchicalConfiguration<ImmutableNode>>` | BaseHierarchicalConfiguration.`childConfigurationsAt(String key)` Returns a list with sub configurations for all child nodes of the node selected by the given key.
    `List<HierarchicalConfiguration<ImmutableNode>>` | BaseHierarchicalConfiguration.`childConfigurationsAt(String key, boolean supportUpdates)` Returns a list with sub configurations for all child nodes of the node selected by the given key allowing the caller to specify the `supportUpdates` flag.
    `protected NodeModel<ImmutableNode>` | SubnodeConfiguration.`cloneNodeModel()` Creates a clone of the node model.
    `protected NodeModel<ImmutableNode>` | BaseHierarchicalConfiguration.`cloneNodeModel()` Creates a clone of the node model.
    `HierarchicalConfiguration<ImmutableNode>` | PatternSubtreeConfigurationWrapper.`configurationAt(String key)`
    `HierarchicalConfiguration<ImmutableNode>` | DynamicCombinedConfiguration.`configurationAt(String key)`
    `HierarchicalConfiguration<ImmutableNode>` | BaseHierarchicalConfiguration.`configurationAt(String key)` Returns a hierarchical subnode configuration for the node specified by the given key.
    `HierarchicalConfiguration<ImmutableNode>` | PatternSubtreeConfigurationWrapper.`configurationAt(String key, boolean supportUpdates)`
    `HierarchicalConfiguration<ImmutableNode>` | DynamicCombinedConfiguration.`configurationAt(String key, boolean supportUpdates)`
    `HierarchicalConfiguration<ImmutableNode>` | BaseHierarchicalConfiguration.`configurationAt(String key, boolean supportUpdates)` Returns a hierarchical sub configuration object that wraps the configuration node specified by the given key.
    `List<HierarchicalConfiguration<ImmutableNode>>` | PatternSubtreeConfigurationWrapper.`configurationsAt(String key)`
    `List<HierarchicalConfiguration<ImmutableNode>>` | DynamicCombinedConfiguration.`configurationsAt(String key)`
    `List<HierarchicalConfiguration<ImmutableNode>>` | BaseHierarchicalConfiguration.`configurationsAt(String key)` Returns a list of sub configurations for all configuration nodes selected by the given key.
    `List<HierarchicalConfiguration<ImmutableNode>>` | BaseHierarchicalConfiguration.`configurationsAt(String key, boolean supportUpdates)` Returns a list of sub configurations for all configuration nodes selected by the given key allowing the caller to specify the `supportUpdates` flag.

    Methods in org.apache.commons.configuration2 with parameters of type ImmutableNode
    Modifier and Type | Method and Description
    --- | ---
    `protected Map<String,Object>` | AbstractYAMLBasedConfiguration.`constructMap(ImmutableNode node)` Constructs a YAML map, i.e.
    `protected abstract void` | BaseHierarchicalConfiguration.BuilderVisitor.`insert(ImmutableNode newNode, ImmutableNode parent, ImmutableNode sibling1, ImmutableNode sibling2, ReferenceNodeHandler refHandler)` Inserts a new node into the structure constructed by this builder.
    `protected abstract void` | BaseHierarchicalConfiguration.BuilderVisitor.`update(ImmutableNode node, Object reference, ReferenceNodeHandler refHandler)` Updates a node that already existed in the original hierarchy.
    `void` | BaseHierarchicalConfiguration.BuilderVisitor.`visitBeforeChildren(ImmutableNode node, NodeHandler<ImmutableNode> handler)`

    Method parameters in org.apache.commons.configuration2 with type arguments of type ImmutableNode
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | PatternSubtreeConfigurationWrapper.`addNodesInternal(String key, Collection<? extends ImmutableNode> nodes)`
    `protected void` | DynamicCombinedConfiguration.`addNodesInternal(String key, Collection<? extends ImmutableNode> nodes)`
    `void` | BaseHierarchicalConfiguration.BuilderVisitor.`visitBeforeChildren(ImmutableNode node, NodeHandler<ImmutableNode> handler)`

    Constructor parameters in org.apache.commons.configuration2 with type arguments of type ImmutableNode
    Constructor and Description
    `AbstractYAMLBasedConfiguration(HierarchicalConfiguration<ImmutableNode> c)` Creates a new instance of `AbstractYAMLBasedConfiguration` as a copy of the specified configuration.
    `BaseHierarchicalConfiguration(HierarchicalConfiguration<ImmutableNode> c)` Creates a new instance of `BaseHierarchicalConfiguration` and copies all data contained in the specified configuration into the new one.
    `BaseHierarchicalConfiguration(NodeModel<ImmutableNode> model)` Creates a new instance of `BaseHierarchicalConfiguration` and initializes it with the given `NodeModel`.
    `INIConfiguration(HierarchicalConfiguration<ImmutableNode> c)` Creates a new instance of `INIConfiguration` with the content of the specified `HierarchicalConfiguration`.
    `JSONConfiguration(HierarchicalConfiguration<ImmutableNode> c)` Creates a new instance of `JSONConfiguration` as a copy of the specified configuration.
    `PatternSubtreeConfigurationWrapper(HierarchicalConfiguration<ImmutableNode> config, String path)` Constructor
    `XMLConfiguration(HierarchicalConfiguration<ImmutableNode> c)` Creates a new instance of `XMLConfiguration` and copies the content of the passed in configuration into this object.
    `YAMLConfiguration(HierarchicalConfiguration<ImmutableNode> c)` Creates a new instance of `YAMLConfiguration` as a copy of the specified configuration.

  - ### Uses of ImmutableNode in org.apache.commons.configuration2.plist

    Constructor parameters in org.apache.commons.configuration2.plist with type arguments of type ImmutableNode
    Constructor and Description
    `PropertyListConfiguration(HierarchicalConfiguration<ImmutableNode> c)` Creates a new instance of `PropertyListConfiguration` and copies the content of the specified configuration into this object.
    `XMLPropertyListConfiguration(HierarchicalConfiguration<ImmutableNode> configuration)` Creates a new instance of `XMLPropertyListConfiguration` and copies the content of the specified configuration into this object.

  - ### Uses of ImmutableNode in org.apache.commons.configuration2.tree

    Fields in org.apache.commons.configuration2.tree with type parameters of type ImmutableNode
    Modifier and Type | Field and Description
    --- | ---
    `protected static NodeHandler<ImmutableNode>` | NodeCombiner.`HANDLER` A default handler object for immutable nodes.

    Methods in org.apache.commons.configuration2.tree that return ImmutableNode
    Modifier and Type | Method and Description
    --- | ---
    `ImmutableNode` | ImmutableNode.`addChild(ImmutableNode child)` Creates a new `ImmutableNode` instance which is a copy of this object, but has the given child node added.
    `protected ImmutableNode` | OverrideCombiner.`canCombine(ImmutableNode node1, ImmutableNode node2, ImmutableNode child)` Tests if a child node of the second node can be combined with the given child node of the first node.
    `protected ImmutableNode` | MergeCombiner.`canCombine(ImmutableNode node2, ImmutableNode child, List<ImmutableNode> children2)` Tests if the first node can be combined with the second node.
    `ImmutableNode` | UnionCombiner.`combine(ImmutableNode node1, ImmutableNode node2)` Combines the given nodes to a new union node.
    `ImmutableNode` | OverrideCombiner.`combine(ImmutableNode node1, ImmutableNode node2)` Constructs an override combination for the passed in node structures.
    `abstract ImmutableNode` | NodeCombiner.`combine(ImmutableNode node1, ImmutableNode node2)` Combines the hierarchies represented by the given root nodes.
    `ImmutableNode` | MergeCombiner.`combine(ImmutableNode node1, ImmutableNode node2)` Combines the given nodes to a new union node.
    `ImmutableNode` | ImmutableNode.Builder.`create()` Creates a new `ImmutableNode` instance based on the properties set for this builder.
    `protected ImmutableNode` | UnionCombiner.`findCombineNode(ImmutableNode node1, ImmutableNode node2, ImmutableNode child)` Tries to find a child node of the second source node, with which a child of the first source node can be combined.
    `ImmutableNode` | TrackedNodeModel.`getInMemoryRepresentation()` Returns a representation of the data stored in this model in form of a nodes hierarchy of `ImmutableNode` objects.
    `ImmutableNode` | NodeModel.`getInMemoryRepresentation()` Returns a representation of the data stored in this model in form of a nodes hierarchy of `ImmutableNode` objects.
    `ImmutableNode` | InMemoryNodeModel.`getInMemoryRepresentation()` Returns a representation of the data stored in this model in form of a nodes hierarchy of `ImmutableNode` objects.
    `ImmutableNode` | InMemoryNodeModel.`getRootNode()` Returns the root node of this mode.
    `ImmutableNode` | InMemoryNodeModel.`getTrackedNode(NodeSelector selector)` Returns the current `ImmutableNode` instance associated with the given `NodeSelector`.
    `ImmutableNode` | ImmutableNode.`removeAttribute(String name)` Returns a new `ImmutableNode` instance which is a copy of this object, but with the specified attribute removed.
    `ImmutableNode` | ImmutableNode.`removeChild(ImmutableNode child)` Returns a new `ImmutableNode` instance which is a copy of this object, but with the given child node removed.
    `ImmutableNode` | ImmutableNode.`replaceChild(ImmutableNode oldChild, ImmutableNode newChild)` Returns a new `ImmutableNode` instance which is a copy of this object, but with the given child replaced by the new one.
    `ImmutableNode` | ImmutableNode.`replaceChildren(Collection<ImmutableNode> newChildren)` Returns a new `ImmutableNode` instance which is a copy of this object, but with the children replaced by the ones in the passed in collection.
    `ImmutableNode` | NodeSelector.`select(ImmutableNode root, NodeKeyResolver<ImmutableNode> resolver, NodeHandler<ImmutableNode> handler)` Applies this `NodeSelector` on the specified root node.
    `ImmutableNode` | ImmutableNode.`setAttribute(String name, Object value)` Returns a new `ImmutableNode` instance which is a copy of this object, but with the specified attribute set to the given value.
    `ImmutableNode` | ImmutableNode.`setAttributes(Map<String,?> newAttributes)` Returns a new `ImmutableNode` instance which is a copy of this object, but with all attributes added defined by the given map.
    `ImmutableNode` | ImmutableNode.`setName(String name)` Creates a new `ImmutableNode` instance which is a copy of this object with the name changed to the passed in value.
    `ImmutableNode` | ImmutableNode.`setValue(Object newValue)` Creates a new `ImmutableNode` instance which is a copy of this object with the value changed to the passed in value.

    Methods in org.apache.commons.configuration2.tree that return types with arguments of type ImmutableNode
    Modifier and Type | Method and Description
    --- | ---
    `List<QueryResult<ImmutableNode>>` | TrackedNodeModel.`clearTree(String key, NodeKeyResolver<ImmutableNode> resolver)`
    `List<QueryResult<ImmutableNode>>` | InMemoryNodeModel.`clearTree(String key, NodeKeyResolver<ImmutableNode> resolver)` Removes the sub trees defined by the given key from this model.
    `List<QueryResult<ImmutableNode>>` | InMemoryNodeModel.`clearTree(String key, NodeSelector selector, NodeKeyResolver<ImmutableNode> resolver)` Clears a whole sub tree using a tracked node as root node.
    `List<ImmutableNode>` | ImmutableNode.`getChildren()` Returns a list with the children of this node.
    `List<ImmutableNode>` | ImmutableNode.`getChildren(String name)` Returns a list with the children of this node.
    `NodeHandler<ImmutableNode>` | TrackedNodeModel.`getNodeHandler()`
    `NodeHandler<ImmutableNode>` | InMemoryNodeModel.`getNodeHandler()` Returns a `NodeHandler` for dealing with the nodes managed by this model.
    `NodeHandler<ImmutableNode>` | InMemoryNodeModel.`getTrackedNodeHandler(NodeSelector selector)` Returns a `NodeHandler` for a tracked node.
    `Iterator<ImmutableNode>` | ImmutableNode.`iterator()`

    Methods in org.apache.commons.configuration2.tree with parameters of type ImmutableNode
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | OverrideCombiner.`addAttributes(ImmutableNode.Builder result, ImmutableNode node1, ImmutableNode node2)` Handles the attributes during a combination process.
    `protected void` | MergeCombiner.`addAttributes(ImmutableNode.Builder result, ImmutableNode node1, ImmutableNode node2)` Handles the attributes during a combination process.
    `ImmutableNode` | ImmutableNode.`addChild(ImmutableNode child)` Creates a new `ImmutableNode` instance which is a copy of this object, but has the given child node added.
    `ImmutableNode.Builder` | ImmutableNode.Builder.`addChild(ImmutableNode c)` Adds a child node to this builder.
    `protected ImmutableNode` | OverrideCombiner.`canCombine(ImmutableNode node1, ImmutableNode node2, ImmutableNode child)` Tests if a child node of the second node can be combined with the given child node of the first node.
    `protected ImmutableNode` | MergeCombiner.`canCombine(ImmutableNode node2, ImmutableNode child, List<ImmutableNode> children2)` Tests if the first node can be combined with the second node.
    `ImmutableNode` | UnionCombiner.`combine(ImmutableNode node1, ImmutableNode node2)` Combines the given nodes to a new union node.
    `ImmutableNode` | OverrideCombiner.`combine(ImmutableNode node1, ImmutableNode node2)` Constructs an override combination for the passed in node structures.
    `abstract ImmutableNode` | NodeCombiner.`combine(ImmutableNode node1, ImmutableNode node2)` Combines the hierarchies represented by the given root nodes.
    `ImmutableNode` | MergeCombiner.`combine(ImmutableNode node1, ImmutableNode node2)` Combines the given nodes to a new union node.
    `protected ImmutableNode` | UnionCombiner.`findCombineNode(ImmutableNode node1, ImmutableNode node2, ImmutableNode child)` Tries to find a child node of the second source node, with which a child of the first source node can be combined.
    `Object` | ReferenceNodeHandler.`getReference(ImmutableNode node)` Returns the reference object associated with the specified node.
    `boolean` | NodeCombiner.`isListNode(ImmutableNode node)` Checks if a node is a list node.
    `void` | InMemoryNodeModel.`mergeRoot(ImmutableNode node, String rootName, Map<ImmutableNode,?> references, Object rootRef, NodeKeyResolver<ImmutableNode> resolver)` Merges the root node of this model with the specified node.
    `static void` | TreeUtils.`printTree(PrintStream stream, ImmutableNode result)` Print out the data in the configuration.
    `ImmutableNode` | ImmutableNode.`removeChild(ImmutableNode child)` Returns a new `ImmutableNode` instance which is a copy of this object, but with the given child node removed.
    `ImmutableNode` | ImmutableNode.`replaceChild(ImmutableNode oldChild, ImmutableNode newChild)` Returns a new `ImmutableNode` instance which is a copy of this object, but with the given child replaced by the new one.
    `void` | InMemoryNodeModel.`replaceRoot(ImmutableNode newRoot, NodeKeyResolver<ImmutableNode> resolver)` Replaces the root node of this model.
    `void` | InMemoryNodeModel.`replaceTrackedNode(NodeSelector selector, ImmutableNode newNode)` Replaces a tracked node by another node.
    `ImmutableNode` | NodeSelector.`select(ImmutableNode root, NodeKeyResolver<ImmutableNode> resolver, NodeHandler<ImmutableNode> handler)` Applies this `NodeSelector` on the specified root node.
    `void` | TrackedNodeModel.`setRootNode(ImmutableNode newRoot)`
    `void` | InMemoryNodeModel.`setRootNode(ImmutableNode newRoot)` Sets a new root node for this model.

    Method parameters in org.apache.commons.configuration2.tree with type arguments of type ImmutableNode
    Modifier and Type | Method and Description
    --- | ---
    `ImmutableNode.Builder` | ImmutableNode.Builder.`addChildren(Collection<? extends ImmutableNode> children)` Adds multiple child nodes to this builder.
    `void` | TrackedNodeModel.`addNodes(String key, Collection<? extends ImmutableNode> nodes, NodeKeyResolver<ImmutableNode> resolver)`
    `void` | TrackedNodeModel.`addNodes(String key, Collection<? extends ImmutableNode> nodes, NodeKeyResolver<ImmutableNode> resolver)`
    `void` | InMemoryNodeModel.`addNodes(String key, Collection<? extends ImmutableNode> nodes, NodeKeyResolver<ImmutableNode> resolver)`
    `void` | InMemoryNodeModel.`addNodes(String key, Collection<? extends ImmutableNode> nodes, NodeKeyResolver<ImmutableNode> resolver)`
    `void` | InMemoryNodeModel.`addNodes(String key, NodeSelector selector, Collection<? extends ImmutableNode> nodes, NodeKeyResolver<ImmutableNode> resolver)` Adds new nodes using a tracked node as root node.
    `void` | InMemoryNodeModel.`addNodes(String key, NodeSelector selector, Collection<? extends ImmutableNode> nodes, NodeKeyResolver<ImmutableNode> resolver)` Adds new nodes using a tracked node as root node.
    `void` | TrackedNodeModel.`addProperty(String key, Iterable<?> values, NodeKeyResolver<ImmutableNode> resolver)`
    `void` | InMemoryNodeModel.`addProperty(String key, Iterable<?> values, NodeKeyResolver<ImmutableNode> resolver)`
    `void` | InMemoryNodeModel.`addProperty(String key, NodeSelector selector, Iterable<?> values, NodeKeyResolver<ImmutableNode> resolver)` Adds new property values using a tracked node as root node.
    `protected ImmutableNode` | MergeCombiner.`canCombine(ImmutableNode node2, ImmutableNode child, List<ImmutableNode> children2)` Tests if the first node can be combined with the second node.
    `void` | TrackedNodeModel.`clear(NodeKeyResolver<ImmutableNode> resolver)` Removes all data from this model.
    `void` | InMemoryNodeModel.`clear(NodeKeyResolver<ImmutableNode> resolver)` Removes all data from this model.
    `void` | TrackedNodeModel.`clearProperty(String key, NodeKeyResolver<ImmutableNode> resolver)`
    `void` | InMemoryNodeModel.`clearProperty(String key, NodeKeyResolver<ImmutableNode> resolver)` Clears the value of a property.
    `void` | InMemoryNodeModel.`clearProperty(String key, NodeSelector selector, NodeKeyResolver<ImmutableNode> resolver)` Clears a property using a tracked node as root node.
    `List<QueryResult<ImmutableNode>>` | TrackedNodeModel.`clearTree(String key, NodeKeyResolver<ImmutableNode> resolver)`
    `List<QueryResult<ImmutableNode>>` | InMemoryNodeModel.`clearTree(String key, NodeKeyResolver<ImmutableNode> resolver)` Removes the sub trees defined by the given key from this model.
    `List<QueryResult<ImmutableNode>>` | InMemoryNodeModel.`clearTree(String key, NodeSelector selector, NodeKeyResolver<ImmutableNode> resolver)` Clears a whole sub tree using a tracked node as root node.
    `void` | InMemoryNodeModel.`mergeRoot(ImmutableNode node, String rootName, Map<ImmutableNode,?> references, Object rootRef, NodeKeyResolver<ImmutableNode> resolver)` Merges the root node of this model with the specified node.
    `void` | InMemoryNodeModel.`mergeRoot(ImmutableNode node, String rootName, Map<ImmutableNode,?> references, Object rootRef, NodeKeyResolver<ImmutableNode> resolver)` Merges the root node of this model with the specified node.
    `ImmutableNode` | ImmutableNode.`replaceChildren(Collection<ImmutableNode> newChildren)` Returns a new `ImmutableNode` instance which is a copy of this object, but with the children replaced by the ones in the passed in collection.
    `void` | InMemoryNodeModel.`replaceRoot(ImmutableNode newRoot, NodeKeyResolver<ImmutableNode> resolver)` Replaces the root node of this model.
    `ImmutableNode` | NodeSelector.`select(ImmutableNode root, NodeKeyResolver<ImmutableNode> resolver, NodeHandler<ImmutableNode> handler)` Applies this `NodeSelector` on the specified root node.
    `ImmutableNode` | NodeSelector.`select(ImmutableNode root, NodeKeyResolver<ImmutableNode> resolver, NodeHandler<ImmutableNode> handler)` Applies this `NodeSelector` on the specified root node.
    `Collection<NodeSelector>` | InMemoryNodeModel.`selectAndTrackNodes(String key, NodeKeyResolver<ImmutableNode> resolver)` Allows tracking all nodes selected by a key.
    `void` | InMemoryNodeModel.`setProperty(String key, NodeSelector selector, Object value, NodeKeyResolver<ImmutableNode> resolver)` Sets the value of a property using a tracked node as root node.
    `void` | TrackedNodeModel.`setProperty(String key, Object value, NodeKeyResolver<ImmutableNode> resolver)`
    `void` | InMemoryNodeModel.`setProperty(String key, Object value, NodeKeyResolver<ImmutableNode> resolver)`
    `Collection<NodeSelector>` | InMemoryNodeModel.`trackChildNodes(String key, NodeKeyResolver<ImmutableNode> resolver)` Tracks all nodes which are children of the node selected by the passed in key.
    `NodeSelector` | InMemoryNodeModel.`trackChildNodeWithCreation(String key, String childName, NodeKeyResolver<ImmutableNode> resolver)` Tracks a node which is a child of another node selected by the passed in key.
    `void` | InMemoryNodeModel.`trackNode(NodeSelector selector, NodeKeyResolver<ImmutableNode> resolver)` Adds a node to be tracked.

    Constructors in org.apache.commons.configuration2.tree with parameters of type ImmutableNode
    Constructor and Description
    `InMemoryNodeModel(ImmutableNode root)` Creates a new instance of `InMemoryNodeModel` and initializes it from the given root node.

Copyright © 2001–2022 The Apache Software Foundation. All rights reserved.