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 interfaceSubFlowImpl.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.FmergeSubstreamsWithParallelism(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> Cto(Graph<SinkShape<Out>,M> sink)Attach aSinkto 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:
withAttributesin interfaceFlowOps<In,Out>
-
addAttributes
public SubFlow<Out,Mat,F,C> addAttributes(Attributes attr)
- Specified by:
addAttributesin interfaceFlowOps<In,Out>
-
async
public SubFlow<Out,Mat,F,C> async()
Description copied from interface:FlowOpsPut 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:SubFlowFlatten the sub-flows back into the super-flow by performing a merge with the given parallelism limit. This means that only up toparallelismsubstreams 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:SubFlowAttach aSinkto 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 exampleasyncwill not have any effect as the returned graph is the entire, closed graph.
-
-