Interface HttpProxy

    • Method Detail

      • reverseProxy

        static HttpProxy reverseProxy​(HttpClient client)
        Create a new HttpProxy instance.
        Parameters:
        client - the HttpClient that forwards outbound requests to the origin.
        Returns:
        a reference to this, so the API can be used fluently.
      • reverseProxy

        static HttpProxy reverseProxy​(ProxyOptions options,
                                      HttpClient client)
        Create a new HttpProxy instance.
        Parameters:
        client - the HttpClient that forwards outbound requests to the origin.
        Returns:
        a reference to this, so the API can be used fluently.
      • origin

        default HttpProxy origin​(SocketAddress address)
        Set the SocketAddress of the origin.
        Parameters:
        address - the SocketAddress of the origin
        Returns:
        a reference to this, so the API can be used fluently
      • origin

        default HttpProxy origin​(int port,
                                 String host)
        Set the host name and port number of the origin.
        Parameters:
        port - the port number of the origin server
        host - the host name of the origin server
        Returns:
        a reference to this, so the API can be used fluently
      • originSelector

        default HttpProxy originSelector​(java.util.function.Function<HttpServerRequest,​Future<SocketAddress>> selector)
        Set a selector that resolves the origin address based on the incoming HTTP request.
        Parameters:
        selector - the selector
        Returns:
        a reference to this, so the API can be used fluently
      • originRequestProvider

        HttpProxy originRequestProvider​(java.util.function.BiFunction<HttpServerRequest,​HttpClient,​Future<HttpClientRequest>> provider)
        Set a provider that creates the request to the origin server based the incoming HTTP request. Setting a provider overrides any origin selector previously set.
        Parameters:
        provider - the provider
        Returns:
        a reference to this, so the API can be used fluently
      • addInterceptor

        default HttpProxy addInterceptor​(ProxyInterceptor interceptor)
        Add an interceptor to the interceptor chain.

        Interceptors are invoked in order of configuration. When added with this method, it is considered the interceptor doesn't support WebSocket upgrades.

        Parameters:
        interceptor - the ProxyInterceptor to add
        Returns:
        a reference to this, so the API can be used fluently
      • addInterceptor

        HttpProxy addInterceptor​(ProxyInterceptor interceptor,
                                 boolean supportsWebSocketUpgrade)
        Add an interceptor to the interceptor chain.

        Interceptors are invoked in order of configuration.

        Parameters:
        interceptor - the ProxyInterceptor to add
        supportsWebSocketUpgrade - whether the interceptor supports WebSocket upgrades
        Returns:
        a reference to this, so the API can be used fluently