Package org.jboss.resteasy.util.snapshot
Class SnapshotMap<K,V>
- java.lang.Object
 - 
- org.jboss.resteasy.util.snapshot.SnapshotMap<K,V>
 
 
- 
- All Implemented Interfaces:
 ConcurrentMap<K,V>,Map<K,V>
public class SnapshotMap<K,V> extends Object implements ConcurrentMap<K,V>
Acts as a HashMap until lockSnapshots is called. After that, it is a copy on write strategy. 
- 
- 
Constructor Summary
Constructors Constructor Description SnapshotMap(boolean lockSnapshots)SnapshotMap(Map<K,V> existing, boolean shallow, boolean lockSnapshots, boolean snapFirst) 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclear()booleancontainsKey(Object key)booleancontainsValue(Object value)Set<Map.Entry<K,V>>entrySet()Vget(Object key)booleanisEmpty()Set<K>keySet()voidlockSnapshots()Vput(K key, V value)voidputAll(Map<? extends K,? extends V> m)VputIfAbsent(K key, V value)Vremove(Object key)booleanremove(Object key, Object value)Vreplace(K key, V value)booleanreplace(K key, V oldValue, V newValue)intsize()Collection<V>values()- 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait 
- 
Methods inherited from interface java.util.concurrent.ConcurrentMap
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, replaceAll 
 - 
 
 - 
 
- 
- 
Method Detail
- 
lockSnapshots
public void lockSnapshots()
 
- 
putIfAbsent
public V putIfAbsent(K key, V value)
- Specified by:
 putIfAbsentin interfaceConcurrentMap<K,V>- Specified by:
 putIfAbsentin interfaceMap<K,V>
 
- 
containsKey
public boolean containsKey(Object key)
- Specified by:
 containsKeyin interfaceMap<K,V>
 
- 
containsValue
public boolean containsValue(Object value)
- Specified by:
 containsValuein interfaceMap<K,V>
 
 - 
 
 -