Mercurial > hg > mercurial
changeset 874:894b7e0c9dd6
run 'hg log' with progress
author | Dmitry Neverov <dmitry.neverov@jetbrains.com> |
---|---|
date | Tue, 30 Sep 2014 18:45:16 +0200 |
parents | 95e7d2ff8945 |
children | b06ea5c379cc |
files | mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCollectChangesPolicy.java mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/CollectChangesCommand.java mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/CollectChangesWithRevsets.java |
diffstat | 3 files changed, 19 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCollectChangesPolicy.java Tue Sep 30 18:27:09 2014 +0200 +++ b/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCollectChangesPolicy.java Tue Sep 30 18:45:16 2014 +0200 @@ -227,6 +227,7 @@ .fromRevision(fromCommits) .toRevision(toCommit) .includeFromRevision(ctx.includeFromRevisions()) + .withProgressConsumer(ctx.getProgressConsumer()) .call(); if (!ctx.includeFromRevisions()) { Iterator<ChangeSet> iter = csets.iterator();
--- a/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/CollectChangesCommand.java Tue Sep 30 18:27:09 2014 +0200 +++ b/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/CollectChangesCommand.java Tue Sep 30 18:45:16 2014 +0200 @@ -29,6 +29,7 @@ protected List<String> myFromRevisions; protected String myToRevision; protected boolean myIncludeFromRevision; + protected ProgressParser.ProgressConsumer myProgressConsumer; @NotNull public abstract List<ChangeSet> call(@NotNull List<String> fromCommits, @NotNull String toCommit) throws VcsException; @@ -45,6 +46,11 @@ return this; } + public CollectChangesCommand withProgressConsumer(ProgressParser.ProgressConsumer progressConsumer) { + myProgressConsumer = progressConsumer; + return this; + } + public CollectChangesCommand includeFromRevision(boolean doInclude) { myIncludeFromRevision = doInclude; return this;
--- a/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/CollectChangesWithRevsets.java Tue Sep 30 18:27:09 2014 +0200 +++ b/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/CollectChangesWithRevsets.java Tue Sep 30 18:45:16 2014 +0200 @@ -16,7 +16,6 @@ package jetbrains.buildServer.buildTriggers.vcs.mercurial.command; -import jetbrains.buildServer.buildTriggers.vcs.mercurial.HgRepo; import jetbrains.buildServer.buildTriggers.vcs.mercurial.ServerHgRepo; import jetbrains.buildServer.vcs.VcsException; import org.jetbrains.annotations.NotNull; @@ -44,7 +43,7 @@ @NotNull public List<ChangeSet> call(@NotNull final List<String> fromCommits, @NotNull final String toCommit) throws VcsException { StringBuilder revsets = new StringBuilder(); - revsets.append("ancestors(").append(toCommit).append(") "); + revsets.append("ancestors(").append(toCommit).append(")"); for (String from : fromCommits) { revsets.append(" - ancestors(").append(from).append(")"); } @@ -53,9 +52,16 @@ revsets.append(" + ").append(from); } } - return myRepo.log(myRoot) - .showCommitsFromAllBranches() - .withRevsets(revsets.toString()) - .call(); + try { + if (myProgressConsumer != null) + myProgressConsumer.consume(-1f, "hg log " + revsets); + return myRepo.log(myRoot) + .showCommitsFromAllBranches() + .withRevsets(revsets.toString()) + .call(); + } finally { + if (myProgressConsumer != null) + myProgressConsumer.consume(-1f, "hg log " + revsets + " finished"); + } } }