org.apache.maven.shared.release
Class DefaultReleaseManager

java.lang.Object
  extended by org.codehaus.plexus.logging.AbstractLogEnabled
      extended by org.apache.maven.shared.release.DefaultReleaseManager
All Implemented Interfaces:
ReleaseManager, org.codehaus.plexus.logging.LogEnabled

public class DefaultReleaseManager
extends org.codehaus.plexus.logging.AbstractLogEnabled
implements ReleaseManager

Implementation of the release manager.

Author:
Brett Porter

Field Summary
 
Fields inherited from interface org.apache.maven.shared.release.ReleaseManager
ROLE
 
Constructor Summary
DefaultReleaseManager()
           
 
Method Summary
 void branch(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List reactorProjects, boolean dryRun)
          Branch a project
 void branch(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List reactorProjects, boolean dryRun, ReleaseManagerListener listener)
          Branch a project
 void branch(ReleaseDescriptor releaseDescriptor, org.apache.maven.settings.Settings settings, java.util.List reactorProjects, boolean dryRun)
          Branch a project
 void branch(ReleaseDescriptor releaseDescriptor, org.apache.maven.settings.Settings settings, java.util.List reactorProjects, boolean dryRun, ReleaseManagerListener listener)
          Branch a project
 void clean(ReleaseDescriptor releaseDescriptor, ReleaseManagerListener listener, java.util.List reactorProjects)
          Clean a release.
protected  java.io.File determineWorkingDirectory(java.io.File checkoutDirectory, java.lang.String relativePathProjectDirectory)
          Determines the path of the working directory.
 void perform(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List reactorProjects)
          Perform a release.
 void perform(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List reactorProjects, boolean clean)
          Perform a release, and optionnaly cleanup.
 void perform(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List reactorProjects, ReleaseManagerListener listener)
          Perform a release.
 void perform(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List reactorProjects, ReleaseManagerListener listener, boolean clean)
           
 void perform(ReleaseDescriptor releaseDescriptor, org.apache.maven.settings.Settings settings, java.util.List reactorProjects)
          Perform a release.
 void perform(ReleaseDescriptor releaseDescriptor, org.apache.maven.settings.Settings settings, java.util.List reactorProjects, boolean clean)
          Perform a release, and optionnaly cleanup.
 void perform(ReleaseDescriptor releaseDescriptor, org.apache.maven.settings.Settings settings, java.util.List reactorProjects, ReleaseManagerListener listener)
          Perform a release.
 ReleaseResult performWithResult(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List reactorProjects, ReleaseManagerListener listener)
           
 ReleaseResult performWithResult(ReleaseDescriptor releaseDescriptor, org.apache.maven.settings.Settings settings, java.util.List reactorProjects, ReleaseManagerListener listener)
           
 void prepare(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List reactorProjects)
          Prepare a release.
 void prepare(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List reactorProjects, boolean resume, boolean dryRun)
          Prepare a release.
 void prepare(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List reactorProjects, boolean resume, boolean dryRun, ReleaseManagerListener listener)
          Prepare a release.
 void prepare(ReleaseDescriptor releaseDescriptor, org.apache.maven.settings.Settings settings, java.util.List reactorProjects)
          Prepare a release.
 void prepare(ReleaseDescriptor releaseDescriptor, org.apache.maven.settings.Settings settings, java.util.List reactorProjects, boolean resume, boolean dryRun)
          Prepare a release.
 void prepare(ReleaseDescriptor releaseDescriptor, org.apache.maven.settings.Settings settings, java.util.List reactorProjects, boolean resume, boolean dryRun, ReleaseManagerListener listener)
          Prepare a release.
 ReleaseResult prepareWithResult(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List reactorProjects, boolean resume, boolean dryRun, ReleaseManagerListener listener)
           
 ReleaseResult prepareWithResult(ReleaseDescriptor releaseDescriptor, org.apache.maven.settings.Settings settings, java.util.List reactorProjects, boolean resume, boolean dryRun, ReleaseManagerListener listener)
           
 void rollback(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List reactorProjects)
          Rollback changes made by the previous release
 void rollback(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List reactorProjects, ReleaseManagerListener listener)
          Rollback changes made by the previous release
 void rollback(ReleaseDescriptor releaseDescriptor, org.apache.maven.settings.Settings settings, java.util.List reactorProjects)
          Rollback changes made by the previous release
 void rollback(ReleaseDescriptor releaseDescriptor, org.apache.maven.settings.Settings settings, java.util.List reactorProjects, ReleaseManagerListener listener)
          Rollback changes made by the previous release
 
