public final class SynchronizedPutHashBagMultimap<K,V> extends AbstractSynchronizedPutMultimap<K,V,MutableBag<V>> implements MutableBagMultimap<K,V>, Externalizable
| Constructor and Description |
|---|
SynchronizedPutHashBagMultimap() |
SynchronizedPutHashBagMultimap(int initialCapacity) |
SynchronizedPutHashBagMultimap(Iterable<Pair<K,V>> inputIterable) |
SynchronizedPutHashBagMultimap(Multimap<? extends K,? extends V> multimap) |
SynchronizedPutHashBagMultimap(Pair<K,V>... pairs) |
| Modifier and Type | Method and Description |
|---|---|
MutableBagMultimap<K,V> |
asSynchronized()
Returns a synchronized (thread-safe) multimap backed by this multimap.
|
<K2,V2> HashBagMultimap<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> HashBagMultimap<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.
|
MutableBagMultimap<V,K> |
flip()
Given a Multimap from Domain -> Range return a multimap from Range -> Domain.
|
SynchronizedPutHashBagMultimap<K,V> |
newEmpty()
Creates a new instance of the same implementation type, using the default capacity and growth parameters.
|
static <K,V> SynchronizedPutHashBagMultimap<K,V> |
newMultimap() |
static <K,V> SynchronizedPutHashBagMultimap<K,V> |
newMultimap(int initialCapacity,
float loadFactor,
int concurrencyLevel) |
static <K,V> SynchronizedPutHashBagMultimap<K,V> |
newMultimap(Iterable<Pair<K,V>> inputIterable) |
static <K,V> SynchronizedPutHashBagMultimap<K,V> |
newMultimap(Multimap<? extends K,? extends V> multimap) |
static <K,V> SynchronizedPutHashBagMultimap<K,V> |
newMultimap(Pair<K,V>... pairs) |
void |
putOccurrences(K key,
V value,
int occurrences) |
HashBagMultimap<K,V> |
rejectKeysMultiValues(Predicate2<? super K,? super Iterable<V>> predicate)
Returns all elements of the source multimap that don't satisfy the predicate.
|
HashBagMultimap<K,V> |
rejectKeysValues(Predicate2<? super K,? super V> predicate)
Returns all elements of the source multimap that don't satisfy the predicate.
|
HashBagMultimap<K,V> |
selectKeysMultiValues(Predicate2<? super K,? super Iterable<V>> predicate)
Returns all elements of the source multimap that satisfies the predicate.
|
HashBagMultimap<K,V> |
selectKeysValues(Predicate2<? super K,? super V> predicate)
Returns all elements of the source multimap that satisfies the predicate.
|
ImmutableBagMultimap<K,V> |
toImmutable()
Returns an immutable copy of this Multimap if it is not already immutable.
|
MutableBagMultimap<K,V> |
toMutable()
Returns a mutable copy of this Multimap.
|
put, sizeclear, get, isEmpty, keySet, putAll, putAll, readExternal, remove, removeAll, replaceValues, sizeDistinct, toMap, toMap, writeExternalcollectKeysValues, collectValues, containsKey, containsKeyAndValue, containsValue, equals, forEachKey, forEachKeyMultiValues, forEachKeyValue, forEachValue, hashCode, keyBag, keyMultiValuePairsView, keysView, keyValuePairsView, multiValuesView, notEmpty, rejectKeysMultiValues, rejectKeysValues, selectKeysMultiValues, selectKeysValues, toString, valuesViewget, removeAll, replaceValuesadd, 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, valuesViewreadExternal, writeExternalpublic SynchronizedPutHashBagMultimap()
public SynchronizedPutHashBagMultimap(int initialCapacity)
public SynchronizedPutHashBagMultimap(Multimap<? extends K,? extends V> multimap)
public static <K,V> SynchronizedPutHashBagMultimap<K,V> newMultimap()
public static <K,V> SynchronizedPutHashBagMultimap<K,V> newMultimap(int initialCapacity, float loadFactor, int concurrencyLevel)
public static <K,V> SynchronizedPutHashBagMultimap<K,V> newMultimap(Multimap<? extends K,? extends V> multimap)
public static <K,V> SynchronizedPutHashBagMultimap<K,V> newMultimap(Pair<K,V>... pairs)
public static <K,V> SynchronizedPutHashBagMultimap<K,V> newMultimap(Iterable<Pair<K,V>> inputIterable)
public SynchronizedPutHashBagMultimap<K,V> newEmpty()
MultimapnewEmpty in interface BagMultimap<K,V>newEmpty in interface MutableBagIterableMultimap<K,V>newEmpty in interface MutableBagMultimap<K,V>newEmpty in interface UnsortedBagMultimap<K,V>newEmpty in interface Multimap<K,V>newEmpty in interface MutableMultimap<K,V>public MutableBagMultimap<K,V> toMutable()
Multimappublic ImmutableBagMultimap<K,V> toImmutable()
Multimap
The returned Multimap will be Serializable if this Multimap is Serializable.
toImmutable in interface UnsortedBagMultimap<K,V>toImmutable in interface Multimap<K,V>public HashBagMultimap<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 BagMultimap<K,V>selectKeysValues in interface MutableBagIterableMultimap<K,V>selectKeysValues in interface MutableBagMultimap<K,V>selectKeysValues in interface UnsortedBagMultimap<K,V>selectKeysValues in interface Multimap<K,V>selectKeysValues in interface MutableMultimap<K,V>predicate - a Predicate2 to use as the select criteriaMultimap, which contains elements as a result of the select criteriapublic HashBagMultimap<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 BagMultimap<K,V>rejectKeysValues in interface MutableBagIterableMultimap<K,V>rejectKeysValues in interface MutableBagMultimap<K,V>rejectKeysValues in interface UnsortedBagMultimap<K,V>rejectKeysValues in interface Multimap<K,V>rejectKeysValues in interface MutableMultimap<K,V>predicate - a Predicate2 to use as the reject criteriaMultimap, which contains elements that don't satisfy the predicatepublic HashBagMultimap<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 BagMultimap<K,V>selectKeysMultiValues in interface MutableBagIterableMultimap<K,V>selectKeysMultiValues in interface MutableBagMultimap<K,V>selectKeysMultiValues in interface UnsortedBagMultimap<K,V>selectKeysMultiValues in interface Multimap<K,V>selectKeysMultiValues in interface MutableMultimap<K,V>predicate - a Predicate2 to use as the select criteriaMultimap, which contains elements as a result of the select criteriapublic HashBagMultimap<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 BagMultimap<K,V>rejectKeysMultiValues in interface MutableBagIterableMultimap<K,V>rejectKeysMultiValues in interface MutableBagMultimap<K,V>rejectKeysMultiValues in interface UnsortedBagMultimap<K,V>rejectKeysMultiValues in interface Multimap<K,V>rejectKeysMultiValues in interface MutableMultimap<K,V>predicate - a Predicate2 to use as the reject criteriaMultimap, which contains elements that don't satisfy the predicatepublic <K2,V2> HashBagMultimap<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 MutableBagIterableMultimap<K,V>collectKeysValues in interface MutableBagMultimap<K,V>collectKeysValues in interface UnsortedBagMultimap<K,V>collectKeysValues in interface Multimap<K,V>collectKeysValues in interface MutableMultimap<K,V>function - a Function2 to use for transformationMultimap, which contains elements as a result of the transformationpublic <V2> HashBagMultimap<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 MutableBagIterableMultimap<K,V>collectValues in interface MutableBagMultimap<K,V>collectValues in interface UnsortedBagMultimap<K,V>collectValues in interface Multimap<K,V>collectValues in interface MutableMultimap<K,V>function - a Function to use for transformationMultimap, which contains elements as a result of the transformationpublic MutableBagMultimap<V,K> flip()
Multimapflip in interface BagMultimap<K,V>flip in interface MutableBagIterableMultimap<K,V>flip in interface MutableBagMultimap<K,V>flip in interface Multimap<K,V>flip in interface MutableMultimap<K,V>public void putOccurrences(K key, V value, int occurrences)
putOccurrences in interface MutableBagMultimap<K,V>public MutableBagMultimap<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 MutableBagIterableMultimap<K,V>asSynchronized in interface MutableBagMultimap<K,V>asSynchronized in interface MutableMultimap<K,V>Copyright © 2004–2016. All rights reserved.