Example #1
0
 public void OpenMarket()
 {
     lock (_marketStateLock)
     {
         if (MarketState != MarketStates.Open)
         {
             _timer      = new Timer(UpdateStockPrices, null, _updateInterval, _updateInterval);
             MarketState = MarketStates.Open;
             BroadcastMarketStateChange(MarketStates.Open);
         }
     }
 }
Example #2
0
        private void BroadcastMarketStateChange(MarketStates marketState)
        {
            switch (marketState)
            {
            case MarketStates.Open:
                Clients.All.marketOpened();
                break;

            case MarketStates.Closed:
                Clients.All.marketClosed();
                break;

            default:
                break;
            }
        }
Example #3
0
        public void CloseMarket()
        {
            lock (_marketStateLock)
            {
                if (MarketState == MarketStates.Open)
                {
                    if (_timer != null)
                    {
                        _timer.Dispose();
                    }

                    MarketState = MarketStates.Closed;

                    BroadcastMarketStateChange(MarketStates.Closed);
                }
            }
        }