Methods inherited from class org.codehaus.plexus.logging.AbstractLogEnabled
enableLogging, getLogger, setupLogger, setupLogger, setupLogger
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultReleaseManager

public DefaultReleaseManager()
Method Detail

prepare

public void prepare(ReleaseDescriptor releaseDescriptor,
                    ReleaseEnvironment releaseEnvironment,
                    java.util.List reactorProjects)
             throws ReleaseExecutionException,
                    ReleaseFailureException
Description copied from interface: ReleaseManager
Prepare a release.

Specified by:
prepare in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to pass to the preparation steps
releaseEnvironment - settings, maven-home, java-home, etc. to use during release.
reactorProjects - the reactor projects
Throws:
ReleaseExecutionException - if there is a problem performing the release
ReleaseFailureException - if there is a problem performing the release

prepare

public void prepare(ReleaseDescriptor releaseDescriptor,
                    ReleaseEnvironment releaseEnvironment,
                    java.util.List reactorProjects,
                    boolean resume,
                    boolean dryRun)
             throws ReleaseExecutionException,
                    ReleaseFailureException
Description copied from interface: ReleaseManager
Prepare a release.

Specified by:
prepare in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to pass to the preparation steps
releaseEnvironment - settings, maven-home, java-home, etc. to use during release.
reactorProjects - the reactor projects
resume - resume a previous release, if the properties file exists
dryRun - do not commit any changes to the file system or SCM
Throws:
ReleaseExecutionException - if there is a problem performing the release
ReleaseFailureException - if there is a problem performing the release

prepareWithResult

public ReleaseResult prepareWithResult(ReleaseDescriptor releaseDescriptor,
                                       ReleaseEnvironment releaseEnvironment,
                                       java.util.List reactorProjects,
                                       boolean resume,
                                       boolean dryRun,
                                       ReleaseManagerListener listener)
Specified by:
prepareWithResult in interface ReleaseManager

prepare

public void prepare(ReleaseDescriptor releaseDescriptor,
                    ReleaseEnvironment releaseEnvironment,
                    java.util.List reactorProjects,
                    boolean resume,
                    boolean dryRun,
                    ReleaseManagerListener listener)
             throws ReleaseExecutionException,
                    ReleaseFailureException
Description copied from interface: ReleaseManager
Prepare a release.

Specified by:
prepare in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to pass to the preparation steps
releaseEnvironment - settings, maven-home, java-home, etc. to use during release.
reactorProjects - the reactor projects
resume - resume a previous release, if the properties file exists
dryRun - do not commit any changes to the file system or SCM
listener - the listener
Throws:
ReleaseExecutionException - if there is a problem performing the release
ReleaseFailureException - if there is a problem performing the release

rollback

public void rollback(ReleaseDescriptor releaseDescriptor,
                     ReleaseEnvironment releaseEnvironment,
                     java.util.List reactorProjects)
              throws ReleaseExecutionException,
                     ReleaseFailureException
Description copied from interface: ReleaseManager
Rollback changes made by the previous release

Specified by:
rollback in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to use for release
releaseEnvironment - settings, maven-home, java-home, etc. to use during release.
reactorProjects - the reactor projects
Throws:
ReleaseExecutionException - if there is a problem during release rollback
ReleaseFailureException - if there is a problem during release rollback

rollback

