Class AbstractSetValuedMap<K,V>
java.lang.Object
org.apache.commons.collections4.multimap.AbstractMultiValuedMap<K,V>
org.apache.commons.collections4.multimap.AbstractSetValuedMap<K,V>
- Type Parameters:
K
- the type of the keys in this mapV
- the type of the values in this map
- All Implemented Interfaces:
MultiValuedMap<K,
,V> SetValuedMap<K,
V>
- Direct Known Subclasses:
HashSetValuedHashMap
,LinkedHashSetValuedLinkedHashMap
public abstract class AbstractSetValuedMap<K,V>
extends AbstractMultiValuedMap<K,V>
implements SetValuedMap<K,V>
Abstract implementation of the
SetValuedMap
interface to simplify the
creation of subclass implementations.
Subclasses specify a Map implementation to use as the internal storage and the Set implementation to use as values.
- Since:
- 4.1
-
Constructor Summary
ModifierConstructorDescriptionprotected
Constructor needed for subclass serialisation.protected
AbstractSetValuedMap
(Map<K, ? extends Set<V>> map) A constructor that wraps, not copies -
Method Summary
Modifier and TypeMethodDescriptionCreates a new value collection using the provided factory.Gets the set of values associated with the specified key.getMap()
Gets the map being wrapped.Removes all values associated with the specified key.Methods inherited from class org.apache.commons.collections4.multimap.AbstractMultiValuedMap
asMap, clear, containsKey, containsMapping, containsValue, doReadObject, doWriteObject, entries, equals, hashCode, isEmpty, keys, keySet, mapIterator, put, putAll, putAll, putAll, removeMapping, setMap, 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.collections4.MultiValuedMap
asMap, clear, containsKey, containsMapping, containsValue, entries, isEmpty, keys, keySet, mapIterator, put, putAll, putAll, putAll, removeMapping, size, values
-
Constructor Details
-
AbstractSetValuedMap
protected AbstractSetValuedMap()Constructor needed for subclass serialisation. -
AbstractSetValuedMap
A constructor that wraps, not copies- Parameters:
map
- the map to wrap, must not be null- Throws:
NullPointerException
- if the map is null
-
-
Method Details
-
createCollection
Creates a new value collection using the provided factory.- Specified by:
createCollection
in classAbstractMultiValuedMap<K,
V> - Returns:
- a new set
-
get
Gets the set of values associated with the specified key. This would return an empty set in case the mapping is not present- Specified by:
get
in interfaceMultiValuedMap<K,
V> - Specified by:
get
in interfaceSetValuedMap<K,
V> - Overrides:
get
in classAbstractMultiValuedMap<K,
V> - Parameters:
key
- the key to retrieve- Returns:
- the
Set
of values, will return an emptySet
for no mapping
-
getMap
Description copied from class:AbstractMultiValuedMap
Gets the map being wrapped.- Overrides:
getMap
in classAbstractMultiValuedMap<K,
V> - Returns:
- the wrapped map
-
remove
Removes all values associated with the specified key.A subsequent
get(Object)
would return an empty set.- Specified by:
remove
in interfaceMultiValuedMap<K,
V> - Specified by:
remove
in interfaceSetValuedMap<K,
V> - Overrides:
remove
in classAbstractMultiValuedMap<K,
V> - Parameters:
key
- the key to remove values from- Returns:
- the
Set
of values removed, will return an empty, unmodifiable set for no mapping found.
-