Package org.redisson.api
Interface RRingBufferReactive<V>
-
- Type Parameters:
V
- value type
- All Superinterfaces:
RCollectionReactive<V>
,RExpirableReactive
,RObjectReactive
,RQueueReactive<V>
public interface RRingBufferReactive<V> extends RQueueReactive<V>
RingBuffer based queue evicts elements from the head if queue capacity became full.The head element removed if new element added and queue is full.
Must be initialized with capacity size
trySetCapacity(int)
before usage.- Author:
- Nikita Koksharov
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description reactor.core.publisher.Mono<Integer>
capacity()
Returns capacity of this queuereactor.core.publisher.Mono<Integer>
remainingCapacity()
Returns remaining capacity of this queuereactor.core.publisher.Mono<Void>
setCapacity(int capacity)
Sets capacity of the queue and overrides current value.reactor.core.publisher.Mono<Boolean>
trySetCapacity(int capacity)
Sets queue capacity only if it is not set before.-
Methods inherited from interface org.redisson.api.RCollectionReactive
add, addAll, addAll, contains, containsAll, iterator, remove, removeAll, retainAll, size
-
Methods inherited from interface org.redisson.api.RExpirableReactive
clearExpire, expire, expireAt, expireAt, expireAt, remainTimeToLive
-
Methods inherited from interface org.redisson.api.RObjectReactive
addListener, copy, delete, dump, getCodec, getIdleTime, getName, isExists, migrate, move, removeListener, rename, renamenx, restore, restore, restoreAndReplace, restoreAndReplace, sizeInMemory, touch, unlink
-
Methods inherited from interface org.redisson.api.RQueueReactive
offer, peek, poll, poll, pollLastAndOfferFirstTo, readAll
-
-
-
-
Method Detail
-
trySetCapacity
reactor.core.publisher.Mono<Boolean> trySetCapacity(int capacity)
Sets queue capacity only if it is not set before.- Parameters:
capacity
- - queue capacity- Returns:
true
if capacity set successfullyfalse
if capacity already set
-
setCapacity
reactor.core.publisher.Mono<Void> setCapacity(int capacity)
Sets capacity of the queue and overrides current value. Trims queue if previous capacity value was greater than new.- Parameters:
capacity
- - queue capacity
-
remainingCapacity
reactor.core.publisher.Mono<Integer> remainingCapacity()
Returns remaining capacity of this queue- Returns:
- remaining capacity
-
capacity
reactor.core.publisher.Mono<Integer> capacity()
Returns capacity of this queue- Returns:
- queue capacity
-
-