Interface NodeMatcher<C>
- Type Parameters:
C
- the type of the criterion evaluated by this matcher
- All Known Implementing Classes:
NodeNameMatchers
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 special ExpressionEngine
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
Modifier and TypeMethodDescription<T> boolean
matches
(T node, NodeHandler<T> handler, C criterion) Tests whether the passed in node matches the given criterion.
-
Method Details
-
matches
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
-