private void Initialize()
        {
            _stockMarket = StockMarket.Instance = new StockMarket();
            _stockMarket.StockChanged += (sender, args) =>
                Console.WriteLine("  ==== {0} {1} ({2}) ====",
                                  args.Data.Symbol, args.Data.Price, args.Data.LastChange);

            _bus = new ServiceBus();
        }
        private void StartStockMarketSimulator()
        {
            StockMarket = new StockMarket(StockRepository);
            StockMarket.AddStock("MSFT", 26.31m);
            StockMarket.AddStock("APPL", 404.18m);
            StockMarket.AddStock("GOOG", 596.30m);
            StockMarket.AddStock("SUN", 596.30m);
            StockMarket.AddStock("CSCO", 300);
            StockMarket.AddStock("AMZN", 170);

            var stockMarketListener = new StockMarketListener();

            StockMarket.MarketStateChanged += (sender, args) =>
                stockMarketListener.Handle(new MarketStateChange(args.Data));

            StockMarket.StockChanged += (sender, args) =>
                stockMarketListener.Handle(StockChangeEventFactory.Create(args.Data));

            StockMarket.Start();
        }