コード例 #1
0
        public static OrderBookLib.Exchange CreateExchange(IHubContext <TradesHub> hub, IHubContext <OrderBookHub> orderBookHub)
        {
            IMessageSerializer <OrderPlaced> serializer = new JsonMessageSerializer <OrderPlaced>();
            var orderStore = new EventStore <OrderPlaced>("OrderPlaced.txt", serializer);
            var exchange   = new OrderBookLib.Exchange(orderStore);

            exchange.OnNewTrades        += (IReadOnlyCollection <OrderBookLib.Trade> trades) => HandleNewTrades(hub, trades);
            exchange.OnOrderBookUpdated += (IReadOnlyCollection <OrderBookLib.OrderBookLine> orderBookAskLines, IReadOnlyCollection <OrderBookLib.OrderBookLine> orderBookBidLines) => HandleOrderBookUpdated(orderBookHub, orderBookAskLines, orderBookBidLines);
            var cts = new CancellationTokenSource();

            runTask = exchange.RunAsync(cts.Token);
            return(exchange);
        }
コード例 #2
0
 public OrdersController(IHubContext <OrderBookHub> orderBookHubContext, OrderBookLib.Exchange exchange)
 {
     _orderBookHubContext = orderBookHubContext;
     _exchange            = exchange;
 }