Browse Source

Simplify NoteParser use of prefix.length()

Sasa pointed out we only ever use the length here, so instead of
holding onto the AbbreviatedObjectId, lets just hold onto the length
as a primitive int.

Change-Id: I2444f59f9fe5ddcaea4a3537d3f1064736ae3215
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
CC: Sasa Zivkov <zivkov@gmail.com>
stable-0.10
Shawn O. Pearce 14 years ago committed by Chris Aniszczyk
parent
commit
5ac5871d16
  1. 18
      org.eclipse.jgit/src/org/eclipse/jgit/notes/NoteParser.java

18
org.eclipse.jgit/src/org/eclipse/jgit/notes/NoteParser.java

@ -91,7 +91,7 @@ final class NoteParser extends CanonicalTreeParser {
return new NoteParser(prefix, reader, treeId).parse();
}
private final AbbreviatedObjectId prefix;
private final int prefixLen;
private final int pathPadding;
@ -99,16 +99,16 @@ final class NoteParser extends CanonicalTreeParser {
private NonNoteEntry lastNonNote;
private NoteParser(AbbreviatedObjectId p, ObjectReader r, ObjectId t)
private NoteParser(AbbreviatedObjectId prefix, ObjectReader r, ObjectId t)
throws IncorrectObjectTypeException, IOException {
super(encodeASCII(p.name()), r, t);
prefix = p;
super(encodeASCII(prefix.name()), r, t);
prefixLen = prefix.length();
// Our path buffer has a '/' that we don't want after the prefix.
// Drop it by shifting the path down one position.
pathPadding = 0 < prefix.length() ? 1 : 0;
pathPadding = 0 < prefixLen ? 1 : 0;
if (0 < pathPadding)
System.arraycopy(path, 0, path, pathPadding, prefix.length());
System.arraycopy(path, 0, path, pathPadding, prefixLen);
}
private InMemoryNoteBucket parse() {
@ -130,11 +130,11 @@ final class NoteParser extends CanonicalTreeParser {
}
// If we cannot determine the style used, assume its a leaf.
return new LeafBucket(prefix.length());
return new LeafBucket(prefixLen);
}
private LeafBucket parseLeafTree() {
final LeafBucket leaf = new LeafBucket(prefix.length());
final LeafBucket leaf = new LeafBucket(prefixLen);
final MutableObjectId idBuf = new MutableObjectId();
for (; !eof(); next(1)) {
@ -160,7 +160,7 @@ final class NoteParser extends CanonicalTreeParser {
}
private FanoutBucket parseFanoutTree() {
final FanoutBucket fanout = new FanoutBucket(prefix.length());
final FanoutBucket fanout = new FanoutBucket(prefixLen);
for (; !eof(); next(1)) {
final int cell = parseFanoutCell();

Loading…
Cancel
Save