# HG changeset patch # User Dmitry Neverov # Date 1415906746 -3600 # Node ID ecce3d4fb90baab3142832b0101b4c0ea84bb44e # Parent 657882ca2b34de4acd7d0570b3a86f31e1ae0bcf Implement new API diff -r 657882ca2b34 -r ecce3d4fb90b mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCommitSupport.java --- 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() { diff -r 657882ca2b34 -r ecce3d4fb90b mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCommitSupportTest.java --- 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; + } + } }