Class DefaultPluginVersionResolver
java.lang.Object
org.apache.maven.plugin.version.internal.DefaultPluginVersionResolver
- All Implemented Interfaces:
PluginVersionResolver
@Component(role=PluginVersionResolver.class)
public class DefaultPluginVersionResolver
extends Object
implements PluginVersionResolver
Resolves a version for a plugin.
- Since:
- 3.0
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static class
(package private) static class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Object
private org.codehaus.plexus.logging.Logger
private MetadataReader
private MavenPluginManager
private static final String
private org.eclipse.aether.RepositorySystem
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetCache
(PluginVersionRequest request) private static DefaultPluginVersionResolver.Key
getKey
(PluginVersionRequest request) private void
invalidMetadata
(org.eclipse.aether.RepositorySystemSession session, org.eclipse.aether.RequestTrace trace, org.eclipse.aether.metadata.Metadata metadata, org.eclipse.aether.repository.ArtifactRepository repository, Exception exception) private boolean
isCompatible
(PluginVersionRequest request, String version) private void
mergeMetadata
(DefaultPluginVersionResolver.Versions versions, Metadata source, org.eclipse.aether.repository.ArtifactRepository repository) private void
mergeMetadata
(org.eclipse.aether.RepositorySystemSession session, org.eclipse.aether.RequestTrace trace, DefaultPluginVersionResolver.Versions versions, org.eclipse.aether.metadata.Metadata metadata, org.eclipse.aether.repository.ArtifactRepository repository) resolve
(PluginVersionRequest request) Resolves the version for the specified request.private PluginVersionResult
resolveFromProject
(PluginVersionRequest request) private PluginVersionResult
resolveFromProject
(PluginVersionRequest request, List<Plugin> plugins) private PluginVersionResult
private void
selectVersion
(DefaultPluginVersionResult result, PluginVersionRequest request, DefaultPluginVersionResolver.Versions versions)
-
Field Details
-
REPOSITORY_CONTEXT
- See Also:
-
CACHE_KEY
-
logger
@Requirement private org.codehaus.plexus.logging.Logger logger -
repositorySystem
@Requirement private org.eclipse.aether.RepositorySystem repositorySystem -
metadataReader
-
pluginManager
-
-
Constructor Details
-
DefaultPluginVersionResolver
public DefaultPluginVersionResolver()
-
-
Method Details
-
resolve
public PluginVersionResult resolve(PluginVersionRequest request) throws PluginVersionResolutionException Description copied from interface:PluginVersionResolver
Resolves the version for the specified request.- Specified by:
resolve
in interfacePluginVersionResolver
- Parameters:
request
- The request that holds the details about the plugin and the repositories to consult, must not benull
.- Returns:
- The result of the version resolution, never
null
. - Throws:
PluginVersionResolutionException
- If the plugin version could not be resolved.
-
resolveFromRepository
private PluginVersionResult resolveFromRepository(PluginVersionRequest request) throws PluginVersionResolutionException - Throws:
PluginVersionResolutionException
-
selectVersion
private void selectVersion(DefaultPluginVersionResult result, PluginVersionRequest request, DefaultPluginVersionResolver.Versions versions) throws PluginVersionResolutionException - Throws:
PluginVersionResolutionException
-
isCompatible
-
mergeMetadata
private void mergeMetadata(org.eclipse.aether.RepositorySystemSession session, org.eclipse.aether.RequestTrace trace, DefaultPluginVersionResolver.Versions versions, org.eclipse.aether.metadata.Metadata metadata, org.eclipse.aether.repository.ArtifactRepository repository) -
invalidMetadata
private void invalidMetadata(org.eclipse.aether.RepositorySystemSession session, org.eclipse.aether.RequestTrace trace, org.eclipse.aether.metadata.Metadata metadata, org.eclipse.aether.repository.ArtifactRepository repository, Exception exception) -
mergeMetadata
private void mergeMetadata(DefaultPluginVersionResolver.Versions versions, Metadata source, org.eclipse.aether.repository.ArtifactRepository repository) -
resolveFromProject
-
resolveFromProject
-
getCache
private ConcurrentMap<DefaultPluginVersionResolver.Key,PluginVersionResult> getCache(PluginVersionRequest request) -
getKey
-