Class KillSwitches

java.lang.Object
org.apache.pekko.stream.KillSwitches

public class KillSwitches extends Object
Creates shared or single kill switches which can be used to control completion of graphs from the outside. - The factory shared() returns a SharedKillSwitch which provides a Graph of FlowShape that can be used in arbitrary number of graphs and materializations. The switch simultaneously controls completion in all of those graphs. - The factory single() returns a Graph of FlowShape that materializes to a UniqueKillSwitch which is always unique to that materialized Flow itself.

Creates a SharedKillSwitch that can be used to externally control the completion of various streams.

  • Constructor Details

    • KillSwitches

      public KillSwitches()
  • Method Details

    • shared

      public static SharedKillSwitch shared(String name)
      Creates a new SharedKillSwitch with the given name that can be used to control the completion of multiple streams from the outside simultaneously.

      See Also:
    • single

      public static <T> Graph<FlowShape<T,T>,UniqueKillSwitch> single()
      Creates a new Graph of FlowShape that materializes to an external switch that allows external completion of that unique materialization. Different materializations result in different, independent switches.

      For a Bidi version see KillSwitch#singleBidi

    • singleBidi

      public static <T1, T2> Graph<BidiShape<T1,T1,T2,T2>,UniqueKillSwitch> singleBidi()
      Creates a new Graph of FlowShape that materializes to an external switch that allows external completion of that unique materialization. Different materializations result in different, independent switches.

      For a Flow version see KillSwitch#single