Class AbstractRewritePomsPhase
- java.lang.Object
-
- org.codehaus.plexus.logging.AbstractLogEnabled
-
- org.apache.maven.shared.release.phase.AbstractReleasePhase
-
- org.apache.maven.shared.release.phase.AbstractRewritePomsPhase
-
- All Implemented Interfaces:
ReleasePhase,ResourceGenerator,org.codehaus.plexus.logging.LogEnabled
- Direct Known Subclasses:
RewritePomsForBranchPhase,RewritePomsForDevelopmentPhase,RewritePomsForReleasePhase,RewritePomVersionsPhase
public abstract class AbstractRewritePomsPhase extends AbstractReleasePhase implements ResourceGenerator
Base class for rewriting phases.
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.Stringlsprivate java.lang.StringmodelETLUse jdom-sax as defaultprivate java.util.Map<java.lang.String,ModelETLFactory>modelETLFactoriesprivate ScmRepositoryConfiguratorscmRepositoryConfiguratorTool that gets a configured SCM repository from release configuration.private java.util.Map<java.lang.String,ScmTranslator>scmTranslatorsSCM URL translators mapped by provider name.private longstartTime
-
Constructor Summary
Constructors Constructor Description AbstractRewritePomsPhase()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description ReleaseResultclean(java.util.List<org.apache.maven.project.MavenProject> reactorProjects)Clean up after a phase if it leaves any additional files in the checkout.ReleaseResultexecute(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects)Execute the phase.protected abstract java.lang.StringgetNextVersion(ReleaseDescriptor releaseDescriptor, java.lang.String key)protected java.lang.StringgetOriginalResolvedSnapshotVersion(java.lang.String artifactVersionlessKey, ReleaseDescriptor releaseDescriptor)protected abstract java.lang.StringgetOriginalVersion(ReleaseDescriptor releaseDescriptor, java.lang.String projectKey, boolean simulate)protected abstract java.lang.StringgetPomSuffix()protected abstract java.lang.StringgetResolvedSnapshotVersion(java.lang.String artifactVersionlessKey, ReleaseDescriptor releaseDscriptor)protected java.util.Map<java.lang.String,ScmTranslator>getScmTranslators()protected booleanisUpdateScm()private voidprepareScm(java.io.File pomFile, ReleaseDescriptor releaseDescriptor, org.apache.maven.scm.repository.ScmRepository repository, org.apache.maven.scm.provider.ScmProvider provider)private voidrewriteArtifactVersions(java.util.Collection<MavenCoordinate> elements, org.apache.maven.model.Model projectModel, java.util.Properties properties, ReleaseResult result, ReleaseDescriptor releaseDescriptor, boolean simulate)private voidrewriteBuildOutputTimestampProperty(java.util.Properties properties, ReleaseResult result)private java.lang.StringrewriteParent(org.apache.maven.project.MavenProject project, org.apache.maven.model.Model targetModel, ReleaseDescriptor releaseDescriptor, boolean simulate)private voidrewriteVersion(org.apache.maven.model.Model modelTarget, ReleaseDescriptor releaseDescriptor, java.lang.String projectId, org.apache.maven.project.MavenProject project, java.lang.String parentVersion)voidsetLs(java.lang.String ls)voidsetModelETL(java.lang.String modelETL)voidsetStartTime(long startTime)ReleaseResultsimulate(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects)Simulate the phase, but don't make any changes to the project.private java.util.Collection<MavenCoordinate>toMavenCoordinates(java.util.List<?> objects)private voidtransform(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects, boolean simulate, ReleaseResult result)private voidtransformDocument(org.apache.maven.project.MavenProject project, org.apache.maven.model.Model modelTarget, ReleaseDescriptor releaseDescriptor, org.apache.maven.scm.repository.ScmRepository scmRepository, ReleaseResult result, boolean simulate)private voidtransformProject(org.apache.maven.project.MavenProject project, ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, boolean simulate, ReleaseResult result)protected abstract voidtransformScm(org.apache.maven.project.MavenProject project, org.apache.maven.model.Model modelTarget, ReleaseDescriptor releaseDescriptor, java.lang.String projectId, org.apache.maven.scm.repository.ScmRepository scmRepository, ReleaseResult result)protected static java.lang.StringtranslateUrlPath(java.lang.String trunkPath, java.lang.String tagPath, java.lang.String urlPath)Determines the relative path from trunk to tag, and adds this relative path to the url.-
Methods inherited from class org.apache.maven.shared.release.phase.AbstractReleasePhase
getReleaseResultSuccess, logDebug, logDebug, logError, logInfo, logWarn
-
-
-
-
Field Detail
-
scmRepositoryConfigurator
@Requirement private ScmRepositoryConfigurator scmRepositoryConfigurator
Tool that gets a configured SCM repository from release configuration.
-
modelETLFactories
@Requirement(role=ModelETLFactory.class) private java.util.Map<java.lang.String,ModelETLFactory> modelETLFactories
-
modelETL
private java.lang.String modelETL
Use jdom-sax as default
-
scmTranslators
@Requirement(role=ScmTranslator.class) private java.util.Map<java.lang.String,ScmTranslator> scmTranslators
SCM URL translators mapped by provider name.
-
ls
private java.lang.String ls
-
startTime
private long startTime
-
-
Method Detail
-
getScmTranslators
protected final java.util.Map<java.lang.String,ScmTranslator> getScmTranslators()
-
setLs
public void setLs(java.lang.String ls)
-
setModelETL
public void setModelETL(java.lang.String modelETL)
-
setStartTime
public void setStartTime(long startTime)
-
getPomSuffix
protected abstract java.lang.String getPomSuffix()
-
execute
public ReleaseResult execute(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects) throws ReleaseExecutionException, ReleaseFailureException
Description copied from interface:ReleasePhaseExecute the phase.- Specified by:
executein interfaceReleasePhase- Parameters:
releaseDescriptor- the configuration to usereleaseEnvironment- the environmental configuration, such as Maven settings, Maven home, etc.reactorProjects- the reactor projects- Returns:
- the release result
- Throws:
ReleaseExecutionException- an exception during the execution of the phaseReleaseFailureException- a failure during the execution of the phase
-
simulate
public ReleaseResult simulate(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects) throws ReleaseExecutionException, ReleaseFailureException
Description copied from interface:ReleasePhaseSimulate the phase, but don't make any changes to the project.- Specified by:
simulatein interfaceReleasePhase- Parameters:
releaseDescriptor- the configuration to usereleaseEnvironment- the environmental configuration, such as Maven settings, Maven home, etc.reactorProjects- the reactor projects- Returns:
- the release result
- Throws:
ReleaseExecutionException- an exception during the execution of the phaseReleaseFailureException- a failure during the execution of the phase
-
clean
public ReleaseResult clean(java.util.List<org.apache.maven.project.MavenProject> reactorProjects)
Description copied from interface:ResourceGeneratorClean up after a phase if it leaves any additional files in the checkout.- Specified by:
cleanin interfaceResourceGenerator- Parameters:
reactorProjects- the reactor projects- Returns:
- the release result
-
transform
private void transform(ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, java.util.List<org.apache.maven.project.MavenProject> reactorProjects, boolean simulate, ReleaseResult result) throws ReleaseExecutionException, ReleaseFailureException
-
transformProject
private void transformProject(org.apache.maven.project.MavenProject project, ReleaseDescriptor releaseDescriptor, ReleaseEnvironment releaseEnvironment, boolean simulate, ReleaseResult result) throws ReleaseExecutionException, ReleaseFailureException
-
transformDocument
private void transformDocument(org.apache.maven.project.MavenProject project, org.apache.maven.model.Model modelTarget, ReleaseDescriptor releaseDescriptor, org.apache.maven.scm.repository.ScmRepository scmRepository, ReleaseResult result, boolean simulate) throws ReleaseExecutionException, ReleaseFailureException
-
rewriteBuildOutputTimestampProperty
private void rewriteBuildOutputTimestampProperty(java.util.Properties properties, ReleaseResult result)
-
rewriteVersion
private void rewriteVersion(org.apache.maven.model.Model modelTarget, ReleaseDescriptor releaseDescriptor, java.lang.String projectId, org.apache.maven.project.MavenProject project, java.lang.String parentVersion) throws ReleaseFailureException- Throws:
ReleaseFailureException
-
rewriteParent
private java.lang.String rewriteParent(org.apache.maven.project.MavenProject project, org.apache.maven.model.Model targetModel, ReleaseDescriptor releaseDescriptor, boolean simulate) throws ReleaseFailureException- Throws:
ReleaseFailureException
-
rewriteArtifactVersions
private void rewriteArtifactVersions(java.util.Collection<MavenCoordinate> elements, org.apache.maven.model.Model projectModel, java.util.Properties properties, ReleaseResult result, ReleaseDescriptor releaseDescriptor, boolean simulate) throws ReleaseExecutionException, ReleaseFailureException
-
prepareScm
private void prepareScm(java.io.File pomFile, ReleaseDescriptor releaseDescriptor, org.apache.maven.scm.repository.ScmRepository repository, org.apache.maven.scm.provider.ScmProvider provider) throws ReleaseExecutionException, ReleaseScmCommandException
-
getResolvedSnapshotVersion
protected abstract java.lang.String getResolvedSnapshotVersion(java.lang.String artifactVersionlessKey, ReleaseDescriptor releaseDscriptor)
-
getOriginalVersion
protected abstract java.lang.String getOriginalVersion(ReleaseDescriptor releaseDescriptor, java.lang.String projectKey, boolean simulate)
-
getNextVersion
protected abstract java.lang.String getNextVersion(ReleaseDescriptor releaseDescriptor, java.lang.String key)
-
transformScm
protected abstract void transformScm(org.apache.maven.project.MavenProject project, org.apache.maven.model.Model modelTarget, ReleaseDescriptor releaseDescriptor, java.lang.String projectId, org.apache.maven.scm.repository.ScmRepository scmRepository, ReleaseResult result) throws ReleaseExecutionException- Throws:
ReleaseExecutionException
-
isUpdateScm
protected boolean isUpdateScm()
- Returns:
trueif the SCM-section should be updated, otherwisefalse- Since:
- 2.4
-
getOriginalResolvedSnapshotVersion
protected java.lang.String getOriginalResolvedSnapshotVersion(java.lang.String artifactVersionlessKey, ReleaseDescriptor releaseDescriptor)
-
translateUrlPath
protected static java.lang.String translateUrlPath(java.lang.String trunkPath, java.lang.String tagPath, java.lang.String urlPath)Determines the relative path from trunk to tag, and adds this relative path to the url.- Parameters:
trunkPath- - The trunk urltagPath- - The tag baseurlPath- - scm.url or scm.connection- Returns:
- The url path for the tag.
-
toMavenCoordinates
private java.util.Collection<MavenCoordinate> toMavenCoordinates(java.util.List<?> objects)
-
-