public class LazyInitializedCacheMap<K,V>
extends java.lang.Object
implements java.util.Map<K,V>
IoBuffer
for example.
Based on the final implementation of Memoizer written by Brian Goetz and Tim
Peierls. This implementation will return an
UnsupportedOperationException
on each method that is not intended to
be called by user code for performance reasons.限定符和类型 | 类和说明 |
---|---|
class |
LazyInitializedCacheMap.NoopInitializer
This class provides a noop
LazyInitializer meaning it
will return the same object it received when instantiated. |
构造器和说明 |
---|
LazyInitializedCacheMap()
Default constructor.
|
LazyInitializedCacheMap(java.util.concurrent.ConcurrentHashMap<K,LazyInitializer<V>> map)
This constructor allows to provide a fine tuned
ConcurrentHashMap
to stick with each special case the user needs. |
限定符和类型 | 方法和说明 |
---|---|
void |
clear() |
boolean |
containsKey(java.lang.Object key) |
boolean |
containsValue(java.lang.Object value)
Throws
UnsupportedOperationException as this method would imply
performance drops. |
java.util.Set<java.util.Map.Entry<K,V>> |
entrySet()
Throws
UnsupportedOperationException as this method would imply
performance drops. |
V |
get(java.lang.Object key) |
java.util.Collection<LazyInitializer<V>> |
getValues() |
boolean |
isEmpty() |
java.util.Set<K> |
keySet() |
V |
put(K key,
V value) |
void |
putAll(java.util.Map<? extends K,? extends V> m) |
V |
putIfAbsent(K key,
LazyInitializer<V> value)
If the specified key is not already associated
with a value, associate it with the given value.
|
V |
remove(java.lang.Object key) |
int |
size() |
java.util.Collection<V> |
values()
Throws
UnsupportedOperationException as this method would imply
performance drops. |
public LazyInitializedCacheMap()
ConcurrentHashMap
.public LazyInitializedCacheMap(java.util.concurrent.ConcurrentHashMap<K,LazyInitializer<V>> map)
ConcurrentHashMap
to stick with each special case the user needs.map
- The map to use as a cachepublic V putIfAbsent(K key, LazyInitializer<V> value)
if (!map.containsKey(key)) return map.put(key, value); else return map.get(key);except that the action is performed atomically.
key
- key with which the specified value is to be associatedvalue
- a lazy initialized value object.public boolean containsValue(java.lang.Object value)
UnsupportedOperationException
as this method would imply
performance drops.public java.util.Collection<V> values()
UnsupportedOperationException
as this method would imply
performance drops.public java.util.Set<java.util.Map.Entry<K,V>> entrySet()
UnsupportedOperationException
as this method would imply
performance drops.public java.util.Collection<LazyInitializer<V>> getValues()
public boolean containsKey(java.lang.Object key)