Reduce the number of temporary byte[20] arrays allocated.
[egit/egit-new.git] / org.spearce.jgit / src / org / spearce / jgit / lib / DeltaRefPackedObjectLoader.java
blob4e4ca7c11d38bcac8575218e9186e73a99a0a9a0
1 package org.spearce.jgit.lib;
3 import java.io.IOException;
5 import org.spearce.jgit.errors.MissingObjectException;
7 /** Reads a deltaified object which uses an {@link ObjectId} to find its base. */
8 class DeltaRefPackedObjectLoader extends DeltaPackedObjectLoader {
9 private final ObjectId deltaBase;
11 DeltaRefPackedObjectLoader(final PackFile pr, final long offset,
12 final int deltaSz, final ObjectId base) {
13 super(pr, offset, deltaSz);
14 deltaBase = base;
17 protected ObjectLoader getBaseLoader() throws IOException {
18 final ObjectLoader or = pack.get(deltaBase,
19 new byte[Constants.OBJECT_ID_LENGTH]);
20 if (or == null)
21 throw new MissingObjectException(deltaBase, "delta base");
22 return or;