Class NotFoundWebClientAdapterDecorator

java.lang.Object
org.springframework.web.service.invoker.HttpExchangeAdapterDecorator
org.springframework.web.service.invoker.ReactorHttpExchangeAdapterDecorator
org.springframework.web.reactive.function.client.support.NotFoundWebClientAdapterDecorator
All Implemented Interfaces:
org.springframework.web.service.invoker.HttpExchangeAdapter, org.springframework.web.service.invoker.ReactorHttpExchangeAdapter

public class NotFoundWebClientAdapterDecorator extends org.springframework.web.service.invoker.ReactorHttpExchangeAdapterDecorator
HttpExchangeAdapterDecorator that suppresses the WebClientResponseException.NotFound exception resulting from 404 responses and returns a ResponseEntity with the status set to HttpStatus.NOT_FOUND status, or an empty Mono from exchangeForBodyMono(HttpRequestValues, ParameterizedTypeReference).
Since:
7.0
Author:
Rossen Stoyanchev
  • Constructor Summary

    Constructors
    Constructor
    Description
    NotFoundWebClientAdapterDecorator(org.springframework.web.service.invoker.HttpExchangeAdapter delegate)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    org.springframework.http.ResponseEntity<Void>
    exchangeForBodilessEntity(org.springframework.web.service.invoker.HttpRequestValues values)
     
    reactor.core.publisher.Mono<org.springframework.http.ResponseEntity<Void>>
    exchangeForBodilessEntityMono(org.springframework.web.service.invoker.HttpRequestValues values)
     
    <T> @Nullable T
    exchangeForBody(org.springframework.web.service.invoker.HttpRequestValues values, org.springframework.core.ParameterizedTypeReference<T> bodyType)
     
    <T> reactor.core.publisher.Flux<T>
    exchangeForBodyFlux(org.springframework.web.service.invoker.HttpRequestValues values, org.springframework.core.ParameterizedTypeReference<T> bodyType)
     
    <T> reactor.core.publisher.Mono<T>
    exchangeForBodyMono(org.springframework.web.service.invoker.HttpRequestValues values, org.springframework.core.ParameterizedTypeReference<T> bodyType)
     
    <T> org.springframework.http.ResponseEntity<T>
    exchangeForEntity(org.springframework.web.service.invoker.HttpRequestValues values, org.springframework.core.ParameterizedTypeReference<T> bodyType)
     
    <T> reactor.core.publisher.Mono<org.springframework.http.ResponseEntity<reactor.core.publisher.Flux<T>>>
    exchangeForEntityFlux(org.springframework.web.service.invoker.HttpRequestValues values, org.springframework.core.ParameterizedTypeReference<T> bodyType)
     
    <T> reactor.core.publisher.Mono<org.springframework.http.ResponseEntity<T>>
    exchangeForEntityMono(org.springframework.web.service.invoker.HttpRequestValues values, org.springframework.core.ParameterizedTypeReference<T> bodyType)
     

    Methods inherited from class org.springframework.web.service.invoker.ReactorHttpExchangeAdapterDecorator

    exchange, exchangeForHeaders, exchangeForHeadersMono, exchangeForMono, getBlockTimeout, getHttpExchangeAdapter, getReactiveAdapterRegistry, supportsRequestAttributes

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • NotFoundWebClientAdapterDecorator

      public NotFoundWebClientAdapterDecorator(org.springframework.web.service.invoker.HttpExchangeAdapter delegate)
  • Method Details

    • exchangeForBody

      public <T> @Nullable T exchangeForBody(org.springframework.web.service.invoker.HttpRequestValues values, org.springframework.core.ParameterizedTypeReference<T> bodyType)
      Specified by:
      exchangeForBody in interface org.springframework.web.service.invoker.HttpExchangeAdapter
      Overrides:
      exchangeForBody in class org.springframework.web.service.invoker.ReactorHttpExchangeAdapterDecorator
    • exchangeForBodilessEntity

      public org.springframework.http.ResponseEntity<Void> exchangeForBodilessEntity(org.springframework.web.service.invoker.HttpRequestValues values)
      Specified by:
      exchangeForBodilessEntity in interface org.springframework.web.service.invoker.HttpExchangeAdapter
      Overrides:
      exchangeForBodilessEntity in class org.springframework.web.service.invoker.ReactorHttpExchangeAdapterDecorator
    • exchangeForEntity

      public <T> org.springframework.http.ResponseEntity<T> exchangeForEntity(org.springframework.web.service.invoker.HttpRequestValues values, org.springframework.core.ParameterizedTypeReference<T> bodyType)
      Specified by:
      exchangeForEntity in interface org.springframework.web.service.invoker.HttpExchangeAdapter
      Overrides:
      exchangeForEntity in class org.springframework.web.service.invoker.ReactorHttpExchangeAdapterDecorator
    • exchangeForBodyMono

      public <T> reactor.core.publisher.Mono<T> exchangeForBodyMono(org.springframework.web.service.invoker.HttpRequestValues values, org.springframework.core.ParameterizedTypeReference<T> bodyType)
      Specified by:
      exchangeForBodyMono in interface org.springframework.web.service.invoker.ReactorHttpExchangeAdapter
      Overrides:
      exchangeForBodyMono in class org.springframework.web.service.invoker.ReactorHttpExchangeAdapterDecorator
    • exchangeForBodyFlux

      public <T> reactor.core.publisher.Flux<T> exchangeForBodyFlux(org.springframework.web.service.invoker.HttpRequestValues values, org.springframework.core.ParameterizedTypeReference<T> bodyType)
      Specified by:
      exchangeForBodyFlux in interface org.springframework.web.service.invoker.ReactorHttpExchangeAdapter
      Overrides:
      exchangeForBodyFlux in class org.springframework.web.service.invoker.ReactorHttpExchangeAdapterDecorator
    • exchangeForBodilessEntityMono

      public reactor.core.publisher.Mono<org.springframework.http.ResponseEntity<Void>> exchangeForBodilessEntityMono(org.springframework.web.service.invoker.HttpRequestValues values)
      Specified by:
      exchangeForBodilessEntityMono in interface org.springframework.web.service.invoker.ReactorHttpExchangeAdapter
      Overrides:
      exchangeForBodilessEntityMono in class org.springframework.web.service.invoker.ReactorHttpExchangeAdapterDecorator
    • exchangeForEntityMono

      public <T> reactor.core.publisher.Mono<org.springframework.http.ResponseEntity<T>> exchangeForEntityMono(org.springframework.web.service.invoker.HttpRequestValues values, org.springframework.core.ParameterizedTypeReference<T> bodyType)
      Specified by:
      exchangeForEntityMono in interface org.springframework.web.service.invoker.ReactorHttpExchangeAdapter
      Overrides:
      exchangeForEntityMono in class org.springframework.web.service.invoker.ReactorHttpExchangeAdapterDecorator
    • exchangeForEntityFlux

      public <T> reactor.core.publisher.Mono<org.springframework.http.ResponseEntity<reactor.core.publisher.Flux<T>>> exchangeForEntityFlux(org.springframework.web.service.invoker.HttpRequestValues values, org.springframework.core.ParameterizedTypeReference<T> bodyType)
      Specified by:
      exchangeForEntityFlux in interface org.springframework.web.service.invoker.ReactorHttpExchangeAdapter
      Overrides:
      exchangeForEntityFlux in class org.springframework.web.service.invoker.ReactorHttpExchangeAdapterDecorator