public class GraphStages$
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static GraphStages$ |
MODULE$
Static reference to the singleton instance of this Scala object.
|
Constructor and Description |
---|
GraphStages$() |
Modifier and Type | Method and Description |
---|---|
<T> GraphStage<FlowShape<T,T>> |
detacher() |
<T> GraphStages.SimpleLinearGraphStage<T> |
identity() |
<T> GraphStageWithMaterializedValue<FlowShape<T,T>,FlowMonitor<T>> |
monitor() |
<T> GraphStageWithMaterializedValue<FlowShape<T,T>,scala.concurrent.Future<Done>> |
terminationWatcher() |
<T> Graph<UniformFanInShape<T,T>,NotUsed> |
withDetachedInputs(GraphStage<UniformFanInShape<T,T>> stage)
INTERNAL API.
|
public static final GraphStages$ MODULE$
public <T> GraphStages.SimpleLinearGraphStage<T> identity()
public <T> GraphStage<FlowShape<T,T>> detacher()
public <T> GraphStageWithMaterializedValue<FlowShape<T,T>,scala.concurrent.Future<Done>> terminationWatcher()
public <T> GraphStageWithMaterializedValue<FlowShape<T,T>,FlowMonitor<T>> monitor()
public <T> Graph<UniformFanInShape<T,T>,NotUsed> withDetachedInputs(GraphStage<UniformFanInShape<T,T>> stage)
Fusing graphs that have cycles involving FanIn stages might lead to deadlocks if demand is not carefully managed.
This means that FanIn stages need to early pull every relevant input on startup. This can either be implemented inside the stage itself, or this method can be used, which adds a detacher stage to every input.
stage
- (undocumented)