//Avoid coupling the sender of a request to its receiver by giving more than one //object chance to handle the request. static void Main(string[] _) { var lamp = new Lamp(); var turnOff = new TurnOff(lamp); var turnOn = new TurnOn(lamp); var remote = new RemoteControl(); remote.Submit(turnOff); remote.Submit(turnOn); Console.ReadKey(); }
static void Main() { var bulb = new Bulb(); var turnOn = new TurnOn(bulb); var turnOff = new TurnOff(bulb); var remote = new RemoteControl(); remote.Submit(turnOn); remote.Submit(turnOff); Console.ReadLine(); }
static void Main(string[] args) { var myGarage = new Garage("Huy Tran's Garage"); var openGarage = new GarageOpen(myGarage); var CloseGarage = new GarageClose(myGarage); var myRemote = new RemoteControl(); int choose; myRemote.Show(); choose = Int32.Parse(Console.ReadLine()); while (choose != 3) { switch (choose) { case 1: Console.ForegroundColor = ConsoleColor.Red; myRemote.Submit(openGarage); Console.ResetColor(); break; case 2: Console.ForegroundColor = ConsoleColor.Red; myRemote.Submit(CloseGarage); Console.ResetColor(); break; case 3: break; } if (choose == 3) { break; } Console.WriteLine(); myRemote.Show(); choose = Int32.Parse(Console.ReadLine()); } Console.WriteLine(); Console.ReadKey(); }
static void Main(string[] args) { var bulb = new Bulb(); var turnOn = new TurnOn(bulb); var turnOff = new TurnOff(bulb); var remote = new RemoteControl(); remote.Submit(turnOn); remote.Submit(turnOff); turnOff.Undo(); turnOn.Redo(); Console.ReadKey(); }