public void rollback(ReleaseDescriptor releaseDescriptor,
                     ReleaseEnvironment releaseEnvironment,
                     java.util.List reactorProjects,
                     ReleaseManagerListener listener)
              throws ReleaseExecutionException,
                     ReleaseFailureException
Description copied from interface: ReleaseManager
Rollback changes made by the previous release

Specified by:
rollback in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to use for release
releaseEnvironment - settings, maven-home, java-home, etc. to use during release.
reactorProjects - the reactor projects
listener - the listener
Throws:
ReleaseExecutionException - if there is a problem during release rollback
ReleaseFailureException - if there is a problem during release rollback

perform

public void perform(ReleaseDescriptor releaseDescriptor,
                    ReleaseEnvironment releaseEnvironment,
                    java.util.List reactorProjects)
             throws ReleaseExecutionException,
                    ReleaseFailureException
Description copied from interface: ReleaseManager
Perform a release.

Specified by:
perform in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to use for release
releaseEnvironment - settings, maven-home, java-home, etc. to use during release.
reactorProjects - the reactor projects
Throws:
ReleaseExecutionException - if there is a problem performing the release
ReleaseFailureException - if there is a problem performing the release

perform

public void perform(ReleaseDescriptor releaseDescriptor,
                    ReleaseEnvironment releaseEnvironment,
                    java.util.List reactorProjects,
                    boolean clean)
             throws ReleaseExecutionException,
                    ReleaseFailureException
Description copied from interface: ReleaseManager
Perform a release, and optionnaly cleanup.

Specified by:
perform in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to use for release
releaseEnvironment - settings, maven-home, java-home, etc. to use during release.
reactorProjects - the reactor projects
clean - flag to clean the release after perform
Throws:
ReleaseExecutionException - if there is a problem performing the release
ReleaseFailureException - if there is a problem performing the release

perform

public void perform(ReleaseDescriptor releaseDescriptor,
                    ReleaseEnvironment releaseEnvironment,
                    java.util.List reactorProjects,
                    ReleaseManagerListener listener)
             throws ReleaseExecutionException,
                    ReleaseFailureException
Description copied from interface: ReleaseManager
Perform a release.

Specified by:
perform in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to use for release
releaseEnvironment - settings, maven-home, java-home, etc. to use during release.
reactorProjects - the reactor projects
listener - the listener
Throws:
ReleaseExecutionException - if there is a problem performing the release
ReleaseFailureException - if there is a problem performing the release

perform

public void perform(ReleaseDescriptor releaseDescriptor,
                    ReleaseEnvironment releaseEnvironment,
                    java.util.List reactorProjects,
                    ReleaseManagerListener listener,
                    boolean clean)
             throws ReleaseExecutionException,
                    ReleaseFailureException
Throws:
ReleaseExecutionException
ReleaseFailureException

performWithResult

public ReleaseResult performWithResult(ReleaseDescriptor releaseDescriptor,
                                       ReleaseEnvironment releaseEnvironment,
                                       java.util.List reactorProjects,
                                       ReleaseManagerListener listener)
Specified by:
performWithResult in interface ReleaseManager

branch

public void branch(ReleaseDescriptor releaseDescriptor,
                   ReleaseEnvironment releaseEnvironment,
                   java.util.List reactorProjects,
                   boolean dryRun)
            throws ReleaseExecutionException,
                   ReleaseFailureException
Description copied from interface: ReleaseManager
Branch a project

Specified by:
branch in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to use for release
releaseEnvironment - settings, maven-home, java-home, etc. to use during release.
reactorProjects - the reactor projects
dryRun - do not commit any changes to the file system or SCM
Throws:
ReleaseExecutionException - if there is a problem during release rollback
ReleaseFailureException - if there is a problem during release rollback

branch

public void branch(ReleaseDescriptor releaseDescriptor,
                   ReleaseEnvironment releaseEnvironment,
                   java.util.List reactorProjects,
                   boolean dryRun,
                   ReleaseManagerListener listener)
            throws ReleaseExecutionException,
                   ReleaseFailureException
Description copied from interface: ReleaseManager
Branch a project

