Interface MarshalledEntry<K,​V>

  • All Known Implementing Classes:
    MarshalledEntryImpl

    public interface MarshalledEntry<K,​V>
    Defines an externally persisted entry. External stores that keep the data in serialised form should return an MarshalledEntry that contains the data in binary form (ByteBuffer) and unmarshall it lazily when getKey/Value/Metadata are invoked. This approach avoids unnecessary object (de)serialization e.g when the entries are fetched from the external store for the sole purpose of being sent over the wire to another requestor node.
    Since:
    6.0
    Author:
    Mircea Markus
    • Method Detail

      • getKeyBytes

        org.infinispan.commons.io.ByteBuffer getKeyBytes()
        Returns the key in serialized format.
      • getValueBytes

        org.infinispan.commons.io.ByteBuffer getValueBytes()
        Returns the value in serialize format.
      • getMetadataBytes

        org.infinispan.commons.io.ByteBuffer getMetadataBytes()
        Returns:
        null if there's no metadata associated with the object (e.g. expiry info, version..)
      • getKey

        K getKey()
        Returns the same key as getKeyBytes(), but unmarshalled.
      • getValue

        V getValue()
        Returns the same value as getKeyBytes(), but unmarshalled.
      • getMetadata

        InternalMetadata getMetadata()
        Returns:
        might be null if there's no metadata associated with the object (e.g. expiry info, version..).