Package akka.stream.impl
Class SubFlowImpl<In,Out,Mat,F,C>
- java.lang.Object
-
- akka.stream.impl.SubFlowImpl<In,Out,Mat,F,C>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
SubFlowImpl.MergeBack<In,F>
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SubFlow<Out,Mat,F,C>
addAttributes(Attributes attr)
SubFlow<Out,Mat,F,C>
async()
Put an asynchronous boundary around thisFlow
.F
mergeSubstreamsWithParallelism(int breadth)
Flatten the sub-flows back into the super-flow by performing a merge with the given parallelism limit.SubFlow<Out,Mat,F,C>
named(java.lang.String name)
Flow<In,Out,NotUsed>
subFlow()
<M> C
to(Graph<SinkShape<Out>,M> sink)
Attach aSink
to each sub-flow, closing the overall Graph that is being constructed.<T,Mat2>
SubFlow<T,Mat,F,C>via(Graph<FlowShape<Out,T>,Mat2> flow)
SubFlow<Out,Mat,F,C>
withAttributes(Attributes attr)
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface akka.stream.scaladsl.FlowOps
$plus$plus, alsoTo, alsoToGraph, ask, ask, backpressureTimeout, batch, batchWeighted, buffer, collect, collectType, completionTimeout, concat, concatGraph, conflate, conflateWithSeed, delay, delay$default$2, detach, divertTo, divertToGraph, drop, dropWhile, dropWithin, expand, extrapolate, extrapolate$default$2, filter, filterNot, flatMapConcat, flatMapMerge, fold, foldAsync, groupBy, groupBy, grouped, groupedWeightedWithin, groupedWithin, idleTimeout, initialDelay, initialTimeout, interleave, interleave, interleaveGraph, interleaveGraph$default$3, intersperse, intersperse, keepAlive, limit, limitWeighted, log, log$default$2, log$default$3, map, mapAsync, mapAsyncUnordered, mapConcat, mapError, merge, merge$default$2, mergeGraph, mergeSorted, mergeSortedGraph, orElse, orElseGraph, prefixAndTail, prepend, prependGraph, recover, recoverWith, recoverWithRetries, reduce, scan, scanAsync, sliding, sliding$default$2, splitAfter, splitAfter, splitWhen, splitWhen, statefulMapConcat, take, takeWhile, takeWhile, takeWithin, throttle, throttle, throttle, throttle, throttleEven, throttleEven, watch, wireTap, wireTap, wireTapGraph, zip, zipGraph, zipLatest, zipLatestGraph, zipLatestWith, zipLatestWithGraph, zipWith, zipWithGraph, zipWithIndex
-
Methods inherited from interface akka.stream.scaladsl.SubFlow
concatSubstreams, mergeSubstreams
-
-
-
-
Method Detail
-
withAttributes
public SubFlow<Out,Mat,F,C> withAttributes(Attributes attr)
- Specified by:
withAttributes
in interfaceFlowOps<In,Out>
-
addAttributes
public SubFlow<Out,Mat,F,C> addAttributes(Attributes attr)
- Specified by:
addAttributes
in interfaceFlowOps<In,Out>
-
async
public SubFlow<Out,Mat,F,C> async()
Description copied from interface:FlowOps
Put an asynchronous boundary around thisFlow
.If this is a
SubFlow
(created e.g. bygroupBy
), this creates an asynchronous boundary around each materialized sub-flow, not the super-flow. That way, the super-flow will communicate with sub-flows asynchronously.
-
mergeSubstreamsWithParallelism
public F mergeSubstreamsWithParallelism(int breadth)
Description copied from interface:SubFlow
Flatten the sub-flows back into the super-flow by performing a merge with the given parallelism limit. This means that only up toparallelism
substreams will be executed at any given time. Substreams that are not yet executed are also not materialized, meaning that back-pressure will be exerted at the operator that creates the substreams when the parallelism limit is reached.
-
to
public <M> C to(Graph<SinkShape<Out>,M> sink)
Description copied from interface:SubFlow
Attach aSink
to each sub-flow, closing the overall Graph that is being constructed.Note that attributes set on the returned graph, including async boundaries are now for the entire graph and not the
SubFlow
. for exampleasync
will not have any effect as the returned graph is the entire, closed graph.
-
-