reactor-core/src/main/java/reactor/core/publisher/Mono.java
public final Mono<T> repeatWhenEmpty(Function<Flux<Long>, ? extends Publisher<?>> repeatFactory) {
		return repeatWhenEmpty(Integer.MAX_VALUE, repeatFactory);
	}
public final Mono<T> repeatWhenEmpty(Function<Flux<Long>, ? extends Publisher<?>> repeatFactory) {
		return repeatWhenEmpty(Integer.MAX_VALUE, repeatFactory);
	}
public final Mono < T > repeatWhenEmpty ( Function < Flux < Long > , ? extends Publisher < ? > > repeatFactory ) { return repeatWhenEmpty ( Integer . MAX_VALUE , repeatFactory ) ; }
Repeatedly subscribe to this {@link Mono} as long as the current subscription to this
{@link Mono} completes empty and the companion {@link Publisher} produces an onNext signal.
<p>
Any terminal signal will terminate the resulting {@link Mono} with the same signal immediately.

<p>
<img class="marble" src="doc-files/marbles/repeatWhenEmpty.svg" alt="">

@param repeatFactory the {@link Function} that returns the associated {@link Publisher}
companion, given a {@link Flux} that signals each onComplete as a 0-based incrementing {@link Long}.

@return a {@link Mono} that resubscribes to this {@link Mono} if the previous subscription was empty,
as long as the companion {@link Publisher} produces an onNext signal
Repeatedly subscribe to this { @link Mono } as long as the current subscription to this { @link Mono } completes empty and the companion { @link Publisher } produces an onNext signal . <p > Any terminal signal will terminate the resulting { @link Mono } with the same signal immediately .