Class PW<K,V>
java.lang.Object
com.github.benmanes.caffeine.cache.Node<K,V>
com.github.benmanes.caffeine.cache.PW<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:
- StrongKeys
- 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
ConstructorsConstructorDescriptionPW()PW(Object keyReference, V value, ReferenceQueue<V> valueReferenceQueue, int weight, long now) PW(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.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.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
newLookupKey, newReferenceKey, softValues
-
Field Details
-
VALUE_OFFSET
protected static final long VALUE_OFFSET -
value
-
-
Constructor Details
-
PW
PW() -
PW
PW(K key, ReferenceQueue<K> keyReferenceQueue, V value, ReferenceQueue<V> valueReferenceQueue, int weight, long now) -
PW
PW(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>
-
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.
-