public interface AtomicMultimap<K,V> extends SyncPrimitive
AsyncAtomicMultimap. Instead of returning futures this map
blocks until the future completes then returns the result.DEFAULT_OPERATION_TIMEOUT_MILLIS| Modifier and Type | Method and Description |
|---|---|
default void |
addListener(AtomicMultimapEventListener<K,V> listener)
Registers the specified listener to be notified whenever the map is updated.
|
void |
addListener(AtomicMultimapEventListener<K,V> listener,
Executor executor)
Registers the specified listener to be notified whenever the map is updated.
|
DistributedMap<K,Versioned<Collection<V>>> |
asMap()
Returns the multimap as a distributed map.
|
AsyncAtomicMultimap<K,V> |
async()
Returns the underlying asynchronous primitive.
|
void |
clear()
Removes all key-value pairs, after which it will be empty.
|
boolean |
containsEntry(K key,
V value)
Returns true if this map contains at least one key-value pair with key
and value specified.
|
boolean |
containsKey(K key)
Returns true if there is at lease one key-value pair with a key equal to
key.
|
boolean |
containsValue(V value)
Returns true if this map contains at lease one key-value pair with a
value equal to value.
|
DistributedCollection<Map.Entry<K,V>> |
entries()
Returns a collection of each key-value pair in this map.
|
Versioned<Collection<V>> |
get(K key)
Returns a collection of values associated with the specified key, if the
key is not in the map it will return an empty collection.
|
boolean |
isEmpty()
Returns if this multimap contains no key-value pairs.
|
DistributedMultiset<K> |
keys()
Returns a multiset of the keys present in this multimap with one or more
associated values each.
|
DistributedSet<K> |
keySet()
Returns a set of the keys contained in this multimap with one or more
associated values.
|
boolean |
put(K key,
V value)
If the key-value pair does not already exist adds either the key value
pair or the value to the set of values associated with the key and
returns true, if the key-value pair already exists then behavior is
implementation specific with some implementations allowing duplicates
and others ignoring put requests for existing entries.
|
boolean |
putAll(K key,
Collection<? extends V> values)
Adds the set of key-value pairs of the specified key with each of the
values in the iterable if each key-value pair does not already exist,
if the pair does exist the behavior is implementation specific.
|
boolean |
remove(K key,
V value)
Removes the key-value pair with the specified values if it exists.
|
Versioned<Collection<V>> |
removeAll(K key)
Removes all values associated with the specified key as well as the key
itself.
|
boolean |
removeAll(K key,
Collection<? extends V> values)
Removes the key-value pairs with the specified key and values if they
exist.
|
void |
removeListener(AtomicMultimapEventListener<K,V> listener)
Unregisters the specified listener such that it will no longer
receive map change notifications.
|
Versioned<Collection<V>> |
replaceValues(K key,
Collection<V> values)
Stores all the values in values associated with the key specified,
removes all preexisting values and returns a collection of the removed
values which may be empty if the entry did not exist.
|
int |
size()
Returns the number of key-value pairs in this multimap.
|
DistributedMultiset<V> |
values()
Returns a collection of values in the set with duplicates permitted, the
size of this collection will equal the size of the map at the time of
creation.
|
close, deleteaddStateChangeListener, name, protocol, removeStateChangeListener, typeint size()
boolean isEmpty()
boolean containsKey(K key)
key - the key to queryboolean containsValue(V value)
value - the value to queryboolean containsEntry(K key, V value)
key - the key to queryvalue - the value to queryboolean put(K key, V value)
key - the key to addvalue - the value to addboolean remove(K key, V value)
key - the key of the pair to be removedvalue - the value of the pair to be removedboolean removeAll(K key, Collection<? extends V> values)
remove() for each key value pair but more
efficient.key - the key of the pair to be removedvalues - the set of values to be removedVersioned<Collection<V>> removeAll(K key)
key - the key whose key-value pairs will be removedboolean putAll(K key, Collection<? extends V> values)
key - the key to use for all pairs to be addedvalues - the set of values to be added in pairs with the keyVersioned<Collection<V>> replaceValues(K key, Collection<V> values)
key - the key for all entries to be addedvalues - the values to be associated with the keyvoid clear()
Versioned<Collection<V>> get(K key)
key - the key whose associated values will be returnedDistributedSet<K> keySet()
DistributedMultiset<K> keys()
DistributedMultiset<V> values()
DistributedCollection<Map.Entry<K,V>> entries()
DistributedMap<K,Versioned<Collection<V>>> asMap()
default void addListener(AtomicMultimapEventListener<K,V> listener)
listener - listener to notify about map eventsvoid addListener(AtomicMultimapEventListener<K,V> listener, Executor executor)
listener - listener to notify about map eventsexecutor - executor to use for handling incoming map eventsvoid removeListener(AtomicMultimapEventListener<K,V> listener)
listener - listener to unregisterAsyncAtomicMultimap<K,V> async()
SyncPrimitiveasync in interface SyncPrimitiveCopyright © 2013–2018. All rights reserved.