Specified by:
branch in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to use for release
releaseEnvironment - settings, maven-home, java-home, etc. to use during release.
reactorProjects - the reactor projects
dryRun - do not commit any changes to the file system or SCM
listener - the listener
Throws:
ReleaseExecutionException - if there is a problem during release rollback
ReleaseFailureException - if there is a problem during release rollback

determineWorkingDirectory

protected java.io.File determineWorkingDirectory(java.io.File checkoutDirectory,
                                                 java.lang.String relativePathProjectDirectory)
Determines the path of the working directory. By default, this is the checkout directory. For some SCMs, the project root directory is not the checkout directory itself, but a SCM-specific subdirectory.

Parameters:
checkoutDirectory - The checkout directory as java.io.File
relativePathProjectDirectory - The relative path of the project directory within the checkout directory or ""
Returns:
The working directory

clean

public void clean(ReleaseDescriptor releaseDescriptor,
                  ReleaseManagerListener listener,
                  java.util.List reactorProjects)
Description copied from interface: ReleaseManager
Clean a release.

Specified by:
clean in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to use for release
reactorProjects - the reactor projects

branch

public void branch(ReleaseDescriptor releaseDescriptor,
                   org.apache.maven.settings.Settings settings,
                   java.util.List reactorProjects,
                   boolean dryRun)
            throws ReleaseExecutionException,
                   ReleaseFailureException
Description copied from interface: ReleaseManager
Branch a project

Specified by:
branch in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to use for release
settings - the settings.xml configuration
reactorProjects - the reactor projects
dryRun - do not commit any changes to the file system or SCM
Throws:
ReleaseExecutionException - if there is a problem during release rollback
ReleaseFailureException - if there is a problem during release rollback

branch

public void branch(ReleaseDescriptor releaseDescriptor,
                   org.apache.maven.settings.Settings settings,
                   java.util.List reactorProjects,
                   boolean dryRun,
                   ReleaseManagerListener listener)
            throws ReleaseExecutionException,
                   ReleaseFailureException
Description copied from interface: ReleaseManager
Branch a project

Specified by:
branch in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to use for release
settings - the settings.xml configuration
reactorProjects - the reactor projects
dryRun - do not commit any changes to the file system or SCM
listener - the listener
Throws:
ReleaseExecutionException - if there is a problem during release rollback
ReleaseFailureException - if there is a problem during release rollback

perform

public void perform(ReleaseDescriptor releaseDescriptor,
                    org.apache.maven.settings.Settings settings,
                    java.util.List reactorProjects)
             throws ReleaseExecutionException,
                    ReleaseFailureException
Description copied from interface: ReleaseManager
Perform a release.

Specified by:
perform in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to use for release
settings - the settings.xml configuration
reactorProjects - the reactor projects
Throws:
ReleaseExecutionException - if there is a problem performing the release
ReleaseFailureException - if there is a problem performing the release

perform

public void perform(ReleaseDescriptor releaseDescriptor,
                    org.apache.maven.settings.Settings settings,
                    java.util.List reactorProjects,
                    ReleaseManagerListener listener)
             throws ReleaseExecutionException,
                    ReleaseFailureException
Description copied from interface: ReleaseManager
Perform a release.

Specified by:
perform in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to use for release
settings - the settings.xml configuration
reactorProjects - the reactor projects
listener - the listener
Throws:
ReleaseExecutionException - if there is a problem performing the release
ReleaseFailureException - if there is a problem performing the release

perform

public void perform(ReleaseDescriptor releaseDescriptor,
                    org.apache.maven.settings.Settings settings,
                    java.util.List reactorProjects,
                    boolean clean)
             throws ReleaseExecutionException,
                    ReleaseFailureException
Description copied from interface: ReleaseManager
Perform a release, and optionnaly cleanup.

Specified by:
perform in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to use for release
settings - the settings.xml configuration
reactorProjects - the reactor projects
clean - flag to clean the release after perform
Throws:
ReleaseExecutionException - if there is a problem performing the release
ReleaseFailureException - if there is a problem performing the release

