reactor-core/src/main/java/reactor/core/publisher/FluxProcessor.java
public static <T> FluxProcessor<Publisher<? extends T>, T> switchOnNext() {
		UnicastProcessor<Publisher<? extends T>> emitter = UnicastProcessor.create();
		FluxProcessor<Publisher<? extends T>, T> p = FluxProcessor.wrap(emitter, switchOnNext(emitter));
		return p;
	}
public static <T> FluxProcessor<Publisher<? extends T>, T> switchOnNext() {
		UnicastProcessor<Publisher<? extends T>> emitter = UnicastProcessor.create();
		FluxProcessor<Publisher<? extends T>, T> p = FluxProcessor.wrap(emitter, switchOnNext(emitter));
		return p;
	}
Build a {@link FluxProcessor} whose data are emitted by the most recent emitted {@link Publisher}.
The {@link Flux} will complete once both the publishers source and the last switched to {@link Publisher} have
completed.

<p>
<img class="marble" src="https://raw.githubusercontent.com/reactor/reactor-core/v3.1.3.RELEASE/src/docs/marble/switchonnext.png" alt="">

@param <T> the produced type
@return a {@link FluxProcessor} accepting publishers and producing T