IAdapterRouter

StockSharp.Algo.Basket

Interface for routing messages to appropriate adapters.

Methods

AddMessageTypeAdapter
public void AddMessageTypeAdapter(MessageTypes type, IMessageAdapter adapter)
iAdapterRouter.AddMessageTypeAdapter(type, adapter)

Add adapter for specified message type.

AddNotSupported
public void AddNotSupported(long transactionId, IMessageAdapter adapter)
iAdapterRouter.AddNotSupported(transactionId, adapter)

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

AddOrderAdapter
public void AddOrderAdapter(long transactionId, IMessageAdapter adapter)
iAdapterRouter.AddOrderAdapter(transactionId, adapter)

Add order transaction to adapter mapping.

AddPortfolioAdapter
public void AddPortfolioAdapter(string portfolio, IMessageAdapter adapter)
iAdapterRouter.AddPortfolioAdapter(portfolio, adapter)

Add adapter for portfolio.

AddSecurityAdapter
public void AddSecurityAdapter(ValueTuple<SecurityId, DataType> key, IMessageAdapter adapter)
iAdapterRouter.AddSecurityAdapter(key, adapter)

Add adapter for security with key.

Clear
public void Clear()
iAdapterRouter.Clear()

Clear all routing state (message type adapters, non-supported adapters, security/portfolio caches).

ClearPortfolioAdapters
public void ClearPortfolioAdapters()
iAdapterRouter.ClearPortfolioAdapters()

Clear all portfolio adapter mappings.

ClearSecurityAdapters
public void ClearSecurityAdapters()
iAdapterRouter.ClearSecurityAdapters()

Clear all security adapter mappings.

GetAdapters
public ValueTuple<IMessageAdapter[], bool> GetAdapters(Message message, Func<IMessageAdapter, IMessageAdapter> getWrapper)
result = iAdapterRouter.GetAdapters(message, getWrapper)

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
public IMessageAdapter GetPortfolioAdapter(string portfolioName, Func<IMessageAdapter, IMessageAdapter> getWrapper)
result = iAdapterRouter.GetPortfolioAdapter(portfolioName, getWrapper)

Get adapter for portfolio-based routing.

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

Returns: Found adapter or null.

GetSubscriptionAdaptersAsync
public ValueTask<IMessageAdapter[]> GetSubscriptionAdaptersAsync(MarketDataMessage mdMsg, IMessageAdapter[] adapters, bool skipSupportedMessages, CancellationToken cancellationToken)
result = iAdapterRouter.GetSubscriptionAdaptersAsync(mdMsg, adapters, skipSupportedMessages, cancellationToken)

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
public void RemoveMessageTypeAdapter(MessageTypes type, IMessageAdapter adapter)
iAdapterRouter.RemoveMessageTypeAdapter(type, adapter)

Remove adapter for specified message type.

RemovePortfolioAdapter
public void RemovePortfolioAdapter(string portfolio)
iAdapterRouter.RemovePortfolioAdapter(portfolio)

Remove adapter for portfolio.

RemoveSecurityAdapter
public void RemoveSecurityAdapter(SecurityId secId, DataType dataType)
iAdapterRouter.RemoveSecurityAdapter(secId, dataType)

Remove adapter for specific security and data type.

SetPortfolioAdapter
public void SetPortfolioAdapter(string portfolio, IMessageAdapter adapter)
iAdapterRouter.SetPortfolioAdapter(portfolio, adapter)

Set adapter for portfolio.

SetSecurityAdapter
public void SetSecurityAdapter(SecurityId secId, DataType dataType, IMessageAdapter adapter)
iAdapterRouter.SetSecurityAdapter(secId, dataType, adapter)

Set adapter for specific security and data type.

TryGetOrderAdapter
public bool TryGetOrderAdapter(long transactionId, IMessageAdapter adapter)
result = iAdapterRouter.TryGetOrderAdapter(transactionId, adapter)

Try get adapter for order by transaction id.