Top Description Fields Constructors Methods
reactor.core.publisher

pack-priv final Class ParallelFlatMap<T, R>

extends ParallelFlux<R>
implements Scannable
Class Inheritance
All Implemented Interfaces
reactor.core.Scannable
Type Parameters
<T>
the input value type
<R>
the output value type
Imports
java.util.Queue, java.util.function.Function, .Supplier, org.reactivestreams.Publisher, reactor.core.CoreSubscriber, .Scannable, reactor.util.annotation.Nullable

Flattens the generated Publishers on each rail.

Field Summary

Modifier and TypeField and Description
pack-priv final boolean
pack-priv final Supplier<? extends Queue<R>>
pack-priv final Supplier<? extends Queue<R>>
pack-priv final Function<? super T, ? extends Publisher<? extends R>>
pack-priv final int
pack-priv final int
pack-priv final ParallelFlux<T>

Constructor Summary

AccessConstructor and Description
pack-priv
ParallelFlatMap(ParallelFlux<T> source, Function<? super T, ? extends Publisher<? extends R>> mapper, boolean delayError, int maxConcurrency, Supplier<? extends Queue<R>> mainQueueSupplier, int prefetch, Supplier<? extends Queue<R>> innerQueueSupplier)

Method Summary

Modifier and TypeMethod and Description
public int
getPrefetch()

Overrides reactor.core.publisher.ParallelFlux.getPrefetch.

The prefetch configuration of the component
public int
parallelism()

Implements abstract reactor.core.publisher.ParallelFlux.parallelism.

Returns the number of expected parallel Subscribers.
public Object
scanUnsafe(Scannable.Attr<T>
a Attr to resolve for the component.
key
)

Implements reactor.core.Scannable.scanUnsafe.

This method is used internally by components to define their key-value mappings in a single place.
public void
subscribe(CoreSubscriber<? super R>[]
the subscribers array to run in parallel, the number of items must be equal to the parallelism level of this ParallelFlux
subscribers
)

Implements abstract reactor.core.publisher.ParallelFlux.subscribe.

Subscribes an array of Subscribers to this ParallelFlux and triggers the execution chain for all 'rails'.
Inherited from reactor.core.publisher.ParallelFlux:
ascheckpointcheckpointcheckpointcollectcollectSortedListcollectSortedListconcatMapconcatMapconcatMapconcatMapDelayErrorconcatMapDelayErrorconcatMapDelayErrordoAfterTerminatedoOnCanceldoOnCompletedoOnEachdoOnErrordoOnNextdoOnRequestdoOnSignaldoOnSubscribedoOnTerminatefilterflatMapflatMapflatMapflatMapfromfromfromfromfromgroupshideloglogloglogmapnameonAssemblyorderedorderedreducereducerunOnrunOnsequentialsequentialsortedsortedsortedMergersubscribesubscribesubscribesubscribesubscribesubscribesubscribesubscribesubscribetagthentoStringtransformtransformGroupsvalidate

Field Detail

delayErrorback to summary
pack-priv final boolean delayError
innerQueueSupplierback to summary
pack-priv final Supplier<? extends Queue<R>> innerQueueSupplier
mainQueueSupplierback to summary
pack-priv final Supplier<? extends Queue<R>> mainQueueSupplier
mapperback to summary
pack-priv final Function<? super T, ? extends Publisher<? extends R>> mapper
maxConcurrencyback to summary
pack-priv final int maxConcurrency
prefetchback to summary
pack-priv final int prefetch
sourceback to summary
pack-priv final ParallelFlux<T> source

Constructor Detail

ParallelFlatMapback to summary
pack-priv ParallelFlatMap(ParallelFlux<T> source, Function<? super T, ? extends Publisher<? extends R>> mapper, boolean delayError, int maxConcurrency, Supplier<? extends Queue<R>> mainQueueSupplier, int prefetch, Supplier<? extends Queue<R>> innerQueueSupplier)

Method Detail

getPrefetchback to summary
public int getPrefetch()

Overrides reactor.core.publisher.ParallelFlux.getPrefetch.

Doc from reactor.core.publisher.ParallelFlux.getPrefetch.

The prefetch configuration of the component

Returns:int

the prefetch configuration of the component

Annotations
@Override
parallelismback to summary
public int parallelism()

Implements abstract reactor.core.publisher.ParallelFlux.parallelism.

Doc from reactor.core.publisher.ParallelFlux.parallelism.

Returns the number of expected parallel Subscribers.

Returns:int

the number of expected parallel Subscribers

Annotations
@Override
scanUnsafeback to summary
public Object scanUnsafe(Scannable.Attr<T> key)

Implements reactor.core.Scannable.scanUnsafe.

Doc from reactor.core.Scannable.scanUnsafe.

This method is used internally by components to define their key-value mappings in a single place. Although it is ignoring the generic type of the Attr key, implementors should take care to return values of the correct type, and return null if no specific value is available.

For public consumption of attributes, prefer using scan(Attr), which will return a typed value and fall back to the key's default if the component didn't define any mapping.

Parameters
key:Scannable.Attr<T>

a Attr to resolve for the component.

Returns:Object

the value associated to the key for that specific component, or null if none.

Annotations
@Override
@Nullable
subscribeback to summary
public void subscribe(CoreSubscriber<? super R>[] subscribers)

Implements abstract reactor.core.publisher.ParallelFlux.subscribe.

Doc from reactor.core.publisher.ParallelFlux.subscribe.

Subscribes an array of Subscribers to this ParallelFlux and triggers the execution chain for all 'rails'.

Parameters
subscribers:CoreSubscriber<? super R>[]

the subscribers array to run in parallel, the number of items must be equal to the parallelism level of this ParallelFlux

Annotations
@Override