Interface Inlet<I>

    • Method Summary

      Modifier and Type Method Description
      void bindInput​(Outlet<? extends I> input)
      Connects this Inlet to an Outlet from which it will acquire its state.
      void disconnectInputs()
      Disconnects all Inlets dominated by this Inlet in the dataflow dependency graph.
      void disconnectOutputs()
      Disconnects all Outlets dominated by this Inlet in the dataflow graph.
      Outlet<? extends I> input()
      Returns the Outlet from which this Inlet acquires its state; returns null if this Inlet is disconnected.
      void invalidateOutput()
      Marks this Inlet—and the Streamlet to which this Inlet is attached—as having stale state.
      void reconcileOutput​(int version)
      Reconciles the state of this Inlet, if the version of this Inlet's state differs from the target version.
      void unbindInput()
      Disconnects this Inlet from its input Outlet, if connected.
    • Method Detail

      • input

        Outlet<? extends I> input()
        Returns the Outlet from which this Inlet acquires its state; returns null if this Inlet is disconnected.
      • bindInput

        void bindInput​(Outlet<? extends I> input)
        Connects this Inlet to an Outlet from which it will acquire its state. If this Inlet is already connected, it will first disconnect from its existing input. Then, after updating its input property, the Inlet will invoke Outlet.bindOutput(Inlet) on its new input.
      • unbindInput

        void unbindInput()
        Disconnects this Inlet from its input Outlet, if connected. After setting its input property to null, the Inlet will invoke Outlet.unbindOutput(Inlet) on its old input, if defined.
      • disconnectInputs

        void disconnectInputs()
        Disconnects all Inlets dominated by this Inlet in the dataflow dependency graph. Used to recursively clean up chains of combinators terminating at this Inlet.
      • disconnectOutputs

        void disconnectOutputs()
        Disconnects all Outlets dominated by this Inlet in the dataflow graph. Used to recursively clean up chains of combinators passing through this Inlet.
      • invalidateOutput

        void invalidateOutput()
        Marks this Inlet—and the Streamlet to which this Inlet is attached—as having stale state. Invalidating an Inlet will recursively invalidate all streamlets that transitively depend on the state of this Inlet. Invalidating an Inlet does not cause its state to be recomputed. A subsequent reconcileOutput(int) call will reconcile the state of the Inlet.
      • reconcileOutput

        void reconcileOutput​(int version)
        Reconciles the state of this Inlet, if the version of this Inlet's state differs from the target version. To reconcile its state, the Inlet first invokes Outlet.reconcileInput(int) on its input, to ensure that its input is up-to-date. It then invokes Streamlet.reconcile(int) on the Streamlet to which it's attached, causing the Streamlet to reconcile its own state.