org.eclipse.aether.collection

## Interface DependencyGraphTransformer

- All Known Implementing Classes:
    ChainedDependencyGraphTransformer, ConflictIdSorter, ConflictMarker, ConflictResolver, JavaDependencyContextRefiner, 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. Implementations must be stateless.
  See Also:
    `RepositorySystemSession.getDependencyGraphTransformer()`

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `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, the former is recommended for performance reasons.
      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 The Eclipse Foundation. All Rights Reserved.