From 0b821817fcc8c0471c7a9685e9fd566e81a1bbbd Mon Sep 17 00:00:00 2001 From: "Shawn O. Pearce" Date: Tue, 6 Oct 2009 18:21:03 -0700 Subject: [PATCH] Add getPacks to ObjectDirectory This exposes the list of known packs, allowing callers to list them into a context like the objects/info/packs file. Change-Id: I0b889564bd176836ff5c77ba310c6d229409dcd5 Signed-off-by: Shawn O. Pearce --- .../src/org/eclipse/jgit/lib/ObjectDirectory.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectDirectory.java b/org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectDirectory.java index f94d0d5fb..a6fdbfae5 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectDirectory.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectDirectory.java @@ -147,6 +147,18 @@ private File fileFor(final String objectName) { return new File(new File(objects, d), f); } + /** + * @return unmodifiable collection of all known pack files local to this + * directory. Most recent packs are presented first. Packs most + * likely to contain more recent objects appear before packs + * containing objects referenced by commits further back in the + * history of the repository. + */ + public Collection getPacks() { + final PackFile[] packs = packList.get().packs; + return Collections.unmodifiableCollection(Arrays.asList(packs)); + } + /** * Add a single existing pack to the list of available pack files. *