Class FW<K,V>
java.lang.Object
com.github.benmanes.caffeine.cache.Node<K,V>
com.github.benmanes.caffeine.cache.FW<K,V>
- All Implemented Interfaces:
AccessOrderDeque.AccessOrder<Node<K,,V>> NodeFactory<K,,V> WriteOrderDeque.WriteOrder<Node<K,V>>
WARNING: GENERATED CODE
A cache entry that provides the following features:
- WeakKeys
- WeakValues
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) References.WeakValueReference<V> protected static final longFields inherited from interface com.github.benmanes.caffeine.cache.NodeFactory
DEAD_STRONG_KEY, DEAD_WEAK_KEY, RETIRED_STRONG_KEY, RETIRED_WEAK_KEY -
Constructor Summary
ConstructorsConstructorDescriptionFW()FW(Object keyReference, V value, ReferenceQueue<V> valueReferenceQueue, int weight, long now) FW(K key, ReferenceQueue<K> keyReferenceQueue, V value, ReferenceQueue<V> valueReferenceQueue, int weight, long now) -
Method Summary
Modifier and TypeMethodDescriptionfinal booleancontainsValue(Object value) Returnstrueif the given objects are considered equivalent.final voiddie()Sets the node to the dead state.final KgetKey()Return the key ornullif it has been reclaimed by the garbage collector.final ObjectReturns the reference that the cache is holding the entry by.final VgetValue()Return the value ornullif it has been reclaimed by the garbage collector.final ObjectReturns the reference to the value.final booleanisAlive()If the entry is available in the hash-table and page replacement policy.final booleanisDead()If the entry was removed from the hash-table and the page replacement policy.final booleanIf the entry was removed from the hash-table and is awaiting removal from the page replacement policy.newLookupKey(Object key) Returns a key suitable for looking up an entry in the cache.newNode(Object keyReference, V value, ReferenceQueue<V> valueReferenceQueue, int weight, long now) Returns a node optimized for the specified features.newNode(K key, ReferenceQueue<K> keyReferenceQueue, V value, ReferenceQueue<V> valueReferenceQueue, int weight, long now) Returns a node optimized for the specified features.newReferenceKey(K key, ReferenceQueue<K> referenceQueue) Returns a key suitable for inserting into the cache.final voidretire()Sets the node to the retired state.final voidsetValue(V value, ReferenceQueue<V> referenceQueue) Sets the value, which may be held strongly, weakly, or softly.booleanReturns whether this factory supports weak values.Methods inherited from class com.github.benmanes.caffeine.cache.Node
casVariableTime, casWriteTime, getAccessTime, getNextInAccessOrder, getNextInVariableOrder, getNextInWriteOrder, getPolicyWeight, getPreviousInAccessOrder, getPreviousInVariableOrder, getPreviousInWriteOrder, getQueueType, getVariableTime, getWeight, getWriteTime, inMainProbation, inMainProtected, inWindow, makeMainProbation, makeMainProtected, makeWindow, setAccessTime, setNextInAccessOrder, setNextInVariableOrder, setNextInWriteOrder, setPolicyWeight, setPreviousInAccessOrder, setPreviousInVariableOrder, setPreviousInWriteOrder, setQueueType, setVariableTime, setWeight, setWriteTime, toStringMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.github.benmanes.caffeine.cache.NodeFactory
softValues
-
Field Details
-
VALUE_OFFSET
protected static final long VALUE_OFFSET -
value
-
-
Constructor Details
-
FW
FW() -
FW
FW(K key, ReferenceQueue<K> keyReferenceQueue, V value, ReferenceQueue<V> valueReferenceQueue, int weight, long now) -
FW
FW(Object keyReference, V value, ReferenceQueue<V> valueReferenceQueue, int weight, long now)
-
-
Method Details
-
getKeyReference
Description copied from class:NodeReturns the reference that the cache is holding the entry by. This is either the key if strongly held or aWeakReferenceto that key.- Specified by:
getKeyReferencein classNode<K,V>
-
getKey
Description copied from class:NodeReturn the key ornullif it has been reclaimed by the garbage collector. -
getValue
Description copied from class:NodeReturn the value ornullif it has been reclaimed by the garbage collector. -
getValueReference
Description copied from class:NodeReturns the reference to the value. This is either the value if strongly held or aReferenceto that value.- Specified by:
getValueReferencein classNode<K,V>
-
setValue
Description copied from class:NodeSets the value, which may be held strongly, weakly, or softly. This update may be set lazily and rely on the memory fence when the lock is released. -
containsValue
Description copied from class:NodeReturnstrueif the given objects are considered equivalent. A strongly held value is compared by equality and a weakly or softly held value is compared by identity.- Specified by:
containsValuein classNode<K,V>
-
newNode
public Node<K,V> newNode(K key, ReferenceQueue<K> keyReferenceQueue, V value, ReferenceQueue<V> valueReferenceQueue, int weight, long now) Description copied from interface:NodeFactoryReturns a node optimized for the specified features.- Specified by:
newNodein interfaceNodeFactory<K,V>
-
newNode
public Node<K,V> newNode(Object keyReference, V value, ReferenceQueue<V> valueReferenceQueue, int weight, long now) Description copied from interface:NodeFactoryReturns a node optimized for the specified features.- Specified by:
newNodein interfaceNodeFactory<K,V>
-
newLookupKey
Description copied from interface:NodeFactoryReturns a key suitable for looking up an entry in the cache. If the cache holds keys strongly then the key is returned. If the cache holds keys weakly then aReferences.LookupKeyReferenceholding the key argument is returned.- Specified by:
newLookupKeyin interfaceNodeFactory<K,V>
-
newReferenceKey
Description copied from interface:NodeFactoryReturns a key suitable for inserting into the cache. If the cache holds keys strongly then the key is returned. If the cache holds keys weakly then aReferences.WeakKeyReference<K>holding the key argument is returned.- Specified by:
newReferenceKeyin interfaceNodeFactory<K,V>
-
weakValues
public boolean weakValues()Description copied from interface:NodeFactoryReturns whether this factory supports weak values.- Specified by:
weakValuesin interfaceNodeFactory<K,V>
-
isAlive
public final boolean isAlive()Description copied from class:NodeIf the entry is available in the hash-table and page replacement policy. -
isRetired
public final boolean isRetired()Description copied from class:NodeIf the entry was removed from the hash-table and is awaiting removal from the page replacement policy. -
retire
public final void retire()Description copied from class:NodeSets the node to the retired state. -
isDead
public final boolean isDead()Description copied from class:NodeIf the entry was removed from the hash-table and the page replacement policy. -
die
public final void die()Description copied from class:NodeSets the node to the dead state.
-