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. |