IAdapterRouter
Schnittstelle zum Weiterleiten von Nachrichten an geeignete Adapter.
Methoden
public void AddMessageTypeAdapter(MessageTypes type, IMessageAdapter adapter)
iAdapterRouter.AddMessageTypeAdapter(type, adapter)
Adapter für den angegebenen Nachrichtentyp hinzufügen.
public void AddNotSupported(long transactionId, IMessageAdapter adapter)
iAdapterRouter.AddNotSupported(transactionId, adapter)
Fügen Sie einen Adapter zu einem nicht unterstützten Set für eine Transaktion hinzu (für die Retry-Logik).
public void AddOrderAdapter(long transactionId, IMessageAdapter adapter)
iAdapterRouter.AddOrderAdapter(transactionId, adapter)
Fügen Sie die Ordertransaktion zum Adapter-Mapping hinzu.
public void AddPortfolioAdapter(string portfolio, IMessageAdapter adapter)
iAdapterRouter.AddPortfolioAdapter(portfolio, adapter)
Adapter für Portfolio hinzufügen.
public void AddSecurityAdapter(ValueTuple<SecurityId, DataType> key, IMessageAdapter adapter)
iAdapterRouter.AddSecurityAdapter(key, adapter)
Fügen Sie Adapter für Finanzinstrument mit Schlüssel hinzu.
public void Clear()
iAdapterRouter.Clear()
Löschen Sie alle Routing-Status (Message-Typ Adapter, nicht unterstützte Adapter, Finanzinstrument / Portfolio-Caches).
public void ClearPortfolioAdapters()
iAdapterRouter.ClearPortfolioAdapters()
Löschen Sie alle Portfolio-Adapter-Mappings.
public void ClearSecurityAdapters()
iAdapterRouter.ClearSecurityAdapters()
Deaktivieren Sie alle Finanzinstrumentadapter-Mappings.
public ValueTuple<IMessageAdapter[], bool> GetAdapters(Message message, Func<IMessageAdapter, IMessageAdapter> getWrapper)
result = iAdapterRouter.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.
public IMessageAdapter GetPortfolioAdapter(string portfolioName, Func<IMessageAdapter, IMessageAdapter> getWrapper)
result = iAdapterRouter.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.
public ValueTask<IMessageAdapter[]> GetSubscriptionAdaptersAsync(MarketDataMessage mdMsg, IMessageAdapter[] adapters, bool skipSupportedMessages, CancellationToken cancellationToken)
result = iAdapterRouter.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.
public void RemoveMessageTypeAdapter(MessageTypes type, IMessageAdapter adapter)
iAdapterRouter.RemoveMessageTypeAdapter(type, adapter)
Entfernen Sie den Adapter für den angegebenen Nachrichtentyp.
public void RemovePortfolioAdapter(string portfolio)
iAdapterRouter.RemovePortfolioAdapter(portfolio)
Entfernen Sie den Adapter für das Portfolio.
public void RemoveSecurityAdapter(SecurityId secId, DataType dataType)
iAdapterRouter.RemoveSecurityAdapter(secId, dataType)
Entfernen Sie den Adapter für bestimmte Finanzinstrumente und Datentypen.
public void SetPortfolioAdapter(string portfolio, IMessageAdapter adapter)
iAdapterRouter.SetPortfolioAdapter(portfolio, adapter)
Set Adapter für Portfolio.
public void SetSecurityAdapter(SecurityId secId, DataType dataType, IMessageAdapter adapter)
iAdapterRouter.SetSecurityAdapter(secId, dataType, adapter)
Set-Adapter für bestimmte Finanzinstrumente und Datentyp.
public bool TryGetOrderAdapter(long transactionId, IMessageAdapter adapter)
result = iAdapterRouter.TryGetOrderAdapter(transactionId, adapter)
Versuchen Sie, Adapter für die Bestellung per Transaktions-ID zu erhalten.