org.apache.commons.collections4.map
Class AbstractMapDecorator<K,V>

java.lang.Object
  extended by org.apache.commons.collections4.map.AbstractIterableMap<K,V>
      extended by org.apache.commons.collections4.map.AbstractMapDecorator<K,V>
Type Parameters:
K - the type of the keys in the map
V - the type of the values in the map
All Implemented Interfaces:
Map<K,V>, Get<K,V>, IterableGet<K,V>, IterableMap<K,V>, Put<K,V>
Direct Known Subclasses:
AbstractBidiMapDecorator, AbstractOrderedMapDecorator, AbstractSortedMapDecorator, DefaultedMap, FixedSizeMap, LazyMap, ListOrderedMap, MultiKeyMap, MultiValueMap, PassiveExpiringMap, PredicatedMap, TransformedMap, UnmodifiableMap

public abstract class AbstractMapDecorator<K,V>
extends AbstractIterableMap<K,V>

Provides a base decorator that enables additional functionality to be added to a Map via decoration.

Methods are forwarded directly to the decorated map.

This implementation does not perform any special processing with entrySet(), keySet() or values(). Instead it simply returns the set/collection from the wrapped map. This may be undesirable, for example if you are trying to write a validating implementation it would provide a loophole around the validation. But, you might want that loophole, so this class is kept simple.

Since:
3.0
Version:
$Id: AbstractMapDecorator.java 1494296 2013-06-18 20:54:29Z tn $

Nested Class Summary
 
Nested classes/interfaces inherited from interface java.util.Map
Map.Entry<K,V>
 
Constructor Summary
protected AbstractMapDecorator()
          Constructor only used in deserialization, do not use otherwise.
protected AbstractMapDecorator(Map<K,V> map)
          Constructor that wraps (not copies).
 
Method Summary
 void clear()
           
 boolean containsKey(Object key)
           
 boolean containsValue(Object value)
           
protected  Map<K,V> decorated()
          Gets the map being decorated.
 Set<Map.Entry<K,V>> entrySet()
           
 boolean equals(Object object)
           
 V get(Object key)
           
 int hashCode()
           
 boolean isEmpty()
           
 Set<K> keySet()
           
 V put(K key, V value)
          Note that the return type is Object, rather than V as in the Map interface.
 void putAll(Map<? extends K,? extends V> mapToCopy)
           
 V remove(Object key)
           
 int size()
           
 String toString()
           
 Collection<V> values()
           
 
Methods inherited from class org.apache.commons.collections4.map.AbstractIterableMap
mapIterator
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AbstractMapDecorator

protected AbstractMapDecorator()
Constructor only used in deserialization, do not use otherwise.

Since:
3.1

AbstractMapDecorator

protected AbstractMapDecorator(Map<K,V> map)
Constructor that wraps (not copies).

Parameters:
map - the map to decorate, must not be null
Throws:
IllegalArgumentException - if the collection is null
Method Detail

decorated

protected Map<K,V> decorated()
Gets the map being decorated.

Returns:
the decorated map

clear

public void clear()
See Also:
Map.clear()

containsKey

public boolean containsKey(Object key)
See Also:
Map.containsKey(Object)

containsValue

public boolean containsValue(Object value)
See Also:
Map.containsValue(Object)

entrySet

public Set<Map.Entry<K,V>> entrySet()
See Also:
Map.entrySet()

get

public V get(Object key)
See Also:
Map.get(Object)

isEmpty

public boolean isEmpty()
See Also:
Map.isEmpty()

keySet

public Set<K> keySet()
See Also:
Map.keySet()

put

public V put(K key,
             V value)
Description copied from interface: Put
Note that the return type is Object, rather than V as in the Map interface. See the class Javadoc for further info.

See Also:
Map.put(Object, Object)

putAll

public void putAll(Map<? extends K,? extends V> mapToCopy)
See Also:
Map.putAll(Map)

remove

public V remove(Object key)
See Also:
Map.remove(Object)

size

public int size()
See Also:
Map.size()

values

public Collection<V> values()
See Also:
Map.values()

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


Copyright © 2001–2013 The Apache Software Foundation. All rights reserved.