Class ReactiveLoadBalancerClientFilter

java.lang.Object
org.springframework.cloud.gateway.filter.ReactiveLoadBalancerClientFilter
All Implemented Interfaces:
GlobalFilter, org.springframework.core.Ordered

public class ReactiveLoadBalancerClientFilter extends Object implements GlobalFilter, org.springframework.core.Ordered
A GlobalFilter implementation that routes requests using reactive Spring Cloud LoadBalancer.
Author:
Spencer Gibb, Tim Ysewyn, Olga Maciaszek-Sharma
  • Field Details

    • LOAD_BALANCER_CLIENT_FILTER_ORDER

      public static final int LOAD_BALANCER_CLIENT_FILTER_ORDER
      Order of filter.
      See Also:
  • Constructor Details

    • ReactiveLoadBalancerClientFilter

      public ReactiveLoadBalancerClientFilter(org.springframework.cloud.loadbalancer.support.LoadBalancerClientFactory clientFactory, GatewayLoadBalancerProperties properties)
  • Method Details

    • getOrder

      public int getOrder()
      Specified by:
      getOrder in interface org.springframework.core.Ordered
    • filter

      public reactor.core.publisher.Mono<Void> filter(org.springframework.web.server.ServerWebExchange exchange, GatewayFilterChain chain)
      Description copied from interface: GlobalFilter
      Process the Web request and (optionally) delegate to the next GatewayFilter through the given GatewayFilterChain.
      Specified by:
      filter in interface GlobalFilter
      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
    • reconstructURI

      protected URI reconstructURI(org.springframework.cloud.client.ServiceInstance serviceInstance, URI original)