Package org.eclipse.aether.collection
Interface DependencySelector
- All Known Implementing Classes:
AndDependencySelector
,ExclusionDependencySelector
,OptionalDependencySelector
,ScopeDependencySelector
,StaticDependencySelector
public interface DependencySelector
Decides what dependencies to include in the dependency graph.
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.
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionDerives a dependency selector for the specified collection context.boolean
selectDependency
(Dependency dependency) Decides whether the specified dependency should be included in the dependency graph.
-
Method Details
-
selectDependency
Decides whether the specified dependency should be included in the dependency graph.- Parameters:
dependency
- The dependency to check, must not benull
.- Returns:
false
if the dependency should be excluded from the children of the current node,true
otherwise.
-
deriveChildSelector
Derives a dependency selector for the specified collection context. When calculating the child selector, 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 selector for the target node or
null
if dependencies should be unconditionally included in the sub graph.
-