Class MultimapAdapter<K,V>
- java.lang.Object
-
- de.bsvrz.sys.funclib.kappich.collections.MultimapAdapter<K,V>
-
- All Implemented Interfaces:
MultiValueMap<K,V>
public final class MultimapAdapter<K,V> extends java.lang.Object implements MultiValueMap<K,V>
Diese Klasse erlaubt es, eine GuavaMultimap
dort zu verwenden, wo eineMultiValueMap
erwartet wird.
-
-
Constructor Summary
Constructors Constructor Description MultimapAdapter(com.google.common.collect.Multimap<K,V> map)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
add(java.util.Map.Entry<K,V> entry)
Fügt einen Entry hinzu.boolean
add(K key, V value)
Fügt einem Key einen Wert hinzuvoid
addAll(MultiValueMap<? extends K,? extends V> multiValueMap)
Fügt eine bestehendeMultiValueMap<K, V>
hinzuvoid
addAll(java.util.Map<? extends K,java.util.Collection<? extends V>> map)
Fügt mehrere Werte hinzuboolean
addAll(K key, java.util.Collection<? extends V> value)
Fügt einem Key mehrere Werte hinzujava.util.Map<K,java.util.Collection<V>>
asMap()
Gibt eine View auf die dahinterliegende Map zurück.com.google.common.collect.Multimap<K,V>
asMultimap()
Gibt eine View auf die dahinterliegende Multimap zurück.void
clear()
boolean
contains(java.lang.Object o)
Gibttrue
zurück, wenn ein Objekt vom Typ Map.Entry enthalten ist, also hier dem Entry-Key mindestens das Entry-Value zugeordnet ist.boolean
containsKey(java.lang.Object key)
Gibt true zurück, wenn die Klasse zu diesem Key mindestens einen Wert enthältboolean
containsValue(java.lang.Object value)
Gibt true zurück, wenn dieser Wert mindestens einmal einem Key zugeordnet wurdestatic <K,V>
MultimapAdapter<K,V>copyOf(MultiValueMap<K,V> map)
java.util.Set<java.util.Map.Entry<K,java.util.Collection<V>>>
entrySet()
Gibt ein Set über alle Einträge zurückjava.util.Set<K>
findKey(V value)
Findet Keys, die mindestens den angegeben Wert als Value habenjava.util.Set<K>
findKeys(java.util.Collection<? extends V> values)
Findet Keys, die mindestens einen der angegebenen Werte als (nicht unbedingt einzigen) Value habenjava.util.Collection<V>
get(K key)
Gibt die Collection mit Objekten zurück, die hinter diesem Key liegenboolean
isEmpty()
Gibt true zurück, wenn keine Werte gespeichert sindboolean
isUsingUniqueValues()
Gibttrue
zurück, wenn ein Set für die Werte verwendet wirdjava.util.Set<K>
keySet()
Gibt ein Set über die Keys zurückboolean
remove(java.lang.Object key, java.lang.Object value)
Löscht einen Eintragjava.util.Collection<V>
removeAll(java.lang.Object key)
Löscht alle Einträge eines Keysint
size()
Gibt die Anzahl der gespeicherten Werte (Values) zurückjava.util.List<V>
values()
Gibt eine Liste über alle values zurück.java.util.Set<V>
valueSet()
Gibt ein Set über alle values zurück.
-
-
-
Method Detail
-
copyOf
public static <K,V> MultimapAdapter<K,V> copyOf(MultiValueMap<K,V> map)
-
size
public int size()
Description copied from interface:MultiValueMap
Gibt die Anzahl der gespeicherten Werte (Values) zurück- Specified by:
size
in interfaceMultiValueMap<K,V>
- Returns:
- die Anzahl der gespeicherten Werte (Values)
-
isEmpty
public boolean isEmpty()
Description copied from interface:MultiValueMap
Gibt true zurück, wenn keine Werte gespeichert sind- Specified by:
isEmpty
in interfaceMultiValueMap<K,V>
- Returns:
- true, wenn keine Werte gespeichert sind
-
contains
public boolean contains(java.lang.Object o)
Description copied from interface:MultiValueMap
Gibttrue
zurück, wenn ein Objekt vom Typ Map.Entry enthalten ist, also hier dem Entry-Key mindestens das Entry-Value zugeordnet ist.- Specified by:
contains
in interfaceMultiValueMap<K,V>
- Parameters:
o
- zu testendes Objekt- Returns:
true
, wenn ein Objekt vom Typ Map.Entry enthalten ist, sonstfalse
-
add
public boolean add(java.util.Map.Entry<K,V> entry)
Description copied from interface:MultiValueMap
Fügt einen Entry hinzu. Shortcut für add(entry.getKey(), entry.getValue()).- Specified by:
add
in interfaceMultiValueMap<K,V>
- Parameters:
entry
- Entry- Returns:
- siehe
MultiValueMap.add(Object, Object)
-
containsKey
public boolean containsKey(java.lang.Object key)
Description copied from interface:MultiValueMap
Gibt true zurück, wenn die Klasse zu diesem Key mindestens einen Wert enthält- Specified by:
containsKey
in interfaceMultiValueMap<K,V>
- Parameters:
key
- Key- Returns:
- true wenn die Klasse zu diesem key mindestens einen Wert enthält
-
containsValue
public boolean containsValue(java.lang.Object value)
Description copied from interface:MultiValueMap
Gibt true zurück, wenn dieser Wert mindestens einmal einem Key zugeordnet wurde- Specified by:
containsValue
in interfaceMultiValueMap<K,V>
- Parameters:
value
- Wert- Returns:
- true, wenn dieser Wert mindestens einmal einem Key zugeordnet wurde
-
get
public java.util.Collection<V> get(K key)
Description copied from interface:MultiValueMap
Gibt die Collection mit Objekten zurück, die hinter diesem Key liegen- Specified by:
get
in interfaceMultiValueMap<K,V>
- Parameters:
key
- Key- Returns:
- Liste mit Objekten
-
add
public boolean add(K key, V value)
Description copied from interface:MultiValueMap
Fügt einem Key einen Wert hinzu- Specified by:
add
in interfaceMultiValueMap<K,V>
- Parameters:
key
- Keyvalue
- Wert- Returns:
- true wenn die Collection verändert wurde
-
addAll
public boolean addAll(K key, java.util.Collection<? extends V> value)
Description copied from interface:MultiValueMap
Fügt einem Key mehrere Werte hinzu- Specified by:
addAll
in interfaceMultiValueMap<K,V>
- Parameters:
key
- Keyvalue
- Werte- Returns:
- true wenn die Collection verändert wurde
-
remove
public boolean remove(java.lang.Object key, java.lang.Object value)
Description copied from interface:MultiValueMap
Löscht einen Eintrag- Specified by:
remove
in interfaceMultiValueMap<K,V>
- Parameters:
key
- Keyvalue
- Wert- Returns:
- true falls ein Wert entfernt wurde
-
removeAll
public java.util.Collection<V> removeAll(java.lang.Object key)
Description copied from interface:MultiValueMap
Löscht alle Einträge eines Keys- Specified by:
removeAll
in interfaceMultiValueMap<K,V>
- Parameters:
key
- Key- Returns:
- true falls ein Wert entfernt wurde
-
clear
public void clear()
- Specified by:
clear
in interfaceMultiValueMap<K,V>
-
keySet
public java.util.Set<K> keySet()
Description copied from interface:MultiValueMap
Gibt ein Set über die Keys zurück- Specified by:
keySet
in interfaceMultiValueMap<K,V>
- Returns:
- ein Set über die Keys
-
values
public java.util.List<V> values()
Description copied from interface:MultiValueMap
Gibt eine Liste über alle values zurück. Änderungen an der zurückgegeben Collection haben keine Auswirkungen auf die HashBagMap. Einträge, die mehreren Keys zugeordnet sind werden mehrfach zurückgegeben. Die Reihenfolge der Listeneinträge ist nicht definiert.- Specified by:
values
in interfaceMultiValueMap<K,V>
- Returns:
- eine Liste über alle values
-
valueSet
public java.util.Set<V> valueSet()
Description copied from interface:MultiValueMap
Gibt ein Set über alle values zurück. Änderungen an der zurückgegeben Collection haben keine Auswirkungen auf die HashBagMap.- Specified by:
valueSet
in interfaceMultiValueMap<K,V>
- Returns:
- eine Liste über alle values
-
entrySet
public java.util.Set<java.util.Map.Entry<K,java.util.Collection<V>>> entrySet()
Description copied from interface:MultiValueMap
Gibt ein Set über alle Einträge zurück- Specified by:
entrySet
in interfaceMultiValueMap<K,V>
- Returns:
- ein Set über alle Einträge
-
findKey
public java.util.Set<K> findKey(V value)
Description copied from interface:MultiValueMap
Findet Keys, die mindestens den angegeben Wert als Value haben- Specified by:
findKey
in interfaceMultiValueMap<K,V>
- Parameters:
value
- Wert- Returns:
- Collection mit Keys die den angegebenen Werten zugeordnet sind
-
findKeys
public java.util.Set<K> findKeys(java.util.Collection<? extends V> values)
Description copied from interface:MultiValueMap
Findet Keys, die mindestens einen der angegebenen Werte als (nicht unbedingt einzigen) Value haben- Specified by:
findKeys
in interfaceMultiValueMap<K,V>
- Parameters:
values
- Werte- Returns:
- Collection mit Keys die den angegebenen Werten zugeordnet sind
-
addAll
public void addAll(java.util.Map<? extends K,java.util.Collection<? extends V>> map)
Description copied from interface:MultiValueMap
Fügt mehrere Werte hinzu- Specified by:
addAll
in interfaceMultiValueMap<K,V>
- Parameters:
map
- Map mit bestehenden Werten
-
addAll
public void addAll(MultiValueMap<? extends K,? extends V> multiValueMap)
Description copied from interface:MultiValueMap
Fügt eine bestehendeMultiValueMap<K, V>
hinzu- Specified by:
addAll
in interfaceMultiValueMap<K,V>
- Parameters:
multiValueMap
- Map mit bestehenden Werten
-
isUsingUniqueValues
public boolean isUsingUniqueValues()
Description copied from interface:MultiValueMap
Gibttrue
zurück, wenn ein Set für die Werte verwendet wird- Specified by:
isUsingUniqueValues
in interfaceMultiValueMap<K,V>
- Returns:
true
, wenn ein Set für die Werte verwendet wird, sonstfalse
-
asMultimap
public com.google.common.collect.Multimap<K,V> asMultimap()
Gibt eine View auf die dahinterliegende Multimap zurück.- Returns:
- Multimap
-
asMap
public java.util.Map<K,java.util.Collection<V>> asMap()
Gibt eine View auf die dahinterliegende Map zurück. EntsprichtasMultimap()
.asMap()
.- Returns:
- Map-View
-
-