BidiFlow

org.apache.pekko.stream.javadsl.BidiFlow
See theBidiFlow companion object
final class BidiFlow[I1, O1, I2, O2, Mat](delegate: BidiFlow[I1, O1, I2, O2, Mat]) extends Graph[BidiShape[I1, O1, I2, O2], Mat]

Attributes

Companion
object
Source
BidiFlow.scala
Graph
Supertypes
trait Graph[BidiShape[I1, O1, I2, O2], Mat]
class Object
trait Matchable
class Any

Members list

Type members

Inherited types

type Shape = BidiShape[I1, O1, I2, O2]

Type-level accessor for the shape parameter of this graph.

Type-level accessor for the shape parameter of this graph.

Attributes

Inherited from:
Graph
Source
Graph.scala

Value members

Concrete methods

override def addAttributes(attr: Attributes): BidiFlow[I1, O1, I2, O2, Mat]

Add the given attributes to this Source. Further calls to withAttributes will not remove these attributes. Note that this operation has no effect on an empty Flow (because the attributes apply only to the contained processing operators).

Add the given attributes to this Source. Further calls to withAttributes will not remove these attributes. Note that this operation has no effect on an empty Flow (because the attributes apply only to the contained processing operators).

Attributes

Definition Classes
Source
BidiFlow.scala
def asScala: BidiFlow[I1, O1, I2, O2, Mat]

Attributes

Source
BidiFlow.scala
override def async: BidiFlow[I1, O1, I2, O2, Mat]

Put an asynchronous boundary around this Flow

Put an asynchronous boundary around this Flow

Attributes

Definition Classes
Source
BidiFlow.scala
override def async(dispatcher: String): BidiFlow[I1, O1, I2, O2, Mat]

Put an asynchronous boundary around this Flow

Put an asynchronous boundary around this Flow

Value parameters

dispatcher

Run the graph on this dispatcher

Attributes

Definition Classes
Source
BidiFlow.scala
override def async(dispatcher: String, inputBufferSize: Int): BidiFlow[I1, O1, I2, O2, Mat]

Put an asynchronous boundary around this Flow

Put an asynchronous boundary around this Flow

Value parameters

dispatcher

Run the graph on this dispatcher

inputBufferSize

Set the input buffer to this size for the graph

Attributes

Definition Classes
Source
BidiFlow.scala
def atop[OO1, II2, Mat2](bidi: BidiFlow[O1, OO1, II2, I2, Mat2]): BidiFlow[I1, OO1, II2, O2, Mat]

Add the given BidiFlow as the next step in a bidirectional transformation pipeline. By convention protocol stacks are growing to the left: the right most is the bottom layer, the closest to the metal.

Add the given BidiFlow as the next step in a bidirectional transformation pipeline. By convention protocol stacks are growing to the left: the right most is the bottom layer, the closest to the metal.

   +----------------------------+
   | Resulting BidiFlow         |
   |                            |
   |  +------+        +------+  |
I1 ~~> |      |  ~O1~> |      | ~~> OO1
   |  | this |        | bidi |  |
O2 <~~ |      | <~I2~  |      | <~~ II2
   |  +------+        +------+  |
   +----------------------------+

The materialized value of the combined BidiFlow will be the materialized value of the current flow (ignoring the other BidiFlow’s value), use atopMat if a different strategy is needed.

Attributes

Source
BidiFlow.scala
def atop[OO1, II2, Mat2, M](bidi: BidiFlow[O1, OO1, II2, I2, Mat2], combine: Function2[Mat, Mat2, M]): BidiFlow[I1, OO1, II2, O2, M]

Add the given BidiFlow as the next step in a bidirectional transformation 161

Add the given BidiFlow as the next step in a bidirectional transformation 161

pipeline. By convention protocol stacks are growing to the left: the right most is the bottom layer, the closest to the metal.

   +----------------------------+
   | Resulting BidiFlow         |
   |                            |
   |  +------+        +------+  |
I1 ~~> |      |  ~O1~> |      | ~~> OO1
   |  | this |        | bidi |  |
