You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2018/01/12 19:51:21 UTC
[maven-release] branch master updated: Remove all overloaded
methods from ReleaseManager, only use ReleaseRequest
This is an automated email from the ASF dual-hosted git repository.
rfscholte pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-release.git
The following commit(s) were added to refs/heads/master by this push:
new 2bef00a Remove all overloaded methods from ReleaseManager, only use Release<Goal>Request
2bef00a is described below
commit 2bef00a6c8a925d511c5eac697a47718c3a4b630
Author: rfscholte <rf...@apache.org>
AuthorDate: Fri Jan 12 20:51:14 2018 +0100
Remove all overloaded methods from ReleaseManager, only use Release<Goal>Request
---
.../shared/release/DefaultReleaseManager.java | 300 +----------------
.../maven/shared/release/ReleaseManager.java | 372 +--------------------
.../shared/release/DefaultReleaseManagerTest.java | 186 ++++++++---
.../maven/plugins/release/BranchReleaseMojo.java | 9 +-
.../maven/plugins/release/CleanReleaseMojo.java | 8 +-
.../maven/plugins/release/PrepareReleaseMojo.java | 10 +-
.../maven/plugins/release/RollbackReleaseMojo.java | 11 +-
.../maven/plugins/release/UpdateVersionsMojo.java | 8 +-
.../plugins/release/CleanReleaseMojoTest.java | 14 +-
.../plugins/release/PrepareReleaseMojoTest.java | 46 ++-
10 files changed, 228 insertions(+), 736 deletions(-)
diff --git a/maven-release-manager/src/main/java/org/apache/maven/shared/release/DefaultReleaseManager.java b/maven-release-manager/src/main/java/org/apache/maven/shared/release/DefaultReleaseManager.java
index a674bc7..c6e45f5 100644
--- a/maven-release-manager/src/main/java/org/apache/maven/shared/release/DefaultReleaseManager.java
+++ b/maven-release-manager/src/main/java/org/apache/maven/shared/release/DefaultReleaseManager.java
@@ -28,13 +28,9 @@ import java.util.Map;
import java.util.Set;
import org.apache.commons.lang3.BooleanUtils;
-import org.apache.maven.project.MavenProject;
-import org.apache.maven.settings.Settings;
import org.apache.maven.shared.release.config.ReleaseDescriptor;
import org.apache.maven.shared.release.config.ReleaseDescriptorStore;
import org.apache.maven.shared.release.config.ReleaseDescriptorStoreException;
-import org.apache.maven.shared.release.env.DefaultReleaseEnvironment;
-import org.apache.maven.shared.release.env.ReleaseEnvironment;
import org.apache.maven.shared.release.phase.ReleasePhase;
import org.codehaus.plexus.logging.AbstractLogEnabled;
import org.codehaus.plexus.util.StringUtils;
@@ -86,25 +82,7 @@ public class DefaultReleaseManager
private static final int PHASE_SKIP = 0, PHASE_START = 1, PHASE_END = 2, GOAL_START = 11, GOAL_END = 12, ERROR = 99;
@Override
- public void prepare( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- prepare( releaseDescriptor, releaseEnvironment, reactorProjects, true, false, null );
- }
-
- @Override
- public void prepare( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, boolean resume, boolean dryRun )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- prepare( releaseDescriptor, releaseEnvironment, reactorProjects, resume, dryRun, null );
- }
-
- @Override
- public ReleaseResult prepareWithResult( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, boolean resume, boolean dryRun,
- ReleaseManagerListener listener )
+ public ReleaseResult prepareWithResult( ReleasePrepareRequest prepareRequest )
{
ReleaseResult result = new ReleaseResult();
@@ -112,17 +90,13 @@ public class DefaultReleaseManager
try
{
- prepare( releaseDescriptor, releaseEnvironment, reactorProjects, resume, dryRun, listener, result );
+ prepare( prepareRequest, result );
result.setResultCode( ReleaseResult.SUCCESS );
}
- catch ( ReleaseExecutionException e )
- {
- captureException( result, listener, e );
- }
- catch ( ReleaseFailureException e )
+ catch ( ReleaseExecutionException | ReleaseFailureException e )
{
- captureException( result, listener, e );
+ captureException( result, prepareRequest.getReleaseManagerListener(), e );
}
finally
{
@@ -133,37 +107,12 @@ public class DefaultReleaseManager
}
@Override
- public void prepare( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, boolean resume, boolean dryRun,
- ReleaseManagerListener listener )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- prepare( releaseDescriptor, releaseEnvironment, reactorProjects, resume, dryRun, listener, null );
- }
-
- @Override
public void prepare( ReleasePrepareRequest prepareRequest )
throws ReleaseExecutionException, ReleaseFailureException
{
prepare( prepareRequest, new ReleaseResult() );
}
- private void prepare( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, boolean resume, boolean dryRun,
- ReleaseManagerListener listener, ReleaseResult result )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
- prepareRequest.setReleaseDescriptor( releaseDescriptor );
- prepareRequest.setReleaseEnvironment( releaseEnvironment );
- prepareRequest.setReactorProjects( reactorProjects );
- prepareRequest.setResume( resume );
- prepareRequest.setDryRun( dryRun );
- prepareRequest.setReleaseManagerListener( listener );
-
- prepare( prepareRequest, result );
- }
-
private void prepare( ReleasePrepareRequest prepareRequest, ReleaseResult result )
throws ReleaseExecutionException, ReleaseFailureException
{
@@ -257,28 +206,6 @@ public class DefaultReleaseManager
}
@Override
- public void rollback( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- rollback( releaseDescriptor, releaseEnvironment, reactorProjects, null );
- }
-
- @Override
- public void rollback( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, ReleaseManagerListener listener )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- ReleaseRollbackRequest rollbackRequest = new ReleaseRollbackRequest();
- rollbackRequest.setReleaseDescriptor( releaseDescriptor );
- rollbackRequest.setReleaseEnvironment( releaseEnvironment );
- rollbackRequest.setReactorProjects( reactorProjects );
- rollbackRequest.setReleaseManagerListener( listener );
-
- rollback( rollbackRequest );
- }
-
- @Override
public void rollback( ReleaseRollbackRequest rollbackRequest )
throws ReleaseExecutionException, ReleaseFailureException
{
@@ -303,46 +230,12 @@ public class DefaultReleaseManager
}
//call release:clean so that resume will not be possible anymore after a rollback
- clean( releaseDescriptor,
- rollbackRequest.getReleaseManagerListener(),
- rollbackRequest.getReactorProjects() );
+ clean( rollbackRequest );
updateListener( rollbackRequest.getReleaseManagerListener(), "rollback", GOAL_END );
}
@Override
- public void perform( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- perform( releaseDescriptor, releaseEnvironment, reactorProjects, null, true );
- }
-
- @Override
- public void perform( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, boolean clean )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- perform( releaseDescriptor, releaseEnvironment, reactorProjects, null, clean );
- }
-
- @Override
- public void perform( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, ReleaseManagerListener listener )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- perform( releaseDescriptor, releaseEnvironment, reactorProjects, listener, true );
- }
-
- public void perform( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, ReleaseManagerListener listener, boolean clean )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- perform( releaseDescriptor, releaseEnvironment, reactorProjects, listener, new ReleaseResult(), clean );
- }
-
- @Override
- public ReleaseResult performWithResult( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, ReleaseManagerListener listener )
+ public ReleaseResult performWithResult( ReleasePerformRequest performRequest )
{
ReleaseResult result = new ReleaseResult();
@@ -350,17 +243,13 @@ public class DefaultReleaseManager
{
result.setStartTime( System.currentTimeMillis() );
- perform( releaseDescriptor, releaseEnvironment, reactorProjects, listener, result, true );
+ perform( performRequest, result );
result.setResultCode( ReleaseResult.SUCCESS );
}
- catch ( ReleaseExecutionException e )
- {
- captureException( result, listener, e );
- }
- catch ( ReleaseFailureException e )
+ catch ( ReleaseExecutionException | ReleaseFailureException e )
{
- captureException( result, listener, e );
+ captureException( result, performRequest.getReleaseManagerListener(), e );
}
finally
{
@@ -377,21 +266,6 @@ public class DefaultReleaseManager
perform( performRequest, new ReleaseResult() );
}
- private void perform( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, ReleaseManagerListener listener, ReleaseResult result,
- boolean clean )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- ReleasePerformRequest performRequest = new ReleasePerformRequest();
- performRequest.setReleaseDescriptor( releaseDescriptor );
- performRequest.setReleaseEnvironment( releaseEnvironment );
- performRequest.setReactorProjects( reactorProjects );
- performRequest.setReleaseManagerListener( listener );
- performRequest.setClean( clean );
-
- perform( performRequest, result );
- }
-
private void perform( ReleasePerformRequest performRequest, ReleaseResult result )
throws ReleaseExecutionException, ReleaseFailureException
{
@@ -441,36 +315,13 @@ public class DefaultReleaseManager
if ( BooleanUtils.isNotFalse( performRequest.getClean() ) )
{
// call release:clean so that resume will not be possible anymore after a perform
- clean( releaseDescriptor, performRequest.getReleaseManagerListener(), performRequest.getReactorProjects() );
+ clean( performRequest );
}
updateListener( performRequest.getReleaseManagerListener(), "perform", GOAL_END );
}
@Override
- public void branch( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, boolean dryRun )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- branch( releaseDescriptor, releaseEnvironment, reactorProjects, dryRun, null );
- }
-
- @Override
- public void branch( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, boolean dryRun, ReleaseManagerListener listener )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- ReleaseBranchRequest branchRequest = new ReleaseBranchRequest();
- branchRequest.setReleaseDescriptor( releaseDescriptor );
- branchRequest.setReleaseEnvironment( releaseEnvironment );
- branchRequest.setReactorProjects( reactorProjects );
- branchRequest.setDryRun( dryRun );
- branchRequest.setReleaseManagerListener( listener );
-
- branch( branchRequest );
- }
-
- @Override
public void branch( ReleaseBranchRequest branchRequest )
throws ReleaseExecutionException, ReleaseFailureException
{
@@ -509,28 +360,13 @@ public class DefaultReleaseManager
if ( !dryRun )
{
- clean( releaseDescriptor,
- branchRequest.getReleaseManagerListener(),
- branchRequest.getReactorProjects() );
+ clean( branchRequest );
}
updateListener( branchRequest.getReleaseManagerListener(), "branch", GOAL_END );
}
@Override
- public void updateVersions( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- ReleaseUpdateVersionsRequest updateVersionsRequest = new ReleaseUpdateVersionsRequest();
- updateVersionsRequest.setReleaseDescriptor( releaseDescriptor );
- updateVersionsRequest.setReleaseEnvironment( releaseEnvironment );
- updateVersionsRequest.setReactorProjects( reactorProjects );
-
- updateVersions( updateVersionsRequest );
- }
-
- @Override
public void updateVersions( ReleaseUpdateVersionsRequest updateVersionsRequest )
throws ReleaseExecutionException, ReleaseFailureException
{
@@ -555,9 +391,7 @@ public class DefaultReleaseManager
updateListener( updateVersionsRequest.getReleaseManagerListener(), name, PHASE_END );
}
- clean( releaseDescriptor,
- updateVersionsRequest.getReleaseManagerListener(),
- updateVersionsRequest.getReactorProjects() );
+ clean( updateVersionsRequest );
updateListener( updateVersionsRequest.getReleaseManagerListener(), "updateVersions", GOAL_END );
}
@@ -603,14 +437,13 @@ public class DefaultReleaseManager
}
}
- @Override
- public void clean( ReleaseDescriptor releaseDescriptor, ReleaseManagerListener listener,
- List<MavenProject> reactorProjects )
+
+ protected void clean( AbstractReleaseRequest releaseRequest )
{
ReleaseCleanRequest cleanRequest = new ReleaseCleanRequest();
- cleanRequest.setReleaseDescriptor( releaseDescriptor );
- cleanRequest.setReleaseManagerListener( listener );
- cleanRequest.setReactorProjects( reactorProjects );
+ cleanRequest.setReleaseDescriptor( releaseRequest.getReleaseDescriptor() );
+ cleanRequest.setReleaseManagerListener( releaseRequest.getReleaseManagerListener() );
+ cleanRequest.setReactorProjects( releaseRequest.getReactorProjects() );
clean( cleanRequest );
}
@@ -714,103 +547,4 @@ public class DefaultReleaseManager
result.setResultCode( ReleaseResult.ERROR );
}
-
- @Override
- public void branch( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects,
- boolean dryRun )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- branch( releaseDescriptor, new DefaultReleaseEnvironment().setSettings( settings ), reactorProjects, dryRun );
- }
-
- @Override
- public void branch( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects,
- boolean dryRun, ReleaseManagerListener listener )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- branch( releaseDescriptor, new DefaultReleaseEnvironment().setSettings( settings ), reactorProjects, dryRun,
- listener );
- }
-
- @Override
- public void perform( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- perform( releaseDescriptor, new DefaultReleaseEnvironment().setSettings( settings ), reactorProjects );
- }
-
- @Override
- public void perform( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects,
- ReleaseManagerListener listener )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- perform( releaseDescriptor, new DefaultReleaseEnvironment().setSettings( settings ), reactorProjects,
- listener );
- }
-
- @Override
- public void perform( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects,
- boolean clean )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- perform( releaseDescriptor, new DefaultReleaseEnvironment().setSettings( settings ), reactorProjects, clean );
- }
-
- @Override
- public ReleaseResult performWithResult( ReleaseDescriptor releaseDescriptor, Settings settings,
- List<MavenProject> reactorProjects, ReleaseManagerListener listener )
- {
- return performWithResult( releaseDescriptor, new DefaultReleaseEnvironment().setSettings( settings ),
- reactorProjects, listener );
- }
-
- @Override
- public void prepare( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- prepare( releaseDescriptor, new DefaultReleaseEnvironment().setSettings( settings ), reactorProjects );
- }
-
- @Override
- public void prepare( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects,
- boolean resume, boolean dryRun )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- prepare( releaseDescriptor, new DefaultReleaseEnvironment().setSettings( settings ), reactorProjects, resume,
- dryRun );
- }
-
- @Override
- public void prepare( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects,
- boolean resume, boolean dryRun, ReleaseManagerListener listener )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- prepare( releaseDescriptor, new DefaultReleaseEnvironment().setSettings( settings ), reactorProjects, resume,
- dryRun, listener );
- }
-
- @Override
- public ReleaseResult prepareWithResult( ReleaseDescriptor releaseDescriptor, Settings settings,
- List<MavenProject> reactorProjects, boolean resume, boolean dryRun,
- ReleaseManagerListener listener )
- {
- return prepareWithResult( releaseDescriptor, new DefaultReleaseEnvironment().setSettings( settings ),
- reactorProjects, resume, dryRun, listener );
- }
-
- @Override
- public void rollback( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects,
- ReleaseManagerListener listener )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- rollback( releaseDescriptor, new DefaultReleaseEnvironment().setSettings( settings ), reactorProjects,
- listener );
- }
-
- @Override
- public void rollback( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects )
- throws ReleaseExecutionException, ReleaseFailureException
- {
- rollback( releaseDescriptor, new DefaultReleaseEnvironment().setSettings( settings ), reactorProjects, null );
- }
}
\ No newline at end of file
diff --git a/maven-release-manager/src/main/java/org/apache/maven/shared/release/ReleaseManager.java b/maven-release-manager/src/main/java/org/apache/maven/shared/release/ReleaseManager.java
index 97e0a43..d8ceb56 100644
--- a/maven-release-manager/src/main/java/org/apache/maven/shared/release/ReleaseManager.java
+++ b/maven-release-manager/src/main/java/org/apache/maven/shared/release/ReleaseManager.java
@@ -19,13 +19,6 @@ package org.apache.maven.shared.release;
* under the License.
*/
-import org.apache.maven.project.MavenProject;
-import org.apache.maven.settings.Settings;
-import org.apache.maven.shared.release.config.ReleaseDescriptor;
-import org.apache.maven.shared.release.env.ReleaseEnvironment;
-
-import java.util.List;
-
/**
* Release management classes.
*
@@ -34,73 +27,6 @@ import java.util.List;
public interface ReleaseManager
{
/**
- * The Plexus role.
- */
- String ROLE = ReleaseManager.class.getName();
-
- /**
- * Prepare a release.
- *
- * @param releaseDescriptor the configuration to pass to the preparation steps
- * @param releaseEnvironment settings, maven-home, java-home, etc. to use during release.
- * @param reactorProjects the reactor projects
- * @throws ReleaseExecutionException if there is a problem performing the release
- * @throws ReleaseFailureException if there is a problem performing the release
- */
- void prepare( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- /**
- * Prepare a release.
- *
- * @param releaseDescriptor the configuration to pass to the preparation steps
- * @param settings the settings.xml configuration
- * @param reactorProjects the reactor projects
- * @throws ReleaseExecutionException if there is a problem performing the release
- * @throws ReleaseFailureException if there is a problem performing the release
- *
- * @deprecated Use {@link ReleaseManager#prepare(ReleaseDescriptor, ReleaseEnvironment, List)} instead.
- */
- @Deprecated
- void prepare( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- /**
- * Prepare a release.
- *
- * @param releaseDescriptor the configuration to pass to the preparation steps
- * @param releaseEnvironment settings, maven-home, java-home, etc. to use during release.
- * @param reactorProjects the reactor projects
- * @param resume resume a previous release, if the properties file exists
- * @param dryRun do not commit any changes to the file system or SCM
- * @throws ReleaseExecutionException if there is a problem performing the release
- * @throws ReleaseFailureException if there is a problem performing the release
- */
- void prepare( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, boolean resume, boolean dryRun )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- /**
- * Prepare a release.
- *
- * @param releaseDescriptor the configuration to pass to the preparation steps
- * @param settings the settings.xml configuration
- * @param reactorProjects the reactor projects
- * @param resume resume a previous release, if the properties file exists
- * @param dryRun do not commit any changes to the file system or SCM
- * @throws ReleaseExecutionException if there is a problem performing the release
- * @throws ReleaseFailureException if there is a problem performing the release
- *
- * @deprecated Use {@link ReleaseManager#prepare(ReleaseDescriptor, ReleaseEnvironment, List, boolean, boolean)}
- * instead.
- */
- @Deprecated
- void prepare( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects,
- boolean resume, boolean dryRun )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- /**
* Prepare a release.
*
* @param prepareRequest all prepare arguments
@@ -110,139 +36,9 @@ public interface ReleaseManager
*/
void prepare( ReleasePrepareRequest prepareRequest ) throws ReleaseExecutionException, ReleaseFailureException;
- /**
- * Prepare a release.
- *
- * @param releaseDescriptor the configuration to pass to the preparation steps
- * @param releaseEnvironment settings, maven-home, java-home, etc. to use during release.
- * @param reactorProjects the reactor projects
- * @param resume resume a previous release, if the properties file exists
- * @param dryRun do not commit any changes to the file system or SCM
- * @param listener the listener
- * @throws ReleaseExecutionException if there is a problem performing the release
- * @throws ReleaseFailureException if there is a problem performing the release
- */
- void prepare( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, boolean resume, boolean dryRun, ReleaseManagerListener listener )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- /**
- * Prepare a release.
- *
- * @param releaseDescriptor the configuration to pass to the preparation steps
- * @param settings the settings.xml configuration
- * @param reactorProjects the reactor projects
- * @param resume resume a previous release, if the properties file exists
- * @param dryRun do not commit any changes to the file system or SCM
- * @param listener the listener
- * @throws ReleaseExecutionException if there is a problem performing the release
- * @throws ReleaseFailureException if there is a problem performing the release
- *
- * @deprecated Use {@link ReleaseManager#prepare(ReleaseDescriptor, ReleaseEnvironment, List, boolean, boolean,
- * ReleaseManagerListener)} instead.
- */
- @Deprecated
- void prepare( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects,
- boolean resume, boolean dryRun, ReleaseManagerListener listener )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- ReleaseResult prepareWithResult( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, boolean resume, boolean dryRun,
- ReleaseManagerListener listener );
-
- /**
- * @deprecated Use {@link ReleaseManager#prepareWithResult(ReleaseDescriptor, ReleaseEnvironment, List, boolean,
- * boolean, ReleaseManagerListener)} instead.
- */
- @Deprecated
- ReleaseResult prepareWithResult( ReleaseDescriptor releaseDescriptor, Settings settings,
- List<MavenProject> reactorProjects, boolean resume, boolean dryRun,
- ReleaseManagerListener listener );
+ ReleaseResult prepareWithResult( ReleasePrepareRequest prepareRequest );
- /**
- * Perform a release.
- *
- * @param releaseDescriptor the configuration to use for release
- * @param releaseEnvironment settings, maven-home, java-home, etc. to use during release.
- * @param reactorProjects the reactor projects
- * @throws ReleaseExecutionException if there is a problem performing the release
- * @throws ReleaseFailureException if there is a problem performing the release
- */
- void perform( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- /**
- * Perform a release.
- *
- * @param releaseDescriptor the configuration to use for release
- * @param settings the settings.xml configuration
- * @param reactorProjects the reactor projects
- * @throws ReleaseExecutionException if there is a problem performing the release
- * @throws ReleaseFailureException if there is a problem performing the release
- *
- * @deprecated Use {@link ReleaseManager#perform(ReleaseDescriptor, ReleaseEnvironment, List)} instead
- */
- @Deprecated
- void perform( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- /**
- * Perform a release.
- *
- * @param releaseDescriptor the configuration to use for release
- * @param releaseEnvironment settings, maven-home, java-home, etc. to use during release.
- * @param reactorProjects the reactor projects
- * @param listener the listener
- * @throws ReleaseExecutionException if there is a problem performing the release
- * @throws ReleaseFailureException if there is a problem performing the release
- */
- void perform( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, ReleaseManagerListener listener )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- /**
- * Perform a release.
- *
- * @param releaseDescriptor the configuration to use for release
- * @param settings the settings.xml configuration
- * @param reactorProjects the reactor projects
- * @param listener the listener
- * @throws ReleaseExecutionException if there is a problem performing the release
- * @throws ReleaseFailureException if there is a problem performing the release
- *
- * @deprecated Use {@link ReleaseManager#perform(ReleaseDescriptor, ReleaseEnvironment, List,
- * ReleaseManagerListener)} instead.
- */
- @Deprecated
- void perform( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects,
- ReleaseManagerListener listener )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- ReleaseResult performWithResult( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, ReleaseManagerListener listener );
-
- /**
- * @deprecated Use {@link ReleaseManager#performWithResult(ReleaseDescriptor, ReleaseEnvironment, List,
- * ReleaseManagerListener)} instead.
- */
- @Deprecated
- ReleaseResult performWithResult( ReleaseDescriptor releaseDescriptor, Settings settings,
- List<MavenProject> reactorProjects, ReleaseManagerListener listener );
-
- /**
- * Perform a release, and optionally cleanup.
- *
- * @param releaseDescriptor the configuration to use for release
- * @param releaseEnvironment settings, maven-home, java-home, etc. to use during release.
- * @param reactorProjects the reactor projects
- * @param clean flag to clean the release after perform
- * @throws ReleaseExecutionException if there is a problem performing the release
- * @throws ReleaseFailureException if there is a problem performing the release
- */
- void perform( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, boolean clean )
- throws ReleaseExecutionException, ReleaseFailureException;
+ ReleaseResult performWithResult( ReleasePerformRequest performRequest );
/**
* Perform a release
@@ -256,32 +52,6 @@ public interface ReleaseManager
throws ReleaseExecutionException, ReleaseFailureException;
/**
- * Perform a release, and optionally cleanup.
- *
- * @param releaseDescriptor the configuration to use for release
- * @param settings the settings.xml configuration
- * @param reactorProjects the reactor projects
- * @param clean flag to clean the release after perform
- * @throws ReleaseExecutionException if there is a problem performing the release
- * @throws ReleaseFailureException if there is a problem performing the release
- *
- * @deprecated Use {@link ReleaseManager#perform(ReleaseDescriptor, ReleaseEnvironment, List, boolean)} instead.
- */
- @Deprecated
- void perform( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects,
- boolean clean )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- /**
- * Clean a release.
- *
- * @param releaseDescriptor the configuration to use for release
- * @param reactorProjects the reactor projects
- */
- void clean( ReleaseDescriptor releaseDescriptor, ReleaseManagerListener listener,
- List<MavenProject> reactorProjects );
-
- /**
* Clean a release.
*
* @param cleanRequest all clean arguments
@@ -292,66 +62,6 @@ public interface ReleaseManager
/**
* Rollback changes made by the previous release
*
- * @param releaseDescriptor the configuration to use for release
- * @param releaseEnvironment settings, maven-home, java-home, etc. to use during release.
- * @param reactorProjects the reactor projects
- * @throws ReleaseExecutionException if there is a problem during release rollback
- * @throws ReleaseFailureException if there is a problem during release rollback
- */
- void rollback( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- /**
- * Rollback changes made by the previous release
- *
- * @param releaseDescriptor the configuration to use for release
- * @param settings the settings.xml configuration
- * @param reactorProjects the reactor projects
- * @throws ReleaseExecutionException if there is a problem during release rollback
- * @throws ReleaseFailureException if there is a problem during release rollback
- *
- * @deprecated Use {@link ReleaseManager#rollback(ReleaseDescriptor, ReleaseEnvironment, List)} instead.
- */
- @Deprecated
- void rollback( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- /**
- * Rollback changes made by the previous release
- *
- * @param releaseDescriptor the configuration to use for release
- * @param releaseEnvironment settings, maven-home, java-home, etc. to use during release.
- * @param reactorProjects the reactor projects
- * @param listener the listener
- * @throws ReleaseExecutionException if there is a problem during release rollback
- * @throws ReleaseFailureException if there is a problem during release rollback
- */
- void rollback( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, ReleaseManagerListener listener )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- /**
- * Rollback changes made by the previous release
- *
- * @param releaseDescriptor the configuration to use for release
- * @param settings the settings.xml configuration
- * @param reactorProjects the reactor projects
- * @param listener the listener
- * @throws ReleaseExecutionException if there is a problem during release rollback
- * @throws ReleaseFailureException if there is a problem during release rollback
- *
- * @deprecated Use {@link ReleaseManager#rollback(ReleaseDescriptor, ReleaseEnvironment, List,
- * ReleaseManagerListener)} instead.
- */
- @Deprecated
- void rollback( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects,
- ReleaseManagerListener listener )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- /**
- * Rollback changes made by the previous release
- *
* @param rollbackRequest all rollback arguments
* @throws ReleaseExecutionException if there is a problem during release rollback
* @throws ReleaseFailureException if there is a problem during release rollback
@@ -363,71 +73,6 @@ public interface ReleaseManager
/**
* Branch a project
*
- * @param releaseDescriptor the configuration to use for release
- * @param releaseEnvironment settings, maven-home, java-home, etc. to use during release.
- * @param reactorProjects the reactor projects
- * @param dryRun do not commit any changes to the file system or SCM
- * @throws ReleaseExecutionException if there is a problem during release branch
- * @throws ReleaseFailureException if there is a problem during release branch
- */
- void branch( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, boolean dryRun )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- /**
- * Branch a project
- *
- * @param releaseDescriptor the configuration to use for release
- * @param settings the settings.xml configuration
- * @param reactorProjects the reactor projects
- * @param dryRun do not commit any changes to the file system or SCM
- * @throws ReleaseExecutionException if there is a problem during release branch
- * @throws ReleaseFailureException if there is a problem during release branch
- *
- * @deprecated Use {@link ReleaseManager#branch(ReleaseDescriptor, ReleaseEnvironment, List, boolean)} instead.
- */
- @Deprecated
- void branch( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects,
- boolean dryRun )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- /**
- * Branch a project
- *
- * @param releaseDescriptor the configuration to use for release
- * @param releaseEnvironment settings, maven-home, java-home, etc. to use during release.
- * @param reactorProjects the reactor projects
- * @param dryRun do not commit any changes to the file system or SCM
- * @param listener the listener
- * @throws ReleaseExecutionException if there is a problem during release branch
- * @throws ReleaseFailureException if there is a problem during release branch
- */
- void branch( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects, boolean dryRun, ReleaseManagerListener listener )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- /**
- * Branch a project
- *
- * @param releaseDescriptor the configuration to use for release
- * @param settings the settings.xml configuration
- * @param reactorProjects the reactor projects
- * @param dryRun do not commit any changes to the file system or SCM
- * @param listener the listener
- * @throws ReleaseExecutionException if there is a problem during release branch
- * @throws ReleaseFailureException if there is a problem during release branch
- *
- * @deprecated Use {@link ReleaseManager#branch(ReleaseDescriptor, ReleaseEnvironment, List, boolean,
- * ReleaseManagerListener)} instead.
- */
- @Deprecated
- void branch( ReleaseDescriptor releaseDescriptor, Settings settings, List<MavenProject> reactorProjects,
- boolean dryRun, ReleaseManagerListener listener )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- /**
- * Branch a project
- *
* @param branchRequest all branch arguments
* @throws ReleaseExecutionException if there is a problem during release branch
* @throws ReleaseFailureException if there is a problem during release branch
@@ -438,19 +83,6 @@ public interface ReleaseManager
/**
* Update version numbers for a project
*
- * @param releaseDescriptor the configuration to use for release
- * @param releaseEnvironment settings, maven-home, java-home, etc. to use during release.
- * @param reactorProjects the reactor projects
- * @throws ReleaseExecutionException if there is a problem during update versions
- * @throws ReleaseFailureException if there is a problem during update versions
- */
- void updateVersions( ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment,
- List<MavenProject> reactorProjects )
- throws ReleaseExecutionException, ReleaseFailureException;
-
- /**
- * Update version numbers for a project
- *
* @param updateVersionsRequest all update versions arguments
* @throws ReleaseExecutionException if there is a problem during update versions
* @throws ReleaseFailureException if there is a problem during update versions
diff --git a/maven-release-manager/src/test/java/org/apache/maven/shared/release/DefaultReleaseManagerTest.java b/maven-release-manager/src/test/java/org/apache/maven/shared/release/DefaultReleaseManagerTest.java
index 28bb32e..43a935a 100644
--- a/maven-release-manager/src/test/java/org/apache/maven/shared/release/DefaultReleaseManagerTest.java
+++ b/maven-release-manager/src/test/java/org/apache/maven/shared/release/DefaultReleaseManagerTest.java
@@ -49,7 +49,6 @@ import org.apache.maven.shared.release.config.ReleaseDescriptorStore;
import org.apache.maven.shared.release.config.ReleaseDescriptorStoreException;
import org.apache.maven.shared.release.config.ReleaseDescriptorStoreStub;
import org.apache.maven.shared.release.env.DefaultReleaseEnvironment;
-import org.apache.maven.shared.release.env.ReleaseEnvironment;
import org.apache.maven.shared.release.phase.ReleasePhase;
import org.apache.maven.shared.release.phase.ReleasePhaseStub;
import org.apache.maven.shared.release.scm.ReleaseScmCommandException;
@@ -79,12 +78,16 @@ public class DefaultReleaseManagerTest
public void testPrepareNoCompletedPhase()
throws Exception
{
- ReleaseManager releaseManager = (ReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ ReleaseManager releaseManager = lookup( ReleaseManager.class, "test" );
ReleaseDescriptor releaseDescriptor = configStore.getReleaseConfiguration();
releaseDescriptor.setCompletedPhase( null );
- releaseManager.prepare( new ReleaseDescriptor(), new DefaultReleaseEnvironment(), null );
+ ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
+ prepareRequest.setReleaseDescriptor( releaseDescriptor );
+ prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+
+ releaseManager.prepare( prepareRequest );
ReleasePhaseStub phase = (ReleasePhaseStub) lookup( ReleasePhase.ROLE, "step1" );
assertTrue( "step1 executed", phase.isExecuted() );
@@ -100,12 +103,16 @@ public class DefaultReleaseManagerTest
public void testPrepareCompletedPhase()
throws Exception
{
- ReleaseManager releaseManager = (ReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ ReleaseManager releaseManager = lookup( ReleaseManager.class, "test" );
ReleaseDescriptor releaseDescriptor = configStore.getReleaseConfiguration();
releaseDescriptor.setCompletedPhase( "step1" );
- releaseManager.prepare( new ReleaseDescriptor(), new DefaultReleaseEnvironment(), null );
+ ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
+ prepareRequest.setReleaseDescriptor( releaseDescriptor );
+ prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+
+ releaseManager.prepare( prepareRequest );
ReleasePhaseStub phase = (ReleasePhaseStub) lookup( ReleasePhase.ROLE, "step1" );
assertFalse( "step1 not executed", phase.isExecuted() );
@@ -121,15 +128,21 @@ public class DefaultReleaseManagerTest
public void testPrepareCompletedPhaseNoResume()
throws Exception
{
- ReleaseManager releaseManager = (ReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ ReleaseManager releaseManager = lookup( ReleaseManager.class, "test" );
ReleaseDescriptor releaseDescriptor = configStore.getReleaseConfiguration();
releaseDescriptor.setCompletedPhase( "step1" );
- releaseManager.prepare( new ReleaseDescriptor(), new DefaultReleaseEnvironment(), null, false, false );
+ ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
+ prepareRequest.setReleaseDescriptor( releaseDescriptor );
+ prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+ prepareRequest.setDryRun( false );
+ prepareRequest.setResume( false );
+
+ releaseManager.prepare( prepareRequest );
ReleasePhaseStub phase = (ReleasePhaseStub) lookup( ReleasePhase.ROLE, "step1" );
- assertTrue( "step1 executed", phase.isExecuted() );
+ assertFalse( "step1 executed", phase.isExecuted() );
assertFalse( "step1 not simulated", phase.isSimulated() );
phase = (ReleasePhaseStub) lookup( ReleasePhase.ROLE, "step2" );
assertTrue( "step2 executed", phase.isExecuted() );
@@ -142,12 +155,16 @@ public class DefaultReleaseManagerTest
public void testPrepareCompletedAllPhases()
throws Exception
{
- ReleaseManager releaseManager = (ReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ ReleaseManager releaseManager = lookup( ReleaseManager.class, "test" );
ReleaseDescriptor releaseDescriptor = configStore.getReleaseConfiguration();
releaseDescriptor.setCompletedPhase( "step3" );
+
+ ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
+ prepareRequest.setReleaseDescriptor( releaseDescriptor );
+ prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
- releaseManager.prepare( new ReleaseDescriptor(), new DefaultReleaseEnvironment(), null );
+ releaseManager.prepare( prepareRequest );
ReleasePhaseStub phase = (ReleasePhaseStub) lookup( ReleasePhase.ROLE, "step1" );
assertFalse( "step1 not executed", phase.isExecuted() );
@@ -163,12 +180,16 @@ public class DefaultReleaseManagerTest
public void testPrepareInvalidCompletedPhase()
throws Exception
{
- ReleaseManager releaseManager = (ReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ ReleaseManager releaseManager = lookup( ReleaseManager.class, "test" );
ReleaseDescriptor releaseDescriptor = configStore.getReleaseConfiguration();
releaseDescriptor.setCompletedPhase( "foo" );
- releaseManager.prepare( new ReleaseDescriptor(), new DefaultReleaseEnvironment(), null );
+ ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
+ prepareRequest.setReleaseDescriptor( releaseDescriptor );
+ prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+
+ releaseManager.prepare( prepareRequest );
ReleasePhaseStub phase = (ReleasePhaseStub) lookup( ReleasePhase.ROLE, "step1" );
assertTrue( "step1 executed", phase.isExecuted() );
@@ -184,12 +205,18 @@ public class DefaultReleaseManagerTest
public void testPrepareSimulateNoCompletedPhase()
throws Exception
{
- ReleaseManager releaseManager = (ReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ ReleaseManager releaseManager = lookup( ReleaseManager.class, "test" );
ReleaseDescriptor releaseDescriptor = configStore.getReleaseConfiguration();
releaseDescriptor.setCompletedPhase( null );
- releaseManager.prepare( new ReleaseDescriptor(), new DefaultReleaseEnvironment(), null, true, true );
+ ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
+ prepareRequest.setReleaseDescriptor( releaseDescriptor );
+ prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+ prepareRequest.setDryRun( true );
+ prepareRequest.setResume( true );
+
+ releaseManager.prepare( prepareRequest );
ReleasePhaseStub phase = (ReleasePhaseStub) lookup( ReleasePhase.ROLE, "step1" );
assertTrue( "step1 simulated", phase.isSimulated() );
@@ -205,12 +232,18 @@ public class DefaultReleaseManagerTest
public void testPrepareSimulateCompletedPhase()
throws Exception
{
- ReleaseManager releaseManager = (ReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ ReleaseManager releaseManager = lookup( ReleaseManager.class, "test" );
ReleaseDescriptor releaseDescriptor = configStore.getReleaseConfiguration();
releaseDescriptor.setCompletedPhase( "step1" );
- releaseManager.prepare( new ReleaseDescriptor(), new DefaultReleaseEnvironment(), null, true, true );
+ ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
+ prepareRequest.setReleaseDescriptor( releaseDescriptor );
+ prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+ prepareRequest.setDryRun( true );
+ prepareRequest.setResume( true );
+
+ releaseManager.prepare( prepareRequest );
ReleasePhaseStub phase = (ReleasePhaseStub) lookup( ReleasePhase.ROLE, "step1" );
assertFalse( "step1 not simulated", phase.isSimulated() );
@@ -226,12 +259,18 @@ public class DefaultReleaseManagerTest
public void testPrepareSimulateCompletedAllPhases()
throws Exception
{
- ReleaseManager releaseManager = (ReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ ReleaseManager releaseManager = lookup( ReleaseManager.class, "test" );
ReleaseDescriptor releaseDescriptor = configStore.getReleaseConfiguration();
releaseDescriptor.setCompletedPhase( "step3" );
- releaseManager.prepare( new ReleaseDescriptor(), new DefaultReleaseEnvironment(), null, true, true );
+ ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
+ prepareRequest.setReleaseDescriptor( releaseDescriptor );
+ prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+ prepareRequest.setDryRun( true );
+ prepareRequest.setResume( true );
+
+ releaseManager.prepare( prepareRequest );
ReleasePhaseStub phase = (ReleasePhaseStub) lookup( ReleasePhase.ROLE, "step1" );
assertFalse( "step1 not simulated", phase.isSimulated() );
@@ -247,12 +286,18 @@ public class DefaultReleaseManagerTest
public void testPrepareSimulateInvalidCompletedPhase()
throws Exception
{
- ReleaseManager releaseManager = (ReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ ReleaseManager releaseManager = lookup( ReleaseManager.class, "test" );
ReleaseDescriptor releaseDescriptor = configStore.getReleaseConfiguration();
releaseDescriptor.setCompletedPhase( "foo" );
- releaseManager.prepare( new ReleaseDescriptor(), new DefaultReleaseEnvironment(), null, true, true );
+ ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
+ prepareRequest.setReleaseDescriptor( releaseDescriptor );
+ prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+ prepareRequest.setDryRun( true );
+ prepareRequest.setResume( true );
+
+ releaseManager.prepare( prepareRequest );
ReleasePhaseStub phase = (ReleasePhaseStub) lookup( ReleasePhase.ROLE, "step1" );
assertTrue( "step1 simulated", phase.isSimulated() );
@@ -268,11 +313,14 @@ public class DefaultReleaseManagerTest
public void testPrepareUnknownPhaseConfigured()
throws Exception
{
- ReleaseManager releaseManager = (ReleaseManager) lookup( ReleaseManager.ROLE, "bad-phase-configured" );
+ ReleaseManager releaseManager = lookup( ReleaseManager.class, "bad-phase-configured" );
+ ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
+ prepareRequest.setReleaseDescriptor( new ReleaseDescriptor() );
+ prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
try
{
- releaseManager.prepare( new ReleaseDescriptor(), new DefaultReleaseEnvironment(), null );
+ releaseManager.prepare( prepareRequest );
fail( "Should have failed to find a phase" );
}
catch ( ReleaseExecutionException e )
@@ -289,17 +337,21 @@ public class DefaultReleaseManagerTest
releaseDescriptor.setScmSourceUrl( "scm-url" );
releaseDescriptor.setWorkingDirectory( getTestFile( "target/working-directory" ).getAbsolutePath() );
- DefaultReleaseManager releaseManager = (DefaultReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ DefaultReleaseManager releaseManager = (DefaultReleaseManager) lookup( ReleaseManager.class, "test" );
ReleaseDescriptorStore configStoreMock = mock( ReleaseDescriptorStore.class );
when( configStoreMock.read( releaseDescriptor ) ).thenThrow( new ReleaseDescriptorStoreException( "message", new IOException( "ioExceptionMsg" ) ) );
releaseManager.setConfigStore( configStoreMock );
+
+ ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
+ prepareRequest.setReleaseDescriptor( releaseDescriptor );
+ prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
// execute
try
{
- releaseManager.prepare( releaseDescriptor, new DefaultReleaseEnvironment(), null );
+ releaseManager.prepare( prepareRequest );
fail( "Should have failed to read configuration" );
}
catch ( ReleaseExecutionException e )
@@ -321,17 +373,23 @@ public class DefaultReleaseManagerTest
releaseDescriptor.setScmSourceUrl( "scm-url" );
releaseDescriptor.setWorkingDirectory( getTestFile( "target/working-directory" ).getAbsolutePath() );
- DefaultReleaseManager releaseManager = (DefaultReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ DefaultReleaseManager releaseManager = (DefaultReleaseManager) lookup( ReleaseManager.class, "test" );
ReleaseDescriptorStore configStoreMock = mock( ReleaseDescriptorStore.class );
doThrow( new ReleaseDescriptorStoreException( "message", new IOException( "ioExceptionMsg" ) ) ).when( configStoreMock ).write( releaseDescriptor );
releaseManager.setConfigStore( configStoreMock );
+
+ ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
+ prepareRequest.setReleaseDescriptor( releaseDescriptor );
+ prepareRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+ prepareRequest.setDryRun( false );
+ prepareRequest.setResume( false );
// execute
try
{
- releaseManager.prepare( releaseDescriptor, new DefaultReleaseEnvironment(), null, false, false );
+ releaseManager.prepare( prepareRequest );
fail( "Should have failed to read configuration" );
}
catch ( ReleaseExecutionException e )
@@ -353,14 +411,17 @@ public class DefaultReleaseManagerTest
releaseDescriptor.setScmSourceUrl( "scm-url" );
releaseDescriptor.setWorkingDirectory( getTestFile( "target/working-directory" ).getAbsolutePath() );
- DefaultReleaseManager releaseManager = (DefaultReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ DefaultReleaseManager releaseManager = (DefaultReleaseManager) lookup( ReleaseManager.class, "test" );
ReleaseDescriptorStore configStoreMock = mock( ReleaseDescriptorStore.class );
releaseManager.setConfigStore( configStoreMock );
+ ReleaseCleanRequest cleanRequest = new ReleaseCleanRequest();
+ cleanRequest.setReleaseDescriptor( releaseDescriptor );
+
// execute
- releaseManager.clean( releaseDescriptor, null, null );
+ releaseManager.clean( cleanRequest );
// verify
ReleasePhaseStub phase = (ReleasePhaseStub) lookup( ReleasePhase.ROLE, "step1" );
@@ -391,15 +452,20 @@ public class DefaultReleaseManagerTest
public void testReleasePerformWithResult()
throws Exception
{
- DefaultReleaseManager releaseManager = (DefaultReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ ReleaseManager releaseManager = lookup( ReleaseManager.class, "test" );
ReleaseDescriptor releaseDescriptor = new ReleaseDescriptor();
releaseDescriptor.setScmSourceUrl( "scm-url" );
File checkoutDirectory = getTestFile( "target/checkout-directory" );
releaseDescriptor.setCheckoutDirectory( checkoutDirectory.getAbsolutePath() );
+
+ ReleasePerformRequest performRequest = new ReleasePerformRequest();
+ performRequest.setReleaseDescriptor( releaseDescriptor );
+ performRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+ performRequest.setReactorProjects( createReactorProjects() );
+
+ ReleaseResult result = releaseManager.performWithResult( performRequest );
- ReleaseResult result = releaseManager.performWithResult( releaseDescriptor, new DefaultReleaseEnvironment(),
- createReactorProjects(), null );
assertTrue( result.getOutput().length() > 0 );
}
@@ -411,19 +477,23 @@ public class DefaultReleaseManagerTest
releaseDescriptor.setScmSourceUrl( "scm-url" );
releaseDescriptor.setWorkingDirectory( getTestFile( "target/working-directory" ).getAbsolutePath() );
- DefaultReleaseManager releaseManager = (DefaultReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ DefaultReleaseManager releaseManager = (DefaultReleaseManager) lookup( ReleaseManager.class, "test" );
ReleaseDescriptorStore configStoreMock = mock( ReleaseDescriptorStore.class );
when( configStoreMock.read( releaseDescriptor ) ).thenThrow( new ReleaseDescriptorStoreException( "message", new IOException( "ioExceptionMsg" ) ) );
releaseManager.setConfigStore( configStoreMock );
+
+ ReleasePerformRequest performRequest = new ReleasePerformRequest();
+ performRequest.setReleaseDescriptor( releaseDescriptor );
+ performRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
// execute
try
{
releaseDescriptor.setUseReleaseProfile( false );
- releaseManager.perform( releaseDescriptor, new DefaultReleaseEnvironment(), null );
+ releaseManager.perform( performRequest );
fail( "Should have failed to read configuration" );
}
catch ( ReleaseExecutionException e )
@@ -444,17 +514,21 @@ public class DefaultReleaseManagerTest
releaseDescriptor.setScmSourceUrl( "scm-url" );
releaseDescriptor.setWorkingDirectory( getTestFile( "target/working-directory" ).getAbsolutePath() );
- DefaultReleaseManager releaseManager = (DefaultReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ DefaultReleaseManager releaseManager = (DefaultReleaseManager) lookup( ReleaseManager.class, "test" );
ReleaseDescriptorStoreStub configStore = new ReleaseDescriptorStoreStub();
releaseDescriptor.setCompletedPhase( "scm-tag" );
releaseManager.setConfigStore( configStore );
+ ReleasePerformRequest performRequest = new ReleasePerformRequest();
+ performRequest.setReleaseDescriptor( releaseDescriptor );
+ performRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+
try
{
releaseDescriptor.setUseReleaseProfile( false );
- releaseManager.perform( releaseDescriptor, new DefaultReleaseEnvironment(), null );
+ releaseManager.perform( performRequest );
fail( "Should have failed to perform" );
}
catch ( ReleaseFailureException e )
@@ -481,7 +555,7 @@ public class DefaultReleaseManagerTest
releaseDescriptor.setWorkingDirectory( getTestFile( "target/working-directory" ).getAbsolutePath() );
performRequest.setReleaseDescriptor( releaseDescriptor );
- DefaultReleaseManager releaseManager = (DefaultReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ ReleaseManager releaseManager = lookup( ReleaseManager.class, "test" );
// test
releaseManager.perform( performRequest );
@@ -507,13 +581,17 @@ public class DefaultReleaseManagerTest
ReleaseDescriptor releaseDescriptor = new ReleaseDescriptor();
releaseDescriptor.setWorkingDirectory( getTestFile( "target/test/checkout" ).getAbsolutePath() );
- DefaultReleaseManager releaseManager = (DefaultReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ ReleaseManager releaseManager = lookup( ReleaseManager.class, "test" );
+ ReleasePerformRequest performRequest = new ReleasePerformRequest();
+ performRequest.setReleaseDescriptor( releaseDescriptor );
+ performRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+
try
{
releaseDescriptor.setUseReleaseProfile( false );
- releaseManager.perform( releaseDescriptor, new DefaultReleaseEnvironment(), null );
+ releaseManager.perform( performRequest );
fail( "perform should have failed" );
}
@@ -527,7 +605,7 @@ public class DefaultReleaseManagerTest
throws Exception
{
// prepare
- DefaultReleaseManager releaseManager = (DefaultReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ ReleaseManager releaseManager = lookup( ReleaseManager.class, "test" );
ReleaseDescriptor releaseDescriptor = new ReleaseDescriptor();
releaseDescriptor.setScmSourceUrl( "scm-url" );
@@ -544,10 +622,15 @@ public class DefaultReleaseManagerTest
ScmManagerStub stub = (ScmManagerStub) lookup( ScmManager.ROLE );
stub.setScmProvider( scmProviderMock );
+ ReleasePerformRequest performRequest = new ReleasePerformRequest();
+ performRequest.setReleaseDescriptor( releaseDescriptor );
+ performRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+ performRequest.setReactorProjects( createReactorProjects() );
+
// execute
try
{
- releaseManager.perform( releaseDescriptor, new DefaultReleaseEnvironment(), createReactorProjects() );
+ releaseManager.perform( performRequest );
fail( "commit should have failed" );
}
@@ -565,7 +648,7 @@ public class DefaultReleaseManagerTest
public void testScmResultFailure()
throws Exception
{
- DefaultReleaseManager releaseManager = (DefaultReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ ReleaseManager releaseManager = lookup( ReleaseManager.class, "test" );
ReleaseDescriptor releaseDescriptor = new ReleaseDescriptor();
releaseDescriptor.setScmSourceUrl( "scm-url" );
@@ -577,10 +660,15 @@ public class DefaultReleaseManagerTest
(ScmProviderStub) scmManager.getProviderByUrl( releaseDescriptor.getScmSourceUrl() );
providerStub.setCheckOutScmResult( new CheckOutScmResult( "", "", "", false ) );
+
+ ReleasePerformRequest performRequest = new ReleasePerformRequest();
+ performRequest.setReleaseDescriptor( releaseDescriptor );
+ performRequest.setReleaseEnvironment( new DefaultReleaseEnvironment() );
+ performRequest.setReactorProjects( createReactorProjects() );
try
{
- releaseManager.perform( releaseDescriptor, new DefaultReleaseEnvironment(), createReactorProjects() );
+ releaseManager.perform( performRequest );
fail( "commit should have failed" );
}
@@ -619,9 +707,12 @@ public class DefaultReleaseManagerTest
public void testRollbackCall()
throws Exception
{
- DefaultReleaseManager defaultReleaseManager = (DefaultReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ ReleaseManager releaseManager = lookup( ReleaseManager.class, "test" );
+
+ ReleaseRollbackRequest rollbackRequest = new ReleaseRollbackRequest();
+ rollbackRequest.setReleaseDescriptor( configStore.getReleaseConfiguration() );
- defaultReleaseManager.rollback( configStore.getReleaseConfiguration(), (ReleaseEnvironment) null, null );
+ releaseManager.rollback( rollbackRequest );
ReleasePhaseStub phase = (ReleasePhaseStub) lookup( ReleasePhase.ROLE, "rollbackPhase1" );
@@ -633,9 +724,12 @@ public class DefaultReleaseManagerTest
public void testUpdateVersionsCall()
throws Exception
{
- DefaultReleaseManager defaultReleaseManager = (DefaultReleaseManager) lookup( ReleaseManager.ROLE, "test" );
+ ReleaseManager releaseManager = lookup( ReleaseManager.class, "test" );
+
+ ReleaseUpdateVersionsRequest updateVersionsRequest = new ReleaseUpdateVersionsRequest();
+ updateVersionsRequest.setReleaseDescriptor( configStore.getReleaseConfiguration() );
- defaultReleaseManager.updateVersions( configStore.getReleaseConfiguration(), null, null );
+ releaseManager.updateVersions( updateVersionsRequest );
ReleasePhaseStub phase = (ReleasePhaseStub) lookup( ReleasePhase.ROLE, "updateVersionsPhase1" );
diff --git a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/BranchReleaseMojo.java b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/BranchReleaseMojo.java
index 1ba1a46..14829ea 100644
--- a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/BranchReleaseMojo.java
+++ b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/BranchReleaseMojo.java
@@ -25,6 +25,7 @@ import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.MojoFailureException;
import org.apache.maven.plugins.annotations.Mojo;
import org.apache.maven.plugins.annotations.Parameter;
+import org.apache.maven.shared.release.ReleaseBranchRequest;
import org.apache.maven.shared.release.ReleaseExecutionException;
import org.apache.maven.shared.release.ReleaseFailureException;
import org.apache.maven.shared.release.config.ReleaseDescriptor;
@@ -251,7 +252,13 @@ public class BranchReleaseMojo
try
{
- releaseManager.branch( config, getReleaseEnvironment(), getReactorProjects(), dryRun );
+ ReleaseBranchRequest branchRequest = new ReleaseBranchRequest();
+ branchRequest.setReleaseDescriptor( config );
+ branchRequest.setReleaseEnvironment( getReleaseEnvironment() );
+ branchRequest.setReactorProjects( getReactorProjects() );
+ branchRequest.setDryRun( dryRun );
+
+ releaseManager.branch( branchRequest );
}
catch ( ReleaseExecutionException e )
{
diff --git a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/CleanReleaseMojo.java b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/CleanReleaseMojo.java
index bd77143..4ef5af8 100644
--- a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/CleanReleaseMojo.java
+++ b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/CleanReleaseMojo.java
@@ -22,6 +22,7 @@ package org.apache.maven.plugins.release;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.MojoFailureException;
import org.apache.maven.plugins.annotations.Mojo;
+import org.apache.maven.shared.release.ReleaseCleanRequest;
import org.apache.maven.shared.release.config.ReleaseDescriptor;
/**
@@ -44,7 +45,12 @@ public class CleanReleaseMojo
{
ReleaseDescriptor releaseDescriptor = new ReleaseDescriptor();
releaseDescriptor.setWorkingDirectory( getBasedir().getAbsolutePath() );
- releaseManager.clean( releaseDescriptor, null, getReactorProjects() );
+
+ ReleaseCleanRequest cleanRequest = new ReleaseCleanRequest();
+ cleanRequest.setReleaseDescriptor( releaseDescriptor );
+ cleanRequest.setReactorProjects( getReactorProjects() );
+
+ releaseManager.clean( cleanRequest );
}
}
diff --git a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java
index 80dc9bd..a73962d 100644
--- a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java
+++ b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java
@@ -27,6 +27,7 @@ import org.apache.maven.plugins.annotations.Mojo;
import org.apache.maven.plugins.annotations.Parameter;
import org.apache.maven.shared.release.ReleaseExecutionException;
import org.apache.maven.shared.release.ReleaseFailureException;
+import org.apache.maven.shared.release.ReleasePrepareRequest;
import org.apache.maven.shared.release.config.ReleaseDescriptor;
import org.apache.maven.shared.release.config.ReleaseUtils;
@@ -292,10 +293,17 @@ public class PrepareReleaseMojo
ReleaseDescriptor sysPropertiesConfig =
ReleaseUtils.copyPropertiesToReleaseDescriptor( session.getExecutionProperties() );
mergeCommandLineConfig( config, sysPropertiesConfig );
+
+ ReleasePrepareRequest prepareRequest = new ReleasePrepareRequest();
+ prepareRequest.setReleaseDescriptor( config );
+ prepareRequest.setReleaseEnvironment( getReleaseEnvironment() );
+ prepareRequest.setReactorProjects( getReactorProjects() );
+ prepareRequest.setResume( resume );
+ prepareRequest.setDryRun( dryRun );
try
{
- releaseManager.prepare( config, getReleaseEnvironment(), getReactorProjects(), resume, dryRun );
+ releaseManager.prepare( prepareRequest );
}
catch ( ReleaseExecutionException e )
{
diff --git a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/RollbackReleaseMojo.java b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/RollbackReleaseMojo.java
index 57f1a05..cefcbbe 100644
--- a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/RollbackReleaseMojo.java
+++ b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/RollbackReleaseMojo.java
@@ -24,7 +24,7 @@ import org.apache.maven.plugin.MojoFailureException;
import org.apache.maven.plugins.annotations.Mojo;
import org.apache.maven.shared.release.ReleaseExecutionException;
import org.apache.maven.shared.release.ReleaseFailureException;
-import org.apache.maven.shared.release.config.ReleaseDescriptor;
+import org.apache.maven.shared.release.ReleaseRollbackRequest;
/**
* Rollback changes made by a previous release. This requires that the previous release descriptor
@@ -46,11 +46,14 @@ public class RollbackReleaseMojo
{
super.execute();
- ReleaseDescriptor config = createReleaseDescriptor();
-
try
{
- releaseManager.rollback( config, getReleaseEnvironment(), getReactorProjects() );
+ ReleaseRollbackRequest rollbackRequest = new ReleaseRollbackRequest();
+ rollbackRequest.setReleaseDescriptor( createReleaseDescriptor() );
+ rollbackRequest.setReleaseEnvironment( getReleaseEnvironment() );
+ rollbackRequest.setReactorProjects( getReactorProjects() );
+
+ releaseManager.rollback( rollbackRequest );
}
catch ( ReleaseExecutionException e )
{
diff --git a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/UpdateVersionsMojo.java b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/UpdateVersionsMojo.java
index c67ef62..242ed2b 100644
--- a/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/UpdateVersionsMojo.java
+++ b/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/UpdateVersionsMojo.java
@@ -26,6 +26,7 @@ import org.apache.maven.plugins.annotations.Mojo;
import org.apache.maven.plugins.annotations.Parameter;
import org.apache.maven.shared.release.ReleaseExecutionException;
import org.apache.maven.shared.release.ReleaseFailureException;
+import org.apache.maven.shared.release.ReleaseUpdateVersionsRequest;
import org.apache.maven.shared.release.config.ReleaseDescriptor;
import org.apache.maven.shared.release.config.ReleaseUtils;
@@ -115,7 +116,12 @@ public class UpdateVersionsMojo
try
{
- releaseManager.updateVersions( config, getReleaseEnvironment(), getReactorProjects() );
+ ReleaseUpdateVersionsRequest updateVersionsRequest = new ReleaseUpdateVersionsRequest();
+ updateVersionsRequest.setReleaseDescriptor( config );
+ updateVersionsRequest.setReleaseEnvironment( getReleaseEnvironment() );
+ updateVersionsRequest.setReactorProjects( getReactorProjects() );
+
+ releaseManager.updateVersions( updateVersionsRequest );
}
catch ( ReleaseExecutionException e )
{
diff --git a/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/CleanReleaseMojoTest.java b/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/CleanReleaseMojoTest.java
index f3438e5..6cdd62d 100644
--- a/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/CleanReleaseMojoTest.java
+++ b/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/CleanReleaseMojoTest.java
@@ -28,8 +28,10 @@ import java.io.File;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.MojoFailureException;
import org.apache.maven.plugin.testing.AbstractMojoTestCase;
+import org.apache.maven.shared.release.ReleaseCleanRequest;
import org.apache.maven.shared.release.ReleaseManager;
import org.apache.maven.shared.release.config.ReleaseDescriptor;
+import org.mockito.ArgumentCaptor;
/**
* Test release:clean.
@@ -58,9 +60,8 @@ public class CleanReleaseMojoTest
throws MojoFailureException, MojoExecutionException
{
// prepare
- ReleaseDescriptor descriptor = new ReleaseDescriptor();
- descriptor.setWorkingDirectory( workingDirectory.getAbsolutePath() );
-
+ ArgumentCaptor<ReleaseCleanRequest> request = ArgumentCaptor.forClass( ReleaseCleanRequest.class );
+
ReleaseManager mock = mock( ReleaseManager.class );
mojo.setReleaseManager( mock );
@@ -68,7 +69,12 @@ public class CleanReleaseMojoTest
mojo.execute();
// verify
- verify( mock ).clean( descriptor, null, mojo.getReactorProjects() );
+ verify( mock ).clean( request.capture() );
+
+ assertEquals( workingDirectory.getAbsolutePath(),
+ request.getValue().getReleaseDescriptor().getWorkingDirectory() );
+ assertEquals( mojo.getReactorProjects(), request.getValue().getReactorProjects() );
+
verifyNoMoreInteractions( mock );
}
}
\ No newline at end of file
diff --git a/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PrepareReleaseMojoTest.java b/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PrepareReleaseMojoTest.java
index 299d901..76525d7 100644
--- a/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PrepareReleaseMojoTest.java
+++ b/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/PrepareReleaseMojoTest.java
@@ -19,6 +19,12 @@ package org.apache.maven.plugins.release;
* under the License.
*/
+
+import static org.hamcrest.CoreMatchers.instanceOf;
+import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.CoreMatchers.nullValue;
+import static org.junit.Assert.assertThat;
+
import static org.mockito.Matchers.eq;
import static org.mockito.Matchers.isA;
import static org.mockito.Matchers.isNull;
@@ -38,8 +44,10 @@ import org.apache.maven.plugin.testing.AbstractMojoTestCase;
import org.apache.maven.shared.release.ReleaseExecutionException;
import org.apache.maven.shared.release.ReleaseFailureException;
import org.apache.maven.shared.release.ReleaseManager;
+import org.apache.maven.shared.release.ReleasePrepareRequest;
import org.apache.maven.shared.release.config.ReleaseDescriptor;
import org.apache.maven.shared.release.env.ReleaseEnvironment;
+import org.mockito.ArgumentCaptor;
/**
* Test release:prepare.
@@ -55,7 +63,6 @@ public class PrepareReleaseMojoTest
setVariableValueToObject( mojo, "updateWorkingCopyVersions", Boolean.TRUE );
}
- @SuppressWarnings( "unchecked" )
public void testPrepare()
throws Exception
{
@@ -80,12 +87,18 @@ public class PrepareReleaseMojoTest
// execute
mojo.execute();
+ ArgumentCaptor<ReleasePrepareRequest> prepareRequest = ArgumentCaptor.forClass( ReleasePrepareRequest.class );
+
// verify
- verify( mock ).prepare( eq( releaseDescriptor ), isA( ReleaseEnvironment.class ), isNull( List.class), eq( true ), eq( false ) );
- assertTrue( true );
+ verify( mock ).prepare( prepareRequest.capture() );
+
+ assertThat( prepareRequest.getValue().getReleaseDescriptor(), is( releaseDescriptor ) );
+ assertThat( prepareRequest.getValue().getReleaseEnvironment(), is(instanceOf( ReleaseEnvironment.class ) ) );
+ assertThat( prepareRequest.getValue().getReactorProjects(), is( nullValue() ) );
+ assertThat( prepareRequest.getValue().getResume(), is( true ) );
+ assertThat( prepareRequest.getValue().getDryRun(), is( false ) );
}
- @SuppressWarnings( "unchecked" )
public void testPrepareWithExecutionException()
throws Exception
{
@@ -104,11 +117,7 @@ public class PrepareReleaseMojoTest
releaseDescriptor.setUpdateDependencies( false );
ReleaseManager mock = mock( ReleaseManager.class );
- doThrow( new ReleaseExecutionException( "..." ) ).when( mock ).prepare( eq( releaseDescriptor ),
- isA( ReleaseEnvironment.class ),
- isNull( List.class),
- eq( true ),
- eq( false ) );
+ doThrow( new ReleaseExecutionException( "..." ) ).when( mock ).prepare( isA( ReleasePrepareRequest.class ) );
mojo.setReleaseManager( mock );
//execute
@@ -124,15 +133,10 @@ public class PrepareReleaseMojoTest
}
// verify
- verify( mock ).prepare( eq( releaseDescriptor ),
- isA( ReleaseEnvironment.class ),
- isNull( List.class),
- eq( true ),
- eq( false ) );
+ verify( mock ).prepare( isA( ReleasePrepareRequest.class ) );
verifyNoMoreInteractions( mock );
}
- @SuppressWarnings( "unchecked" )
public void testPrepareWithExecutionFailure()
throws Exception
{
@@ -152,11 +156,7 @@ public class PrepareReleaseMojoTest
ReleaseManager mock = mock( ReleaseManager.class );
ReleaseFailureException cause = new ReleaseFailureException( "..." );
- doThrow( cause ).when( mock ).prepare( eq( releaseDescriptor ),
- isA( ReleaseEnvironment.class ),
- isNull( List.class),
- eq( true ),
- eq( false ) );
+ doThrow( cause ).when( mock ).prepare( isA( ReleasePrepareRequest.class ) );
mojo.setReleaseManager( mock );
// execute
@@ -171,11 +171,7 @@ public class PrepareReleaseMojoTest
assertEquals( "Check cause exists", cause, e.getCause() );
}
// verify
- verify( mock ).prepare( eq( releaseDescriptor ),
- isA( ReleaseEnvironment.class ),
- isNull( List.class),
- eq( true ),
- eq( false ) );
+ verify( mock ).prepare( isA( ReleasePrepareRequest.class ) );
verifyNoMoreInteractions( mock );
}
--
To stop receiving notification emails like this one, please contact
['"commits@maven.apache.org" <co...@maven.apache.org>'].