Class FarthestConflictResolver

  • All Implemented Interfaces:
    ConflictResolver

    @Component(role=ConflictResolver.class,
               hint="farthest")
    public class FarthestConflictResolver
    extends Object
    implements ConflictResolver
    Resolves conflicting artifacts by always selecting the farthest declaration. Farthest is defined as the declaration that has the most transitive steps away from the project being built.
    Since:
    3.0
    Author:
    Mark Hobson
    • Constructor Detail

      • FarthestConflictResolver

        public FarthestConflictResolver()
    • Method Detail

      • resolveConflict

        public ResolutionNode resolveConflict​(ResolutionNode node1,
                                              ResolutionNode node2)
        Description copied from interface: ConflictResolver
        Determines which of the specified versions of an artifact to use when there are conflicting declarations.
        Specified by:
        resolveConflict in interface ConflictResolver
        Parameters:
        node1 - the first artifact declaration
        node2 - the second artifact declaration
        Returns:
        the artifact declaration to use: node1; node2; or nullif this conflict cannot be resolved