AdapterRouter

StockSharp.Algo.Basket

Default implementation of IAdapterRouter.

Implements: IAdapterRouter

Constructors

AdapterRouter(IOrderRoutingState, Func<IMessageAdapter, IMessageAdapter>, CandleBuilderProvider, Func<bool>)

Initializes a new instance of AdapterRouter.

orderRouting
Order routing state.
getUnderlyingAdapter
Function to unwrap adapter to underlying.
candleBuilderProvider
Candle builder provider for subscription filtering.
levelExtend
Function returning Level1Extend setting.

Methods

AddMessageTypeAdapter(MessageTypes, IMessageAdapter)

Add adapter for specified message type.

AddNotSupported(long, IMessageAdapter)

Add adapter to non-supported set for a transaction (for retry logic).

AddOrderAdapter(long, IMessageAdapter)

Add order transaction to adapter mapping.

AddPortfolioAdapter(string, IMessageAdapter)

Add portfolio adapter mapping directly. Used during Load.

AddSecurityAdapter(ValueTuple<SecurityId, DataType>, IMessageAdapter)

Add security adapter mapping directly. Used during Load.

Clear()

Clears all adapter states and resets current state to Disconnected.

ClearPortfolioAdapters()

Clear portfolio adapters cache. Used during Load.

ClearSecurityAdapters()

Clear security adapters cache. Used during Load.

GetAdapters(Message, Func<IMessageAdapter, IMessageAdapter>) : ValueTuple<IMessageAdapter[], bool>

Get adapters for a message based on message type, security, and filtering.

message
Message to route.
getWrapper
Function to resolve wrapper adapter from underlying adapter.

Returns: Matched adapters array and whether supported-message filtering was skipped.

GetPortfolioAdapter(string, Func<IMessageAdapter, IMessageAdapter>) : IMessageAdapter

Get adapter for portfolio-based routing.

portfolioName
Portfolio name.
getWrapper
Function to resolve wrapper adapter from underlying adapter.

Returns: Found adapter or null.

GetSubscriptionAdaptersAsync(MarketDataMessage, IMessageAdapter[], bool, CancellationToken) : ValueTask<IMessageAdapter[]>

Get adapters for market data subscription with additional filtering (candles, build mode, etc.).

mdMsg
Market data message.
adapters
Pre-filtered adapters from IMessageAdapter}).
skipSupportedMessages
Whether supported-message filtering was skipped.
cancellationToken
CancellationToken

Returns: Filtered adapters.

RemoveMessageTypeAdapter(MessageTypes, IMessageAdapter)

Remove adapter for specified message type.

RemovePortfolioAdapter(string)

Remove adapter for portfolio.

RemoveSecurityAdapter(SecurityId, DataType)

Remove adapter for specific security and data type.

SetPortfolioAdapter(string, IMessageAdapter)

Set adapter for portfolio.

SetSecurityAdapter(SecurityId, DataType, IMessageAdapter)

Set adapter for specific security and data type.

TryGetOrderAdapter(long, IMessageAdapter) : bool

Try get adapter for order by transaction id.