Class ObservableMapOptional.MapOptionalObserver<T,R>

java.lang.Object
io.reactivex.rxjava3.internal.observers.BasicFuseableObserver<T,R>
io.reactivex.rxjava3.internal.jdk8.ObservableMapOptional.MapOptionalObserver<T,R>
All Implemented Interfaces:
Observer<T>, Disposable, QueueDisposable<R>, QueueFuseable<R>, SimpleQueue<R>
Enclosing class:
ObservableMapOptional<T,R>

static final class ObservableMapOptional.MapOptionalObserver<T,R> extends BasicFuseableObserver<T,R>
  • Field Details

  • Constructor Details

  • Method Details

    • onNext

      public void onNext(T t)
      Description copied from interface: Observer
      Provides the Observer with a new item to observe.

      The Observable may call this method 0 or more times.

      The Observable will not call this method again after it calls either Observer.onComplete() or Observer.onError(java.lang.Throwable).

      Parameters:
      t - the item emitted by the Observable
    • requestFusion

      public int requestFusion(int mode)
      Description copied from interface: QueueFuseable
      Request a fusion mode from the upstream.

      This should be called before onSubscribe returns.

      Calling this method multiple times or after onSubscribe finished is not allowed and may result in undefined behavior.

      Parameters:
      mode - the requested fusion mode, allowed values are QueueFuseable.SYNC, QueueFuseable.ASYNC, QueueFuseable.ANY combined with QueueFuseable.BOUNDARY (e.g., requestFusion(SYNC | BOUNDARY)).
      Returns:
      the established fusion mode: QueueFuseable.NONE, QueueFuseable.SYNC, QueueFuseable.ASYNC.
    • poll

      public R poll() throws Throwable
      Description copied from interface: SimpleQueue
      Tries to dequeue a value (non-null) or returns null if the queue is empty.

      If the producer uses SimpleQueue.offer(Object, Object) and when polling in pairs, if the first poll() returns a non-null item, the second poll() is guaranteed to return a non-null item as well.

      Returns:
      the item or null to indicate an empty queue
      Throws:
      Throwable - if some pre-processing of the dequeued item (usually through fused functions) throws.