# 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
  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>`
  BaseHierarchicalConfiguration.`cloneNodeModel()`
  Creates a clone of the node model.
  `protected NodeModel<ImmutableNode>`
  SubnodeConfiguration.`cloneNodeModel()`
  Creates a clone of the node model.
  `HierarchicalConfiguration<ImmutableNode>`
  BaseHierarchicalConfiguration.`configurationAt(String key)`
  Returns a hierarchical subnode configuration for the node specified by the given key.
  `HierarchicalConfiguration<ImmutableNode>`
  BaseHierarchicalConfiguration.`configurationAt(String key, boolean supportUpdates)`
  Returns a hierarchical sub configuration object that wraps the configuration node specified by the given key.
  `HierarchicalConfiguration<ImmutableNode>`
  DynamicCombinedConfiguration.`configurationAt(String key)`
  `HierarchicalConfiguration<ImmutableNode>`
  DynamicCombinedConfiguration.`configurationAt(String key, boolean supportUpdates)`
  `HierarchicalConfiguration<ImmutableNode>`
  PatternSubtreeConfigurationWrapper.`configurationAt(String key)`
  `HierarchicalConfiguration<ImmutableNode>`
  PatternSubtreeConfigurationWrapper.`configurationAt(String key, boolean supportUpdates)`
  `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.
  `List<HierarchicalConfiguration<ImmutableNode>>`
  DynamicCombinedConfiguration.`configurationsAt(String key)`
  `List<HierarchicalConfiguration<ImmutableNode>>`
  PatternSubtreeConfigurationWrapper.`configurationsAt(String key)`
  Methods in org.apache.commons.configuration2 with parameters of type ImmutableNode
  Modifier and Type
  Method
  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
  Description
  `protected void`
  DynamicCombinedConfiguration.`addNodesInternal(String key, Collection<? extends ImmutableNode> nodes)`
  `protected void`
  PatternSubtreeConfigurationWrapper.`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
  Modifier
  Constructor
  Description
  `protected`
  `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.
  `protected`
  `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)`
  Constructs a new instance.
  ``
  `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
  Modifier
  Constructor
  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
  Description
  `protected static final 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
  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`
  MergeCombiner.`canCombine(ImmutableNode node2, ImmutableNode child, List<ImmutableNode> children2)`
  Tests if the first node can be combined with the second node.
  `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.
  `ImmutableNode`
  MergeCombiner.`combine(ImmutableNode node1, ImmutableNode node2)`
  Combines the given nodes to a new union node.
  `abstract ImmutableNode`
  NodeCombiner.`combine(ImmutableNode node1, ImmutableNode node2)`
  Combines the hierarchies represented by the given root nodes.
  `ImmutableNode`
  OverrideCombiner.`combine(ImmutableNode node1, ImmutableNode node2)`
  Constructs an override combination for the passed in node structures.
  `ImmutableNode`
  UnionCombiner.`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`
  InMemoryNodeModel.`getInMemoryRepresentation()`
  Gets a representation of the data stored in this model in form of a nodes hierarchy of `ImmutableNode` objects.
  `ImmutableNode`
  NodeModel.`getInMemoryRepresentation()`
  Gets a representation of the data stored in this model in form of a nodes hierarchy of `ImmutableNode` objects.
  `ImmutableNode`
  TrackedNodeModel.`getInMemoryRepresentation()`
  Gets a representation of the data stored in this model in form of a nodes hierarchy of `ImmutableNode` objects.
  `ImmutableNode`
  InMemoryNodeModel.`getRootNode()`
  Gets the root node of this mode.
  `ImmutableNode`
  InMemoryNodeModel.`getTrackedNode(NodeSelector selector)`
  Gets 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
  Description
  `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<QueryResult<ImmutableNode>>`
  TrackedNodeModel.`clearTree(String key, NodeKeyResolver<ImmutableNode> resolver)`
  `List<ImmutableNode>`
  ImmutableNode.`getChildren()`
  Gets 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>`
  InMemoryNodeModel.`getNodeHandler()`
  Gets a `NodeHandler` for dealing with the nodes managed by this model.
  `NodeHandler<ImmutableNode>`
  TrackedNodeModel.`getNodeHandler()`
  `NodeHandler<ImmutableNode>`
  InMemoryNodeModel.`getTrackedNodeHandler(NodeSelector selector)`
  Gets a `NodeHandler` for a tracked node.
  `Iterator<ImmutableNode>`
  ImmutableNode.`iterator()`
  `Stream<ImmutableNode>`
  ImmutableNode.`stream()`
  Returns a sequential `Stream` with this node as its source.
  Methods in org.apache.commons.configuration2.tree with parameters of type ImmutableNode
  Modifier and Type
  Method
  Description
  `protected void`
  MergeCombiner.`addAttributes(ImmutableNode.Builder result, ImmutableNode node1, ImmutableNode node2)`
  Handles the attributes during a combination process.
  `protected void`
  OverrideCombiner.`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`
  MergeCombiner.`canCombine(ImmutableNode node2, ImmutableNode child, List<ImmutableNode> children2)`
  Tests if the first node can be combined with the second node.
  `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.
  `ImmutableNode`
  MergeCombiner.`combine(ImmutableNode node1, ImmutableNode node2)`
  Combines the given nodes to a new union node.
  `abstract ImmutableNode`
  NodeCombiner.`combine(ImmutableNode node1, ImmutableNode node2)`
  Combines the hierarchies represented by the given root nodes.
  `ImmutableNode`
  OverrideCombiner.`combine(ImmutableNode node1, ImmutableNode node2)`
  Constructs an override combination for the passed in node structures.
  `ImmutableNode`
  UnionCombiner.`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)`
  Gets 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`
  InMemoryNodeModel.`setRootNode(ImmutableNode newRoot)`
  Sets a new root node for this model.
  `void`
  TrackedNodeModel.`setRootNode(ImmutableNode newRoot)`
  Method parameters in org.apache.commons.configuration2.tree with type arguments of type ImmutableNode
  Modifier and Type
  Method
  Description
  `ImmutableNode.Builder`
  ImmutableNode.Builder.`addChildren(Collection<? extends ImmutableNode> children)`
  Adds multiple child nodes to this builder.
  `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.`addNodes(String key, Collection<? extends ImmutableNode> nodes, NodeKeyResolver<ImmutableNode> resolver)`
  `void`
  TrackedNodeModel.`addNodes(String key, Collection<? extends ImmutableNode> nodes, 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.
  `void`
  TrackedNodeModel.`addProperty(String key, Iterable<?> values, NodeKeyResolver<ImmutableNode> resolver)`
  `protected ImmutableNode`
  MergeCombiner.`canCombine(ImmutableNode node2, ImmutableNode child, List<ImmutableNode> children2)`
  Tests if the first node can be combined with the second node.
  `void`
  InMemoryNodeModel.`clear(NodeKeyResolver<ImmutableNode> resolver)`
  Removes all data from this model.
  `void`
  TrackedNodeModel.`clear(NodeKeyResolver<ImmutableNode> resolver)`
  Removes all data from this model.
  `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.
  `void`
  TrackedNodeModel.`clearProperty(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<QueryResult<ImmutableNode>>`
  TrackedNodeModel.`clearTree(String key, NodeKeyResolver<ImmutableNode> resolver)`
  `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, Object value, NodeKeyResolver<ImmutableNode> resolver)`
  `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)`
  `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
  Modifier
  Constructor
  Description
  ``
  `InMemoryNodeModel(ImmutableNode root)`
  Creates a new instance of `InMemoryNodeModel` and initializes it from the given root node.