static void Main() { var remote = new RemoteControl(); var light = new Light(); var stereo = new Stereo(); var lightOnCommand = new LightOnCommand(light); var lightOffCommand = new LightOffCommand(light); var stereoOnCommand = new StereoOnCommand(stereo); var stereoOffCommand = new StereoOffCommand(stereo); var stereoOnCdCommand = new StereoOnCdCommand(stereo); remote.OnCommands[0] = lightOnCommand; remote.OnCommands[1] = stereoOnCommand; remote.OnCommands[2] = stereoOnCdCommand; remote.OffCommands[0] = lightOffCommand; remote.OffCommands[1] = stereoOffCommand; remote.OnButtonWasPushed(0); remote.OnButtonWasPushed(1); remote.OnButtonWasPushed(2); Console.WriteLine(remote); remote.OffButtonWasPushed(0); remote.OffButtonWasPushed(1); remote.UndoButtonPushed(); }
static void Main(string[] args) { RemoteControl remote = new RemoteControl(); Light livingRoomLight = new Light(); Stereo stereo = new Stereo(); CeilingFan ceilingFan = new CeilingFan("Living Room"); LightOnCommand livingRoomLightOn = new LightOnCommand(livingRoomLight); LightOffCommand livingRoomLightOff = new LightOffCommand(livingRoomLight); StereoOnCommand stereoOn = new StereoOnCommand(stereo); StereoOffCommand stereoOff = new StereoOffCommand(stereo); CeilingFanHighCommand ceilingFanHigh = new CeilingFanHighCommand(ceilingFan); CeilingFanMediumCommand ceilingFanMedium = new CeilingFanMediumCommand(ceilingFan); CeilingFanLowCommand ceilingFanLow = new CeilingFanLowCommand(ceilingFan); CeilingFanOffCommand ceilingFanOff = new CeilingFanOffCommand(ceilingFan); Console.WriteLine(remote.ToString()); remote.SetCommand(0, livingRoomLightOn, livingRoomLightOff); remote.SetCommand(1, stereoOn, stereoOff); remote.SetCommand(2, ceilingFanHigh, ceilingFanOff); remote.SetCommand(3, ceilingFanMedium, ceilingFanOff); remote.SetCommand(4, ceilingFanLow, ceilingFanOff); Console.WriteLine(remote.ToString()); //remote.OnButtonWasPushed(0); //remote.OnButtonWasPushed(1); //remote.OffButtonWasPushed(0); //remote.OffButtonWasPushed(1); //remote.UndoButtonWasPushed(); //remote.OnButtonWasPushed(2); //remote.OnButtonWasPushed(3); //remote.UndoButtonWasPushed(); //remote.OffButtonWasPushed(2); //remote.UndoButtonWasPushed(); Command[] onCommands = { livingRoomLightOn, stereoOn, ceilingFanHigh }; MacroCommand macroCommandOn = new MacroCommand(onCommands); Command[] offCommands = { livingRoomLightOff, stereoOff, ceilingFanOff }; MacroCommand macroCommandOff = new MacroCommand(offCommands); remote.SetCommand(5, macroCommandOn, macroCommandOff); remote.OnButtonWasPushed(5); Console.WriteLine(); //remote.OffButtonWasPushed(5); remote.UndoButtonWasPushed(); }
static void Main(string[] args) { Console.WriteLine("Hello World!"); var remote = new SimpleRemoteControl(); var kitchenLight = new Light("kitchen light"); var livingLight = new Light("living room light"); var garageDoor = new GarageDoor(); var stereo = new Stereo(); var kitLightOnCommand = new LightOnCommand(kitchenLight); var kitLightOffCommand = new LightOffCommand(kitchenLight); var lightOnCommand = new LightOnCommand(livingLight); var lightOffCommand = new LightOffCommand(livingLight); var garageDoorOpenCommand = new GarageDoorOpenCommand(garageDoor); var garageDoorCloseCommand = new GarageDoorCloseCommand(garageDoor); var stereoOnWithCDCommand = new StereoOnWithCDCommand(stereo); var stereoOffCommand = new StereoOffCommand(stereo); var ceilingFan = new CeilingFan("Ceiling fan"); var ceilingFanHighCommand = new CeilingFanHighCommand(ceilingFan); var ceilingFanLowCommand = new CeilingFanLowCommand(ceilingFan); var ceilingFanOffCommand = new CeilingFanOffCommand(ceilingFan); remote.SetCommand(0, lightOnCommand, lightOffCommand); remote.SetCommand(1, kitLightOnCommand, kitLightOffCommand); remote.SetCommand(2, garageDoorOpenCommand, garageDoorCloseCommand); remote.SetCommand(3, stereoOnWithCDCommand, stereoOffCommand); remote.SetCommand(4, ceilingFanHighCommand, ceilingFanOffCommand); remote.SetCommand(5, ceilingFanLowCommand, ceilingFanOffCommand); remote.OnButtonPressed(0); remote.OffButtonPressed(0); remote.OnButtonPressed(1); remote.OffButtonPressed(1); remote.OnButtonPressed(2); remote.OffButtonPressed(2); remote.OnButtonPressed(3); remote.OffButtonPressed(3); remote.OnButtonPressed(4); remote.OffButtonPressed(4); remote.UndoButtonPressed(); remote.OnButtonPressed(5); remote.OffButtonPressed(5); remote.UndoButtonPressed(); }
static void Main(string[] args) { SimpleRemoteControl remote = new SimpleRemoteControl(); Light livingRoomLight = new Light("Living Romm"); Light kitchenRoomLight = new Light("kitchen Romm"); GarageDoor garageDoor = new GarageDoor(""); CeilingFan ceilingFan = new CeilingFan("Living Room"); Stereo stereo = new Stereo("Living Room"); LightOnCommand livingRoomLightOn = new LightOnCommand(livingRoomLight); LightOffCommand livingRoomLightOff = new LightOffCommand(livingRoomLight); LightOnCommand kitchenRoomLightOn = new LightOnCommand(kitchenRoomLight); LightOffCommand kitchenRoomLightOff = new LightOffCommand(kitchenRoomLight); CeilingFanHighCommand ceilingFanOn = new CeilingFanHighCommand(ceilingFan); CeilingFanOffCommand ceilingFanOff = new CeilingFanOffCommand(ceilingFan); GarageDoorOpenCommand garageDoorOpenCommand = new GarageDoorOpenCommand(garageDoor); GarageDoorCloseCommand garageDoorCloseCommand = new GarageDoorCloseCommand(garageDoor); StereoOnWithCDCommand stereoOnWithCdCommand = new StereoOnWithCDCommand(stereo); StereoOffCommand stereoOffCommand = new StereoOffCommand(stereo); remote.SetCommand(0, livingRoomLightOn, livingRoomLightOff); remote.SetCommand(1, kitchenRoomLightOn, kitchenRoomLightOff); remote.SetCommand(2, ceilingFanOn, ceilingFanOff); remote.SetCommand(3, stereoOnWithCdCommand, stereoOffCommand); Console.WriteLine(remote.ToString()); remote.OnButtonWasPressed(0); remote.OffButtonWasPressed(0); remote.OnButtonWasPressed(1); remote.OffButtonWasPressed(1); remote.OnButtonWasPressed(2); remote.OffButtonWasPressed(2); remote.OnButtonWasPressed(3); remote.OffButtonWasPressed(3); Console.ReadLine(); }
public static void Load() { RemoteControlWithUndo remoteControl = new RemoteControlWithUndo(); Light livingRoomLight = new Light("Living Room"); Light kitchenLight = new Light("Kitchen"); CeilingFan ceilingFan = new CeilingFan("Living Room"); GarageDoor garageDoor = new GarageDoor(); Stereo stereo = new Stereo("Living Room"); LightOnCommand livingRoomLightOn = new LightOnCommand(livingRoomLight); LightOffCommand livingRoomLightOff = new LightOffCommand(livingRoomLight); LightOnCommand kitchenLightOn = new LightOnCommand(kitchenLight); LightOffCommand kitchenLightOff = new LightOffCommand(kitchenLight); CeilingFanOnCommand ceilingFanOn = new CeilingFanOnCommand(ceilingFan); CeilingFanOffCommand ceilingFanOff = new CeilingFanOffCommand(ceilingFan); GarageDoorOpenCommand garageDoorOpen = new GarageDoorOpenCommand(garageDoor); GarageDoorCloseCommand garageDoorClose = new GarageDoorCloseCommand(garageDoor); StereoOnWithCDCommand stereoOnWithCD = new StereoOnWithCDCommand(stereo); StereoOffCommand stereoOff = new StereoOffCommand(stereo); remoteControl.SetCommand(0, livingRoomLightOn, livingRoomLightOff); remoteControl.SetCommand(1, kitchenLightOn, kitchenLightOff); remoteControl.SetCommand(2, ceilingFanOn, ceilingFanOff); remoteControl.SetCommand(3, stereoOnWithCD, stereoOff); remoteControl.OnButtonWasPushed(0); remoteControl.OffButtonWasPushed(0); Console.WriteLine(remoteControl); remoteControl.UndoButtonWasPushed(); remoteControl.OffButtonWasPushed(0); remoteControl.OnButtonWasPushed(0); Console.WriteLine(remoteControl); remoteControl.UndoButtonWasPushed(); Console.WriteLine(remoteControl); for (int i = 0; i < 4; i++) { remoteControl.OnButtonWasPushed(i); remoteControl.OffButtonWasPushed(i); } }
private static void Main() { var remoteControl = new RemoteControl(); var light = new Light("Living Room"); var stereo = new Stereo("Living Room"); var ceilingFan = new CeilingFan("Living Room"); var lightOn = new LightOnCommand(light); var lightOff = new LightOffCommand(light); var stereoOnWithCd = new StereoOnWithCdCommand(stereo); var stereoOff = new StereoOffCommand(stereo); var fanOn = new CeilingFanOnCommand(ceilingFan); var fanOff = new CeilingFanOffCommand(ceilingFan); var partyOnMacro = new MacroCommand(new ICommand[] { lightOn, stereoOnWithCd, fanOn }); var partyOffMacro = new MacroCommand(new ICommand[] { lightOff, stereoOff, fanOff }); remoteControl.SetCommand(0, lightOn, lightOff); remoteControl.SetCommand(1, stereoOnWithCd, stereoOff); remoteControl.SetCommand(2, fanOn, fanOff); remoteControl.SetCommand(3, partyOnMacro, partyOffMacro); Console.WriteLine(remoteControl); remoteControl.PressOnButton(0); remoteControl.PressOffButton(0); remoteControl.PressUndoButton(); Console.WriteLine("--- Pushing Macro On ---"); remoteControl.PressOnButton(3); Console.WriteLine("--- Pushing Macro Off ---"); remoteControl.PressOffButton(3); }
static void Main(string[] args) { RemoteControl remoteControl = new RemoteControl(); Light light = new Light(); Hottub hottub = new Hottub(); GarageDoor garagedoor = new GarageDoor(); CeilingFan ceilingfan = new CeilingFan(); Stereo stereo = new Stereo(); CeilingFanOnCommand ceilingFanOn = new CeilingFanOnCommand(ceilingfan); CeilingFanOffCommand ceilingFanOff = new CeilingFanOffCommand(ceilingfan); GarageDoorUpCommand garageDoorUp = new GarageDoorUpCommand(garagedoor); GarageDoorDownCommand garageDoorDown = new GarageDoorDownCommand(garagedoor); HottubOnCommand hottubOn = new HottubOnCommand(hottub); HottubOffCommand hottubOff = new HottubOffCommand(hottub); LightOnCommand lightOn = new LightOnCommand(light); LightOffCommand lightOff = new LightOffCommand(light); LivingroomLightOnCommand livingRoomOn = new LivingroomLightOnCommand(light); LivingroomLightOffCommand livingRoomOff = new LivingroomLightOffCommand(light); StereoOnWithCDCommand stereoOn = new StereoOnWithCDCommand(stereo); StereoOffCommand stereoOff = new StereoOffCommand(stereo); remoteControl.setCommand(0, ceilingFanOn, ceilingFanOff); remoteControl.setCommand(1, garageDoorUp, garageDoorDown); remoteControl.setCommand(2, hottubOn, hottubOff); remoteControl.setCommand(3, lightOn, lightOff); remoteControl.setCommand(4, livingRoomOn, livingRoomOff); remoteControl.setCommand(5, stereoOn, stereoOff); Console.WriteLine(remoteControl.toString()); remoteControl.onButtonWasPushed(0); remoteControl.offButtonWasPushed(0); remoteControl.undoButtonWasPushed(); remoteControl.onButtonWasPushed(1); remoteControl.offButtonWasPushed(1); remoteControl.undoButtonWasPushed(); remoteControl.onButtonWasPushed(2); remoteControl.offButtonWasPushed(2); remoteControl.undoButtonWasPushed(); remoteControl.onButtonWasPushed(3); remoteControl.offButtonWasPushed(3); remoteControl.undoButtonWasPushed(); remoteControl.onButtonWasPushed(4); remoteControl.offButtonWasPushed(4); remoteControl.undoButtonWasPushed(); remoteControl.onButtonWasPushed(5); remoteControl.offButtonWasPushed(5); remoteControl.undoButtonWasPushed(); }
public static void Main() { RemoteControl remoteControl = new RemoteControl(); Light livingRoomLight = new Light("Living room"); Light kitchenLight = new Light("Kitchen Light"); CeilingFan ceilingFan = new CeilingFan("Living room"); GarageDoor garageDoor = new GarageDoor(); Stereo stereo = new Stereo("Living room"); TV tv = new TV("Living room"); Hottub hottub = new Hottub(); LightOnCommand livingRoomLightOn = new LightOnCommand(livingRoomLight); LightOffCommand livingRoomLightOff = new LightOffCommand(livingRoomLight); LightOnCommand kitchenLightOn = new LightOnCommand(kitchenLight); LightOffCommand kitchenLightOff = new LightOffCommand(kitchenLight); CeilingFanOnCommand ceilingFanHigh = new CeilingFanOnCommand(ceilingFan); CeilingFanOffCommand ceilingFanOff = new CeilingFanOffCommand(ceilingFan); GarageDoorOpenCommand garageDoorUp = new GarageDoorOpenCommand(garageDoor); GarageDoorCloseCommand garageDoorDown = new GarageDoorCloseCommand(garageDoor); StereoOnWithCDCommand stereoOnWithCD = new StereoOnWithCDCommand(stereo); StereoOffCommand stereoOff = new StereoOffCommand(stereo); TVOnCommand tvOn = new TVOnCommand(tv); TVOffCommand tvOff = new TVOffCommand(tv); HottubOnCommand hottubOn = new HottubOnCommand(hottub); HottubOffCommand hottubOff = new HottubOffCommand(hottub); ICommand[] partyOn = { livingRoomLightOn, stereoOnWithCD, tvOn, hottubOn }; ICommand[] partyOff = { livingRoomLightOff, stereoOff, tvOff, hottubOff }; //TODO: deal with the Macrocommand name Macrocommand partyOnMacro = new Macrocommand(partyOn); Macrocommand partyOffMacro = new Macrocommand(partyOff); remoteControl.SetCommand(0, livingRoomLightOn, livingRoomLightOff); remoteControl.SetCommand(1, kitchenLightOn, kitchenLightOff); remoteControl.SetCommand(2, ceilingFanHigh, ceilingFanOff); remoteControl.SetCommand(3, stereoOnWithCD, stereoOff); remoteControl.SetCommand(4, partyOnMacro, partyOffMacro); Console.WriteLine(remoteControl); remoteControl.OnButtonWasPressed(0); remoteControl.OffButtonWasPressed(0); remoteControl.UndoButtonWasPressed(); remoteControl.OnButtonWasPressed(1); remoteControl.OffButtonWasPressed(1); remoteControl.OnButtonWasPressed(2); remoteControl.OffButtonWasPressed(2); remoteControl.UndoButtonWasPressed(); remoteControl.OnButtonWasPressed(3); remoteControl.OffButtonWasPressed(3); remoteControl.UndoButtonWasPressed(); remoteControl.OnButtonWasPressed(4); Console.WriteLine("Party is on!"); remoteControl.OffButtonWasPressed(4); Console.WriteLine("Party is over"); Console.ReadLine(); }
static void Main(string[] args) { RemoteControl remote = new RemoteControl(); CeilingFan ceilingFan = new CeilingFan("Living Room"); //Light livingRoomLight = new Light("Living Room"); //Light kitchenLight = new Light("Kitchen"); //GarageDoor garageDoor = new GarageDoor(); //Stereo stereo = new Stereo("Living room"); //AirCondition airCondition = new AirCondition(); // //LightOnCommand livingRoomLightOn = new LightOnCommand(livingRoomLight); //LightOffCommand livingRoomLightOff = new LightOffCommand(livingRoomLight); // //LightOnCommand kitchenLightOn = new LightOnCommand(kitchenLight); //LightOffCommand kitchenLightOff = new LightOffCommand(kitchenLight); // //CeilingFanOnCommand ceilingFanOn = new CeilingFanOnCommand(ceilingFan); //CeilingFanOffCommand ceilingFanOff = new CeilingFanOffCommand(ceilingFan); // //GarageDoorOpenCommand garageDoorUp = new GarageDoorOpenCommand(garageDoor); //GarageDoorCloseCommand garageDoorOff = new GarageDoorCloseCommand(garageDoor); // //StereoOnWithCDCommand stereoOnWithCD = new StereoOnWithCDCommand(stereo); //StereoOffCommand stereoOff = new StereoOffCommand(stereo); // //AirConditionOnCommand airCondtionOnCommand = new AirConditionOnCommand(airCondition); //AirconditionOffCommand airCondtionOffCommand = new AirconditionOffCommand(airCondition); // //remote.SetCommand(0, livingRoomLightOn, livingRoomLightOff); //remote.SetCommand(1, kitchenLightOn, kitchenLightOff); //remote.SetCommand(2, ceilingFanOn, ceilingFanOff); //remote.SetCommand(3, stereoOnWithCD, stereoOff); //remote.SetCommand(4, airCondtionOnCommand, airCondtionOffCommand); // //Console.WriteLine(remote); // //remote.OffButtonWasPressed(0); //remote.OffButtonWasPressed(1); //remote.OffButtonWasPressed(2); //remote.OffButtonWasPressed(3); //remote.OffButtonWasPressed(4); //Console.WriteLine(); //remote.OnButtonWasPressed(0); //remote.OnButtonWasPressed(1); //remote.OnButtonWasPressed(2); //remote.OnButtonWasPressed(3); //remote.OnButtonWasPressed(4); // CeilingFanHighCommand ceilingFanHigh = new CeilingFanHighCommand(ceilingFan); // CeilingFanMediumCommand ceilingFanMedium = new CeilingFanMediumCommand(ceilingFan); // CeilingFanLowCommand ceilingFanLow = new CeilingFanLowCommand(ceilingFan); // CeilingFanOffCommand ceilingFanOffCommand = new CeilingFanOffCommand(ceilingFan); // // remote.SetCommand(0, ceilingFanLow, ceilingFanOffCommand); // remote.SetCommand(1, ceilingFanMedium, ceilingFanOffCommand); // remote.SetCommand(2, ceilingFanHigh, ceilingFanOffCommand); // // remote.OnButtonWasPressed(0); // remote.OnButtonWasPressed(1); // remote.OnButtonWasPressed(2); // // Console.WriteLine(remote); // // remote.OffButtonWasPressed(1); // remote.UndoButtonWasPressed(); Light light = new Light("Living room"); TV tv = new TV(); Stereo stereo = new Stereo("Living Room"); Hottub hottub = new Hottub(); LightOnCommand lightOnCommand = new LightOnCommand(light); TvOnCommand tvOnCommand = new TvOnCommand(tv); StereoOnWithCDCommand stereoOnCommand = new StereoOnWithCDCommand(stereo); HottubOnCommand hottunOnCommand = new HottubOnCommand(hottub); LightOffCommand lightOffCommand = new LightOffCommand(light); TvOffCommand tvOffCommand = new TvOffCommand(tv); StereoOffCommand stereoffCommand = new StereoOffCommand(stereo); HottubOffCommand hottunOffCommand = new HottubOffCommand(hottub); ICommand[] partyOn = { lightOnCommand, tvOnCommand, stereoOnCommand, hottunOnCommand }; ICommand[] partOff = { lightOffCommand, tvOffCommand, stereoffCommand, hottunOffCommand }; MacroCommand OnMacro = new MacroCommand(partyOn); MacroCommand OffMacro = new MacroCommand(partOff); remote.SetCommand(0, OnMacro, OffMacro); Console.WriteLine(remote); remote.OnButtonWasPressed(0); remote.UndoButtonWasPressed(); remote.OnButtonWasPressed(0); }