Package com.google.common.cache
Class LocalCache.ManualSerializationProxy<K,V>
- java.lang.Object
-
- com.google.common.collect.ForwardingObject
-
- com.google.common.cache.ForwardingCache<K,V>
-
- com.google.common.cache.LocalCache.ManualSerializationProxy<K,V>
-
- All Implemented Interfaces:
Cache<K,V>
,java.io.Serializable
- Direct Known Subclasses:
LocalCache.LoadingSerializationProxy
- Enclosing class:
- LocalCache<K,V>
static class LocalCache.ManualSerializationProxy<K,V> extends ForwardingCache<K,V> implements java.io.Serializable
Serializes the configuration of a LocalCache, reconstituting it as a Cache using CacheBuilder upon deserialization. An instance of this class is fit for use by the writeReplace of LocalManualCache.Unfortunately, readResolve() doesn't get called when a circular dependency is present, so the proxy must be able to behave as the cache itself.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.google.common.cache.ForwardingCache
ForwardingCache.SimpleForwardingCache<K,V>
-
-
Field Summary
Fields Modifier and Type Field Description (package private) int
concurrencyLevel
(package private) Cache<K,V>
delegate
(package private) long
expireAfterAccessNanos
(package private) long
expireAfterWriteNanos
(package private) Equivalence<java.lang.Object>
keyEquivalence
(package private) LocalCache.Strength
keyStrength
(package private) CacheLoader<? super K,V>
loader
(package private) long
maxWeight
(package private) RemovalListener<? super K,? super V>
removalListener
private static long
serialVersionUID
(package private) Ticker
ticker
(package private) Equivalence<java.lang.Object>
valueEquivalence
(package private) LocalCache.Strength
valueStrength
(package private) Weigher<K,V>
weigher
-
Constructor Summary
Constructors Modifier Constructor Description private
ManualSerializationProxy(LocalCache.Strength keyStrength, LocalCache.Strength valueStrength, Equivalence<java.lang.Object> keyEquivalence, Equivalence<java.lang.Object> valueEquivalence, long expireAfterWriteNanos, long expireAfterAccessNanos, long maxWeight, Weigher<K,V> weigher, int concurrencyLevel, RemovalListener<? super K,? super V> removalListener, Ticker ticker, CacheLoader<? super K,V> loader)
(package private)
ManualSerializationProxy(LocalCache<K,V> cache)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Cache<K,V>
delegate()
Returns the backing delegate instance that methods are forwarded to.private void
readObject(java.io.ObjectInputStream in)
private java.lang.Object
readResolve()
(package private) CacheBuilder<K,V>
recreateCacheBuilder()
-
Methods inherited from class com.google.common.cache.ForwardingCache
asMap, cleanUp, get, getAllPresent, getIfPresent, invalidate, invalidateAll, invalidateAll, put, putAll, size, stats
-
Methods inherited from class com.google.common.collect.ForwardingObject
toString
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
keyStrength
final LocalCache.Strength keyStrength
-
valueStrength
final LocalCache.Strength valueStrength
-
keyEquivalence
final Equivalence<java.lang.Object> keyEquivalence
-
valueEquivalence
final Equivalence<java.lang.Object> valueEquivalence
-
expireAfterWriteNanos
final long expireAfterWriteNanos
-
expireAfterAccessNanos
final long expireAfterAccessNanos
-
maxWeight
final long maxWeight
-
concurrencyLevel
final int concurrencyLevel
-
removalListener
final RemovalListener<? super K,? super V> removalListener
-
ticker
final Ticker ticker
-
loader
final CacheLoader<? super K,V> loader
-
-
Constructor Detail
-
ManualSerializationProxy
ManualSerializationProxy(LocalCache<K,V> cache)
-
ManualSerializationProxy
private ManualSerializationProxy(LocalCache.Strength keyStrength, LocalCache.Strength valueStrength, Equivalence<java.lang.Object> keyEquivalence, Equivalence<java.lang.Object> valueEquivalence, long expireAfterWriteNanos, long expireAfterAccessNanos, long maxWeight, Weigher<K,V> weigher, int concurrencyLevel, RemovalListener<? super K,? super V> removalListener, Ticker ticker, CacheLoader<? super K,V> loader)
-
-
Method Detail
-
recreateCacheBuilder
CacheBuilder<K,V> recreateCacheBuilder()
-
readObject
private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, java.lang.ClassNotFoundException
- Throws:
java.io.IOException
java.lang.ClassNotFoundException
-
readResolve
private java.lang.Object readResolve()
-
delegate
protected Cache<K,V> delegate()
Description copied from class:ForwardingObject
Returns the backing delegate instance that methods are forwarded to. Abstract subclasses generally override this method with an abstract method that has a more specific return type, such asForwardingSet.delegate()
. Concrete subclasses override this method to supply the instance being decorated.- Specified by:
delegate
in classForwardingCache<K,V>
-
-