package quickbase.internal.entries; import java.io.IOException; import java.io.RandomAccessFile; import quickbase.internal.index.Stats; public class AddEntry extends Entry { private int length; private byte[] value; public AddEntry(byte[] key, byte[] value, long prevPos) { super(key, prevPos); this.value = value; } public AddEntry(RandomAccessFile raf, boolean readFully) throws IOException { super(raf); this.length = raf.readInt(); if (readFully) { value = new byte[length]; raf.readFully(value); } } public void write(RandomAccessFile raf) throws IOException { super.write(raf); raf.writeInt(value.length); raf.write(value); } public byte getType() { return ADD; } public byte[] getValue() { return value; } public void doStats(Stats stats) { stats.addEntries++; if (getPrevPos() != -1) { stats.replacedEntries++; } } @Override public int getSize() { return super.getSize() + length + 4; } }