Class SampleValidOverTime
- Namespace
- Acuit.Pinpoint.Workflows.Testing.Activities
- Assembly
- Acuit.Pinpoint.Workflows.Testing.dll
Samples a data source, ensuring it remains continuously valid over a time duration.
public class SampleValidOverTime : Activity<IDataValue>, IActivity
- Inheritance
-
SampleValidOverTime
- Implements
- Inherited Members
Examples
<TakeValue Name="Burn-off Gas Flow">
<SampleValidOverTime DataSource="{Reading GasFlowRate}" Duration="0:00:45">
<SampleValidOverTime.Validator>
<GreaterThanOrEqualToValidator Value="12" />
</SampleValidOverTime.Validator>
</SampleValidOverTime>
</TakeValue>
Remarks
Upon an invalid data value, the activity will immediately end and the activity result will be the invalid data value. If no invalid data value occurs over the time duration, the activity result will be the average value of the data values over the time window.
Properties
DataSource
Gets or sets the data source to sample.
public ValueSource<IDataSource> DataSource { get; set; }
Property Value
Duration
Gets or sets the duration over which the data values must stay valid, which is required and must be greater than Zero.
public ValueSource<TimeSpan> Duration { get; set; }
Property Value
Validator
Gets or sets the validator used to validate the data values. This is required. The validator is initialized once when the activity starts; arguments are not continuously evaluated while waiting.
public IDataValueValidator Validator { get; set; }
Property Value
Methods
OnExecuteAsync(ActivityContext, CancellationToken)
Derived classes must implement this to perform the activity.
protected override Task<IDataValue> OnExecuteAsync(ActivityContext context, CancellationToken cancellationToken)
Parameters
context
ActivityContextThe activity context.
cancellationToken
CancellationTokenThe cancellation token used to request canceling the activity.
Returns
- Task<IDataValue>
A task that represents the asynchronous operation. The value of its Result property contains the result.
Exceptions
- ArgumentNullException
context
is null.- InvalidOperationException
A service required by the activity is not available, or a required activity property value is not set.
- Exception
An error occurred while performing the activity.
ToString()
Returns a string that represents the current object.
public override string ToString()
Returns
- string
A string that represents the current object.
Remarks
This is expected to produce a string suitable for labeling this activity in a workflow diagram. It should be as specific as possible, but while keeping it very short. In general, it should be the short name of the class (as that is how it would typically be defined in the workflow XAML), optionally followed by other property values of interest in a diagram. The default implementation returns the short name of the class.