RxJavaExtensions icon indicating copy to clipboard operation
RxJavaExtensions copied to clipboard

Add indexed transform operator to ParallelFlowable

Open akarnokd opened this issue 5 years ago • 0 comments

Signature:

ParallelTransformer<T, R> transformRail(BiFunction<Flowable<T>, Integer, Publisher<R> mapper)

Given the parallelism of the ParallelFlowable, the function will be called for each rail indexed 0..n-1 to provide a mapping for that particular rail.

Considerations:

  • The input Flowables will be single-subscriber only.
  • The implementation should not buffer but has to be careful when relaying signals because:
    • the returned Publisher may not be connected to the input Flowable for a time or at all.
    • the input Flowable may terminate before the downstream gets to subscribing to it.

See also https://github.com/akarnokd/RxJavaMicroprofileRS/blob/master/src/main/java/hu/akarnokd/rxjava3/mprs/DeferredProcessor.java

akarnokd avatar Aug 06 '20 09:08 akarnokd