Interface ConflictManager

All Known Implementing Classes:
AbstractConflictManager, FixedConflictManager, LatestCompatibleConflictManager, LatestConflictManager, NoConflictManager, RegexpConflictManager, StrictConflictManager

public interface ConflictManager
  • Method Details

    • resolveConflicts

      Collection<IvyNode> resolveConflicts(IvyNode parent, Collection<IvyNode> conflicts)
      Resolves the eventual conflicts found in the given collection of IvyNode. This method return a Collection of IvyNode which have not been evicted. The given conflicts Collection contains at least one IvyNode. This method can be called with IvyNodes which are not yet loaded. If this conflict manager is not able to resolve conflicts with the current data found in the IvyNodes and need them to be fully loaded, it will return null to indicate that no conflict resolution has been done.
      Parameters:
      parent - the ivy node parent for which the conflict is to be resolved
      conflicts - the collection of IvyNode to check for conflicts
      Returns:
      a Collection of IvyNode which have not been evicted, or null if conflict management resolution is not possible yet
    • getName

      String getName()
    • handleAllBlacklistedRevisions

      void handleAllBlacklistedRevisions(DependencyDescriptor dd, Collection<ModuleRevisionId> foundBlacklisted)
      Method called when all revisions available for a version constraint have been blacklisted, and thus the dependency can't be resolved.

      This will never happen if the conflict manager doesn't blacklist any module, so providing an empty implementation in this case is fine.

      Parameters:
      dd - the dependency descriptor for which all revisions are blacklisted.
      foundBlacklisted - the list of all ModuleRevisionId found which are blacklisted