public class NodeSelector extends Object
A class for selecting a specific node based on a key or a set of keys.
 An instance of this class is initialized with the key of a node. It is also
 possible to concatenate multiple keys - e.g. if a sub key is to be
 constructed from another sub key. NodeSelector provides the
 select() method which evaluates the wrapped keys on a specified root
 node and returns the resulting unique target node. The class expects that the
 key(s) stored in an instance select exactly one target node. If this is not
 the case, result is null indicating that the selection criteria are
 not sufficient.
 
Implementation node: Instances of this class are immutable. They can be shared between arbitrary components.
| Constructor and Description | 
|---|
NodeSelector(String key)
Creates a new instance of  
NodeSelector and initializes it with
 the key to the target node. | 
| Modifier and Type | Method and Description | 
|---|---|
boolean | 
equals(Object obj)
Compares this object with another one. 
 | 
int | 
hashCode()
Returns a hash code for this object. 
 | 
ImmutableNode | 
select(ImmutableNode root,
      NodeKeyResolver<ImmutableNode> resolver,
      NodeHandler<ImmutableNode> handler)
Applies this  
NodeSelector on the specified root node. | 
NodeSelector | 
subSelector(String subKey)
Creates a sub  
NodeSelector object which uses the key(s) of this
 selector plus the specified key as selection criteria. | 
String | 
toString()
Returns a string representation for this object. 
 | 
public NodeSelector(String key)
NodeSelector and initializes it with
 the key to the target node.key - the keypublic ImmutableNode select(ImmutableNode root, NodeKeyResolver<ImmutableNode> resolver, NodeHandler<ImmutableNode> handler)
NodeSelector on the specified root node. This method
 applies the selection criteria stored in this object and tries to
 determine a single target node. If this is successful, the target node is
 returned. Otherwise, result is null.root - the root node on which to apply this selectorresolver - the NodeKeyResolverhandler - the NodeHandlerpublic NodeSelector subSelector(String subKey)
NodeSelector object which uses the key(s) of this
 selector plus the specified key as selection criteria. This is useful
 when another selection is to be performed on the results of a first
 selector.subKey - the additional key for the sub selectorNodeSelector instancepublic boolean equals(Object obj)
NodeSelector are considered equal if they have the same keys as
 selection criteria.public int hashCode()
Copyright © 2001–2020 The Apache Software Foundation. All rights reserved.