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

Extensions for reactor.core.publisher.Mono

cast

Extension for Mono.cast providing a cast<Foo>() variant.

fun <T : Any> Mono<*>.cast(): Mono<T>

doOnError

Extension for Mono.doOnError providing a KClass based variant.

fun <T, E : Throwable> Mono<T>.doOnError(exceptionType: KClass<E>, onError: (E) -> Unit): Mono<T>

ofType

Extension for Mono.ofType providing a ofType<Foo>() variant.

fun <T : Any> Mono<*>.ofType(): Mono<T>

onErrorMap

Extension for Mono.onErrorMap providing a KClass based variant.

fun <T, E : Throwable> Mono<T>.onErrorMap(exceptionType: KClass<E>, mapper: (E) -> Throwable): Mono<T>

Extension for Mono.onErrorMap providing a KClass based variant and predicate.

fun <E : Throwable, T> Mono<T>.onErrorMap(type: KClass<E>, predicate: (E) -> Boolean, mapper: (E) -> Throwable): Mono<T>

onErrorResume

Extension for Mono.onErrorResume providing a KClass based variant.

fun <T : Any, E : Throwable> Mono<T>.onErrorResume(exceptionType: KClass<E>, fallback: (E) -> Mono<T>): Mono<T>

onErrorReturn

Extension for Mono.onErrorReturn providing a KClass based variant.

fun <T : Any, E : Throwable> Mono<T>.onErrorReturn(exceptionType: KClass<E>, value: T): Mono<T>

switchIfEmpty

Extension for Mono.switchIfEmpty accepting a function providing a Mono. This allows having a deferred execution with the switchIfEmpty operator

fun <T> Mono<T>.switchIfEmpty(s: () -> Mono<T>): Mono<T>