org.sonatype.aether.collection
Interface DependencyGraphTransformer

All Known Implementing Classes:
ChainedDependencyGraphTransformer, ConflictIdSorter, ConflictMarker, JavaDependencyContextRefiner, JavaEffectiveScopeCalculator, NearestVersionConflictResolver, NoopDependencyGraphTransformer

public interface DependencyGraphTransformer

Transforms a given dependency graph. Note: Dependency graphs may contain cycles, as such a graph transformer needs to gracefully handle cyclic graphs, e.g. guard against infinite recursion.

Author:
Benjamin Bentmann
See Also:
RepositorySystemSession.getDependencyGraphTransformer()

Method Summary
 DependencyNode transformGraph(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.

Parameters:
node - The root node of the (possibly cyclic!) graph to transform, must not be null.
context - The graph transformation context, must not be null.
Returns:
The result graph of the transformation, never null.
Throws:
RepositoryException - If the transformation failed.


Copyright © 2010-2013. All Rights Reserved.