changeset 903:ecce3d4fb90b

Implement new API
author Dmitry Neverov <dmitry.neverov@jetbrains.com>
date Thu, 13 Nov 2014 20:25:46 +0100
parents 657882ca2b34
children 2d5beb7d37cd
files mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCommitSupport.java mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCommitSupportTest.java
diffstat 2 files changed, 23 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCommitSupport.java	Thu Nov 13 20:02:28 2014 +0100
+++ b/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCommitSupport.java	Thu Nov 13 20:25:46 2014 +0100
@@ -132,7 +132,7 @@
     }
 
     @NotNull
-    public CommitResult commit(@NotNull String userName, @NotNull String description) throws VcsException {
+    public CommitResult commit(@NotNull CommitSettings commitSettings) throws VcsException {
       try {
         RepositoryStateData state = myVcs.getCollectChangesPolicy().getCurrentState(myRoot);
         String defaultBranch = state.getDefaultBranchName();
@@ -153,7 +153,7 @@
         }
 
         repo.addRemove().call();
-        int exitCode = repo.commit().by(userName).message(description).call();
+        int exitCode = repo.commit().by(commitSettings.getUserName()).message(commitSettings.getDescription()).call();
         if (exitCode == 1)
           return CommitResult.createCommitNotPerformedResult("repository is up-to-date");
 
@@ -198,7 +198,7 @@
     public void renameFile(@NotNull String oldPath, @NotNull String newPath, @NotNull InputStream content) {
     }
     @NotNull
-    public CommitResult commit(@NotNull String userName, @NotNull String description) throws VcsException {
+    public CommitResult commit(@NotNull CommitSettings commitSettings) throws VcsException {
       throw new VcsException(myMessage, myError);
     }
     public void dispose() {
--- a/mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCommitSupportTest.java	Thu Nov 13 20:02:28 2014 +0100
+++ b/mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCommitSupportTest.java	Thu Nov 13 20:25:46 2014 +0100
@@ -68,7 +68,7 @@
     patchBuilder.deleteFile("x");
     patchBuilder.createFile("a/b/c", stream("test"));
     patchBuilder.renameFile("y", "z", stream("rename"));
-    CommitResult result = patchBuilder.commit(author, description);
+    CommitResult result = patchBuilder.commit(new CommitSettingsImpl(author, description));
     patchBuilder.dispose();
 
     RepositoryStateData afterCommit = myVcs.getCollectChangesPolicy().getCurrentState(root);
@@ -92,4 +92,23 @@
     return new ByteArrayInputStream(content.getBytes());
   }
 
+  private class CommitSettingsImpl implements CommitSettings {
+    private final String myUserName;
+    private final String myDescription;
+
+    public CommitSettingsImpl(@NotNull String userName, @NotNull String description) {
+      myUserName = userName;
+      myDescription = description;
+    }
+
+    @NotNull
+    public String getUserName() {
+      return myUserName;
+    }
+
+    @NotNull
+    public String getDescription() {
+      return myDescription;
+    }
+  }
 }