Package org.eclipse.aether.collection
Interface DependencyGraphTransformer
-
- All Known Implementing Classes:
ChainedDependencyGraphTransformer,ConflictIdSorter,ConflictMarker,ConflictResolver,JavaDependencyContextRefiner,NoopDependencyGraphTransformer
public interface DependencyGraphTransformerTransforms a given dependency graph.Note: Implementations must be stateless.
Warning: Dependency graphs may generally contain cycles. As such a graph transformer that cannot assume for sure that cycles have already been eliminated must gracefully handle cyclic graphs, e.g. guard against infinite recursion.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description DependencyNodetransformGraph(DependencyNode node, DependencyGraphTransformationContext context)Transforms the dependency graph denoted by the specified root node.
-
-
-
Method Detail
-
transformGraph
DependencyNode transformGraph(DependencyNode node, DependencyGraphTransformationContext context) throws RepositoryException
Transforms the dependency graph denoted by the specified root node. The transformer may directly change the provided input graph or create a new graph, the former is recommended for performance reasons.- Parameters:
node- The root node of the (possibly cyclic!) graph to transform, must not benull.context- The graph transformation context, must not benull.- Returns:
- The result graph of the transformation, never
null. - Throws:
RepositoryException- If the transformation failed.
-
-