public class MortalCacheEntry extends AbstractInternalCacheEntry
Modifier and Type | Class and Description |
---|---|
static class |
MortalCacheEntry.Externalizer |
Modifier and Type | Field and Description |
---|---|
protected long |
created |
protected long |
lifespan |
internalMetadata, key, value
Modifier | Constructor and Description |
---|---|
|
MortalCacheEntry(Object key,
Object value,
long lifespan,
long created) |
protected |
MortalCacheEntry(Object key,
Object value,
PrivateMetadata internalMetadata,
long lifespan,
long created) |
Modifier and Type | Method and Description |
---|---|
protected void |
appendFieldsToString(StringBuilder builder) |
boolean |
canExpire() |
MortalCacheEntry |
clone() |
long |
getCreated() |
long |
getExpiryTime()
Only used with entries that have a lifespan, this determines when an entry is due to expire.
|
long |
getLastUsed() |
long |
getLifespan() |
long |
getMaxIdle() |
Metadata |
getMetadata()
Get metadata of this cache entry.
|
boolean |
isExpired(long now) |
void |
reincarnate(long now)
"Reincarnates" an entry.
|
void |
setLifespan(long lifespan) |
void |
setMetadata(Metadata metadata)
Set the metadata in the cache entry.
|
InternalCacheValue<?> |
toInternalCacheValue()
Creates a representation of this entry as an
InternalCacheValue . |
void |
touch(long currentTimeMillis)
Updates access timestamps on this instance to a specified time
|
commit, equals, getInternalMetadata, getKey, getValue, hashCode, isChanged, isCreated, isEvicted, isL1Entry, isNull, isRemoved, setChanged, setCreated, setEvicted, setInternalMetadata, setRemoved, setSkipLookup, setValue, skipLookup, toString
finalize, getClass, notify, notifyAll, wait, wait, wait
canExpireMaxIdle
setCreated, setLastUsed
comparingByKey, comparingByKey, comparingByValue, comparingByValue
protected MortalCacheEntry(Object key, Object value, PrivateMetadata internalMetadata, long lifespan, long created)
public final boolean isExpired(long now)
now
- the current time as defined by System.currentTimeMillis()
or TimeService.wallClockTime()
public final boolean canExpire()
public void setLifespan(long lifespan)
public final long getCreated()
public final long getLastUsed()
public final long getLifespan()
public final long getMaxIdle()
public final long getExpiryTime()
InternalCacheEntry
public final void touch(long currentTimeMillis)
InternalCacheEntry
currentTimeMillis
- the current time as defined by System.currentTimeMillis()
or TimeService.wallClockTime()
public void reincarnate(long now)
InternalCacheEntry
now
- the current time as defined by System.currentTimeMillis()
or TimeService.wallClockTime()
public InternalCacheValue<?> toInternalCacheValue()
InternalCacheEntry
InternalCacheValue
. The main
purpose of this is to provide a representation that does not have a reference to the key. This is useful in
situations where the key is already known or stored elsewhere, making serialization and deserialization more
efficient.
Note that this should not be used to optimize memory overhead, since the saving of an additional reference to a
key (a single object reference) does not warrant the cost of constructing an InternalCacheValue. This only
makes sense when marshalling is involved, since the cost of marshalling the key again can be sidestepped using an
InternalCacheValue if the key is already known/marshalled.
public Metadata getMetadata()
MetadataAware
getMetadata
in interface MetadataAware
getMetadata
in class AbstractInternalCacheEntry
public void setMetadata(Metadata metadata)
MetadataAware
setMetadata
in interface MetadataAware
setMetadata
in class AbstractInternalCacheEntry
metadata
- to apply to the cache entrypublic MortalCacheEntry clone()
clone
in interface CacheEntry
clone
in interface InternalCacheEntry
clone
in class AbstractInternalCacheEntry
protected void appendFieldsToString(StringBuilder builder)
appendFieldsToString
in class AbstractInternalCacheEntry
Copyright © 2021 JBoss by Red Hat. All rights reserved.