Class FilteringDependencyVisitor
- java.lang.Object
-
- org.eclipse.aether.util.graph.visitor.FilteringDependencyVisitor
-
- All Implemented Interfaces:
DependencyVisitor
public final class FilteringDependencyVisitor extends java.lang.Object implements DependencyVisitor
A dependency visitor that delegates to another visitor if nodes match a filter. Note that in case of a mismatching node, the children of that node are still visisted and presented to the filter.
-
-
Field Summary
Fields Modifier and Type Field Description private Stack<java.lang.Boolean>acceptsprivate DependencyFilterfilterprivate Stack<DependencyNode>parentsprivate DependencyVisitorvisitor
-
Constructor Summary
Constructors Constructor Description FilteringDependencyVisitor(DependencyVisitor visitor, DependencyFilter filter)Creates a new visitor that delegates traversal of nodes matching the given filter to the specified visitor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DependencyFiltergetFilter()Gets the filter being applied before delegation.DependencyVisitorgetVisitor()Gets the visitor to which this visitor delegates to.booleanvisitEnter(DependencyNode node)Notifies the visitor of a node visit before its children have been processed.booleanvisitLeave(DependencyNode node)Notifies the visitor of a node visit after its children have been processed.
-
-
-
Field Detail
-
filter
private final DependencyFilter filter
-
visitor
private final DependencyVisitor visitor
-
accepts
private final Stack<java.lang.Boolean> accepts
-
parents
private final Stack<DependencyNode> parents
-
-
Constructor Detail
-
FilteringDependencyVisitor
public FilteringDependencyVisitor(DependencyVisitor visitor, DependencyFilter filter)
Creates a new visitor that delegates traversal of nodes matching the given filter to the specified visitor.- Parameters:
visitor- The visitor to delegate to, must not benull.filter- The filter to apply, may benullto not filter.
-
-
Method Detail
-
getVisitor
public DependencyVisitor getVisitor()
Gets the visitor to which this visitor delegates to.- Returns:
- The visitor being delegated to, never
null.
-
getFilter
public DependencyFilter getFilter()
Gets the filter being applied before delegation.- Returns:
- The filter being applied or
nullif none.
-
visitEnter
public boolean visitEnter(DependencyNode node)
Description copied from interface:DependencyVisitorNotifies the visitor of a node visit before its children have been processed.- Specified by:
visitEnterin interfaceDependencyVisitor- Parameters:
node- The dependency node being visited, must not benull.- Returns:
trueto visit child nodes of the specified node as well,falseto skip children.
-
visitLeave
public boolean visitLeave(DependencyNode node)
Description copied from interface:DependencyVisitorNotifies the visitor of a node visit after its children have been processed. Note that this method is always invoked regardless whether any children have actually been visited.- Specified by:
visitLeavein interfaceDependencyVisitor- Parameters:
node- The dependency node being visited, must not benull.- Returns:
trueto visit siblings nodes of the specified node as well,falseto skip siblings.
-
-