Repository: maven-scm
Updated Branches:
  refs/heads/master bb100d251 -> 5415a7c0b


support TFS checkin-policies


Project: http://git-wip-us.apache.org/repos/asf/maven-scm/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven-scm/commit/53e7f3ee
Tree: http://git-wip-us.apache.org/repos/asf/maven-scm/tree/53e7f3ee
Diff: http://git-wip-us.apache.org/repos/asf/maven-scm/diff/53e7f3ee

Branch: refs/heads/master
Commit: 53e7f3ee19e2d1dc2b11edf13cdd00f32be9fc5b
Parents: bb100d2
Author: OhadR <ohadr.develo...@gmail.com>
Authored: Mon May 19 13:01:06 2014 +0300
Committer: Hervé Boutemy <hbout...@apache.org>
Committed: Sun May 25 21:32:03 2014 +0200

----------------------------------------------------------------------
 .../apache/maven/scm/provider/tfs/TfsScmProvider.java    |  4 +++-
 .../maven/scm/provider/tfs/TfsScmProviderRepository.java | 11 ++++++++++-
 .../scm/provider/tfs/command/TfsCheckInCommand.java      | 11 ++++++++++-
 .../maven/scm/provider/tfs/command/TfsCommandTest.java   |  3 ++-
 4 files changed, 25 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven-scm/blob/53e7f3ee/maven-scm-providers/maven-scm-provider-tfs/src/main/java/org/apache/maven/scm/provider/tfs/TfsScmProvider.java
----------------------------------------------------------------------
diff --git 
a/maven-scm-providers/maven-scm-provider-tfs/src/main/java/org/apache/maven/scm/provider/tfs/TfsScmProvider.java
 
b/maven-scm-providers/maven-scm-provider-tfs/src/main/java/org/apache/maven/scm/provider/tfs/TfsScmProvider.java
index ece4260..11052cf 100644
--- 
a/maven-scm-providers/maven-scm-provider-tfs/src/main/java/org/apache/maven/scm/provider/tfs/TfsScmProvider.java
+++ 
b/maven-scm-providers/maven-scm-provider-tfs/src/main/java/org/apache/maven/scm/provider/tfs/TfsScmProvider.java
@@ -130,7 +130,9 @@ public class TfsScmProvider
             password = ( delimPos < 0 ) ? null : usernamePassword.substring( 
delimPos + 1 );
         }
 
-        return new TfsScmProviderRepository( tfsUrl, username, password, 
serverPath, workspace );
+        boolean useCheckinPolicies = false;      //ToDo: prase this indicator 
from the scmUrl
+               return new TfsScmProviderRepository( tfsUrl, username, 
password, serverPath, workspace,
+                       useCheckinPolicies  );
     }
 
     protected ChangeLogScmResult changelog( ScmProviderRepository repository, 
ScmFileSet fileSet,

http://git-wip-us.apache.org/repos/asf/maven-scm/blob/53e7f3ee/maven-scm-providers/maven-scm-provider-tfs/src/main/java/org/apache/maven/scm/provider/tfs/TfsScmProviderRepository.java
----------------------------------------------------------------------
diff --git 
a/maven-scm-providers/maven-scm-provider-tfs/src/main/java/org/apache/maven/scm/provider/tfs/TfsScmProviderRepository.java
 
b/maven-scm-providers/maven-scm-provider-tfs/src/main/java/org/apache/maven/scm/provider/tfs/TfsScmProviderRepository.java
index 2ed770a..d367a92 100644
--- 
a/maven-scm-providers/maven-scm-provider-tfs/src/main/java/org/apache/maven/scm/provider/tfs/TfsScmProviderRepository.java
+++ 
b/maven-scm-providers/maven-scm-provider-tfs/src/main/java/org/apache/maven/scm/provider/tfs/TfsScmProviderRepository.java
@@ -30,8 +30,11 @@ public class TfsScmProviderRepository
     private final String serverPath;
 
     private final String workspace;
+    
+    private final boolean useCheckinPolicies;
 
-    public TfsScmProviderRepository( String tfsUrl, String user, String 
password, String serverPath, String workspace )
+    public TfsScmProviderRepository( String tfsUrl, String user, String 
password, String serverPath, String workspace,
+               boolean useCheckinPolicies)
     {
         super();
         setUser( user );
@@ -39,6 +42,7 @@ public class TfsScmProviderRepository
         this.tfsUrl = tfsUrl;
         this.serverPath = serverPath;
         this.workspace = workspace;
+        this.useCheckinPolicies = useCheckinPolicies;
     }
 
     public String getTfsUrl()
@@ -71,4 +75,9 @@ public class TfsScmProviderRepository
         }
         return userPassword;
     }
