Class AndDependencyTraverser
- java.lang.Object
-
- org.eclipse.aether.util.graph.traverser.AndDependencyTraverser
-
- All Implemented Interfaces:
DependencyTraverser
public final class AndDependencyTraverser extends java.lang.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.
-
-
Field Summary
Fields Modifier and Type Field Description private inthashCodeprivate java.util.Set<? extends DependencyTraverser>traversers
-
Constructor Summary
Constructors Modifier Constructor Description AndDependencyTraverser(java.util.Collection<? extends DependencyTraverser> traversers)Creates a new traverser from the specified traversers.privateAndDependencyTraverser(java.util.Set<DependencyTraverser> 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 DependencyTraverserderiveChildTraverser(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.booleanequals(java.lang.Object obj)inthashCode()static DependencyTraversernewInstance(DependencyTraverser traverser1, DependencyTraverser traverser2)Creates a new traverser from the specified traversers.booleantraverseDependency(Dependency dependency)Decides whether the dependencies of the specified dependency should be traversed.
-
-
-
Field Detail
-
traversers
private final java.util.Set<? extends DependencyTraverser> traversers
-
hashCode
private int hashCode
-
-
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 benullbut must not containnullelements.
-
AndDependencyTraverser
public AndDependencyTraverser(java.util.Collection<? extends DependencyTraverser> traversers)
Creates a new traverser from the specified traversers.- Parameters:
traversers- The traversers to combine, may benullbut must not containnullelements.
-
AndDependencyTraverser
private AndDependencyTraverser(java.util.Set<DependencyTraverser> traversers)
-
-
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
nullif both traversers werenull.
-
traverseDependency
public boolean traverseDependency(Dependency dependency)
Description copied from interface:DependencyTraverserDecides whether the dependencies of the specified dependency should be traversed.- Specified by:
traverseDependencyin interfaceDependencyTraverser- Parameters:
dependency- The dependency to check, must not benull.- Returns:
trueif the dependency graph builder should recurse into the specified dependency and process its dependencies,falseotherwise.
-
deriveChildTraverser
public DependencyTraverser deriveChildTraverser(DependencyCollectionContext context)
Description copied from interface:DependencyTraverserDerives 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:
deriveChildTraverserin interfaceDependencyTraverser- Parameters:
context- The dependency collection context, must not benull.- Returns:
- The dependency traverser for the target node or
nullif dependencies should be unconditionally traversed in the sub graph.
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
-