@Override
    public void fromData(DataInput in,
        DeserializationContext context) throws IOException, ClassNotFoundException {
      super.fromData(in, context);
      byte flags = in.readByte();
      final boolean hasVersionTag;
      if ((hasVersionTag = (flags & VALUE_HAS_VERSION_TAG) != 0)) {
        flags &= ~VALUE_HAS_VERSION_TAG;
      }
      valueType = flags;
      valueInBytes = DataSerializer.readByteArray(in);
      if (flags != VALUE_IS_BYTES) {
        remoteVersion = StaticSerialization.getVersionForDataStreamOrNull(in);
      }
      if (hasVersionTag) {
        versionTag = DataSerializer.readObject(in);
      }
    }
Processes this message. This method is invoked by the receiver of the message.

@param dm the distribution manager that is processing the message.
geode-core/src/main/java/org/apache/geode/internal/cache/partitioned/GetMessage.java