/// <summary> /// Initializes a new instance of the <see cref="ConditionalTransition" /> class. /// </summary> /// <param name="fromState"> From state. </param> /// <param name="trueState"> From state. </param> /// <param name="falseState"> State of the true. </param> /// <param name="transitionExpression"> expression used to determine which branch to traverse. </param> public ConditionalTransition(IState fromState, IState trueState, IState falseState, StateTransitionExpression transitionExpression) { To = new List <IState> ( ); Expression = transitionExpression; True = trueState; False = falseState; From = fromState; }
/// <summary> /// Initializes a new instance of the <see cref="ConditionalTransition" /> class. /// </summary> public ConditionalTransition( ) { To = new List <IState> ( ); Expression = new StateTransitionExpression( ); True = null; False = null; From = null; if (_log.IsDebugEnabled) { _log.DebugFormat("un-configured ConditionalTransition created."); } }
/// <summary> /// Initializes a new instance of the <see cref="ConditionalTransition" /> class. /// </summary> /// <param name="fromState"> From state. </param> /// <param name="trueState"> From state. </param> /// <param name="falseState"> State of the true. </param> /// <param name="transitionExpression"> expression used to determine which branch to traverse. </param> public ConditionalTransition(IState fromState, IState trueState, IState falseState, Action <IExpressionEvaluator> transitionExpression) { To = new List <IState> ( ); Expression = new StateTransitionExpression { Expression = EditableExpression.CreateEditableExpression(() => transitionExpression) }; True = trueState; False = falseState; From = fromState; To.Add(trueState); To.Add(falseState); }