Class BidiFlow<TIn1, TOut1, TIn2, TOut2, TMat>
TBD
Implements
Inherited Members
Namespace: Akka.Streams.Dsl
Assembly: Akka.Streams.dll
Syntax
public class BidiFlow<TIn1, TOut1, TIn2, TOut2, TMat> : IGraph<BidiShape<TIn1, TOut1, TIn2, TOut2>, TMat>, IGraph<BidiShape<TIn1, TOut1, TIn2, TOut2>>
Type Parameters
Name | Description |
---|---|
TIn1 | TBD |
TOut1 | TBD |
TIn2 | TBD |
TOut2 | TBD |
TMat | TBD |
Constructors
| Improve this Doc View SourceBidiFlow(IModule)
TBD
Declaration
public BidiFlow(IModule module)
Parameters
Type | Name | Description |
---|---|---|
IModule | module | TBD |
Properties
| Improve this Doc View SourceModule
TBD
Declaration
public IModule Module { get; }
Property Value
Type | Description |
---|---|
IModule |
Shape
TBD
Declaration
public BidiShape<TIn1, TOut1, TIn2, TOut2> Shape { get; }
Property Value
Type | Description |
---|---|
BidiShape<TIn1, TOut1, TIn2, TOut2> |
Methods
| Improve this Doc View SourceAddAttributes(Attributes)
TBD
Declaration
public IGraph<BidiShape<TIn1, TOut1, TIn2, TOut2>, TMat> AddAttributes(Attributes attributes)
Parameters
Type | Name | Description |
---|---|---|
Attributes | attributes | TBD |
Returns
Type | Description |
---|---|
IGraph<BidiShape<TIn1, TOut1, TIn2, TOut2>, TMat> | TBD |
Async()
TBD
Declaration
public IGraph<BidiShape<TIn1, TOut1, TIn2, TOut2>, TMat> Async()
Returns
Type | Description |
---|---|
IGraph<BidiShape<TIn1, TOut1, TIn2, TOut2>, TMat> | TBD |
Atop<TOut12, TIn21, TMat2>(BidiFlow<TOut1, TOut12, TIn21, TIn2, TMat2>)
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<TIn1, TOut1, TIn2, TOut2, TMat> will be the materialized value of the current flow (ignoring the other BidiFlow’s value), use AtopMat<TOut12, TIn21, TMat2, TMat3>(BidiFlow<TOut1, TOut12, TIn21, TIn2, TMat2>, Func<TMat, TMat2, TMat3>) if a different strategy is needed.
Declaration
public BidiFlow<TIn1, TOut12, TIn21, TOut2, TMat> Atop<TOut12, TIn21, TMat2>(BidiFlow<TOut1, TOut12, TIn21, TIn2, TMat2> bidi)
Parameters
Type | Name | Description |
---|---|---|
BidiFlow<TOut1, TOut12, TIn21, TIn2, TMat2> | bidi | TBD |
Returns
Type | Description |
---|---|
BidiFlow<TIn1, TOut12, TIn21, TOut2, TMat> | TBD |
Type Parameters
Name | Description |
---|---|
TOut12 | TBD |
TIn21 | TBD |
TMat2 | TBD |
AtopMat<TOut12, TIn21, TMat2, TMat3>(BidiFlow<TOut1, TOut12, TIn21, TIn2, TMat2>, Func<TMat, TMat2, TMat3>)
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 combine
function is used to compose the materialized values of this flow and that
flow into the materialized value of the resulting BidiFlow.
Declaration
public BidiFlow<TIn1, TOut12, TIn21, TOut2, TMat3> AtopMat<TOut12, TIn21, TMat2, TMat3>(BidiFlow<TOut1, TOut12, TIn21, TIn2, TMat2> bidi, Func<TMat, TMat2, TMat3> combine)
Parameters
Type | Name | Description |
---|---|---|
BidiFlow<TOut1, TOut12, TIn21, TIn2, TMat2> | bidi | TBD |
Func<TMat, TMat2, TMat3> | combine | TBD |
Returns
Type | Description |
---|---|
BidiFlow<TIn1, TOut12, TIn21, TOut2, TMat3> | TBD |
Type Parameters
Name | Description |
---|---|
TOut12 | TBD |
TIn21 | TBD |
TMat2 | TBD |
TMat3 | TBD |
Join<TMat2>(Flow<TOut1, TIn2, TMat2>)
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<TIn, TOut, TMat> will be the materialized value of the current flow (ignoring the other Flow’s value), use JoinMat<TMat2, TMat3>(Flow<TOut1, TIn2, TMat2>, Func<TMat, TMat2, TMat3>) if a different strategy is needed.
Declaration
public Flow<TIn1, TOut2, TMat> Join<TMat2>(Flow<TOut1, TIn2, TMat2> flow)
Parameters
Type | Name | Description |
---|---|---|
Flow<TOut1, TIn2, TMat2> | flow | TBD |
Returns
Type | Description |
---|---|
Flow<TIn1, TOut2, TMat> | TBD |
Type Parameters
Name | Description |
---|---|
TMat2 | TBD |
JoinMat<TMat2, TMat3>(Flow<TOut1, TIn2, TMat2>, Func<TMat, TMat2, TMat3>)
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<TIn, TOut, TMat>.
Declaration
public Flow<TIn1, TOut2, TMat3> JoinMat<TMat2, TMat3>(Flow<TOut1, TIn2, TMat2> flow, Func<TMat, TMat2, TMat3> combine)
Parameters
Type | Name | Description |
---|---|---|
Flow<TOut1, TIn2, TMat2> | flow | TBD |
Func<TMat, TMat2, TMat3> | combine | TBD |
Returns
Type | Description |
---|---|
Flow<TIn1, TOut2, TMat3> | TBD |
Type Parameters
Name | Description |
---|---|
TMat2 | TBD |
TMat3 | TBD |
Named(String)
TBD
Declaration
public IGraph<BidiShape<TIn1, TOut1, TIn2, TOut2>, TMat> Named(string name)
Parameters
Type | Name | Description |
---|---|---|
String | name | TBD |
Returns
Type | Description |
---|---|
IGraph<BidiShape<TIn1, TOut1, TIn2, TOut2>, TMat> | TBD |
Reversed()
Turn this BidiFlow around by 180 degrees, logically flipping it upside down in a protocol stack.
Declaration
public BidiFlow<TIn2, TOut2, TIn1, TOut1, TMat> Reversed()
Returns
Type | Description |
---|---|
BidiFlow<TIn2, TOut2, TIn1, TOut1, TMat> | TBD |
WithAttributes(Attributes)
TBD
Declaration
public IGraph<BidiShape<TIn1, TOut1, TIn2, TOut2>, TMat> WithAttributes(Attributes attributes)
Parameters
Type | Name | Description |
---|---|---|
Attributes | attributes | TBD |
Returns
Type | Description |
---|---|
IGraph<BidiShape<TIn1, TOut1, TIn2, TOut2>, TMat> | TBD |