Interface MetaParam<T>
- Type Parameters:
T
- type of MetaParam instance, implementations should assign it to the implementation's type.
- All Known Subinterfaces:
MetaParam.Writable<T>
- All Known Implementing Classes:
CounterConfigurationMetaParam
,MetaParam.MetaBoolean
,MetaParam.MetaCreated
,MetaParam.MetaEntryVersion
,MetaParam.MetaLastUsed
,MetaParam.MetaLifespan
,MetaParam.MetaLoadedFromPersistence
,MetaParam.MetaLong
,MetaParam.MetaMaxIdle
,MetaParam.MetaUpdateCreationTime
Some metadata parameters can be provided by the user in which case they
need to implement MetaParam.Writable
. Examples of writable metadata
parameters are version information, lifespan of the cached value...etc.
Those metadata parameters not extending MetaParam.Writable
are
created by internal logic and hence can only be queried, for example:
time when value was added into the functional map, or last time value
was accessed or modified.
What makes MetaParam
different from Param
is that MetaParam
values are designed to be stored along with key/value pairs in the functional map,
to provide extra information. On the other hand, Param
instances
merely act as ways to tweak how operations are executed, and their contents
are never stored permanently.
This interface replaces Infinispan's Metadata interface providing a more flexible way to add new metadata parameters to be stored with the cached entries.
MetaParam
design has been geared towards making a clear
separation between the metadata that can be provided by the user on
per-entry basis, e.g. lifespan, maxIdle, version...etc, as opposed to
metadata that's produced by the internal logic that cannot be modified
directly by the user, e.g. cache entry created time, last time cache entry
was modified or accessed ...etc.
- Since:
- 8.0
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic interface
Provides metadata parameter lookup capabilities usingClass
as lookup key.static class
static final class
Read only metadata parameter representing a cached entry's created time in milliseconds.static class
Writable metadata parameter representing a cached entry's generic version.static final class
Read only metadata parameter representing a cached entry's last used time in milliseconds.static final class
Writable metadata parameter representing a cached entry's millisecond lifespan.static final class
Non-writable parameter telling if the entry was loaded from a persistence tier (CacheLoader
) or not.static class
Abstract class for numeric long-based metadata parameter instances.static final class
Writable metadata parameter representing a cached entry's millisecond max idle time.static final class
A parameter to tell if the creation timestamp should be updated for modified entries.static interface
WritableMetaParam
instances are those that the user can provide to be stored as part of the cache entry. -
Method Summary
-
Method Details
-
get
T get()Returns the value of the meta parameter.
-