2 import java.nio.ByteBuffer;
5 * KeyValue entry for Slot.
6 * @author Brian Demsky <bdemsky@uci.edu>
10 class KeyValue /*extends Entry */ {
11 private IoTString key;
12 private IoTString value;
14 public KeyValue(IoTString _key, IoTString _value) {
19 public IoTString getKey() {
23 public IoTString getValue() {
27 static KeyValue decode(ByteBuffer bb) {
28 int keylength=bb.getInt();
29 int valuelength=bb.getInt();
30 byte[] key=new byte[keylength];
31 byte[] value=new byte[valuelength];
34 return new KeyValue(IoTString.shallow(key), IoTString.shallow(value));
37 public void encode(ByteBuffer bb) {
38 bb.putInt(key.length());
39 bb.putInt(value.length());
40 bb.put(key.internalBytes());
41 bb.put(value.internalBytes());
44 public int getSize() {
45 return 2*Integer.BYTES+key.length()+value.length();
48 public String toString() {
49 return value.toString();