org.jboss.cache.util.concurrent
Class SelfInitializingConcurrentHashMap<K,V>

java.lang.Object
  extended by org.jboss.cache.util.concurrent.SelfInitializingConcurrentHashMap<K,V>
All Implemented Interfaces:
ConcurrentMap<K,V>, Map<K,V>

public class SelfInitializingConcurrentHashMap<K,V>
extends Object
implements ConcurrentMap<K,V>

Primarily used to hold child maps for nodes. Underlying CHM is null initially, and once threads start writing to this map, the CHM is initialized.

Since:
3.0
Author:
Manik Surtani (manik AT jboss DOT org)

Nested Class Summary
 
Nested classes/interfaces inherited from interface java.util.Map
Map.Entry<K,V>
 
Constructor Summary
SelfInitializingConcurrentHashMap()
           
 
Method Summary
 void clear()
           
 boolean containsKey(Object key)
           
 boolean containsValue(Object value)
           
 Set<Map.Entry<K,V>> entrySet()
           
 boolean equals(Object o)
           
 V get(Object key)
           
 int hashCode()
           
 boolean isEmpty()
           
 Set<K> keySet()
           
 V put(K key, V value)
           
 void putAll(Map<? extends K,? extends V> m)
           
 V putIfAbsent(K key, V value)
           
 V remove(Object key)
           
 boolean remove(Object key, Object value)
           
 V replace(K key, V value)
           
 boolean replace(K key, V oldValue, V newValue)
           
 int size()
           
 String toString()
           
 Collection<V> values()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SelfInitializingConcurrentHashMap

public SelfInitializingConcurrentHashMap()
Method Detail

put

public final V put(K key,
                   V value)
Specified by:
put in interface Map<K,V>

remove

public final V remove(Object key)
Specified by:
remove in interface Map<K,V>

putAll

public final void putAll(Map<? extends K,? extends V> m)
Specified by:
putAll in interface Map<K,V>

putIfAbsent

public final V putIfAbsent(K key,
                           V value)
Specified by:
putIfAbsent in interface ConcurrentMap<K,V>

replace

public final boolean replace(K key,
                             V oldValue,
                             V newValue)
Specified by:
replace in interface ConcurrentMap<K,V>

replace

public final V replace(K key,
                       V value)
Specified by:
replace in interface ConcurrentMap<K,V>

remove

public final boolean remove(Object key,
                            Object value)
Specified by:
remove in interface ConcurrentMap<K,V>

size

public final int size()
Specified by:
size in interface Map<K,V>

isEmpty

public final boolean isEmpty()
Specified by:
isEmpty in interface Map<K,V>

containsKey

public final boolean containsKey(Object key)
Specified by:
containsKey in interface Map<K,V>

containsValue

public final boolean containsValue(Object value)
Specified by:
containsValue in interface Map<K,V>

get

public final V get(Object key)
Specified by:
get in interface Map<K,V>

clear

public final void clear()
Specified by:
clear in interface Map<K,V>

keySet

public final Set<K> keySet()
Specified by:
keySet in interface Map<K,V>

values

public final Collection<V> values()
Specified by:
values in interface Map<K,V>

entrySet

public final Set<Map.Entry<K,V>> entrySet()
Specified by:
entrySet in interface Map<K,V>

toString

public String toString()
Overrides:
toString in class Object

equals

public boolean equals(Object o)
Specified by:
equals in interface Map<K,V>
Overrides:
equals in class Object

hashCode

public int hashCode()
Specified by:
hashCode in interface Map<K,V>
Overrides:
hashCode in class Object


Copyright © 2009 JBoss, a division of Red Hat. All Rights Reserved.