Class RowTransformation<TInput, TOutput>

The RowTransformation will apply the transformation function to each row of data.

Inherited Members
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: ETLBox.DataFlow.Transformations
Assembly: ETLBox.dll
Syntax
    public class RowTransformation<TInput, TOutput> : DataFlowTransformation<TInput, TOutput>, ILoggableTask, IDataFlowLogging, IDataFlowTransformation<TInput, TOutput>, IDataFlowSource<TOutput>, IDataFlowSource, IDataFlowDestination<TInput>, IDataFlowDestination, IDataFlowComponent
Type Parameters
NameDescription
TInput

The type of ingoing data.

TOutput

The type of outgoing data.

Examples
RowTransformation<InputType, OutputType> trans = new RowTransformation<InputType, OutputType>(
row => {
    return new OutputType() { Value = row.Value + 1 };
});

Constructors

RowTransformation()

Declaration
    public RowTransformation()

RowTransformation(Func<TInput, TOutput>)

Declaration
    public RowTransformation(Func<TInput, TOutput> transformationFunc)
Parameters
TypeNameDescription
System.Func<TInput, TOutput>transformationFunc

Will set the TransformationFunc

RowTransformation(Func<TInput, TOutput>, Action)

Declaration
    public RowTransformation(Func<TInput, TOutput> transformationFunc, Action initAction)
Parameters
TypeNameDescription
System.Func<TInput, TOutput>transformationFunc

Will set the TransformationFunc

System.ActioninitAction

Will set the InitAction

Fields

WasInitActionInvoked

Declaration
    protected bool WasInitActionInvoked
Field Value
TypeDescription
System.Boolean

Properties

InitAction

The init action is executed shortly before the first data row is processed.

Declaration
    public Action InitAction { get; set; }
Property Value
TypeDescription
System.Action

SourceBlock

SourceBlock from the underlying TPL.Dataflow which is used as output buffer for the component.

Declaration
    public override ISourceBlock<TOutput> SourceBlock { get; }
Property Value
TypeDescription
System.Threading.Tasks.Dataflow.ISourceBlock<TOutput>
Overrides
ETLBox.DataFlow.DataFlowSource<TOutput>.SourceBlock

TargetBlock

TargetBlock from the underlying TPL.Dataflow which is used as input buffer for the component.

Declaration
    public override ITargetBlock<TInput> TargetBlock { get; }
Property Value
TypeDescription
System.Threading.Tasks.Dataflow.ITargetBlock<TInput>
Overrides
ETLBox.DataFlow.DataFlowTransformation<TInput, TOutput>.TargetBlock

TaskName

A name to identify the task or component. Every component or task comes with a default name that can be overwritten.

Declaration
    public override string TaskName { get; set; }
Property Value
TypeDescription
System.String
Overrides

TransformationFunc

Each ingoing row will be transformed using this function.

Declaration
    public Func<TInput, TOutput> TransformationFunc { get; set; }
Property Value
TypeDescription
System.Func<TInput, TOutput>

Methods

CheckParameter()

Declaration
    protected override void CheckParameter()
Overrides

CleanUpOnFaulted(Exception)

Declaration
    protected override void CleanUpOnFaulted(Exception e)
Parameters
TypeNameDescription
System.Exceptione
Overrides

CleanUpOnSuccess()

Declaration
    protected override void CleanUpOnSuccess()
Overrides

InitComponent()

Declaration
    protected override void InitComponent()
Overrides

InvokeInitActionOnce()

Declaration
    protected virtual void InvokeInitActionOnce()

InvokeTransformationFunc(TInput)

Declaration
    protected virtual TOutput InvokeTransformationFunc(TInput row)
Parameters
TypeNameDescription
TInputrow
Returns
TypeDescription
TOutput

Implements