2using System.Threading.Tasks;
45 base.OnChildNodesUpdated();
47 this.when = this.GetChildElement<When>(
true);
56 DateTime Timepoint = await this.when.
CalcWhenUtc(Arguments);
58 if (Timepoint <= DateTime.UtcNow)
64 ActionId,
this.BeforeActionScript);
Abstract base class for nodes referencing an action.
async Task ExecuteNoLog(EvaluationArguments Arguments, bool SuppressProfiling)
Evaluates an action, without logging the time the action took as a sample value.
Task< string > GetReference(EvaluationArguments Arguments)
Evaluates the reference.
override void OnChildNodesUpdated()
Method called whenever ChildNodes is updated.
override string LocalName
Local name
override IStateMachineNode Create()
Creates a new node of the corresponding type.
ScheduleAction()
Schedules an action.
async Task Execute(EvaluationArguments Arguments)
Evaluates the action node
Defines when an action is to be executed.
async Task< DateTime > CalcWhenUtc(EvaluationArguments Arguments)
Calculates the point in time when an action is to be executed.
Contains information required for evaluating script in a state-machine.
StateMachine Machine
Reference to state-machine definition.
CaseInsensitiveString StateMachineId
ID of State Machine.
Interface for action nodes
Interface for State-Machine nodes