add makefile
[iotcloud.git] / src / java / iotcloud / RejectedMessage.java
index c0dfaa621fa49dabd4492e0ed32bd934a98959f6..44059bfec10175d7d8de7bd30fdcd9976427149c 100644 (file)
@@ -3,23 +3,40 @@ import java.nio.ByteBuffer;
 
 class RejectedMessage extends Entry {
        private long machineid;
-       private long oldseqnum;
-       private long newseqnum;
-       private boolean equalto;
+       private long oldseqnum;//Oldest seqnum in range
+       private long newseqnum;//Newest seqnum in range (inclusive)
+       private boolean equalto;//Is message sent or not sent by machineid
 
-       RejectedMessage(long _machineid, long _oldseqnum, long _newseqnum, boolean _equalto) {
+       RejectedMessage(Slot slot, long _machineid, long _oldseqnum, long _newseqnum, boolean _equalto) {
+               super(slot);
                machineid=_machineid;
                oldseqnum=_oldseqnum;
                newseqnum=_newseqnum;
                equalto=_equalto;
        }
+
+       long getOldSeqNum() {
+               return oldseqnum;
+       }
+
+       long getNewSeqNum() {
+               return newseqnum;
+       }
+
+       boolean getEqual() {
+               return equalto;
+       }
+
+       long getMachineID() {
+               return machineid;
+       }
        
-       static Entry decode(ByteBuffer bb) {
+       static Entry decode(Slot slot, ByteBuffer bb) {
                long machineid=bb.getLong();
                long oldseqnum=bb.getLong();
                long newseqnum=bb.getLong();
                byte equalto=bb.get();
-               return new RejectedMessage(machineid, oldseqnum, newseqnum, equalto==1);
+               return new RejectedMessage(slot, machineid, oldseqnum, newseqnum, equalto==1);
        }
        
        void encode(ByteBuffer bb) {
@@ -33,4 +50,8 @@ class RejectedMessage extends Entry {
        int getSize() {
                return 3*Long.BYTES + 2*Byte.BYTES;
        }
+
+       byte getType() {
+               return Entry.TypeRejectedMessage;
+       }
 }