public Alarm(Microphone microphone, Buzzer buzzer) { _microphone = microphone; _buzzer = buzzer; State = "disarmed"; When("disarmed", allow: "arm"); When("armed", allow: "disarm"); Map("arm", async() => { State = "armed"; await Done(); }); Map("disarm", async() => { State = "disarmed"; if (_buzzer.IsAvailable("stop")) { await _buzzer.Call("stop"); } await Done(); }); }
public Alarm(Microphone microphone, Buzzer buzzer) { _microphone = microphone; _buzzer = buzzer; State = "disarmed"; When("disarmed", allow: "arm"); When("armed", allow: "disarm"); Map("arm", async () => { State = "armed"; await Done(); }); Map("disarm", async () => { State = "disarmed"; if (_buzzer.IsAvailable("stop")) { await _buzzer.Call("stop"); } await Done(); }); }