Package org.reactfx

Class ThenAccumulateForStream<T,A>

java.lang.Object
org.reactfx.ObservableBase<Consumer<? super T>,T>
org.reactfx.EventStreamBase<T>
org.reactfx.ThenAccumulateForStream<T,A>
All Implemented Interfaces:
AwaitingEventStream<T>, EventStream<T>, Observable<Consumer<? super T>>, ProperEventStream<T>, ProperObservable<Consumer<? super T>,T>

class ThenAccumulateForStream<T,A> extends EventStreamBase<T> implements AwaitingEventStream<T>
  • Property Details

  • Field Details

    • input

      private final EventStream<T> input
    • initial

      private final Function<? super T,? extends A> initial
    • reduction

      private final BiFunction<? super A,? super T,? extends A> reduction
    • deconstruction

      private final Function<? super A,List<T>> deconstruction
    • timer

      private final Timer timer
    • state

    • acc

      private A acc
    • pending

      private javafx.beans.binding.BooleanBinding pending
  • Constructor Details

  • Method Details

    • pendingProperty

      public javafx.beans.value.ObservableBooleanValue pendingProperty()
      Description copied from interface: AwaitingEventStream
      Indicates whether there is a pending event that will be emitted by this stream in the (near) future. This may mean that an event has occurred that causes this stream to emit an event with some delay, e.g. waiting for a timer or completion of an asynchronous task.
      Specified by:
      pendingProperty in interface AwaitingEventStream<T>
      Returns:
      the pending property
    • isPending

      public boolean isPending()
      Specified by:
      isPending in interface AwaitingEventStream<T>
    • observeInputs

      protected final Subscription observeInputs()
      Description copied from class: ObservableBase
      Starts observing this observable's input(s), if any. This method is called when the number of observers goes from 0 to 1. This method is called before ObservableBase.newObserver(Object) is called for the first observer.
      Specified by:
      observeInputs in class ObservableBase<Consumer<? super T>,T>
      Returns:
      subscription used to stop observing inputs. The subscription is unsubscribed (i.e. input observation stops) when the number of observers goes down to 0.
    • handleEvent

      private void handleEvent(T t)
    • handleTimeout

      private void handleTimeout()
    • setState

      private void setState(ThenAccumulateForStream.State state)
    • invalidatePending

      private void invalidatePending()