Class ForwardingMap<K,V>

java.lang.Object
org.zkoss.zkmax.bind.ext.ForwardingMap<K,V>
All Implemented Interfaces:
Map<K,V>
Direct Known Subclasses:
StandardBiMap

public abstract class ForwardingMap<K,V> extends Object implements Map<K,V>
A map which forwards all its method calls to another map. Subclasses should override one or more methods to modify the behavior of the backing map as desired per the decorator pattern.
Author:
Kevin Bourrillion, Jared Levy
See Also:
  • Constructor Details

    • ForwardingMap

      public ForwardingMap()
  • Method Details

    • delegate

      protected abstract Map<K,V> delegate()
    • size

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

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

      public V remove(Object object)
      Specified by:
      remove in interface Map<K,V>
    • 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>
    • get

      public V get(Object key)
      Specified by:
      get 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>
    • keySet

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

      protected Set<K> createKeySet()
      Generates a Set for use by keySet().

      ForwardingMap's implementation of keySet() calls this method to generate a collection of values, and then reuses that Set for subsequent invocations. By default, this Set is the result of invoking keySet() on the delegate. Override this method if you want to provide another implementation.

      Returns:
      A set for use by keySet().
    • values

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

      protected Collection<V> createValues()
      Generates a Collection for use by values().

      ForwardingMap's implementation of values() calls this method to generate a collection of values, and then reuses that collection for subsequent invocations. By default, this collection is the result of invoking values() on the delegate. Override this method if you want to provide another implementation.

      Returns:
      A set for use by values().
    • entrySet

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

      protected Set<Map.Entry<K,V>> createEntrySet()
      Generates a Set for use by entrySet().

      ForwardingMap's implementation of entrySet() calls this method to generate a set of entries, and then reuses that set for subsequent invocations. By default, this set is the result of invoking entrySet() on the delegate. Override this method if you want to provide another implementation.

      Returns:
      A set for use by entrySet().
    • equals

      public boolean equals(Object object)
      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
    • toString

      public String toString()
      Overrides:
      toString in class Object