performWithResult

public ReleaseResult performWithResult(ReleaseDescriptor releaseDescriptor,
                                       org.apache.maven.settings.Settings settings,
                                       java.util.List reactorProjects,
                                       ReleaseManagerListener listener)
Specified by:
performWithResult in interface ReleaseManager

prepare

public void prepare(ReleaseDescriptor releaseDescriptor,
                    org.apache.maven.settings.Settings settings,
                    java.util.List reactorProjects)
             throws ReleaseExecutionException,
                    ReleaseFailureException
Description copied from interface: ReleaseManager
Prepare a release.

Specified by:
prepare in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to pass to the preparation steps
settings - the settings.xml configuration
reactorProjects - the reactor projects
Throws:
ReleaseExecutionException - if there is a problem performing the release
ReleaseFailureException - if there is a problem performing the release

prepare

public void prepare(ReleaseDescriptor releaseDescriptor,
                    org.apache.maven.settings.Settings settings,
                    java.util.List reactorProjects,
                    boolean resume,
                    boolean dryRun)
             throws ReleaseExecutionException,
                    ReleaseFailureException
Description copied from interface: ReleaseManager
Prepare a release.

Specified by:
prepare in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to pass to the preparation steps
settings - the settings.xml configuration
reactorProjects - the reactor projects
resume - resume a previous release, if the properties file exists
dryRun - do not commit any changes to the file system or SCM
Throws:
ReleaseExecutionException - if there is a problem performing the release
ReleaseFailureException - if there is a problem performing the release

prepare

public void prepare(ReleaseDescriptor releaseDescriptor,
                    org.apache.maven.settings.Settings settings,
                    java.util.List reactorProjects,
                    boolean resume,
                    boolean dryRun,
                    ReleaseManagerListener listener)
             throws ReleaseExecutionException,
                    ReleaseFailureException
Description copied from interface: ReleaseManager
Prepare a release.

Specified by:
prepare in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to pass to the preparation steps
settings - the settings.xml configuration
reactorProjects - the reactor projects
resume - resume a previous release, if the properties file exists
dryRun - do not commit any changes to the file system or SCM
listener - the listener
Throws:
ReleaseExecutionException - if there is a problem performing the release
ReleaseFailureException - if there is a problem performing the release

prepareWithResult

public ReleaseResult prepareWithResult(ReleaseDescriptor releaseDescriptor,
                                       org.apache.maven.settings.Settings settings,
                                       java.util.List reactorProjects,
                                       boolean resume,
                                       boolean dryRun,
                                       ReleaseManagerListener listener)
Specified by:
prepareWithResult in interface ReleaseManager

rollback

public void rollback(ReleaseDescriptor releaseDescriptor,
                     org.apache.maven.settings.Settings settings,
                     java.util.List reactorProjects,
                     ReleaseManagerListener listener)
              throws ReleaseExecutionException,
                     ReleaseFailureException
Description copied from interface: ReleaseManager
Rollback changes made by the previous release

Specified by:
rollback in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to use for release
settings - the settings.xml configuration
reactorProjects - the reactor projects
listener - the listener
Throws:
ReleaseExecutionException - if there is a problem during release rollback
ReleaseFailureException - if there is a problem during release rollback

rollback

public void rollback(ReleaseDescriptor releaseDescriptor,
                     org.apache.maven.settings.Settings settings,
                     java.util.List reactorProjects)
              throws ReleaseExecutionException,
                     ReleaseFailureException
Description copied from interface: ReleaseManager
Rollback changes made by the previous release

Specified by:
rollback in interface ReleaseManager
Parameters:
releaseDescriptor - the configuration to use for release
settings - the settings.xml configuration
reactorProjects - the reactor projects
Throws:
ReleaseExecutionException - if there is a problem during release rollback
ReleaseFailureException - if there is a problem during release rollback


Copyright © 2002-2009 Apache Software Foundation. All Rights Reserved.