versions = null;
for ( ArtifactAssociation association : associations )
diff --git a/versions-common/src/main/java/org/codehaus/mojo/versions/api/PropertyVersionsBuilder.java b/versions-common/src/main/java/org/codehaus/mojo/versions/api/PropertyVersionsBuilder.java
index 2e3c7a7312..2fe8963834 100644
--- a/versions-common/src/main/java/org/codehaus/mojo/versions/api/PropertyVersionsBuilder.java
+++ b/versions-common/src/main/java/org/codehaus/mojo/versions/api/PropertyVersionsBuilder.java
@@ -26,7 +26,6 @@
import java.util.TreeSet;
import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.codehaus.mojo.versions.ordering.VersionComparator;
@@ -91,7 +90,7 @@ public ArtifactAssociation[] getAssociations()
}
public PropertyVersions newPropertyVersions()
- throws ArtifactMetadataRetrievalException
+ throws VersionRetrievalException
{
return new PropertyVersions( profileId, name, helper, associations );
}
diff --git a/versions-common/src/main/java/org/codehaus/mojo/versions/api/VersionRetrievalException.java b/versions-common/src/main/java/org/codehaus/mojo/versions/api/VersionRetrievalException.java
new file mode 100644
index 0000000000..c1f1a4138e
--- /dev/null
+++ b/versions-common/src/main/java/org/codehaus/mojo/versions/api/VersionRetrievalException.java
@@ -0,0 +1,85 @@
+package org.codehaus.mojo.versions.api;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+/**
+ * Exception thrown if version information cannot be retrieved
+ */
+public class VersionRetrievalException extends Exception
+{
+ /**
+ * Constructs a new exception with {@code null} as its detail message.
+ * The cause is not initialized, and may subsequently be initialized by a
+ * call to {@link #initCause}.
+ */
+ public VersionRetrievalException()
+ {
+ super();
+ }
+
+ /**
+ * Constructs a new exception with the specified detail message. The
+ * cause is not initialized, and may subsequently be initialized by
+ * a call to {@link #initCause}.
+ *
+ * @param message the detail message. The detail message is saved for
+ * later retrieval by the {@link #getMessage()} method.
+ */
+ public VersionRetrievalException( String message )
+ {
+ super( message );
+ }
+
+ /**
+ * Constructs a new exception with the specified cause and a detail
+ * message of {@code (cause==null ? null : cause.toString())} (which
+ * typically contains the class and detail message of {@code cause}).
+ * This constructor is useful for exceptions that are little more than
+ * wrappers for other throwables (for example, {@link
+ * java.security.PrivilegedActionException}).
+ *
+ * @param cause the cause (which is saved for later retrieval by the
+ * {@link #getCause()} method). (A {@code null} value is
+ * permitted, and indicates that the cause is nonexistent or
+ * unknown.)
+ */
+ public VersionRetrievalException( Throwable cause )
+ {
+ super( cause );
+ }
+
+ /**
+ * Constructs a new exception with the specified detail message and
+ * cause. Note that the detail message associated with
+ * {@code cause} is not automatically incorporated in
+ * this exception's detail message.
+ *
+ * @param message the detail message (which is saved for later retrieval
+ * by the {@link #getMessage()} method).
+ * @param cause the cause (which is saved for later retrieval by the
+ * {@link #getCause()} method). (A {@code null} value is
+ * permitted, and indicates that the cause is nonexistent or
+ * unknown.)
+ */
+ public VersionRetrievalException( String message, Throwable cause )
+ {
+ super( message, cause );
+ }
+}
diff --git a/versions-common/src/main/java/org/codehaus/mojo/versions/api/VersionsHelper.java b/versions-common/src/main/java/org/codehaus/mojo/versions/api/VersionsHelper.java
index bd803639d6..28a11879dd 100644
--- a/versions-common/src/main/java/org/codehaus/mojo/versions/api/VersionsHelper.java
+++ b/versions-common/src/main/java/org/codehaus/mojo/versions/api/VersionsHelper.java
@@ -25,7 +25,6 @@
import java.util.Set;
import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
import org.apache.maven.artifact.resolver.ArtifactResolutionException;
import org.apache.maven.artifact.versioning.ArtifactVersion;
@@ -150,11 +149,11 @@ Artifact createDependencyArtifact( String groupId, String artifactId, String ver
* @param usePluginRepositories true
will consult the pluginRepositories, while false
will
* consult the repositories for normal dependencies.
* @return The details of the available artifact versions.
- * @throws ArtifactMetadataRetrievalException When things go wrong.
+ * @throws VersionRetrievalException thrown if version resolution fails
* @since 1.0-alpha-3
*/
ArtifactVersions lookupArtifactVersions( Artifact artifact, boolean usePluginRepositories )
- throws ArtifactMetadataRetrievalException;
+ throws VersionRetrievalException;
/**
* Looks up the updates for a set of dependencies.
@@ -162,12 +161,12 @@ ArtifactVersions lookupArtifactVersions( Artifact artifact, boolean usePluginRep
* @param dependencies The set of {@link Dependency} instances to look up.
* @param usePluginRepositories Search the plugin repositories.
* @return A map, keyed by dependency, with values of type {@link org.codehaus.mojo.versions.api.ArtifactVersions}.
- * @throws ArtifactMetadataRetrievalException When things go wrong.
+ * @throws VersionRetrievalException thrown if version resolution fails
* @since 1.0-beta-1
*/
Map lookupDependenciesUpdates( Set dependencies,
boolean usePluginRepositories )
- throws ArtifactMetadataRetrievalException;
+ throws VersionRetrievalException;
/**
* Creates an {@link org.codehaus.mojo.versions.api.ArtifactVersions} instance from a dependency.
@@ -175,11 +174,11 @@ Map lookupDependenciesUpdates( Set dep
* @param dependency The dependency.
* @param usePluginRepositories Search the plugin repositories.
* @return The details of updates to the dependency.
- * @throws ArtifactMetadataRetrievalException When things go wrong.
+ * @throws VersionRetrievalException thrown if version resolution fails
* @since 1.0-beta-1
*/
ArtifactVersions lookupDependencyUpdates( Dependency dependency, boolean usePluginRepositories )
- throws ArtifactMetadataRetrievalException;
+ throws VersionRetrievalException;
/**
* Looks up the updates for a set of plugins.
@@ -187,11 +186,11 @@ ArtifactVersions lookupDependencyUpdates( Dependency dependency, boolean usePlug
* @param plugins The set of {@link Plugin} instances to look up.
* @param allowSnapshots Include snapshots in the list of updates.
* @return A map, keyed by plugin, with values of type {@link org.codehaus.mojo.versions.api.PluginUpdatesDetails}.
- * @throws ArtifactMetadataRetrievalException When things go wrong.
+ * @throws VersionRetrievalException thrown if version resolution fails
* @since 1.0-beta-1
*/
Map lookupPluginsUpdates( Set plugins, boolean allowSnapshots )
- throws ArtifactMetadataRetrievalException;
+ throws VersionRetrievalException;
/**
* Looks up the updates for a plugin.
@@ -199,11 +198,9 @@ Map lookupPluginsUpdates( Set plugins, boo
* @param plugin The {@link Plugin} instance to look up.
* @param allowSnapshots Include snapshots in the list of updates.
* @return The plugin update details.
- * @throws ArtifactMetadataRetrievalException When things go wrong.
* @since 1.0-beta-1
*/
- PluginUpdatesDetails lookupPluginUpdates( Plugin plugin, boolean allowSnapshots )
- throws ArtifactMetadataRetrievalException;
+ PluginUpdatesDetails lookupPluginUpdates( Plugin plugin, boolean allowSnapshots ) throws VersionRetrievalException;
/**
* Returns an {@link ExpressionEvaluator} for the specified project.
diff --git a/versions-common/src/test/java/org/codehaus/mojo/versions/api/DefaultVersionsHelperTest.java b/versions-common/src/test/java/org/codehaus/mojo/versions/api/DefaultVersionsHelperTest.java
index 047bc3f421..e05546df9e 100644
--- a/versions-common/src/test/java/org/codehaus/mojo/versions/api/DefaultVersionsHelperTest.java
+++ b/versions-common/src/test/java/org/codehaus/mojo/versions/api/DefaultVersionsHelperTest.java
@@ -23,35 +23,36 @@
import java.util.Arrays;
import java.util.List;
import java.util.Map;
+import java.util.Objects;
import java.util.stream.Collectors;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
-import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.repository.DefaultArtifactRepository;
import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout;
import org.apache.maven.artifact.resolver.DefaultArtifactResolver;
import org.apache.maven.artifact.versioning.ArtifactVersion;
-import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
import org.apache.maven.execution.MavenSession;
import org.apache.maven.plugin.MojoExecution;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.logging.Log;
import org.apache.maven.plugin.logging.SystemStreamLog;
import org.apache.maven.plugin.testing.AbstractMojoTestCase;
+import org.apache.maven.plugin.testing.stubs.DefaultArtifactHandlerStub;
import org.apache.maven.project.MavenProject;
-import org.apache.maven.project.artifact.MavenMetadataSource;
import org.apache.maven.repository.RepositorySystem;
import org.apache.maven.settings.Settings;
import org.codehaus.mojo.versions.model.IgnoreVersion;
import org.codehaus.mojo.versions.model.Rule;
import org.codehaus.mojo.versions.model.RuleSet;
import org.codehaus.mojo.versions.ordering.VersionComparators;
+import org.codehaus.mojo.versions.utils.VersionStub;
+import org.eclipse.aether.resolution.VersionRangeRequest;
+import org.eclipse.aether.resolution.VersionRangeResult;
+import org.eclipse.aether.version.Version;
import org.hamcrest.CoreMatchers;
import org.junit.Test;
-import static java.util.Arrays.asList;
import static java.util.Collections.singletonList;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.containsInAnyOrder;
@@ -59,9 +60,7 @@
import static org.hamcrest.Matchers.is;
import static org.hamcrest.core.IsIterableContaining.hasItems;
import static org.mockito.Mockito.any;
-import static org.mockito.Mockito.anyList;
import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.same;
import static org.mockito.Mockito.when;
/**
@@ -73,64 +72,68 @@ public class DefaultVersionsHelperTest extends AbstractMojoTestCase
@Test
public void testPerRuleVersionsIgnored() throws Exception
{
- final ArtifactMetadataSource metadataSource = mock( ArtifactMetadataSource.class );
+ final org.eclipse.aether.RepositorySystem repositorySystem = mock( org.eclipse.aether.RepositorySystem.class );
final Artifact artifact = mock( Artifact.class );
when( artifact.getGroupId() ).thenReturn( "com.mycompany.maven" );
when( artifact.getArtifactId() ).thenReturn( "artifact-one" );
-
- final List artifactVersions = new ArrayList<>();
-
- artifactVersions.add( new DefaultArtifactVersion( "one" ) );
- artifactVersions.add( new DefaultArtifactVersion( "two" ) );
- final ArtifactVersion three = new DefaultArtifactVersion( "three" );
- artifactVersions.add( three );
- final ArtifactVersion oneTwoHundred = new DefaultArtifactVersion( "1.200" );
- artifactVersions.add( oneTwoHundred );
- final ArtifactVersion illegal = new DefaultArtifactVersion( "illegalVersion" );
- artifactVersions.add( illegal );
-
- when( metadataSource.retrieveAvailableVersions( same( artifact ), any( ArtifactRepository.class ), anyList() ) )
- .thenReturn( artifactVersions );
-
- VersionsHelper helper = createHelper( metadataSource );
+ when( artifact.getType() ).thenReturn( "jar" );
+ when( artifact.getArtifactHandler() ).thenReturn( new DefaultArtifactHandlerStub( "default" ) );
+ when( repositorySystem.resolveVersionRange( any(), any( VersionRangeRequest.class ) ) )
+ .then( i -> new VersionRangeResult( i.getArgument( 1 ) )
+ .setVersions( Arrays.asList(
+ new VersionStub( "one" ),
+ new VersionStub( "two" ),
+ new VersionStub( "three" ),
+ new VersionStub( "1.200" ),
+ new VersionStub( "illegalVersion" ) ) ) );
+
+ VersionsHelper helper = createHelper( repositorySystem );
final ArtifactVersions versions = helper.lookupArtifactVersions( artifact, true );
- final List actual = asList( versions.getVersions( true ) );
+ final List actual = Arrays.stream( versions.getVersions( true ) )
+ .map( ArtifactVersion::toString )
+ .collect( Collectors.toList() );
assertEquals( 3, actual.size() );
- assertThat( actual, hasItems( three, oneTwoHundred, illegal ) );
+ assertThat( actual, hasItems( "three", "1.200", "illegalVersion" ) );
}
@Test
public void testGlobalRuleVersionsIgnored() throws Exception
{
- final ArtifactMetadataSource metadataSource = mock( ArtifactMetadataSource.class );
+ final org.eclipse.aether.RepositorySystem repositorySystem = mock( org.eclipse.aether.RepositorySystem.class );
final Artifact artifact = mock( Artifact.class );
when( artifact.getGroupId() ).thenReturn( "other.company" );
when( artifact.getArtifactId() ).thenReturn( "artifact-two" );
+ when( artifact.getType() ).thenReturn( "jar" );
+ when( artifact.getArtifactHandler() ).thenReturn( new DefaultArtifactHandlerStub( "default" ) );
- final List artifactVersions = new ArrayList<>();
+ final List artifactVersions = new ArrayList<>();
- final ArtifactVersion one = new DefaultArtifactVersion( "one" );
- final ArtifactVersion two = new DefaultArtifactVersion( "two" );
- final ArtifactVersion three = new DefaultArtifactVersion( "three" );
+ final Version one = new VersionStub( "one" );
+ final Version two = new VersionStub( "two" );
+ final Version three = new VersionStub( "three" );
artifactVersions.add( one );
artifactVersions.add( two );
- artifactVersions.add( new DefaultArtifactVersion( "three-alpha" ) );
- artifactVersions.add( new DefaultArtifactVersion( "three-beta" ) );
+ artifactVersions.add( new VersionStub( "three-alpha" ) );
+ artifactVersions.add( new VersionStub( "three-beta" ) );
artifactVersions.add( three );
- final ArtifactVersion illegal = new DefaultArtifactVersion( "illegalVersion" );
+ final Version illegal = new VersionStub( "illegalVersion" );
artifactVersions.add( illegal );
- when( metadataSource.retrieveAvailableVersions( same( artifact ), any( ArtifactRepository.class ), anyList() ) )
- .thenReturn( artifactVersions );
+ when( repositorySystem.resolveVersionRange( any(), any( VersionRangeRequest.class ) ) )
+ .then( i -> new VersionRangeResult( i.getArgument( 1 ) )
+ .setVersions( artifactVersions ) );
- VersionsHelper helper = createHelper( metadataSource );
+ VersionsHelper helper = createHelper( repositorySystem );
final ArtifactVersions versions = helper.lookupArtifactVersions( artifact, true );
- final List actual = asList( versions.getVersions( true ) );
+ final List actual = Arrays.stream( versions.getVersions( true ) )
+ .map( ArtifactVersion::toString )
+ .map( VersionStub::new )
+ .collect( Collectors.toList() );
assertEquals( 4, actual.size() );
assertThat( actual, hasItems( one, two, three, illegal ) );
@@ -214,17 +217,18 @@ public void testIsClasspathUriDetectsThatItIsDifferentProtocol() throws Exceptio
private DefaultVersionsHelper createHelper()
throws Exception
{
- return createHelper( new MavenMetadataSource() );
+ return createHelper( null );
}
- private DefaultVersionsHelper createHelper( ArtifactMetadataSource metadataSource ) throws Exception
+ private DefaultVersionsHelper createHelper( org.eclipse.aether.RepositorySystem aetherRepositorySystem )
+ throws Exception
{
final String resourcePath = "/" + getClass().getPackage().getName().replace( '.', '/' ) + "/rules.xml";
- final String rulesUri = getClass().getResource( resourcePath ).toExternalForm();
+ final String rulesUri = Objects.requireNonNull( getClass().getResource( resourcePath ) ).toExternalForm();
return new DefaultVersionsHelper.Builder()
.withRepositorySystem( lookup( RepositorySystem.class ) )
.withArtifactResolver( new DefaultArtifactResolver() )
- .withArtifactMetadataSource( metadataSource )
+ .withAetherRepositorySystem( aetherRepositorySystem )
.withRemoteArtifactRepositories( new ArrayList<>() )
.withRemotePluginRepositories( new ArrayList<>() )
.withLocalRepository( new DefaultArtifactRepository(
diff --git a/versions-common/src/test/java/org/codehaus/mojo/versions/utils/VersionStub.java b/versions-common/src/test/java/org/codehaus/mojo/versions/utils/VersionStub.java
new file mode 100644
index 0000000000..699644eeca
--- /dev/null
+++ b/versions-common/src/test/java/org/codehaus/mojo/versions/utils/VersionStub.java
@@ -0,0 +1,76 @@
+package org.codehaus.mojo.versions.utils;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.eclipse.aether.version.Version;
+
+/**
+ * Stubs the {@link org.eclipse.aether.version.Version}
+ */
+public class VersionStub implements Version
+{
+ private final String version;
+
+ /**
+ * Creates a new instance with the given version string
+ * @param version version to be set
+ */
+ public VersionStub( String version )
+ {
+ assert version != null;
+ this.version = version;
+ }
+
+ @Override
+ public String toString()
+ {
+ return version;
+ }
+
+ @Override
+ public int compareTo( Version o )
+ {
+ return o != null
+ ? version.compareTo( o.toString() )
+ : 1;
+ }
+
+ @Override
+ public boolean equals( Object o )
+ {
+ if ( this == o )
+ {
+ return true;
+ }
+
+ if ( !( o instanceof Version ) )
+ {
+ return false;
+ }
+
+ return version.equals( o.toString() );
+ }
+
+ @Override
+ public int hashCode()
+ {
+ return version.hashCode();
+ }
+}
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsDependencyUpdaterMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsDependencyUpdaterMojo.java
index 9b8cc5c5cd..c710c457b0 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsDependencyUpdaterMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsDependencyUpdaterMojo.java
@@ -31,7 +31,6 @@
import org.apache.commons.lang3.StringUtils;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
import org.apache.maven.model.Dependency;
@@ -157,12 +156,12 @@ public abstract class AbstractVersionsDependencyUpdaterMojo
@Inject
protected AbstractVersionsDependencyUpdaterMojo( RepositorySystem repositorySystem,
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
WagonManager wagonManager,
ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
/**
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsDisplayMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsDisplayMojo.java
index 47057ffd46..a2b0f2c478 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsDisplayMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsDisplayMojo.java
@@ -30,7 +30,6 @@
import org.apache.commons.lang3.StringUtils;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.plugins.annotations.Parameter;
import org.apache.maven.project.MavenProjectBuilder;
@@ -85,12 +84,12 @@ public abstract class AbstractVersionsDisplayMojo
@Inject
protected AbstractVersionsDisplayMojo( RepositorySystem repositorySystem,
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
WagonManager wagonManager,
ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
@SuppressWarnings( "unchecked" )
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsReport.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsReport.java
index 26b993dd34..e80cb61a18 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsReport.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsReport.java
@@ -26,8 +26,6 @@
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.artifact.versioning.ArtifactVersion;
@@ -45,10 +43,12 @@
import org.apache.maven.settings.Settings;
import org.codehaus.mojo.versions.api.ArtifactVersions;
import org.codehaus.mojo.versions.api.DefaultVersionsHelper;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.api.VersionsHelper;
import org.codehaus.mojo.versions.model.RuleSet;
import org.codehaus.mojo.versions.reporting.ReportRendererFactory;
import org.codehaus.plexus.i18n.I18N;
+import org.eclipse.aether.RepositorySystemSession;
/**
* Base class for all versions reports.
@@ -78,12 +78,17 @@ public abstract class AbstractVersionsReport
private boolean skip;
/**
- * The artifact metadata source to use.
- *
- * @since 1.0-alpha-1
+ * The (injected) {@link org.eclipse.aether.RepositorySystem aetherRepositorySystem} instance.
*/
- protected ArtifactMetadataSource artifactMetadataSource;
+ protected org.eclipse.aether.RepositorySystem aetherRepositorySystem;
+ /**
+ * The current {@link RepositorySystemSession}
+ *
+ * @since 2.14.0
+ */
+ @Parameter( defaultValue = "${repositorySystemSession}", readonly = true )
+ protected RepositorySystemSession repositorySystemSession;
/**
* @since 1.0-alpha-3
*/
@@ -197,14 +202,16 @@ public abstract class AbstractVersionsReport
// --------------------- GETTER / SETTER METHODS ---------------------
- protected AbstractVersionsReport( I18N i18n, RepositorySystem repositorySystem, ArtifactResolver artifactResolver,
- ArtifactMetadataSource artifactMetadataSource, WagonManager wagonManager,
+ protected AbstractVersionsReport( I18N i18n, RepositorySystem repositorySystem,
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
+ ArtifactResolver artifactResolver,
+ WagonManager wagonManager,
ReportRendererFactory rendererFactory )
{
this.i18n = i18n;
this.repositorySystem = repositorySystem;
+ this.aetherRepositorySystem = aetherRepositorySystem;
this.artifactResolver = artifactResolver;
- this.artifactMetadataSource = artifactMetadataSource;
this.wagonManager = wagonManager;
this.rendererFactory = rendererFactory;
}
@@ -219,7 +226,8 @@ public VersionsHelper getHelper()
helper = new DefaultVersionsHelper.Builder()
.withRepositorySystem( repositorySystem )
.withArtifactResolver( artifactResolver )
- .withArtifactMetadataSource( artifactMetadataSource )
+ .withAetherRepositorySystem( aetherRepositorySystem )
+ .withRepositorySystemSession( repositorySystemSession )
.withRemoteArtifactRepositories( remoteArtifactRepositories )
.withRemotePluginRepositories( remotePluginRepositories )
.withLocalRepository( localRepository )
@@ -295,7 +303,7 @@ protected ArtifactVersion findLatestVersion( Artifact artifact, VersionRange ver
getHelper().lookupArtifactVersions( artifact, usePluginRepositories );
return artifactVersions.getNewestVersion( versionRange, includeSnapshots );
}
- catch ( ArtifactMetadataRetrievalException e )
+ catch ( VersionRetrievalException e )
{
throw new MavenReportException( e.getMessage(), e );
}
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsUpdaterMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsUpdaterMojo.java
index ad4bbf6425..90d0925b26 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsUpdaterMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsUpdaterMojo.java
@@ -33,8 +33,6 @@
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
import org.apache.maven.artifact.resolver.ArtifactResolutionException;
@@ -58,6 +56,7 @@
import org.codehaus.mojo.versions.api.Property;
import org.codehaus.mojo.versions.api.PropertyVersions;
import org.codehaus.mojo.versions.api.Segment;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.api.VersionsHelper;
import org.codehaus.mojo.versions.model.RuleSet;
import org.codehaus.mojo.versions.ordering.InvalidSegmentException;
@@ -69,6 +68,7 @@
import org.codehaus.plexus.util.IOUtil;
import org.codehaus.plexus.util.WriterFactory;
import org.codehaus.stax2.XMLInputFactory2;
+import org.eclipse.aether.RepositorySystemSession;
/**
* Abstract base class for Versions Mojos.
@@ -89,25 +89,37 @@ public abstract class AbstractVersionsUpdaterMojo
@Parameter( defaultValue = "${project}", required = true, readonly = true )
protected MavenProject project;
- protected RepositorySystem repositorySystem;
+ /**
+ * The (injected) {@link RepositorySystem} instance.
+ */
+ protected final RepositorySystem repositorySystem;
/**
- * @since 1.0-alpha-1
+ * The (injected) {@link org.eclipse.aether.RepositorySystem} instance.
+ */
+ protected org.eclipse.aether.RepositorySystem aetherRepositorySystem;
+
+ /**
+ * The current {@link RepositorySystemSession}
+ *
+ * @since 2.14.0
*/
- protected MavenProjectBuilder projectBuilder;
+ @Parameter( defaultValue = "${repositorySystemSession}", readonly = true )
+ protected RepositorySystemSession repositorySystemSession;
+ /**
+ * The (injected) {@link MavenProjectBuilder} instance.
+ */
/**
* @since 1.0-alpha-1
*/
- @Parameter( defaultValue = "${reactorProjects}", required = true, readonly = true )
- protected List reactorProjects;
+ protected final MavenProjectBuilder projectBuilder;
/**
- * The artifact metadata source to use.
- *
* @since 1.0-alpha-1
*/
- protected ArtifactMetadataSource artifactMetadataSource;
+ @Parameter( defaultValue = "${reactorProjects}", required = true, readonly = true )
+ protected List reactorProjects;
/**
* @since 1.0-alpha-3
@@ -128,9 +140,9 @@ public abstract class AbstractVersionsUpdaterMojo
protected ArtifactRepository localRepository;
/**
- * @since 1.0-alpha-3
+ * The (injected) {@link WagonManager} instance.
*/
- private WagonManager wagonManager;
+ private final WagonManager wagonManager;
/**
* @since 1.0-alpha-3
@@ -242,14 +254,14 @@ public abstract class AbstractVersionsUpdaterMojo
@Inject
protected AbstractVersionsUpdaterMojo( RepositorySystem repositorySystem,
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
WagonManager wagonManager,
ArtifactResolver artifactResolver )
{
this.repositorySystem = repositorySystem;
+ this.aetherRepositorySystem = aetherRepositorySystem;
this.projectBuilder = projectBuilder;
- this.artifactMetadataSource = artifactMetadataSource;
this.wagonManager = wagonManager;
this.artifactResolver = artifactResolver;
}
@@ -261,7 +273,8 @@ public VersionsHelper getHelper() throws MojoExecutionException
helper = new DefaultVersionsHelper.Builder()
.withRepositorySystem( repositorySystem )
.withArtifactResolver( artifactResolver )
- .withArtifactMetadataSource( artifactMetadataSource )
+ .withAetherRepositorySystem( aetherRepositorySystem )
+ .withRepositorySystemSession( repositorySystemSession )
.withRemoteArtifactRepositories( remoteArtifactRepositories )
.withRemotePluginRepositories( remotePluginRepositories )
.withLocalRepository( localRepository )
@@ -346,13 +359,13 @@ protected void validateInput() throws MojoExecutionException
* @param usePluginRepositories Use plugin repositories
* @return The latest version of the specified artifact that matches the specified version range or
* null
if no matching version could be found.
- * @throws ArtifactMetadataRetrievalException If the artifact metadata could not be found.
+ * @throws VersionRetrievalException If the artifact metadata could not be found.
* @throws MojoExecutionException if something goes wrong.
* @since 1.0-alpha-1
*/
protected ArtifactVersion findLatestVersion( Artifact artifact, VersionRange versionRange,
Boolean allowingSnapshots, boolean usePluginRepositories )
- throws ArtifactMetadataRetrievalException, MojoExecutionException
+ throws MojoExecutionException, VersionRetrievalException
{
boolean includeSnapshots = allowingSnapshots != null ? allowingSnapshots : this.allowSnapshots;
final ArtifactVersions artifactVersions = getHelper().lookupArtifactVersions( artifact, usePluginRepositories );
@@ -419,7 +432,7 @@ protected void process( File outFile )
{
getLog().error( e );
}
- catch ( ArtifactMetadataRetrievalException e )
+ catch ( VersionRetrievalException e )
{
throw new MojoExecutionException( e.getMessage(), e );
}
@@ -472,11 +485,11 @@ protected final void writeFile( File outFile, StringBuilder input )
* @throws MojoExecutionException If things go wrong.
* @throws MojoFailureException If things go wrong.
* @throws javax.xml.stream.XMLStreamException If things go wrong.
- * @throws ArtifactMetadataRetrievalException if something goes wrong.
+ * @throws VersionRetrievalException if version retrieval goes wrong
* @since 1.0-alpha-1
*/
protected abstract void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException, ArtifactMetadataRetrievalException;
+ throws MojoExecutionException, MojoFailureException, XMLStreamException, VersionRetrievalException;
/**
* @param artifact The artifact.
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/CompareDependenciesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/CompareDependenciesMojo.java
index 1182945f14..48cf5c0ed0 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/CompareDependenciesMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/CompareDependenciesMojo.java
@@ -33,7 +33,6 @@
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.model.Dependency;
import org.apache.maven.plugin.MojoExecutionException;
@@ -126,13 +125,13 @@ public class CompareDependenciesMojo
@Inject
public CompareDependenciesMojo( RepositorySystem repositorySystem,
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
WagonManager wagonManager,
ArtifactResolver artifactResolver,
MavenProjectBuilder mavenProjectBuilder )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
this.mavenProjectBuilder = mavenProjectBuilder;
}
@@ -144,7 +143,7 @@ public CompareDependenciesMojo( RepositorySystem repositorySystem,
* @see AbstractVersionsUpdaterMojo#update(org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader)
*/
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException
{
if ( this.ignoreRemoteDependencies && this.ignoreRemoteDependencyManagement )
{
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DependencyUpdatesReportMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DependencyUpdatesReportMojo.java
index 69c5a66e67..5ed1df38b9 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DependencyUpdatesReportMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DependencyUpdatesReportMojo.java
@@ -33,8 +33,6 @@
import java.util.stream.Collectors;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.doxia.sink.Sink;
@@ -45,6 +43,7 @@
import org.apache.maven.reporting.MavenReportException;
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.mojo.versions.api.ArtifactVersions;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.reporting.ReportRendererFactory;
import org.codehaus.mojo.versions.reporting.model.DependencyUpdatesModel;
import org.codehaus.mojo.versions.utils.DependencyComparator;
@@ -111,11 +110,12 @@ public class DependencyUpdatesReportMojo extends AbstractVersionsReport extractPluginDependenciesFromPluginsInPluginManagement( Build build )
@@ -592,7 +590,7 @@ public void execute()
logUpdates( getHelper().lookupDependenciesUpdates( pluginDependencies, false ), "Plugin Dependencies" );
}
}
- catch ( ArtifactMetadataRetrievalException e )
+ catch ( VersionRetrievalException e )
{
throw new MojoExecutionException( e.getMessage(), e );
}
@@ -788,15 +786,11 @@ private void logUpdates( Map updates, String secti
/**
* @param pom the pom to update.
- * @throws org.apache.maven.plugin.MojoExecutionException when things go wrong
- * @throws org.apache.maven.plugin.MojoFailureException when things go wrong in a very bad way
- * @throws javax.xml.stream.XMLStreamException when things go wrong with XML streaming
* @see org.codehaus.mojo.versions.AbstractVersionsUpdaterMojo#update(org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader)
* @since 1.0-alpha-1
*/
@Override
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
{
// do nothing
}
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayParentUpdatesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayParentUpdatesMojo.java
index 066aab7e2b..69d3e5bca8 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayParentUpdatesMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayParentUpdatesMojo.java
@@ -20,12 +20,9 @@
*/
import javax.inject.Inject;
-import javax.xml.stream.XMLStreamException;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
@@ -35,6 +32,7 @@
import org.apache.maven.plugins.annotations.Mojo;
import org.apache.maven.project.MavenProjectBuilder;
import org.apache.maven.repository.RepositorySystem;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader;
import org.codehaus.mojo.versions.utils.DependencyBuilder;
@@ -53,12 +51,12 @@ public class DisplayParentUpdatesMojo
@Inject
public DisplayParentUpdatesMojo( RepositorySystem repositorySystem,
- MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
- WagonManager wagonManager,
- ArtifactResolver artifactResolver )
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
+ MavenProjectBuilder projectBuilder,
+ WagonManager wagonManager,
+ ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
@Override
@@ -103,7 +101,7 @@ public void execute()
{
artifactVersion = findLatestVersion( artifact, versionRange, null, false );
}
- catch ( ArtifactMetadataRetrievalException e )
+ catch ( VersionRetrievalException e )
{
throw new MojoExecutionException( e.getMessage(), e );
}
@@ -151,7 +149,6 @@ public void execute()
@Override
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException, ArtifactMetadataRetrievalException
{
}
}
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayPluginUpdatesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayPluginUpdatesMojo.java
index fe15039f7c..2d2352b49d 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayPluginUpdatesMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayPluginUpdatesMojo.java
@@ -50,8 +50,6 @@
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.ArtifactUtils;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
import org.apache.maven.artifact.resolver.ArtifactResolutionException;
@@ -94,6 +92,7 @@
import org.apache.maven.settings.Settings;
import org.codehaus.mojo.versions.api.ArtifactVersions;
import org.codehaus.mojo.versions.api.PomHelper;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.ordering.MavenVersionComparator;
import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader;
import org.codehaus.mojo.versions.utils.DependencyBuilder;
@@ -164,8 +163,8 @@ public class DisplayPluginUpdatesMojo
@Inject
@SuppressWarnings( "checkstyle:ParameterNumber" )
public DisplayPluginUpdatesMojo( RepositorySystem repositorySystem,
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
WagonManager wagonManager,
ArtifactResolver artifactResolver,
LifecycleExecutor lifecycleExecutor,
@@ -173,7 +172,7 @@ public DisplayPluginUpdatesMojo( RepositorySystem repositorySystem,
PluginManager pluginManager,
RuntimeInformation runtimeInformation )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
this.lifecycleExecutor = lifecycleExecutor;
this.modelInterpolator = modelInterpolator;
this.pluginManager = pluginManager;
@@ -535,7 +534,7 @@ public void execute()
}
}
}
- catch ( ArtifactMetadataRetrievalException e )
+ catch ( VersionRetrievalException e )
{
throw new MojoExecutionException( e.getMessage(), e );
}
@@ -1818,14 +1817,10 @@ private Map getReportPlugins( Model model, boolean onlyIncludeIn
/**
* @param pom the pom to update.
- * @throws MojoExecutionException when things go wrong
- * @throws MojoFailureException when things go wrong in a very bad way
- * @throws XMLStreamException when things go wrong with XML streaming
* @see AbstractVersionsUpdaterMojo#update(ModifiedPomXMLEventReader)
* @since 1.0-alpha-1
*/
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
{
// do nothing
}
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayPropertyUpdatesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayPropertyUpdatesMojo.java
index c39f11ac1e..a6586ecb03 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayPropertyUpdatesMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayPropertyUpdatesMojo.java
@@ -20,7 +20,6 @@
*/
import javax.inject.Inject;
-import javax.xml.stream.XMLStreamException;
import java.util.ArrayList;
import java.util.List;
@@ -29,8 +28,6 @@
import java.util.TreeSet;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
@@ -144,12 +141,12 @@ public class DisplayPropertyUpdatesMojo
@Inject
public DisplayPropertyUpdatesMojo( RepositorySystem repositorySystem,
- MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
- WagonManager wagonManager,
- ArtifactResolver artifactResolver )
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
+ MavenProjectBuilder projectBuilder,
+ WagonManager wagonManager,
+ ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
public void execute()
@@ -258,8 +255,8 @@ else if ( updates.isEmpty() )
logLine( false, "" );
}
+ @Override
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException, ArtifactMetadataRetrievalException
{
}
}
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/ForceReleasesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/ForceReleasesMojo.java
index abd249228b..c6986713a3 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/ForceReleasesMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/ForceReleasesMojo.java
@@ -28,8 +28,6 @@
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.artifact.versioning.VersionRange;
@@ -43,6 +41,7 @@
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.mojo.versions.api.ArtifactVersions;
import org.codehaus.mojo.versions.api.PomHelper;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader;
import static java.util.Collections.singletonList;
@@ -69,12 +68,12 @@ public class ForceReleasesMojo
@Inject
public ForceReleasesMojo( RepositorySystem repositorySystem,
- MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
- WagonManager wagonManager,
- ArtifactResolver artifactResolver )
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
+ MavenProjectBuilder projectBuilder,
+ WagonManager wagonManager,
+ ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
/**
@@ -85,7 +84,7 @@ public ForceReleasesMojo( RepositorySystem repositorySystem,
* @see AbstractVersionsUpdaterMojo#update(org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader)
*/
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException, VersionRetrievalException
{
try
{
@@ -107,14 +106,14 @@ protected void update( ModifiedPomXMLEventReader pom )
useReleases( pom, singletonList( getParentDependency() ) );
}
}
- catch ( ArtifactMetadataRetrievalException | IOException e )
+ catch ( IOException e )
{
throw new MojoExecutionException( e.getMessage(), e );
}
}
private void useReleases( ModifiedPomXMLEventReader pom, Collection dependencies )
- throws XMLStreamException, MojoExecutionException, ArtifactMetadataRetrievalException
+ throws XMLStreamException, MojoExecutionException, VersionRetrievalException
{
for ( Dependency dep : dependencies )
{
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/LockSnapshotsMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/LockSnapshotsMojo.java
index 2749037519..9f21a8a4ea 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/LockSnapshotsMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/LockSnapshotsMojo.java
@@ -29,7 +29,6 @@
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.DependencyManagement;
@@ -67,12 +66,12 @@ public class LockSnapshotsMojo
@Inject
public LockSnapshotsMojo( RepositorySystem repositorySystem,
- MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
- WagonManager wagonManager,
- ArtifactResolver artifactResolver )
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
+ MavenProjectBuilder projectBuilder,
+ WagonManager wagonManager,
+ ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
/**
@@ -83,7 +82,7 @@ public LockSnapshotsMojo( RepositorySystem repositorySystem,
* @see AbstractVersionsUpdaterMojo#update(ModifiedPomXMLEventReader)
*/
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException
{
try
{
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/ParentUpdatesReportMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/ParentUpdatesReportMojo.java
index 54adc31619..83bb2ab4b5 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/ParentUpdatesReportMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/ParentUpdatesReportMojo.java
@@ -25,8 +25,6 @@
import java.util.Locale;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.doxia.sink.Sink;
import org.apache.maven.plugins.annotations.Mojo;
@@ -36,6 +34,7 @@
import org.apache.maven.reporting.MavenReportException;
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.mojo.versions.api.ArtifactVersions;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.reporting.ReportRendererFactory;
import org.codehaus.mojo.versions.reporting.model.ParentUpdatesModel;
import org.codehaus.mojo.versions.utils.DependencyBuilder;
@@ -55,11 +54,14 @@ public class ParentUpdatesReportMojo extends AbstractVersionsReport reactorProjects;
@Inject
- protected ParentUpdatesReportMojo( I18N i18n, RepositorySystem repositorySystem, ArtifactResolver artifactResolver,
- ArtifactMetadataSource artifactMetadataSource, WagonManager wagonManager,
+ protected ParentUpdatesReportMojo( I18N i18n,
+ RepositorySystem repositorySystem,
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
+ ArtifactResolver artifactResolver,
+ WagonManager wagonManager,
ReportRendererFactory rendererFactory )
{
- super( i18n, repositorySystem, artifactResolver, artifactMetadataSource, wagonManager, rendererFactory );
+ super( i18n, repositorySystem, aetherRepositorySystem, artifactResolver, wagonManager, rendererFactory );
}
/**
@@ -115,7 +117,7 @@ protected void doGenerateReport( Locale locale, Sink sink ) throws MavenReportEx
.build(), artifactVersions ) )
.render();
}
- catch ( ArtifactMetadataRetrievalException e )
+ catch ( VersionRetrievalException e )
{
throw new MavenReportException( e.getMessage(), e );
}
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/PluginUpdatesReportMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/PluginUpdatesReportMojo.java
index 717dec32a1..40427c1962 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/PluginUpdatesReportMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/PluginUpdatesReportMojo.java
@@ -31,8 +31,6 @@
import java.util.TreeSet;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.doxia.sink.Sink;
import org.apache.maven.model.Plugin;
@@ -42,6 +40,7 @@
import org.apache.maven.reporting.MavenReportException;
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.mojo.versions.api.PluginUpdatesDetails;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.reporting.ReportRendererFactory;
import org.codehaus.mojo.versions.reporting.model.PluginUpdatesModel;
import org.codehaus.mojo.versions.utils.PluginComparator;
@@ -85,11 +84,14 @@ public class PluginUpdatesReportMojo extends AbstractVersionsReport dependencies )
- throws XMLStreamException, MojoExecutionException, ArtifactMetadataRetrievalException
+ throws XMLStreamException, MojoExecutionException, VersionRetrievalException
{
for ( Dependency dep : dependencies )
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetMojo.java
index fef10ea975..b937649c39 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetMojo.java
@@ -42,7 +42,6 @@
import org.apache.maven.artifact.ArtifactUtils;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.model.Model;
import org.apache.maven.model.Parent;
@@ -247,14 +246,12 @@ public class SetMojo extends AbstractVersionsUpdaterMojo
@Inject
public SetMojo( RepositorySystem repositorySystem,
- MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
- WagonManager wagonManager,
- ArtifactResolver artifactResolver,
- Prompter prompter )
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
+ MavenProjectBuilder projectBuilder,
+ WagonManager wagonManager,
+ ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
- this.prompter = prompter;
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
private synchronized void addChange( String groupId, String artifactId, String oldVersion, String newVersion )
@@ -566,7 +563,7 @@ else if ( moduleDir.isDirectory() )
* @throws javax.xml.stream.XMLStreamException when things go wrong.
*/
protected synchronized void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException
{
ContextualLog log = new DelegatingContextualLog( getLog() );
try
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetPropertyMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetPropertyMojo.java
index f2e6787122..459514cd1b 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetPropertyMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetPropertyMojo.java
@@ -27,7 +27,6 @@
import java.util.Map;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.MojoFailureException;
@@ -92,12 +91,12 @@ public class SetPropertyMojo
@Inject
public SetPropertyMojo( RepositorySystem repositorySystem,
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
WagonManager wagonManager,
ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
/**
@@ -108,7 +107,7 @@ public SetPropertyMojo( RepositorySystem repositorySystem,
* @see AbstractVersionsUpdaterMojo#update(ModifiedPomXMLEventReader)
*/
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException
{
Property[] propertiesConfig;
String properties;
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetScmTagMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetScmTagMojo.java
index b11d51d33a..34d5a82dbc 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetScmTagMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetScmTagMojo.java
@@ -8,8 +8,6 @@
import java.util.List;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.model.Scm;
import org.apache.maven.plugin.MojoExecutionException;
@@ -68,12 +66,12 @@ public class SetScmTagMojo extends AbstractVersionsUpdaterMojo
@Inject
public SetScmTagMojo( RepositorySystem repositorySystem,
- MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
- WagonManager wagonManager,
- ArtifactResolver artifactResolver )
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
+ MavenProjectBuilder projectBuilder,
+ WagonManager wagonManager,
+ ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
/**
@@ -96,7 +94,7 @@ public void execute() throws MojoExecutionException, MojoFailureException
@Override
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException, ArtifactMetadataRetrievalException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException
{
try
{
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UnlockSnapshotsMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UnlockSnapshotsMojo.java
index 408cec4349..259ef6616b 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UnlockSnapshotsMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UnlockSnapshotsMojo.java
@@ -29,7 +29,6 @@
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.DependencyManagement;
@@ -66,12 +65,12 @@ public class UnlockSnapshotsMojo extends AbstractVersionsDependencyUpdaterMojo
@Inject
public UnlockSnapshotsMojo( RepositorySystem repositorySystem,
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
WagonManager wagonManager,
ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
/**
@@ -82,7 +81,7 @@ public UnlockSnapshotsMojo( RepositorySystem repositorySystem,
* @see AbstractVersionsUpdaterMojo#update(ModifiedPomXMLEventReader)
*/
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException
{
try
{
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdateChildModulesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdateChildModulesMojo.java
index be50bbeb08..c499904b8c 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdateChildModulesMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdateChildModulesMojo.java
@@ -30,7 +30,6 @@
import org.apache.maven.artifact.ArtifactUtils;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.model.Model;
import org.apache.maven.model.Parent;
@@ -71,12 +70,12 @@ public class UpdateChildModulesMojo
@Inject
public UpdateChildModulesMojo( RepositorySystem repositorySystem,
- MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
- WagonManager wagonManager,
- ArtifactResolver artifactResolver )
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
+ MavenProjectBuilder projectBuilder,
+ WagonManager wagonManager,
+ ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
/**
@@ -209,7 +208,7 @@ else if ( d1 > d2 )
* @throws XMLStreamException when things go wrong.
*/
protected synchronized void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException
{
getLog().debug( "Updating parent to " + sourceVersion );
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdateParentMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdateParentMojo.java
index caa60b4ce8..e17069dceb 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdateParentMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdateParentMojo.java
@@ -29,8 +29,6 @@
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
@@ -45,6 +43,7 @@
import org.codehaus.mojo.versions.api.ArtifactVersions;
import org.codehaus.mojo.versions.api.PomHelper;
import org.codehaus.mojo.versions.api.Segment;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.ordering.InvalidSegmentException;
import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader;
import org.codehaus.mojo.versions.utils.DependencyBuilder;
@@ -137,12 +136,12 @@ public class UpdateParentMojo extends AbstractVersionsUpdaterMojo
@Inject
public UpdateParentMojo( RepositorySystem repositorySystem,
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
WagonManager wagonManager,
ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
/**
@@ -154,7 +153,7 @@ public UpdateParentMojo( RepositorySystem repositorySystem,
* @since 1.0-alpha-1
*/
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException, VersionRetrievalException
{
if ( getProject().getParent() == null )
{
@@ -203,10 +202,6 @@ protected void update( ModifiedPomXMLEventReader pom )
{
throw new MojoExecutionException( "Invalid version range specification: " + initialVersion, e );
}
- catch ( ArtifactMetadataRetrievalException e )
- {
- throw new MojoExecutionException( e.getMessage(), e );
- }
catch ( InvalidSegmentException e )
{
throw new MojoExecutionException( "Invalid segment specification for version " + initialVersion, e );
@@ -214,7 +209,7 @@ protected void update( ModifiedPomXMLEventReader pom )
}
protected ArtifactVersion resolveTargetVersion( String initialVersion )
- throws MojoExecutionException, ArtifactMetadataRetrievalException, InvalidVersionSpecificationException,
+ throws MojoExecutionException, VersionRetrievalException, InvalidVersionSpecificationException,
InvalidSegmentException
{
Artifact artifact = getHelper().createDependencyArtifact( DependencyBuilder
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdatePropertiesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdatePropertiesMojo.java
index 8211e28179..87d501624f 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdatePropertiesMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdatePropertiesMojo.java
@@ -26,7 +26,6 @@
import java.util.Optional;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
@@ -139,12 +138,12 @@ public class UpdatePropertiesMojo extends AbstractVersionsDependencyUpdaterMojo
@Inject
public UpdatePropertiesMojo( RepositorySystem repositorySystem,
- MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
- WagonManager wagonManager,
- ArtifactResolver artifactResolver )
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
+ MavenProjectBuilder projectBuilder,
+ WagonManager wagonManager,
+ ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
/**
@@ -156,7 +155,7 @@ public UpdatePropertiesMojo( RepositorySystem repositorySystem,
* @since 1.0-alpha-1
*/
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException
{
Map propertyVersions = getHelper().getVersionPropertiesMap(
VersionsHelper.VersionPropertiesMapRequest.builder()
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdatePropertyMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdatePropertyMojo.java
index 9e22942623..bf5f6e6a5b 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdatePropertyMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdatePropertyMojo.java
@@ -26,7 +26,6 @@
import java.util.Optional;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
@@ -138,12 +137,12 @@ public class UpdatePropertyMojo
@Inject
public UpdatePropertyMojo( RepositorySystem repositorySystem,
- MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
- WagonManager wagonManager,
- ArtifactResolver artifactResolver )
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
+ MavenProjectBuilder projectBuilder,
+ WagonManager wagonManager,
+ ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
/**
@@ -155,7 +154,7 @@ public UpdatePropertyMojo( RepositorySystem repositorySystem,
* @since 1.0-alpha-1
*/
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException
{
Property propertyConfig = new Property( property );
propertyConfig.setVersion( newVersion );
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseDepVersionMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseDepVersionMojo.java
index bfbc42d9eb..38bae17eef 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseDepVersionMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseDepVersionMojo.java
@@ -27,8 +27,6 @@
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.DependencyManagement;
@@ -40,6 +38,7 @@
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.mojo.versions.api.ArtifactVersions;
import org.codehaus.mojo.versions.api.PomHelper;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader;
import static java.util.Collections.singletonList;
@@ -73,17 +72,17 @@ public class UseDepVersionMojo extends AbstractVersionsDependencyUpdaterMojo
@Inject
public UseDepVersionMojo( RepositorySystem repositorySystem,
- MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
- WagonManager wagonManager,
- ArtifactResolver artifactResolver )
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
+ MavenProjectBuilder projectBuilder,
+ WagonManager wagonManager,
+ ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
@Override
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException, ArtifactMetadataRetrievalException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException, VersionRetrievalException
{
if ( depVersion == null || depVersion.equals( "" ) )
@@ -122,14 +121,14 @@ protected void update( ModifiedPomXMLEventReader pom )
useDepVersion( pom, singletonList( getParentDependency() ) );
}
}
- catch ( ArtifactMetadataRetrievalException | IOException e )
+ catch ( IOException e )
{
throw new MojoExecutionException( e.getMessage(), e );
}
}
private void useDepVersion( ModifiedPomXMLEventReader pom, Collection dependencies )
- throws MojoExecutionException, XMLStreamException, ArtifactMetadataRetrievalException
+ throws MojoExecutionException, XMLStreamException, VersionRetrievalException
{
for ( Dependency dep : dependencies )
{
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestReleasesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestReleasesMojo.java
index 5c80e70909..ccad81aae6 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestReleasesMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestReleasesMojo.java
@@ -31,8 +31,6 @@
import org.apache.maven.artifact.DefaultArtifact;
import org.apache.maven.artifact.handler.DefaultArtifactHandler;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.artifact.versioning.VersionRange;
@@ -46,6 +44,7 @@
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.mojo.versions.api.PomHelper;
import org.codehaus.mojo.versions.api.Segment;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.ordering.InvalidSegmentException;
import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader;
import org.codehaus.mojo.versions.utils.SegmentUtils;
@@ -102,12 +101,12 @@ public class UseLatestReleasesMojo
@Inject
public UseLatestReleasesMojo( RepositorySystem repositorySystem,
- MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
- WagonManager wagonManager,
- ArtifactResolver artifactResolver )
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
+ MavenProjectBuilder projectBuilder,
+ WagonManager wagonManager,
+ ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
/**
@@ -118,7 +117,7 @@ public UseLatestReleasesMojo( RepositorySystem repositorySystem,
* @see org.codehaus.mojo.versions.AbstractVersionsUpdaterMojo#update(org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader)
*/
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException, VersionRetrievalException
{
try
{
@@ -140,14 +139,14 @@ protected void update( ModifiedPomXMLEventReader pom )
useLatestReleases( pom, singletonList( getParentDependency() ) );
}
}
- catch ( ArtifactMetadataRetrievalException | IOException e )
+ catch ( IOException e )
{
throw new MojoExecutionException( e.getMessage(), e );
}
}
private void useLatestReleases( ModifiedPomXMLEventReader pom, Collection dependencies )
- throws XMLStreamException, MojoExecutionException, ArtifactMetadataRetrievalException
+ throws XMLStreamException, MojoExecutionException, VersionRetrievalException
{
Optional unchangedSegment = SegmentUtils.determineUnchangedSegment( allowMajorUpdates,
allowMinorUpdates, allowIncrementalUpdates, getLog() );
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestSnapshotsMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestSnapshotsMojo.java
index 33d1785553..5831078e44 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestSnapshotsMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestSnapshotsMojo.java
@@ -29,8 +29,6 @@
import java.util.Optional;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.DependencyManagement;
@@ -42,6 +40,7 @@
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.mojo.versions.api.PomHelper;
import org.codehaus.mojo.versions.api.Segment;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.ordering.InvalidSegmentException;
import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader;
import org.codehaus.mojo.versions.utils.SegmentUtils;
@@ -91,12 +90,12 @@ public class UseLatestSnapshotsMojo
@Inject
public UseLatestSnapshotsMojo( RepositorySystem repositorySystem,
- MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
- WagonManager wagonManager,
- ArtifactResolver artifactResolver )
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
+ MavenProjectBuilder projectBuilder,
+ WagonManager wagonManager,
+ ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
/**
@@ -107,7 +106,7 @@ public UseLatestSnapshotsMojo( RepositorySystem repositorySystem,
* @see AbstractVersionsUpdaterMojo#update(org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader)
*/
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException, VersionRetrievalException
{
try
{
@@ -129,14 +128,14 @@ protected void update( ModifiedPomXMLEventReader pom )
useLatestSnapshots( pom, singletonList( getParentDependency() ) );
}
}
- catch ( ArtifactMetadataRetrievalException | IOException e )
+ catch ( IOException e )
{
throw new MojoExecutionException( e.getMessage(), e );
}
}
private void useLatestSnapshots( ModifiedPomXMLEventReader pom, Collection dependencies )
- throws XMLStreamException, MojoExecutionException, ArtifactMetadataRetrievalException
+ throws XMLStreamException, MojoExecutionException, VersionRetrievalException
{
Optional unchangedSegment = SegmentUtils.determineUnchangedSegment( allowMajorUpdates,
allowMinorUpdates, allowIncrementalUpdates, getLog() );
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestVersionsMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestVersionsMojo.java
index 57235889ca..7865c7a669 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestVersionsMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestVersionsMojo.java
@@ -27,8 +27,6 @@
import java.util.Optional;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.DependencyManagement;
@@ -40,6 +38,7 @@
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.mojo.versions.api.PomHelper;
import org.codehaus.mojo.versions.api.Segment;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.ordering.InvalidSegmentException;
import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader;
import org.codehaus.mojo.versions.utils.SegmentUtils;
@@ -99,12 +98,12 @@ public class UseLatestVersionsMojo
@Inject
public UseLatestVersionsMojo( RepositorySystem repositorySystem,
- MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
- WagonManager wagonManager,
- ArtifactResolver artifactResolver )
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
+ MavenProjectBuilder projectBuilder,
+ WagonManager wagonManager,
+ ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
@Override
@@ -125,7 +124,7 @@ public void execute() throws MojoExecutionException, MojoFailureException
* @see AbstractVersionsUpdaterMojo#update(org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader)
*/
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException, VersionRetrievalException
{
try
{
@@ -147,14 +146,14 @@ protected void update( ModifiedPomXMLEventReader pom )
useLatestVersions( pom, singletonList( getParentDependency() ) );
}
}
- catch ( ArtifactMetadataRetrievalException | IOException e )
+ catch ( IOException e )
{
throw new MojoExecutionException( e.getMessage(), e );
}
}
private void useLatestVersions( ModifiedPomXMLEventReader pom, Collection dependencies )
- throws XMLStreamException, MojoExecutionException, ArtifactMetadataRetrievalException
+ throws XMLStreamException, MojoExecutionException, VersionRetrievalException
{
Optional unchangedSegment = SegmentUtils.determineUnchangedSegment( allowMajorUpdates,
allowMinorUpdates, allowIncrementalUpdates, getLog() );
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestVersionsMojoBase.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestVersionsMojoBase.java
index 90f0deb7ac..e9f40929a7 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestVersionsMojoBase.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestVersionsMojoBase.java
@@ -29,8 +29,6 @@
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
@@ -39,6 +37,7 @@
import org.apache.maven.project.MavenProjectBuilder;
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.mojo.versions.api.ArtifactVersions;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader;
/**
@@ -49,12 +48,12 @@ public abstract class UseLatestVersionsMojoBase
extends AbstractVersionsDependencyUpdaterMojo
{
public UseLatestVersionsMojoBase( RepositorySystem repositorySystem,
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
WagonManager wagonManager,
ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
/**
@@ -68,7 +67,7 @@ public UseLatestVersionsMojoBase( RepositorySystem repositorySystem,
* @param changeRecorderTitle title for the change recorder records
* @param filters optional array of filters
* @throws XMLStreamException thrown if the POM update doesn't succeed
- * @throws ArtifactMetadataRetrievalException thrown if an artifact cannot be retried
+ * @throws VersionRetrievalException thrown if an artifact versions cannot be retrieved
*/
@SafeVarargs
protected final void useLatestVersions( ModifiedPomXMLEventReader pom,
@@ -77,7 +76,7 @@ protected final void useLatestVersions( ModifiedPomXMLEventReader pom,
newestVersionProducer,
String changeRecorderTitle,
Predicate... filters )
- throws XMLStreamException, MojoExecutionException, ArtifactMetadataRetrievalException
+ throws XMLStreamException, MojoExecutionException, VersionRetrievalException
{
for ( Dependency dep : dependencies )
{
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextReleasesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextReleasesMojo.java
index 05705f90dc..1442c1e696 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextReleasesMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextReleasesMojo.java
@@ -27,8 +27,6 @@
import java.util.regex.Pattern;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.DependencyManagement;
@@ -38,6 +36,7 @@
import org.apache.maven.project.MavenProjectBuilder;
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.mojo.versions.api.PomHelper;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader;
import static java.util.Collections.singletonList;
@@ -65,12 +64,12 @@ public class UseNextReleasesMojo
@Inject
public UseNextReleasesMojo( RepositorySystem repositorySystem,
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
WagonManager wagonManager,
ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
/**
@@ -81,7 +80,7 @@ public UseNextReleasesMojo( RepositorySystem repositorySystem,
* @see AbstractVersionsUpdaterMojo#update(org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader)
*/
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException, ArtifactMetadataRetrievalException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException, VersionRetrievalException
{
try
{
@@ -99,19 +98,20 @@ protected void update( ModifiedPomXMLEventReader pom )
{
useNextReleases( pom, getProject().getDependencies() );
}
+
+ if ( getProject().getParent() != null && isProcessingParent() )
+ {
+ useNextReleases( pom, singletonList( getParentDependency() ) );
+ }
}
- catch ( ArtifactMetadataRetrievalException | IOException e )
+ catch ( IOException e )
{
throw new MojoExecutionException( e.getMessage(), e );
}
- if ( getProject().getParent() != null && isProcessingParent() )
- {
- useNextReleases( pom, singletonList( getParentDependency() ) );
- }
}
private void useNextReleases( ModifiedPomXMLEventReader pom, Collection dependencies )
- throws XMLStreamException, MojoExecutionException, ArtifactMetadataRetrievalException
+ throws XMLStreamException, MojoExecutionException, VersionRetrievalException
{
useLatestVersions( pom, dependencies,
( dep, versions ) -> of( versions.getNewerVersions( dep.getVersion(), false )[0] ),
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextSnapshotsMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextSnapshotsMojo.java
index afaf413029..a6af6d8929 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextSnapshotsMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextSnapshotsMojo.java
@@ -28,8 +28,6 @@
import java.util.Optional;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.DependencyManagement;
@@ -41,6 +39,7 @@
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.mojo.versions.api.PomHelper;
import org.codehaus.mojo.versions.api.Segment;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.ordering.InvalidSegmentException;
import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader;
import org.codehaus.mojo.versions.utils.SegmentUtils;
@@ -90,16 +89,18 @@ public class UseNextSnapshotsMojo
@Inject
public UseNextSnapshotsMojo( RepositorySystem repositorySystem,
- MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
- WagonManager wagonManager,
- ArtifactResolver artifactResolver )
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
+ MavenProjectBuilder projectBuilder,
+ WagonManager wagonManager,
+ ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
// the below is necessary for UseLatestVersionsMojoBase.useLatestVersions to select snapshots
allowSnapshots = true;
}
+
+
/**
* @param pom the pom to update.
* @throws org.apache.maven.plugin.MojoExecutionException when things go wrong
@@ -108,7 +109,7 @@ public UseNextSnapshotsMojo( RepositorySystem repositorySystem,
* @see org.codehaus.mojo.versions.AbstractVersionsUpdaterMojo#update(org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader)
*/
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException, VersionRetrievalException
{
try
{
@@ -127,14 +128,14 @@ protected void update( ModifiedPomXMLEventReader pom )
useNextSnapshots( pom, singletonList( getParentDependency() ) );
}
}
- catch ( ArtifactMetadataRetrievalException | IOException e )
+ catch ( IOException e )
{
throw new MojoExecutionException( e.getMessage(), e );
}
}
private void useNextSnapshots( ModifiedPomXMLEventReader pom, Collection dependencies )
- throws XMLStreamException, MojoExecutionException, ArtifactMetadataRetrievalException
+ throws XMLStreamException, MojoExecutionException, VersionRetrievalException
{
Optional
unchangedSegment = SegmentUtils.determineUnchangedSegment( allowMajorUpdates, allowMinorUpdates,
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextVersionsMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextVersionsMojo.java
index 529e983e40..37b6c954b8 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextVersionsMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextVersionsMojo.java
@@ -26,8 +26,6 @@
import java.util.Collection;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.DependencyManagement;
@@ -37,6 +35,7 @@
import org.apache.maven.project.MavenProjectBuilder;
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.mojo.versions.api.PomHelper;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader;
import static java.util.Collections.singletonList;
@@ -57,12 +56,12 @@ public class UseNextVersionsMojo
@Inject
public UseNextVersionsMojo( RepositorySystem repositorySystem,
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
WagonManager wagonManager,
ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
/**
@@ -73,7 +72,7 @@ public UseNextVersionsMojo( RepositorySystem repositorySystem,
* @see org.codehaus.mojo.versions.AbstractVersionsUpdaterMojo#update(org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader)
*/
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException, VersionRetrievalException
{
try
{
@@ -86,23 +85,25 @@ protected void update( ModifiedPomXMLEventReader pom )
useNextVersions( pom, dependencyManagement.getDependencies() );
}
}
+
if ( getProject().getDependencies() != null && isProcessingDependencies() )
{
useNextVersions( pom, getProject().getDependencies() );
}
+
if ( getProject().getParent() != null && isProcessingParent() )
{
useNextVersions( pom, singletonList( getParentDependency() ) );
}
}
- catch ( ArtifactMetadataRetrievalException | IOException e )
+ catch ( IOException e )
{
throw new MojoExecutionException( e.getMessage(), e );
}
}
private void useNextVersions( ModifiedPomXMLEventReader pom, Collection dependencies )
- throws XMLStreamException, MojoExecutionException, ArtifactMetadataRetrievalException
+ throws XMLStreamException, MojoExecutionException, VersionRetrievalException
{
useLatestVersions( pom, dependencies,
( dep, versions ) -> of( versions.getNewerVersions( dep.getVersion(), allowSnapshots )[0] ),
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseReactorMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseReactorMojo.java
index a8333cb370..a5d962da90 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseReactorMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseReactorMojo.java
@@ -28,8 +28,6 @@
import org.apache.commons.lang3.StringUtils;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.DependencyManagement;
@@ -40,6 +38,7 @@
import org.apache.maven.project.MavenProjectBuilder;
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.mojo.versions.api.PomHelper;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader;
/**
@@ -57,12 +56,12 @@ public class UseReactorMojo
@Inject
public UseReactorMojo( RepositorySystem repositorySystem,
- MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
- WagonManager wagonManager,
- ArtifactResolver artifactResolver )
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
+ MavenProjectBuilder projectBuilder,
+ WagonManager wagonManager,
+ ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
/**
@@ -73,7 +72,7 @@ public UseReactorMojo( RepositorySystem repositorySystem,
* @see AbstractVersionsUpdaterMojo#update(org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader)
*/
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException, VersionRetrievalException
{
try
{
@@ -95,14 +94,14 @@ protected void update( ModifiedPomXMLEventReader pom )
useReactor( pom, getProject().getDependencies() );
}
}
- catch ( ArtifactMetadataRetrievalException | IOException e )
+ catch ( IOException e )
{
throw new MojoExecutionException( e.getMessage(), e );
}
}
private void useReactor( ModifiedPomXMLEventReader pom, Collection dependencies )
- throws XMLStreamException, MojoExecutionException, ArtifactMetadataRetrievalException
+ throws XMLStreamException, MojoExecutionException, VersionRetrievalException
{
for ( Dependency dep : dependencies )
@@ -132,7 +131,7 @@ private void useReactor( ModifiedPomXMLEventReader pom, Collection d
}
private void useReactor( ModifiedPomXMLEventReader pom, MavenProject parent )
- throws XMLStreamException, ArtifactMetadataRetrievalException
+ throws XMLStreamException, VersionRetrievalException
{
for ( MavenProject project : reactorProjects )
{
diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseReleasesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseReleasesMojo.java
index 1a4704f8f2..9105d021ad 100644
--- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseReleasesMojo.java
+++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseReleasesMojo.java
@@ -30,8 +30,6 @@
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.manager.WagonManager;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.model.Dependency;
@@ -44,6 +42,7 @@
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.mojo.versions.api.ArtifactVersions;
import org.codehaus.mojo.versions.api.PomHelper;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader;
import static java.util.Collections.singletonList;
@@ -83,12 +82,12 @@ public class UseReleasesMojo
@Inject
public UseReleasesMojo( RepositorySystem repositorySystem,
- MavenProjectBuilder projectBuilder,
- ArtifactMetadataSource artifactMetadataSource,
- WagonManager wagonManager,
- ArtifactResolver artifactResolver )
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem,
+ MavenProjectBuilder projectBuilder,
+ WagonManager wagonManager,
+ ArtifactResolver artifactResolver )
{
- super( repositorySystem, projectBuilder, artifactMetadataSource, wagonManager, artifactResolver );
+ super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver );
}
/**
@@ -99,7 +98,7 @@ public UseReleasesMojo( RepositorySystem repositorySystem,
* @see org.codehaus.mojo.versions.AbstractVersionsUpdaterMojo#update(org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader)
*/
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
+ throws MojoExecutionException, MojoFailureException, XMLStreamException, VersionRetrievalException
{
try
{
@@ -121,14 +120,14 @@ protected void update( ModifiedPomXMLEventReader pom )
useReleases( pom, singletonList( getParentDependency() ) );
}
}
- catch ( ArtifactMetadataRetrievalException | IOException e )
+ catch ( IOException e )
{
throw new MojoExecutionException( e.getMessage(), e );
}
}
private void useReleases( ModifiedPomXMLEventReader pom, Collection dependencies )
- throws XMLStreamException, MojoExecutionException, ArtifactMetadataRetrievalException
+ throws XMLStreamException, MojoExecutionException, VersionRetrievalException
{
for ( Dependency dep : dependencies )
{
diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/DependencyUpdatesReportMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/DependencyUpdatesReportMojoTest.java
index b7e853e788..9e809deca8 100644
--- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/DependencyUpdatesReportMojoTest.java
+++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/DependencyUpdatesReportMojoTest.java
@@ -28,8 +28,6 @@
import java.util.Locale;
import java.util.Set;
-import org.apache.maven.artifact.DefaultArtifact;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.doxia.module.xhtml5.Xhtml5SinkFactory;
import org.apache.maven.doxia.sink.SinkFactory;
import org.apache.maven.model.Dependency;
@@ -37,7 +35,6 @@
import org.apache.maven.model.Model;
import org.apache.maven.project.MavenProject;
import org.apache.maven.reporting.MavenReportException;
-import org.apache.maven.repository.RepositorySystem;
import org.codehaus.mojo.versions.model.RuleSet;
import org.codehaus.mojo.versions.reporting.ReportRendererFactoryImpl;
import org.codehaus.mojo.versions.utils.DependencyBuilder;
@@ -47,17 +44,15 @@
import org.junit.Test;
import static org.apache.maven.artifact.Artifact.SCOPE_COMPILE;
-import static org.codehaus.mojo.versions.utils.MockUtils.mockArtifactMetadataSource;
+import static org.codehaus.mojo.versions.utils.MockUtils.mockAetherRepositorySystem;
import static org.codehaus.mojo.versions.utils.MockUtils.mockI18N;
+import static org.codehaus.mojo.versions.utils.MockUtils.mockRepositorySystem;
import static org.hamcrest.CoreMatchers.allOf;
import static org.hamcrest.CoreMatchers.containsString;
import static org.hamcrest.CoreMatchers.not;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.anyOf;
import static org.hamcrest.Matchers.matchesPattern;
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.when;
/**
* Basic tests for {@linkplain DependencyUpdatesReportMojo}.
@@ -72,7 +67,7 @@ private static class TestDependencyUpdatesReportMojo extends DependencyUpdatesRe
TestDependencyUpdatesReportMojo()
{
- super( MOCK_I18N, mockRepositorySystem(), null, mockArtifactMetadataSource(),
+ super( MOCK_I18N, mockRepositorySystem(), mockAetherRepositorySystem(), null,
null, new ReportRendererFactoryImpl( MOCK_I18N ) );
siteTool = MockUtils.mockSiteTool();
@@ -88,10 +83,10 @@ public TestDependencyUpdatesReportMojo withDependencies( Dependency... dependenc
return this;
}
- public TestDependencyUpdatesReportMojo withArtifactMetadataSource(
- ArtifactMetadataSource artifactMetadataSource )
+ public TestDependencyUpdatesReportMojo withAetherRepositorySystem(
+ org.eclipse.aether.RepositorySystem repositorySystem )
{
- this.artifactMetadataSource = artifactMetadataSource;
+ this.aetherRepositorySystem = repositorySystem;
return this;
}
@@ -160,20 +155,6 @@ public TestDependencyUpdatesReportMojo withOriginalProperty( String name, String
project.getOriginalModel().getProperties().put( name, value );
return this;
}
-
- private static RepositorySystem mockRepositorySystem()
- {
- RepositorySystem repositorySystem = mock( RepositorySystem.class );
- when( repositorySystem.createDependencyArtifact( any( Dependency.class ) ) ).thenAnswer(
- invocation ->
- {
- Dependency dependency = invocation.getArgument( 0 );
- return new DefaultArtifact( dependency.getGroupId(), dependency.getArtifactId(),
- dependency.getVersion(), dependency.getScope(), dependency.getType(),
- dependency.getClassifier(), null );
- } );
- return repositorySystem;
- }
}
private static Dependency dependencyOf( String artifactId )
@@ -189,13 +170,13 @@ private static Dependency dependencyOf( String artifactId, String version )
}
@Test
- public void testOnlyUpgradableDependencies() throws IOException, MavenReportException
+ public void testOnlyUpgradableDependencies() throws IOException, MavenReportException, IllegalAccessException
{
OutputStream os = new ByteArrayOutputStream();
SinkFactory sinkFactory = new Xhtml5SinkFactory();
new TestDependencyUpdatesReportMojo()
.withOnlyUpgradable( true )
- .withArtifactMetadataSource( mockArtifactMetadataSource( new HashMap()
+ .withAetherRepositorySystem( mockAetherRepositorySystem( new HashMap()
{{
put( "artifactA", new String[] { "1.0.0", "2.0.0" } );
put( "artifactB", new String[] { "1.0.0" } );
@@ -214,7 +195,8 @@ public void testOnlyUpgradableDependencies() throws IOException, MavenReportExce
}
@Test
- public void testOnlyUpgradableWithOriginalDependencyManagement() throws IOException, MavenReportException
+ public void testOnlyUpgradableWithOriginalDependencyManagement()
+ throws IOException, MavenReportException, IllegalAccessException
{
OutputStream os = new ByteArrayOutputStream();
SinkFactory sinkFactory = new Xhtml5SinkFactory();
@@ -231,7 +213,8 @@ public void testOnlyUpgradableWithOriginalDependencyManagement() throws IOExcept
}
@Test
- public void testOnlyUpgradableWithTransitiveDependencyManagement() throws IOException, MavenReportException
+ public void testOnlyUpgradableWithTransitiveDependencyManagement()
+ throws IOException, MavenReportException, IllegalAccessException
{
OutputStream os = new ByteArrayOutputStream();
SinkFactory sinkFactory = new Xhtml5SinkFactory();
@@ -250,7 +233,7 @@ public void testOnlyUpgradableWithTransitiveDependencyManagement() throws IOExce
}
@Test
- public void testOnlyProjectDependencies() throws IOException, MavenReportException
+ public void testOnlyProjectDependencies() throws IOException, MavenReportException, IllegalAccessException
{
OutputStream os = new ByteArrayOutputStream();
SinkFactory sinkFactory = new Xhtml5SinkFactory();
@@ -268,7 +251,8 @@ public void testOnlyProjectDependencies() throws IOException, MavenReportExcepti
}
@Test
- public void testOnlyProjectDependenciesWithIgnoredVersions() throws IOException, MavenReportException
+ public void testOnlyProjectDependenciesWithIgnoredVersions()
+ throws IOException, MavenReportException, IllegalAccessException
{
OutputStream os = new ByteArrayOutputStream();
SinkFactory sinkFactory = new Xhtml5SinkFactory();
@@ -289,12 +273,12 @@ public void testOnlyProjectDependenciesWithIgnoredVersions() throws IOException,
* Dependencies should be rendered in alphabetical order
*/
@Test
- public void testDependenciesInAlphabeticalOrder() throws IOException, MavenReportException
+ public void testDependenciesInAlphabeticalOrder() throws IOException, MavenReportException, IllegalAccessException
{
OutputStream os = new ByteArrayOutputStream();
SinkFactory sinkFactory = new Xhtml5SinkFactory();
new TestDependencyUpdatesReportMojo()
- .withArtifactMetadataSource( mockArtifactMetadataSource( new HashMap()
+ .withAetherRepositorySystem( mockAetherRepositorySystem( new HashMap()
{{
put( "amstrad", new String[] {"1.0.0", "2.0.0"} );
put( "atari", new String[] {"1.0.0", "2.0.0"} );
@@ -313,7 +297,8 @@ public void testDependenciesInAlphabeticalOrder() throws IOException, MavenRepor
* Dependency updates for dependency should override those for dependency management
*/
@Test
- public void testDependenciesShouldOverrideDependencyManagement() throws IOException, MavenReportException
+ public void testDependenciesShouldOverrideDependencyManagement()
+ throws IOException, MavenReportException, IllegalAccessException
{
OutputStream os = new ByteArrayOutputStream();
SinkFactory sinkFactory = new Xhtml5SinkFactory();
@@ -330,7 +315,7 @@ public void testDependenciesShouldOverrideDependencyManagement() throws IOExcept
}
@Test
- public void testWrongReportBounds() throws IOException, MavenReportException
+ public void testWrongReportBounds() throws IOException, MavenReportException, IllegalAccessException
{
OutputStream os = new ByteArrayOutputStream();
SinkFactory sinkFactory = new Xhtml5SinkFactory();
@@ -338,7 +323,7 @@ public void testWrongReportBounds() throws IOException, MavenReportException
.withOnlyUpgradable( true )
.withDependencies(
dependencyOf( "test-artifact" ) )
- .withArtifactMetadataSource( mockArtifactMetadataSource( new HashMap()
+ .withAetherRepositorySystem( mockAetherRepositorySystem( new HashMap()
{{
put( "test-artifact", new String[] { "1.0.0", "2.0.0-M1" } );
}} ) )
@@ -351,7 +336,7 @@ public void testWrongReportBounds() throws IOException, MavenReportException
}
@Test
- public void testIt001Overview() throws IOException, MavenReportException
+ public void testIt001Overview() throws IOException, MavenReportException, IllegalAccessException
{
OutputStream os = new ByteArrayOutputStream();
SinkFactory sinkFactory = new Xhtml5SinkFactory();
@@ -359,7 +344,7 @@ public void testIt001Overview() throws IOException, MavenReportException
.withOnlyUpgradable( true )
.withDependencies(
dependencyOf( "test-artifact", "1.1" ) )
- .withArtifactMetadataSource( mockArtifactMetadataSource( new HashMap()
+ .withAetherRepositorySystem( mockAetherRepositorySystem( new HashMap()
{{
put( "test-artifact", new String[] { "1.1.0-2", "1.1", "1.1.1", "1.1.1-2",
"1.1.2", "1.1.3", "1.2", "1.2.1", "1.2.2", "1.3", "2.0", "2.1", "3.0"} );
@@ -375,7 +360,8 @@ public void testIt001Overview() throws IOException, MavenReportException
}
@Test
- public void testResolvedVersionsWithoutTransitiveDependencyManagement() throws IOException, MavenReportException
+ public void testResolvedVersionsWithoutTransitiveDependencyManagement()
+ throws IOException, MavenReportException, IllegalAccessException
{
OutputStream os = new ByteArrayOutputStream();
SinkFactory sinkFactory = new Xhtml5SinkFactory();
diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/DisplayDependencyUpdatesMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/DisplayDependencyUpdatesMojoTest.java
index 25250b203d..65873c6c5c 100644
--- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/DisplayDependencyUpdatesMojoTest.java
+++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/DisplayDependencyUpdatesMojoTest.java
@@ -47,7 +47,7 @@
import static java.util.Collections.singletonList;
import static org.codehaus.mojo.versions.model.TestIgnoreVersions.TYPE_REGEX;
import static org.codehaus.mojo.versions.model.TestIgnoreVersions.matches;
-import static org.codehaus.mojo.versions.utils.MockUtils.mockArtifactMetadataSource;
+import static org.codehaus.mojo.versions.utils.MockUtils.mockAetherRepositorySystem;
import static org.codehaus.mojo.versions.utils.MockUtils.mockRepositorySystem;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.anyOf;
@@ -112,7 +112,7 @@ public void testRuleSetPresentAndWorking() throws Exception
// This is just an example of how to create it-style tests as unit tests; the advantage is easier debugging
mojo.outputFile = outputFile;
- mojo.artifactMetadataSource = mockArtifactMetadataSource( new HashMap()
+ mojo.aetherRepositorySystem = mockAetherRepositorySystem( new HashMap()
{{
put( "dummy-api", new String[] { "1.0.0", "1.0.1", "1.1.0-M1", "1.2.0-SNAPSHOT" } );
}} );
@@ -157,11 +157,11 @@ public void testVersionsWithQualifiersNotConsideredAsMinorUpdates()
tempPath = Files.createTempFile( "display-dependency-updates", "" );
final File tempFile = tempPath.toFile();
new DisplayDependencyUpdatesMojo( mockRepositorySystem(),
- null, mockArtifactMetadataSource( new HashMap()
+ mockAetherRepositorySystem( new HashMap()
{{
put( "default-dependency", new String[] {"1.0.0", "1.1.0", "2.0.0-SNAPSHOT", "2.0.0-beta",
"2.0.0-rc1"} );
- }} ), null,
+ }} ), null, null,
new StubArtifactResolver( new ArtifactStubFactory(), false, false ) )
{{
setProject( createProject() );
@@ -200,10 +200,10 @@ public void testAllowMajorUpdatesFalse()
tempPath = Files.createTempFile( "display-dependency-updates", "" );
final File tempFile = tempPath.toFile();
new DisplayDependencyUpdatesMojo( mockRepositorySystem(),
- null, mockArtifactMetadataSource( new HashMap()
+ mockAetherRepositorySystem( new HashMap()
{{
put( "default-dependency", new String[] {"1.0.0", "1.1.0", "2.0.0"} );
- }} ), null,
+ }} ), null, null,
new StubArtifactResolver( new ArtifactStubFactory(), false, false ) )
{{
setProject( createProject() );
@@ -241,10 +241,10 @@ public void testAllowMinorUpdatesFalse()
tempPath = Files.createTempFile( "display-dependency-updates", "" );
final File tempFile = tempPath.toFile();
new DisplayDependencyUpdatesMojo( mockRepositorySystem(),
- null, mockArtifactMetadataSource( new HashMap()
+ mockAetherRepositorySystem( new HashMap()
{{
put( "default-dependency", new String[] {"1.0.0", "1.0.1", "1.1.0", "2.0.0"} );
- }} ), null,
+ }} ), null, null,
new StubArtifactResolver( new ArtifactStubFactory(), false, false ) )
{{
setProject( createProject() );
@@ -283,10 +283,10 @@ public void testAllowIncrementalUpdatesFalse()
tempPath = Files.createTempFile( "display-dependency-updates", "" );
final File tempFile = tempPath.toFile();
new DisplayDependencyUpdatesMojo( mockRepositorySystem(),
- null, mockArtifactMetadataSource( new HashMap()
+ mockAetherRepositorySystem( new HashMap()
{{
put( "default-dependency", new String[] {"1.0.0", "1.0.0-1", "1.0.1", "1.1.0", "2.0.0"} );
- }} ), null,
+ }} ), null, null,
new StubArtifactResolver( new ArtifactStubFactory(), false, false ) )
{{
setProject( createProject() );
@@ -326,11 +326,11 @@ public void testVersionsWithQualifiersNotConsideredAsIncrementalUpdates()
tempPath = Files.createTempFile( "display-dependency-updates", "" );
final File tempFile = tempPath.toFile();
new DisplayDependencyUpdatesMojo( mockRepositorySystem(),
- null, mockArtifactMetadataSource( new HashMap()
+ mockAetherRepositorySystem( new HashMap()
{{
put( "default-dependency", new String[] {"1.0.0", "1.1.0", "1.9.0-SNAPSHOT", "1.9.0-beta",
"1.9.0-rc1"} );
- }} ), null,
+ }} ), null, null,
new StubArtifactResolver( new ArtifactStubFactory(), false, false ) )
{{
setProject( createProject() );
@@ -384,7 +384,7 @@ public void testDetermineUpdatedSegment() throws Exception
// This is just an example of how to create it-style tests as unit tests; the advantage is easier debugging
mojo.outputFile = outputFile;
- mojo.artifactMetadataSource = mockArtifactMetadataSource( new HashMap()
+ mojo.aetherRepositorySystem = mockAetherRepositorySystem( new HashMap()
{{
put( "dummy-api", new String[] { "1.0.0", "1.0.1", "1.1.0-M1", "1.2.0-SNAPSHOT" } );
}} );
@@ -415,7 +415,7 @@ public void testVersionInterpolation() throws Exception
// This is just an example of how to create it-style tests as unit tests; the advantage is easier debugging
mojo.outputFile = outputFile;
- mojo.artifactMetadataSource = mockArtifactMetadataSource( new HashMap()
+ mojo.aetherRepositorySystem = mockAetherRepositorySystem( new HashMap()
{{
put( "dummy-api", new String[] { "2.0.1" } );
}} );
diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/DisplayPropertyUpdatesMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/DisplayPropertyUpdatesMojoTest.java
index c9f896a110..a1e78b1a3f 100644
--- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/DisplayPropertyUpdatesMojoTest.java
+++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/DisplayPropertyUpdatesMojoTest.java
@@ -25,7 +25,6 @@
import org.apache.maven.plugin.testing.AbstractMojoTestCase;
import org.apache.maven.plugin.testing.MojoRule;
-import org.codehaus.mojo.versions.utils.MockUtils;
import org.codehaus.mojo.versions.utils.TestUtils;
import org.junit.After;
import org.junit.Before;
@@ -33,6 +32,7 @@
import org.junit.Test;
import static org.apache.commons.codec.CharEncoding.UTF_8;
+import static org.codehaus.mojo.versions.utils.MockUtils.mockAetherRepositorySystem;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.matchesPattern;
import static org.hamcrest.Matchers.not;
@@ -80,7 +80,7 @@ public void testPropertiesFromParent() throws Exception
mojo.outputEncoding = UTF_8;
mojo.outputFile = tempFile.toFile();
mojo.setPluginContext( new HashMap<>() );
- mojo.artifactMetadataSource = MockUtils.mockArtifactMetadataSource();
+ mojo.aetherRepositorySystem = mockAetherRepositorySystem();
mojo.includeParent = true;
mojo.execute();
@@ -101,7 +101,7 @@ public void testDisablePropertiesFromParent() throws Exception
mojo.outputEncoding = UTF_8;
mojo.outputFile = tempFile.toFile();
mojo.setPluginContext( new HashMap<>() );
- mojo.artifactMetadataSource = MockUtils.mockArtifactMetadataSource();
+ mojo.aetherRepositorySystem = mockAetherRepositorySystem();
mojo.includeParent = false;
mojo.execute();
diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/ForceReleasesMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/ForceReleasesMojoTest.java
index 983fa90629..7dd22a8b00 100644
--- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/ForceReleasesMojoTest.java
+++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/ForceReleasesMojoTest.java
@@ -11,6 +11,7 @@
import org.apache.maven.plugin.testing.stubs.StubArtifactResolver;
import org.apache.maven.project.MavenProject;
import org.codehaus.mojo.versions.api.PomHelper;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.change.VersionChange;
import org.codehaus.mojo.versions.utils.DependencyBuilder;
import org.codehaus.mojo.versions.utils.TestChangeRecorder;
@@ -22,7 +23,7 @@
import static java.util.Collections.singletonList;
import static java.util.Collections.singletonMap;
import static org.apache.maven.artifact.Artifact.SCOPE_COMPILE;
-import static org.codehaus.mojo.versions.utils.MockUtils.mockArtifactMetadataSource;
+import static org.codehaus.mojo.versions.utils.MockUtils.mockAetherRepositorySystem;
import static org.codehaus.mojo.versions.utils.MockUtils.mockRepositorySystem;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.hasItem;
@@ -63,8 +64,8 @@ public void setUp() throws IllegalAccessException
{
changeRecorder = new TestChangeRecorder();
mojo = new ForceReleasesMojo( mockRepositorySystem(),
- null, mockArtifactMetadataSource(),
- null, new StubArtifactResolver( new ArtifactStubFactory(),
+ mockAetherRepositorySystem(),
+ null, null, new StubArtifactResolver( new ArtifactStubFactory(),
false, false ) );
setVariableValueToObject( mojo, "reactorProjects", emptyList() );
setVariableValueToObject( mojo, "changeRecorder", changeRecorder );
@@ -101,6 +102,10 @@ public void testProcessParent()
.thenReturn( mojo.getProject().getModel() );
mojo.update( null );
}
+ catch ( VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(),
hasItem( new VersionChange( "default-group", "artifactA",
"1.0.0-SNAPSHOT", "1.0.0" ) ) );
@@ -125,6 +130,10 @@ public void testReplaceSnapshotWithRelease()
.thenReturn( mojo.getProject().getModel() );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(),
hasItem( new VersionChange( "default-group", "artifactA",
"1.0.0-SNAPSHOT", "1.0.0" ) ) );
@@ -149,6 +158,10 @@ public void testUpgrade()
.thenReturn( mojo.getProject().getModel() );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(),
hasItem( new VersionChange( "default-group", "artifactA",
"1.1.0-SNAPSHOT", "2.0.0" ) ) );
@@ -173,6 +186,10 @@ public void testDowngrade()
.thenReturn( mojo.getProject().getModel() );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(),
hasItem( new VersionChange( "default-group", "artifactA",
"2.1.0-SNAPSHOT", "2.0.0" ) ) );
@@ -182,7 +199,7 @@ public void testDowngrade()
public void testFailIfNotReplaced()
throws MojoExecutionException, XMLStreamException, MojoFailureException
{
- mojo.artifactMetadataSource = mockArtifactMetadataSource( singletonMap( "test-artifact",
+ mojo.aetherRepositorySystem = mockAetherRepositorySystem( singletonMap( "test-artifact",
new String[] {} ) );
mojo.getProject().setDependencies( singletonList( DependencyBuilder.newBuilder()
.withGroupId( "default-group" )
@@ -205,5 +222,9 @@ public void testFailIfNotReplaced()
{
assertThat( e.getMessage(), startsWith( "No matching" ) );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
}
}
diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/ParentUpdatesReportMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/ParentUpdatesReportMojoTest.java
index 7854a027f1..06e395b5fc 100644
--- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/ParentUpdatesReportMojoTest.java
+++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/ParentUpdatesReportMojoTest.java
@@ -31,13 +31,14 @@
import org.apache.maven.doxia.module.xhtml5.Xhtml5SinkFactory;
import org.apache.maven.doxia.sink.SinkFactory;
import org.apache.maven.model.Model;
+import org.apache.maven.plugin.testing.stubs.DefaultArtifactHandlerStub;
import org.apache.maven.project.MavenProject;
import org.apache.maven.reporting.MavenReportException;
import org.codehaus.mojo.versions.reporting.ReportRendererFactoryImpl;
import org.codehaus.plexus.i18n.I18N;
import org.junit.Test;
-import static org.codehaus.mojo.versions.utils.MockUtils.mockArtifactMetadataSource;
+import static org.codehaus.mojo.versions.utils.MockUtils.mockAetherRepositorySystem;
import static org.codehaus.mojo.versions.utils.MockUtils.mockI18N;
import static org.codehaus.mojo.versions.utils.MockUtils.mockRepositorySystem;
import static org.hamcrest.CoreMatchers.containsString;
@@ -57,11 +58,11 @@ public void testAllowSnapshots() throws IOException, MavenReportException
{
OutputStream os = new ByteArrayOutputStream();
SinkFactory sinkFactory = new Xhtml5SinkFactory();
- new ParentUpdatesReportMojo( MOCK_I18N, mockRepositorySystem(), null,
- mockArtifactMetadataSource( new HashMap()
+ new ParentUpdatesReportMojo( MOCK_I18N, mockRepositorySystem(),
+ mockAetherRepositorySystem( new HashMap()
{{
put( "default-artifact", new String[] {"1.0.0", "1.0.1", "1.1.0", "2.0.0", "2.0.1-SNAPSHOT"} );
- }} ), null, new ReportRendererFactoryImpl( MOCK_I18N ) )
+ }} ), null, null, new ReportRendererFactoryImpl( MOCK_I18N ) )
{{
allowSnapshots = true;
project = new MavenProject( new Model()
@@ -79,7 +80,8 @@ public void testAllowSnapshots() throws IOException, MavenReportException
reactorProjects = new ArrayList<>();
project.setParentArtifact( new DefaultArtifact( project.getParent().getGroupId(),
project.getParent().getArtifactId(), project.getParent().getVersion(),
- Artifact.SCOPE_COMPILE, "pom", "default", null ) );
+ Artifact.SCOPE_COMPILE, "pom", "default",
+ new DefaultArtifactHandlerStub( "default" ) ) );
}}.generate( sinkFactory.createSink( os ), sinkFactory, Locale.getDefault() );
String output = os.toString();
diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/PluginUpdatesReportMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/PluginUpdatesReportMojoTest.java
index 46053944ce..65437fea57 100644
--- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/PluginUpdatesReportMojoTest.java
+++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/PluginUpdatesReportMojoTest.java
@@ -29,12 +29,12 @@
import java.util.Set;
import org.apache.maven.artifact.DefaultArtifact;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.doxia.module.xhtml5.Xhtml5SinkFactory;
import org.apache.maven.doxia.sink.SinkFactory;
import org.apache.maven.model.Build;
import org.apache.maven.model.Plugin;
import org.apache.maven.model.PluginManagement;
+import org.apache.maven.plugin.testing.stubs.DefaultArtifactHandlerStub;
import org.apache.maven.project.MavenProject;
import org.apache.maven.reporting.MavenReportException;
import org.apache.maven.repository.RepositorySystem;
@@ -45,7 +45,7 @@
import org.junit.Test;
import static org.apache.maven.artifact.Artifact.SCOPE_RUNTIME;
-import static org.codehaus.mojo.versions.utils.MockUtils.mockArtifactMetadataSource;
+import static org.codehaus.mojo.versions.utils.MockUtils.mockAetherRepositorySystem;
import static org.codehaus.mojo.versions.utils.MockUtils.mockI18N;
import static org.hamcrest.CoreMatchers.containsString;
import static org.hamcrest.CoreMatchers.not;
@@ -68,15 +68,13 @@ private static class TestPluginUpdatesReportMojo extends PluginUpdatesReportMojo
static final I18N MOCK_I18N = mockI18N();
TestPluginUpdatesReportMojo()
{
- super( MOCK_I18N, mockRepositorySystem(), null, mockArtifactMetadataSource(),
- null, new ReportRendererFactoryImpl( MOCK_I18N ) );
+ super( MOCK_I18N, mockRepositorySystem(), mockAetherRepositorySystem(),
+ null, null, new ReportRendererFactoryImpl( MOCK_I18N ) );
siteTool = MockUtils.mockSiteTool();
project = new MavenProject();
project.setBuild( new Build() );
project.getBuild().setPluginManagement( new PluginManagement() );
-
- artifactMetadataSource = mockArtifactMetadataSource();
}
public TestPluginUpdatesReportMojo withPlugins( Plugin... plugins )
@@ -85,10 +83,10 @@ public TestPluginUpdatesReportMojo withPlugins( Plugin... plugins )
return this;
}
- public TestPluginUpdatesReportMojo withArtifactMetadataSource(
- ArtifactMetadataSource artifactMetadataSource )
+ public TestPluginUpdatesReportMojo withAetherRepositorySystem(
+ org.eclipse.aether.RepositorySystem repositorySystem )
{
- this.artifactMetadataSource = artifactMetadataSource;
+ this.aetherRepositorySystem = repositorySystem;
return this;
}
@@ -132,7 +130,8 @@ private static RepositorySystem mockRepositorySystem()
{
Plugin plugin = invocation.getArgument( 0 );
return new DefaultArtifact( plugin.getGroupId(), plugin.getArtifactId(), plugin.getVersion(),
- SCOPE_RUNTIME, "maven-plugin", "jar", null );
+ SCOPE_RUNTIME, "maven-plugin", "jar",
+ new DefaultArtifactHandlerStub( "default" ) );
} );
return repositorySystem;
}
@@ -161,7 +160,7 @@ public void testOnlyUpgradablePlugins() throws IOException, MavenReportException
OutputStream os = new ByteArrayOutputStream();
SinkFactory sinkFactory = new Xhtml5SinkFactory();
new TestPluginUpdatesReportMojo()
- .withArtifactMetadataSource( mockArtifactMetadataSource( new HashMap()
+ .withAetherRepositorySystem( mockAetherRepositorySystem( new HashMap()
{{
put( "artifactA", new String[] { "1.0.0", "2.0.0" } );
put( "artifactB", new String[] { "1.0.0" } );
@@ -185,7 +184,7 @@ public void testOnlyUpgradableWithPluginManagement() throws IOException, MavenRe
OutputStream os = new ByteArrayOutputStream();
SinkFactory sinkFactory = new Xhtml5SinkFactory();
new TestPluginUpdatesReportMojo()
- .withArtifactMetadataSource( mockArtifactMetadataSource( new HashMap()
+ .withAetherRepositorySystem( mockAetherRepositorySystem( new HashMap()
{{
put( "artifactA", new String[] { "1.0.0", "2.0.0" } );
put( "artifactB", new String[] { "1.0.0" } );
diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/PropertyUpdatesReportMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/PropertyUpdatesReportMojoTest.java
index f0adb37f64..c62ac79d10 100644
--- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/PropertyUpdatesReportMojoTest.java
+++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/PropertyUpdatesReportMojoTest.java
@@ -23,7 +23,6 @@
import java.io.OutputStream;
import java.util.Locale;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.doxia.module.xhtml5.Xhtml5SinkFactory;
import org.apache.maven.doxia.sink.SinkFactory;
import org.apache.maven.doxia.tools.SiteTool;
@@ -33,7 +32,7 @@
import org.junit.Rule;
import org.junit.Test;
-import static org.codehaus.mojo.versions.utils.MockUtils.mockArtifactMetadataSource;
+import static org.codehaus.mojo.versions.utils.MockUtils.mockAetherRepositorySystem;
import static org.codehaus.mojo.versions.utils.MockUtils.mockSiteTool;
import static org.hamcrest.CoreMatchers.containsString;
import static org.hamcrest.MatcherAssert.assertThat;
@@ -46,7 +45,7 @@ public class PropertyUpdatesReportMojoTest extends AbstractMojoTestCase
{
@Rule
public MojoRule mojoRule = new MojoRule( this );
- private static final ArtifactMetadataSource ARTIFACT_METADATA_SOURCE = mockArtifactMetadataSource();
+ private static final org.eclipse.aether.RepositorySystem AETHER_REPOSITORY_SYSTEM = mockAetherRepositorySystem();
private static final SiteTool SITE_TOOL = mockSiteTool();
private static final StubArtifactRepository LOCAL_REPOSITORY = new StubArtifactRepository( "" );
@@ -62,7 +61,7 @@ public void testIncludeParentTrueShouldContainProperty() throws Exception
"property-updates-report" );
setVariableValueToObject( mojo, "localRepository", LOCAL_REPOSITORY );
setVariableValueToObject( mojo, "siteTool", SITE_TOOL );
- setVariableValueToObject( mojo, "artifactMetadataSource", ARTIFACT_METADATA_SOURCE );
+ setVariableValueToObject( mojo, "aetherRepositorySystem", AETHER_REPOSITORY_SYSTEM );
setVariableValueToObject( mojo, "includeParent", true );
mojo.generate( sinkFactory.createSink( os ), sinkFactory, Locale.getDefault() );
@@ -85,7 +84,7 @@ public void testIncludeParentFalseShouldNotContainProperty() throws Exception
"property-updates-report" );
setVariableValueToObject( mojo, "localRepository", new StubArtifactRepository( "" ) );
setVariableValueToObject( mojo, "siteTool", SITE_TOOL );
- setVariableValueToObject( mojo, "artifactMetadataSource", ARTIFACT_METADATA_SOURCE );
+ setVariableValueToObject( mojo, "aetherRepositorySystem", AETHER_REPOSITORY_SYSTEM );
setVariableValueToObject( mojo, "includeParent", false );
mojo.generate( sinkFactory.createSink( os ), sinkFactory, Locale.getDefault() );
diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/SeparatePatternsForIncludesAnExcludesTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/SeparatePatternsForIncludesAnExcludesTest.java
index f17e63817c..4ebed3b4bf 100644
--- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/SeparatePatternsForIncludesAnExcludesTest.java
+++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/SeparatePatternsForIncludesAnExcludesTest.java
@@ -1,11 +1,7 @@
package org.codehaus.mojo.versions;
-import javax.xml.stream.XMLStreamException;
-
import java.util.List;
-import org.apache.maven.plugin.MojoExecutionException;
-import org.apache.maven.plugin.MojoFailureException;
import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader;
import org.junit.Before;
import org.junit.Test;
@@ -23,8 +19,8 @@ public void setUp()
{
mojo = new AbstractVersionsDependencyUpdaterMojo( null, null, null, null, null )
{
+ @Override
protected void update( ModifiedPomXMLEventReader pom )
- throws MojoExecutionException, MojoFailureException, XMLStreamException
{
}
};
diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/SetMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/SetMojoTest.java
index bce9eaa048..6f767ebbfa 100644
--- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/SetMojoTest.java
+++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/SetMojoTest.java
@@ -48,7 +48,7 @@ public void tearDown() throws IOException
@Test
public void testGetIncrementedVersion() throws MojoExecutionException
{
- new SetMojo( null, null, null, null, null, null )
+ new SetMojo( null, null, null, null, null )
{
{
assertThat( getIncrementedVersion( "1.0.0", null ), is( "1.0.1-SNAPSHOT" ) );
@@ -63,7 +63,7 @@ public void testGetIncrementedVersion() throws MojoExecutionException
@Test
public void testNextSnapshotIndexLowerBound()
{
- new SetMojo( null, null, null, null, null, null )
+ new SetMojo( null, null, null, null, null )
{
{
try
@@ -83,7 +83,7 @@ public void testNextSnapshotIndexLowerBound()
@Test
public void testNextSnapshotIndexUpperBound()
{
- new SetMojo( null, null, null, null, null, null )
+ new SetMojo( null, null, null, null, null )
{
{
try
@@ -105,7 +105,7 @@ public void testNextSnapshotIndexWithoutNextSnapshot() throws MojoFailureExcepti
{
try
{
- new SetMojo( null, null, null, null, null, null )
+ new SetMojo( null, null, null, null, null )
{
{
project = new MavenProject();
diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/SetPropertyMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/SetPropertyMojoTest.java
index 1005ade873..b4cffc0894 100644
--- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/SetPropertyMojoTest.java
+++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/SetPropertyMojoTest.java
@@ -19,26 +19,29 @@
* under the License.
*/
-import java.io.File;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
-import java.util.Arrays;
-import java.util.Objects;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.testing.AbstractMojoTestCase;
import org.apache.maven.plugin.testing.MojoRule;
-import org.apache.maven.plugin.testing.stubs.StubArtifactRepository;
+import org.eclipse.aether.resolution.VersionRangeRequest;
+import org.eclipse.aether.resolution.VersionRangeResult;
import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
-import static java.nio.file.StandardCopyOption.REPLACE_EXISTING;
+import static org.codehaus.mojo.versions.utils.TestUtils.copyDir;
+import static org.codehaus.mojo.versions.utils.TestUtils.createTempDir;
+import static org.codehaus.mojo.versions.utils.TestUtils.tearDownTempDir;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.containsString;
import static org.hamcrest.Matchers.matchesPattern;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
/**
* Basic tests for {@linkplain SetPropertyMojoTest}.
@@ -56,7 +59,7 @@ public class SetPropertyMojoTest extends AbstractMojoTestCase
public void setUp() throws Exception
{
super.setUp();
- pomDir = Files.createTempDirectory( "set-property-" );
+ pomDir = createTempDir( "set-property" );
}
@After
@@ -64,26 +67,25 @@ public void tearDown() throws Exception
{
try
{
- if ( pomDir != null && pomDir.toFile().exists() )
- {
- Arrays.stream( Objects.requireNonNull( pomDir.toFile().listFiles() ) ).forEach( File::delete );
- pomDir.toFile().delete();
- }
+ tearDownTempDir( pomDir );
}
finally
{
super.tearDown();
}
}
- @Test
+ @Test
public void testNullNewVersion()
throws Exception
{
- Files.copy( Paths.get( "src/test/resources/org/codehaus/mojo/set-property/null-new-version/pom.xml" ),
- Paths.get( pomDir.toString(), "pom.xml" ), REPLACE_EXISTING );
+ copyDir( Paths.get( "src/test/resources/org/codehaus/mojo/set-property/null-new-version" ), pomDir );
SetPropertyMojo mojo = (SetPropertyMojo) mojoRule.lookupConfiguredMojo( pomDir.toFile(),
"set-property" );
- mojo.localRepository = new StubArtifactRepository( pomDir.toString() );
+
+ mojo.aetherRepositorySystem = mock( org.eclipse.aether.RepositorySystem.class );
+ when( mojo.aetherRepositorySystem.resolveVersionRange( any(), any( VersionRangeRequest.class ) ) )
+ .then( i -> new VersionRangeResult( i.getArgument( 1 ) ) );
+
setVariableValueToObject( mojo, "newVersion", null );
mojo.execute();
@@ -98,11 +100,14 @@ public void testNullNewVersion()
public void testNewVersionEmpty()
throws Exception
{
- Files.copy( Paths.get( "src/test/resources/org/codehaus/mojo/set-property/null-new-version/pom.xml" ),
- Paths.get( pomDir.toString(), "pom.xml" ), REPLACE_EXISTING );
+ copyDir( Paths.get( "src/test/resources/org/codehaus/mojo/set-property/null-new-version" ), pomDir );
SetPropertyMojo mojo = (SetPropertyMojo) mojoRule.lookupConfiguredMojo( pomDir.toFile(),
"set-property" );
- mojo.localRepository = new StubArtifactRepository( pomDir.toString() );
+
+ mojo.aetherRepositorySystem = mock( org.eclipse.aether.RepositorySystem.class );
+ when( mojo.aetherRepositorySystem.resolveVersionRange( any(), any( VersionRangeRequest.class ) ) )
+ .then( i -> new VersionRangeResult( i.getArgument( 1 ) ) );
+
setVariableValueToObject( mojo, "newVersion", "" );
mojo.execute();
@@ -117,8 +122,7 @@ public void testNewVersionEmpty()
public void testNullProperty()
throws Exception
{
- Files.copy( Paths.get( "src/test/resources/org/codehaus/mojo/set-property/null-property/pom.xml" ),
- Paths.get( pomDir.toString(), "pom.xml" ), REPLACE_EXISTING );
+ copyDir( Paths.get( "src/test/resources/org/codehaus/mojo/set-property/null-property" ), pomDir );
SetPropertyMojo mojo = (SetPropertyMojo) mojoRule.lookupConfiguredMojo( pomDir.toFile(),
"set-property" );
diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UpdateParentMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UpdateParentMojoTest.java
index 0350f8c684..8afea7e76a 100644
--- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UpdateParentMojoTest.java
+++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UpdateParentMojoTest.java
@@ -7,8 +7,6 @@
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.DefaultArtifact;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.artifact.resolver.ArtifactResolver;
import org.apache.maven.artifact.versioning.ArtifactVersion;
import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
@@ -17,9 +15,11 @@
import org.apache.maven.model.Model;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.MojoFailureException;
+import org.apache.maven.plugin.testing.stubs.DefaultArtifactHandlerStub;
import org.apache.maven.project.MavenProject;
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.mojo.versions.api.PomHelper;
+import org.codehaus.mojo.versions.api.VersionRetrievalException;
import org.codehaus.mojo.versions.change.VersionChange;
import org.codehaus.mojo.versions.ordering.InvalidSegmentException;
import org.codehaus.mojo.versions.utils.TestChangeRecorder;
@@ -31,7 +31,7 @@
import static java.util.Collections.singleton;
import static org.apache.maven.artifact.Artifact.SCOPE_COMPILE;
import static org.apache.maven.plugin.testing.ArtifactStubFactory.setVariableValueToObject;
-import static org.codehaus.mojo.versions.utils.MockUtils.mockArtifactMetadataSource;
+import static org.codehaus.mojo.versions.utils.MockUtils.mockAetherRepositorySystem;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.empty;
import static org.hamcrest.Matchers.hasItem;
@@ -53,13 +53,13 @@ public class UpdateParentMojoTest
private static RepositorySystem repositorySystem;
- private static ArtifactMetadataSource artifactMetadataSource;
+ private static org.eclipse.aether.RepositorySystem aetherRepositorySystem;
@BeforeClass
public static void setUpStatic()
{
repositorySystem = mockRepositorySystem();
- artifactMetadataSource = mockArtifactMetadataSource( new HashMap()
+ aetherRepositorySystem = mockAetherRepositorySystem( new HashMap()
{{
put( "parent-artifact", new String[] { "0.9.0", "1.0.0", "1.0.1-SNAPSHOT" } );
put( "issue-670-artifact", new String[] { "0.0.1-1", "0.0.1-1-impl-SNAPSHOT" } );
@@ -75,10 +75,7 @@ public void setUp() throws IllegalAccessException
changeRecorder = new TestChangeRecorder();
artifactResolver = mock( ArtifactResolver.class );
- mojo = new UpdateParentMojo( repositorySystem,
- null,
- artifactMetadataSource,
- null,
+ mojo = new UpdateParentMojo( repositorySystem, aetherRepositorySystem, null, null,
artifactResolver )
{{
setProject( createProject() );
@@ -115,7 +112,8 @@ private static RepositorySystem mockRepositorySystem()
Dependency dependency = invocation.getArgument( 0 );
return new DefaultArtifact( dependency.getGroupId(), dependency.getArtifactId(), dependency.getVersion(),
dependency.getScope(), dependency.getType(), dependency.getClassifier() != null
- ? dependency.getClassifier() : "default", null );
+ ? dependency.getClassifier() : "default",
+ new DefaultArtifactHandlerStub( "default" ) );
} );
return repositorySystem;
}
@@ -123,7 +121,7 @@ private static RepositorySystem mockRepositorySystem()
@Test
@SuppressWarnings( "deprecation" )
public void testArtifactIdDoesNotExist()
- throws ArtifactMetadataRetrievalException, MojoExecutionException,
+ throws VersionRetrievalException, MojoExecutionException,
XMLStreamException, MojoFailureException, InvalidVersionSpecificationException
{
mojo.getProject().setParent( new MavenProject()
@@ -135,7 +133,7 @@ public void testArtifactIdDoesNotExist()
Artifact artifact =
new DefaultArtifact( "default-group", "unknown-artifact", "1.0.1-SNAPSHOT", SCOPE_COMPILE, "pom",
- "default", null );
+ "default", new DefaultArtifactHandlerStub( "default" ) );
assertThat(
mojo.findLatestVersion( artifact, VersionRange.createFromVersionSpec( "1.0.1-SNAPSHOT" ), null, false ),
is( nullValue() ) );
@@ -145,6 +143,10 @@ public void testArtifactIdDoesNotExist()
pomHelper.when( () -> PomHelper.setProjectParentVersion( any(), any() ) ).thenReturn( true );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
}
@Test
@@ -158,6 +160,10 @@ public void testParentDowngradeAllowed()
.thenReturn( true );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(),
hasItem( new VersionChange( "default-group", "parent-artifact", "1.0.1-SNAPSHOT",
"1.0.0" ) ) );
@@ -174,12 +180,16 @@ public void testParentDowngradeForbidden()
.thenReturn( true );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(), is( empty() ) );
}
@Test
public void testParentDowngradeAllowedWithRange()
- throws MojoExecutionException, ArtifactMetadataRetrievalException,
+ throws MojoExecutionException, VersionRetrievalException,
InvalidVersionSpecificationException, InvalidSegmentException
{
mojo.allowDowngrade = true;
@@ -196,7 +206,7 @@ public void testParentDowngradeAllowedWithRange()
@Test
public void testParentDowngradeForbiddenWithRange()
- throws MojoExecutionException, ArtifactMetadataRetrievalException,
+ throws MojoExecutionException, VersionRetrievalException,
InvalidVersionSpecificationException, InvalidSegmentException
{
mojo.allowDowngrade = false;
@@ -206,7 +216,7 @@ public void testParentDowngradeForbiddenWithRange()
@Test
public void testAllowSnapshots()
- throws MojoExecutionException, ArtifactMetadataRetrievalException,
+ throws MojoExecutionException, VersionRetrievalException,
InvalidVersionSpecificationException, InvalidSegmentException
{
mojo.allowSnapshots = true;
@@ -240,6 +250,10 @@ public void testAllowSnapshotsWithParentVersion()
.thenReturn( true );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(), hasItem( new VersionChange( "default-group",
"issue-670-artifact", "0.0.1-1",
"0.0.1-1-impl-SNAPSHOT" ) ) );
@@ -248,7 +262,7 @@ public void testAllowSnapshotsWithParentVersion()
@Test
public void testIgnoredVersions()
throws MojoExecutionException, IllegalAccessException,
- ArtifactMetadataRetrievalException, InvalidVersionSpecificationException, InvalidSegmentException
+ VersionRetrievalException, InvalidVersionSpecificationException, InvalidSegmentException
{
mojo.getProject().setParent( new MavenProject()
{{
@@ -298,6 +312,10 @@ private void testSkipResolution( String version )
{
throw new RuntimeException( e );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(), hasItem( new VersionChange( "default-group",
"parent-artifact", "1.0.0", version ) ) );
@@ -319,6 +337,10 @@ public void testShouldUpgradeToSnapshot() throws MojoExecutionException, XMLStre
pomHelper.when( () -> PomHelper.setProjectParentVersion( any(), any() ) ).thenReturn( true );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(),
hasItem( new VersionChange( "default-group", "parent-artifact", "0.9.0",
"1.0.1-SNAPSHOT" ) ) );
@@ -326,7 +348,7 @@ public void testShouldUpgradeToSnapshot() throws MojoExecutionException, XMLStre
@Test
public void testAllowMinorUpdates()
- throws MojoExecutionException, ArtifactMetadataRetrievalException,
+ throws MojoExecutionException, VersionRetrievalException,
InvalidVersionSpecificationException, InvalidSegmentException
{
mojo.getProject().setParent( new MavenProject()
@@ -347,7 +369,7 @@ public void testAllowMinorUpdates()
@Test
public void testAllowIncrementalUpdates()
- throws MojoExecutionException, ArtifactMetadataRetrievalException,
+ throws MojoExecutionException, VersionRetrievalException,
InvalidVersionSpecificationException, InvalidSegmentException
{
mojo.getProject().setParent( new MavenProject()
@@ -381,6 +403,10 @@ public void testParentVersionRange() throws MojoExecutionException, XMLStreamExc
pomHelper.when( () -> PomHelper.setProjectParentVersion( any(), any() ) ).thenReturn( true );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(),
hasItem( new VersionChange( "default-group", "dummy-parent2", "1.0",
"2.0" ) ) );
@@ -402,6 +428,10 @@ public void testParentVersionRange2() throws MojoExecutionException, XMLStreamEx
pomHelper.when( () -> PomHelper.setProjectParentVersion( any(), any() ) ).thenReturn( true );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(), empty() );
}
}
diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UpdatePropertiesMojoTestBase.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UpdatePropertiesMojoTestBase.java
index 431bc30906..a087aea1ab 100644
--- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UpdatePropertiesMojoTestBase.java
+++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UpdatePropertiesMojoTestBase.java
@@ -21,7 +21,6 @@
import java.nio.file.Path;
import java.util.HashMap;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.plugin.Mojo;
import org.apache.maven.plugin.testing.AbstractMojoTestCase;
import org.apache.maven.plugin.testing.MojoRule;
@@ -31,7 +30,7 @@
import org.junit.Before;
import org.junit.Rule;
-import static org.codehaus.mojo.versions.utils.MockUtils.mockArtifactMetadataSource;
+import static org.codehaus.mojo.versions.utils.MockUtils.mockAetherRepositorySystem;
import static org.codehaus.mojo.versions.utils.TestUtils.createTempDir;
import static org.codehaus.mojo.versions.utils.TestUtils.tearDownTempDir;
@@ -43,7 +42,7 @@ public abstract class UpdatePropertiesMojoTestBase extends AbstractMojoTestCase
@Rule
public MojoRule mojoRule = new MojoRule( this );
protected Path pomDir;
- protected ArtifactMetadataSource artifactMetadataSource;
+ protected org.eclipse.aether.RepositorySystem aetherRepositorySystem;
protected TestChangeRecorder changeRecorder;
@Before
@@ -52,7 +51,7 @@ public void setUp() throws Exception
super.setUp();
pomDir = createTempDir( "update-property" );
changeRecorder = new TestChangeRecorder();
- artifactMetadataSource = mockArtifactMetadataSource( new HashMap()
+ aetherRepositorySystem = mockAetherRepositorySystem( new HashMap()
{{
put( "default-artifact", new String[] {"1.0.0", "1.0.1-rc1", "1.1.0-alpha", "2.0.0-M1"} );
}} );
@@ -76,7 +75,7 @@ protected T setUpMojo( String goal ) throws Exception
{
T mojo = (T) mojoRule.lookupConfiguredMojo( pomDir.toFile(), goal );
setVariableValueToObject( mojo, "localRepository", new StubArtifactRepository( pomDir.toString() ) );
- setVariableValueToObject( mojo, "artifactMetadataSource", artifactMetadataSource );
+ setVariableValueToObject( mojo, "aetherRepositorySystem", aetherRepositorySystem );
setVariableValueToObject( mojo, "changeRecorder", changeRecorder );
setVariableValueToObject( mojo, "generateBackupPoms", false );
return (T) mojo;
diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseLatestReleasesMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseLatestReleasesMojoTest.java
index 72fd58f2d5..6291292f27 100644
--- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseLatestReleasesMojoTest.java
+++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseLatestReleasesMojoTest.java
@@ -5,11 +5,11 @@
import java.util.HashMap;
import org.apache.maven.artifact.DefaultArtifact;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.Model;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.MojoFailureException;
+import org.apache.maven.plugin.testing.stubs.DefaultArtifactHandlerStub;
import org.apache.maven.project.MavenProject;
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.mojo.versions.api.PomHelper;
@@ -24,14 +24,13 @@
import static java.util.Collections.singletonList;
import static org.apache.maven.artifact.Artifact.SCOPE_COMPILE;
import static org.apache.maven.plugin.testing.ArtifactStubFactory.setVariableValueToObject;
-import static org.codehaus.mojo.versions.utils.MockUtils.mockArtifactMetadataSource;
+import static org.codehaus.mojo.versions.utils.MockUtils.mockAetherRepositorySystem;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.mockStatic;
import static org.mockito.Mockito.when;
-@SuppressWarnings( "deprecation" )
public class UseLatestReleasesMojoTest
{
private UseLatestReleasesMojo mojo;
@@ -46,18 +45,17 @@ public void setUp() throws Exception
Dependency dependency = invocation.getArgument( 0 );
return new DefaultArtifact( dependency.getGroupId(), dependency.getArtifactId(), dependency.getVersion(),
dependency.getScope(), dependency.getType(),
- dependency.getClassifier() != null ? dependency.getClassifier() : "default", null );
+ dependency.getClassifier() != null ? dependency.getClassifier() : "default",
+ new DefaultArtifactHandlerStub( "default" ) );
} );
- ArtifactMetadataSource artifactMetadataSourceMock = mockArtifactMetadataSource( new HashMap()
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem = mockAetherRepositorySystem(
+ new HashMap()
{{
put( "dependency-artifact", new String[] {"0.9.0", "1.0.0-beta"} );
}} );
- mojo = new UseLatestReleasesMojo( repositorySystemMock,
- null,
- artifactMetadataSourceMock,
- null,
+ mojo = new UseLatestReleasesMojo( repositorySystemMock, aetherRepositorySystem, null, null,
null )
{{
reactorProjects = emptyList();
@@ -105,6 +103,10 @@ public void testDontUpgradeToBeta()
.thenReturn( mojo.getProject().getModel() );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(), Matchers.empty() );
}
}
diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseLatestVersionsMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseLatestVersionsMojoTest.java
index 98c5a34f1a..dd6ba11a00 100644
--- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseLatestVersionsMojoTest.java
+++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseLatestVersionsMojoTest.java
@@ -7,12 +7,12 @@
import java.util.HashMap;
import org.apache.maven.artifact.DefaultArtifact;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.DependencyManagement;
import org.apache.maven.model.Model;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.MojoFailureException;
+import org.apache.maven.plugin.testing.stubs.DefaultArtifactHandlerStub;
import org.apache.maven.project.MavenProject;
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.mojo.versions.api.PomHelper;
@@ -28,7 +28,7 @@
import static java.util.Collections.singleton;
import static org.apache.maven.artifact.Artifact.SCOPE_COMPILE;
import static org.apache.maven.plugin.testing.ArtifactStubFactory.setVariableValueToObject;
-import static org.codehaus.mojo.versions.utils.MockUtils.mockArtifactMetadataSource;
+import static org.codehaus.mojo.versions.utils.MockUtils.mockAetherRepositorySystem;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.empty;
import static org.hamcrest.Matchers.hasItem;
@@ -54,10 +54,12 @@ public void setUp() throws Exception
Dependency dependency = invocation.getArgument( 0 );
return new DefaultArtifact( dependency.getGroupId(), dependency.getArtifactId(), dependency.getVersion(),
dependency.getScope(), dependency.getType(),
- dependency.getClassifier() != null ? dependency.getClassifier() : "default", null );
+ dependency.getClassifier() != null ? dependency.getClassifier() : "default",
+ new DefaultArtifactHandlerStub( "default" ) );
} );
- ArtifactMetadataSource artifactMetadataSourceMock = mockArtifactMetadataSource( new HashMap()
+ org.eclipse.aether.RepositorySystem aetherRepositorySystem = mockAetherRepositorySystem(
+ new HashMap()
{{
put( "dependency-artifact", new String[] {"1.1.1-SNAPSHOT", "1.1.0", "1.1.0-SNAPSHOT", "1.0.0",
"1.0.0-SNAPSHOT", "0.9.0"} );
@@ -67,8 +69,8 @@ public void setUp() throws Exception
}} );
mojo = new UseLatestVersionsMojo( repositorySystemMock,
+ aetherRepositorySystem,
null,
- artifactMetadataSourceMock,
null,
null )
{{
@@ -115,6 +117,10 @@ public void testDependenciesDowngradeIncremental()
.thenReturn( true );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(),
hasItem( new VersionChange( "default-group", "dependency-artifact", "1.1.1-SNAPSHOT", "1.1.0" ) ) );
}
@@ -140,6 +146,10 @@ public void testDependenciesDowngradeMinor()
.thenReturn( true );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(),
hasItem( new VersionChange( "default-group", "dependency-artifact",
"1.1.0-SNAPSHOT", "1.1.0" ) ) );
@@ -162,6 +172,10 @@ public void testDependenciesDowngradeMajor()
.thenReturn( true );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(),
hasItem( new VersionChange( "default-group", "dependency-artifact",
"1.1.1-SNAPSHOT", "1.1.0" ) ) );
@@ -186,6 +200,10 @@ public void testDependencyManagementDowngrade()
.thenReturn( true );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(),
hasItem( new VersionChange( "default-group", "dependency-artifact", "1.1.1-SNAPSHOT", "1.1.0" ) ) );
}
@@ -218,6 +236,10 @@ public void testParentDowngrade()
.thenReturn( true );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(),
hasItem( new VersionChange( "default-group", "dependency-artifact", "1.1.1-SNAPSHOT", "1.1.0" ) ) );
}
@@ -246,6 +268,10 @@ public void testPoisonDependencyVersion()
.thenReturn( true );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
// So, the regular update should take place despite an irregular, or — if I may — "poison", dependency
// being present in the dependency list
assertThat( changeRecorder.getChanges(),
@@ -266,6 +292,10 @@ public void testIgnoredVersions()
.thenReturn( true );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(), Is.is( empty() ) );
}
@@ -289,6 +319,10 @@ public void testIncludeFilter()
.thenReturn( true );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(), hasSize( 1 ) );
assertThat( changeRecorder.getChanges(),
hasItem( new VersionChange( "default-group", "other-artifact", "1.0",
@@ -315,6 +349,10 @@ public void testExcludeFilter()
.thenReturn( true );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(), hasSize( 1 ) );
assertThat( changeRecorder.getChanges(),
not( hasItem( new VersionChange( "default-group", "other-artifact", "1.0",
diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseReleasesMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseReleasesMojoTest.java
index 6e2b40bfbf..3a72b55d02 100644
--- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseReleasesMojoTest.java
+++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseReleasesMojoTest.java
@@ -22,7 +22,7 @@
import static java.util.Collections.singletonList;
import static java.util.Collections.singletonMap;
import static org.apache.maven.artifact.Artifact.SCOPE_COMPILE;
-import static org.codehaus.mojo.versions.utils.MockUtils.mockArtifactMetadataSource;
+import static org.codehaus.mojo.versions.utils.MockUtils.mockAetherRepositorySystem;
import static org.codehaus.mojo.versions.utils.MockUtils.mockRepositorySystem;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.hasItem;
@@ -63,8 +63,8 @@ public void setUp() throws IllegalAccessException
{
changeRecorder = new TestChangeRecorder();
mojo = new UseReleasesMojo( mockRepositorySystem(),
- null, mockArtifactMetadataSource(),
- null, new StubArtifactResolver( new ArtifactStubFactory(),
+ mockAetherRepositorySystem(),
+ null, null, new StubArtifactResolver( new ArtifactStubFactory(),
false, false ) );
setVariableValueToObject( mojo, "reactorProjects", emptyList() );
setVariableValueToObject( mojo, "changeRecorder", changeRecorder );
@@ -101,6 +101,10 @@ public void testProcessParent()
.thenReturn( mojo.getProject().getModel() );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(),
hasItem( new VersionChange( "default-group", "artifactA",
"1.0.0-SNAPSHOT", "1.0.0" ) ) );
@@ -125,6 +129,10 @@ public void testReplaceSnapshotWithRelease()
.thenReturn( mojo.getProject().getModel() );
mojo.update( null );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
assertThat( changeRecorder.getChanges(),
hasItem( new VersionChange( "default-group", "artifactA",
"1.0.0-SNAPSHOT", "1.0.0" ) ) );
@@ -134,7 +142,7 @@ public void testReplaceSnapshotWithRelease()
public void testFailIfNotReplaced()
throws MojoExecutionException, XMLStreamException, MojoFailureException
{
- mojo.artifactMetadataSource = mockArtifactMetadataSource( singletonMap( "test-artifact",
+ mojo.aetherRepositorySystem = mockAetherRepositorySystem( singletonMap( "test-artifact",
new String[] {} ) );
mojo.getProject().setDependencies( singletonList( DependencyBuilder.newBuilder()
.withGroupId( "default-group" )
@@ -157,5 +165,9 @@ public void testFailIfNotReplaced()
{
assertThat( e.getMessage(), startsWith( "No matching" ) );
}
+ catch ( org.codehaus.mojo.versions.api.VersionRetrievalException e )
+ {
+ throw new RuntimeException( e );
+ }
}
}
diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/utils/MockUtils.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/utils/MockUtils.java
index 991a944098..4fc1943dd6 100644
--- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/utils/MockUtils.java
+++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/utils/MockUtils.java
@@ -26,15 +26,16 @@
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.DefaultArtifact;
-import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
-import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
import org.apache.maven.doxia.tools.SiteTool;
import org.apache.maven.doxia.tools.SiteToolException;
import org.apache.maven.model.Dependency;
import org.apache.maven.plugin.testing.stubs.DefaultArtifactHandlerStub;
import org.apache.maven.repository.RepositorySystem;
import org.codehaus.plexus.i18n.I18N;
+import org.eclipse.aether.resolution.VersionRangeRequest;
+import org.eclipse.aether.resolution.VersionRangeResolutionException;
+import org.eclipse.aether.resolution.VersionRangeResult;
+import org.eclipse.aether.version.Version;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyString;
@@ -54,42 +55,44 @@ public class MockUtils
}};
/**
- * Creates a mocked {@linkplain ArtifactMetadataSource}, providing the default version set
- * @return mocked {@linkplain ArtifactMetadataSource}
+ * Creates a mocked {@linkplain org.eclipse.aether.RepositorySystem}, providing the default version set
+ * @return mocked {@linkplain org.eclipse.aether.RepositorySystem}
*/
- public static ArtifactMetadataSource mockArtifactMetadataSource()
+ public static org.eclipse.aether.RepositorySystem mockAetherRepositorySystem()
{
- return mockArtifactMetadataSource( DEFAULT_VERSION_MAP );
+ return mockAetherRepositorySystem( DEFAULT_VERSION_MAP );
}
/**
- * Creates a mocked {@linkplain ArtifactMetadataSource}, providing the version map given in the argument
+ * Creates a mocked {@linkplain org.eclipse.aether.RepositorySystem}, providing the version map given in
+ * the argument.
* @param versionMap requested version map
- * @return mocked {@linkplain ArtifactMetadataSource}
+ * @return mocked {@linkplain org.eclipse.aether.RepositorySystem}
*/
- public static ArtifactMetadataSource mockArtifactMetadataSource( Map versionMap )
+ public static org.eclipse.aether.RepositorySystem mockAetherRepositorySystem( Map versionMap )
{
- ArtifactMetadataSource artifactMetadataSource = mock( ArtifactMetadataSource.class );
+ org.eclipse.aether.RepositorySystem repositorySystem = mock( org.eclipse.aether.RepositorySystem.class );
try
{
- when( artifactMetadataSource.retrieveAvailableVersions( any( Artifact.class ), any(), any() ) ).then(
+ when( repositorySystem.resolveVersionRange( any(), any( VersionRangeRequest.class ) ) ).then(
invocation ->
{
- Artifact artifact = invocation.getArgument( 0 );
+ VersionRangeRequest request = invocation.getArgument( 1 );
return versionMap.entrySet().stream()
- .filter( e -> e.getKey().equals( artifact.getArtifactId() ) )
+ .filter( e -> e.getKey().equals( request.getArtifact().getArtifactId() ) )
.findAny()
.map( e -> Arrays.stream( e.getValue() )
- .map( DefaultArtifactVersion::new )
- .collect( ArrayList::new, ArrayList::add, ArrayList::add ) )
+ .map( VersionStub::new )
+ .collect( () -> new ArrayList(), ArrayList::add, ArrayList::addAll ) )
+ .map( versions -> new VersionRangeResult( request ).setVersions( versions ) )
.orElse( null ); // should tell us if we haven't populated all cases in the test
} );
}
- catch ( ArtifactMetadataRetrievalException e )
+ catch ( VersionRangeResolutionException e )
{
throw new RuntimeException( e );
}
- return artifactMetadataSource;
+ return repositorySystem;
}
public static I18N mockI18N()
diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/utils/VersionStub.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/utils/VersionStub.java
new file mode 100644
index 0000000000..807e21574f
--- /dev/null
+++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/utils/VersionStub.java
@@ -0,0 +1,76 @@
+package org.codehaus.mojo.versions.utils;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.eclipse.aether.version.Version;
+
+/**
+ * Stubs the {@link Version}
+ */
+public class VersionStub implements Version
+{
+ private final String version;
+
+ /**
+ * Creates a new instance with the given version string
+ * @param version version to be set
+ */
+ public VersionStub( String version )
+ {
+ assert version != null;
+ this.version = version;
+ }
+
+ @Override
+ public String toString()
+ {
+ return version;
+ }
+
+ @Override
+ public int compareTo( Version o )
+ {
+ return o != null
+ ? version.compareTo( o.toString() )
+ : 1;
+ }
+
+ @Override
+ public boolean equals( Object o )
+ {
+ if ( this == o )
+ {
+ return true;
+ }
+
+ if ( !( o instanceof Version ) )
+ {
+ return false;
+ }
+
+ return version.equals( o.toString() );
+ }
+
+ @Override
+ public int hashCode()
+ {
+ return version.hashCode();
+ }
+}