Table of Contents

Class IMessageAdapterAsyncExtensions

Namespace
StockSharp.Messages
Assembly
StockSharp.Messages.dll

Async extensions for IMessageAdapter.

public static class IMessageAdapterAsyncExtensions
Inheritance
IMessageAdapterAsyncExtensions
Inherited Members

Methods

ConnectAndDownloadAsync<T>(IMessageAdapter, ISubscriptionMessage)

Connect, subscribe and get an async stream of messages, then disconnect on completion. This is a convenience method that handles the full lifecycle: connect -> subscribe -> disconnect.

public static IAsyncEnumerable<T> ConnectAndDownloadAsync<T>(this IMessageAdapter adapter, ISubscriptionMessage subscription) where T : Message

Parameters

adapter IMessageAdapter

IMessageAdapter

subscription ISubscriptionMessage

ISubscriptionMessage

Returns

IAsyncEnumerable<T>

Async stream of messages.

Type Parameters

T

Message type to receive.

ConnectAsync(IMessageAdapter, CancellationToken)

Async connect for IMessageAdapter via ConnectMessage. Completes when an outgoing ConnectMessage without error is received.

public static ValueTask ConnectAsync(this IMessageAdapter adapter, CancellationToken cancellationToken)

Parameters

adapter IMessageAdapter

IMessageAdapter

cancellationToken CancellationToken

CancellationToken

Returns

ValueTask

ValueTask

DisconnectAsync(IMessageAdapter, CancellationToken)

Async disconnect for IMessageAdapter via DisconnectMessage. Completes when an outgoing DisconnectMessage without error is received.

public static ValueTask DisconnectAsync(this IMessageAdapter adapter, CancellationToken cancellationToken)

Parameters

adapter IMessageAdapter

IMessageAdapter

cancellationToken CancellationToken

CancellationToken

Returns

ValueTask

ValueTask

RegisterOrderAsync(IMessageAdapter, OrderRegisterMessage)

Register order and get an async stream of ExecutionMessage (order state changes and own trades). When cancellation token (via .WithCancellation(token)) is canceled, the order is automatically canceled. Completes when the order reaches a final state (Done or Failed).

public static IAsyncEnumerable<ExecutionMessage> RegisterOrderAsync(this IMessageAdapter adapter, OrderRegisterMessage order)

Parameters

adapter IMessageAdapter

IMessageAdapter

order OrderRegisterMessage

OrderRegisterMessage to register.

Returns

IAsyncEnumerable<ExecutionMessage>

Async stream of ExecutionMessage with order info and trades.

SubscribeAsync(IMessageAdapter, ISubscriptionMessage, CancellationToken)

Subscribe, wait for start/finish, and keep it active until cancellationToken is canceled. For historical subscriptions completes when finished, for live completes after cancellation and unsubscribe processed.

public static ValueTask SubscribeAsync(this IMessageAdapter adapter, ISubscriptionMessage subscription, CancellationToken cancellationToken)

Parameters

adapter IMessageAdapter

IMessageAdapter

subscription ISubscriptionMessage

ISubscriptionMessage

cancellationToken CancellationToken

CancellationToken

Returns

ValueTask

ValueTask

SubscribeAsync<T>(IMessageAdapter, ISubscriptionMessage)

Subscribe and get an async stream of outgoing data messages of type T associated with the given subscription. Use .WithCancellation(token) to pass cancellation token.

public static IAsyncEnumerable<T> SubscribeAsync<T>(this IMessageAdapter adapter, ISubscriptionMessage subscription)

Parameters

adapter IMessageAdapter

IMessageAdapter

subscription ISubscriptionMessage

ISubscriptionMessage

Returns

IAsyncEnumerable<T>

Async stream of messages.

Type Parameters

T