/// <summary> /// Extracts Market Data Providers Info from received response from MDE /// </summary> /// <param name="inquiryResponse">TradeHub InquiryResponse object containing Market Data Provivder Info</param> private void OnMarketDataInfoReceived(InquiryResponse inquiryResponse) { try { MarketDataProviderInfo marketDataProviderInfo = new MarketDataProviderInfo(); marketDataProviderInfo.DataProviderName = inquiryResponse.MarketDataProvider; // Set Market Data Provider information received if (inquiryResponse.MarketDataProviderInfo.Contains(typeof(ILiveTickDataProvider))) { marketDataProviderInfo.ProvidesTickData = true; } if (inquiryResponse.MarketDataProviderInfo.Contains(typeof(ILiveBarDataProvider))) { marketDataProviderInfo.ProvidesLiveBarData = true; } if (inquiryResponse.MarketDataProviderInfo.Contains(typeof(IHistoricBarDataProvider))) { marketDataProviderInfo.ProvidesHistoricalBarData = true; } // Raise Event to notify listeners if (_inquiryResponseArrived != null) { _inquiryResponseArrived(marketDataProviderInfo); } } catch (Exception exception) { _asyncClassLogger.Error(exception, _type.FullName, "OnMarketDataInfoReceived"); } }
/// <summary> /// Called when MDE-Client receives inquiry response from MDE-Server /// </summary> private void OnInquiryResponseArrived(MarketDataProviderInfo marketDataProviderInfo) { try { if (_asyncClassLogger.IsDebugEnabled) { _asyncClassLogger.Debug("New bar received from: " + marketDataProviderInfo.DataProviderName, _type.FullName, "OnLiveBarArrived"); } if (_inquiryResponseArrived != null) { _inquiryResponseArrived(marketDataProviderInfo); } } catch (Exception exception) { _asyncClassLogger.Error(exception, _type.FullName, "OnLiveBarArrived"); } }