/// <summary> /// Peeks into the flow on each rail and calls the given shared Action. /// </summary> /// <typeparam name="T">The value type.</typeparam> /// <param name="source">The source IParallelFlowable instance.</param> /// <param name="onAfterTerminated">The action called after the error or completion /// signal has been relayed to the downstream.</param> /// <returns>The new IParallelFlowable instance.</returns> public static IParallelFlowable <T> DoAfterTerminated <T>(this IParallelFlowable <T> source, Action onAfterTerminated) { return(ParallelFlowablePeek <T> .Create(source, onAfterTerminated : onAfterTerminated)); }
/// <summary> /// Peeks into the flow on each rail and calls the given shared Action. /// </summary> /// <typeparam name="T">The value type.</typeparam> /// <param name="source">The source IParallelFlowable instance.</param> /// <param name="onError">The action called with the Exception before the /// Exception is relayed to the downstream.</param> /// <returns>The new IParallelFlowable instance.</returns> public static IParallelFlowable <T> DoOnError <T>(this IParallelFlowable <T> source, Action <Exception> onError) { return(ParallelFlowablePeek <T> .Create(source, onError : onError)); }
/// <summary> /// Peeks into the flow on each rail and calls the given shared Action. /// </summary> /// <typeparam name="T">The value type.</typeparam> /// <param name="source">The source IParallelFlowable instance.</param> /// <param name="onComplete">The action called before the completion signal is relayed /// to the downstream.</param> /// <returns>The new IParallelFlowable instance.</returns> public static IParallelFlowable <T> DoOnComplete <T>(this IParallelFlowable <T> source, Action onComplete) { return(ParallelFlowablePeek <T> .Create(source, onComplete : onComplete)); }
/// <summary> /// Peeks into the flow on each rail and calls the given shared Action. /// </summary> /// <typeparam name="T">The value type.</typeparam> /// <param name="source">The source IParallelFlowable instance.</param> /// <param name="onAfterNext">The action called with the current item after the item /// has been relayed to the downstream.</param> /// <returns>The new IParallelFlowable instance.</returns> public static IParallelFlowable <T> DoAfterNext <T>(this IParallelFlowable <T> source, Action <T> onAfterNext) { return(ParallelFlowablePeek <T> .Create(source, onAfterNext : onAfterNext)); }