Class RowActionTransform<TInputError, TOutput>
A dataflow transform worker which executes a callback for each incoming row. The callback is passed the row as a parameter, and the return value controls whether to send zero or one row (which can be of a different type) to the output, or to the error output. When outputting a row, the callback is responsible for either allocating a new output row, or if appropriate cast the input row to the output type, before passing it to the downstream worker.
Note: Use the factory methods in RowActionTransformFactory to create instances of this class.
If the function throws an exception, the input row will be rejected to the
ErrorOutput port.
Use RowActionTransform<TInputOutputError> instead if the input and output types are the same.
The input port uses the Default policy. Consider whether this is appropriate, or should be overridden, see BufferingMode for further details.
Also see the RowActionTransform example.
Note that this worker does not support asynchronous row methods. If that is needed, consider using RowsActionTransform<TInputError, TOutput> or RowsTransformBase<TDerived, TInput, TOutput, TError> instead.
To create a transform without any ErrorOutput, consider inheriting from
RowsTransformBase<TDerived, TInput, TOutput>.
Inheritance
Implements
Inherited Members
Namespace: actionETL
Assembly: actionETL.dll
Syntax
public class RowActionTransform<TInputError, TOutput> : RowTransformBase<RowActionTransform<TInputError, TOutput>, TInputError, TOutput>, IDisposeOnFinished where TInputError : class where TOutput : class
Type Parameters
| Name | Description |
|---|---|
| TInputError | The type of each |
| TOutput | The type of each |
Methods
OnInputRow(TInputError)
For internal use.
Declaration
protected sealed override (TransformRowTreatment, TOutput) OnInputRow(TInputError inputRow)
Parameters
| Type | Name | Description |
|---|---|---|
| TInputError | inputRow | Incoming row. |
Returns
| Type | Description |
|---|---|
| (T1, T2)<TransformRowTreatment, TOutput> |