@Override
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
serialisedSize = in.readInt();
byte[] bytes = new byte[serialisedSize];
in.readFully(bytes);
raw = new ImmutableMarshalledValueByteStream(bytes);
cachedHashCode = in.readInt();
// If the marshalled value is being serialized via the JDK, it's not in
// an environment where the cache marshaller can be injected, so the
// only alternative available is really the generic JBoss Marshaller,
// used in potentially non-cache environments, i.e. hot rod client.