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 ol...@apache.org on 2010/11/08 21:56:56 UTC

svn commit: r1032707 - in /maven/scm/trunk/maven-scm-providers/maven-scm-provider-hg/src/main/java/org/apache/maven/scm/provider/hg/command: checkin/HgCheckInCommand.java tag/HgTagCommand.java

Author: olamy
Date: Mon Nov  8 20:56:55 2010
New Revision: 1032707

URL: http://svn.apache.org/viewvc?rev=1032707&view=rev
Log:
[SCM-475] hg plugin insists on 'pushing'
Submitted by Laurent Perez

Modified:
    maven/scm/trunk/maven-scm-providers/maven-scm-provider-hg/src/main/java/org/apache/maven/scm/provider/hg/command/checkin/HgCheckInCommand.java
    maven/scm/trunk/maven-scm-providers/maven-scm-provider-hg/src/main/java/org/apache/maven/scm/provider/hg/command/tag/HgTagCommand.java

Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-hg/src/main/java/org/apache/maven/scm/provider/hg/command/checkin/HgCheckInCommand.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/checkin/HgCheckInCommand.java?rev=1032707&r1=1032706&r2=1032707&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-provider-hg/src/main/java/org/apache/maven/scm/provider/hg/command/checkin/HgCheckInCommand.java (original)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-hg/src/main/java/org/apache/maven/scm/provider/hg/command/checkin/HgCheckInCommand.java Mon Nov  8 20:56:55 2010
@@ -48,7 +48,9 @@ import java.util.List;
 public class HgCheckInCommand
     extends AbstractCheckInCommand
 {
-    /** {@inheritDoc} */
+    /**
+     * {@inheritDoc}
+     */
     protected CheckInScmResult executeCheckInCommand( ScmProviderRepository repo, ScmFileSet fileSet, String message,
                                                       ScmVersion tag )
         throws ScmException
@@ -70,8 +72,8 @@ public class HgCheckInCommand
             for ( Iterator it = statusFiles.iterator(); it.hasNext(); )
             {
                 ScmFile file = (ScmFile) it.next();
-                if ( file.getStatus() == ScmFileStatus.ADDED || file.getStatus() == ScmFileStatus.DELETED
-                    || file.getStatus() == ScmFileStatus.MODIFIED )
+                if ( file.getStatus() == ScmFileStatus.ADDED || file.getStatus() == ScmFileStatus.DELETED ||
+                    file.getStatus() == ScmFileStatus.MODIFIED )
                 {
                     commitedFiles.add( new ScmFile( file.getPath(), ScmFileStatus.CHECKED_IN ) );
                 }
@@ -87,17 +89,23 @@ public class HgCheckInCommand
         }
 
         // Commit to local branch
-        String[] commitCmd = new String[]{HgCommandConstants.COMMIT_CMD, HgCommandConstants.MESSAGE_OPTION, message};
+        String[] commitCmd = new String[]{ HgCommandConstants.COMMIT_CMD, HgCommandConstants.MESSAGE_OPTION, message };
         commitCmd = HgUtils.expandCommandLine( commitCmd, fileSet );
         ScmResult result =
             HgUtils.execute( new HgConsumer( getLogger() ), getLogger(), fileSet.getBasedir(), commitCmd );
 
         // Push to parent branch if any
         HgScmProviderRepository repository = (HgScmProviderRepository) repo;
-        if ( !repository.getURI().equals( fileSet.getBasedir().getAbsolutePath() ) )
+        if ( repo.isPushChanges() )
         {
-            String[] pushCmd = new String[]{HgCommandConstants.PUSH_CMD, repository.getURI()};
-            result = HgUtils.execute( new HgConsumer( getLogger() ), getLogger(), fileSet.getBasedir(), pushCmd );
+
+            if ( !repository.getURI().equals( fileSet.getBasedir().getAbsolutePath() ) )
+            {
+                String[] pushCmd = new String[]{ HgCommandConstants.PUSH_CMD, repository.getURI() };
+                result = HgUtils.execute( new HgConsumer( getLogger() ), getLogger(), fileSet.getBasedir(), pushCmd );
+            }
+
+            return new CheckInScmResult( commitedFiles, result );
         }
 
         return new CheckInScmResult( commitedFiles, result );

Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-hg/src/main/java/org/apache/maven/scm/provider/hg/command/tag/HgTagCommand.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/tag/HgTagCommand.java?rev=1032707&r1=1032706&r2=1032707&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-provider-hg/src/main/java/org/apache/maven/scm/provider/hg/command/tag/HgTagCommand.java (original)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-hg/src/main/java/org/apache/maven/scm/provider/hg/command/tag/HgTagCommand.java Mon Nov  8 20:56:55 2010
@@ -51,7 +51,7 @@ public class HgTagCommand
     extends AbstractTagCommand
     implements Command
 {
-    
+
     protected ScmResult executeTagCommand( ScmProviderRepository scmProviderRepository, ScmFileSet fileSet, String tag,
                                            String message )
         throws ScmException
@@ -59,7 +59,9 @@ public class HgTagCommand
         return executeTagCommand( scmProviderRepository, fileSet, tag, new ScmTagParameters( message ) );
     }
 
-    /** {@inheritDoc} */
+    /**
+     * {@inheritDoc}
+     */
     protected ScmResult executeTagCommand( ScmProviderRepository scmProviderRepository, ScmFileSet fileSet, String tag,
                                            ScmTagParameters scmTagParameters )
         throws ScmException
@@ -78,15 +80,12 @@ public class HgTagCommand
         File workingDir = fileSet.getBasedir();
 
         // build the command
-        String[] tagCmd = new String[] {
-            HgCommandConstants.TAG_CMD,
-            HgCommandConstants.MESSAGE_OPTION,
-            scmTagParameters.getMessage(),
-            tag };
+        String[] tagCmd =
+            new String[] { HgCommandConstants.TAG_CMD, HgCommandConstants.MESSAGE_OPTION,
+                scmTagParameters.getMessage(), tag };
 
         // keep the command about in string form for reporting
         StringBuffer cmd = joinCmd( tagCmd );
-
         HgTagConsumer consumer = new HgTagConsumer( getLogger() );
         ScmResult result = HgUtils.execute( consumer, getLogger(), workingDir, tagCmd );
         HgScmProviderRepository repository = (HgScmProviderRepository) scmProviderRepository;
@@ -94,10 +93,15 @@ public class HgTagCommand
         {
             // now push
             // Push to parent branch if any
-            if ( !repository.getURI().equals( fileSet.getBasedir().getAbsolutePath() ) )
+
+            if ( repository.isPushChanges() )
             {
-                String[] pushCmd = new String[] { HgCommandConstants.PUSH_CMD, repository.getURI() };
-                result = HgUtils.execute( new HgConsumer( getLogger() ), getLogger(), fileSet.getBasedir(), pushCmd );
+                if ( !repository.getURI().equals( fileSet.getBasedir().getAbsolutePath() ) )
+                {
+                    String[] pushCmd = new String[] { HgCommandConstants.PUSH_CMD, repository.getURI() };
+                    result =
+                        HgUtils.execute( new HgConsumer( getLogger() ), getLogger(), fileSet.getBasedir(), pushCmd );
+                }
             }
         }
         else