Update to latest Reactor 3.1 API changes
Issue: SPR-15318
This commit is contained in:
@@ -141,7 +141,7 @@ public class DispatcherHandler implements WebHandler, ApplicationContextAware {
|
||||
|
||||
private Mono<Void> handleResult(ServerWebExchange exchange, HandlerResult result) {
|
||||
return getResultHandler(result).handleResult(exchange, result)
|
||||
.switchOnError(ex -> result.applyExceptionHandler(ex).flatMap(exceptionResult ->
|
||||
.onErrorResume(ex -> result.applyExceptionHandler(ex).flatMap(exceptionResult ->
|
||||
getResultHandler(exceptionResult).handleResult(exchange, exceptionResult)));
|
||||
}
|
||||
|
||||
|
||||
@@ -120,13 +120,13 @@ class DefaultServerRequest implements ServerRequest {
|
||||
@Override
|
||||
public <T> Mono<T> bodyToMono(Class<? extends T> elementClass) {
|
||||
Mono<T> mono = body(BodyExtractors.toMono(elementClass));
|
||||
return mono.mapError(UnsupportedMediaTypeException.class, ERROR_MAPPER);
|
||||
return mono.onErrorMap(UnsupportedMediaTypeException.class, ERROR_MAPPER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <T> Flux<T> bodyToFlux(Class<? extends T> elementClass) {
|
||||
Flux<T> flux = body(BodyExtractors.toFlux(elementClass));
|
||||
return flux.mapError(UnsupportedMediaTypeException.class, ERROR_MAPPER);
|
||||
return flux.onErrorMap(UnsupportedMediaTypeException.class, ERROR_MAPPER);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -234,7 +234,7 @@ public abstract class RouterFunctions {
|
||||
.defaultIfEmpty(notFound())
|
||||
.flatMap(handlerFunction -> wrapException(() -> handlerFunction.handle(request)))
|
||||
.flatMap(response -> wrapException(() -> response.writeTo(exchange, strategies)))
|
||||
.switchOnError(ResponseStatusException.class,
|
||||
.onErrorResume(ResponseStatusException.class,
|
||||
ex -> {
|
||||
exchange.getResponse().setStatusCode(ex.getStatus());
|
||||
if (ex.getMessage() != null) {
|
||||
|
||||
@@ -117,7 +117,7 @@ public abstract class AbstractMessageReaderArgumentResolver extends HandlerMetho
|
||||
Map<String, Object> readHints = Collections.emptyMap();
|
||||
if (adapter != null && adapter.isMultiValue()) {
|
||||
Flux<?> flux = reader.read(bodyType, elementType, request, response, readHints);
|
||||
flux = flux.onErrorResumeWith(ex -> Flux.error(getReadError(bodyParameter, ex)));
|
||||
flux = flux.onErrorResume(ex -> Flux.error(getReadError(bodyParameter, ex)));
|
||||
if (isBodyRequired || !adapter.supportsEmpty()) {
|
||||
flux = flux.switchIfEmpty(Flux.error(getRequiredBodyError(bodyParameter)));
|
||||
}
|
||||
@@ -130,7 +130,7 @@ public abstract class AbstractMessageReaderArgumentResolver extends HandlerMetho
|
||||
}
|
||||
else {
|
||||
Mono<?> mono = reader.readMono(bodyType, elementType, request, response, readHints);
|
||||
mono = mono.switchOnError(ex -> Mono.error(getReadError(bodyParameter, ex)));
|
||||
mono = mono.onErrorResume(ex -> Mono.error(getReadError(bodyParameter, ex)));
|
||||
if (isBodyRequired || (adapter != null && !adapter.supportsEmpty())) {
|
||||
mono = mono.switchIfEmpty(Mono.error(getRequiredBodyError(bodyParameter)));
|
||||
}
|
||||
|
||||
@@ -189,7 +189,7 @@ public class RequestMappingHandlerAdapter implements HandlerAdapter, Application
|
||||
.then(() -> this.methodResolver.getRequestMappingMethod(handlerMethod)
|
||||
.invoke(exchange, bindingContext)
|
||||
.doOnNext(result -> result.setExceptionHandler(exceptionHandler))
|
||||
.switchOnError(exceptionHandler));
|
||||
.onErrorResume(exceptionHandler));
|
||||
}
|
||||
|
||||
private Mono<HandlerResult> handleException(Throwable ex, HandlerMethod handlerMethod,
|
||||
|
||||
Reference in New Issue
Block a user