Interface RBlockingDequeReactive<V>

Type Parameters:
V - the type of elements held in this collection
All Superinterfaces:
RBlockingQueueReactive<V>, RCollectionReactive<V>, RDequeReactive<V>, RExpirableReactive, RObjectReactive, RQueueReactive<V>

public interface RBlockingDequeReactive<V> extends RDequeReactive<V>, RBlockingQueueReactive<V>
Reactive interface for Redis based BlockingDeque object
Author:
Nikita Koksharov
  • Method Details

    • pollFirstFromAny

      reactor.core.publisher.Mono<V> pollFirstFromAny(long timeout, TimeUnit unit, String... queueNames)
      Retrieves and removes first available head element of any queue in reactive mode, waiting up to the specified wait time if necessary for an element to become available in any of defined queues including queue own.
      Parameters:
      queueNames - - names of queue
      timeout - how long to wait before giving up, in units of unit
      unit - a TimeUnit determining how to interpret the timeout parameter
      Returns:
      the head of this queue, or null if the specified waiting time elapses before an element is available
    • pollLastFromAny

      reactor.core.publisher.Mono<V> pollLastFromAny(long timeout, TimeUnit unit, String... queueNames)
      Retrieves and removes first available tail element of any queue in reactive mode, waiting up to the specified wait time if necessary for an element to become available in any of defined queues including queue own.
      Parameters:
      queueNames - - names of queue
      timeout - how long to wait before giving up, in units of unit
      unit - a TimeUnit determining how to interpret the timeout parameter
      Returns:
      the head of this queue, or null if the specified waiting time elapses before an element is available
    • putFirst

      reactor.core.publisher.Mono<Void> putFirst(V e)
      Adds value to the head of queue.
      Parameters:
      e - value
      Returns:
      void
    • putLast

      reactor.core.publisher.Mono<Void> putLast(V e)
      Adds value to the tail of queue.
      Parameters:
      e - value
      Returns:
      void
    • pollLast

      reactor.core.publisher.Mono<V> pollLast(long timeout, TimeUnit unit)
      Retrieves and removes value at the tail of queue. If necessary waits up to defined timeout for an element become available.
      Parameters:
      timeout - how long to wait before giving up, in units of unit
      unit - a TimeUnit determining how to interpret the timeout parameter
      Returns:
      the element at the head of this queue, or null if the specified waiting time elapses before an element is available
    • takeLast

      reactor.core.publisher.Mono<V> takeLast()
      Retrieves and removes value at the tail of queue. Waits for an element become available.
      Returns:
      the tail element of this queue
    • pollFirst

      reactor.core.publisher.Mono<V> pollFirst(long timeout, TimeUnit unit)
      Retrieves and removes value at the head of queue. If necessary waits up to defined timeout for an element become available.
      Parameters:
      timeout - how long to wait before giving up, in units of unit
      unit - a TimeUnit determining how to interpret the timeout parameter
      Returns:
      the element at the tail of this queue, or null if the specified waiting time elapses before an element is available
    • takeFirst

      reactor.core.publisher.Mono<V> takeFirst()
      Retrieves and removes value at the head of queue. Waits for an element become available.
      Returns:
      the head element of this queue
    • takeFirstElements

      reactor.core.publisher.Flux<V> takeFirstElements()
      Retrieves and removes continues stream of elements from the head of this queue. Waits for next element become available.
      Returns:
      stream of head elements
    • takeLastElements

      reactor.core.publisher.Flux<V> takeLastElements()
      Retrieves and removes continues stream of elements from the tail of this queue. Waits for next element become available.
      Returns:
      stream of tail elements