public class TransformedSortedMap<K,V> extends TransformedMap<K,V> implements java.util.SortedMap<K,V>
SortedMap
to transform objects that are added.
The Map put methods and Map.Entry setValue method are affected by this class. Thus objects must be removed or searched for using their transformed form. For example, if the transformation converts Strings to Integers, you must use the Integer form to remove objects.
Note that TransformedSortedMap is not synchronized and is not thread-safe.
If you wish to use this map from multiple threads concurrently, you must use
appropriate synchronization. The simplest approach is to wrap this map
using Collections.synchronizedSortedMap(java.util.SortedMap<K, V>)
. This class may throw
exceptions when accessed by concurrent threads without synchronization.
This class is Serializable from Commons Collections 3.1.
Modifier and Type | Field and Description |
---|---|
private static long |
serialVersionUID
Serialization version
|
keyTransformer, valueTransformer
map
Modifier | Constructor and Description |
---|---|
protected |
TransformedSortedMap(java.util.SortedMap<K,V> map,
Transformer<? super K,? extends K> keyTransformer,
Transformer<? super V,? extends V> valueTransformer)
Constructor that wraps (not copies).
|
Modifier and Type | Method and Description |
---|---|
java.util.Comparator<? super K> |
comparator() |
K |
firstKey() |
protected java.util.SortedMap<K,V> |
getSortedMap()
Gets the map being decorated.
|
java.util.SortedMap<K,V> |
headMap(K toKey) |
K |
lastKey() |
java.util.SortedMap<K,V> |
subMap(K fromKey,
K toKey) |
java.util.SortedMap<K,V> |
tailMap(K fromKey) |
static <K,V> TransformedSortedMap<K,V> |
transformedSortedMap(java.util.SortedMap<K,V> map,
Transformer<? super K,? extends K> keyTransformer,
Transformer<? super V,? extends V> valueTransformer)
Factory method to create a transforming sorted map that will transform
existing contents of the specified map.
|
static <K,V> TransformedSortedMap<K,V> |
transformingSortedMap(java.util.SortedMap<K,V> map,
Transformer<? super K,? extends K> keyTransformer,
Transformer<? super V,? extends V> valueTransformer)
Factory method to create a transforming sorted map.
|
checkSetValue, isSetValueChecking, put, putAll, transformedMap, transformingMap, transformKey, transformMap, transformValue
entrySet
clear, containsKey, containsValue, decorated, equals, get, hashCode, isEmpty, keySet, remove, size, toString, values
mapIterator
private static final long serialVersionUID
protected TransformedSortedMap(java.util.SortedMap<K,V> map, Transformer<? super K,? extends K> keyTransformer, Transformer<? super V,? extends V> valueTransformer)
If there are any elements already in the collection being decorated, they are NOT transformed.
map
- the map to decorate, must not be nullkeyTransformer
- the predicate to validate the keys, null means no transformationvalueTransformer
- the predicate to validate to values, null means no transformationjava.lang.IllegalArgumentException
- if the map is nullpublic static <K,V> TransformedSortedMap<K,V> transformingSortedMap(java.util.SortedMap<K,V> map, Transformer<? super K,? extends K> keyTransformer, Transformer<? super V,? extends V> valueTransformer)
If there are any elements already in the map being decorated, they are NOT transformed.
Contrast this with transformedSortedMap(SortedMap, Transformer, Transformer)
.
K
- the key typeV
- the value typemap
- the map to decorate, must not be nullkeyTransformer
- the predicate to validate the keys, null means no transformationvalueTransformer
- the predicate to validate to values, null means no transformationjava.lang.IllegalArgumentException
- if the map is nullpublic static <K,V> TransformedSortedMap<K,V> transformedSortedMap(java.util.SortedMap<K,V> map, Transformer<? super K,? extends K> keyTransformer, Transformer<? super V,? extends V> valueTransformer)
If there are any elements already in the map being decorated, they
will be transformed by this method.
Contrast this with transformingSortedMap(SortedMap, Transformer, Transformer)
.
K
- the key typeV
- the value typemap
- the map to decorate, must not be nullkeyTransformer
- the transformer to use for key conversion, null means no transformationvalueTransformer
- the transformer to use for value conversion, null means no transformationjava.lang.IllegalArgumentException
- if map is nullprotected java.util.SortedMap<K,V> getSortedMap()
public java.util.Comparator<? super K> comparator()