org.sonatype.aether.util.graph.transformer
Class ConflictIdSorter

java.lang.Object
  extended by org.sonatype.aether.util.graph.transformer.ConflictIdSorter
All Implemented Interfaces:
DependencyGraphTransformer

public class ConflictIdSorter
extends Object
implements DependencyGraphTransformer

A dependency graph transformer that creates a topological sorting of the conflict ids which have been assigned to the dependency nodes. Conflict ids are sorted according to the dependency relation induced by the dependency graph. This transformer will query the key TransformationContextKeys.CONFLICT_IDS in the transformation context for an existing mapping of nodes to their conflicts ids. In absence of this map, the transformer will automatically invoke the ConflictMarker to calculate the conflict ids. When this transformer has executed, the transformation context holds a List<Object> that denotes the topologically sorted conflict ids. The list will be stored using the key TransformationContextKeys.SORTED_CONFLICT_IDS. In addition, the transformer will store a Boolean using the key TransformationContextKeys.CYCLIC_CONFLICT_IDS that indicates whether the conflict ids have cyclic dependencies.

Author:
Benjamin Bentmann

Constructor Summary
ConflictIdSorter()
           
 
Method Summary
 DependencyNode transformGraph(DependencyNode node, DependencyGraphTransformationContext context)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ConflictIdSorter

public ConflictIdSorter()
Method Detail

transformGraph

public DependencyNode transformGraph(DependencyNode node,
                                     DependencyGraphTransformationContext context)
                              throws RepositoryException
Specified by:
transformGraph in interface DependencyGraphTransformer
Throws:
RepositoryException


Copyright © 2010-2011 Sonatype, Inc.. All Rights Reserved.