Class AsyncReactiveQubscriptionFactoryBase<TArg1, TArg2, TArg3, TArg4>
Base class for the implementation of parameterized subscription factories represented by an expression tree.
Inheritance
Implements
Namespace: Reaqtor
Assembly: Reaqtor.Expressions.Core.dll
Syntax
public abstract class AsyncReactiveQubscriptionFactoryBase<TArg1, TArg2, TArg3, TArg4> : Object, IAsyncReactiveQubscriptionFactory<TArg1, TArg2, TArg3, TArg4>, IAsyncReactiveSubscriptionFactory<TArg1, TArg2, TArg3, TArg4>, IAsyncReactiveExpressible, IExpressible
Type Parameters
Name | Description |
---|---|
TArg1 | Type of the first parameter passed to the subscription factory. |
TArg2 | Type of the second parameter passed to the subscription factory. |
TArg3 | Type of the third parameter passed to the subscription factory. |
TArg4 | Type of the fourth parameter passed to the subscription factory. |
Constructors
AsyncReactiveQubscriptionFactoryBase(IAsyncReactiveQueryProvider)
Creates a new subscription factory represented by an expression tree, using the specified associated query provider.
Declaration
protected AsyncReactiveQubscriptionFactoryBase(IAsyncReactiveQueryProvider provider)
Parameters
Type | Name | Description |
---|---|---|
IAsyncReactiveQueryProvider | provider | Query provider associated with the subscription factory. |
Properties
Expression
Gets the expression tree representing the subscription factory.
Declaration
public abstract Expression Expression { get; }
Property Value
Type | Description |
---|---|
System.Linq.Expressions.Expression |
Provider
Gets the query provider that is associated with the subscription factory.
Declaration
public IAsyncReactiveQueryProvider Provider { get; }
Property Value
Type | Description |
---|---|
IAsyncReactiveQueryProvider |
Methods
CreateAsync(Uri, TArg1, TArg2, TArg3, TArg4, Object, CancellationToken)
Creates a new subscription with the specified subscription URI.
Declaration
public Task<IAsyncReactiveQubscription> CreateAsync(Uri subscriptionUri, TArg1 arg1, TArg2 arg2, TArg3 arg3, TArg4 arg4, object state = null, CancellationToken token = null)
Parameters
Type | Name | Description |
---|---|---|
System.Uri | subscriptionUri | URI identifying the subscription. |
TArg1 | arg1 | First parameter to pass to the subscription factory. |
TArg2 | arg2 | Second parameter to pass to the subscription factory. |
TArg3 | arg3 | Third parameter to pass to the subscription factory. |
TArg4 | arg4 | Fourth parameter to pass to the subscription factory. |
System.Object | state | Additional state to pass to the operation. Implementations can interpret this value, or ignore it. |
System.Threading.CancellationToken | token | Token to observe for cancellation of the request. |
Returns
Type | Description |
---|---|
System.Threading.Tasks.Task<IAsyncReactiveQubscription> | Task returning a subscription object that can be used to send and receive data on the subscription, or an exception if the creation request was unsuccessful. |
CreateAsyncCore(Uri, TArg1, TArg2, TArg3, TArg4, Object, CancellationToken)
Creates a new subscription with the specified subscription URI.
Declaration
protected abstract Task<IAsyncReactiveQubscription> CreateAsyncCore(Uri subscriptionUri, TArg1 arg1, TArg2 arg2, TArg3 arg3, TArg4 arg4, object state, CancellationToken token)
Parameters
Type | Name | Description |
---|---|---|
System.Uri | subscriptionUri | URI identifying the subscription. |
TArg1 | arg1 | First parameter to pass to the subscription factory. |
TArg2 | arg2 | Second parameter to pass to the subscription factory. |
TArg3 | arg3 | Third parameter to pass to the subscription factory. |
TArg4 | arg4 | Fourth parameter to pass to the subscription factory. |
System.Object | state | Additional state to pass to the operation. Implementations can interpret this value, or ignore it. |
System.Threading.CancellationToken | token | Token to observe for cancellation of the request. |
Returns
Type | Description |
---|---|
System.Threading.Tasks.Task<IAsyncReactiveQubscription> | Task returning a subscription object that can be used to send and receive data on the subscription, or an exception if the creation request was unsuccessful. |
Explicit Interface Implementations
IAsyncReactiveSubscriptionFactory<TArg1, TArg2, TArg3, TArg4>.CreateAsync(Uri, TArg1, TArg2, TArg3, TArg4, Object, CancellationToken)
Creates a new subscription with the specified subscription URI.
Declaration
Task<IAsyncReactiveSubscription> IAsyncReactiveSubscriptionFactory<TArg1, TArg2, TArg3, TArg4>.CreateAsync(Uri subscriptionUri, TArg1 arg1, TArg2 arg2, TArg3 arg3, TArg4 arg4, object state, CancellationToken token)
Parameters
Type | Name | Description |
---|---|---|
System.Uri | subscriptionUri | URI identifying the subscription. |
TArg1 | arg1 | First parameter to pass to the subscription factory. |
TArg2 | arg2 | Second parameter to pass to the subscription factory. |
TArg3 | arg3 | Third parameter to pass to the subscription factory. |
TArg4 | arg4 | Fourth parameter to pass to the subscription factory. |
System.Object | state | Additional state to pass to the operation. Implementations can interpret this value, or ignore it. |
System.Threading.CancellationToken | token | Token to observe for cancellation of the request. |
Returns
Type | Description |
---|---|
System.Threading.Tasks.Task<IAsyncReactiveSubscription> | Task returning a subscription object that can be used to send and receive data on the subscription, or an exception if the creation request was unsuccessful. |