Neuron®
The Neuron® is the basis for the creation of open and secure federated networks for smart societies.
Loading...
Searching...
No Matches
ContractAction.cs
1
using
System.Threading.Tasks;
2
using
System.Xml;
3
using
Waher.Content.Xml
;
4
using
Waher.Persistence.Attributes
;
5
using
Waher.Service.IoTBroker.StateMachines.Model.Actions.Runtime
;
6
using
Waher.Service.IoTBroker.StateMachines.Model.Attributes
;
7
8
namespace
Waher.Service.IoTBroker.StateMachines.Model.Actions.Contracts
9
{
13
public
abstract
class
ContractAction
:
ActionWithReasonNode
14
{
15
private
ScriptableStringAttribute
contractId;
16
20
public
ContractAction
()
21
: base()
22
{
23
}
24
28
[DefaultValueNull]
29
public
string
ContractIdDefinition
30
{
31
get
=> this.contractId?.
Definition
;
32
set
=> this.contractId =
new
ScriptableStringAttribute
(value,
this
);
33
}
34
39
public
override
async Task
Parse
(XmlElement Xml)
40
{
41
this.contractId =
new
ScriptableStringAttribute
(
XML
.
Attribute
(Xml,
"contractId"
),
this
);
42
43
await base.Parse(Xml);
44
}
45
51
public
override
sealed async Task
Execute
(
EvaluationArguments
Arguments,
string
Reason
)
52
{
53
string
ContractId = await this.contractId.
Evaluate
(Arguments.
Variables
);
54
55
await this.
Execute
(Arguments,
Reason
, ContractId);
56
}
57
64
public
abstract
Task
Execute
(
EvaluationArguments
Arguments,
string
Reason
,
string
ContractId);
65
}
66
}
Waher.Content.Xml.XML
Helps with common XML-related tasks.
Definition:
XML.cs:21
Waher.Content.Xml.XML.Attribute
static string Attribute(XmlElement E, string Name)
Gets the value of an XML attribute.
Definition:
XML.cs:1062
Waher.Service.IoTBroker.StateMachines.Model.Actions.Contracts.ContractAction
Abstract base class for contract actions.
Definition:
ContractAction.cs:14
Waher.Service.IoTBroker.StateMachines.Model.Actions.Contracts.ContractAction.Execute
abstract Task Execute(EvaluationArguments Arguments, string Reason, string ContractId)
Evaluates the action node
Waher.Service.IoTBroker.StateMachines.Model.Actions.Contracts.ContractAction.Parse
override async Task Parse(XmlElement Xml)
Parses the State-machine node.
Definition:
ContractAction.cs:39
Waher.Service.IoTBroker.StateMachines.Model.Actions.Contracts.ContractAction.ContractAction
ContractAction()
Abstract base class for contract actions.
Definition:
ContractAction.cs:20
Waher.Service.IoTBroker.StateMachines.Model.Actions.Contracts.ContractAction.Execute
override sealed async Task Execute(EvaluationArguments Arguments, string Reason)
Evaluates the action node
Definition:
ContractAction.cs:51
Waher.Service.IoTBroker.StateMachines.Model.Actions.Contracts.ContractAction.ContractIdDefinition
string ContractIdDefinition
Contract ID definition.
Definition:
ContractAction.cs:30
Waher.Service.IoTBroker.StateMachines.Model.Actions.Runtime.ActionWithReasonNode
Abstract base class for actions with reason property.
Definition:
ActionWithReasonNode.cs:10
Waher.Service.IoTBroker.StateMachines.Model.Actions.Runtime.Reason
Defines a reason text.
Definition:
Reason.cs:9
Waher.Service.IoTBroker.StateMachines.Model.Attributes.ScriptableAttribute.Evaluate
async Task< T > Evaluate(Variables Variables)
Evaluates the attribute
Definition:
ScriptableAttribute.cs:66
Waher.Service.IoTBroker.StateMachines.Model.Attributes.ScriptableAttribute.Definition
string Definition
Attribute definition
Definition:
ScriptableAttribute.cs:37
Waher.Service.IoTBroker.StateMachines.Model.Attributes.ScriptableStringAttribute
Scriptable string attribute.
Definition:
ScriptableStringAttribute.cs:7
Waher.Service.IoTBroker.StateMachines.Model.EvaluationArguments
Contains information required for evaluating script in a state-machine.
Definition:
EvaluationArguments.cs:15
Waher.Service.IoTBroker.StateMachines.Model.EvaluationArguments.Variables
Variables Variables
Current set of variables.
Definition:
EvaluationArguments.cs:47
Waher.Content.Xml
Definition:
Attribute.cs:7
Waher.Persistence.Attributes
Definition:
ArchivingTimeAttribute.cs:4
Waher.Service.IoTBroker.StateMachines.Model.Actions.Contracts
Definition:
ContractAction.cs:9
Waher.Service.IoTBroker.StateMachines.Model.Actions.Runtime
Definition:
ActionWithReasonNode.cs:5
Waher.Service.IoTBroker.StateMachines.Model.Attributes
Definition:
ExpressionAttribute.cs:9
Waher.Service.IoTBroker
StateMachines
Model
Actions
Contracts
ContractAction.cs
Generated by
1.9.5