protected OrderBooksHarvesterBase(string exchangeName, IExchangeConfiguration exchangeConfiguration, ILog log,
                                          IHandler <OrderBook> newOrderBookHandler)
        {
            ExchangeConfiguration = exchangeConfiguration;
            _newOrderBookHandler  = newOrderBookHandler;
            ExchangeName          = exchangeName;

            Log = log.CreateComponentScope(GetType().Name);

            _converters = new ExchangeConverters(exchangeConfiguration.SupportedCurrencySymbols,
                                                 string.Empty, exchangeConfiguration.UseSupportedCurrencySymbolsAsFilter);

            _orderBookSnapshots      = new ConcurrentDictionary <string, OrderBookSnapshot>();
            _cancellationTokenSource = new CancellationTokenSource();
            CancellationToken        = _cancellationTokenSource.Token;

            _heartBeatMonitoringTimer = new Timer(s => RestartMessenger("No messages from the exchange"));
            _snapshotRefreshTimer     = new Timer(s => RestartMessenger("Refresh order book snapshot"));
        }
Exemple #2
0
        protected OrderBooksHarvesterBase(string exchangeName, IExchangeConfiguration exchangeConfiguration, ILog log,
                                          OrderBookSnapshotsRepository orderBookSnapshotsRepository, OrderBookEventsRepository orderBookEventsRepository,
                                          IHandler <OrderBook> newOrderBookHandler)
        {
            ExchangeConfiguration        = exchangeConfiguration;
            OrderBookSnapshotsRepository = orderBookSnapshotsRepository;
            OrderBookEventsRepository    = orderBookEventsRepository;
            _newOrderBookHandler         = newOrderBookHandler;
            ExchangeName = exchangeName;

            Log = log.CreateComponentScope(GetType().Name);

            _converters = new ExchangeConverters(exchangeConfiguration.SupportedCurrencySymbols,
                                                 string.Empty);

            _orderBookSnapshots      = new ConcurrentDictionary <string, OrderBookSnapshot>();
            _cancellationTokenSource = new CancellationTokenSource();
            CancellationToken        = _cancellationTokenSource.Token;

            _heartBeatMonitoringTimer = new Timer(RestartMessenger);
        }