public void ChangeState(IDoor door, ILight light, IHeater heater, IStartButton startButton, ITimer timer)
 {
     door.CloseDoor();
     light.TurnOnLight();
     heater.TurnOn();
     startButton.ButtonIsPressed();
     timer.Start();
 }
Ejemplo n.º 2
0
 public void ChangeState(IDoor door, ILight light, IHeater heater, IStartButton startButton, ITimer timer)
 {
     door.OpenDoor();
     light.TurnOnLight();
     heater.TurnOff();
     startButton.ButtonIsNotPressed();
     timer.Stop();
 }
Ejemplo n.º 3
0
 public StateManager(IDoor door, ILight light, IHeater heater, IStartButton startButton, ITimer timer)
 {
     this.door          = door;
     this.light         = light;
     this.heater        = heater;
     this.startButton   = startButton;
     this.timer         = timer;
     timer.TimeElapsed += TimeElapsed;
 }
Ejemplo n.º 4
0
        public MicrowaveOvenHw(IDoor door, ILight light, IHeater heater, IStartButton startButton, ITimer timer)
        {
            this.door = door;

            var stateManager = new StateManager(door, light, heater, startButton, timer);

            RegisterStateManagerTriggerChanges(stateManager);

            var driver = new Driver(stateManager);

            DoorOpenChanged    += driver.DoorOpenHandler;
            StartButtonPressed += driver.StartButtonPressedHandler;
        }