Class FlowWithContext<In,CtxIn,Out,CtxOut,Mat>
- java.lang.Object
-
- akka.stream.GraphDelegate<FlowShape<Pair<In,CtxIn>,Pair<Out,CtxOut>>,Mat>
-
- akka.stream.javadsl.FlowWithContext<In,CtxIn,Out,CtxOut,Mat>
-
public final class FlowWithContext<In,CtxIn,Out,CtxOut,Mat> extends GraphDelegate<FlowShape<Pair<In,CtxIn>,Pair<Out,CtxOut>>,Mat>
Transform this flow by the regular flow. The given flow must support manual context propagation by taking and producing tuples of (data, context).This can be used as an escape hatch for operations that are not (yet) provided with automatic context propagation here.
- See Also:
akka.stream.javadsl.Flow.via
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Flow<Pair<In,CtxIn>,Pair<Out,CtxOut>,Mat>
asFlow()
Creates a regular flow of pairs (data, context).FlowWithContext<In,CtxIn,Out,CtxOut,Mat>
asScala()
<Out2> FlowWithContext<In,CtxIn,Out2,CtxOut,Mat>
collect(scala.PartialFunction<Out,Out2> pf)
Context-preserving variant ofakka.stream.javadsl.Flow.collect
.static <In,Ctx>
FlowWithContext<In,Ctx,In,Ctx,NotUsed>create()
FlowWithContext<In,CtxIn,Out,CtxOut,Mat>
filter(Predicate<Out> p)
Context-preserving variant ofakka.stream.javadsl.Flow.filter
.FlowWithContext<In,CtxIn,Out,CtxOut,Mat>
filterNot(Predicate<Out> p)
Context-preserving variant ofakka.stream.javadsl.Flow.filterNot
.static <In,CtxIn,Out,CtxOut,Mat>
FlowWithContext<In,CtxIn,Out,CtxOut,Mat>fromPairs(Flow<Pair<In,CtxIn>,Pair<Out,CtxOut>,Mat> under)
Creates a FlowWithContext from a regular flow that operates onPair
elements.FlowWithContext<In,CtxIn,java.util.List<Out>,java.util.List<CtxOut>,Mat>
grouped(int n)
Context-preserving variant ofakka.stream.javadsl.Flow.grouped
.FlowWithContext<In,CtxIn,Out,CtxOut,Mat>
log(java.lang.String name)
Context-preserving variant ofakka.stream.javadsl.Flow.log
.FlowWithContext<In,CtxIn,Out,CtxOut,Mat>
log(java.lang.String name, LoggingAdapter log)
Context-preserving variant ofakka.stream.javadsl.Flow.log
.FlowWithContext<In,CtxIn,Out,CtxOut,Mat>
log(java.lang.String name, Function<Out,java.lang.Object> extract)
Context-preserving variant ofakka.stream.javadsl.Flow.log
.FlowWithContext<In,CtxIn,Out,CtxOut,Mat>
log(java.lang.String name, Function<Out,java.lang.Object> extract, LoggingAdapter log)
Context-preserving variant ofakka.stream.javadsl.Flow.log
.<Out2> FlowWithContext<In,CtxIn,Out2,CtxOut,Mat>
map(Function<Out,Out2> f)
Context-preserving variant ofakka.stream.javadsl.Flow.map
.<Out2> FlowWithContext<In,CtxIn,Out2,CtxOut,Mat>
mapAsync(int parallelism, Function<Out,java.util.concurrent.CompletionStage<Out2>> f)
<Out2> FlowWithContext<In,CtxIn,Out2,CtxOut,Mat>
mapConcat(Function<Out,? extends java.lang.Iterable<Out2>> f)
Context-preserving variant ofakka.stream.javadsl.Flow.mapConcat
.<CtxOut2> FlowWithContext<In,CtxIn,Out,CtxOut2,Mat>
mapContext(Function<CtxOut,CtxOut2> extractContext)
Apply the given function to each context element (leaving the data elements unchanged).<Mat2> FlowWithContext<In,CtxIn,Out,CtxOut,Mat2>
mapMaterializedValue(Function<Mat,Mat2> f)
Context-preserving variant ofakka.stream.javadsl.Flow.mapMaterializedValue
.FlowWithContext<In,CtxIn,java.util.List<Out>,java.util.List<CtxOut>,Mat>
sliding(int n, int step)
Context-preserving variant ofakka.stream.javadsl.Flow.sliding
.int
sliding$default$2()
<Out2,CtxOut2,Mat2>
FlowWithContext<In,CtxIn,Out2,CtxOut2,Mat>via(Graph<FlowShape<Pair<Out,CtxOut>,Pair<Out2,CtxOut2>>,Mat2> viaFlow)
FlowWithContext<In,CtxIn,Out,CtxOut,Mat>
withAttributes(Attributes attr)
Context-preserving variant ofakka.stream.javadsl.Flow.withAttributes
.-
Methods inherited from class akka.stream.GraphDelegate
shape, traversalBuilder
-
-
-
-
Method Detail
-
create
public static <In,Ctx> FlowWithContext<In,Ctx,In,Ctx,NotUsed> create()
-
fromPairs
public static <In,CtxIn,Out,CtxOut,Mat> FlowWithContext<In,CtxIn,Out,CtxOut,Mat> fromPairs(Flow<Pair<In,CtxIn>,Pair<Out,CtxOut>,Mat> under)
Creates a FlowWithContext from a regular flow that operates onPair
elements.- Parameters:
under
- (undocumented)- Returns:
- (undocumented)
-
via
public <Out2,CtxOut2,Mat2> FlowWithContext<In,CtxIn,Out2,CtxOut2,Mat> via(Graph<FlowShape<Pair<Out,CtxOut>,Pair<Out2,CtxOut2>>,Mat2> viaFlow)
-
withAttributes
public FlowWithContext<In,CtxIn,Out,CtxOut,Mat> withAttributes(Attributes attr)
Context-preserving variant ofakka.stream.javadsl.Flow.withAttributes
.- Parameters:
attr
- (undocumented)- Returns:
- (undocumented)
- See Also:
akka.stream.javadsl.Flow.withAttributes
-
mapMaterializedValue
public <Mat2> FlowWithContext<In,CtxIn,Out,CtxOut,Mat2> mapMaterializedValue(Function<Mat,Mat2> f)
Context-preserving variant ofakka.stream.javadsl.Flow.mapMaterializedValue
.- Parameters:
f
- (undocumented)- Returns:
- (undocumented)
- See Also:
akka.stream.scaladsl.Flow.mapMaterializedValue
-
asFlow
public Flow<Pair<In,CtxIn>,Pair<Out,CtxOut>,Mat> asFlow()
Creates a regular flow of pairs (data, context).- Returns:
- (undocumented)
-
collect
public <Out2> FlowWithContext<In,CtxIn,Out2,CtxOut,Mat> collect(scala.PartialFunction<Out,Out2> pf)
Context-preserving variant ofakka.stream.javadsl.Flow.collect
.Note, that the context of elements that are filtered out is skipped as well.
- Parameters:
pf
- (undocumented)- Returns:
- (undocumented)
- See Also:
akka.stream.javadsl.Flow.collect
-
filter
public FlowWithContext<In,CtxIn,Out,CtxOut,Mat> filter(Predicate<Out> p)
Context-preserving variant ofakka.stream.javadsl.Flow.filter
.Note, that the context of elements that are filtered out is skipped as well.
- Parameters:
p
- (undocumented)- Returns:
- (undocumented)
- See Also:
akka.stream.javadsl.Flow.filter
-
filterNot
public FlowWithContext<In,CtxIn,Out,CtxOut,Mat> filterNot(Predicate<Out> p)
Context-preserving variant ofakka.stream.javadsl.Flow.filterNot
.Note, that the context of elements that are filtered out is skipped as well.
- Parameters:
p
- (undocumented)- Returns:
- (undocumented)
- See Also:
akka.stream.javadsl.Flow.filterNot
-
grouped
public FlowWithContext<In,CtxIn,java.util.List<Out>,java.util.List<CtxOut>,Mat> grouped(int n)
Context-preserving variant ofakka.stream.javadsl.Flow.grouped
.Each output group will be associated with a
Seq
of corresponding context elements.- Parameters:
n
- (undocumented)- Returns:
- (undocumented)
- See Also:
akka.stream.javadsl.Flow.grouped
-
map
public <Out2> FlowWithContext<In,CtxIn,Out2,CtxOut,Mat> map(Function<Out,Out2> f)
Context-preserving variant ofakka.stream.javadsl.Flow.map
.- Parameters:
f
- (undocumented)- Returns:
- (undocumented)
- See Also:
akka.stream.javadsl.Flow.map
-
mapAsync
public <Out2> FlowWithContext<In,CtxIn,Out2,CtxOut,Mat> mapAsync(int parallelism, Function<Out,java.util.concurrent.CompletionStage<Out2>> f)
-
mapConcat
public <Out2> FlowWithContext<In,CtxIn,Out2,CtxOut,Mat> mapConcat(Function<Out,? extends java.lang.Iterable<Out2>> f)
Context-preserving variant ofakka.stream.javadsl.Flow.mapConcat
.The context of the input element will be associated with each of the output elements calculated from this input element.
Example:
def dup(element: String) = Seq(element, element)
Input:
("a", 1) ("b", 2)
inputElements.mapConcat(dup)
Output:
("a", 1) ("a", 1) ("b", 2) ("b", 2)
- Parameters:
f
- (undocumented)- Returns:
- (undocumented)
- See Also:
akka.stream.javadsl.Flow.mapConcat
-
mapContext
public <CtxOut2> FlowWithContext<In,CtxIn,Out,CtxOut2,Mat> mapContext(Function<CtxOut,CtxOut2> extractContext)
Apply the given function to each context element (leaving the data elements unchanged).- Parameters:
extractContext
- (undocumented)- Returns:
- (undocumented)
-
sliding
public FlowWithContext<In,CtxIn,java.util.List<Out>,java.util.List<CtxOut>,Mat> sliding(int n, int step)
Context-preserving variant ofakka.stream.javadsl.Flow.sliding
.Each output group will be associated with a
Seq
of corresponding context elements.- Parameters:
n
- (undocumented)step
- (undocumented)- Returns:
- (undocumented)
- See Also:
akka.stream.javadsl.Flow.sliding
-
sliding$default$2
public int sliding$default$2()
-
log
public FlowWithContext<In,CtxIn,Out,CtxOut,Mat> log(java.lang.String name, Function<Out,java.lang.Object> extract, LoggingAdapter log)
Context-preserving variant ofakka.stream.javadsl.Flow.log
.- Parameters:
name
- (undocumented)extract
- (undocumented)log
- (undocumented)- Returns:
- (undocumented)
- See Also:
akka.stream.javadsl.Flow.log
-
log
public FlowWithContext<In,CtxIn,Out,CtxOut,Mat> log(java.lang.String name, Function<Out,java.lang.Object> extract)
Context-preserving variant ofakka.stream.javadsl.Flow.log
.- Parameters:
name
- (undocumented)extract
- (undocumented)- Returns:
- (undocumented)
- See Also:
akka.stream.javadsl.Flow.log
-
log
public FlowWithContext<In,CtxIn,Out,CtxOut,Mat> log(java.lang.String name, LoggingAdapter log)
Context-preserving variant ofakka.stream.javadsl.Flow.log
.- Parameters:
name
- (undocumented)log
- (undocumented)- Returns:
- (undocumented)
- See Also:
akka.stream.javadsl.Flow.log
-
log
public FlowWithContext<In,CtxIn,Out,CtxOut,Mat> log(java.lang.String name)
Context-preserving variant ofakka.stream.javadsl.Flow.log
.- Parameters:
name
- (undocumented)- Returns:
- (undocumented)
- See Also:
akka.stream.javadsl.Flow.log
-
-