AdapterRouter

StockSharp.Algo.Basket

Standard-Implementierung von IAdapterRouter.

Implementiert: IAdapterRouter

Konstruktoren

AdapterRouter
public AdapterRouter(IOrderRoutingState orderRouting, Func<IMessageAdapter, IMessageAdapter> getUnderlyingAdapter, CandleBuilderProvider candleBuilderProvider, Func<bool> levelExtend)
adapterRouter = AdapterRouter(orderRouting, getUnderlyingAdapter, candleBuilderProvider, levelExtend)

Initialisiert eine neue Instanz von AdapterRouter.

orderRouting
Order Routing Zustand.
getUnderlyingAdapter
Funktion zum Entpacken des Adapters zum Basiswert.
candleBuilderProvider
Candle Builder Provider für Abonnementfilterung.
levelExtend
Funktion, die die Einstellung Level1Extend zurückgibt.

Methoden

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

Adapter für den angegebenen Nachrichtentyp hinzufügen.

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

Fügen Sie einen Adapter zu einem nicht unterstützten Set für eine Transaktion hinzu (für die Retry-Logik).

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

Fügen Sie die Ordertransaktion zum Adapter-Mapping hinzu.

AddPortfolioAdapter
public void AddPortfolioAdapter(string key, IMessageAdapter adapter)
adapterRouter.AddPortfolioAdapter(key, adapter)

Portfolioadapter-Mapping direkt hinzufügen. Wird während des Ladens verwendet.

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

Direkte Zuordnung von Finanzinstrumenten hinzufügen, während der Belastung verwendet.

Clear
public void Clear()
adapterRouter.Clear()

Löscht alle Adapterzustände und setzt den aktuellen Zustand auf Disconnected zurück.

ClearPortfolioAdapters
public void ClearPortfolioAdapters()
adapterRouter.ClearPortfolioAdapters()

Cache für Portfolio-Adapter, die während des Ladens verwendet werden.

ClearSecurityAdapters
public void ClearSecurityAdapters()
adapterRouter.ClearSecurityAdapters()

Cache-Speicher für klare Finanzinstrumentadapter, während der Belastung verwendet.

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

Holen Sie sich Adapter für eine Nachricht basierend auf Nachrichtentyp, Finanzinstrument und Filterung.

message
Nachricht an die Route.
getWrapper
Funktion zum Auflösen des Wrapper-Adapters vom zugrunde liegenden Adapter.

Rückgabe: Matched Adapter-Array und ob unterstützte Nachrichtenfilterung übersprungen wurde.

GetPortfolioAdapter
public IMessageAdapter GetPortfolioAdapter(string portfolioName, Func<IMessageAdapter, IMessageAdapter> getWrapper)
result = adapterRouter.GetPortfolioAdapter(portfolioName, getWrapper)

Holen Sie sich einen Adapter für portfoliobasiertes Routing.

portfolioName
Portfolioname.
getWrapper
Funktion zum Auflösen des Wrapper-Adapters vom zugrunde liegenden Adapter.

Rückgabe: gefunden Adapter oder null.

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

Holen Sie sich Adapter für das Marktdatenabonnement mit zusätzlicher Filterung (Kerzen, Build-Modus usw.).

mdMsg
Marktdatennachricht.
adapters
Vorgefilterte Adapter von IMessageAdapter .
skipSupportedMessages
Ob die unterstützte Nachrichtenfilterung übersprungen wurde.
cancellationToken
CancellationToken

Rückgabe: Gefilterte Adapter.

RemoveMessageTypeAdapter
public void RemoveMessageTypeAdapter(MessageTypes type, IMessageAdapter adapter)
adapterRouter.RemoveMessageTypeAdapter(type, adapter)

Entfernen Sie den Adapter für den angegebenen Nachrichtentyp.

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

Entfernen Sie den Adapter für das Portfolio.

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

Entfernen Sie den Adapter für bestimmte Finanzinstrumente und Datentypen.

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

Set Adapter für Portfolio.

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

Set-Adapter für bestimmte Finanzinstrumente und Datentyp.

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

Versuchen Sie, Adapter für die Bestellung per Transaktions-ID zu erhalten.