Package org.infinispan.persistence.spi
Interface MarshallableEntry<K,V>
-
public interface MarshallableEntry<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:
- 10.0
- Author:
- Ryan Emerson
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Deprecated Methods Modifier and Type Method Description default org.infinispan.marshall.core.MarshalledEntry<K,V>asMarshalledEntry()Deprecated.This should not be used by users and will be removed in subsequent versions along withMarshalledEntry.longcreated()longexpiryTime()KgetKey()Returns the same key asgetKeyBytes(), but unmarshalled.ByteBuffergetKeyBytes()Returns the key in serialized format.MarshalledValuegetMarshalledValue()MetadatagetMetadata()ByteBuffergetMetadataBytes()VgetValue()Returns the same value asgetKeyBytes(), but unmarshalled.ByteBuffergetValueBytes()Returns the value in serialize format.booleanisExpired(long now)longlastUsed()
-
-
-
Method Detail
-
getKeyBytes
ByteBuffer getKeyBytes()
Returns the key in serialized format.
-
getValueBytes
ByteBuffer getValueBytes()
Returns the value in serialize format.
-
getMetadataBytes
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 asgetKeyBytes(), but unmarshalled.
-
getValue
V getValue()
Returns the same value asgetKeyBytes(), but unmarshalled.
-
getMetadata
Metadata getMetadata()
- Returns:
- might be null if there's no metadata associated with the object (e.g. expiry info, version..).
-
created
long created()
-
lastUsed
long lastUsed()
-
isExpired
boolean isExpired(long now)
-
expiryTime
long expiryTime()
-
asMarshalledEntry
@Deprecated default org.infinispan.marshall.core.MarshalledEntry<K,V> asMarshalledEntry()
Deprecated.This should not be used by users and will be removed in subsequent versions along withMarshalledEntry.A bridge method required to ensure backwards compatibility with old store implementations that rely onMarshalledEntry. It's not possible to simply create a static wrapper class around aMarshallableEntryasgetMetadataBytes()is different fromgetMetadataBytes()and we require aMarshallerinstance to generate said bytes.
-
getMarshalledValue
MarshalledValue getMarshalledValue()
-
-