Class SynchronizedMap<K,V>
- java.lang.Object
-
- org.apache.pivot.collections.concurrent.SynchronizedMap<K,V>
-
- All Implemented Interfaces:
java.lang.Iterable<K>
,Collection<K>
,Dictionary<K,V>
,Map<K,V>
public class SynchronizedMap<K,V> extends java.lang.Object implements Map<K,V>
Synchronized implementation of theMap
interface.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.pivot.collections.Dictionary
Dictionary.Pair<K,V>
-
-
Constructor Summary
Constructors Constructor Description SynchronizedMap(Map<K,V> map)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
clear()
Removes all entries in the map.boolean
containsKey(K key)
Tests the existence of a key in the dictionary.V
get(K key)
Retrieves the value for the given key.java.util.Comparator<K>
getComparator()
Returns the collection's sort order.int
getCount()
Returns the number of entries in the map.ListenerList<MapListener<K,V>>
getMapListeners()
Returns the map listener collection.boolean
isEmpty()
Tests the emptiness of the collection.java.util.Iterator<K>
iterator()
NOTE Callers must manually synchronize on the SynchronizedMap instance to ensure thread safety during iteration.V
put(K key, V value)
Sets the value of the given key, creating a new entry or replacing the existing value, and firing a corresponding event.V
remove(K key)
Removes a key/value pair from the map.void
setComparator(java.util.Comparator<K> comparator)
Sets the collection's sort order, re-ordering the collection's contents and ensuring that new entries preserve the sort order.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.pivot.collections.Dictionary
containsAny, copy, getBoolean, getBoolean, getColor, getFirst, getFont, getInt, getInt, getString, getString, putAll
-
-
-
-
Method Detail
-
get
public V get(K key)
Description copied from interface:Dictionary
Retrieves the value for the given key.- Specified by:
get
in interfaceDictionary<K,V>
- Parameters:
key
- The key whose value is to be returned.- Returns:
- The value corresponding to
key
, or null if the key does not exist. Will also return null if the key refers to a null value. UseDictionary.containsKey(K)
to distinguish between these two cases.
-
put
public V put(K key, V value)
Description copied from interface:Map
Sets the value of the given key, creating a new entry or replacing the existing value, and firing a corresponding event.- Specified by:
put
in interfaceDictionary<K,V>
- Specified by:
put
in interfaceMap<K,V>
- Parameters:
key
- The key whose value is to be set.value
- The value to be associated with the given key.- Returns:
- The value previously associated with the key.
- See Also:
MapListener.valueAdded(Map, Object)
,MapListener.valueUpdated(Map, Object, Object)
-
remove
public V remove(K key)
Description copied from interface:Dictionary
Removes a key/value pair from the map.- Specified by:
remove
in interfaceDictionary<K,V>
- Specified by:
remove
in interfaceMap<K,V>
- Parameters:
key
- The key whose mapping is to be removed.- Returns:
- The value that was removed.
- See Also:
MapListener.valueRemoved(Map, Object, Object)
-
clear
public void clear()
Description copied from interface:Map
Removes all entries in the map.- Specified by:
clear
in interfaceCollection<K>
- Specified by:
clear
in interfaceMap<K,V>
- See Also:
MapListener.mapCleared(Map)
-
containsKey
public boolean containsKey(K key)
Description copied from interface:Dictionary
Tests the existence of a key in the dictionary.- Specified by:
containsKey
in interfaceDictionary<K,V>
- Parameters:
key
- The key whose presence in the dictionary is to be tested.- Returns:
true
if the key exists in the dictionary;false
, otherwise.
-
isEmpty
public boolean isEmpty()
Description copied from interface:Collection
Tests the emptiness of the collection.- Specified by:
isEmpty
in interfaceCollection<K>
- Returns:
true
if the collection contains no elements;false
, otherwise.
-
getCount
public int getCount()
Description copied from interface:Map
Returns the number of entries in the map.
-
getComparator
public java.util.Comparator<K> getComparator()
Description copied from interface:Collection
Returns the collection's sort order.- Specified by:
getComparator
in interfaceCollection<K>
- Returns:
- The comparator used to order elements in the collection, or
null
if the sort order is undefined. - See Also:
Collection.setComparator(Comparator)
-
setComparator
public void setComparator(java.util.Comparator<K> comparator)
Description copied from interface:Collection
Sets the collection's sort order, re-ordering the collection's contents and ensuring that new entries preserve the sort order.Calling this method more than once with the same comparator will re-sort the collection.
- Specified by:
setComparator
in interfaceCollection<K>
- Specified by:
setComparator
in interfaceMap<K,V>
- Parameters:
comparator
- The comparator used to order elements in the collection, or null if the collection is unsorted.- See Also:
MapListener.comparatorChanged(Map, Comparator)
-
iterator
public java.util.Iterator<K> iterator()
NOTE Callers must manually synchronize on the SynchronizedMap instance to ensure thread safety during iteration.- Specified by:
iterator
in interfacejava.lang.Iterable<K>
-
getMapListeners
public ListenerList<MapListener<K,V>> getMapListeners()
Description copied from interface:Map
Returns the map listener collection.- Specified by:
getMapListeners
in interfaceMap<K,V>
- Returns:
- Current list of listeners on this map.
-
-