O2 <~~ |      | <~I2~  |      | <~~ II2
   |  +------+        +------+  |
   +----------------------------+

The combine function is used to compose the materialized values of this flow and that flow into the materialized value of the resulting BidiFlow.

Attributes

Source
BidiFlow.scala
override def getAttributes: Attributes

Attributes

Definition Classes
Source
BidiFlow.scala
def join[Mat2](flow: Flow[O1, I2, Mat2]): Flow[I1, O2, Mat]

Add the given Flow as the final step in a bidirectional transformation pipeline. By convention protocol stacks are growing to the left: the right most is the bottom layer, the closest to the metal.

Add the given Flow as the final step in a bidirectional transformation pipeline. By convention protocol stacks are growing to the left: the right most is the bottom layer, the closest to the metal.

   +---------------------------+
   | Resulting Flow            |
   |                           |
   |  +------+        +------+ |
I1 ~~> |      |  ~O1~> |      | |
   |  | this |        | flow | |
O2 <~~ |      | <~I2~  |      | |
   |  +------+        +------+ |
   +---------------------------+

The materialized value of the combined Flow will be the materialized value of the current flow (ignoring the other Flow’s value), use joinMat if a different strategy is needed.

Attributes

Source
BidiFlow.scala
def join[Mat2, M](flow: Flow[O1, I2, Mat2], combine: Function2[Mat, Mat2, M]): Flow[I1, O2, M]

Add the given Flow as the final step in a bidirectional transformation pipeline. By convention protocol stacks are growing to the left: the right most is the bottom layer, the closest to the metal.

Add the given Flow as the final step in a bidirectional transformation pipeline. By convention protocol stacks are growing to the left: the right most is the bottom layer, the closest to the metal.

   +---------------------------+
   | Resulting Flow            |
   |                           |
   |  +------+        +------+ |
I1 ~~> |      |  ~O1~> |      | |
   |  | this |        | flow | |
O2 <~~ |      | <~I2~  |      | |
   |  +------+        +------+ |
   +---------------------------+

The combine function is used to compose the materialized values of this flow and that flow into the materialized value of the resulting Flow.

Attributes

Source
BidiFlow.scala
def mapMaterializedValue[Mat2](f: Function[Mat, Mat2]): BidiFlow[I1, O1, I2, O2, Mat2]

Transform only the materialized value of this BidiFlow, leaving all other properties as they were.

Transform only the materialized value of this BidiFlow, leaving all other properties as they were.

Attributes

Source
BidiFlow.scala
override def named(name: String): BidiFlow[I1, O1, I2, O2, Mat]

Add a name attribute to this Flow.

Add a name attribute to this Flow.

Attributes

Definition Classes
Source
BidiFlow.scala
def reversed: BidiFlow[I2, O2, I1, O1, Mat]

Turn this BidiFlow around by 180 degrees, logically flipping it upside down in a protocol stack.

Turn this BidiFlow around by 180 degrees, logically flipping it upside down in a protocol stack.

Attributes

Source
BidiFlow.scala
override def shape: BidiShape[I1, O1, I2, O2]

The shape of a graph is all that is externally visible: its inlets and outlets.

The shape of a graph is all that is externally visible: its inlets and outlets.

Attributes

Definition Classes
Source
BidiFlow.scala
override def traversalBuilder: TraversalBuilder

INTERNAL API.

INTERNAL API.

Every materializable element must be backed by a stream layout module

Attributes

Definition Classes
Source
BidiFlow.scala
override def withAttributes(attr: Attributes): BidiFlow[I1, O1, I2, O2, Mat]

Change the attributes of this Source to the given ones and seal the list of attributes. This means that further calls will not be able to remove these attributes, but instead add new ones. Note that this operation has no effect on an empty Flow (because the attributes apply only to the contained processing operators).

Change the attributes of this Source to the given ones and seal the list of attributes. This means that further calls will not be able to remove these attributes, but instead add new ones. Note that this operation has no effect on an empty Flow (because the attributes apply only to the contained processing operators).

Attributes

Definition Classes
Source
BidiFlow.scala