Interface CompositeMap.MapMutator<K,V>
-
- Type Parameters:
K
- the type of the keys in the mapV
- the type of the values in the map
- All Superinterfaces:
java.io.Serializable
- Enclosing class:
- CompositeMap<K,V>
public static interface CompositeMap.MapMutator<K,V> extends java.io.Serializable
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
All Methods Instance Methods Abstract Methods Modifier and Type Method Description V
put(CompositeMap<K,V> map, java.util.Map<K,V>[] composited, K key, V value)
Called when the CompositeMap.put() method is invoked.void
putAll(CompositeMap<K,V> map, java.util.Map<K,V>[] composited, java.util.Map<? extends K,? extends V> mapToAdd)
Called when the CompositeMap.putAll() method is invoked.void
resolveCollision(CompositeMap<K,V> composite, java.util.Map<K,V> existing, java.util.Map<K,V> added, java.util.Collection<K> intersect)
Called when adding a new Composited Map results in a key collision.
-
-
-
Method Detail
-
resolveCollision
void resolveCollision(CompositeMap<K,V> composite, java.util.Map<K,V> existing, java.util.Map<K,V> added, java.util.Collection<K> intersect)
Called when adding a new Composited Map results in a key collision.- Parameters:
composite
- the CompositeMap with the collisionexisting
- the Map already in the composite which contains the offending keyadded
- the Map being addedintersect
- the intersection of the keysets of the existing and added maps
-
put
V put(CompositeMap<K,V> map, java.util.Map<K,V>[] composited, K key, V value)
Called when the CompositeMap.put() method is invoked.- Parameters:
map
- the CompositeMap which is being modifiedcomposited
- array of Maps in the CompositeMap being modifiedkey
- 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. Anull
return can also indicate that the map previously associatednull
with the specified key, if the implementation supportsnull
values. - Throws:
java.lang.UnsupportedOperationException
- if not definedjava.lang.ClassCastException
- if the class of the specified key or value prevents it from being stored in this map.java.lang.IllegalArgumentException
- if some aspect of this key or value prevents it from being stored in this map.java.lang.NullPointerException
- this map does not permitnull
keys or values, and the specified key or value isnull
.
-
putAll
void putAll(CompositeMap<K,V> map, java.util.Map<K,V>[] composited, java.util.Map<? extends K,? extends V> mapToAdd)
Called when the CompositeMap.putAll() method is invoked.- Parameters:
map
- the CompositeMap which is being modifiedcomposited
- array of Maps in the CompositeMap being modifiedmapToAdd
- Mappings to be stored in this CompositeMap- Throws:
java.lang.UnsupportedOperationException
- if not definedjava.lang.ClassCastException
- if the class of the specified key or value prevents it from being stored in this map.java.lang.IllegalArgumentException
- if some aspect of this key or value prevents it from being stored in this map.java.lang.NullPointerException
- this map does not permitnull
keys or values, and the specified key or value isnull
.
-
-