public Object getValuePreferringCachedDeserializable() {
    checkEntryDestroyed();
    Object value = regionEntry.getValue(null);
    if (value instanceof CachedDeserializable) {
      return value;
    } else {
      return getRawValue();
    }
  }
If the value is available as a CachedDeserializable instance then return it.
Otherwise behave as if getValue() was called.
geode-core/src/main/java/org/apache/geode/internal/cache/EntrySnapshot.java