Class AndDependencyTraverser
- java.lang.Object
-
- org.eclipse.aether.util.graph.traverser.AndDependencyTraverser
-
- All Implemented Interfaces:
DependencyTraverser
public final class AndDependencyTraverser extends Object implements DependencyTraverser
A dependency traverser that combines zero or more other traversers using a logicalAND
. The resulting traverser enables processing of child dependencies if and only if all constituent traversers request traversal.
-
-
Constructor Summary
Constructors Constructor Description AndDependencyTraverser(Collection<? extends DependencyTraverser> traversers)
Creates a new traverser from the specified traversers.AndDependencyTraverser(DependencyTraverser... traversers)
Creates a new traverser from the specified traversers.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description DependencyTraverser
deriveChildTraverser(DependencyCollectionContext context)
Derives a dependency traverser that will be used to decide whether the transitive dependencies of the dependency given in the collection context shall be traversed.boolean
equals(Object obj)
int
hashCode()
static DependencyTraverser
newInstance(DependencyTraverser traverser1, DependencyTraverser traverser2)
Creates a new traverser from the specified traversers.boolean
traverseDependency(Dependency dependency)
Decides whether the dependencies of the specified dependency should be traversed.
-
-
-
Constructor Detail
-
AndDependencyTraverser
public AndDependencyTraverser(DependencyTraverser... traversers)
Creates a new traverser from the specified traversers. PrefernewInstance(DependencyTraverser, DependencyTraverser)
if any of the input traversers might benull
.- Parameters:
traversers
- The traversers to combine, may benull
but must not containnull
elements.
-
AndDependencyTraverser
public AndDependencyTraverser(Collection<? extends DependencyTraverser> traversers)
Creates a new traverser from the specified traversers.- Parameters:
traversers
- The traversers to combine, may benull
but must not containnull
elements.
-
-
Method Detail
-
newInstance
public static DependencyTraverser newInstance(DependencyTraverser traverser1, DependencyTraverser traverser2)
Creates a new traverser from the specified traversers.- Parameters:
traverser1
- The first traverser to combine, may benull
.traverser2
- The second traverser to combine, may benull
.- Returns:
- The combined traverser or
null
if both traversers werenull
.
-
traverseDependency
public boolean traverseDependency(Dependency dependency)
Description copied from interface:DependencyTraverser
Decides whether the dependencies of the specified dependency should be traversed.- Specified by:
traverseDependency
in interfaceDependencyTraverser
- Parameters:
dependency
- The dependency to check, must not benull
.- Returns:
true
if the dependency graph builder should recurse into the specified dependency and process its dependencies,false
otherwise.
-
deriveChildTraverser
public DependencyTraverser deriveChildTraverser(DependencyCollectionContext context)
Description copied from interface:DependencyTraverser
Derives a dependency traverser that will be used to decide whether the transitive dependencies of the dependency given in the collection context shall be traversed. When calculating the child traverser, implementors are strongly advised to simply return the current instance if nothing changed to help save memory.- Specified by:
deriveChildTraverser
in interfaceDependencyTraverser
- Parameters:
context
- The dependency collection context, must not benull
.- Returns:
- The dependency traverser for the target node or
null
if dependencies should be unconditionally traversed in the sub graph.
-
-