A specialized distributed map client whose keys can be associated with multiple values.
More...
|
bool | put (const K &key, const V &value) |
| Stores a key-value pair in the multimap. More...
|
|
std::vector< V > | get (const K &key) |
| Returns the multimap of values associated with the key. More...
|
|
bool | remove (const K &key, const V &value) |
| Removes the given key value pair from the multimap. More...
|
|
std::vector< V > | remove (const K &key) |
| Removes all the entries with the given key. More...
|
|
std::vector< K > | keySet () |
| Returns the set of keys in the multimap. More...
|
|
std::vector< V > | values () |
| Returns the multimap of values in the multimap. More...
|
|
std::vector< std::pair< K, V > > | entrySet () |
| Returns the set of key-value pairs in the multimap. More...
|
|
bool | containsKey (const K &key) |
| Returns whether the multimap contains an entry with the key. More...
|
|
bool | containsValue (const V &value) |
| Returns whether the multimap contains an entry with the value. More...
|
|
bool | containsEntry (const K &key, const V &value) |
| Returns whether the multimap contains the given key-value pair. More...
|
|
int | size () |
| Returns the number of key-value pairs in the multimap. More...
|
|
void | clear () |
| Clears the multimap. More...
|
|
int | valueCount (const K &key) |
| Returns number of values matching to given key in the multimap. More...
|
|
std::string | addEntryListener (EntryListener< K, V > &listener, bool includeValue) |
| Adds an entry listener for this multimap. More...
|
|
std::string | addEntryListener (EntryListener< K, V > &listener, const K &key, bool includeValue) |
| Adds the specified entry listener for the specified key. More...
|
|
bool | removeEntryListener (const std::string ®istrationId) |
| Removes the specified entry listener Returns silently if there is no such listener added before. More...
|
|
void | lock (const K &key) |
| Acquires the lock for the specified key. More...
|
|
void | lock (const K &key, long leaseTimeInMillis) |
| Acquires the lock for the specified key for the specified lease time. More...
|
|
bool | isLocked (const K &key) |
| Checks the lock for the specified key. More...
|
|
bool | tryLock (const K &key) |
| Tries to acquire the lock for the specified key. More...
|
|
bool | tryLock (const K &key, long timeoutInMillis) |
| Tries to acquire the lock for the specified key. More...
|
|
void | unlock (const K &key) |
| Releases the lock for the specified key. More...
|
|
void | forceUnlock (const K &key) |
| Releases the lock for the specified key regardless of the lock owner. More...
|
|
template<typename K, typename V>
class hazelcast::client::MultiMap< K, V >
A specialized distributed map client whose keys can be associated with multiple values.
- See Also
- IMap
template<typename K, typename V>
Adds an entry listener for this multimap.
Listener will get notified for all multimap add/remove/update/evict events.
Warning 1: If listener should do a time consuming operation, off-load the operation to another thread. otherwise it will slow down the system.
Warning 2: Do not make a call to hazelcast. It can cause deadlock.
- Parameters
-
listener | entry listener |
includeValue | true if EntryEvent should contain the value. |
- Returns
- returns registration id.
template<typename K, typename V>
Adds the specified entry listener for the specified key.
The listener will get notified for all add/remove/update/evict events of the specified key only.
Warning 1: If listener should do a time consuming operation, off-load the operation to another thread. otherwise it will slow down the system.
Warning 2: Do not make a call to hazelcast. It can cause deadlock.
- Parameters
-
listener | entry listener |
key | the key to listen |
includeValue | true if EntryEvent should contain the value. |
- Returns
- returns registration id.
template<typename K, typename V>
Acquires the lock for the specified key.
If the lock is not available then the current thread becomes disabled for thread scheduling purposes and lies dormant until the lock has been acquired.
Scope of the lock is this multimap only. Acquired lock is only for the key in this multimap.
Locks are re-entrant so if the key is locked N times then it should be unlocked N times before another thread can acquire it.
- Parameters
-
template<typename K, typename V>
Acquires the lock for the specified key for the specified lease time.
After lease time, lock will be released..
If the lock is not available then the current thread becomes disabled for thread scheduling purposes and lies dormant until the lock has been acquired.
Scope of the lock is this map only. Acquired lock is only for the key in this map.
Locks are re-entrant so if the key is locked N times then it should be unlocked N times before another thread can acquire it.
- Parameters
-
key | key to lock. |
leaseTimeInMillis | time in milliseconds to wait before releasing the lock. |