Package com.globalmentor.collections
Class SynchronizedMapDecorator<K,V>
- java.lang.Object
-
- com.globalmentor.collections.SynchronizedMapDecorator<K,V>
-
- Type Parameters:
K
- The type of key used in the map.V
- The type of value stored in the map.
- All Implemented Interfaces:
java.util.Map<K,V>
- Direct Known Subclasses:
SynchronizedCollectionMapDecorator
public class SynchronizedMapDecorator<K,V> extends java.lang.Object implements java.util.Map<K,V>
A map that wraps an existing map, providing access through theMap
interface. All map access is synchronized on the provided synchronization object.- Author:
- Garret Wilson
-
-
Constructor Summary
Constructors Constructor Description SynchronizedMapDecorator(java.util.Map<K,V> map)
Map constructor.SynchronizedMapDecorator(java.util.Map<K,V> map, java.lang.Object mutex)
Map and mutex constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
clear()
V
compute(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
V
computeIfAbsent(K key, java.util.function.Function<? super K,? extends V> mappingFunction)
V
computeIfPresent(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
boolean
containsKey(java.lang.Object key)
boolean
containsValue(java.lang.Object value)
java.util.Set<java.util.Map.Entry<K,V>>
entrySet()
boolean
equals(java.lang.Object o)
void
forEach(java.util.function.BiConsumer<? super K,? super V> action)
V
get(java.lang.Object key)
V
getOrDefault(java.lang.Object key, V defaultValue)
int
hashCode()
boolean
isEmpty()
java.util.Set<K>
keySet()
V
merge(K key, V value, java.util.function.BiFunction<? super V,? super V,? extends V> remappingFunction)
V
put(K key, V value)
void
putAll(java.util.Map<? extends K,? extends V> t)
V
putIfAbsent(K key, V value)
V
remove(java.lang.Object key)
boolean
remove(java.lang.Object key, java.lang.Object value)
V
replace(K key, V value)
boolean
replace(K key, V oldValue, V newValue)
void
replaceAll(java.util.function.BiFunction<? super K,? super V,? extends V> function)
int
size()
java.util.Collection<V>
values()
-
-
-
Constructor Detail
-
SynchronizedMapDecorator
public SynchronizedMapDecorator(java.util.Map<K,V> map)
Map constructor. The new instance of this class is used as a mutex.- Parameters:
map
- The map this map should decorate.- Throws:
java.lang.NullPointerException
- if the provided map isnull
.
-
SynchronizedMapDecorator
public SynchronizedMapDecorator(java.util.Map<K,V> map, java.lang.Object mutex)
Map and mutex constructor.- Parameters:
map
- The map this map should decorate.mutex
- The mutual exclusion synchronization object.- Throws:
java.lang.NullPointerException
- if the provided map and/or mutex isnull
.
-
-
Method Detail
-
containsKey
public boolean containsKey(java.lang.Object key)
-
containsValue
public boolean containsValue(java.lang.Object value)
-
values
public java.util.Collection<V> values()
-
equals
public boolean equals(java.lang.Object o)
-
hashCode
public int hashCode()
-
replaceAll
public void replaceAll(java.util.function.BiFunction<? super K,? super V,? extends V> function)
-
remove
public boolean remove(java.lang.Object key, java.lang.Object value)
-
computeIfAbsent
public V computeIfAbsent(K key, java.util.function.Function<? super K,? extends V> mappingFunction)
-
computeIfPresent
public V computeIfPresent(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
-
compute
public V compute(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
-
-