public interface ReactiveHashOperations<H,HK,HV>
Modifier and Type | Method and Description |
---|---|
reactor.core.publisher.Mono<Boolean> |
delete(H key)
Removes the given key.
|
reactor.core.publisher.Flux<Map.Entry<HK,HV>> |
entries(H key)
Get entire hash stored at
key . |
reactor.core.publisher.Mono<HV> |
get(H key,
Object hashKey)
Get value for given
hashKey from hash at key . |
reactor.core.publisher.Mono<Boolean> |
hasKey(H key,
Object hashKey)
Determine if given hash
hashKey exists. |
reactor.core.publisher.Mono<Double> |
increment(H key,
HK hashKey,
double delta)
Increment
value of a hash hashKey by the given delta . |
reactor.core.publisher.Mono<Long> |
increment(H key,
HK hashKey,
long delta)
Increment
value of a hash hashKey by the given delta . |
reactor.core.publisher.Flux<HK> |
keys(H key)
Get key set (fields) of hash at
key . |
reactor.core.publisher.Mono<List<HV>> |
multiGet(H key,
Collection<HK> hashKeys)
Get values for given
hashKeys from hash at key . |
reactor.core.publisher.Mono<Boolean> |
put(H key,
HK hashKey,
HV value)
Set the
value of a hash hashKey . |
reactor.core.publisher.Mono<Boolean> |
putAll(H key,
Map<? extends HK,? extends HV> map)
Set multiple hash fields to multiple values using data provided in
m . |
reactor.core.publisher.Mono<Boolean> |
putIfAbsent(H key,
HK hashKey,
HV value)
Set the
value of a hash hashKey only if hashKey does not exist. |
reactor.core.publisher.Flux<Map.Entry<HK,HV>> |
randomEntries(H key,
long count)
Return random entries from the hash stored at
key . |
reactor.core.publisher.Mono<Map.Entry<HK,HV>> |
randomEntry(H key)
Return a random entry from the hash value stored at
key . |
reactor.core.publisher.Mono<HK> |
randomKey(H key)
Return a random hash key (aka field) from the hash value stored at
key . |
reactor.core.publisher.Flux<HK> |
randomKeys(H key,
long count)
Return random hash keys (aka fields) from the hash value stored at
key . |
reactor.core.publisher.Mono<Long> |
remove(H key,
Object... hashKeys)
Delete given hash
hashKeys from the hash at key. |
default reactor.core.publisher.Flux<Map.Entry<HK,HV>> |
scan(H key)
Use a
Flux to iterate over entries in the hash at key . |
reactor.core.publisher.Flux<Map.Entry<HK,HV>> |
scan(H key,
ScanOptions options)
|
reactor.core.publisher.Mono<Long> |
size(H key)
Get size of hash at
key . |
reactor.core.publisher.Flux<HV> |
values(H key)
Get entry set (values) of hash at
key . |
reactor.core.publisher.Mono<Long> remove(H key, Object... hashKeys)
hashKeys
from the hash at key.key
- must not be null.hashKeys
- must not be null.reactor.core.publisher.Mono<Boolean> hasKey(H key, Object hashKey)
hashKey
exists.key
- must not be null.hashKey
- must not be null.reactor.core.publisher.Mono<HV> get(H key, Object hashKey)
hashKey
from hash at key
.key
- must not be null.hashKey
- must not be null.reactor.core.publisher.Mono<List<HV>> multiGet(H key, Collection<HK> hashKeys)
hashKeys
from hash at key
.key
- must not be null.hashKeys
- must not be null.reactor.core.publisher.Mono<Long> increment(H key, HK hashKey, long delta)
value
of a hash hashKey
by the given delta
.key
- must not be null.hashKey
- must not be null.delta
- reactor.core.publisher.Mono<Double> increment(H key, HK hashKey, double delta)
value
of a hash hashKey
by the given delta
.key
- must not be null.hashKey
- must not be null.delta
- reactor.core.publisher.Mono<HK> randomKey(H key)
key
.key
- must not be null.reactor.core.publisher.Mono<Map.Entry<HK,HV>> randomEntry(H key)
key
.key
- must not be null.reactor.core.publisher.Flux<HK> randomKeys(H key, long count)
key
. If the provided count
argument is
positive, return a list of distinct hash keys, capped either at count
or the hash size. If count
is
negative, the behavior changes and the command is allowed to return the same hash key multiple times. In this case,
the number of returned fields is the absolute value of the specified count.key
- must not be null.count
- number of fields to return.reactor.core.publisher.Flux<Map.Entry<HK,HV>> randomEntries(H key, long count)
key
. If the provided count
argument is
positive, return a list of distinct entries, capped either at count
or the hash size. If count
is
negative, the behavior changes and the command is allowed to return the same entry multiple times. In this case,
the number of returned fields is the absolute value of the specified count.key
- must not be null.count
- number of fields to return.reactor.core.publisher.Flux<HK> keys(H key)
key
.key
- must not be null.reactor.core.publisher.Mono<Long> size(H key)
key
.key
- must not be null.reactor.core.publisher.Mono<Boolean> putAll(H key, Map<? extends HK,? extends HV> map)
m
.key
- must not be null.map
- must not be null.reactor.core.publisher.Mono<Boolean> put(H key, HK hashKey, HV value)
value
of a hash hashKey
.key
- must not be null.hashKey
- must not be null.value
- reactor.core.publisher.Mono<Boolean> putIfAbsent(H key, HK hashKey, HV value)
value
of a hash hashKey
only if hashKey
does not exist.key
- must not be null.hashKey
- must not be null.value
- reactor.core.publisher.Flux<HV> values(H key)
key
.key
- must not be null.reactor.core.publisher.Flux<Map.Entry<HK,HV>> entries(H key)
key
.key
- must not be null.default reactor.core.publisher.Flux<Map.Entry<HK,HV>> scan(H key)
Flux
to iterate over entries in the hash at key
. The resulting Flux
acts as a cursor
and issues HSCAN
commands itself as long as the subscriber signals demand.key
- must not be null.Flux
emitting the entries
on by one or an empty
flux
if the key does not exist.IllegalArgumentException
- when the given key
is null.reactor.core.publisher.Flux<Map.Entry<HK,HV>> scan(H key, ScanOptions options)
Flux
to iterate over entries in the hash at key
given ScanOptions
. The resulting
Flux
acts as a cursor and issues HSCAN
commands itself as long as the subscriber signals demand.key
- must not be null.options
- must not be null. Use ScanOptions.NONE
instead.Flux
emitting the entries
on by one or an empty
flux
if the key does not exist.IllegalArgumentException
- when one of the required arguments is null.Copyright © 2011–2022 Pivotal Software, Inc.. All rights reserved.