public final class ConflictResolver extends Object implements org.sonatype.aether.collection.DependencyGraphTransformer
Modifier and Type | Class and Description |
---|---|
static class |
ConflictResolver.ConflictContext
A context used to hold information that is relevant for resolving version and scope conflicts.
|
static class |
ConflictResolver.ConflictItem
A conflicting dependency.
|
static class |
ConflictResolver.OptionalitySelector
An extension point of
ConflictResolver that determines the effective optional flag of a dependency from a
potentially conflicting set of derived optionalities. |
static class |
ConflictResolver.ScopeContext
A context used to hold information that is relevant for deriving the scope of a child dependency.
|
static class |
ConflictResolver.ScopeDeriver
An extension point of
ConflictResolver that determines the scope of a dependency in relation to the scope
of its parent. |
static class |
ConflictResolver.ScopeSelector
An extension point of
ConflictResolver that determines the effective scope of a dependency from a
potentially conflicting set of derived scopes . |
static class |
ConflictResolver.VersionSelector
An extension point of
ConflictResolver that determines the winner among conflicting dependencies. |
Modifier and Type | Field and Description |
---|---|
static String |
CONFIG_PROP_VERBOSE
The key in the repository session's
configuration properties used to store a Boolean flag controlling the transformer's verbose mode. |
static String |
NODE_DATA_ORIGINAL_OPTIONALITY
The key in the dependency node's
custom data under which the optional flag of
the dependency before derivation and conflict resolution is stored. |
static String |
NODE_DATA_ORIGINAL_SCOPE
The key in the dependency node's
custom data under which the scope of the
dependency before scope derivation and conflict resolution is stored. |
static String |
NODE_DATA_WINNER
The key in the dependency node's
custom data under which a reference to the
DependencyNode which has won the conflict is stored. |
Constructor and Description |
---|
ConflictResolver(ConflictResolver.VersionSelector versionSelector,
ConflictResolver.ScopeSelector scopeSelector,
ConflictResolver.OptionalitySelector optionalitySelector,
ConflictResolver.ScopeDeriver scopeDeriver)
Creates a new conflict resolver instance with the specified hooks.
|
Modifier and Type | Method and Description |
---|---|
org.sonatype.aether.graph.DependencyNode |
transformGraph(org.sonatype.aether.graph.DependencyNode node,
org.sonatype.aether.collection.DependencyGraphTransformationContext context) |
public static final String CONFIG_PROP_VERBOSE
configuration properties
used to store a Boolean
flag controlling the transformer's verbose mode.public static final String NODE_DATA_WINNER
custom data
under which a reference to the
DependencyNode
which has won the conflict is stored.public static final String NODE_DATA_ORIGINAL_SCOPE
custom data
under which the scope of the
dependency before scope derivation and conflict resolution is stored.public static final String NODE_DATA_ORIGINAL_OPTIONALITY
custom data
under which the optional flag of
the dependency before derivation and conflict resolution is stored.public ConflictResolver(ConflictResolver.VersionSelector versionSelector, ConflictResolver.ScopeSelector scopeSelector, ConflictResolver.OptionalitySelector optionalitySelector, ConflictResolver.ScopeDeriver scopeDeriver)
versionSelector
- The version selector to use, must not be null
.scopeSelector
- The scope selector to use, must not be null
.optionalitySelector
- The optionality selector ot use, must not be null
.scopeDeriver
- The scope deriver to use, must not be null
.public org.sonatype.aether.graph.DependencyNode transformGraph(org.sonatype.aether.graph.DependencyNode node, org.sonatype.aether.collection.DependencyGraphTransformationContext context) throws org.sonatype.aether.RepositoryException
transformGraph
in interface org.sonatype.aether.collection.DependencyGraphTransformer
org.sonatype.aether.RepositoryException
Copyright © 2002–2022 The Apache Software Foundation. All rights reserved.