From 2a5e6510782fff7562fc2272a8483f4fa3c868c1 Mon Sep 17 00:00:00 2001 From: James Moger Date: Tue, 3 Dec 2013 11:20:28 -0500 Subject: [PATCH] Simplify blob loading code Change-Id: I7f8ad8936e620dd06e88d85f6837248eea75a1ec --- .../java/com/gitblit/utils/JGitUtils.java | 27 +++---------------- 1 file changed, 3 insertions(+), 24 deletions(-) diff --git a/src/main/java/com/gitblit/utils/JGitUtils.java b/src/main/java/com/gitblit/utils/JGitUtils.java index 47799aab..212a90af 100644 --- a/src/main/java/com/gitblit/utils/JGitUtils.java +++ b/src/main/java/com/gitblit/utils/JGitUtils.java @@ -15,10 +15,8 @@ */ package com.gitblit.utils; -import java.io.ByteArrayOutputStream; import java.io.File; import java.io.IOException; -import java.io.InputStream; import java.text.DecimalFormat; import java.text.MessageFormat; import java.util.ArrayList; @@ -755,18 +753,8 @@ public class JGitUtils { ObjectId entid = tw.getObjectId(0); FileMode entmode = tw.getFileMode(0); if (entmode != FileMode.GITLINK) { - RevObject ro = rw.lookupAny(entid, entmode.getObjectType()); - rw.parseBody(ro); - ByteArrayOutputStream os = new ByteArrayOutputStream(); - ObjectLoader ldr = repository.open(ro.getId(), Constants.OBJ_BLOB); - byte[] tmp = new byte[4096]; - InputStream in = ldr.openStream(); - int n; - while ((n = in.read(tmp)) > 0) { - os.write(tmp, 0, n); - } - in.close(); - content = os.toByteArray(); + ObjectLoader ldr = repository.open(entid, Constants.OBJ_BLOB); + content = ldr.getCachedBytes(); } } } catch (Throwable t) { @@ -810,17 +798,8 @@ public class JGitUtils { byte[] content = null; try { RevBlob blob = rw.lookupBlob(ObjectId.fromString(objectId)); - rw.parseBody(blob); - ByteArrayOutputStream os = new ByteArrayOutputStream(); ObjectLoader ldr = repository.open(blob.getId(), Constants.OBJ_BLOB); - byte[] tmp = new byte[4096]; - InputStream in = ldr.openStream(); - int n; - while ((n = in.read(tmp)) > 0) { - os.write(tmp, 0, n); - } - in.close(); - content = os.toByteArray(); + content = ldr.getCachedBytes(); } catch (Throwable t) { error(t, repository, "{0} can't find blob {1}", objectId); } finally { -- 2.39.5