public interface AsyncMap<K,V>
An asynchronous map.
AsyncMap does not allow null to be used as a key or value.
- Author:
- Tim Fox
-
Method Summary
Modifier and TypeMethodDescriptionclear()Clear all entries in the mapentries()Get the entries of the map, asynchronously.Get a value from the map, asynchronously.keys()Get the keys of the map, asynchronously.Put a value in the map, asynchronously.Likeput(K, V)but specifying a time to live for the entry.putIfAbsent(K k, V v) Put the entry only if there is no entry with the key already present.putIfAbsent(K k, V v, long ttl) LinkputIfAbsent(K, V)but specifying a time to live for the entry.Remove a value from the map, asynchronously.removeIfPresent(K k, V v) Remove a value from the map, only if entry already exists with same value.Replace the entry only if it is currently mapped to some valueReplace the entry only if it is currently mapped to some valuereplaceIfPresent(K k, V oldValue, V newValue) Replace the entry only if it is currently mapped to a specific valuereplaceIfPresent(K k, V oldValue, V newValue, long ttl) Replace the entry only if it is currently mapped to a specific valuesize()Provide the number of entries in the mapvalues()Get the values of the map, asynchronously.
-
Method Details
-
get
Get a value from the map, asynchronously.- Parameters:
k- the key- Returns:
- a future notified some time later with the async result.
-
put
Put a value in the map, asynchronously.- Parameters:
k- the keyv- the value- Returns:
- a future notified some time later with the async result.
-
put
Likeput(K, V)but specifying a time to live for the entry. Entry will expire and get evicted after the ttl.- Parameters:
k- the keyv- the valuettl- The time to live (in ms) for the entry- Returns:
- a future notified some time later with the async result.
-
putIfAbsent
Put the entry only if there is no entry with the key already present. If key already present then the existing value will be returned to the handler, otherwise null.- Parameters:
k- the keyv- the value- Returns:
- a future notified some time later with the async result.
-
putIfAbsent
LinkputIfAbsent(K, V)but specifying a time to live for the entry. Entry will expire and get evicted after the ttl.- Parameters:
k- the keyv- the valuettl- The time to live (in ms) for the entry- Returns:
- a future notified some time later with the async result.
-
remove
Remove a value from the map, asynchronously.- Parameters:
k- the key- Returns:
- a future notified some time later with the async result.
-
removeIfPresent
Remove a value from the map, only if entry already exists with same value.- Parameters:
k- the keyv- the value- Returns:
- a future notified some time later with the async result.
-
replace
Replace the entry only if it is currently mapped to some value- Parameters:
k- the keyv- the new value- Returns:
- a future notified some time later with the async result.
-
replace
Replace the entry only if it is currently mapped to some value- Parameters:
k- the keyv- the new valuettl- The time to live (in ms) for the entry- Returns:
- a future notified some time later with the previous value
-
replaceIfPresent
Replace the entry only if it is currently mapped to a specific value- Parameters:
k- the keyoldValue- the existing valuenewValue- the new value- Returns:
- a future notified some time later with the async result.
-
replaceIfPresent
Replace the entry only if it is currently mapped to a specific value- Parameters:
k- the keyoldValue- the existing valuenewValue- the new valuettl- The time to live (in ms) for the entry- Returns:
- a future notified some time later with the async result.
-
clear
Clear all entries in the map- Returns:
- a future notified some time later with the async result.
-
size
Provide the number of entries in the map- Returns:
- a future notified some time later with the async result.
-
keys
Get the keys of the map, asynchronously.Use this method with care as the map may contain a large number of keys, which may not fit entirely in memory of a single node. In this case, the invocation will result in an
OutOfMemoryError.- Returns:
- a future notified some time later with the async result.
-
values
Get the values of the map, asynchronously.Use this method with care as the map may contain a large number of values, which may not fit entirely in memory of a single node. In this case, the invocation will result in an
OutOfMemoryError.- Returns:
- a future notified some time later with the async result.
-
entries
Get the entries of the map, asynchronously.Use this method with care as the map may contain a large number of entries, which may not fit entirely in memory of a single node. In this case, the invocation will result in an
OutOfMemoryError.- Returns:
- a future notified some time later with the async result.
-