|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.commons.collections.map.AbstractMapDecorator<K,V>
org.apache.commons.collections.bidimap.AbstractBidiMapDecorator<K,V>
public abstract class AbstractBidiMapDecorator<K,V>
Provides a base decorator that enables additional functionality to be added to a BidiMap via decoration.
Methods are forwarded directly to the decorated map.
This implementation does not perform any special processing with the map views. 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.
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface java.util.Map |
---|
Map.Entry<K,V> |
Field Summary |
---|
Fields inherited from class org.apache.commons.collections.map.AbstractMapDecorator |
---|
map |
Constructor Summary | |
---|---|
protected |
AbstractBidiMapDecorator(BidiMap<K,V> map)
Constructor that wraps (not copies). |
Method Summary | |
---|---|
protected BidiMap<K,V> |
getBidiMap()
Gets the map being decorated. |
K |
getKey(V value)
Gets the key that is currently mapped to the specified value. |
BidiMap<V,K> |
inverseBidiMap()
Gets a view of this map where the keys and values are reversed. |
MapIterator<K,V> |
mapIterator()
Obtains a MapIterator over the map. |
K |
removeValue(V value)
Removes the key-value pair that is currently mapped to the specified value (optional operation). |
Methods inherited from class org.apache.commons.collections.map.AbstractMapDecorator |
---|
clear, containsKey, containsValue, entrySet, equals, get, getMap, hashCode, isEmpty, keySet, put, putAll, remove, size, toString, values |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.apache.commons.collections.BidiMap |
---|
put |
Methods inherited from interface java.util.Map |
---|
clear, containsKey, containsValue, entrySet, equals, get, hashCode, isEmpty, keySet, putAll, remove, size, values |
Constructor Detail |
---|
protected AbstractBidiMapDecorator(BidiMap<K,V> map)
map
- the map to decorate, must not be null
IllegalArgumentException
- if the collection is nullMethod Detail |
---|
protected BidiMap<K,V> getBidiMap()
public MapIterator<K,V> mapIterator()
BidiMap
MapIterator
over the map.
A map iterator is an efficient way of iterating over maps. It does not require that the map is stored using Map Entry objects which can increase performance.
BidiMap map = new DualHashBidiMap(); MapIterator it = map.mapIterator(); while (it.hasNext()) { Object key = it.next(); Object value = it.getValue(); it.setValue("newValue"); }
mapIterator
in interface BidiMap<K,V>
mapIterator
in interface IterableMap<K,V>
public K getKey(V value)
BidiMap
If the value is not contained in the map, null
is returned.
Implementations should seek to make this method perform equally as well
as get(Object)
.
getKey
in interface BidiMap<K,V>
value
- the value to find the key for
null
if not foundpublic K removeValue(V value)
BidiMap
If the value is not contained in the map, null
is returned.
Implementations should seek to make this method perform equally as well
as remove(Object)
.
removeValue
in interface BidiMap<K,V>
value
- the value to find the key-value pair for
null
if nothing removedpublic BidiMap<V,K> inverseBidiMap()
BidiMap
Changes to one map will be visible in the other and vice versa.
This enables both directions of the map to be accessed as a Map
.
Implementations should seek to avoid creating a new object every time this
method is called. See AbstractMap.values()
etc. Calling this
method on the inverse map should return the original.
inverseBidiMap
in interface BidiMap<K,V>
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |