Class DataFlowExecutableSource<TOutput>
Base implementation for a source that can be executed.
Inheritance
DataFlowExecutableSource<TOutput>
Namespace: ETLBox.DataFlow
Assembly: ETLBox.dll
Syntax
public abstract class DataFlowExecutableSource<TOutput> : DataFlowSource<TOutput>, IDataFlowLogging, IDataFlowExecutableSource<TOutput>, IDataFlowSource<TOutput>, IDataFlowExecutableSource, IDataFlowSource, IDataFlowComponent, ILoggableTask
Type Parameters
Fields
SourceTask
Declaration
protected Task SourceTask
Field Value
Properties
Buffer
Declaration
protected BufferBlock<TOutput> Buffer { get; set; }
Property Value
CompleteManually
Declaration
protected virtual bool CompleteManually { get; set; }
Property Value
Limit
Reads data from the source until the limit is reached. Default is 0 (=no limit).
Declaration
public int Limit { get; set; }
Property Value
ProgressCountIsExceedingLimit
Declaration
protected bool ProgressCountIsExceedingLimit { get; }
Property Value
ProgressCountIsInLimit
Declaration
protected bool ProgressCountIsInLimit { get; }
Property Value
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
Overrides
Methods
Execute()
Starts the data flow for all connected components (also for other sources in the network).
Waits until all destinations run to completion.
Declaration
Execute(CancellationToken)
Declaration
public void Execute(CancellationToken cancellationToken)
Parameters
Type | Name | Description |
---|
CancellationToken | cancellationToken | A cancellation token which can be used to cancel the task of component (and all subsequent components in the flow) |
ExecuteAsync()
Starts the data flow asynchronously.
Declaration
public Task ExecuteAsync()
Returns
Type | Description |
---|
Task | Returns an awaitable task that completes or faults when the flow ran to completion. |
ExecuteAsync(CancellationToken)
Starts the data flow asynchronously.
Declaration
public Task ExecuteAsync(CancellationToken cancellationToken)
Parameters
Type | Name | Description |
---|
CancellationToken | cancellationToken | A cancellation token which can be used to cancel the task of component (and all subsequent components in the flow) |
Returns
Type | Description |
---|
Task | Returns an awaitable task that completes or faults when the flow ran to completion. |
InitComponent()
Declaration
protected override void InitComponent()
Overrides
OnExecutionDoAsyncWork()
Declaration
protected abstract void OnExecutionDoAsyncWork()
StartAsync(CancellationToken?)
Starts the source asynchronously. Will return only the task for the source component, which completes when all data was posted
into the data flow.
Declaration
public Task StartAsync(CancellationToken? cancellationToken = null)
Parameters
Type | Name | Description |
---|
CancellationToken? | cancellationToken | A cancellation token which can be used to cancel the task of component (and all subsequent components in the flow) |
Returns
Type | Description |
---|
Task | Returns an awaitable task that completes or faults when the source ran to completion. |
Implements