IMessageAdapterAsyncExtensions
Async extensions for IMessageAdapter.
Methods
public static IAsyncEnumerable<T> ConnectAndDownloadAsync<T>(IMessageAdapter adapter, ISubscriptionMessage subscription)
result = IMessageAdapterAsyncExtensions.ConnectAndDownloadAsync(adapter, subscription)
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.
- adapter
- IMessageAdapter
- subscription
- ISubscriptionMessage
Returns: Async stream of messages.
public static ValueTask ConnectAsync(IMessageAdapter adapter, CancellationToken cancellationToken)
result = IMessageAdapterAsyncExtensions.ConnectAsync(adapter, cancellationToken)
Async connect for IMessageAdapter via ConnectMessage. Completes when an outgoing ConnectMessage without error is received.
- adapter
- IMessageAdapter
- cancellationToken
- CancellationToken
Returns: ValueTask
public static ValueTask DisconnectAsync(IMessageAdapter adapter, CancellationToken cancellationToken)
result = IMessageAdapterAsyncExtensions.DisconnectAsync(adapter, cancellationToken)
Async disconnect for IMessageAdapter via DisconnectMessage. Completes when an outgoing DisconnectMessage without error is received.
- adapter
- IMessageAdapter
- cancellationToken
- CancellationToken
Returns: ValueTask
public static IAsyncEnumerable<ExecutionMessage> RegisterOrderAndWaitAsync(IMessageAdapter adapter, OrderRegisterMessage order)
result = IMessageAdapterAsyncExtensions.RegisterOrderAndWaitAsync(adapter, order)
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).
- adapter
- IMessageAdapter
- order
- OrderRegisterMessage to register.
Returns: Async stream of ExecutionMessage with order info and trades.
public static ValueTask SubscribeAsync(IMessageAdapter adapter, ISubscriptionMessage subscription, CancellationToken cancellationToken)
result = IMessageAdapterAsyncExtensions.SubscribeAsync(adapter, subscription, cancellationToken)
Subscribe, wait for start/finish, and keep it active until is canceled. For historical subscriptions completes when finished, for live completes after cancellation and unsubscribe processed.
- adapter
- IMessageAdapter
- subscription
- ISubscriptionMessage
- cancellationToken
- CancellationToken
Returns: ValueTask
public static IAsyncEnumerable<T> SubscribeAsync<T>(IMessageAdapter adapter, ISubscriptionMessage subscription)
result = IMessageAdapterAsyncExtensions.SubscribeAsync(adapter, subscription)
Subscribe and get an async stream of outgoing data messages of type associated with the given . Use .WithCancellation(token) to pass cancellation token.
- adapter
- IMessageAdapter
- subscription
- ISubscriptionMessage
Returns: Async stream of messages.