Author: evenisse
Date: Wed May 25 02:36:20 2005
New Revision: 178416

URL: http://svn.apache.org/viewcvs?rev=178416&view=rev
Log:
Rewrite scm connections

Modified:
    
maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/release/PrepareReleaseMojo.java
    
maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/transformer/VersionTransformer.java

Modified: 
maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/release/PrepareReleaseMojo.java
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/release/PrepareReleaseMojo.java?rev=178416&r1=178415&r2=178416&view=diff
==============================================================================
--- 
maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/release/PrepareReleaseMojo.java
 (original)
+++ 
maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/release/PrepareReleaseMojo.java
 Wed May 25 02:36:20 2005
@@ -69,6 +69,10 @@
 
     private String currentTag;
 
+    private String currentScmConnection;
+
+    private String currentScmDeveloperConnection;
+
     protected void executeTask()
         throws MojoExecutionException
     {
@@ -258,7 +262,19 @@
 
         currentTag = model.getScm().getTag();
 
-        model.getScm().setTag( getTagLabel() );
+        currentScmConnection = model.getScm().getConnection();
+
+        currentScmDeveloperConnection = 
model.getScm().getDeveloperConnection();
+
+        if ( model.getScm() != null )
+        {
+            model.getScm().setTag( getTagLabel() );
+
+            model.getScm().setConnection( rewriteScmConnection( 
model.getScm().getConnection(), getTagLabel() ) );
+
+            model.getScm().setDeveloperConnection( rewriteScmConnection( 
model.getScm().getDeveloperConnection(),
+                                                                         
getTagLabel() ) );
+        }
 
         try
         {
@@ -389,7 +405,14 @@
 
             model.setVersion( projectVersion );
 
-            model.getScm().setTag( currentTag );
+            if ( model.getScm() != null )
+            {
+                model.getScm().setTag( currentTag );
+
+                model.getScm().setConnection( currentScmConnection );
+
+                model.getScm().setDeveloperConnection( 
currentScmDeveloperConnection );
+            }
 
             PomTransformer transformer = new VersionTransformer();
 
@@ -524,5 +547,26 @@
         {
             throw new MojoExecutionException( "An error is occurred in the tag 
process.", e );
         }
+    }
+
+    private String rewriteScmConnection( String scmConnection, String tag )
+    {
+        if ( scmConnection != null )
+        {
+            if ( scmConnection.startsWith( "svn" ) )
+            {
+                if ( scmConnection.endsWith( "trunk/") )
+                {
+                    scmConnection = scmConnection.substring( 0, 
scmConnection.length() - "trunk/".length() );
+                }
+                if ( scmConnection.endsWith( "branches/") )
+                {
+                    scmConnection = scmConnection.substring( 0, 
scmConnection.length() - "branches/".length() );
+                }
+                scmConnection += "tags/" + tag;
+            }
+        }
+
+        return scmConnection;
     }
 }

Modified: 
maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/transformer/VersionTransformer.java
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/transformer/VersionTransformer.java?rev=178416&r1=178415&r2=178416&view=diff
==============================================================================
--- 
maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/transformer/VersionTransformer.java
 (original)
+++ 
maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/transformer/VersionTransformer.java
 Wed May 25 02:36:20 2005
@@ -143,21 +143,45 @@
         }
         else
         {
-            // Modify scm tag
-            Element scm = (Element) node;
-
-            Node tag = node.selectSingleNode( "tag" );
-
-            if ( tag == null )
+            if ( getUpdatedModel().getScm() != null )
             {
-                if ( !"HEAD".equals( getUpdatedModel().getScm().getTag() ) )
+                // Modify scm tag
+                Element scm = (Element) node;
+                
+                Node tag = node.selectSingleNode( "tag" );
+                
+                if ( tag == null )
                 {
-                    scm.addElement( "tag" ).addText( 
getUpdatedModel().getScm().getTag() );
+                    if ( !"HEAD".equals( getUpdatedModel().getScm().getTag() ) 
)
+                    {
+                        scm.addElement( "tag" ).addText( 
getUpdatedModel().getScm().getTag() );
+                    }
+                }
+                else
+                {
+                    tag.setText( getUpdatedModel().getScm().getTag() );
+                }
+                
+                // Modify scmConnections
+                Node connection = node.selectSingleNode( "connection" );
+                
+                if ( connection != null )
+                {
+                    if ( !connection.getText().equals( 
getUpdatedModel().getScm().getConnection() ) )
+                    {
+                        connection.setText( 
getUpdatedModel().getScm().getConnection() );
+                    }
+                }
+                
+                Node developerConnection = node.selectSingleNode( 
"developerConnection" );
+                
+                if ( developerConnection != null )
+                {
+                    if ( !developerConnection.getText().equals( 
getUpdatedModel().getScm().getDeveloperConnection() ) )
+                    {
+                        developerConnection.setText( 
getUpdatedModel().getScm().getDeveloperConnection() );
+                    }
                 }
-            }
-            else
-            {
-                tag.setText( getUpdatedModel().getScm().getTag() );
             }
         }
     }



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to