예제 #1
0
        /// <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;
        }
예제 #2
0
        /// <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.");
            }
        }
예제 #3
0
        /// <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);
        }