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;
}
}