private void ProcessPortfolioMessage(string portfolioName, Message message) { var adapter = Portfolios.TryGetValue(portfolioName); if (adapter == null) { var adapters = _connectedAdapters.TryGetValue(message.Type); if (adapters == null || adapters.Count != 1) { throw new InvalidOperationException(LocalizedStrings.Str623Params.Put(portfolioName)); } adapter = adapters.Cache.First(); } else { adapter = _hearbeatAdapters[adapter]; } adapter.SendInMessage(message); }
private void ProcessPortfolioMessage(string portfolioName, Message message) { var adapter = portfolioName.IsEmpty() ? null : Portfolios.TryGetValue(portfolioName); if (adapter == null) { var adapters = _messageTypeAdapters.TryGetValue(message.Type)?.Cache; if (adapters == null || adapters.Length != 1) { throw new InvalidOperationException(LocalizedStrings.Str623Params.Put(portfolioName)); } adapter = adapters.First(); } else { adapter = _hearbeatAdapters[adapter]; } adapter.SendInMessage(message); }
IMessageAdapter IMessageAdapterProvider.GetAdapter(string portfolioName) { return(Portfolios.TryGetValue(portfolioName)); }