# HG changeset patch # User Artem Tikhomirov # Date 1313427545 -7200 # Node ID 1874d11054e55f93b7af3321a4890d74969e3f7f # Parent a6d19adc2636e5fdfb2153a83b966d73844648f5 HgLogCommand.changeset(Nodeid) to ease command configuration diff -r a6d19adc2636 -r 1874d11054e5 cmdline/org/tmatesoft/hg/console/Main.java --- a/cmdline/org/tmatesoft/hg/console/Main.java Mon Aug 15 18:51:41 2011 +0200 +++ b/cmdline/org/tmatesoft/hg/console/Main.java Mon Aug 15 18:59:05 2011 +0200 @@ -163,15 +163,12 @@ // hg parents cmd final Pair wcParents = hgRepo.getWorkingCopyParents(); ChangesetDumpHandler dump = new ChangesetDumpHandler(hgRepo); - final HgChangelog clog = hgRepo.getChangelog(); HgLogCommand cmd = new HgLogCommand(hgRepo); if (wcParents.hasFirst()) { - int x = clog.getLocalRevision(wcParents.first()); - cmd.range(x, x).execute(dump); // FIXME HgLogCommand shall support Nodeid as revisions + cmd.changeset(wcParents.first()).execute(dump); } if (wcParents.hasSecond()) { - int x = clog.getLocalRevision(wcParents.second()); - cmd.range(x, x).execute(dump); + cmd.changeset(wcParents.second()).execute(dump); } System.out.println("Branch:" + hgRepo.getWorkingCopyBranchName()); } diff -r a6d19adc2636 -r 1874d11054e5 src/org/tmatesoft/hg/core/HgLogCommand.java --- a/src/org/tmatesoft/hg/core/HgLogCommand.java Mon Aug 15 18:51:41 2011 +0200 +++ b/src/org/tmatesoft/hg/core/HgLogCommand.java Mon Aug 15 18:59:05 2011 +0200 @@ -142,6 +142,18 @@ } /** + * Select specific changeset + * + * @param nid changeset revision + * @return this for convenience + */ + public HgLogCommand changeset(Nodeid nid) { + // XXX perhaps, shall support multiple (...) arguments and extend #execute to handle not only range, but also set of revisions. + final int csetLocal = repo.getChangelog().getLocalRevision(nid); + return range(csetLocal, csetLocal); + } + + /** * Visit history of a given file only. * @param file path relative to repository root. Pass null to reset. * @param followCopyRename true to report changesets of the original file(-s), if copy/rename ever occured to the file.