public void setValue(Data value) {
   invalidate();
   if (value != null) {
     valueRef = storage.put(key.getPartitionHash(), value);
   }
 }
 public void invalidate() {
   if (valueRef != null) {
     storage.remove(key.getPartitionHash(), valueRef);
   }
   valueRef = null;
 }
 public Data getValue() {
   if (valueRef != null) {
     return storage.get(key.getPartitionHash(), valueRef);
   }
   return null;
 }