Class OperatorScan.InitialProducer<R>

    • Field Summary

      Fields 
      Modifier and Type Field Description
      (package private) Subscriber<? super R> child  
      (package private) boolean done  
      (package private) boolean emitting  
      (package private) java.lang.Throwable error  
      (package private) boolean missed
      Missed a terminal event.
      (package private) long missedRequested
      Missed a request.
      (package private) Producer producer
      The current producer.
      (package private) java.util.Queue<java.lang.Object> queue  
      (package private) java.util.concurrent.atomic.AtomicLong requested
      The current requested amount.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      (package private) boolean checkTerminated​(boolean d, boolean empty, Subscriber<? super R> child)  
      (package private) void emit()  
      (package private) void emitLoop()  
      void onCompleted()
      Notifies the Observer that the Observable has finished sending push-based notifications.
      void onError​(java.lang.Throwable e)
      Notifies the Observer that the Observable has experienced an error condition.
      void onNext​(R t)
      Provides the Observer with a new item to observe.
      void request​(long n)
      Request a certain maximum number of items from this Producer.
      void setProducer​(Producer p)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • queue

        final java.util.Queue<java.lang.Object> queue
      • emitting

        boolean emitting
      • missed

        boolean missed
        Missed a terminal event.
      • missedRequested

        long missedRequested
        Missed a request.
      • requested

        final java.util.concurrent.atomic.AtomicLong requested
        The current requested amount.
      • producer

        volatile Producer producer
        The current producer.
      • done

        volatile boolean done
      • error

        java.lang.Throwable error
    • Constructor Detail

      • InitialProducer

        public InitialProducer​(R initialValue,
                               Subscriber<? super R> child)
    • Method Detail

      • checkTerminated

        boolean checkTerminated​(boolean d,
                                boolean empty,
                                Subscriber<? super R> child)
      • request

        public void request​(long n)
        Description copied from interface: Producer
        Request a certain maximum number of items from this Producer. This is a way of requesting backpressure. To disable backpressure, pass Long.MAX_VALUE to this method.

        Requests are additive but if a sequence of requests totals more than Long.MAX_VALUE then Long.MAX_VALUE requests will be actioned and the extras may be ignored. Arriving at Long.MAX_VALUE by addition of requests cannot be assumed to disable backpressure. For example, the code below may result in Long.MAX_VALUE requests being actioned only.

         request(100);
         request(Long.MAX_VALUE-1);
         
        Specified by:
        request in interface Producer
        Parameters:
        n - the maximum number of items you want this Producer to produce, or Long.MAX_VALUE if you want the Producer to produce items at its own pace
      • setProducer

        public void setProducer​(Producer p)
      • emit

        void emit()
      • emitLoop

        void emitLoop()