Diffusion .NET Client Library  6.1.5
 All Classes Namespaces Functions Variables Enumerations Enumerator Properties Events Pages
PushTechnology.ClientInterface.Client.Features.TimeSeries.IQueryResult< TValue > Interface Template Reference

The query result providing a stream of events. More...

Public Member Functions

IQueryResult< TValue > Merge (IQueryResult< TValue > other)
 Merges this result with other , combining original events and edit events, to produce an IQueryResult{TValue} of type StreamStructure.VALUE_EVENT_STREAM. More...
 

Properties

long SelectedCount [get]
 Gets the number of events selected by the query. More...
 
IEnumerable< IEvent< TValue > > Events [get]
 Gets the events as a IEnumerable{T}. More...
 
bool IsComplete [get]
 Gets whether this result includes all events selected by the query. More...
 
StreamStructure StreamStructure [get]
 Gets the structure of the events. More...
 

Detailed Description

The query result providing a stream of events.

Added in version 6.1.

Template Parameters
TValueThe query value type.

Member Function Documentation

IQueryResult<TValue> PushTechnology.ClientInterface.Client.Features.TimeSeries.IQueryResult< TValue >.Merge ( IQueryResult< TValue >  other)

Merges this result with other , combining original events and edit events, to produce an IQueryResult{TValue} of type StreamStructure.VALUE_EVENT_STREAM.

The following rules are applied to calculate the result:

  • If this result and other have an event with equal sequence numbers, the event from other is selected.
  • An edit event is selected in place of its original event.
  • If there are multiple edit events of an original edit, the one with the highest sequence is selected.

The returned result implements IQueryResult{TValue}.IsComplete to return true and IQueryResult{TValue}.SelectedCount to return the count of events in the stream, regardless of whether this result is complete.

Parameters
otherThe other query result to merge with.
Returns
The newly merged query result.
Exceptions
ArgumentNullExceptionother is null.

Property Documentation

IEnumerable<IEvent<TValue> > PushTechnology.ClientInterface.Client.Features.TimeSeries.IQueryResult< TValue >.Events
get

Gets the events as a IEnumerable{T}.

Returns
The events as a IEnumerable{T} interface. Instances benefit from the various combinator and reduction methods provided by System.Linq.
bool PushTechnology.ClientInterface.Client.Features.TimeSeries.IQueryResult< TValue >.IsComplete
get

Gets whether this result includes all events selected by the query.

Returns
true if IQueryResult{TValue}.SelectedCount is equal to the amount of events in IQueryResult{TValue}.Events. Otherwise false.
long PushTechnology.ClientInterface.Client.Features.TimeSeries.IQueryResult< TValue >.SelectedCount
get

Gets the number of events selected by the query.

This number may be greater than Stream.Count() due to a policy of the time series topic to limit the number of returned results, or the use of IRangeQuery{TValue}.Limit(long).

Returns
The number of events selected by the query.
StreamStructure PushTechnology.ClientInterface.Client.Features.TimeSeries.IQueryResult< TValue >.StreamStructure
get

Gets the structure of the events.

Returns
The stream structure of the provided events.

The documentation for this interface was generated from the following file: