org.apache.commons.collections.map
Interface CompositeMap.MapMutator<K,V>

Enclosing class:
CompositeMap<K,V>

public static interface CompositeMap.MapMutator<K,V>

This interface allows definition for all of the indeterminate mutators in a CompositeMap, as well as providing a hook for callbacks on key collisions.


Method Summary
 V put(CompositeMap<K,V> map, Map[] composited, K key, V value)
          Called when the CompositeMap.put() method is invoked.
 void putAll(CompositeMap<K,V> map, Map[] composited, Map<? extends K,? extends V> mapToAdd)
          Called when the CompositeMap.putAll() method is invoked.
 void resolveCollision(CompositeMap<K,V> composite, Map<? extends K,? extends V> existing, Map<? extends K,? extends V> added, Collection<K> intersect)
          Called when adding a new Composited Map results in a key collision.
 

Method Detail

resolveCollision

void resolveCollision(CompositeMap<K,V> composite,
                      Map<? extends K,? extends V> existing,
                      Map<? extends K,? extends V> added,
                      Collection<K> intersect)
Called when adding a new Composited Map results in a key collision.

Parameters:
composite - the CompositeMap with the collision
existing - the Map already in the composite which contains the offending key
added - the Map being added
intersect - the intersection of the keysets of the existing and added maps

put

V put(CompositeMap<K,V> map,
      Map[] composited,
      K key,
      V value)
Called when the CompositeMap.put() method is invoked.

Parameters:
map - the CompositeMap which is being modified
composited - array of Maps in the CompositeMap being modified
key - key with which the specified value is to be associated.
value - value to be associated with the specified key.
Returns:
previous value associated with specified key, or null if there was no mapping for key. A null return can also indicate that the map previously associated null with the specified key, if the implementation supports null values.
Throws:
UnsupportedOperationException - if not defined
ClassCastException - if the class of the specified key or value prevents it from being stored in this map.
IllegalArgumentException - if some aspect of this key or value prevents it from being stored in this map.
NullPointerException - this map does not permit null keys or values, and the specified key or value is null.

putAll

void putAll(CompositeMap<K,V> map,
            Map[] composited,
            Map<? extends K,? extends V> mapToAdd)
Called when the CompositeMap.putAll() method is invoked.

Parameters:
map - the CompositeMap which is being modified
composited - array of Maps in the CompositeMap being modified
mapToAdd - Mappings to be stored in this CompositeMap
Throws:
UnsupportedOperationException - if not defined
ClassCastException - if the class of the specified key or value prevents it from being stored in this map.
IllegalArgumentException - if some aspect of this key or value prevents it from being stored in this map.
NullPointerException - this map does not permit null keys or values, and the specified key or value is null.


Copyright © 2005-2005 Apache Software Foundation, Matt Hall, John Watkinson. All Rights Reserved.