Show / Hide Table of Contents

Class ReactiveQubjectFactoryBase<TInput, TOutput, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>

Base class for the implementation of parameterized subject factories represented by an expression tree.

Inheritance
System.Object
ReactiveQubjectFactoryBase<TInput, TOutput, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>
Implements
IReactiveQubjectFactory<TInput, TOutput, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>
IReactiveSubjectFactory<TInput, TOutput, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>
IReactiveExpressible
IExpressible
Namespace: Reaqtor
Assembly: Reaqtor.Expressions.Core.dll
Syntax
public abstract class ReactiveQubjectFactoryBase<TInput, TOutput, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6> : Object, IReactiveQubjectFactory<TInput, TOutput, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>, IReactiveSubjectFactory<TInput, TOutput, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>, IReactiveExpressible, IExpressible
Type Parameters
Name Description
TInput

Type of the data received by the subjects created by the factory.

TOutput

Type of the data produced by the subjects created by the factory.

TArg1

Type of the first parameter passed to the subject factory.

TArg2

Type of the second parameter passed to the subject factory.

TArg3

Type of the third parameter passed to the subject factory.

TArg4

Type of the fourth parameter passed to the subject factory.

TArg5

Type of the fifth parameter passed to the subject factory.

TArg6

Type of the sixth parameter passed to the subject factory.

Constructors

ReactiveQubjectFactoryBase(IReactiveQueryProvider)

Creates a new subject factory represented by an expression tree, using the specified associated query provider.

Declaration
protected ReactiveQubjectFactoryBase(IReactiveQueryProvider provider)
Parameters
Type Name Description
IReactiveQueryProvider provider

Query provider associated with the subject factory.

Properties

Expression

Gets the expression tree representing the subject 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 subject factory.

Declaration
public IReactiveQueryProvider Provider { get; }
Property Value
Type Description
IReactiveQueryProvider

Methods

Create(Uri, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, Object)

Creates a new stream with the specified stream URI.

Declaration
public IReactiveQubject<TInput, TOutput> Create(Uri streamUri, TArg1 arg1, TArg2 arg2, TArg3 arg3, TArg4 arg4, TArg5 arg5, TArg6 arg6, object state = null)
Parameters
Type Name Description
System.Uri streamUri

URI identifying the stream.

TArg1 arg1

First parameter to pass to the subject factory.

TArg2 arg2

Second parameter to pass to the subject factory.

TArg3 arg3

Third parameter to pass to the subject factory.

TArg4 arg4

Fourth parameter to pass to the subject factory.

TArg5 arg5

Fifth parameter to pass to the subject factory.

TArg6 arg6

Sixth parameter to pass to the subject factory.

System.Object state

Additional metadata to associate with the artifact. Implementations can interpret this value, or ignore it.

Returns
Type Description
IReactiveQubject<TInput, TOutput>

A subject object that can be used to send and receive data on the stream, or an exception if the creation request was unsuccessful.

CreateCore(Uri, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, Object)

Creates a new stream with the specified stream URI.

Declaration
protected abstract IReactiveQubject<TInput, TOutput> CreateCore(Uri streamUri, TArg1 arg1, TArg2 arg2, TArg3 arg3, TArg4 arg4, TArg5 arg5, TArg6 arg6, object state)
Parameters
Type Name Description
System.Uri streamUri

URI identifying the stream.

TArg1 arg1

First parameter to pass to the subject factory.

TArg2 arg2

Second parameter to pass to the subject factory.

TArg3 arg3

Third parameter to pass to the subject factory.

TArg4 arg4

Fourth parameter to pass to the subject factory.

TArg5 arg5

Fifth parameter to pass to the subject factory.

TArg6 arg6

Sixth parameter to pass to the subject factory.

System.Object state

Additional metadata to associate with the artifact. Implementations can interpret this value, or ignore it.

Returns
Type Description
IReactiveQubject<TInput, TOutput>

A subject object that can be used to send and receive data on the stream, or an exception if the creation request was unsuccessful.

Explicit Interface Implementations

IReactiveSubjectFactory<TInput, TOutput, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>.Create(Uri, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, Object)

Creates a new subject with the specified stream URI.

Declaration
IReactiveSubject<TInput, TOutput> IReactiveSubjectFactory<TInput, TOutput, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>.Create(Uri streamUri, TArg1 arg1, TArg2 arg2, TArg3 arg3, TArg4 arg4, TArg5 arg5, TArg6 arg6, object state)
Parameters
Type Name Description
System.Uri streamUri

URI identifying the stream.

TArg1 arg1

First parameter to pass to the subject factory.

TArg2 arg2

Second parameter to pass to the subject factory.

TArg3 arg3

Third parameter to pass to the subject factory.

TArg4 arg4

Fourth parameter to pass to the subject factory.

TArg5 arg5

Fifth parameter to pass to the subject factory.

TArg6 arg6

Sixth parameter to pass to the subject factory.

System.Object state

Additional metadata to associate with the artifact. Implementations can interpret this value, or ignore it.

Returns
Type Description
IReactiveSubject<TInput, TOutput>

A subject object that can be used to send and receive data on the stream, or an exception if the creation request was unsuccessful.

Implements

IReactiveQubjectFactory<TInput, TOutput, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>
IReactiveSubjectFactory<TInput, TOutput, TArg1, TArg2, TArg3, TArg4, TArg5, TArg6>
IReactiveExpressible
IExpressible
In This Article
Back to top Generated by DocFX