Interface IQuery<TValue>
The configured query.
Namespace: PushTechnology.ClientInterface.Client.Features.TimeSeries
Assembly: Diffusion.Client.dll
Syntax
public interface IQuery<TValue>
Type Parameters
| Name | Description |
|---|---|
| TValue | The query value type. |
Remarks
A default query that performs a value range query of an entire time series can be obtained using RangeQuery and further configured using methods of the IRangeQuery<TValue> interface.
Added in version 6.1.
Methods
SelectFromAsync(String)
Evaluates this query for a time series topic.
Declaration
Task<IQueryResult<TValue>> SelectFromAsync(string topicPath)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | topicPath | The path of the time series topic to query. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task<IQueryResult<TValue>> | The |
Remarks
The calling session must have the READ_TOPIC
topic permission for topicPath to evaluate the query.
The QUERY_OBSOLETE_TIME_SERIES_EVENTS
topic permission is also required if this is a ForEdits()
range query, or a ForValues() range query
with an EditRange().
If the operation completes successfully, the Task result
will be the IQueryResult<TValue> of the requested selection.
This method is the same as calling SelectFromAsync(String, CancellationToken)
with System.Threading.CancellationToken.None.
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException |
|
| NoSuchTopicException | There is no topic bound to |
| IncompatibleTopicException | The |
| InvalidQueryException | The range query is not valid for the time series.
Thrown by the returned |
| SessionSecurityException | The calling session does not have READ_TOPIC
permission for |
| SessionClosedException | The calling session is closed. Thrown by the returned |
See Also
SelectFromAsync(String, CancellationToken)
Evaluates this query for a time series topic.
Declaration
Task<IQueryResult<TValue>> SelectFromAsync(string topicPath, CancellationToken cancellationToken)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | topicPath | The path of the time series topic to query. |
| System.Threading.CancellationToken | cancellationToken | The cancellation token used to cancel the current operation. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task<IQueryResult<TValue>> | The |
Remarks
The calling session must have the READ_TOPIC
topic permission for topicPath to evaluate the query.
The QUERY_OBSOLETE_TIME_SERIES_EVENTS
topic permission is also required if this is a ForEdits()
range query, or a ForValues() range query
with an EditRange().
If the operation completes successfully, the Task result
will be the IQueryResult<TValue> of the requested selection.
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException |
|
| NoSuchTopicException | There is no topic bound to |
| IncompatibleTopicException | The |
| InvalidQueryException | The range query is not valid for the time series.
Thrown by the returned |
| SessionSecurityException | The calling session does not have READ_TOPIC
permission for |
| SessionClosedException | The calling session is closed. Thrown by the returned |