Class FSAWR<K,V>
java.lang.Object
com.github.benmanes.caffeine.cache.Node<K,V>
com.github.benmanes.caffeine.cache.FS<K,V>
com.github.benmanes.caffeine.cache.FSA<K,V>
com.github.benmanes.caffeine.cache.FSAW<K,V>
com.github.benmanes.caffeine.cache.FSAWR<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:
- RefreshWrite
- WeakKeys (inherited)
- StrongValues (inherited)
- ExpireAccess (inherited)
- ExpireWrite (inherited)
-
Field Summary
Fields inherited from class FSAW
nextInWriteOrder, previousInWriteOrder, WRITE_TIME_OFFSET, writeTimeFields inherited from class FSA
ACCESS_TIME_OFFSET, accessTime, nextInAccessOrder, previousInAccessOrderFields inherited from class FS
key, KEY_OFFSET, value, VALUE_OFFSETFields inherited from interface NodeFactory
DEAD_STRONG_KEY, DEAD_WEAK_KEY, RETIRED_STRONG_KEY, RETIRED_WEAK_KEY -
Constructor Summary
ConstructorsConstructorDescriptionFSAWR()FSAWR(Object keyReference, V value, ReferenceQueue<V> valueReferenceQueue, int weight, long now) FSAWR(K key, ReferenceQueue<K> keyReferenceQueue, V value, ReferenceQueue<V> valueReferenceQueue, int weight, long now) -
Method Summary
Modifier and TypeMethodDescriptionbooleancasVariableTime(long expect, long update) Atomically sets the variable time to the given updated value if the current value equals the expected value and returns if the update was successful.final booleancasWriteTime(long expect, long update) Atomically sets the write time to the given updated value if the current value equals the expected value and returns if the update was successful.longReturns the variable expiration time, in nanoseconds.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.voidsetNextInVariableOrder(Node<K, V> nextInWriteOrder) voidsetPreviousInVariableOrder(Node<K, V> previousInWriteOrder) voidsetVariableTime(long accessTime) Sets the variable expiration time in nanoseconds.Methods inherited from class FSAW
getNextInWriteOrder, getPreviousInWriteOrder, getWriteTime, setNextInWriteOrder, setPreviousInWriteOrder, setWriteTimeMethods inherited from class FSA
getAccessTime, getNextInAccessOrder, getPreviousInAccessOrder, setAccessTime, setNextInAccessOrder, setPreviousInAccessOrderMethods inherited from class FS
containsValue, die, getKey, getKeyReference, getValue, getValueReference, isAlive, isDead, isRetired, newLookupKey, newReferenceKey, retire, setValueMethods inherited from class Node
getPolicyWeight, getQueueType, getWeight, inMainProbation, inMainProtected, inWindow, makeMainProbation, makeMainProtected, makeWindow, setPolicyWeight, setQueueType, setWeight, toStringMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface NodeFactory
softValues, weakValues
-
Constructor Details
-
FSAWR
FSAWR() -
FSAWR
FSAWR(K key, ReferenceQueue<K> keyReferenceQueue, V value, ReferenceQueue<V> valueReferenceQueue, int weight, long now) -
FSAWR
FSAWR(Object keyReference, V value, ReferenceQueue<V> valueReferenceQueue, int weight, long now)
-
-
Method Details
-
getPreviousInVariableOrder
-
setPreviousInVariableOrder
-
getNextInVariableOrder
-
setNextInVariableOrder
-
getVariableTime
public long getVariableTime()Description copied from class:NodeReturns the variable expiration time, in nanoseconds.- Overrides:
getVariableTimein classFSAW<K,V>
-
setVariableTime
public void setVariableTime(long accessTime) Description copied from class:NodeSets the variable expiration time in nanoseconds. This update may be set lazily and rely on the memory fence when the lock is released.- Overrides:
setVariableTimein classFSAW<K,V>
-
casVariableTime
public boolean casVariableTime(long expect, long update) Description copied from class:NodeAtomically sets the variable time to the given updated value if the current value equals the expected value and returns if the update was successful.- Overrides:
casVariableTimein classFSAW<K,V>
-
casWriteTime
public final boolean casWriteTime(long expect, long update) Description copied from class:NodeAtomically sets the write time to the given updated value if the current value equals the expected value and returns if the update was successful.- Overrides:
casWriteTimein 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. -
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.
-