Mercurial > hg4j
diff src/org/tmatesoft/hg/core/ChangesetTransformer.java @ 195:c9b305df0b89
Optimization: use ParentWalker to get changeset's parents, if possible. Do not keep duplicating nodeids and strings in manifest revisions
author | Artem Tikhomirov <tikhomirov.artem@gmail.com> |
---|---|
date | Fri, 15 Apr 2011 05:17:44 +0200 |
parents | 37f3d4a596e4 |
children | ffc5f6d59f7e |
line wrap: on
line diff
--- a/src/org/tmatesoft/hg/core/ChangesetTransformer.java Fri Apr 15 03:35:08 2011 +0200 +++ b/src/org/tmatesoft/hg/core/ChangesetTransformer.java Fri Apr 15 05:17:44 2011 +0200 @@ -36,7 +36,8 @@ private final HgChangeset changeset; private Set<String> branches; - public ChangesetTransformer(HgRepository hgRepo, HgLogCommand.Handler delegate) { + // repo and delegate can't be null, parent walker can + public ChangesetTransformer(HgRepository hgRepo, HgLogCommand.Handler delegate, HgChangelog.ParentWalker pw) { if (hgRepo == null || delegate == null) { throw new IllegalArgumentException(); } @@ -45,6 +46,7 @@ PathPool pp = new PathPool(new PathRewrite.Empty()); statusCollector.setPathPool(pp); changeset = new HgChangeset(statusCollector, pp); + changeset.setParentHelper(pw); handler = delegate; }