changeset 904:2d5beb7d37cd

Throw exception when it is known upfront that commit will fail
author Dmitry Neverov <dmitry.neverov@jetbrains.com>
date Thu, 20 Nov 2014 15:43:07 +0100
parents ecce3d4fb90b
children 9af9d7f944d9
files mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCommitSupport.java
diffstat 1 files changed, 4 insertions(+), 36 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCommitSupport.java	Thu Nov 13 20:25:46 2014 +0100
+++ b/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCommitSupport.java	Thu Nov 20 15:43:07 2014 +0100
@@ -52,26 +52,21 @@
   }
 
   @NotNull
-  public CommitPatchBuilder getCommitPatchBuilder(@NotNull VcsRoot root) {
+  public CommitPatchBuilder getCommitPatchBuilder(@NotNull VcsRoot root) throws VcsException {
     File patchDir;
     try {
       patchDir = HgFileUtil.createTempDir();
     } catch (IOException e) {
-      return new ErrorCommitPatchBuilder("Error while creating patch dir", e);
+      throw new VcsException("Cannot create temp directory for commit", e);
     }
     File checkoutDir;
     try {
       checkoutDir = HgFileUtil.createTempDir();
     } catch (IOException e) {
-      return new ErrorCommitPatchBuilder("Error while creating checkout dir", e);
+      throw new VcsException("Cannot create checkout directory for commit", e);
     }
 
-    HgVcsRoot hgRoot;
-    try {
-      hgRoot = myHgVcsRootFactory.createHgRoot(root);
-    } catch (VcsException e) {
-      return new ErrorCommitPatchBuilder("Error while creating mercurial root", e);
-    }
+    HgVcsRoot hgRoot = myHgVcsRootFactory.createHgRoot(root);
     return new MercurialCommitPatchBuilder(root, hgRoot, patchDir, checkoutDir);
   }
 
@@ -177,31 +172,4 @@
       FileUtil.delete(myCheckoutDir);
     }
   }
-
-
-  private class ErrorCommitPatchBuilder implements CommitPatchBuilder {
-    private final String myMessage;
-    private final Exception myError;
-    public ErrorCommitPatchBuilder(@NotNull String message, @NotNull Exception error) {
-      myMessage = message;
-      myError = error;
-    }
-
-    public void createFile(@NotNull String path, @NotNull InputStream content) {
-    }
-    public void createDirectory(@NotNull String path) {
-    }
-    public void deleteFile(@NotNull String path) {
-    }
-    public void deleteDirectory(@NotNull String path) {
-    }
-    public void renameFile(@NotNull String oldPath, @NotNull String newPath, @NotNull InputStream content) {
-    }
-    @NotNull
-    public CommitResult commit(@NotNull CommitSettings commitSettings) throws VcsException {
-      throw new VcsException(myMessage, myError);
-    }
-    public void dispose() {
-    }
-  }
 }