Ref counting
[iotcloud.git] / version2 / src / C / SlotIndexer.cc
index 0fa6449a6b7c7ac25bff0611f9fd8a7334706b29..b49ca454e749953f152d9ef85f0caf75933675b9 100644 (file)
@@ -1,5 +1,7 @@
 #include "SlotIndexer.h"
-
+#include "Slot.h"
+#include "Error.h"
+#include "SlotBuffer.h"
 /**
  * Slot indexer allows slots in both the slot buffer and the new
  * server response to looked up in a consistent fashion.
@@ -7,16 +9,16 @@
  * @version 1.0
  */
 
-SlotIndexer::SlotIndexer(Array<Slot*> * _updates, SlotBuffer * _buffer) :
-       buffer(_buffer),
+SlotIndexer::SlotIndexer(Array<Slot *> *_updates, SlotBuffer *_buffer) :
        updates(_updates),
+       buffer(_buffer),
        firstslotseqnum(updates->get(0)->getSequenceNumber()) {
 }
 
-Slot * SlotIndexer::getSlot(int64_t seqnum) {
+Slot *SlotIndexer::getSlot(int64_t seqnum) {
        if (seqnum >= firstslotseqnum) {
                int32_t offset = (int32_t) (seqnum - firstslotseqnum);
-               if (offset >= updates->length())
+               if (((uint32_t)offset) >= updates->length())
                        throw new Error("Invalid Slot Sequence Number Reference");
                else
                        return updates->get(offset);