Difference between revisions of "Extensions.Measure.ExecuteDeviceService"

From emotive
Jump to navigation Jump to search
 
(7 intermediate revisions by one other user not shown)
Line 1: Line 1:
[[Category:Measure]]
+
{{DISPLAYTITLE:'''ExecuteDeviceService '''}}[[Category:Measure]]
 
== Classification ==
 
== Classification ==
{{ClassificationActivity | ExecuteDeviceService | Execute a service providedby a measurement device. | [[Action]] | [[Measure|OTX Measure extension]] | [[Measure related actions]] | - | [[CoreChk053|Core_Chk053]]<br />[[MeasureChk001|Measure_Chk001]]<br />[[MeasureChk002|Measure_Chk002]]<br/>[[MeasureChk003|Measure_Chk003]]<br/>[[MeasureChk004|Measure_Chk004]]<br/>[[MeasureChk005|Measure_Chk005]] }}
+
{{ClassificationActivity | ExecuteDeviceService | Executes a service provided by a measurement device. | [[Action]] | [[Extensions.Measure|OTX Measure extension]] | [[Extensions.Measure#Actions|Measure related actions]] | - | [[Core.Validation.CoreChk053|Core_Chk053]]<br />[[Extensions.Measure.MeasureChk001|Measure_Chk001]]<br />[[Extensions.Measure.MeasureChk002|Measure_Chk002]]<br/>[[Extensions.Measure.MeasureChk003|Measure_Chk003]]<br/>[[Extensions.Measure.MeasureChk004|Measure_Chk004]]<br/>[[Extensions.Measure.MeasureChk005|Measure_Chk005]] }}
  
 
== OTL Syntax ==
 
== OTL Syntax ==
 
<syntaxhighlight lang="java" enclose="div" style="font-size: medium;">
 
<syntaxhighlight lang="java" enclose="div" style="font-size: medium;">
Measure.ExecuteDeviceService(Device device, Service service, DeviceServiceArguments arguments, BooleanTerm executeAsync, BooleanTerm suppressInvalidMeasurementException);
+
Measure.ExecuteDeviceService(OtxLink device, OtxName service, {DeviceServiceArguments[ ] arguments}, Boolean suppressInvalidMeasurementException, Boolean executeAsync);
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
== Description ==
 
== Description ==
The '''ExecuteDeviceService''' action shall execute a service providedby a measurement device. The action connects to physical devices from where it retrieves measurements.
+
The '''ExecuteDeviceService''' action will execute a service provided by a measurement device. The action connects to physical devices from where it retrieves measurements.
  
 
== Properties ==
 
== Properties ==
 
{| {{TableHeader}}
 
{| {{TableHeader}}
 
{{TableRowPropertiesHeader}}
 
{{TableRowPropertiesHeader}}
{{TableRowPropertie1| executeAsync | [[Boolean]] | [[Value]] | false | [0..1] | This option tells the communication backend to make this device service execution non-blocking. This means that if executeAsyncis set to true, the OTX execution flow will immediately move on to the  
+
{{TableRowPropertie2| ExecuteAsync | [[Core.DataTypes.SimpleDataType.Boolean|Boolean]] | [[Value]] | false | [0..1] | This option tells the communication backend to make this device service execution non-blocking. This means that if '''executeAsync''' is set to '''true''', the OTX execution flow will immediately move on to the next '''Action''', without waiting for the result of the '''ExecuteDeviceService''' action.}}
next Action, without waiting for the result of the '''ExecuteDeviceService''' action. }}
+
{{TableRowPropertie1| SuppressInvalidMeasurementException | [[Core.DataTypes.SimpleDataType.Boolean|Boolean]] | [[Value]] | false | [0..1] | This flag will affect only those device services which declare [[Extensions.Measure.InvalidMeasurementException|InvalidMeasurementException]] in their '''<throws>''' block. For other device services, it will have no effect.}}
{{TableRowPropertie2| suppressInvalidMeasurementException | [[Boolean]] | [[Value]] | false | [0..1] | This flag shall affect only those device services which declare InvalidMeasurementException in their throws block. For other device services, it shall have no effect. }}
+
{{TableRowPropertie2| Device | [[OtxLink]] | - | - | [1] | This attribute identifies the measurement device to execute the service on. The link will point to the corresponding '''DeviceSignature''' for that device.}}
{{TableRowPropertie1| Device | [[OtxLink]] | - | - | [1] | This attribute identifies the measurement device to execute the service on. The link shall point to the corresponding '''DeviceSignature''' for that device. }}
+
{{TableRowPropertie1| Service | [[OtxName]] | - | - | [1] | Identifies the service which will be executed. The service name will be defined within the corresponding service declaration within the '''DeviceSignature'''.}}
{{TableRowPropertie2| Service | [[OtxName]] | - | - | [1] | Identifies the service which shall be executed. The service nameshall be defined within the corresponding service declaration within the '''DeviceSignature'''. }}
+
{{TableRowPropertie2| Arguments | DeviceServiceArguments | - | - | [0..1] | The content-type of this simple container element is '''<xsd:choice> [1..*]''' which allows an arbitrarylength list of in- and output arguments for the to-be-executed device service's parameters.}}
{{TableRowPropertie1| Arguments | DeviceServiceArguments | - | - | [0..*] | Collection of [[Term]]s which allows an arbitrarylength list of in- and output arguments for the to-be-executed device service's parameters. }}
 
 
|}
 
|}
  
 
== OTL Examples ==
 
== OTL Examples ==
 
<syntaxhighlight lang="java" enclose="div" style="font-size: medium;">
 
<syntaxhighlight lang="java" enclose="div" style="font-size: medium;">
 +
/// Signatures
 +
 
package Measure.DeviceSignature DeviceSignature1
 
package Measure.DeviceSignature DeviceSignature1
 
{
 
{
  DeviceServiceSignature DeviceServiceSignature1(in Integer DeviceServiceInParameter1, out String DeviceServiceOutParameter1);
+
Measure.DeviceServiceSignature DeviceServiceSignature1(in Integer DeviceServiceInParameter1, out String DeviceServiceOutParameter1);
 
}
 
}
 +
 +
/// Global Declarations
  
 
public procedure main()
 
public procedure main()
 
{
 
{
  Measure.ExecuteDeviceService(DeviceSignature1, DeviceServiceSignature1, {in DeviceServiceInParameter1 = 1, out DeviceServiceOutParameter1 = null}, false, false);
+
/// Local Declarations
}
+
 
 +
/// Flow
 +
 
 +
Measure.ExecuteDeviceService(DeviceSignature1, DeviceServiceSignature1, {DeviceServiceInParameter1 = 4, DeviceServiceOutParameter1}, false, false);
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
== See also ==
 
== See also ==
 
[[Core.Signatures.DeviceSignatures|DeviceSignature]]
 
[[Core.Signatures.DeviceSignatures|DeviceSignature]]

Latest revision as of 02:50, 13 September 2019

Classification

Name ExecuteDeviceService
Short Description Executes a service provided by a measurement device.
Class Action
Extension OTX Measure extension
Group Measure related actions
Exceptions -
Checker Rules Core_Chk053
Measure_Chk001
Measure_Chk002
Measure_Chk003
Measure_Chk004
Measure_Chk005
Standard Compliant Yes

OTL Syntax

Measure.ExecuteDeviceService(OtxLink device, OtxName service, {DeviceServiceArguments[ ] arguments}, Boolean suppressInvalidMeasurementException, Boolean executeAsync);

Description

The ExecuteDeviceService action will execute a service provided by a measurement device. The action connects to physical devices from where it retrieves measurements.

Properties

Name Data Type Class Default Cardinality Description
ExecuteAsync Boolean Value false [0..1] This option tells the communication backend to make this device service execution non-blocking. This means that if executeAsync is set to true, the OTX execution flow will immediately move on to the next Action, without waiting for the result of the ExecuteDeviceService action.
SuppressInvalidMeasurementException Boolean Value false [0..1] This flag will affect only those device services which declare InvalidMeasurementException in their <throws> block. For other device services, it will have no effect.
Device OtxLink - - [1] This attribute identifies the measurement device to execute the service on. The link will point to the corresponding DeviceSignature for that device.
Service OtxName - - [1] Identifies the service which will be executed. The service name will be defined within the corresponding service declaration within the DeviceSignature.
Arguments DeviceServiceArguments - - [0..1] The content-type of this simple container element is <xsd:choice> [1..*] which allows an arbitrarylength list of in- and output arguments for the to-be-executed device service's parameters.

OTL Examples

/// Signatures

package Measure.DeviceSignature DeviceSignature1
{
	Measure.DeviceServiceSignature DeviceServiceSignature1(in Integer DeviceServiceInParameter1, out String DeviceServiceOutParameter1);
}

/// Global Declarations

public procedure main()
{
	/// Local Declarations

	/// Flow

	Measure.ExecuteDeviceService(DeviceSignature1, DeviceServiceSignature1, {DeviceServiceInParameter1 = 4, DeviceServiceOutParameter1}, false, false);

See also

DeviceSignature