org.springframework.binding.collection
Class SharedMapDecorator

java.lang.Object
  extended by org.springframework.binding.collection.SharedMapDecorator
All Implemented Interfaces:
Serializable, Map, SharedMap

public class SharedMapDecorator
extends Object
implements SharedMap, Serializable

A map decorator that implements SharedMap. By default, simply returns the map itself as the mutex. Subclasses may override to return a different mutex object.

Author:
Keith Donald
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from interface java.util.Map
Map.Entry<K,V>
 
Constructor Summary
SharedMapDecorator(Map map)
          Creates a new shared map decorator.
 
Method Summary
 void clear()
           
 boolean containsKey(Object key)
           
 boolean containsValue(Object value)
           
 Set entrySet()
           
 Object get(Object key)
           
 Object getMutex()
          Returns the shared mutex that may be synchronized on using a synchronized block.
 boolean isEmpty()
           
 Set keySet()
           
 Object put(Object key, Object value)
           
 void putAll(Map map)
           
 Object remove(Object key)
           
 int size()
           
 String toString()
           
 Collection values()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.Map
equals, hashCode
 

Constructor Detail

SharedMapDecorator

public SharedMapDecorator(Map map)
Creates a new shared map decorator.

Parameters:
map - the map that is shared by multiple threads, to be synced
Method Detail

clear

public void clear()
Specified by:
clear in interface Map

containsKey

public boolean containsKey(Object key)
Specified by:
containsKey in interface Map

containsValue

public boolean containsValue(Object value)
Specified by:
containsValue in interface Map

entrySet

public Set entrySet()
Specified by:
entrySet in interface Map

get

public Object get(Object key)
Specified by:
get in interface Map

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface Map

keySet

public Set keySet()
Specified by:
keySet in interface Map

put

public Object put(Object key,
                  Object value)
Specified by:
put in interface Map

putAll

public void putAll(Map map)
Specified by:
putAll in interface Map

remove

public Object remove(Object key)
Specified by:
remove in interface Map

size

public int size()
Specified by:
size in interface Map

values

public Collection values()
Specified by:
values in interface Map

getMutex

public Object getMutex()
Description copied from interface: SharedMap
Returns the shared mutex that may be synchronized on using a synchronized block. The returned mutex is guaranteed to be non-null. Example usage:
 synchronized (sharedMap.getMutex()) {
        // do synchronized work
 }
 

Specified by:
getMutex in interface SharedMap
Returns:
the mutex

toString

public String toString()
Overrides:
toString in class Object