public static SetPowerLevelCommand Create(double powerLevel) { var command = new SetPowerLevelCommand { PowerLevel = powerLevel }; return(command); }
protected Task Handle(SetPowerLevelCommand powerLevel) { var destinationLevel = powerLevel.PowerLevel; if (!_PowerLevel.HasValue) { return(Task.CompletedTask); } return(ControlDimmer(destinationLevel)); }
public override Task RunTask(int taskId) { Command cmd = null; switch (taskId) { case 0: cmd = new TurnOnCommand(); break; case 1: cmd = new TurnOffCommand(); break; case 2: cmd = new TurnOnCommand(); ConsoleEx.WriteTitleLine("State Time:"); var time = ConsoleEx.ReadNumber(); cmd.SetProperty(MessageProperties.StateTime, time); break; case 3: ConsoleEx.WriteTitleLine("Enter dimmer level [0-100]:"); var level = ConsoleEx.ReadNumber(); cmd = new SetPowerLevelCommand(); ((SetPowerLevelCommand)cmd).PowerLevel = level; break; case 4: ConsoleEx.WriteTitleLine("Adjust Power Level [0-100]:"); var delta = ConsoleEx.ReadNumber(); cmd = new AdjustPowerLevelCommand(); ((AdjustPowerLevelCommand)cmd).Delta = delta; break; } MessageBroker.Send(cmd, Uid); return(Task.CompletedTask); }