Mercurial > hg > mercurial
changeset 902:657882ca2b34
implement CommitPatchBuilder.dispose()
author | Dmitry Neverov <dmitry.neverov@jetbrains.com> |
---|---|
date | Thu, 13 Nov 2014 20:02:28 +0100 |
parents | d26bf03be294 |
children | ecce3d4fb90b |
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, 11 insertions(+), 11 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCommitSupport.java Thu Nov 13 15:33:52 2014 +0100 +++ b/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCommitSupport.java Thu Nov 13 20:02:28 2014 +0100 @@ -84,7 +84,6 @@ private final Set<String> myCreatedFiles = new HashSet<String>(); private final Set<String> myDeletedFiles = new HashSet<String>(); private final Set<String> myDeletedDirs = new HashSet<String>(); - private Exception myError; public MercurialCommitPatchBuilder(@NotNull VcsRoot root, @NotNull HgVcsRoot hgRoot, @NotNull File patchDir, @NotNull File checkoutDir) { myRoot = root; @@ -93,7 +92,7 @@ myCheckoutDir = checkoutDir; } - public void createFile(@NotNull String path, @NotNull InputStream content) { + public void createFile(@NotNull String path, @NotNull InputStream content) throws VcsException { OutputStream out = null; try { File f = new File(myPatchDir, path); @@ -103,7 +102,7 @@ myCreatedFiles.add(path); } catch (IOException e) { LOG.error("Error while creating file " + path, e); - myError = e; + throw new VcsException("Error while creating file " + path, e); } finally { if (out != null) { try { @@ -127,17 +126,13 @@ myDeletedDirs.add(path); } - public void renameFile(@NotNull String oldPath, @NotNull String newPath, @NotNull InputStream content) { + public void renameFile(@NotNull String oldPath, @NotNull String newPath, @NotNull InputStream content) throws VcsException { myDeletedFiles.add(oldPath); createFile(newPath, content); } @NotNull public CommitResult commit(@NotNull String userName, @NotNull String description) throws VcsException { - if (myError != null) - throw new VcsException(myError); - - try { RepositoryStateData state = myVcs.getCollectChangesPolicy().getCurrentState(myRoot); String defaultBranch = state.getDefaultBranchName(); @@ -174,11 +169,13 @@ return CommitResult.createSuccessResult(repo.getWorkingDirRevision()); } catch (Exception e) { throw new VcsException(e); - } finally { - FileUtil.delete(myPatchDir); - FileUtil.delete(myCheckoutDir); } } + + public void dispose() { + FileUtil.delete(myPatchDir); + FileUtil.delete(myCheckoutDir); + } } @@ -204,5 +201,7 @@ public CommitResult commit(@NotNull String userName, @NotNull String description) throws VcsException { throw new VcsException(myMessage, myError); } + public void dispose() { + } } }
--- a/mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCommitSupportTest.java Thu Nov 13 15:33:52 2014 +0100 +++ b/mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCommitSupportTest.java Thu Nov 13 20:02:28 2014 +0100 @@ -69,6 +69,7 @@ patchBuilder.createFile("a/b/c", stream("test")); patchBuilder.renameFile("y", "z", stream("rename")); CommitResult result = patchBuilder.commit(author, description); + patchBuilder.dispose(); RepositoryStateData afterCommit = myVcs.getCollectChangesPolicy().getCurrentState(root); assertEquals(result.getCreatedRevision(), afterCommit.getBranchRevisions().get(afterCommit.getDefaultBranchName()));