Mercurial > hg4j
diff test/org/tmatesoft/hg/test/MapTagsToFileRevisions.java @ 426:063b0663495a
HgManifest#getFileRevisions refactored into #walkFileRevisions to match pattern throught rest of the library
author | Artem Tikhomirov <tikhomirov.artem@gmail.com> |
---|---|
date | Wed, 28 Mar 2012 19:34:37 +0200 |
parents | 6437d261048a |
children | 31a89587eb04 |
line wrap: on
line diff
--- a/test/org/tmatesoft/hg/test/MapTagsToFileRevisions.java Wed Mar 28 18:39:29 2012 +0200 +++ b/test/org/tmatesoft/hg/test/MapTagsToFileRevisions.java Wed Mar 28 19:34:37 2012 +0200 @@ -338,7 +338,27 @@ HgDataFile fileNode = repository.getFileNode(targetPath); final long start2 = System.nanoTime(); final int lastRev = fileNode.getLastRevision(); - final Map<Integer, Nodeid> fileRevisionAtTagRevision = repository.getManifest().getFileRevisions(targetPath, tagLocalRevs); + final Map<Integer, Nodeid> fileRevisionAtTagRevision = new HashMap<Integer, Nodeid>(); + HgManifest.Inspector collectFileRevAtCset = new HgManifest.Inspector() { + + private int csetRevIndex; + + public boolean next(Nodeid nid, Path fname, Flags flags) { + fileRevisionAtTagRevision.put(csetRevIndex, nid); + return true; + } + + public boolean end(int manifestRevision) { + return true; + } + + public boolean begin(int mainfestRevision, Nodeid nid, int changelogRevision) { + csetRevIndex = changelogRevision; + return true; + } + }; + repository.getManifest().walkFileRevisions(targetPath, collectFileRevAtCset,tagLocalRevs); + final long start2a = System.nanoTime(); fileNode.walk(0, lastRev, new HgDataFile.RevisionInspector() {