public final class SynchronizedPutUnifiedSetMultimap<K,V> extends AbstractSynchronizedPutMultimap<K,V,MutableSet<V>> implements MutableSetMultimap<K,V>, Externalizable
Constructor and Description |
---|
SynchronizedPutUnifiedSetMultimap() |
SynchronizedPutUnifiedSetMultimap(int initialCapacity) |
SynchronizedPutUnifiedSetMultimap(Iterable<Pair<K,V>> inputIterable) |
SynchronizedPutUnifiedSetMultimap(Multimap<? extends K,? extends V> multimap) |
SynchronizedPutUnifiedSetMultimap(Pair<K,V>... pairs) |
Modifier and Type | Method and Description |
---|---|
MutableSetMultimap<K,V> |
asSynchronized()
Returns a synchronized (thread-safe) multimap backed by this multimap.
|
<K2,V2> MutableBagMultimap<K2,V2> |
collectKeysValues(Function2<? super K,? super V,Pair<K2,V2>> function)
Returns a new multimap with the results of applying the specified function on each key and value of the source
multimap.
|
<V2> MutableBagMultimap<K,V2> |
collectValues(Function<? super V,? extends V2> function)
Returns a new multimap with the results of applying the specified function on each value of the source
multimap.
|
MutableSetMultimap<V,K> |
flip()
Given a Multimap from Domain -> Range return a multimap from Range -> Domain.
|
SynchronizedPutUnifiedSetMultimap<K,V> |
newEmpty()
Creates a new instance of the same implementation type, using the default capacity and growth parameters.
|
static <K,V> SynchronizedPutUnifiedSetMultimap<K,V> |
newMultimap() |
static <K,V> SynchronizedPutUnifiedSetMultimap<K,V> |
newMultimap(int initialCapacity,
float loadFactor,
int concurrencyLevel) |
static <K,V> SynchronizedPutUnifiedSetMultimap<K,V> |
newMultimap(Iterable<Pair<K,V>> inputIterable) |
static <K,V> SynchronizedPutUnifiedSetMultimap<K,V> |
newMultimap(Multimap<? extends K,? extends V> multimap) |
static <K,V> SynchronizedPutUnifiedSetMultimap<K,V> |
newMultimap(Pair<K,V>... pairs) |
UnifiedSetMultimap<K,V> |
rejectKeysMultiValues(Predicate2<? super K,? super Iterable<V>> predicate)
Returns all elements of the source multimap that don't satisfy the predicate.
|
UnifiedSetMultimap<K,V> |
rejectKeysValues(Predicate2<? super K,? super V> predicate)
Returns all elements of the source multimap that don't satisfy the predicate.
|
UnifiedSetMultimap<K,V> |
selectKeysMultiValues(Predicate2<? super K,? super Iterable<V>> predicate)
Returns all elements of the source multimap that satisfies the predicate.
|
UnifiedSetMultimap<K,V> |
selectKeysValues(Predicate2<? super K,? super V> predicate)
Returns all elements of the source multimap that satisfies the predicate.
|
ImmutableSetMultimap<K,V> |
toImmutable()
Returns an immutable copy of this Multimap if it is not already immutable.
|
MutableSetMultimap<K,V> |
toMutable()
Returns a mutable copy of this Multimap.
|
put, size
clear, get, isEmpty, keySet, putAll, putAll, readExternal, remove, removeAll, replaceValues, sizeDistinct, toMap, toMap, writeExternal
collectKeysValues, collectValues, containsKey, containsKeyAndValue, containsValue, equals, forEachKey, forEachKeyMultiValues, forEachKeyValue, forEachValue, hashCode, keyBag, keyMultiValuePairsView, keysView, keyValuePairsView, multiValuesView, notEmpty, rejectKeysMultiValues, rejectKeysValues, selectKeysMultiValues, selectKeysValues, toString, valuesView
get, removeAll, replaceValues
add, clear, put, putAll, putAll, putAllPairs, putAllPairs, remove
collectKeysValues, collectValues, containsKey, containsKeyAndValue, containsValue, equals, forEachKey, forEachKeyMultiValues, forEachKeyValue, forEachValue, hashCode, isEmpty, keyBag, keyMultiValuePairsView, keySet, keysView, keyValuePairsView, multiValuesView, notEmpty, rejectKeysMultiValues, rejectKeysValues, selectKeysMultiValues, selectKeysValues, size, sizeDistinct, toMap, toMap, valuesView
readExternal, writeExternal
public SynchronizedPutUnifiedSetMultimap()
public SynchronizedPutUnifiedSetMultimap(int initialCapacity)
public SynchronizedPutUnifiedSetMultimap(Multimap<? extends K,? extends V> multimap)
public static <K,V> SynchronizedPutUnifiedSetMultimap<K,V> newMultimap()
public static <K,V> SynchronizedPutUnifiedSetMultimap<K,V> newMultimap(int initialCapacity, float loadFactor, int concurrencyLevel)
public static <K,V> SynchronizedPutUnifiedSetMultimap<K,V> newMultimap(Multimap<? extends K,? extends V> multimap)
public static <K,V> SynchronizedPutUnifiedSetMultimap<K,V> newMultimap(Pair<K,V>... pairs)
public static <K,V> SynchronizedPutUnifiedSetMultimap<K,V> newMultimap(Iterable<Pair<K,V>> inputIterable)
public SynchronizedPutUnifiedSetMultimap<K,V> newEmpty()
Multimap
newEmpty
in interface Multimap<K,V>
newEmpty
in interface MutableMultimap<K,V>
newEmpty
in interface MutableSetIterableMultimap<K,V>
newEmpty
in interface MutableSetMultimap<K,V>
newEmpty
in interface SetMultimap<K,V>
newEmpty
in interface UnsortedSetMultimap<K,V>
public MutableSetMultimap<K,V> toMutable()
Multimap
public ImmutableSetMultimap<K,V> toImmutable()
Multimap
The returned Multimap will be Serializable
if this Multimap is Serializable
.
toImmutable
in interface Multimap<K,V>
toImmutable
in interface UnsortedSetMultimap<K,V>
public UnifiedSetMultimap<K,V> selectKeysValues(Predicate2<? super K,? super V> predicate)
Multimap
e.g. return multimap.selectKeysValues(new Predicate2<Integer, Person>() { public boolean accept(Integer age, Person person) { return (age >= 18) && (person.getAddress().getCity().equals("Metuchen")); } });
selectKeysValues
in interface Multimap<K,V>
selectKeysValues
in interface MutableMultimap<K,V>
selectKeysValues
in interface MutableSetIterableMultimap<K,V>
selectKeysValues
in interface MutableSetMultimap<K,V>
selectKeysValues
in interface SetMultimap<K,V>
selectKeysValues
in interface UnsortedSetMultimap<K,V>
predicate
- a Predicate2
to use as the select criteriaMultimap
, which contains elements as a result of the select criteriapublic UnifiedSetMultimap<K,V> rejectKeysValues(Predicate2<? super K,? super V> predicate)
Multimap
e.g. return multimap.rejectKeysValues(new Predicate2<Integer, Person>() { public boolean accept(Integer age, Person person) { return (age >= 18) && (person.getAddress().getCity().equals("Metuchen")); } });
rejectKeysValues
in interface Multimap<K,V>
rejectKeysValues
in interface MutableMultimap<K,V>
rejectKeysValues
in interface MutableSetIterableMultimap<K,V>
rejectKeysValues
in interface MutableSetMultimap<K,V>
rejectKeysValues
in interface SetMultimap<K,V>
rejectKeysValues
in interface UnsortedSetMultimap<K,V>
predicate
- a Predicate2
to use as the reject criteriaMultimap
, which contains elements that don't satisfy the predicate
public UnifiedSetMultimap<K,V> selectKeysMultiValues(Predicate2<? super K,? super Iterable<V>> predicate)
Multimap
e.g. return multimap.selectKeysMultiValues(new Predicate2<Integer, Iterable<Person>>() { public boolean accept(Integer age, Iterable<Person> values) { return (age >= 18) && ((RichIterable<Person>)values.size() >= 2); } });
selectKeysMultiValues
in interface Multimap<K,V>
selectKeysMultiValues
in interface MutableMultimap<K,V>
selectKeysMultiValues
in interface MutableSetIterableMultimap<K,V>
selectKeysMultiValues
in interface MutableSetMultimap<K,V>
selectKeysMultiValues
in interface SetMultimap<K,V>
selectKeysMultiValues
in interface UnsortedSetMultimap<K,V>
predicate
- a Predicate2
to use as the select criteriaMultimap
, which contains elements as a result of the select criteriapublic UnifiedSetMultimap<K,V> rejectKeysMultiValues(Predicate2<? super K,? super Iterable<V>> predicate)
Multimap
e.g. return multimap.rejectKeysMultiValues(new Predicate2<Integer, Iterable<Person>>() { public boolean accept(Integer age, Iterable<Person> values) { return (age >= 18) && ((RichIterable<Person>)values.size() >= 2); } });
rejectKeysMultiValues
in interface Multimap<K,V>
rejectKeysMultiValues
in interface MutableMultimap<K,V>
rejectKeysMultiValues
in interface MutableSetIterableMultimap<K,V>
rejectKeysMultiValues
in interface MutableSetMultimap<K,V>
rejectKeysMultiValues
in interface SetMultimap<K,V>
rejectKeysMultiValues
in interface UnsortedSetMultimap<K,V>
predicate
- a Predicate2
to use as the reject criteriaMultimap
, which contains elements that don't satisfy the predicate
public <K2,V2> MutableBagMultimap<K2,V2> collectKeysValues(Function2<? super K,? super V,Pair<K2,V2>> function)
Multimap
e.g. return multimap.collectKeysValues(new Function2<Integer, Person, Pair<String, String>>() { public Pair<String, String> valueOf(Integer age, Person person) { return Tuples.pair(age.toString(), person.getLastName()); } });
collectKeysValues
in interface Multimap<K,V>
collectKeysValues
in interface MutableMultimap<K,V>
collectKeysValues
in interface MutableSetIterableMultimap<K,V>
collectKeysValues
in interface MutableSetMultimap<K,V>
collectKeysValues
in interface UnsortedSetMultimap<K,V>
function
- a Function2
to use for transformationMultimap
, which contains elements as a result of the transformationpublic <V2> MutableBagMultimap<K,V2> collectValues(Function<? super V,? extends V2> function)
Multimap
e.g. return multimap.collectValues(new Function<Person, String>() { public String valueOf(Person person) { return person.getLastName(); } });
collectValues
in interface Multimap<K,V>
collectValues
in interface MutableMultimap<K,V>
collectValues
in interface MutableSetIterableMultimap<K,V>
collectValues
in interface MutableSetMultimap<K,V>
collectValues
in interface UnsortedSetMultimap<K,V>
function
- a Function
to use for transformationMultimap
, which contains elements as a result of the transformationpublic MutableSetMultimap<V,K> flip()
Multimap
flip
in interface Multimap<K,V>
flip
in interface MutableMultimap<K,V>
flip
in interface MutableSetIterableMultimap<K,V>
flip
in interface MutableSetMultimap<K,V>
flip
in interface SetMultimap<K,V>
public MutableSetMultimap<K,V> asSynchronized()
MutableMultimap
The returned multimap does not pass the hashCode and equals operations through to the backing multimap, but relies on Object's equals and hashCode methods. This is necessary to preserve the contracts of these operations.
The returned multimap will be serializable if this multimap is serializable.
asSynchronized
in interface MutableMultimap<K,V>
asSynchronized
in interface MutableSetIterableMultimap<K,V>
asSynchronized
in interface MutableSetMultimap<K,V>
Copyright © 2004–2016. All rights reserved.