You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ol...@apache.org on 2011/11/28 16:02:19 UTC

svn commit: r1207266 - /maven/scm/trunk/maven-scm-providers/maven-scm-provider-hg/src/main/java/org/apache/maven/scm/provider/hg/command/checkout/HgCheckOutCommand.java

Author: olamy
Date: Mon Nov 28 15:02:19 2011
New Revision: 1207266

URL: http://svn.apache.org/viewvc?rev=1207266&view=rev
Log:
[SCM-621] Mercurial provider checkout should not default to tip
Submitted by Kevin Calcagno.

Modified:
    maven/scm/trunk/maven-scm-providers/maven-scm-provider-hg/src/main/java/org/apache/maven/scm/provider/hg/command/checkout/HgCheckOutCommand.java

Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-hg/src/main/java/org/apache/maven/scm/provider/hg/command/checkout/HgCheckOutCommand.java
URL: http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-providers/maven-scm-provider-hg/src/main/java/org/apache/maven/scm/provider/hg/command/checkout/HgCheckOutCommand.java?rev=1207266&r1=1207265&r2=1207266&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-provider-hg/src/main/java/org/apache/maven/scm/provider/hg/command/checkout/HgCheckOutCommand.java (original)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-hg/src/main/java/org/apache/maven/scm/provider/hg/command/checkout/HgCheckOutCommand.java Mon Nov 28 15:02:19 2011
@@ -36,6 +36,8 @@ import org.codehaus.plexus.util.StringUt
 
 import java.io.File;
 import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * @author <a href="mailto:thurner.rupert@ymono.net">thurner rupert</a>
@@ -46,7 +48,9 @@ public class HgCheckOutCommand
     extends AbstractCheckOutCommand
     implements Command
 {
-    /** {@inheritDoc} */
+    /**
+     * {@inheritDoc}
+     */
     protected CheckOutScmResult executeCheckOutCommand( ScmProviderRepository repo, ScmFileSet fileSet,
                                                         ScmVersion scmVersion, boolean recursive )
         throws ScmException
@@ -69,17 +73,21 @@ public class HgCheckOutCommand
         }
 
         // Do the actual checkout
-        String[] checkoutCmd = new String[] {
-            HgCommandConstants.CLONE_CMD,
-            HgCommandConstants.REVISION_OPTION,
-            scmVersion != null && !StringUtils.isEmpty( scmVersion.getName() ) ? scmVersion.getName() : "tip",
-            url,
-            checkoutDir.getAbsolutePath() };
+        List<String> cmdList = new ArrayList<String>();
+        cmdList.add( HgCommandConstants.CLONE_CMD );
+        if ( scmVersion != null && !StringUtils.isEmpty( scmVersion.getName() ) )
+        {
+            cmdList.add( HgCommandConstants.REVISION_OPTION );
+            cmdList.add( scmVersion.getName() );
+        }
+        cmdList.add( url );
+        cmdList.add( checkoutDir.getAbsolutePath() );
+        String[] checkoutCmd = cmdList.toArray( new String[0] );
         HgConsumer checkoutConsumer = new HgConsumer( getLogger() );
         HgUtils.execute( checkoutConsumer, getLogger(), checkoutDir.getParentFile(), checkoutCmd );
 
         // Do inventory to find list of checkedout files
-        String[] inventoryCmd = new String[] { HgCommandConstants.INVENTORY_CMD };
+        String[] inventoryCmd = new String[]{ HgCommandConstants.INVENTORY_CMD };
         HgCheckOutConsumer consumer = new HgCheckOutConsumer( getLogger(), checkoutDir );
         ScmResult result = HgUtils.execute( consumer, getLogger(), checkoutDir, inventoryCmd );