Class HigherOrderExecutionEnvironment
This interface supports hosting infrastructure for the operator library in a query engine.
Inheritance
Namespace: Reaqtor.Reactive
Assembly: Reaqtor.Reactive.HigherOrder.dll
Syntax
public class HigherOrderExecutionEnvironment : Object, IHigherOrderExecutionEnvironment, IExecutionEnvironment
Constructors
HigherOrderExecutionEnvironment(IExecutionEnvironment, IReactive)
Creates a new execution environment.
Declaration
public HigherOrderExecutionEnvironment(IExecutionEnvironment environment, IReactive reactive)
Parameters
| Type | Name | Description |
|---|---|---|
| IExecutionEnvironment | environment | The underlying base environment. |
| IReactive | reactive | The reactive service used to manage auxiliary artifacts. |
Methods
CreateBridge<T>(ISubscribable<T>, IObserver<T>, IOperatorContext)
Creates a bridge for a higher-order input subscription.
Declaration
public ISubscription CreateBridge<T>(ISubscribable<T> subscribable, IObserver<T> observer, IOperatorContext parent)
Parameters
| Type | Name | Description |
|---|---|---|
| ISubscribable<T> | subscribable | The upstream subscribable; should be quoted. |
| System.IObserver<T> | observer | The volatile downstream observer. |
| IOperatorContext | parent | The parent context. |
Returns
| Type | Description |
|---|---|
| ISubscription | A persistable subscription handle. |
Type Parameters
| Name | Description |
|---|---|
| T | The type of the elements. |
CreateRefCountSubject<T>(Uri, Uri, Uri, IOperatorContext)
Creates a reference counted subject.
Declaration
public IMultiSubject<T, T> CreateRefCountSubject<T>(Uri uri, Uri tollbooth, Uri collector, IOperatorContext parent)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Uri | uri | The URI used to identify the subject. |
| System.Uri | tollbooth | The URI of the tollbooth subject (see remarks in HigherOrderOutputStatefulOperatorBase). |
| System.Uri | collector | The URI of the collector subject (see remarks in HigherOrderOutputStatefulOperatorBase). |
| IOperatorContext | parent | The parent context. |
Returns
| Type | Description |
|---|---|
| IMultiSubject<T, T> | A persisted reference counted subject instance. |
Type Parameters
| Name | Description |
|---|---|
| T | The type of the elements. |
CreateSimpleSubject<T>(Uri, IOperatorContext)
Creates a simple subject.
Declaration
public IMultiSubject<T, T> CreateSimpleSubject<T>(Uri uri, IOperatorContext parent)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Uri | uri | The URI used to identify the subject. |
| IOperatorContext | parent | The parent context. |
Returns
| Type | Description |
|---|---|
| IMultiSubject<T, T> | A persisted simple subject instance. |
Type Parameters
| Name | Description |
|---|---|
| T | The type of the elements. |
DeleteSubject<T>(Uri, IOperatorContext)
Deletes a subject.
Declaration
public void DeleteSubject<T>(Uri uri, IOperatorContext parent)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Uri | uri | The URI used to identify the subject to delete. |
| IOperatorContext | parent | The parent context. |
Type Parameters
| Name | Description |
|---|---|
| T | The type of the elements. |
GetSubject<TInput, TOutput>(Uri)
Gets the subject with the specified identifier from the execution environment.
Declaration
public IMultiSubject<TInput, TOutput> GetSubject<TInput, TOutput>(Uri uri)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Uri | uri | Identifier of the subject. |
Returns
| Type | Description |
|---|---|
| IMultiSubject<TInput, TOutput> | Subject with the specified identifier, obtained from the execution environment. |
Type Parameters
| Name | Description |
|---|---|
| TInput | Type of the elements received by the subject. |
| TOutput | Type of the elements produced by the subject. |
GetSubscription(Uri)
Gets the subscription with the specified identifier from the execution environment.
Declaration
public ISubscription GetSubscription(Uri uri)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Uri | uri | Identifier of the subscription. |
Returns
| Type | Description |
|---|---|
| ISubscription | Subscription with the specified identifier, obtained from the execution environment. |
LoadBridge<T>(IOperatorStateReader, IObserver<T>, IOperatorContext)
Loads a bridge from checkpoint state.
Declaration
public ISubscription LoadBridge<T>(IOperatorStateReader reader, IObserver<T> observer, IOperatorContext parent)
Parameters
| Type | Name | Description |
|---|---|---|
| IOperatorStateReader | reader | The reader to load from. |
| System.IObserver<T> | observer | The volatile downstream observer to reconnect. |
| IOperatorContext | parent | The parent context. |
Returns
| Type | Description |
|---|---|
| ISubscription | A persistable subscription handle. |
Type Parameters
| Name | Description |
|---|---|
| T | The type of the elements. |
Quote<T>(IMultiSubject<T, T>, Uri)
Creates a quoted proxy around the given subject.
Declaration
public ISubscribable<T> Quote<T>(IMultiSubject<T, T> subject, Uri uri)
Parameters
| Type | Name | Description |
|---|---|---|
| IMultiSubject<T, T> | subject | The subject to quote. |
| System.Uri | uri | The URI of the subject. |
Returns
| Type | Description |
|---|---|
| ISubscribable<T> | A proxy to the subject with a quote attached to it. |
Type Parameters
| Name | Description |
|---|---|
| T | The type of the elements. |
Quote<TKey, TElement>(IGroupedMultiSubject<TKey, TElement>, Uri)
Creates a quoted proxy around the given group subject.
Declaration
public IGroupedSubscribable<TKey, TElement> Quote<TKey, TElement>(IGroupedMultiSubject<TKey, TElement> subject, Uri uri)
Parameters
| Type | Name | Description |
|---|---|---|
| IGroupedMultiSubject<TKey, TElement> | subject | The subject to quote. |
| System.Uri | uri | The URI of the subject. |
Returns
| Type | Description |
|---|---|
| IGroupedSubscribable<TKey, TElement> | A proxy to the subject with a quote attached to it. |
Type Parameters
| Name | Description |
|---|---|
| TKey | The type of the keys. |
| TElement | The type of the elements. |
SaveBridge(ISubscription, IOperatorStateWriter, IOperatorContext)
Saves the bridge to checkpoint state.
Declaration
public void SaveBridge(ISubscription subscription, IOperatorStateWriter writer, IOperatorContext parent)
Parameters
| Type | Name | Description |
|---|---|---|
| ISubscription | subscription | The persistable subscription obtained from Create or Load. |
| IOperatorStateWriter | writer | The writer to write to. |
| IOperatorContext | parent | The parent context. |