Table of Contents

Interface IPipelineSource<T>

Namespace
Pipelinez.Core.Source
Assembly
Pipelinez.dll

Defines a pipeline source that can publish records into the pipeline runtime.

public interface IPipelineSource<T> : IFlowSource<PipelineContainer<T>> where T : PipelineRecord

Type Parameters

T

The pipeline record type produced by the source.

Inherited Members

Properties

Completion

Gets a task that completes when the source has finished publishing records.

Task Completion { get; }

Property Value

Task

Methods

Complete()

Marks the source as complete so no additional records will be published.

void Complete()

Initialize(Pipeline<T>)

Initializes the source with its parent pipeline.

void Initialize(Pipeline<T> parentPipeline)

Parameters

parentPipeline Pipeline<T>

The owning pipeline.

OnPipelineContainerComplete(object, PipelineContainerCompletedEventHandlerArgs<PipelineContainer<T>>)

Handles notification that a published container completed successfully.

void OnPipelineContainerComplete(object sender, PipelineContainerCompletedEventHandlerArgs<PipelineContainer<T>> e)

Parameters

sender object

The event sender.

e PipelineContainerCompletedEventHandlerArgs<PipelineContainer<T>>

The completed container event arguments.

PublishAsync(T)

Publishes a record using the pipeline's default flow-control behavior.

Task PublishAsync(T record)

Parameters

record T

The record to publish.

Returns

Task

PublishAsync(T, PipelinePublishOptions)

Publishes a record using explicit publish options.

Task<PipelinePublishResult> PublishAsync(T record, PipelinePublishOptions options)

Parameters

record T

The record to publish.

options PipelinePublishOptions

The publish options to apply.

Returns

Task<PipelinePublishResult>

The publish result.

PublishAsync(T, MetadataCollection)

Publishes a record with explicit metadata using the pipeline's default flow-control behavior.

Task PublishAsync(T record, MetadataCollection metadata)

Parameters

record T

The record to publish.

metadata MetadataCollection

The metadata to attach to the record.

Returns

Task

PublishAsync(T, MetadataCollection, PipelinePublishOptions)

Publishes a record with explicit metadata and publish options.

Task<PipelinePublishResult> PublishAsync(T record, MetadataCollection metadata, PipelinePublishOptions options)

Parameters

record T

The record to publish.

metadata MetadataCollection

The metadata to attach to the record.

options PipelinePublishOptions

The publish options to apply.

Returns

Task<PipelinePublishResult>

The publish result.

StartAsync(CancellationTokenSource)

Starts the source execution loop.

Task StartAsync(CancellationTokenSource cancellationToken)

Parameters

cancellationToken CancellationTokenSource

The runtime cancellation source used to stop the source.

Returns

Task