Class SharedMapDecorator<K,V>

java.lang.Object
org.springframework.binding.collection.SharedMapDecorator<K,V>
All Implemented Interfaces:
Serializable, Map<K,V>, SharedMap<K,V>

public class SharedMapDecorator<K,V> extends Object implements SharedMap<K,V>, 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:
  • Constructor Details

    • SharedMapDecorator

      public SharedMapDecorator(Map<K,V> map)
      Creates a new shared map decorator.
      Parameters:
      map - the map that is shared by multiple threads, to be synced
  • Method Details

    • clear

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

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

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

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

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

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

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

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

      public void putAll(Map<? extends K,? extends V> map)
      Specified by:
      putAll in interface Map<K,V>
    • remove

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

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

      public Collection<V> values()
      Specified by:
      values in interface Map<K,V>
    • 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<K,V>
      Returns:
      the mutex
    • toString

      public String toString()
      Overrides:
      toString in class Object