reactor-kotlin-extensions / reactor.kotlin.extra.retry / reactor.core.publisher.Mono

Extensions for reactor.core.publisher.Mono

repeatExponentialBackoff

Extension to add a Mono.repeat variant to Mono that uses an exponential backoff, as enabled by reactor-extra's Repeat builder.

fun <T> Mono<T>.repeatExponentialBackoff(times: Long, first: Duration, max: Duration? = null, jitter: Boolean = false, doOnRepeat: ((RepeatContext<T>) -> Unit)? = null): Flux<T>

repeatRandomBackoff

Extension to add a Mono.repeat variant to Mono that uses a randomized backoff, as enabled by reactor-extra's Repeat builder.

fun <T> Mono<T>.repeatRandomBackoff(times: Long, first: Duration, max: Duration? = null, doOnRepeat: ((RepeatContext<T>) -> Unit)? = null): Flux<T>

retryExponentialBackoff

Extension to add a Mono.retry variant to Mono that uses an exponential backoff, as enabled by reactor-extra's Retry builder.

fun <T> Mono<T>.retryExponentialBackoff(times: Long, first: Duration, max: Duration? = null, jitter: Boolean = false, doOnRetry: ((RetryContext<T>) -> Unit)? = null): Mono<T>

retryRandomBackoff

Extension to add a Mono.retry variant to Mono that uses a random backoff, as enabled by reactor-extra's Retry builder.

fun <T> Mono<T>.retryRandomBackoff(times: Long, first: Duration, max: Duration? = null, doOnRetry: ((RetryContext<T>) -> Unit)? = null): Mono<T>