From: Ivan Frade Date: Wed, 9 Oct 2019 21:10:14 +0000 (-0700) Subject: CachedPackUriProvider: Add size to the pack information X-Git-Tag: v5.6.0.201911271000-m3~88^2~1 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=892c804699512dffc850cef0727e614ee3a0a6d6;p=jgit.git CachedPackUriProvider: Add size to the pack information The object identifying packfiles to send them via packfile-uri contains only the uri and the hash. This is the information that goes through the wire. It would be useful to know also the size of those packfile, for example to track how many bytes have been offloaded to HTTP. Add size field the CachedPackUriProvider.PackInfo object. Change-Id: If6b921b48a4764d936141c777879b148cc80bbd3 Signed-off-by: Ivan Frade --- diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/UploadPackTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/UploadPackTest.java index 5d9f32d40b..2f370d8c52 100644 --- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/UploadPackTest.java +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/UploadPackTest.java @@ -2077,7 +2077,7 @@ public class UploadPackTest { assertThat(protocolsSupported, hasItems("https")); if (!protocolsSupported.contains("https")) return null; - return new PackInfo("myhash", "myuri"); + return new PackInfo("myhash", "myuri", 100); } }); diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/pack/CachedPackUriProvider.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/pack/CachedPackUriProvider.java index 5cbc2baeb2..b50f7392dc 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/pack/CachedPackUriProvider.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/pack/CachedPackUriProvider.java @@ -76,14 +76,22 @@ public interface CachedPackUriProvider { private final String hash; private final String uri; + private final int size; + /** * Constructs an object containing information about a packfile. - * @param hash the hash of the packfile as a hexadecimal string - * @param uri the URI corresponding to the packfile + * + * @param hash + * the hash of the packfile as a hexadecimal string + * @param uri + * the URI corresponding to the packfile + * @param size + * the size of the packfile in bytes */ - public PackInfo(String hash, String uri) { + public PackInfo(String hash, String uri, int size) { this.hash = hash; this.uri = uri; + this.size = size; } /** @@ -99,5 +107,12 @@ public interface CachedPackUriProvider { public String getUri() { return uri; } + + /** + * @return the size of the packfile in bytes (-1 if unknown) + */ + public long getSize() { + return size; + } } }