void OnEnable() { Debug.Log("------------------"); Debug.Log("MEDIATOR DESIGN PATTERN"); StockMediator nyse = new StockMediator(); // important here is: // in this example they both might be doing nothing different, but // they could be totally different objects and calculate stuff different or so // but still be able to talk to the mediator the same easy way // that's why we have different objects here: GormanSlacks broker = new GormanSlacks(nyse); JTPoorman broker2 = new JTPoorman(nyse); nyse.AddColleague(broker); nyse.AddColleague(broker2); // because they call methods on the same mediator object they talk to the same mediator // who handles all the stock exanche and keeps track of that. so the brokers by themselves // don't know anything about each other. which is a good thing :-) broker.SaleOffer(Stock.MSFT, 100); broker.SaleOffer(Stock.GOOG, 50); broker2.BuyOffer(Stock.MSFT, 100); broker2.SaleOffer(Stock.NRG, 10); broker.BuyOffer(Stock.NRG, 10); broker.BuyOffer(Stock.NRG, 50); nyse.PrintStockOfferings(); }
static void Main(string[] args) { StockMediator nyse = new StockMediator(); GormanSlacks broker = new GormanSlacks(nyse); JTPoorman broker2 = new JTPoorman(nyse); broker.SaleOffer("MSFT", 100); broker.SaleOffer("GOOG", 50); broker2.BuyOffer("MSFT", 100); broker2.SaleOffer("NRG", 10); broker.BuyOffer("NRG", 10); nyse.GetStockOfferings(); Console.ReadKey(); }
void OnEnable() { Debug.Log ("------------------"); Debug.Log ("MEDIATOR DESIGN PATTERN"); StockMediator nyse = new StockMediator(); // important here is: // in this example they both might be doing nothing different, but // they could be totally different objects and calculate stuff different or so // but still be able to talk to the mediator the same easy way // that's why we have different objects here: GormanSlacks broker = new GormanSlacks(nyse); JTPoorman broker2 = new JTPoorman(nyse); nyse.AddColleague(broker); nyse.AddColleague(broker2); // because they call methods on the same mediator object they talk to the same mediator // who handles all the stock exanche and keeps track of that. so the brokers by themselves // don't know anything about each other. which is a good thing :-) broker.SaleOffer(Stock.MSFT, 100); broker.SaleOffer(Stock.GOOG, 50); broker2.BuyOffer(Stock.MSFT, 100); broker2.SaleOffer(Stock.NRG, 10); broker.BuyOffer(Stock.NRG, 10); broker.BuyOffer(Stock.NRG, 50); nyse.PrintStockOfferings(); }