Class ImmutableMultivaluedMap<K,V>
- java.lang.Object
-
- org.glassfish.jersey.internal.util.collection.ImmutableMultivaluedMap<K,V>
-
- Type Parameters:
K- the keyV- the value
- All Implemented Interfaces:
MultivaluedMap<K,V>,Map<K,List<V>>
public class ImmutableMultivaluedMap<K,V> extends Object implements MultivaluedMap<K,V>
An immutable view of aMultivaluedMap.- Author:
- Gili Tzabari, Michal Gajdos
-
-
Constructor Summary
Constructors Constructor Description ImmutableMultivaluedMap(MultivaluedMap<K,V> delegate)Creates a new ImmutableMultivaluedMap.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadd(K key, V value)Add a value to the current list of values for the supplied key.voidaddAll(K key, List<V> valueList)Add all the values from the supplied value list to the current list of values for the supplied key.voidaddAll(K key, V... newValues)Add multiple values to the current list of values for the supplied key.voidaddFirst(K key, V value)Add a value to the first position in the current list of values for the supplied key.voidclear()booleancontainsKey(Object key)booleancontainsValue(Object value)static <K,V>
ImmutableMultivaluedMap<K,V>empty()Returns an empty immutable map.Set<Map.Entry<K,List<V>>>entrySet()booleanequals(Object o)booleanequalsIgnoreValueOrder(MultivaluedMap<K,V> otherMap)Compare the specified map with this map for equality modulo the order of values for each key.List<V>get(Object key)VgetFirst(K key)A shortcut to get the first value of the supplied key.inthashCode()booleanisEmpty()Set<K>keySet()List<V>put(K key, List<V> value)voidputAll(Map<? extends K,? extends List<V>> m)voidputSingle(K key, V value)Set the key's value to be a one item list consisting of the supplied value.List<V>remove(Object key)intsize()StringtoString()Collection<List<V>>values()-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.util.Map
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll
-
-
-
-
Constructor Detail
-
ImmutableMultivaluedMap
public ImmutableMultivaluedMap(MultivaluedMap<K,V> delegate)
Creates a new ImmutableMultivaluedMap.- Parameters:
delegate- the underlying MultivaluedMap
-
-
Method Detail
-
empty
public static <K,V> ImmutableMultivaluedMap<K,V> empty()
Returns an empty immutable map.- Returns:
- an empty immutable map.
-
equalsIgnoreValueOrder
public boolean equalsIgnoreValueOrder(MultivaluedMap<K,V> otherMap)
Description copied from interface:MultivaluedMapCompare the specified map with this map for equality modulo the order of values for each key. Specifically, the values associated with each key are compared as if they were ordered lists.- Specified by:
equalsIgnoreValueOrderin interfaceMultivaluedMap<K,V>- Parameters:
otherMap- map to be compared to this one.- Returns:
- true if the maps are equal modulo value ordering.
-
putSingle
public void putSingle(K key, V value)
Description copied from interface:MultivaluedMapSet the key's value to be a one item list consisting of the supplied value. Any existing values will be replaced.- Specified by:
putSinglein interfaceMultivaluedMap<K,V>- Parameters:
key- the keyvalue- the single value of the key
-
add
public void add(K key, V value)
Description copied from interface:MultivaluedMapAdd a value to the current list of values for the supplied key.- Specified by:
addin interfaceMultivaluedMap<K,V>- Parameters:
key- the keyvalue- the value to be added.
-
getFirst
public V getFirst(K key)
Description copied from interface:MultivaluedMapA shortcut to get the first value of the supplied key.- Specified by:
getFirstin interfaceMultivaluedMap<K,V>- Parameters:
key- the key- Returns:
- the first value for the specified key or null if the key is not in the map.
-
addAll
public void addAll(K key, V... newValues)
Description copied from interface:MultivaluedMapAdd multiple values to the current list of values for the supplied key. If the supplied array of new values is empty, method returns immediately. Method throws aNullPointerExceptionif the supplied array of values isnull.- Specified by:
addAllin interfaceMultivaluedMap<K,V>- Parameters:
key- the key.newValues- the values to be added.
-
addAll
public void addAll(K key, List<V> valueList)
Description copied from interface:MultivaluedMapAdd all the values from the supplied value list to the current list of values for the supplied key. If the supplied value list is empty, method returns immediately. Method throws aNullPointerExceptionif the supplied array of values isnull.- Specified by:
addAllin interfaceMultivaluedMap<K,V>- Parameters:
key- the key.valueList- the list of values to be added.
-
addFirst
public void addFirst(K key, V value)
Description copied from interface:MultivaluedMapAdd a value to the first position in the current list of values for the supplied key.- Specified by:
addFirstin interfaceMultivaluedMap<K,V>- Parameters:
key- the keyvalue- the value to be added.
-
containsKey
public boolean containsKey(Object key)
- Specified by:
containsKeyin interfaceMap<K,V>
-
containsValue
public boolean containsValue(Object value)
- Specified by:
containsValuein interfaceMap<K,V>
-
equals
public boolean equals(Object o)
-
-