java.io.Externalizable, java.io.Serializable, Multimap<K,V>, MutableMultimap<K,V>, MutableSetIterableMultimap<K,V>, MutableSetMultimap<K,V>, SetMultimap<K,V>, UnsortedSetMultimap<K,V>public final class SynchronizedPutUnifiedSetMultimap<K,V> extends AbstractSynchronizedPutMultimap<K,V,MutableSet<V>> implements MutableSetMultimap<K,V>, java.io.Externalizable
| Constructor | Description |
|---|---|
SynchronizedPutUnifiedSetMultimap() |
|
SynchronizedPutUnifiedSetMultimap(int initialCapacity) |
|
SynchronizedPutUnifiedSetMultimap(java.lang.Iterable<Pair<K,V>> inputIterable) |
|
SynchronizedPutUnifiedSetMultimap(Multimap<? extends K,? extends V> multimap) |
|
SynchronizedPutUnifiedSetMultimap(Pair<K,V>... pairs) |
| Modifier and Type | Method | Description |
|---|---|---|
MutableSetMultimap<K,V> |
asSynchronized() |
Returns a synchronized wrapper backed by this multimap.
|
<K2,V2> MutableBagMultimap<K2,V2> |
collectKeyMultiValues(Function<? super K,? extends K2> keyFunction,
Function<? super V,? extends V2> valueFunction) |
Returns a new multimap with the results of applying the specified keyFunction and valueFunction on each key and corresponding values of the source 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(java.lang.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 java.lang.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 java.lang.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.
|
collectKeyMultiValues, collectKeysValues, collectValues, containsKey, containsKeyAndValue, containsValue, equals, forEachKey, forEachKeyMultiValues, forEachKeyValue, forEachValue, hashCode, keyBag, keyMultiValuePairsView, keysView, keyValuePairsView, multiValuesView, notEmpty, rejectKeysMultiValues, rejectKeysValues, selectKeysMultiValues, selectKeysValues, toString, valuesViewclear, get, isEmpty, keySet, putAll, putAll, readExternal, remove, removeAll, replaceValues, sizeDistinct, toMap, toMap, writeExternalgetIfAbsentPutAll, put, sizecollectKeyMultiValues, 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, valuesViewadd, clear, put, putAll, putAll, putAllPairs, putAllPairs, removeget, getIfAbsentPutAll, removeAll, replaceValuespublic 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(java.lang.Iterable<Pair<K,V>> inputIterable)
public SynchronizedPutUnifiedSetMultimap<K,V> newEmpty()
MultimapnewEmpty 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()
Multimappublic 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 predicatepublic UnifiedSetMultimap<K,V> selectKeysMultiValues(Predicate2<? super K,? super java.lang.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 java.lang.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 predicatepublic <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 <K2,V2> MutableBagMultimap<K2,V2> collectKeyMultiValues(Function<? super K,? extends K2> keyFunction, Function<? super V,? extends V2> valueFunction)
Multimap
e.g. return multimap.collectKeyMultiValues(each -> each + 1, Person::getLastName);
collectKeyMultiValues in interface Multimap<K,V>collectKeyMultiValues in interface MutableMultimap<K,V>collectKeyMultiValues in interface MutableSetIterableMultimap<K,V>collectKeyMultiValues in interface MutableSetMultimap<K,V>collectKeyMultiValues in interface UnsortedSetMultimap<K,V>keyFunction - Function to use transformation to get the keyvalueFunction - Function to use transformation to get the valuesMultimap, 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-> Range return a multimap from Range -> Domain.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()
MutableMultimapMutableMultimap synchedMultimap = multimap.asSynchronized(); synchedMultimap.forEachKey(key -> ... ); synchedMultimap.forEachValue(value -> ... ); synchedMultimap.forEachKeyValue((key, value) -> ... ); synchedMultimap.forEachKeyMultiValues((key, values) -> ... );
If you want to iterate imperatively over the keySet(), keysView(), valuesView(), or other views, you will need to protect the iteration by wrapping the code in a synchronized block on the multimap.
asSynchronized in interface MutableMultimap<K,V>asSynchronized in interface MutableSetIterableMultimap<K,V>asSynchronized in interface MutableSetMultimap<K,V>MutableMapIterable.asSynchronized()Copyright © 2004–2020. All rights reserved.