+
+       public boolean isUseCheckinPolicies() 
+       {
+               return useCheckinPolicies;
+       }
 }

http://git-wip-us.apache.org/repos/asf/maven-scm/blob/53e7f3ee/maven-scm-providers/maven-scm-provider-tfs/src/main/java/org/apache/maven/scm/provider/tfs/command/TfsCheckInCommand.java
----------------------------------------------------------------------
diff --git 
a/maven-scm-providers/maven-scm-provider-tfs/src/main/java/org/apache/maven/scm/provider/tfs/command/TfsCheckInCommand.java
 
b/maven-scm-providers/maven-scm-provider-tfs/src/main/java/org/apache/maven/scm/provider/tfs/command/TfsCheckInCommand.java
index d6fadc6..3fd8568 100644
--- 
a/maven-scm-providers/maven-scm-provider-tfs/src/main/java/org/apache/maven/scm/provider/tfs/command/TfsCheckInCommand.java
+++ 
b/maven-scm-providers/maven-scm-provider-tfs/src/main/java/org/apache/maven/scm/provider/tfs/command/TfsCheckInCommand.java
@@ -25,13 +25,13 @@ import org.apache.maven.scm.ScmVersion;
 import org.apache.maven.scm.command.checkin.AbstractCheckInCommand;
 import org.apache.maven.scm.command.checkin.CheckInScmResult;
 import org.apache.maven.scm.provider.ScmProviderRepository;
+import org.apache.maven.scm.provider.tfs.TfsScmProviderRepository;
 import org.apache.maven.scm.provider.tfs.command.consumer.ErrorStreamConsumer;
 import org.apache.maven.scm.provider.tfs.command.consumer.FileListConsumer;
 
 public class TfsCheckInCommand
     extends AbstractCheckInCommand
 {
-
     protected CheckInScmResult executeCheckInCommand( ScmProviderRepository r, 
ScmFileSet f, String m, ScmVersion v )
         throws ScmException
     {
@@ -58,6 +58,15 @@ public class TfsCheckInCommand
             command.addArgument( "-comment:" + m + "" );
         }
         command.addArgument( f );
+        
+        TfsScmProviderRepository tfsScmProviderRepo = 
(TfsScmProviderRepository)r;
+        if(tfsScmProviderRepo.isUseCheckinPolicies())
+        {
+            //handle TFS-policies (by adding "/override:";Auto-Build: Version 
Update";)
+            String policiesFix = "/override:checkin_policy";
+            command.addArgument( policiesFix + "");
+        }
+        
         return command;
     }
 

http://git-wip-us.apache.org/repos/asf/maven-scm/blob/53e7f3ee/maven-scm-providers/maven-scm-provider-tfs/src/test/java/org/apache/maven/scm/provider/tfs/command/TfsCommandTest.java
----------------------------------------------------------------------
diff --git 
a/maven-scm-providers/maven-scm-provider-tfs/src/test/java/org/apache/maven/scm/provider/tfs/command/TfsCommandTest.java
 
b/maven-scm-providers/maven-scm-provider-tfs/src/test/java/org/apache/maven/scm/provider/tfs/command/TfsCommandTest.java
index c116fe6..689c778 100644
--- 
a/maven-scm-providers/maven-scm-provider-tfs/src/test/java/org/apache/maven/scm/provider/tfs/command/TfsCommandTest.java
+++ 
b/maven-scm-providers/maven-scm-provider-tfs/src/test/java/org/apache/maven/scm/provider/tfs/command/TfsCommandTest.java
@@ -32,7 +32,8 @@ public class TfsCommandTest
 
     protected TfsScmProviderRepository getScmProviderRepository()
     {
-        return new TfsScmProviderRepository( "http://tfsurl";, "user", 
"password", "serverpath", "workspace" );
+        return new TfsScmProviderRepository( "http://tfsurl";, "user", 
"password", "serverpath", "workspace",
+                       false);
     }
 
     protected String getFileList()

Reply via email to