atavism.server.util
Class ForwardReverseMap<K,V>
java.lang.Object
atavism.server.util.ForwardReverseMap<K,V>
- All Implemented Interfaces:
- java.util.Map<K,V>
public class ForwardReverseMap<K,V>
- extends java.lang.Object
- implements java.util.Map<K,V>
a map where you can look it up either in the forward direction or the reverse
direction. obviously, this means the map must be 1:1 and onto
Nested classes/interfaces inherited from interface java.util.Map |
java.util.Map.Entry<K,V> |
Field Summary |
protected java.util.Map<K,V> |
forwardMap
|
protected java.util.concurrent.locks.Lock |
lock
|
protected java.util.Map<V,K> |
reverseMap
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface java.util.Map |
equals, hashCode |
forwardMap
protected java.util.Map<K,V> forwardMap
reverseMap
protected java.util.Map<V,K> reverseMap
lock
protected transient java.util.concurrent.locks.Lock lock
ForwardReverseMap
public ForwardReverseMap()
clear
public void clear()
- Specified by:
clear
in interface java.util.Map<K,V>
containsKey
public boolean containsKey(java.lang.Object key)
- Specified by:
containsKey
in interface java.util.Map<K,V>
containsValue
public boolean containsValue(java.lang.Object value)
- Specified by:
containsValue
in interface java.util.Map<K,V>
entrySet
public java.util.Set<java.util.Map.Entry<K,V>> entrySet()
- Specified by:
entrySet
in interface java.util.Map<K,V>
get
public V get(java.lang.Object key)
- Specified by:
get
in interface java.util.Map<K,V>
getByValue
public K getByValue(java.lang.Object value)
- reverse lookup
isEmpty
public boolean isEmpty()
- Specified by:
isEmpty
in interface java.util.Map<K,V>
keySet
public java.util.Set<K> keySet()
- Specified by:
keySet
in interface java.util.Map<K,V>
put
public V put(K key,
V value)
- Specified by:
put
in interface java.util.Map<K,V>
putAll
public void putAll(java.util.Map<? extends K,? extends V> m)
- Specified by:
putAll
in interface java.util.Map<K,V>
remove
public V remove(java.lang.Object key)
- Specified by:
remove
in interface java.util.Map<K,V>
removeByValue
public K removeByValue(java.lang.Object value)
size
public int size()
- Specified by:
size
in interface java.util.Map<K,V>
values
public java.util.Collection<V> values()
- Specified by:
values
in interface java.util.Map<K,V>