io.vertx.rxjava.core.http

## Class HttpClient

- java.lang.Object
- - io.vertx.rxjava.core.http.HttpClient

- All Implemented Interfaces:
    Measured

      public class HttpClient
      extends Object
      implements Measured

  An asynchronous HTTP client.

  It allows you to make requests to HTTP servers, and a single client can make requests to any server.

  It also allows you to open WebSockets to servers.

  The client can also pool HTTP connections.

  For pooling to occur, keep-alive must be true on the `HttpClientOptions` (default is true). In this case connections will be pooled and re-used if there are pending HTTP requests waiting to get a connection, otherwise they will be closed.

  This gives the benefits of keep alive when the client is loaded but means we don't keep connections hanging around unnecessarily when there would be no benefits anyway.

  The client also supports pipe-lining of requests. Pipe-lining means another request is sent on the same connection before the response from the preceding one has returned. Pipe-lining is not appropriate for all requests.

  To enable pipe-lining, it must be enabled on the `HttpClientOptions` (default is false).

  When pipe-lining is enabled the connection will be automatically closed when all in-flight responses have returned and there are no outstanding pending requests to write.

  The client is designed to be reused between requests.

  NOTE: This class has been automatically generated from the `original` non RX-ified interface using Vert.x codegen.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static io.vertx.lang.rx.TypeArg<HttpClient>` | `__TYPE_ARG`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `HttpClient(HttpClient delegate)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `close()` Close the client.
    `HttpClient` | `connectionHandler(Handler<HttpConnection> handler)` Set a connection handler for the client.
    `HttpClientRequest` | `delete(int port, String host, String requestURI)` Create an HTTP DELETE request to send to the server at the specified host and port.
    `HttpClientRequest` | `delete(int port, String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP DELETE request to send to the server at the specified host and port, specifying a response handler to receive the response
    `HttpClientRequest` | `delete(RequestOptions options)` Create an HTTP DELETE request to send to the server with the specified options.
    `HttpClientRequest` | `delete(RequestOptions options, Handler<HttpClientResponse> responseHandler)` Create an HTTP DELETE request to send to the server with the specified options, specifying a response handler to receive the response
    `HttpClientRequest` | `delete(String requestURI)` Create an HTTP DELETE request to send to the server at the default host and port.
    `HttpClientRequest` | `delete(String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP DELETE request to send to the server at the default host and port, specifying a response handler to receive the response
    `HttpClientRequest` | `delete(String host, String requestURI)` Create an HTTP DELETE request to send to the server at the specified host and default port.
    `HttpClientRequest` | `delete(String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP DELETE request to send to the server at the specified host and default port, specifying a response handler to receive the response
    `HttpClientRequest` | `deleteAbs(String absoluteURI)` Create an HTTP DELETE request to send to the server using an absolute URI
    `HttpClientRequest` | `deleteAbs(String absoluteURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP DELETE request to send to the server using an absolute URI, specifying a response handler to receive the response
    `boolean` | `equals(Object o)`
    `HttpClientRequest` | `get(int port, String host, String requestURI)` Create an HTTP GET request to send to the server at the specified host and port.
    `HttpClientRequest` | `get(int port, String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP GET request to send to the server at the specified host and port, specifying a response handler to receive the response
    `HttpClientRequest` | `get(RequestOptions options)` Create an HTTP GET request to send to the server with the specified options.
    `HttpClientRequest` | `get(RequestOptions options, Handler<HttpClientResponse> responseHandler)` Create an HTTP GET request to send to the server with the specified options, specifying a response handler to receive the response
    `HttpClientRequest` | `get(String requestURI)` Create an HTTP GET request to send to the server at the default host and port.
    `HttpClientRequest` | `get(String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP GET request to send to the server at the default host and port, specifying a response handler to receive the response
    `HttpClientRequest` | `get(String host, String requestURI)` Create an HTTP GET request to send to the server at the specified host and default port.
    `HttpClientRequest` | `get(String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP GET request to send to the server at the specified host and default port, specifying a response handler to receive the response
    `HttpClientRequest` | `getAbs(String absoluteURI)` Create an HTTP GET request to send to the server using an absolute URI
    `HttpClientRequest` | `getAbs(String absoluteURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP GET request to send to the server using an absolute URI, specifying a response handler to receive the response
    `HttpClient` | `getDelegate()`
    `HttpClient` | `getNow(int port, String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Sends an HTTP GET request to the server at the specified host and port, specifying a response handler to receive the response
    `HttpClient` | `getNow(RequestOptions options, Handler<HttpClientResponse> responseHandler)` Sends an HTTP GET request to the server with the specified options, specifying a response handler to receive the response
    `HttpClient` | `getNow(String requestURI, Handler<HttpClientResponse> responseHandler)` Sends an HTTP GET request to the server at the default host and port, specifying a response handler to receive the response
    `HttpClient` | `getNow(String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Sends an HTTP GET request to the server at the specified host and default port, specifying a response handler to receive the response
    `int` | `hashCode()`
    `HttpClientRequest` | `head(int port, String host, String requestURI)` Create an HTTP HEAD request to send to the server at the specified host and port.
    `HttpClientRequest` | `head(int port, String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP HEAD request to send to the server at the specified host and port, specifying a response handler to receive the response
    `HttpClientRequest` | `head(RequestOptions options)` Create an HTTP HEAD request to send to the server with the specified options.
    `HttpClientRequest` | `head(RequestOptions options, Handler<HttpClientResponse> responseHandler)` Create an HTTP HEAD request to send to the server with the specified options, specifying a response handler to receive the response
    `HttpClientRequest` | `head(String requestURI)` Create an HTTP HEAD request to send to the server at the default host and port.
    `HttpClientRequest` | `head(String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP HEAD request to send to the server at the default host and port, specifying a response handler to receive the response
    `HttpClientRequest` | `head(String host, String requestURI)` Create an HTTP HEAD request to send to the server at the specified host and default port.
    `HttpClientRequest` | `head(String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP HEAD request to send to the server at the specified host and default port, specifying a response handler to receive the response
    `HttpClientRequest` | `headAbs(String absoluteURI)` Create an HTTP HEAD request to send to the server using an absolute URI
    `HttpClientRequest` | `headAbs(String absoluteURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP HEAD request to send to the server using an absolute URI, specifying a response handler to receive the response
    `HttpClient` | `headNow(int port, String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Sends an HTTP HEAD request to the server at the specified host and port, specifying a response handler to receive the response
    `HttpClient` | `headNow(RequestOptions options, Handler<HttpClientResponse> responseHandler)` Sends an HTTP HEAD request to the server with the specified options, specifying a response handler to receive the response
    `HttpClient` | `headNow(String requestURI, Handler<HttpClientResponse> responseHandler)` Sends an HTTP HEAD request to the server at the default host and port, specifying a response handler to receive the response
    `HttpClient` | `headNow(String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Sends an HTTP HEAD request to the server at the specified host and default port, specifying a response handler to receive the response
    `boolean` | `isMetricsEnabled()` Whether the metrics are enabled for this measured object
    `static HttpClient` | `newInstance(HttpClient arg)`
    `HttpClientRequest` | `options(int port, String host, String requestURI)` Create an HTTP OPTIONS request to send to the server at the specified host and port.
    `HttpClientRequest` | `options(int port, String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP OPTIONS request to send to the server at the specified host and port, specifying a response handler to receive the response
    `HttpClientRequest` | `options(RequestOptions options)` Create an HTTP OPTIONS request to send to the server with the specified options.
    `HttpClientRequest` | `options(RequestOptions options, Handler<HttpClientResponse> responseHandler)` Create an HTTP OPTIONS request to send to the server with the specified options, specifying a response handler to receive the response
    `HttpClientRequest` | `options(String requestURI)` Create an HTTP OPTIONS request to send to the server at the default host and port.
    `HttpClientRequest` | `options(String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP OPTIONS request to send to the server at the default host and port, specifying a response handler to receive the response
    `HttpClientRequest` | `options(String host, String requestURI)` Create an HTTP OPTIONS request to send to the server at the specified host and default port.
    `HttpClientRequest` | `options(String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP OPTIONS request to send to the server at the specified host and default port, specifying a response handler to receive the response
    `HttpClientRequest` | `optionsAbs(String absoluteURI)` Create an HTTP OPTIONS request to send to the server using an absolute URI
    `HttpClientRequest` | `optionsAbs(String absoluteURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP OPTIONS request to send to the server using an absolute URI, specifying a response handler to receive the response
    `HttpClient` | `optionsNow(int port, String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Sends an HTTP OPTIONS request to the server at the specified host and port, specifying a response handler to receive the response
    `HttpClient` | `optionsNow(RequestOptions options, Handler<HttpClientResponse> responseHandler)` Sends an HTTP OPTIONS request to the server with the specified options, specifying a response handler to receive the response
    `HttpClient` | `optionsNow(String requestURI, Handler<HttpClientResponse> responseHandler)` Sends an HTTP OPTIONS request to the server at the default host and port, specifying a response handler to receive the response
    `HttpClient` | `optionsNow(String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Sends an HTTP OPTIONS request to the server at the specified host and default port, specifying a response handler to receive the response
    `HttpClientRequest` | `post(int port, String host, String requestURI)` Create an HTTP POST request to send to the server at the specified host and port.
    `HttpClientRequest` | `post(int port, String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP POST request to send to the server at the specified host and port, specifying a response handler to receive the response
    `HttpClientRequest` | `post(RequestOptions options)` Create an HTTP POST request to send to the server with the specified options.
    `HttpClientRequest` | `post(RequestOptions options, Handler<HttpClientResponse> responseHandler)` Create an HTTP POST request to send to the server with the specified options, specifying a response handler to receive the response
    `HttpClientRequest` | `post(String requestURI)` Create an HTTP POST request to send to the server at the default host and port.
    `HttpClientRequest` | `post(String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP POST request to send to the server at the default host and port, specifying a response handler to receive the response
    `HttpClientRequest` | `post(String host, String requestURI)` Create an HTTP POST request to send to the server at the specified host and default port.
    `HttpClientRequest` | `post(String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP POST request to send to the server at the specified host and default port, specifying a response handler to receive the response
    `HttpClientRequest` | `postAbs(String absoluteURI)` Create an HTTP POST request to send to the server using an absolute URI
    `HttpClientRequest` | `postAbs(String absoluteURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP POST request to send to the server using an absolute URI, specifying a response handler to receive the response
    `HttpClientRequest` | `put(int port, String host, String requestURI)` Create an HTTP PUT request to send to the server at the specified host and port.
    `HttpClientRequest` | `put(int port, String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP PUT request to send to the server at the specified host and port, specifying a response handler to receive the response
    `HttpClientRequest` | `put(RequestOptions options)` Create an HTTP PUT request to send to the server with the specified options.
    `HttpClientRequest` | `put(RequestOptions options, Handler<HttpClientResponse> responseHandler)` Create an HTTP PUT request to send to the server with the specified options, specifying a response handler to receive the response
    `HttpClientRequest` | `put(String requestURI)` Create an HTTP PUT request to send to the server at the default host and port.
    `HttpClientRequest` | `put(String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP PUT request to send to the server at the default host and port, specifying a response handler to receive the response
    `HttpClientRequest` | `put(String host, String requestURI)` Create an HTTP PUT request to send to the server at the specified host and default port.
    `HttpClientRequest` | `put(String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP PUT request to send to the server at the specified host and default port, specifying a response handler to receive the response
    `HttpClientRequest` | `putAbs(String absoluteURI)` Create an HTTP PUT request to send to the server using an absolute URI
    `HttpClientRequest` | `putAbs(String absoluteURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP PUT request to send to the server using an absolute URI, specifying a response handler to receive the response
    `HttpClient` | `redirectHandler(java.util.function.Function<HttpClientResponse,Future<HttpClientRequest>> handler)` Set a redirect handler for the http client.
    `HttpClientRequest` | `request(HttpMethod method, int port, String host, String requestURI)` Create an HTTP request to send to the server at the specified host and port.
    `HttpClientRequest` | `request(HttpMethod method, int port, String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP request to send to the server at the specified host and port, specifying a response handler to receive the response
    `HttpClientRequest` | `request(HttpMethod method, RequestOptions options)` Create an HTTP request to send to the server with the specified options.
    `HttpClientRequest` | `request(HttpMethod method, RequestOptions options, Handler<HttpClientResponse> responseHandler)` Create an HTTP request to send to the server with the specified options, specifying a response handler to receive
    `HttpClientRequest` | `request(HttpMethod method, String requestURI)` Create an HTTP request to send to the server at the default host and port.
    `HttpClientRequest` | `request(HttpMethod method, String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP request to send to the server at the default host and port, specifying a response handler to receive the response
    `HttpClientRequest` | `request(HttpMethod method, String host, String requestURI)` Create an HTTP request to send to the server at the specified host and default port.
    `HttpClientRequest` | `request(HttpMethod method, String host, String requestURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP request to send to the server at the specified host and default port, specifying a response handler to receive the response
    `HttpClientRequest` | `requestAbs(HttpMethod method, String absoluteURI)` Create an HTTP request to send to the server using an absolute URI
    `HttpClientRequest` | `requestAbs(HttpMethod method, String absoluteURI, Handler<HttpClientResponse> responseHandler)` Create an HTTP request to send to the server using an absolute URI, specifying a response handler to receive the response
    `String` | `toString()`
    `HttpClient` | `websocket(int port, String host, String requestURI, Handler<WebSocket> wsConnect)` Connect a WebSocket to the specified port, host and relative request URI
    `HttpClient` | `websocket(int port, String host, String requestURI, Handler<WebSocket> wsConnect, Handler<Throwable> failureHandler)` Connect a WebSocket to the specified port, host and relative request URI
    `HttpClient` | `websocket(int port, String host, String requestURI, MultiMap headers, Handler<WebSocket> wsConnect)` Connect a WebSocket to the specified port, host and relative request URI, and with the specified headers
    `HttpClient` | `websocket(int port, String host, String requestURI, MultiMap headers, Handler<WebSocket> wsConnect, Handler<Throwable> failureHandler)` Connect a WebSocket to the specified port, host and relative request URI, and with the specified headers
    `HttpClient` | `websocket(int port, String host, String requestURI, MultiMap headers, WebsocketVersion version, Handler<WebSocket> wsConnect)` Connect a WebSocket to the specified port, host and relative request URI, with the specified headers and using the specified version of WebSockets
    `HttpClient` | `websocket(int port, String host, String requestURI, MultiMap headers, WebsocketVersion version, Handler<WebSocket> wsConnect, Handler<Throwable> failureHandler)` Connect a WebSocket to the specified port, host and relative request URI, with the specified headers and using the specified version of WebSockets
    `HttpClient` | `websocket(int port, String host, String requestURI, MultiMap headers, WebsocketVersion version, String subProtocols, Handler<WebSocket> wsConnect)` Connect a WebSocket to the specified port, host and relative request URI, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols
    `HttpClient` | `websocket(int port, String host, String requestURI, MultiMap headers, WebsocketVersion version, String subProtocols, Handler<WebSocket> wsConnect, Handler<Throwable> failureHandler)` Connect a WebSocket to the specified port, host and relative request URI, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols
    `HttpClient` | `websocket(RequestOptions options, Handler<WebSocket> wsConnect)` Connect a WebSocket with the specified options
    `HttpClient` | `websocket(RequestOptions options, Handler<WebSocket> wsConnect, Handler<Throwable> failureHandler)` Connect a WebSocket with the specified options
    `HttpClient` | `websocket(RequestOptions options, MultiMap headers, Handler<WebSocket> wsConnect)` Connect a WebSocket with the specified options, and with the specified headers
    `HttpClient` | `websocket(RequestOptions options, MultiMap headers, Handler<WebSocket> wsConnect, Handler<Throwable> failureHandler)` Connect a WebSocket with the specified options, and with the specified headers
    `HttpClient` | `websocket(RequestOptions options, MultiMap headers, WebsocketVersion version, Handler<WebSocket> wsConnect)` Connect a WebSocket with the specified optionsI, with the specified headers and using the specified version of WebSockets
    `HttpClient` | `websocket(RequestOptions options, MultiMap headers, WebsocketVersion version, Handler<WebSocket> wsConnect, Handler<Throwable> failureHandler)` Connect a WebSocket with the specified options, with the specified headers and using the specified version of WebSockets
    `HttpClient` | `websocket(RequestOptions options, MultiMap headers, WebsocketVersion version, String subProtocols, Handler<WebSocket> wsConnect)` Connect a WebSocket with the specified options, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols
    `HttpClient` | `websocket(RequestOptions options, MultiMap headers, WebsocketVersion version, String subProtocols, Handler<WebSocket> wsConnect, Handler<Throwable> failureHandler)` Connect a WebSocket with the specified options, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols
    `HttpClient` | `websocket(String requestURI, Handler<WebSocket> wsConnect)` Connect a WebSocket at the relative request URI using the default host and port
    `HttpClient` | `websocket(String requestURI, Handler<WebSocket> wsConnect, Handler<Throwable> failureHandler)` Connect a WebSocket at the relative request URI using the default host and port
    `HttpClient` | `websocket(String requestURI, MultiMap headers, Handler<WebSocket> wsConnect)` Connect a WebSocket at the relative request URI using the default host and port and the specified headers
    `HttpClient` | `websocket(String requestURI, MultiMap headers, Handler<WebSocket> wsConnect, Handler<Throwable> failureHandler)` Connect a WebSocket at the relative request URI using the default host and port and the specified headers
    `HttpClient` | `websocket(String requestURI, MultiMap headers, WebsocketVersion version, Handler<WebSocket> wsConnect)` Connect a WebSocket at the relative request URI using the default host and port, the specified headers and the specified version of WebSockets
    `HttpClient` | `websocket(String requestURI, MultiMap headers, WebsocketVersion version, Handler<WebSocket> wsConnect, Handler<Throwable> failureHandler)` Connect a WebSocket at the relative request URI using the default host and port, the specified headers and the specified version of WebSockets
    `HttpClient` | `websocket(String requestURI, MultiMap headers, WebsocketVersion version, String subProtocols, Handler<WebSocket> wsConnect)` Connect a WebSocket at the relative request URI using the default host and port, the specified headers, the specified version of WebSockets and the specified sub protocols
    `HttpClient` | `websocket(String requestURI, MultiMap headers, WebsocketVersion version, String subProtocols, Handler<WebSocket> wsConnect, Handler<Throwable> failureHandler)` Connect a WebSocket at the relative request URI using the default host and port, the specified headers, the specified version of WebSockets and the specified sub protocols
    `HttpClient` | `websocket(String host, String requestURI, Handler<WebSocket> wsConnect)` Connect a WebSocket to the host and relative request URI and default port
    `HttpClient` | `websocket(String host, String requestURI, Handler<WebSocket> wsConnect, Handler<Throwable> failureHandler)` Connect a WebSocket to the host and relative request URI and default port
    `HttpClient` | `websocket(String host, String requestURI, MultiMap headers, Handler<WebSocket> wsConnect)` Connect a WebSocket to the specified host,relative request UR, and default port and with the specified headers
    `HttpClient` | `websocket(String host, String requestURI, MultiMap headers, Handler<WebSocket> wsConnect, Handler<Throwable> failureHandler)` Connect a WebSocket to the specified host,relative request UR, and default port and with the specified headers
    `HttpClient` | `websocket(String host, String requestURI, MultiMap headers, WebsocketVersion version, Handler<WebSocket> wsConnect)` Connect a WebSocket to the specified host, relative request URI and default port with the specified headers and using the specified version of WebSockets
    `HttpClient` | `websocket(String host, String requestURI, MultiMap headers, WebsocketVersion version, Handler<WebSocket> wsConnect, Handler<Throwable> failureHandler)` Connect a WebSocket to the specified host, relative request URI and default port with the specified headers and using the specified version of WebSockets
    `HttpClient` | `websocket(String host, String requestURI, MultiMap headers, WebsocketVersion version, String subProtocols, Handler<WebSocket> wsConnect)` Connect a WebSocket to the specified host, relative request URI and default port, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols
    `HttpClient` | `websocket(String host, String requestURI, MultiMap headers, WebsocketVersion version, String subProtocols, Handler<WebSocket> wsConnect, Handler<Throwable> failureHandler)` Connect a WebSocket to the specified host, relative request URI and default port, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols
    `HttpClient` | `websocketAbs(String url, MultiMap headers, WebsocketVersion version, String subProtocols, Handler<WebSocket> wsConnect, Handler<Throwable> failureHandler)` Connect a WebSocket with the specified absolute url, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols.
    `ReadStream<WebSocket>` | `websocketStream(int port, String host, String requestURI)` Create a WebSocket stream to the specified port, host and relative request URI
    `ReadStream<WebSocket>` | `websocketStream(int port, String host, String requestURI, MultiMap headers)` Create a WebSocket stream to the specified port, host and relative request URI, and with the specified headers
    `ReadStream<WebSocket>` | `websocketStream(int port, String host, String requestURI, MultiMap headers, WebsocketVersion version)` Create a WebSocket stream to the specified port, host and relative request URI, with the specified headers and using the specified version of WebSockets
    `ReadStream<WebSocket>` | `websocketStream(int port, String host, String requestURI, MultiMap headers, WebsocketVersion version, String subProtocols)` Create a WebSocket stream to the specified port, host and relative request URI, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols
    `ReadStream<WebSocket>` | `websocketStream(RequestOptions options)` Create a WebSocket stream with the specified options
    `ReadStream<WebSocket>` | `websocketStream(RequestOptions options, MultiMap headers)` Create a WebSocket stream with the specified options, and with the specified headers
    `ReadStream<WebSocket>` | `websocketStream(RequestOptions options, MultiMap headers, WebsocketVersion version)` Create a WebSocket stream with the specified options, with the specified headers and using the specified version of WebSockets
    `ReadStream<WebSocket>` | `websocketStream(RequestOptions options, MultiMap headers, WebsocketVersion version, String subProtocols)` Create a WebSocket stream to the specified port, host and relative request URI, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols
    `ReadStream<WebSocket>` | `websocketStream(String requestURI)` Create a WebSocket stream at the relative request URI using the default host and port and the specified headers
    `ReadStream<WebSocket>` | `websocketStream(String requestURI, MultiMap headers)` Create a WebSocket stream at the relative request URI using the default host and port and the specified headers
    `ReadStream<WebSocket>` | `websocketStream(String requestURI, MultiMap headers, WebsocketVersion version)` Create a WebSocket stream at the relative request URI using the default host and port, the specified headers and the specified version of WebSockets
    `ReadStream<WebSocket>` | `websocketStream(String requestURI, MultiMap headers, WebsocketVersion version, String subProtocols)` Create a WebSocket stream at the relative request URI using the default host and port, the specified headers, the specified version of WebSockets and the specified sub protocols
    `ReadStream<WebSocket>` | `websocketStream(String host, String requestURI)` Create a WebSocket stream to the specified host, relative request URI and default port
    `ReadStream<WebSocket>` | `websocketStream(String host, String requestURI, MultiMap headers)` Create a WebSocket stream to the specified host, relative request URI and default port and with the specified headers
    `ReadStream<WebSocket>` | `websocketStream(String host, String requestURI, MultiMap headers, WebsocketVersion version)` Create a WebSocket stream with the specified options and with the specified headers and using the specified version of WebSockets
    `ReadStream<WebSocket>` | `websocketStream(String host, String requestURI, MultiMap headers, WebsocketVersion version, String subProtocols)` Create a WebSocket stream to the specified host, relative request URI and default port, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols
    `ReadStream<WebSocket>` | `websocketStreamAbs(String url, MultiMap headers, WebsocketVersion version, String subProtocols)` Create a WebSocket stream with the specified absolute url, the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols.

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface io.vertx.rxjava.core.metrics.Measured

      `newInstance`

- - ### Field Detail

    - #### __TYPE_ARG

          public static final io.vertx.lang.rx.TypeArg<HttpClient> __TYPE_ARG

  - ### Constructor Detail

    - #### HttpClient

          public HttpClient(HttpClient delegate)

  - ### Method Detail

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

    - #### equals

          public boolean equals(Object o)

      Overrides:
        `equals` in class `Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`

    - #### getDelegate

          public HttpClient getDelegate()

      Specified by:
        `getDelegate` in interface `Measured`

    - #### isMetricsEnabled

          public boolean isMetricsEnabled()

      Whether the metrics are enabled for this measured object
      Specified by:
        `isMetricsEnabled` in interface `Measured`
      Returns:
        `true` if metrics are enabled

    - #### request

          public HttpClientRequest request(HttpMethod method,
                                           RequestOptions options)

      Create an HTTP request to send to the server with the specified options.
      Parameters:
        `method` - the HTTP method
        `options` - the request options
      Returns:
        an HTTP client request object

    - #### request

          public HttpClientRequest request(HttpMethod method,
                                           int port,
                                           String host,
                                           String requestURI)

      Create an HTTP request to send to the server at the specified host and port.
      Parameters:
        `method` - the HTTP method
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### request

          public HttpClientRequest request(HttpMethod method,
                                           String host,
                                           String requestURI)

      Create an HTTP request to send to the server at the specified host and default port.
      Parameters:
        `method` - the HTTP method
        `host` - the host
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### request

          public HttpClientRequest request(HttpMethod method,
                                           RequestOptions options,
                                           Handler<HttpClientResponse> responseHandler)

      Create an HTTP request to send to the server with the specified options, specifying a response handler to receive
      Parameters:
        `method` - the HTTP method
        `options` - the request options
        `responseHandler` -
      Returns:
        an HTTP client request object

    - #### request

          public HttpClientRequest request(HttpMethod method,
                                           int port,
                                           String host,
                                           String requestURI,
                                           Handler<HttpClientResponse> responseHandler)

      Create an HTTP request to send to the server at the specified host and port, specifying a response handler to receive the response
      Parameters:
        `method` - the HTTP method
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### request

          public HttpClientRequest request(HttpMethod method,
                                           String host,
                                           String requestURI,
                                           Handler<HttpClientResponse> responseHandler)

      Create an HTTP request to send to the server at the specified host and default port, specifying a response handler to receive the response
      Parameters:
        `method` - the HTTP method
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### request

          public HttpClientRequest request(HttpMethod method,
                                           String requestURI)

      Create an HTTP request to send to the server at the default host and port.
      Parameters:
        `method` - the HTTP method
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### request

          public HttpClientRequest request(HttpMethod method,
                                           String requestURI,
                                           Handler<HttpClientResponse> responseHandler)

      Create an HTTP request to send to the server at the default host and port, specifying a response handler to receive the response
      Parameters:
        `method` - the HTTP method
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### requestAbs

          public HttpClientRequest requestAbs(HttpMethod method,
                                              String absoluteURI)

      Create an HTTP request to send to the server using an absolute URI
      Parameters:
        `method` - the HTTP method
        `absoluteURI` - the absolute URI
      Returns:
        an HTTP client request object

    - #### requestAbs

          public HttpClientRequest requestAbs(HttpMethod method,
                                              String absoluteURI,
                                              Handler<HttpClientResponse> responseHandler)

      Create an HTTP request to send to the server using an absolute URI, specifying a response handler to receive the response
      Parameters:
        `method` - the HTTP method
        `absoluteURI` - the absolute URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### get

          public HttpClientRequest get(RequestOptions options)

      Create an HTTP GET request to send to the server with the specified options.
      Parameters:
        `options` - the request options
      Returns:
        an HTTP client request object

    - #### get

          public HttpClientRequest get(int port,
                                       String host,
                                       String requestURI)

      Create an HTTP GET request to send to the server at the specified host and port.
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### get

          public HttpClientRequest get(String host,
                                       String requestURI)

      Create an HTTP GET request to send to the server at the specified host and default port.
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### get

          public HttpClientRequest get(RequestOptions options,
                                       Handler<HttpClientResponse> responseHandler)

      Create an HTTP GET request to send to the server with the specified options, specifying a response handler to receive the response
      Parameters:
        `options` - the request options
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### get

          public HttpClientRequest get(int port,
                                       String host,
                                       String requestURI,
                                       Handler<HttpClientResponse> responseHandler)

      Create an HTTP GET request to send to the server at the specified host and port, specifying a response handler to receive the response
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### get

          public HttpClientRequest get(String host,
                                       String requestURI,
                                       Handler<HttpClientResponse> responseHandler)

      Create an HTTP GET request to send to the server at the specified host and default port, specifying a response handler to receive the response
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### get

          public HttpClientRequest get(String requestURI)

      Create an HTTP GET request to send to the server at the default host and port.
      Parameters:
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### get

          public HttpClientRequest get(String requestURI,
                                       Handler<HttpClientResponse> responseHandler)

      Create an HTTP GET request to send to the server at the default host and port, specifying a response handler to receive the response
      Parameters:
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### getAbs

          public HttpClientRequest getAbs(String absoluteURI)

      Create an HTTP GET request to send to the server using an absolute URI
      Parameters:
        `absoluteURI` - the absolute URI
      Returns:
        an HTTP client request object

    - #### getAbs

          public HttpClientRequest getAbs(String absoluteURI,
                                          Handler<HttpClientResponse> responseHandler)

      Create an HTTP GET request to send to the server using an absolute URI, specifying a response handler to receive the response
      Parameters:
        `absoluteURI` - the absolute URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### getNow

          public HttpClient getNow(RequestOptions options,
                                   Handler<HttpClientResponse> responseHandler)

      Sends an HTTP GET request to the server with the specified options, specifying a response handler to receive the response
      Parameters:
        `options` - the request options
        `responseHandler` - the response handler
      Returns:
        a reference to this, so the API can be used fluently

    - #### getNow

          public HttpClient getNow(int port,
                                   String host,
                                   String requestURI,
                                   Handler<HttpClientResponse> responseHandler)

      Sends an HTTP GET request to the server at the specified host and port, specifying a response handler to receive the response
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        a reference to this, so the API can be used fluently

    - #### getNow

          public HttpClient getNow(String host,
                                   String requestURI,
                                   Handler<HttpClientResponse> responseHandler)

      Sends an HTTP GET request to the server at the specified host and default port, specifying a response handler to receive the response
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        a reference to this, so the API can be used fluently

    - #### getNow

          public HttpClient getNow(String requestURI,
                                   Handler<HttpClientResponse> responseHandler)

      Sends an HTTP GET request to the server at the default host and port, specifying a response handler to receive the response
      Parameters:
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        a reference to this, so the API can be used fluently

    - #### post

          public HttpClientRequest post(RequestOptions options)

      Create an HTTP POST request to send to the server with the specified options.
      Parameters:
        `options` - the request options
      Returns:
        an HTTP client request object

    - #### post

          public HttpClientRequest post(int port,
                                        String host,
                                        String requestURI)

      Create an HTTP POST request to send to the server at the specified host and port.
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### post

          public HttpClientRequest post(String host,
                                        String requestURI)

      Create an HTTP POST request to send to the server at the specified host and default port.
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### post

          public HttpClientRequest post(RequestOptions options,
                                        Handler<HttpClientResponse> responseHandler)

      Create an HTTP POST request to send to the server with the specified options, specifying a response handler to receive the response
      Parameters:
        `options` - the request options
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### post

          public HttpClientRequest post(int port,
                                        String host,
                                        String requestURI,
                                        Handler<HttpClientResponse> responseHandler)

      Create an HTTP POST request to send to the server at the specified host and port, specifying a response handler to receive the response
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### post

          public HttpClientRequest post(String host,
                                        String requestURI,
                                        Handler<HttpClientResponse> responseHandler)

      Create an HTTP POST request to send to the server at the specified host and default port, specifying a response handler to receive the response
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### post

          public HttpClientRequest post(String requestURI)

      Create an HTTP POST request to send to the server at the default host and port.
      Parameters:
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### post

          public HttpClientRequest post(String requestURI,
                                        Handler<HttpClientResponse> responseHandler)

      Create an HTTP POST request to send to the server at the default host and port, specifying a response handler to receive the response
      Parameters:
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### postAbs

          public HttpClientRequest postAbs(String absoluteURI)

      Create an HTTP POST request to send to the server using an absolute URI
      Parameters:
        `absoluteURI` - the absolute URI
      Returns:
        an HTTP client request object

    - #### postAbs

          public HttpClientRequest postAbs(String absoluteURI,
                                           Handler<HttpClientResponse> responseHandler)

      Create an HTTP POST request to send to the server using an absolute URI, specifying a response handler to receive the response
      Parameters:
        `absoluteURI` - the absolute URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### head

          public HttpClientRequest head(RequestOptions options)

      Create an HTTP HEAD request to send to the server with the specified options.
      Parameters:
        `options` - the request options
      Returns:
        an HTTP client request object

    - #### head

          public HttpClientRequest head(int port,
                                        String host,
                                        String requestURI)

      Create an HTTP HEAD request to send to the server at the specified host and port.
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### head

          public HttpClientRequest head(String host,
                                        String requestURI)

      Create an HTTP HEAD request to send to the server at the specified host and default port.
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### head

          public HttpClientRequest head(RequestOptions options,
                                        Handler<HttpClientResponse> responseHandler)

      Create an HTTP HEAD request to send to the server with the specified options, specifying a response handler to receive the response
      Parameters:
        `options` - the request options
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### head

          public HttpClientRequest head(int port,
                                        String host,
                                        String requestURI,
                                        Handler<HttpClientResponse> responseHandler)

      Create an HTTP HEAD request to send to the server at the specified host and port, specifying a response handler to receive the response
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### head

          public HttpClientRequest head(String host,
                                        String requestURI,
                                        Handler<HttpClientResponse> responseHandler)

      Create an HTTP HEAD request to send to the server at the specified host and default port, specifying a response handler to receive the response
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### head

          public HttpClientRequest head(String requestURI)

      Create an HTTP HEAD request to send to the server at the default host and port.
      Parameters:
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### head

          public HttpClientRequest head(String requestURI,
                                        Handler<HttpClientResponse> responseHandler)

      Create an HTTP HEAD request to send to the server at the default host and port, specifying a response handler to receive the response
      Parameters:
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### headAbs

          public HttpClientRequest headAbs(String absoluteURI)

      Create an HTTP HEAD request to send to the server using an absolute URI
      Parameters:
        `absoluteURI` - the absolute URI
      Returns:
        an HTTP client request object

    - #### headAbs

          public HttpClientRequest headAbs(String absoluteURI,
                                           Handler<HttpClientResponse> responseHandler)

      Create an HTTP HEAD request to send to the server using an absolute URI, specifying a response handler to receive the response
      Parameters:
        `absoluteURI` - the absolute URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### headNow

          public HttpClient headNow(RequestOptions options,
                                    Handler<HttpClientResponse> responseHandler)

      Sends an HTTP HEAD request to the server with the specified options, specifying a response handler to receive the response
      Parameters:
        `options` - the request options
        `responseHandler` - the response handler
      Returns:
        a reference to this, so the API can be used fluently

    - #### headNow

          public HttpClient headNow(int port,
                                    String host,
                                    String requestURI,
                                    Handler<HttpClientResponse> responseHandler)

      Sends an HTTP HEAD request to the server at the specified host and port, specifying a response handler to receive the response
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        a reference to this, so the API can be used fluently

    - #### headNow

          public HttpClient headNow(String host,
                                    String requestURI,
                                    Handler<HttpClientResponse> responseHandler)

      Sends an HTTP HEAD request to the server at the specified host and default port, specifying a response handler to receive the response
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        a reference to this, so the API can be used fluently

    - #### headNow

          public HttpClient headNow(String requestURI,
                                    Handler<HttpClientResponse> responseHandler)

      Sends an HTTP HEAD request to the server at the default host and port, specifying a response handler to receive the response
      Parameters:
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        a reference to this, so the API can be used fluently

    - #### options

          public HttpClientRequest options(RequestOptions options)

      Create an HTTP OPTIONS request to send to the server with the specified options.
      Parameters:
        `options` - the request options
      Returns:
        an HTTP client request object

    - #### options

          public HttpClientRequest options(int port,
                                           String host,
                                           String requestURI)

      Create an HTTP OPTIONS request to send to the server at the specified host and port.
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### options

          public HttpClientRequest options(String host,
                                           String requestURI)

      Create an HTTP OPTIONS request to send to the server at the specified host and default port.
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### options

          public HttpClientRequest options(RequestOptions options,
                                           Handler<HttpClientResponse> responseHandler)

      Create an HTTP OPTIONS request to send to the server with the specified options, specifying a response handler to receive the response
      Parameters:
        `options` - the request options
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### options

          public HttpClientRequest options(int port,
                                           String host,
                                           String requestURI,
                                           Handler<HttpClientResponse> responseHandler)

      Create an HTTP OPTIONS request to send to the server at the specified host and port, specifying a response handler to receive the response
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### options

          public HttpClientRequest options(String host,
                                           String requestURI,
                                           Handler<HttpClientResponse> responseHandler)

      Create an HTTP OPTIONS request to send to the server at the specified host and default port, specifying a response handler to receive the response
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### options

          public HttpClientRequest options(String requestURI)

      Create an HTTP OPTIONS request to send to the server at the default host and port.
      Parameters:
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### options

          public HttpClientRequest options(String requestURI,
                                           Handler<HttpClientResponse> responseHandler)

      Create an HTTP OPTIONS request to send to the server at the default host and port, specifying a response handler to receive the response
      Parameters:
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### optionsAbs

          public HttpClientRequest optionsAbs(String absoluteURI)

      Create an HTTP OPTIONS request to send to the server using an absolute URI
      Parameters:
        `absoluteURI` - the absolute URI
      Returns:
        an HTTP client request object

    - #### optionsAbs

          public HttpClientRequest optionsAbs(String absoluteURI,
                                              Handler<HttpClientResponse> responseHandler)

      Create an HTTP OPTIONS request to send to the server using an absolute URI, specifying a response handler to receive the response
      Parameters:
        `absoluteURI` - the absolute URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### optionsNow

          public HttpClient optionsNow(RequestOptions options,
                                       Handler<HttpClientResponse> responseHandler)

      Sends an HTTP OPTIONS request to the server with the specified options, specifying a response handler to receive the response
      Parameters:
        `options` - the request options
        `responseHandler` - the response handler
      Returns:
        a reference to this, so the API can be used fluently

    - #### optionsNow

          public HttpClient optionsNow(int port,
                                       String host,
                                       String requestURI,
                                       Handler<HttpClientResponse> responseHandler)

      Sends an HTTP OPTIONS request to the server at the specified host and port, specifying a response handler to receive the response
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        a reference to this, so the API can be used fluently

    - #### optionsNow

          public HttpClient optionsNow(String host,
                                       String requestURI,
                                       Handler<HttpClientResponse> responseHandler)

      Sends an HTTP OPTIONS request to the server at the specified host and default port, specifying a response handler to receive the response
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        a reference to this, so the API can be used fluently

    - #### optionsNow

          public HttpClient optionsNow(String requestURI,
                                       Handler<HttpClientResponse> responseHandler)

      Sends an HTTP OPTIONS request to the server at the default host and port, specifying a response handler to receive the response
      Parameters:
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        a reference to this, so the API can be used fluently

    - #### put

          public HttpClientRequest put(RequestOptions options)

      Create an HTTP PUT request to send to the server with the specified options.
      Parameters:
        `options` - the request options
      Returns:
        an HTTP client request object

    - #### put

          public HttpClientRequest put(int port,
                                       String host,
                                       String requestURI)

      Create an HTTP PUT request to send to the server at the specified host and port.
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### put

          public HttpClientRequest put(String host,
                                       String requestURI)

      Create an HTTP PUT request to send to the server at the specified host and default port.
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### put

          public HttpClientRequest put(RequestOptions options,
                                       Handler<HttpClientResponse> responseHandler)

      Create an HTTP PUT request to send to the server with the specified options, specifying a response handler to receive the response
      Parameters:
        `options` - the request options
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### put

          public HttpClientRequest put(int port,
                                       String host,
                                       String requestURI,
                                       Handler<HttpClientResponse> responseHandler)

      Create an HTTP PUT request to send to the server at the specified host and port, specifying a response handler to receive the response
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### put

          public HttpClientRequest put(String host,
                                       String requestURI,
                                       Handler<HttpClientResponse> responseHandler)

      Create an HTTP PUT request to send to the server at the specified host and default port, specifying a response handler to receive the response
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### put

          public HttpClientRequest put(String requestURI)

      Create an HTTP PUT request to send to the server at the default host and port.
      Parameters:
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### put

          public HttpClientRequest put(String requestURI,
                                       Handler<HttpClientResponse> responseHandler)

      Create an HTTP PUT request to send to the server at the default host and port, specifying a response handler to receive the response
      Parameters:
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### putAbs

          public HttpClientRequest putAbs(String absoluteURI)

      Create an HTTP PUT request to send to the server using an absolute URI
      Parameters:
        `absoluteURI` - the absolute URI
      Returns:
        an HTTP client request object

    - #### putAbs

          public HttpClientRequest putAbs(String absoluteURI,
                                          Handler<HttpClientResponse> responseHandler)

      Create an HTTP PUT request to send to the server using an absolute URI, specifying a response handler to receive the response
      Parameters:
        `absoluteURI` - the absolute URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### delete

          public HttpClientRequest delete(RequestOptions options)

      Create an HTTP DELETE request to send to the server with the specified options.
      Parameters:
        `options` - the request options
      Returns:
        an HTTP client request object

    - #### delete

          public HttpClientRequest delete(int port,
                                          String host,
                                          String requestURI)

      Create an HTTP DELETE request to send to the server at the specified host and port.
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### delete

          public HttpClientRequest delete(String host,
                                          String requestURI)

      Create an HTTP DELETE request to send to the server at the specified host and default port.
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### delete

          public HttpClientRequest delete(RequestOptions options,
                                          Handler<HttpClientResponse> responseHandler)

      Create an HTTP DELETE request to send to the server with the specified options, specifying a response handler to receive the response
      Parameters:
        `options` - the request options
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### delete

          public HttpClientRequest delete(int port,
                                          String host,
                                          String requestURI,
                                          Handler<HttpClientResponse> responseHandler)

      Create an HTTP DELETE request to send to the server at the specified host and port, specifying a response handler to receive the response
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### delete

          public HttpClientRequest delete(String host,
                                          String requestURI,
                                          Handler<HttpClientResponse> responseHandler)

      Create an HTTP DELETE request to send to the server at the specified host and default port, specifying a response handler to receive the response
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### delete

          public HttpClientRequest delete(String requestURI)

      Create an HTTP DELETE request to send to the server at the default host and port.
      Parameters:
        `requestURI` - the relative URI
      Returns:
        an HTTP client request object

    - #### delete

          public HttpClientRequest delete(String requestURI,
                                          Handler<HttpClientResponse> responseHandler)

      Create an HTTP DELETE request to send to the server at the default host and port, specifying a response handler to receive the response
      Parameters:
        `requestURI` - the relative URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### deleteAbs

          public HttpClientRequest deleteAbs(String absoluteURI)

      Create an HTTP DELETE request to send to the server using an absolute URI
      Parameters:
        `absoluteURI` - the absolute URI
      Returns:
        an HTTP client request object

    - #### deleteAbs

          public HttpClientRequest deleteAbs(String absoluteURI,
                                             Handler<HttpClientResponse> responseHandler)

      Create an HTTP DELETE request to send to the server using an absolute URI, specifying a response handler to receive the response
      Parameters:
        `absoluteURI` - the absolute URI
        `responseHandler` - the response handler
      Returns:
        an HTTP client request object

    - #### websocket

          public HttpClient websocket(RequestOptions options,
                                      Handler<WebSocket> wsConnect)

      Connect a WebSocket with the specified options
      Parameters:
        `options` - the request options
        `wsConnect` - handler that will be called with the websocket when connected
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(int port,
                                      String host,
                                      String requestURI,
                                      Handler<WebSocket> wsConnect)

      Connect a WebSocket to the specified port, host and relative request URI
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `wsConnect` - handler that will be called with the websocket when connected
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(RequestOptions options,
                                      Handler<WebSocket> wsConnect,
                                      Handler<Throwable> failureHandler)

      Connect a WebSocket with the specified options
      Parameters:
        `options` - the request options
        `wsConnect` - handler that will be called with the websocket when connected
        `failureHandler` - handler that will be called if websocket connection fails
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(int port,
                                      String host,
                                      String requestURI,
                                      Handler<WebSocket> wsConnect,
                                      Handler<Throwable> failureHandler)

      Connect a WebSocket to the specified port, host and relative request URI
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `wsConnect` - handler that will be called with the websocket when connected
        `failureHandler` - handler that will be called if websocket connection fails
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(String host,
                                      String requestURI,
                                      Handler<WebSocket> wsConnect)

      Connect a WebSocket to the host and relative request URI and default port
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `wsConnect` - handler that will be called with the websocket when connected
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(String host,
                                      String requestURI,
                                      Handler<WebSocket> wsConnect,
                                      Handler<Throwable> failureHandler)

      Connect a WebSocket to the host and relative request URI and default port
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `wsConnect` - handler that will be called with the websocket when connected
        `failureHandler` - handler that will be called if websocket connection fails
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(RequestOptions options,
                                      MultiMap headers,
                                      Handler<WebSocket> wsConnect)

      Connect a WebSocket with the specified options, and with the specified headers
      Parameters:
        `options` - the request options
        `headers` - the headers
        `wsConnect` - handler that will be called with the websocket when connected
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(int port,
                                      String host,
                                      String requestURI,
                                      MultiMap headers,
                                      Handler<WebSocket> wsConnect)

      Connect a WebSocket to the specified port, host and relative request URI, and with the specified headers
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `headers` - the headers
        `wsConnect` - handler that will be called with the websocket when connected
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(RequestOptions options,
                                      MultiMap headers,
                                      Handler<WebSocket> wsConnect,
                                      Handler<Throwable> failureHandler)

      Connect a WebSocket with the specified options, and with the specified headers
      Parameters:
        `options` - the request options
        `headers` - the headers
        `wsConnect` - handler that will be called with the websocket when connected
        `failureHandler` - handler that will be called if websocket connection fails
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(int port,
                                      String host,
                                      String requestURI,
                                      MultiMap headers,
                                      Handler<WebSocket> wsConnect,
                                      Handler<Throwable> failureHandler)

      Connect a WebSocket to the specified port, host and relative request URI, and with the specified headers
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `headers` - the headers
        `wsConnect` - handler that will be called with the websocket when connected
        `failureHandler` - handler that will be called if websocket connection fails
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(String host,
                                      String requestURI,
                                      MultiMap headers,
                                      Handler<WebSocket> wsConnect)

      Connect a WebSocket to the specified host,relative request UR, and default port and with the specified headers
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `headers` - the headers
        `wsConnect` - handler that will be called with the websocket when connected
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(String host,
                                      String requestURI,
                                      MultiMap headers,
                                      Handler<WebSocket> wsConnect,
                                      Handler<Throwable> failureHandler)

      Connect a WebSocket to the specified host,relative request UR, and default port and with the specified headers
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `headers` - the headers
        `wsConnect` - handler that will be called with the websocket when connected
        `failureHandler` - handler that will be called if websocket connection fails
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(RequestOptions options,
                                      MultiMap headers,
                                      WebsocketVersion version,
                                      Handler<WebSocket> wsConnect)

      Connect a WebSocket with the specified optionsI, with the specified headers and using the specified version of WebSockets
      Parameters:
        `options` - the request options
        `headers` - the headers
        `version` - the websocket version
        `wsConnect` - handler that will be called with the websocket when connected
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(int port,
                                      String host,
                                      String requestURI,
                                      MultiMap headers,
                                      WebsocketVersion version,
                                      Handler<WebSocket> wsConnect)

      Connect a WebSocket to the specified port, host and relative request URI, with the specified headers and using the specified version of WebSockets
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `headers` - the headers
        `version` - the websocket version
        `wsConnect` - handler that will be called with the websocket when connected
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(RequestOptions options,
                                      MultiMap headers,
                                      WebsocketVersion version,
                                      Handler<WebSocket> wsConnect,
                                      Handler<Throwable> failureHandler)

      Connect a WebSocket with the specified options, with the specified headers and using the specified version of WebSockets
      Parameters:
        `options` - the request options
        `headers` - the headers
        `version` - the websocket version
        `wsConnect` - handler that will be called with the websocket when connected
        `failureHandler` - handler that will be called if websocket connection fails
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(int port,
                                      String host,
                                      String requestURI,
                                      MultiMap headers,
                                      WebsocketVersion version,
                                      Handler<WebSocket> wsConnect,
                                      Handler<Throwable> failureHandler)

      Connect a WebSocket to the specified port, host and relative request URI, with the specified headers and using the specified version of WebSockets
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `headers` - the headers
        `version` - the websocket version
        `wsConnect` - handler that will be called with the websocket when connected
        `failureHandler` - handler that will be called if websocket connection fails
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(String host,
                                      String requestURI,
                                      MultiMap headers,
                                      WebsocketVersion version,
                                      Handler<WebSocket> wsConnect)

      Connect a WebSocket to the specified host, relative request URI and default port with the specified headers and using the specified version of WebSockets
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `headers` - the headers
        `version` - the websocket version
        `wsConnect` - handler that will be called with the websocket when connected
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(String host,
                                      String requestURI,
                                      MultiMap headers,
                                      WebsocketVersion version,
                                      Handler<WebSocket> wsConnect,
                                      Handler<Throwable> failureHandler)

      Connect a WebSocket to the specified host, relative request URI and default port with the specified headers and using the specified version of WebSockets
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `headers` - the headers
        `version` - the websocket version
        `wsConnect` - handler that will be called with the websocket when connected
        `failureHandler` - handler that will be called if websocket connection fails
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(RequestOptions options,
                                      MultiMap headers,
                                      WebsocketVersion version,
                                      String subProtocols,
                                      Handler<WebSocket> wsConnect)

      Connect a WebSocket with the specified options, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols
      Parameters:
        `options` - the request options
        `headers` - the headers
        `version` - the websocket version
        `subProtocols` - the subprotocols to use
        `wsConnect` - handler that will be called with the websocket when connected
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(int port,
                                      String host,
                                      String requestURI,
                                      MultiMap headers,
                                      WebsocketVersion version,
                                      String subProtocols,
                                      Handler<WebSocket> wsConnect)

      Connect a WebSocket to the specified port, host and relative request URI, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `headers` - the headers
        `version` - the websocket version
        `subProtocols` - the subprotocols to use
        `wsConnect` - handler that will be called with the websocket when connected
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocketAbs

          public HttpClient websocketAbs(String url,
                                         MultiMap headers,
                                         WebsocketVersion version,
                                         String subProtocols,
                                         Handler<WebSocket> wsConnect,
                                         Handler<Throwable> failureHandler)

      Connect a WebSocket with the specified absolute url, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols.
      Parameters:
        `url` - the absolute url
        `headers` - the headers
        `version` - the websocket version
        `subProtocols` - the subprotocols to use
        `wsConnect` - handler that will be called with the websocket when connected
        `failureHandler` - handler that will be called if websocket connection fails
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(RequestOptions options,
                                      MultiMap headers,
                                      WebsocketVersion version,
                                      String subProtocols,
                                      Handler<WebSocket> wsConnect,
                                      Handler<Throwable> failureHandler)

      Connect a WebSocket with the specified options, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols
      Parameters:
        `options` - the request options
        `headers` - the headers
        `version` - the websocket version
        `subProtocols` - the subprotocols to use
        `wsConnect` - handler that will be called with the websocket when connected
        `failureHandler` - handler that will be called if websocket connection fails
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(int port,
                                      String host,
                                      String requestURI,
                                      MultiMap headers,
                                      WebsocketVersion version,
                                      String subProtocols,
                                      Handler<WebSocket> wsConnect,
                                      Handler<Throwable> failureHandler)

      Connect a WebSocket to the specified port, host and relative request URI, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `headers` - the headers
        `version` - the websocket version
        `subProtocols` - the subprotocols to use
        `wsConnect` - handler that will be called with the websocket when connected
        `failureHandler` - handler that will be called if websocket connection fails
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(String host,
                                      String requestURI,
                                      MultiMap headers,
                                      WebsocketVersion version,
                                      String subProtocols,
                                      Handler<WebSocket> wsConnect)

      Connect a WebSocket to the specified host, relative request URI and default port, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `headers` - the headers
        `version` - the websocket version
        `subProtocols` - the subprotocols to use
        `wsConnect` - handler that will be called with the websocket when connected
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(String host,
                                      String requestURI,
                                      MultiMap headers,
                                      WebsocketVersion version,
                                      String subProtocols,
                                      Handler<WebSocket> wsConnect,
                                      Handler<Throwable> failureHandler)

      Connect a WebSocket to the specified host, relative request URI and default port, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `headers` - the headers
        `version` - the websocket version
        `subProtocols` - the subprotocols to use
        `wsConnect` - handler that will be called with the websocket when connected
        `failureHandler` - handler that will be called if websocket connection fails
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(String requestURI,
                                      Handler<WebSocket> wsConnect)

      Connect a WebSocket at the relative request URI using the default host and port
      Parameters:
        `requestURI` - the relative URI
        `wsConnect` - handler that will be called with the websocket when connected
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(String requestURI,
                                      Handler<WebSocket> wsConnect,
                                      Handler<Throwable> failureHandler)

      Connect a WebSocket at the relative request URI using the default host and port
      Parameters:
        `requestURI` - the relative URI
        `wsConnect` - handler that will be called with the websocket when connected
        `failureHandler` - handler that will be called if websocket connection fails
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(String requestURI,
                                      MultiMap headers,
                                      Handler<WebSocket> wsConnect)

      Connect a WebSocket at the relative request URI using the default host and port and the specified headers
      Parameters:
        `requestURI` - the relative URI
        `headers` - the headers
        `wsConnect` - handler that will be called with the websocket when connected
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(String requestURI,
                                      MultiMap headers,
                                      Handler<WebSocket> wsConnect,
                                      Handler<Throwable> failureHandler)

      Connect a WebSocket at the relative request URI using the default host and port and the specified headers
      Parameters:
        `requestURI` - the relative URI
        `headers` - the headers
        `wsConnect` - handler that will be called with the websocket when connected
        `failureHandler` - handler that will be called if websocket connection fails
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(String requestURI,
                                      MultiMap headers,
                                      WebsocketVersion version,
                                      Handler<WebSocket> wsConnect)

      Connect a WebSocket at the relative request URI using the default host and port, the specified headers and the specified version of WebSockets
      Parameters:
        `requestURI` - the relative URI
        `headers` - the headers
        `version` - the websocket version
        `wsConnect` - handler that will be called with the websocket when connected
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(String requestURI,
                                      MultiMap headers,
                                      WebsocketVersion version,
                                      Handler<WebSocket> wsConnect,
                                      Handler<Throwable> failureHandler)

      Connect a WebSocket at the relative request URI using the default host and port, the specified headers and the specified version of WebSockets
      Parameters:
        `requestURI` - the relative URI
        `headers` - the headers
        `version` - the websocket version
        `wsConnect` - handler that will be called with the websocket when connected
        `failureHandler` - handler that will be called if websocket connection fails
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(String requestURI,
                                      MultiMap headers,
                                      WebsocketVersion version,
                                      String subProtocols,
                                      Handler<WebSocket> wsConnect)

      Connect a WebSocket at the relative request URI using the default host and port, the specified headers, the specified version of WebSockets and the specified sub protocols
      Parameters:
        `requestURI` - the relative URI
        `headers` - the headers
        `version` - the websocket version
        `subProtocols` - the subprotocols
        `wsConnect` - handler that will be called with the websocket when connected
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocket

          public HttpClient websocket(String requestURI,
                                      MultiMap headers,
                                      WebsocketVersion version,
                                      String subProtocols,
                                      Handler<WebSocket> wsConnect,
                                      Handler<Throwable> failureHandler)

      Connect a WebSocket at the relative request URI using the default host and port, the specified headers, the specified version of WebSockets and the specified sub protocols
      Parameters:
        `requestURI` - the relative URI
        `headers` - the headers
        `version` - the websocket version
        `subProtocols` - the subprotocols
        `wsConnect` - handler that will be called with the websocket when connected
        `failureHandler` - handler that will be called if websocket connection fails
      Returns:
        a reference to this, so the API can be used fluently

    - #### websocketStream

          public ReadStream<WebSocket> websocketStream(RequestOptions options)

      Create a WebSocket stream with the specified options
      Parameters:
        `options` - the request options
      Returns:
        a stream emitting a WebSocket event when the client connection has been upgraded to a websocket

    - #### websocketStream

          public ReadStream<WebSocket> websocketStream(int port,
                                                       String host,
                                                       String requestURI)

      Create a WebSocket stream to the specified port, host and relative request URI
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
      Returns:
        a stream emitting a WebSocket event when the client connection has been upgraded to a websocket

    - #### websocketStream

          public ReadStream<WebSocket> websocketStream(String host,
                                                       String requestURI)

      Create a WebSocket stream to the specified host, relative request URI and default port
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
      Returns:
        a stream emitting a WebSocket event when the client connection has been upgraded to a websocket

    - #### websocketStream

          public ReadStream<WebSocket> websocketStream(RequestOptions options,
                                                       MultiMap headers)

      Create a WebSocket stream with the specified options, and with the specified headers
      Parameters:
        `options` - the request options
        `headers` - the headers
      Returns:
        a stream emitting a WebSocket event when the client connection has been upgraded to a websocket

    - #### websocketStream

          public ReadStream<WebSocket> websocketStream(int port,
                                                       String host,
                                                       String requestURI,
                                                       MultiMap headers)

      Create a WebSocket stream to the specified port, host and relative request URI, and with the specified headers
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `headers` - the headers
      Returns:
        a stream emitting a WebSocket event when the client connection has been upgraded to a websocket

    - #### websocketStream

          public ReadStream<WebSocket> websocketStream(String host,
                                                       String requestURI,
                                                       MultiMap headers)

      Create a WebSocket stream to the specified host, relative request URI and default port and with the specified headers
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `headers` - the headers
      Returns:
        a stream emitting a WebSocket event when the client connection has been upgraded to a websocket

    - #### websocketStream

          public ReadStream<WebSocket> websocketStream(RequestOptions options,
                                                       MultiMap headers,
                                                       WebsocketVersion version)

      Create a WebSocket stream with the specified options, with the specified headers and using the specified version of WebSockets
      Parameters:
        `options` - the request options
        `headers` - the headers
        `version` - the websocket version
      Returns:
        a stream emitting a WebSocket event when the client connection has been upgraded to a websocket

    - #### websocketStream

          public ReadStream<WebSocket> websocketStream(int port,
                                                       String host,
                                                       String requestURI,
                                                       MultiMap headers,
                                                       WebsocketVersion version)

      Create a WebSocket stream to the specified port, host and relative request URI, with the specified headers and using the specified version of WebSockets
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `headers` - the headers
        `version` - the websocket version
      Returns:
        a stream emitting a WebSocket event when the client connection has been upgraded to a websocket

    - #### websocketStream

          public ReadStream<WebSocket> websocketStream(String host,
                                                       String requestURI,
                                                       MultiMap headers,
                                                       WebsocketVersion version)

      Create a WebSocket stream with the specified options and with the specified headers and using the specified version of WebSockets
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `headers` - the headers
        `version` - the websocket version
      Returns:
        a stream emitting a WebSocket event when the client connection has been upgraded to a websocket

    - #### websocketStreamAbs

          public ReadStream<WebSocket> websocketStreamAbs(String url,
                                                          MultiMap headers,
                                                          WebsocketVersion version,
                                                          String subProtocols)

      Create a WebSocket stream with the specified absolute url, the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols.
      Parameters:
        `url` - the absolute url
        `headers` - the headers
        `version` - the websocket version
        `subProtocols` - the subprotocols to use
      Returns:
        a stream emitting a WebSocket event when the client connection has been upgraded to a websocket

    - #### websocketStream

          public ReadStream<WebSocket> websocketStream(RequestOptions options,
                                                       MultiMap headers,
                                                       WebsocketVersion version,
                                                       String subProtocols)

      Create a WebSocket stream to the specified port, host and relative request URI, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols
      Parameters:
        `options` - the request options
        `headers` - the headers
        `version` - the websocket version
        `subProtocols` - the subprotocols to use
      Returns:
        a stream emitting a WebSocket event when the client connection has been upgraded to a websocket

    - #### websocketStream

          public ReadStream<WebSocket> websocketStream(int port,
                                                       String host,
                                                       String requestURI,
                                                       MultiMap headers,
                                                       WebsocketVersion version,
                                                       String subProtocols)

      Create a WebSocket stream to the specified port, host and relative request URI, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols
      Parameters:
        `port` - the port
        `host` - the host
        `requestURI` - the relative URI
        `headers` - the headers
        `version` - the websocket version
        `subProtocols` - the subprotocols to use
      Returns:
        a stream emitting a WebSocket event when the client connection has been upgraded to a websocket

    - #### websocketStream

          public ReadStream<WebSocket> websocketStream(String host,
                                                       String requestURI,
                                                       MultiMap headers,
                                                       WebsocketVersion version,
                                                       String subProtocols)

      Create a WebSocket stream to the specified host, relative request URI and default port, with the specified headers, using the specified version of WebSockets, and the specified websocket sub protocols
      Parameters:
        `host` - the host
        `requestURI` - the relative URI
        `headers` - the headers
        `version` - the websocket version
        `subProtocols` - the subprotocols to use
      Returns:
        a stream emitting a WebSocket event when the client connection has been upgraded to a websocket

    - #### websocketStream

          public ReadStream<WebSocket> websocketStream(String requestURI)

      Create a WebSocket stream at the relative request URI using the default host and port and the specified headers
      Parameters:
        `requestURI` - the relative URI
      Returns:
        a stream emitting a WebSocket event when the client connection has been upgraded to a websocket

    - #### websocketStream

          public ReadStream<WebSocket> websocketStream(String requestURI,
                                                       MultiMap headers)

      Create a WebSocket stream at the relative request URI using the default host and port and the specified headers
      Parameters:
        `requestURI` - the relative URI
        `headers` - the headers
      Returns:
        a stream emitting a WebSocket event when the client connection has been upgraded to a websocket

    - #### websocketStream

          public ReadStream<WebSocket> websocketStream(String requestURI,
                                                       MultiMap headers,
                                                       WebsocketVersion version)

      Create a WebSocket stream at the relative request URI using the default host and port, the specified headers and the specified version of WebSockets
      Parameters:
        `requestURI` - the relative URI
        `headers` - the headers
        `version` - the websocket version
      Returns:
        a stream emitting a WebSocket event when the client connection has been upgraded to a websocket

    - #### websocketStream

          public ReadStream<WebSocket> websocketStream(String requestURI,
                                                       MultiMap headers,
                                                       WebsocketVersion version,
                                                       String subProtocols)

      Create a WebSocket stream at the relative request URI using the default host and port, the specified headers, the specified version of WebSockets and the specified sub protocols
      Parameters:
        `requestURI` - the relative URI
        `headers` - the headers
        `version` - the websocket version
        `subProtocols` - the subprotocols
      Returns:
        a stream emitting a WebSocket event when the client connection has been upgraded to a websocket

    - #### connectionHandler

          public HttpClient connectionHandler(Handler<HttpConnection> handler)

      Set a connection handler for the client. This handler is called when a new connection is established.
      Parameters:
        `handler` -
      Returns:
        a reference to this, so the API can be used fluently

    - #### redirectHandler

          public HttpClient redirectHandler(java.util.function.Function<HttpClientResponse,Future<HttpClientRequest>> handler)

      Set a redirect handler for the http client.

      The redirect handler is called when a `3xx` response is received and the request is configured to follow redirects with `HttpClientRequest.setFollowRedirects(boolean)`.

      The redirect handler is passed the `HttpClientResponse`, it can return an `HttpClientRequest` or `null`.

      - when null is returned, the original response is processed by the original request response handler
      - when a new `Future` is returned, the client will send this new request
      The new request will get a copy of the previous request headers unless headers are set. In this case, the client assumes that the redirect handler exclusively managers the headers of the new request.

      The handler must return a `Future` unsent so the client can further configure it and send it.

      Parameters:
        `handler` - the new redirect handler
      Returns:
        a reference to this, so the API can be used fluently

    - #### close

          public void close()

      Close the client. Closing will close down any pooled connections. Clients should always be closed after use.

    - #### newInstance

          public static HttpClient newInstance(HttpClient arg)

Copyright © 2018 Eclipse. All rights reserved.