Class ParallelOperators
- Namespace
- DynamicData.PLinq
- Assembly
- DynamicData.dll
PLinq operators or Net4 and Net45 only.
public static class ParallelOperators
- Inheritance
-
ParallelOperators
Methods
Filter<TObject, TKey>(IObservable<IChangeSet<TObject, TKey>>, Func<TObject, bool>, ParallelisationOptions)
Filters the stream using the specified predicate.
public static IObservable<IChangeSet<TObject, TKey>> Filter<TObject, TKey>(this IObservable<IChangeSet<TObject, TKey>> source, Func<TObject, bool> filter, ParallelisationOptions parallelisationOptions) where TObject : notnull where TKey : notnull
Parameters
source
IObservable<IChangeSet<TObject, TKey>>The source.
filter
Func<TObject, bool>The filter.
parallelisationOptions
ParallelisationOptionsThe parallelisation options.
Returns
- IObservable<IChangeSet<TObject, TKey>>
An observable which emits a change set.
Type Parameters
TObject
The type of the object.
TKey
The type of the key.
Exceptions
- ArgumentNullException
source.
SubscribeMany<TObject, TKey>(IObservable<IChangeSet<TObject, TKey>>, Func<TObject, IDisposable>, ParallelisationOptions)
Subscribes to each item when it is added to the stream and unsubscribes when it is removed. All items will be unsubscribed when the stream is disposed.
public static IObservable<IChangeSet<TObject, TKey>> SubscribeMany<TObject, TKey>(this IObservable<IChangeSet<TObject, TKey>> source, Func<TObject, IDisposable> subscriptionFactory, ParallelisationOptions parallelisationOptions) where TObject : notnull where TKey : notnull
Parameters
source
IObservable<IChangeSet<TObject, TKey>>The source.
subscriptionFactory
Func<TObject, IDisposable>The subscription function.
parallelisationOptions
ParallelisationOptionsThe parallelisation options.
Returns
- IObservable<IChangeSet<TObject, TKey>>
An observable which emits a change set.
Type Parameters
TObject
The type of the object.
TKey
The type of the key.
Remarks
Subscribes to each item when it is added or updates and unsubscribes when it is removed.
Exceptions
- ArgumentNullException
source or subscriptionFactory.
SubscribeMany<TObject, TKey>(IObservable<IChangeSet<TObject, TKey>>, Func<TObject, TKey, IDisposable>, ParallelisationOptions)
Subscribes to each item when it is added to the stream and unsubscribes when it is removed. All items will be unsubscribed when the stream is disposed.
public static IObservable<IChangeSet<TObject, TKey>> SubscribeMany<TObject, TKey>(this IObservable<IChangeSet<TObject, TKey>> source, Func<TObject, TKey, IDisposable> subscriptionFactory, ParallelisationOptions parallelisationOptions) where TObject : notnull where TKey : notnull
Parameters
source
IObservable<IChangeSet<TObject, TKey>>The source.
subscriptionFactory
Func<TObject, TKey, IDisposable>The subscription function.
parallelisationOptions
ParallelisationOptionsThe parallelisation options.
Returns
- IObservable<IChangeSet<TObject, TKey>>
An observable which emits a change set.
Type Parameters
TObject
The type of the object.
TKey
The type of the key.
Remarks
Subscribes to each item when it is added or updates and unsubscribes when it is removed.
Exceptions
- ArgumentNullException
source or subscriptionFactory.
TransformSafe<TDestination, TSource, TKey>(IObservable<IChangeSet<TSource, TKey>>, Func<TSource, TDestination>, Action<Error<TSource, TKey>>, ParallelisationOptions)
Projects each update item to a new form using the specified transform function, providing an error handling action to safely handle transform errors without killing the stream.
public static IObservable<IChangeSet<TDestination, TKey>> TransformSafe<TDestination, TSource, TKey>(this IObservable<IChangeSet<TSource, TKey>> source, Func<TSource, TDestination> transformFactory, Action<Error<TSource, TKey>> errorHandler, ParallelisationOptions parallelisationOptions) where TDestination : notnull where TSource : notnull where TKey : notnull
Parameters
source
IObservable<IChangeSet<TSource, TKey>>The source.
transformFactory
Func<TSource, TDestination>The transform factory.
errorHandler
Action<Error<TSource, TKey>>Provides the option to safely handle errors without killing the stream. If not specified the stream will terminate as per rx convention.
parallelisationOptions
ParallelisationOptionsThe parallelisation options.
Returns
- IObservable<IChangeSet<TDestination, TKey>>
A transformed update collection.
Type Parameters
TDestination
The type of the destination.
TSource
The type of the source.
TKey
The type of the key.
Exceptions
- ArgumentNullException
source or transformFactory.
TransformSafe<TDestination, TSource, TKey>(IObservable<IChangeSet<TSource, TKey>>, Func<TSource, TKey, TDestination>, Action<Error<TSource, TKey>>, ParallelisationOptions)
Projects each update item to a new form using the specified transform function, providing an error handling action to safely handle transform errors without killing the stream.
public static IObservable<IChangeSet<TDestination, TKey>> TransformSafe<TDestination, TSource, TKey>(this IObservable<IChangeSet<TSource, TKey>> source, Func<TSource, TKey, TDestination> transformFactory, Action<Error<TSource, TKey>> errorHandler, ParallelisationOptions parallelisationOptions) where TDestination : notnull where TSource : notnull where TKey : notnull
Parameters
source
IObservable<IChangeSet<TSource, TKey>>The source.
transformFactory
Func<TSource, TKey, TDestination>The transform factory.
errorHandler
Action<Error<TSource, TKey>>Provides the option to safely handle errors without killing the stream. If not specified the stream will terminate as per rx convention.
parallelisationOptions
ParallelisationOptionsThe parallelisation options to be used on the transforms.
Returns
- IObservable<IChangeSet<TDestination, TKey>>
A transformed update collection.
Type Parameters
TDestination
The type of the destination.
TSource
The type of the source.
TKey
The type of the key.
Exceptions
- ArgumentNullException
source or transformFactory.
Transform<TDestination, TSource, TKey>(IObservable<IChangeSet<TSource, TKey>>, Func<TSource, TDestination>, ParallelisationOptions)
Projects each update item to a new form using the specified transform function.
public static IObservable<IChangeSet<TDestination, TKey>> Transform<TDestination, TSource, TKey>(this IObservable<IChangeSet<TSource, TKey>> source, Func<TSource, TDestination> transformFactory, ParallelisationOptions parallelisationOptions) where TDestination : notnull where TSource : notnull where TKey : notnull
Parameters
source
IObservable<IChangeSet<TSource, TKey>>The source.
transformFactory
Func<TSource, TDestination>The transform factory.
parallelisationOptions
ParallelisationOptionsThe parallelisation options.
Returns
- IObservable<IChangeSet<TDestination, TKey>>
A transformed update collection.
Type Parameters
TDestination
The type of the destination.
TSource
The type of the source.
TKey
The type of the key.
Exceptions
- ArgumentNullException
source or transformFactory.
Transform<TDestination, TSource, TKey>(IObservable<IChangeSet<TSource, TKey>>, Func<TSource, TKey, TDestination>, ParallelisationOptions)
Projects each update item to a new form using the specified transform function.
public static IObservable<IChangeSet<TDestination, TKey>> Transform<TDestination, TSource, TKey>(this IObservable<IChangeSet<TSource, TKey>> source, Func<TSource, TKey, TDestination> transformFactory, ParallelisationOptions parallelisationOptions) where TDestination : notnull where TSource : notnull where TKey : notnull
Parameters
source
IObservable<IChangeSet<TSource, TKey>>The source.
transformFactory
Func<TSource, TKey, TDestination>The transform factory.
parallelisationOptions
ParallelisationOptionsThe parallelisation options to be used on the transforms.
Returns
- IObservable<IChangeSet<TDestination, TKey>>
A transformed update collection.
Type Parameters
TDestination
The type of the destination.
TSource
The type of the source.
TKey
The type of the key.
Exceptions
- ArgumentNullException
source or transformFactory.