public static void Main(String[] args) { Console.WriteLine("Hello World!"); // Создание пульта RemoteControlWithUndo remoteControl = new RemoteControlWithUndo(); // Создание всех устройств CeilingFan ceilingFan = new CeilingFan("Living Room"); // Создание команд: // для управления вентилятором CeilingFanMediumCommand ceilingFanMedium = new CeilingFanMediumCommand(ceilingFan); CeilingFanHighCommand ceilingFanHigh = new CeilingFanHighCommand(ceilingFan); CeilingFanOffCommand ceilingFanOff = new CeilingFanOffCommand(ceilingFan); // Связываем команды с ячейками пульта remoteControl.SetCommand(0, ceilingFanMedium, ceilingFanOff); remoteControl.SetCommand(1, ceilingFanHigh, ceilingFanOff); // Выводим список ячеек и связанных с ними команд Console.WriteLine(remoteControl.toString()); // Имитируем нажатия кнопок Console.WriteLine(remoteControl.OnButtonWasPushed(0)); Console.WriteLine(remoteControl.OffButtonWasPushed(0)); Console.WriteLine(remoteControl.toString()); Console.WriteLine(remoteControl.UndoButtonWasPushed()); Console.WriteLine(remoteControl.OnButtonWasPushed(1)); Console.WriteLine(remoteControl.toString()); Console.WriteLine(remoteControl.UndoButtonWasPushed()); Console.Write("Press any key to continue . . . "); Console.ReadKey(true); }
public CeilingFanHighCommand(CeilingFan ceilingFan) { this.ceilingFan = ceilingFan; }
public CeilingFanOffCommand(CeilingFan ceilingFan) { this.ceilingFan = ceilingFan; }
public CeilingFanMediumCommand(CeilingFan ceilingFan) { this.ceilingFan = ceilingFan; }
public CeilingFanLowCommand(CeilingFan ceilingFan) { this.ceilingFan = ceilingFan; }