Package org.eclipse.aether.collection
Interface DependencyTraverser
-
- All Known Implementing Classes:
AndDependencyTraverser
,FatArtifactTraverser
,StaticDependencyTraverser
public interface DependencyTraverser
Decides whether the dependencies of a dependency node should be traversed as well.Note: Implementations must be stateless.
Warning: This hook is called from a hot spot and therefore implementations should pay attention to performance. Among others, implementations should provide a semantic
equals()
method.
-
-
Method Summary
All Methods Instance Methods Abstract 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
traverseDependency(Dependency dependency)
Decides whether the dependencies of the specified dependency should be traversed.
-
-
-
Method Detail
-
traverseDependency
boolean traverseDependency(Dependency dependency)
Decides whether the dependencies of the specified dependency should be traversed.- 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
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. When calculating the child traverser, implementors are strongly advised to simply return the current instance if nothing changed to help save memory.- 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.
-
-