Ejemplo n.º 1
0
 protected ChoiceRuntimeStateBase(
     string name,
     Func <string, Task> onEnterAction,
     Func <string, Task> onExitAction,
     Func <string, Task> onCanceledAction,
     RuntimeTransition elseTransition)
     : base(name, onEnterAction, onExitAction, onCanceledAction)
 {
     this.elseTransition = elseTransition;
 }
Ejemplo n.º 2
0
 public CompositeRuntimeState(
     string name,
     Func <string, Task> onEnterAction,
     Func <string, Task> onExitAction,
     Func <string, Task> onCanceledAction,
     RuntimeTransition initialTransition)
     : base(name, onEnterAction, onExitAction, onCanceledAction)
 {
     this.initialTransition = initialTransition;
 }
Ejemplo n.º 3
0
        public void AddEventTransition(string eventName, RuntimeTransition transition)
        {
            this.EnsureNotExcuting();

            if (!this.transitions.TryGetValue(eventName, out var transitionList))
            {
                transitionList = new LinkedList <RuntimeTransition>();
                this.transitions.Add(eventName, transitionList);
            }

            transitionList.AddLast(transition);
        }
Ejemplo n.º 4
0
 public IfElseRuntimeState(
     string name,
     Func <string, Task> onEnterAction,
     Func <string, Task> onExitAction,
     Func <string, Task> onCanceledAction,
     RuntimeTransition elseTransition,
     RuntimeTransition trueTransition,
     Func <bool> predicate)
     : base(name, onEnterAction, onExitAction, onCanceledAction, elseTransition)
 {
     this.trueTransition = trueTransition;
     this.predicate      = predicate;
 }
Ejemplo n.º 5
0
 public SwitchRuntimeState(
     string name,
     Func <string, Task> onEnterAction,
     Func <string, Task> onExitAction,
     Func <string, Task> onCanceledAction,
     RuntimeTransition elseTransition,
     IDictionary <TSwitch, RuntimeTransition> selectionTransitions,
     Func <TSwitch> selector)
     : base(name, onEnterAction, onExitAction, onCanceledAction, elseTransition)
 {
     this.selectionTransitions = selectionTransitions;
     this.selector             = selector;
 }