Class DataFlowExecutableSource<TOutput>
Base implementation for a source that can be executed.
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
Assembly: ETLBox.dll
Syntax
public abstract class DataFlowExecutableSource<TOutput> : DataFlowSource<TOutput>, ILoggableTask, IDataFlowLogging, IDataFlowExecutableSource<TOutput>, IDataFlowSource<TOutput>, IDataFlowSource, IDataFlowComponent, IDataFlowExecutableSource
Type Parameters
Name | Description |
---|---|
TOutput |
Fields
SourceTask
Declaration
protected Task SourceTask
Field Value
Type | Description |
---|---|
System.Threading.Tasks.Task |
Properties
Buffer
Declaration
protected BufferBlock<TOutput> Buffer { get; set; }
Property Value
Type | Description |
---|---|
System.Threading.Tasks.Dataflow.BufferBlock<TOutput> |
CompleteManually
Declaration
protected virtual bool CompleteManually { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
Limit
Reads data from the source until the limit is reached. Default is 0 (=no limit).
Declaration
public int Limit { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
ProgressCountIsInLimit
Declaration
protected bool ProgressCountIsInLimit { get; }
Property Value
Type | Description |
---|---|
System.Boolean |
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
Type | Description |
---|---|
System.Threading.Tasks.Dataflow.ISourceBlock<TOutput> |
Overrides
ETLBox.DataFlow.DataFlowSource<TOutput>.SourceBlock
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
public void Execute()
ExecuteAsync()
Starts the data flow asynchronously. This method will return an awaitable task that completes or faults when the flow ran to completion.
Declaration
public Task ExecuteAsync()
Returns
Type | Description |
---|---|
System.Threading.Tasks.Task |
InitComponent()
Declaration
protected override void InitComponent()
Overrides
OnExecutionDoAsyncWork()
Declaration
protected abstract void OnExecutionDoAsyncWork()
OnExecutionDoSynchronousWork()
Declaration
protected abstract void OnExecutionDoSynchronousWork()
Post()
Starts the data flow synchronously. This method will return when all data was posted into the flow
Declaration
public void Post()