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.
(DependencyNode node, DependencyGraphTransformationContext context) throws RepositoryExceptionTransforms 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.
node- The root node of the (possibly cyclic!) graph to transform, must not be
context- The graph transformation context, must not be
- The result graph of the transformation, never
RepositoryException- If the transformation failed.