private void storeNonNote() { ObjectId id = getEntryObjectId(); FileMode fileMode = getEntryFileMode(); byte[] name = new byte[getNameLength()]; getName(name, 0); NonNoteEntry ent = new NonNoteEntry(name, fileMode, id); if (firstNonNote == null) firstNonNote = ent; if (lastNonNote != null) lastNonNote.next = ent; lastNonNote = ent; }
private TreeFormatter build() { byte[] nameBuf = new byte[OBJECT_ID_STRING_LENGTH]; int nameLen = OBJECT_ID_STRING_LENGTH - prefixLen; TreeFormatter fmt = new TreeFormatter(treeSize(nameLen)); NonNoteEntry e = nonNotes; for (int i = 0; i < cnt; i++) { Note n = notes[i]; n.copyTo(nameBuf, 0); while (e != null && e.pathCompare(nameBuf, prefixLen, nameLen, REGULAR_FILE) < 0) { e.format(fmt); e = e.next; } fmt.append(nameBuf, prefixLen, nameLen, REGULAR_FILE, n.getData()); } for (; e != null; e = e.next) e.format(fmt); return fmt; }
private static String name(NonNoteEntry e) { return e != null ? e.name() : ""; //$NON-NLS-1$ } }
private int treeSize(int nameLen) { int sz = cnt * TreeFormatter.entrySize(REGULAR_FILE, nameLen); for (NonNoteEntry e = nonNotes; e != null; e = e.next) sz += e.treeEntrySize(); return sz; }
private int treeSize() { int sz = cnt * TreeFormatter.entrySize(TREE, 2); for (NonNoteEntry e = nonNotes; e != null; e = e.next) sz += e.treeEntrySize(); return sz; }
private TreeFormatter build(boolean insert, ObjectInserter inserter) throws IOException { byte[] nameBuf = new byte[2]; TreeFormatter fmt = new TreeFormatter(treeSize()); NonNoteEntry e = nonNotes; for (int cell = 0; cell < 256; cell++) { NoteBucket b = table[cell]; if (b == null) continue; nameBuf[0] = hexchar[cell >>> 4]; nameBuf[1] = hexchar[cell & 0x0f]; while (e != null && e.pathCompare(nameBuf, 0, 2, TREE) < 0) { e.format(fmt); e = e.next; } ObjectId id; if (insert) { id = b.writeTree(inserter); } else { id = b.getTreeId(); } fmt.append(nameBuf, 0, 2, TREE, id); } for (; e != null; e = e.next) e.format(fmt); return fmt; }
private int treeSize(final int nameLen) { int sz = cnt * TreeFormatter.entrySize(REGULAR_FILE, nameLen); for (NonNoteEntry e = nonNotes; e != null; e = e.next) sz += e.treeEntrySize(); return sz; }
private void storeNonNote() { ObjectId id = getEntryObjectId(); FileMode fileMode = getEntryFileMode(); byte[] name = new byte[getNameLength()]; getName(name, 0); NonNoteEntry ent = new NonNoteEntry(name, fileMode, id); if (firstNonNote == null) firstNonNote = ent; if (lastNonNote != null) lastNonNote.next = ent; lastNonNote = ent; }
private static String name(NonNoteEntry e) { return e != null ? e.name() : ""; //$NON-NLS-1$ } }
private TreeFormatter build() { byte[] nameBuf = new byte[OBJECT_ID_STRING_LENGTH]; int nameLen = OBJECT_ID_STRING_LENGTH - prefixLen; TreeFormatter fmt = new TreeFormatter(treeSize(nameLen)); NonNoteEntry e = nonNotes; for (int i = 0; i < cnt; i++) { Note n = notes[i]; n.copyTo(nameBuf, 0); while (e != null && e.pathCompare(nameBuf, prefixLen, nameLen, REGULAR_FILE) < 0) { e.format(fmt); e = e.next; } fmt.append(nameBuf, prefixLen, nameLen, REGULAR_FILE, n.getData()); } for (; e != null; e = e.next) e.format(fmt); return fmt; }
private int treeSize() { int sz = cnt * TreeFormatter.entrySize(TREE, 2); for (NonNoteEntry e = nonNotes; e != null; e = e.next) sz += e.treeEntrySize(); return sz; }
private void storeNonNote() { ObjectId id = getEntryObjectId(); FileMode fileMode = getEntryFileMode(); byte[] name = new byte[getNameLength()]; getName(name, 0); NonNoteEntry ent = new NonNoteEntry(name, fileMode, id); if (firstNonNote == null) firstNonNote = ent; if (lastNonNote != null) lastNonNote.next = ent; lastNonNote = ent; }
private static String name(NonNoteEntry e) { return e != null ? e.name() : ""; //$NON-NLS-1$ } }
private TreeFormatter build() { byte[] nameBuf = new byte[OBJECT_ID_STRING_LENGTH]; int nameLen = OBJECT_ID_STRING_LENGTH - prefixLen; TreeFormatter fmt = new TreeFormatter(treeSize(nameLen)); NonNoteEntry e = nonNotes; for (int i = 0; i < cnt; i++) { Note n = notes[i]; n.copyTo(nameBuf, 0); while (e != null && e.pathCompare(nameBuf, prefixLen, nameLen, REGULAR_FILE) < 0) { e.format(fmt); e = e.next; } fmt.append(nameBuf, prefixLen, nameLen, REGULAR_FILE, n.getData()); } for (; e != null; e = e.next) e.format(fmt); return fmt; }
private int treeSize(int nameLen) { int sz = cnt * TreeFormatter.entrySize(REGULAR_FILE, nameLen); for (NonNoteEntry e = nonNotes; e != null; e = e.next) sz += e.treeEntrySize(); return sz; }
private TreeFormatter build(boolean insert, ObjectInserter inserter) throws IOException { byte[] nameBuf = new byte[2]; TreeFormatter fmt = new TreeFormatter(treeSize()); NonNoteEntry e = nonNotes; for (int cell = 0; cell < 256; cell++) { NoteBucket b = table[cell]; if (b == null) continue; nameBuf[0] = hexchar[cell >>> 4]; nameBuf[1] = hexchar[cell & 0x0f]; while (e != null && e.pathCompare(nameBuf, 0, 2, TREE) < 0) { e.format(fmt); e = e.next; } ObjectId id; if (insert) { id = b.writeTree(inserter); } else { id = b.getTreeId(); } fmt.append(nameBuf, 0, 2, TREE, id); } for (; e != null; e = e.next) e.format(fmt); return fmt; }
private int treeSize() { int sz = cnt * TreeFormatter.entrySize(TREE, 2); for (NonNoteEntry e = nonNotes; e != null; e = e.next) sz += e.treeEntrySize(); return sz; }
private TreeFormatter build(boolean insert, ObjectInserter inserter) throws IOException { byte[] nameBuf = new byte[2]; TreeFormatter fmt = new TreeFormatter(treeSize()); NonNoteEntry e = nonNotes; for (int cell = 0; cell < 256; cell++) { NoteBucket b = table[cell]; if (b == null) continue; nameBuf[0] = hexchar[cell >>> 4]; nameBuf[1] = hexchar[cell & 0x0f]; while (e != null && e.pathCompare(nameBuf, 0, 2, TREE) < 0) { e.format(fmt); e = e.next; } ObjectId id; if (insert) { id = b.writeTree(inserter); } else { id = b.getTreeId(); } fmt.append(nameBuf, 0, 2, TREE, id); } for (; e != null; e = e.next) e.format(fmt); return fmt; }