package jetbrains.mps.samples.secretCompartmentLanguage.sandbox; /*Generated by MPS */ import jetbrains.mps.samples.secretCompartmentLanguage.runtime.StateMachineFactory; import jetbrains.mps.samples.secretCompartmentLanguage.runtime.StateMachine; import jetbrains.mps.samples.secretCompartmentLanguage.runtime.Event; import jetbrains.mps.samples.secretCompartmentLanguage.runtime.State; public class MrsH_StateMachineFactory extends StateMachineFactory { public MrsH_StateMachineFactory() { } public StateMachine getStateMachine() { this.putEvent("doorClosed", new Event("doorClosed", "D1CL")); this.putEvent("drawOpened", new Event("drawOpened", "D2OP")); this.putEvent("lightOn", new Event("lightOn", "L1ON")); this.putEvent("doorOpened", new Event("doorOpened", "D1OP")); this.putState("idle", new State("idle")); this.putState("doorClosed", new State("doorClosed")); this.putState("drawOpened", new State("drawOpened")); this.putState("panelUnlocked", new State("panelUnlocked")); getState("idle").addTransition(this.getEvent("doorClosed"), getState("doorClosed")); getState("doorClosed").addTransition(this.getEvent("drawOpened"), getState("drawOpened")); getState("drawOpened").addTransition(this.getEvent("lightOn"), getState("panelUnlocked")); State startState = getState("idle"); StateMachine stateMachine = new StateMachine(startState); return stateMachine; } }