Interface NodeMatcher<C>
-
- Type Parameters:
C
- the type of the criterion evaluated by this matcher
- All Known Implementing Classes:
NodeNameMatchers
public interface NodeMatcher<C>
An interface for matching nodes based on specific criteria.
This interface is used by
NodeHandler
to support advanced filtering on the child nodes of a given parent node. This is useful for instance for specialExpressionEngine
implementations which do no direct or strict matches based on node names. An example could be an expression engine that treats the passed in node keys in a case-insensitive manner. Such an engine would use a special case-insensitive matcher when resolving configuration keys.The idea behind this interface is that a matcher has to match a property of a node against a given criterion. This criterion is passed to the matching function so that matchers can be implemented in a state-less fashion and shared between multiple components.
- Since:
- 2.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description <T> boolean
matches(T node, NodeHandler<T> handler, C criterion)
Tests whether the passed in node matches the given criterion.
-
-
-
Method Detail
-
matches
<T> boolean matches(T node, NodeHandler<T> handler, C criterion)
Tests whether the passed in node matches the given criterion.- Type Parameters:
T
- the type of the node- Parameters:
node
- the node to be testedhandler
- the correspondingNodeHandler
criterion
- the criterion to match against- Returns:
- true if this node matches the criterion, false otherwise
-
-