2 import java.nio.ByteBuffer;
4 abstract class Entry implements Liveness {
5 static final byte TypeKeyValue = 1;
6 static final byte TypeLastMessage = 2;
7 static final byte TypeRejectedMessage = 3;
8 static final byte TypeTableStatus = 4;
9 private boolean islive = true;
10 private Slot parentslot;
12 Entry(Slot _parentslot) {
13 parentslot = _parentslot;
16 static Entry decode(Slot slot, ByteBuffer bb) {
20 return KeyValue.decode(slot, bb);
23 return LastMessage.decode(slot, bb);
25 case TypeRejectedMessage:
26 return RejectedMessage.decode(slot, bb);
29 return TableStatus.decode(slot, bb);
32 throw new Error("Unrecognized Entry Type: "+type);
42 parentslot.decrementLiveCount();
45 abstract void encode(ByteBuffer bb);
47 abstract int getSize();
49 abstract byte getType();