private void HandleTickerItem(object sender, MessageData item)
        {
            var data = JsonSerializer.Deserialize <Ticker>(item.Data);

            TickerEvent?.Invoke(sender, data);
        }
        private void HandleErrorItem(object sender, MessageData item)
        {
            var data = JsonSerializer.Deserialize <Error>(item.Data);

            OnError(new CoinAPIException(data));
        }
        private void HandleExchangeRateItem(object sender, MessageData item)
        {
            var data = JsonSerializer.Deserialize <ExchangeRate>(item.Data);

            ExchangeRateEvent?.Invoke(sender, data);
        }
        private void HandleVolumeItem(object sender, MessageData item)
        {
            var data = JsonSerializer.Deserialize <Volume>(item.Data);

            VolumeEvent?.Invoke(sender, data);
        }
        private void HandleOHLCVItem(object sender, MessageData item)
        {
            var data = JsonSerializer.Deserialize <OHLCV>(item.Data);

            OHLCVEvent?.Invoke(sender, data);
        }
        private void HandleBookItem(object sender, MessageData item)
        {
            var data = JsonSerializer.Deserialize <OrderBook>(item.Data);

            OrderBookEvent?.Invoke(sender, data);
        }
Exemple #7
0
        private void _queueThread_ItemDequeuedEvent(object sender, MessageData item)
        {
            var data = JsonSerializer.Deserialize <MessageBase>(item.Data);

            if (!data.type.TryParse(out var messageType))
            {
                // unknown type
                return;
            }

            switch (messageType)
            {
            case MessageType.book:
                HandleBookItem(sender, item);
                break;

            case MessageType.book5:
                HandleBook5Item(sender, item);
                break;

            case MessageType.book20:
                HandleBook20Item(sender, item);
                break;

            case MessageType.book50:
                HandleBook50Item(sender, item);
                break;

            case MessageType.book_l3:
                HandleBookL3Item(sender, item);
                break;

            case MessageType.ohlcv:
                HandleOHLCVItem(sender, item);
                break;

            case MessageType.quote:
                HandleQuoteItem(sender, item);
                break;

            case MessageType.trade:
                HandleTradeItem(sender, item);
                break;

            case MessageType.volume:
                HandleVolumeItem(sender, item);
                break;

            case MessageType.exrate:
                HandleExchangeRateItem(sender, item);
                break;

            case MessageType.ticker:
                HandleTickerItem(sender, item);
                break;

            case MessageType.error:
                HandleErrorItem(sender, item);
                break;
            }
        }