You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm-commits@maven.apache.org by ev...@apache.org on 2006/03/02 16:02:54 UTC

svn commit: r382401 - in /maven/scm/trunk/maven-scm-plugin: pom.xml src/main/java/org/apache/maven/scm/plugin/UpdateMojo.java

Author: evenisse
Date: Thu Mar  2 07:02:53 2006
New Revision: 382401

URL: http://svn.apache.org/viewcvs?rev=382401&view=rev
Log:
[SCM-169] Store scm revision if it's available in project properties

Modified:
    maven/scm/trunk/maven-scm-plugin/pom.xml
    maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/UpdateMojo.java

Modified: maven/scm/trunk/maven-scm-plugin/pom.xml
URL: http://svn.apache.org/viewcvs/maven/scm/trunk/maven-scm-plugin/pom.xml?rev=382401&r1=382400&r2=382401&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-plugin/pom.xml (original)
+++ maven/scm/trunk/maven-scm-plugin/pom.xml Thu Mar  2 07:02:53 2006
@@ -38,6 +38,11 @@
       <artifactId>maven-plugin-api</artifactId>
       <version>2.0</version>
     </dependency>
+      <dependency>
+        <groupId>org.apache.maven</groupId>
+        <artifactId>maven-project</artifactId>
+        <version>2.0</version>
+      </dependency>
     <dependency>
       <groupId>org.apache.maven.scm</groupId>
       <artifactId>maven-scm-manager-plexus</artifactId>

Modified: maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/UpdateMojo.java
URL: http://svn.apache.org/viewcvs/maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/UpdateMojo.java?rev=382401&r1=382400&r2=382401&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/UpdateMojo.java (original)
+++ maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/UpdateMojo.java Thu Mar  2 07:02:53 2006
@@ -17,8 +17,10 @@
  */
 
 import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.project.MavenProject;
 import org.apache.maven.scm.ScmException;
 import org.apache.maven.scm.command.update.UpdateScmResult;
+import org.apache.maven.scm.command.update.UpdateScmResultWithRevision;
 import org.apache.maven.scm.repository.ScmRepository;
 
 import java.io.IOException;
@@ -34,15 +36,30 @@
     extends AbstractScmMojo
 {
     /**
-     * @parameter expression="${branch}
+     * @parameter expression="${branch}"
      */
     private String branch;
 
     /**
-     * @parameter expression="${tag}
+     * @parameter expression="${tag}"
      */
     private String tag;
 
+    /**
+     * The project property where to store the revision name
+     * @parameter expression="${revisionKey}" default-value="scm.revision"
+     */
+    private String revisionKey;
+
+    /**
+     * The maven project.
+     *
+     * @parameter expression="${project}"
+     * @required
+     * @readonly
+     */
+    private MavenProject project;
+
     public void execute()
         throws MojoExecutionException
     {
@@ -66,6 +83,13 @@
                 getScmManager().getProviderByRepository( repository ).update( repository, getFileSet(), currentTag );
 
             checkResult( result );
+
+            if ( result instanceof UpdateScmResultWithRevision )
+            {
+                getLog().info( "Storing revision in '" + revisionKey + "' project property." );
+
+                project.getProperties().put( revisionKey, ( (UpdateScmResultWithRevision) result ).getRevision() );
+            }
         }
         catch ( IOException e )
         {