protected void add_transition(string eventName, string targetStateName) { if (CurrentState != null) { var transition = new TransitionDef { ParentState = CurrentState, TriggerEvent = eventName, TargetState = targetStateName, RolesRequired = new List <string>() }; PendingTransitions.Add(transition); CurrentEvent = StateMachine.FindEventByName(eventName); } }
protected void add_transition(string eventName, string targetStateName, string rolesRequired) { if (CurrentState != null) { var transition = new TransitionDef { ParentState = CurrentState, TriggerEvent = eventName, TargetState = targetStateName, RolesRequired = new List <string>() }; foreach (string role in rolesRequired.ToString().Replace("(", "").Replace(")", "").Split(new char[] { ',' })) { transition.RolesRequired.Add(role); } PendingTransitions.Add(transition); CurrentEvent = StateMachine.FindEventByName(eventName); } }