IAdapterRouter
Interface para encaminhar mensagens para adaptadores apropriados.
Métodos
public void AddMessageTypeAdapter(MessageTypes type, IMessageAdapter adapter)
iAdapterRouter.AddMessageTypeAdapter(type, adapter)
Adicionar adaptador para o tipo de mensagem especificado.
public void AddNotSupported(long transactionId, IMessageAdapter adapter)
iAdapterRouter.AddNotSupported(transactionId, adapter)
Adicionar adaptador ao conjunto não suportado para uma transação (para a lógica de repetição).
public void AddOrderAdapter(long transactionId, IMessageAdapter adapter)
iAdapterRouter.AddOrderAdapter(transactionId, adapter)
Adicionar transação de ordem ao mapeamento do adaptador.
public void AddPortfolioAdapter(string portfolio, IMessageAdapter adapter)
iAdapterRouter.AddPortfolioAdapter(portfolio, adapter)
Adicionar adaptador para portfólio.
public void AddSecurityAdapter(ValueTuple<SecurityId, DataType> key, IMessageAdapter adapter)
iAdapterRouter.AddSecurityAdapter(key, adapter)
Adicionar adaptador para instrumento financeiro com chave.
public void Clear()
iAdapterRouter.Clear()
Limpar todo o estado de roteamento (adaptadores de tipo de mensagem, adaptadores não suportados, caches de instrumentos financeiros/portfolio).
public void ClearPortfolioAdapters()
iAdapterRouter.ClearPortfolioAdapters()
Limpar todos os mapeamentos de adaptadores de portfólio.
public void ClearSecurityAdapters()
iAdapterRouter.ClearSecurityAdapters()
Limpar todos os mapeamentos do adaptador de instrumentos financeiros.
public ValueTuple<IMessageAdapter[], bool> GetAdapters(Message message, Func<IMessageAdapter, IMessageAdapter> getWrapper)
result = iAdapterRouter.GetAdapters(message, getWrapper)
Obtenha adaptadores para uma mensagem baseada no tipo de mensagem, instrumento financeiro e filtragem.
- message
- Mensagem para rota.
- getWrapper
- Função para resolver o adaptador de invólucro do adaptador subjacente.
Retorna: Correspondência entre o array de adaptadores e se a filtragem de mensagens suportada foi ignorada.
public IMessageAdapter GetPortfolioAdapter(string portfolioName, Func<IMessageAdapter, IMessageAdapter> getWrapper)
result = iAdapterRouter.GetPortfolioAdapter(portfolioName, getWrapper)
Obtenha o adaptador para roteamento baseado em portfólio.
- portfolioName
- Nome da pasta.
- getWrapper
- Função para resolver o adaptador de invólucro do adaptador subjacente.
Retorna: Encontrou adaptador ou nulo.
public ValueTask<IMessageAdapter[]> GetSubscriptionAdaptersAsync(MarketDataMessage mdMsg, IMessageAdapter[] adapters, bool skipSupportedMessages, CancellationToken cancellationToken)
result = iAdapterRouter.GetSubscriptionAdaptersAsync(mdMsg, adapters, skipSupportedMessages, cancellationToken)
Obtenha adaptadores para assinatura de dados de mercado com filtragem adicional (candesias, modo de construção, etc.).
- mdMsg
- Mensagem de dados do mercado.
- adapters
- Adaptadores pré-filtrados de IMessageAdapter}).
- skipSupportedMessages
- Se a filtragem de mensagens suportadas foi ignorada.
- cancellationToken
- CancellationToken
Retorna: Adaptadores filtrados.
public void RemoveMessageTypeAdapter(MessageTypes type, IMessageAdapter adapter)
iAdapterRouter.RemoveMessageTypeAdapter(type, adapter)
Remover o adaptador para o tipo de mensagem especificado.
public void RemovePortfolioAdapter(string portfolio)
iAdapterRouter.RemovePortfolioAdapter(portfolio)
Remova o adaptador para o portfólio.
public void RemoveSecurityAdapter(SecurityId secId, DataType dataType)
iAdapterRouter.RemoveSecurityAdapter(secId, dataType)
Remova o adaptador para instrumento financeiro específico e tipo de dados.
public void SetPortfolioAdapter(string portfolio, IMessageAdapter adapter)
iAdapterRouter.SetPortfolioAdapter(portfolio, adapter)
Definir adaptador para portfólio.
public void SetSecurityAdapter(SecurityId secId, DataType dataType, IMessageAdapter adapter)
iAdapterRouter.SetSecurityAdapter(secId, dataType, adapter)
Definir adaptador para instrumento financeiro específico e tipo de dados.
public bool TryGetOrderAdapter(long transactionId, IMessageAdapter adapter)
result = iAdapterRouter.TryGetOrderAdapter(transactionId, adapter)
Tente obter o adaptador para ordem por ID de transação.