X-Git-Url: http://plrg.eecs.uci.edu/git/?p=iotcloud.git;a=blobdiff_plain;f=version2%2Fsrc%2FC%2FLastMessage.cc;h=92cf608b55adee58a550ea11afe0cef91cb9b41e;hp=083f004a46a1ca1cad434699beb73a61a07b6b6d;hb=2d567b75be4055f6a40ffe1cedb5cdc9be262d86;hpb=f0a95f7a96e808259ced5e9f61e029773c7a85e6 diff --git a/version2/src/C/LastMessage.cc b/version2/src/C/LastMessage.cc index 083f004..92cf608 100644 --- a/version2/src/C/LastMessage.cc +++ b/version2/src/C/LastMessage.cc @@ -1,4 +1,6 @@ - +#include "LastMessage.h" +#include "Slot.h" +#include "ByteBuffer.h" /** * This Entry records the last message sent by a given machine. @@ -6,48 +8,14 @@ * @version 1.0 */ - -class LastMessage extends Entry { - int64_t machineid; - int64_t seqnum; - - LastMessage(Slot slot, int64_t _machineid, int64_t _seqnum) { - super(slot); - machineid=_machineid; - seqnum=_seqnum; - } - - int64_t getMachineID() { - return machineid; - } - - int64_t getSequenceNumber() { - return seqnum; - } - - static Entry decode(Slot slot, ByteBuffer bb) { - int64_t machineid=bb.getLong(); - int64_t seqnum=bb.getLong(); - return new LastMessage(slot, machineid, seqnum); - } - - void encode(ByteBuffer bb) { - bb.put(Entry.TypeLastMessage); - bb.putLong(machineid); - bb.putLong(seqnum); - } - - int getSize() { - return 2*sizeof(int64_t)+sizeof(char); - } - - char getType() { - return Entry.TypeLastMessage; - } - - Entry getCopy(Slot s) { - return new LastMessage(s, machineid, seqnum); - } +Entry *LastMessage_decode(Slot *slot, ByteBuffer *bb) { + int64_t machineid = bb->getLong(); + int64_t seqnum = bb->getLong(); + return new LastMessage(slot, machineid, seqnum); } - +void LastMessage::encode(ByteBuffer *bb) { + bb->put(TypeLastMessage); + bb->putLong(machineid); + bb->putLong(seqnum); +}