public class SynchronizedSetMultimap<K,V> extends AbstractSynchronizedMultimap<K,V> implements MutableSetMultimap<K,V>, Serializable
| Constructor and Description |
|---|
SynchronizedSetMultimap(MutableSetMultimap<K,V> multimap) |
SynchronizedSetMultimap(MutableSetMultimap<K,V> multimap,
Object newLock) |
| 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.
|
MutableSet<V> |
get(K key)
Returns a view of all values associated with the given key.
|
MutableSetMultimap<K,V> |
newEmpty()
Creates a new instance of the same implementation type, using the default capacity and growth parameters.
|
static <K,V> SynchronizedSetMultimap<K,V> |
of(MutableSetMultimap<K,V> multimap)
This method will take a Multimap and wrap it directly in a SynchronizedSetMultimap.
|
static <K,V> SynchronizedSetMultimap<K,V> |
of(MutableSetMultimap<K,V> multimap,
Object lock)
This method will take a Multimap and wrap it directly in a SynchronizedSetMultimap.
|
MutableSetMultimap<K,V> |
rejectKeysMultiValues(Predicate2<? super K,? super Iterable<V>> predicate)
Returns all elements of the source multimap that don't satisfy the predicate.
|
MutableSetMultimap<K,V> |
rejectKeysValues(Predicate2<? super K,? super V> predicate)
Returns all elements of the source multimap that don't satisfy the predicate.
|
MutableSet<V> |
removeAll(Object key) |
MutableSet<V> |
replaceValues(K key,
Iterable<? extends V> values) |
MutableSetMultimap<K,V> |
selectKeysMultiValues(Predicate2<? super K,? super Iterable<V>> predicate)
Returns all elements of the source multimap that satisfies the predicate.
|
MutableSetMultimap<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.
|
add, clear, collectKeysValues, collectValues, containsKey, containsKeyAndValue, containsValue, equals, forEachKey, forEachKeyMultiValues, forEachKeyValue, forEachValue, hashCode, isEmpty, keyBag, keyMultiValuePairsView, keySet, keysView, keyValuePairsView, multiValuesView, notEmpty, put, putAll, putAll, putAllPairs, putAllPairs, rejectKeysMultiValues, rejectKeysValues, remove, selectKeysMultiValues, selectKeysValues, size, sizeDistinct, toMap, toMap, toString, valuesViewadd, clear, put, putAll, putAll, putAllPairs, putAllPairs, removecollectKeysValues, 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, valuesViewpublic SynchronizedSetMultimap(MutableSetMultimap<K,V> multimap)
public SynchronizedSetMultimap(MutableSetMultimap<K,V> multimap, Object newLock)
public static <K,V> SynchronizedSetMultimap<K,V> of(MutableSetMultimap<K,V> multimap)
public static <K,V> SynchronizedSetMultimap<K,V> of(MutableSetMultimap<K,V> multimap, Object lock)
public MutableSet<V> replaceValues(K key, Iterable<? extends V> values)
replaceValues in interface MutableMultimap<K,V>replaceValues in interface MutableSetIterableMultimap<K,V>replaceValues in interface MutableSetMultimap<K,V>public MutableSet<V> removeAll(Object key)
removeAll in interface MutableMultimap<K,V>removeAll in interface MutableSetIterableMultimap<K,V>removeAll in interface MutableSetMultimap<K,V>public MutableSetMultimap<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 MutableSet<V> get(K key)
Multimap
If the given key does not exist, an empty RichIterable is returned.
get in interface Multimap<K,V>get in interface MutableMultimap<K,V>get in interface MutableSetIterableMultimap<K,V>get in interface MutableSetMultimap<K,V>get in interface SetMultimap<K,V>get in interface UnsortedSetMultimap<K,V>key - the key to search forpublic 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 MutableSetMultimap<V,K> flip()
Multimapflip 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> 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 MutableSetMultimap<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 MutableSetMultimap<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 MutableSetMultimap<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 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 <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<K,V> asSynchronized()
MutableMultimapThe 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.