Class MulticastTransform<TInputOutput>
A dataflow worker with one input port and one or more output ports, all of the same type, that sends all input rows to all output ports.
Note: All mapped column data types must support multi-copy, unless there is only a single output port or you supply a custom copy function to the worker.
With a single output port, the incoming rows are simply forwarded to the output port.
Note: Use the factory methods in MulticastTransformFactory to create instances of this class.
Note that output ports can be added after the worker is created (but before it or its siblings have started) by repeatedly calling Create<TOutput>(String). This can be particularly useful when generating workers in a loop.
Implements
Inherited Members
Namespace: actionETL
Assembly: actionETL.dll
Syntax
public class MulticastTransform<TInputOutput> : WorkerBase<MulticastTransform<TInputOutput>>, IDisposeOnFinished where TInputOutput : class
Type Parameters
Name | Description |
---|---|
TInputOutput | The type of each incoming and outgoing row. |
Properties
Input
Gets the input port for consuming rows from the upstream worker.
Declaration
public InputPort<TInputOutput> Input { get; }
Property Value
Type | Description |
---|---|
InputPort<TInputOutput> |
TypedOutputs
Gets the typed output ports.
Declaration
public OutputPortCollection<TInputOutput> TypedOutputs { get; }
Property Value
Type | Description |
---|---|
OutputPortCollection<TInputOutput> |
Methods
RunAsync()
This method can be overridden to add custom functionality to the derived worker that runs before
and after the main processing. In this case, the base class base.RunAsync()
must
be called for the worker to function correctly.
Typically, this worker is used without overriding this method.
Declaration
protected override async Task<OutcomeStatus> RunAsync()
Returns
Type | Description |
---|---|
Task<OutcomeStatus> | A |