Interface IDataStreamerTarget<T>
Represents an entity that can be used as a target for streaming data.
public interface IDataStreamerTarget<T>
Type Parameters
TData type.
Methods
StreamDataAsync(IAsyncEnumerable<DataStreamerItem<T>>, DataStreamerOptions?, CancellationToken)
Streams data into the underlying table.
Task StreamDataAsync(IAsyncEnumerable<DataStreamerItem<T>> data, DataStreamerOptions? options = null, CancellationToken cancellationToken = default)
Parameters
dataIAsyncEnumerable<DataStreamerItem<T>>Data.
optionsDataStreamerOptionsStreamer options.
cancellationTokenCancellationTokenCancellation token.
Returns
StreamDataAsync(IAsyncEnumerable<T>, DataStreamerOptions?, CancellationToken)
Streams data into the underlying table.
Task StreamDataAsync(IAsyncEnumerable<T> data, DataStreamerOptions? options = null, CancellationToken cancellationToken = default)
Parameters
dataIAsyncEnumerable<T>Data.
optionsDataStreamerOptionsStreamer options.
cancellationTokenCancellationTokenCancellation token.
Returns
StreamDataAsync<TSource, TPayload, TArg>(IAsyncEnumerable<TSource>, Func<TSource, T>, Func<TSource, TPayload>, ReceiverDescriptor<TArg>, TArg, DataStreamerOptions?, CancellationToken)
Streams data into the underlying table with a receiver, ignoring receiver results (if any).
Task StreamDataAsync<TSource, TPayload, TArg>(IAsyncEnumerable<TSource> data, Func<TSource, T> keySelector, Func<TSource, TPayload> payloadSelector, ReceiverDescriptor<TArg> receiver, TArg receiverArg, DataStreamerOptions? options = null, CancellationToken cancellationToken = default) where TPayload : notnull
Parameters
dataIAsyncEnumerable<TSource>Data.
keySelectorFunc<TSource, T>Key selector.
payloadSelectorFunc<TSource, TPayload>Payload selector.
receiverReceiverDescriptor<TArg>Receiver descriptor.
receiverArgTArgReceiver arg.
optionsDataStreamerOptionsStreamer options.
cancellationTokenCancellationTokenCancellation token.
Returns
Type Parameters
TSourceSource item type.
TPayloadPayload type.
TArgArgument type.
StreamDataAsync<TSource, TPayload, TArg, TResult>(IAsyncEnumerable<TSource>, ReceiverDescriptor<TPayload, TArg, TResult>, Func<TSource, T>, Func<TSource, TPayload>, TArg, DataStreamerOptions?, CancellationToken)
Streams data into the underlying table with a receiver that returns results.
IAsyncEnumerable<TResult> StreamDataAsync<TSource, TPayload, TArg, TResult>(IAsyncEnumerable<TSource> data, ReceiverDescriptor<TPayload, TArg, TResult> receiver, Func<TSource, T> keySelector, Func<TSource, TPayload> payloadSelector, TArg receiverArg, DataStreamerOptions? options = null, CancellationToken cancellationToken = default) where TPayload : notnull
Parameters
dataIAsyncEnumerable<TSource>Data.
receiverReceiverDescriptor<TPayload, TArg, TResult>Streamer receiver descriptor.
keySelectorFunc<TSource, T>Key selector.
payloadSelectorFunc<TSource, TPayload>Payload selector.
receiverArgTArgReceiver argument.
optionsDataStreamerOptionsStreamer options.
cancellationTokenCancellationTokenCancellation token.
Returns
- IAsyncEnumerable<TResult>
A IAsyncEnumerable<T> with the results from the receiver.
The resulting async enumerator applies back-pressure to the data source, so it should be either fully consumed or disposed to complete the streaming. Disposing the enumerator before it is fully consumed will ignore the remaining results.
Type Parameters
TSourceSource item type.
TPayloadPayload type.
TArgArgument type.
TResultResult type.
StreamDataAsync<TSource, TPayload, TArg, TResult>(IAsyncEnumerable<TSource>, Func<TSource, T>, Func<TSource, TPayload>, ReceiverDescriptor<TArg, TResult>, TArg, DataStreamerOptions?, CancellationToken)
Streams data into the underlying table with a receiver that returns results.
[Obsolete("Use StreamDataAsync<TSource, TPayload, TArg, TResult> with ReceiverDescriptor<TPayload, TArg, TResult> instead.")]
IAsyncEnumerable<TResult> StreamDataAsync<TSource, TPayload, TArg, TResult>(IAsyncEnumerable<TSource> data, Func<TSource, T> keySelector, Func<TSource, TPayload> payloadSelector, ReceiverDescriptor<TArg, TResult> receiver, TArg receiverArg, DataStreamerOptions? options = null, CancellationToken cancellationToken = default) where TPayload : notnull
Parameters
dataIAsyncEnumerable<TSource>Data.
keySelectorFunc<TSource, T>Key selector.
payloadSelectorFunc<TSource, TPayload>Payload selector.
receiverReceiverDescriptor<TArg, TResult>Streamer receiver descriptor.
receiverArgTArgReceiver argument.
optionsDataStreamerOptionsStreamer options.
cancellationTokenCancellationTokenCancellation token.
Returns
- IAsyncEnumerable<TResult>
A IAsyncEnumerable<T> with the results from the receiver.
The resulting async enumerator applies back-pressure to the data source, so it should be either fully consumed or disposed to complete the streaming. Disposing the enumerator before it is fully consumed will ignore the remaining results.
Type Parameters
TSourceSource item type.
TPayloadPayload type.
TArgArgument type.
TResultResult type.