@Override public void readFields(DataInput dataInput) throws IOException { String uuid = dataInput.readUTF(); long timestamp = dataInput.readLong(); entry = new StoreEntry(uuid, timestamp); int count = dataInput.readInt(); for (int i = 0; i < count; i++) { String key = dataInput.readUTF(); String type = dataInput.readUTF(); String val = dataInput.readUTF(); String vis = dataInput.readUTF(); try { entry.put(new Tuple(key, typeRegistry.decode(type, val), vis)); } catch (TypeDecodingException e) { throw new RuntimeException(e); } } }