Class ServerWebExchangeContextFilter

java.lang.Object
org.springframework.web.filter.reactive.ServerWebExchangeContextFilter
All Implemented Interfaces:
WebFilter

public class ServerWebExchangeContextFilter extends Object implements WebFilter
Inserts an attribute in the Reactor Context that makes the current ServerWebExchange available under the attribute name EXCHANGE_CONTEXT_ATTRIBUTE. This is useful for access to the exchange without explicitly passing it to components that participate in request processing.

The convenience method get(Context) looks up the exchange.

Since:
5.2
Author:
Rossen Stoyanchev
  • Field Details

    • EXCHANGE_CONTEXT_ATTRIBUTE

      public static final String EXCHANGE_CONTEXT_ATTRIBUTE
      Attribute name under which the exchange is saved in the context.
  • Constructor Details

    • ServerWebExchangeContextFilter

      public ServerWebExchangeContextFilter()
  • Method Details

    • filter

      public reactor.core.publisher.Mono<Void> filter(ServerWebExchange exchange, WebFilterChain chain)
      Description copied from interface: WebFilter
      Process the Web request and (optionally) delegate to the next WebFilter through the given WebFilterChain.
      Specified by:
      filter in interface WebFilter
      Parameters:
      exchange - the current server exchange
      chain - provides a way to delegate to the next filter
      Returns:
      Mono<Void> to indicate when request processing is complete
    • get

      public static Optional<ServerWebExchange> get(reactor.util.context.Context context)
      Access the ServerWebExchange from the Reactor Context, if available, which is if ServerWebExchangeContextFilter is configured for use and the give context was obtained from a request processing chain.
      Parameters:
      context - the context in which to access the exchange
      Returns:
      the exchange