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);
22 return LastMessage.decode(slot, bb);
23 case TypeRejectedMessage:
24 return RejectedMessage.decode(slot, bb);
26 return TableStatus.decode(slot, bb);
28 throw new Error("Unrecognized Entry Type: "+type);
36 void decrementLiveCount() {
38 parentslot.decrementLiveCount();
41 abstract void encode(ByteBuffer bb);
43 abstract int getSize();
45 abstract byte getType();