package iotcloud;
import java.nio.ByteBuffer;
+/**
+ * KeyValue entry for Slot.
+ * @author Brian Demsky <bdemsky@uci.edu>
+ * @version 1.0
+ */
+
class KeyValue extends Entry {
private IoTString key;
private IoTString value;
-
- KeyValue(IoTString _key, IoTString _value) {
+
+ KeyValue(Slot slot, IoTString _key, IoTString _value) {
+ super(slot);
key=_key;
value=_value;
}
IoTString getValue() {
return value;
}
-
- static Entry decode(ByteBuffer bb) {
+
+ static Entry decode(Slot slot, ByteBuffer bb) {
int keylength=bb.getInt();
int valuelength=bb.getInt();
byte[] key=new byte[keylength];
byte[] value=new byte[valuelength];
bb.get(key);
bb.get(value);
- return new KeyValue(IoTString.shallow(key), IoTString.shallow(value));
+ return new KeyValue(slot, IoTString.shallow(key), IoTString.shallow(value));
}
void encode(ByteBuffer bb) {
byte getType() {
return Entry.TypeKeyValue;
}
+
+ public String toString() {
+ return value.toString();
+ }
+
+ Entry getCopy(Slot s) {
+ return new KeyValue(s, key, value);
+ }
}