io.vertx.core.net

## Interface NetClient

- All Superinterfaces:
    Measured

      public interface NetClient
      extends Measured

  A TCP client.

  Multiple connections to different servers can be made using the same instance.

  This client supports a configurable number of connection attempts and a configurable delay between attempts.

  Author:
    Tim Fox

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `Future<Void>` | `close()` Like `close(Handler)` but returns a `Future` of the asynchronous result
    `void` | `close(Handler<AsyncResult<Void>> handler)` Close the client.
    `Future<NetSocket>` | `connect(int port, String host)` Like `connect(int, String, Handler)` but returns a `Future` of the asynchronous result
    `NetClient` | `connect(int port, String host, Handler<AsyncResult<NetSocket>> connectHandler)` Open a connection to a server at the specific `port` and `host`.
    `Future<NetSocket>` | `connect(int port, String host, String serverName)` Like `connect(int, String, String, Handler)` but returns a `Future` of the asynchronous result
    `NetClient` | `connect(int port, String host, String serverName, Handler<AsyncResult<NetSocket>> connectHandler)` Open a connection to a server at the specific `port` and `host`.
    `Future<NetSocket>` | `connect(SocketAddress remoteAddress)` Like `connect(SocketAddress, Handler)` but returns a `Future` of the asynchronous result
    `NetClient` | `connect(SocketAddress remoteAddress, Handler<AsyncResult<NetSocket>> connectHandler)` Open a connection to a server at the specific `remoteAddress`.
    `Future<NetSocket>` | `connect(SocketAddress remoteAddress, String serverName)` Like `connect(SocketAddress, String, Handler)` but returns a `Future` of the asynchronous result
    `NetClient` | `connect(SocketAddress remoteAddress, String serverName, Handler<AsyncResult<NetSocket>> connectHandler)` Open a connection to a server at the specific `remoteAddress`.
    `Future<Void>` | `updateSSLOptions(SSLOptions options)` Update the client SSL options.
    `default void` | `updateSSLOptions(SSLOptions options, Handler<AsyncResult<Void>> handler)` Like `updateSSLOptions(SSLOptions)` but supplying a handler that will be called when the update happened (or has failed).

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

      `isMetricsEnabled`

- - ### Method Detail

    - #### connect

          NetClient connect(int port,
                            String host,
                            Handler<AsyncResult<NetSocket>> connectHandler)

      Open a connection to a server at the specific `port` and `host`.

      `host` can be a valid host name or IP address. The connect is done asynchronously and on success, a `NetSocket` instance is supplied via the `connectHandler` instance

      Parameters:
        `port` - the port
        `host` - the host
      Returns:
        a reference to this, so the API can be used fluently

    - #### connect

          Future<NetSocket> connect(int port,
                                    String host)

      Like `connect(int, String, Handler)` but returns a `Future` of the asynchronous result

    - #### connect

          NetClient connect(int port,
                            String host,
                            String serverName,
                            Handler<AsyncResult<NetSocket>> connectHandler)

      Open a connection to a server at the specific `port` and `host`.

      `host` can be a valid host name or IP address. The connect is done asynchronously and on success, a `NetSocket` instance is supplied via the `connectHandler` instance

      Parameters:
        `port` - the port
        `host` - the host
        `serverName` - the SNI server name
      Returns:
        a reference to this, so the API can be used fluently

    - #### connect

          Future<NetSocket> connect(int port,
                                    String host,
                                    String serverName)

      Like `connect(int, String, String, Handler)` but returns a `Future` of the asynchronous result

    - #### connect

          NetClient connect(SocketAddress remoteAddress,
                            Handler<AsyncResult<NetSocket>> connectHandler)

      Open a connection to a server at the specific `remoteAddress`.

      The connect is done asynchronously and on success, a `NetSocket` instance is supplied via the `connectHandler` instance

      Parameters:
        `remoteAddress` - the remote address
      Returns:
        a reference to this, so the API can be used fluently

    - #### connect

          Future<NetSocket> connect(SocketAddress remoteAddress)

      Like `connect(SocketAddress, Handler)` but returns a `Future` of the asynchronous result

    - #### connect

          NetClient connect(SocketAddress remoteAddress,
                            String serverName,
                            Handler<AsyncResult<NetSocket>> connectHandler)

      Open a connection to a server at the specific `remoteAddress`.

      The connect is done asynchronously and on success, a `NetSocket` instance is supplied via the `connectHandler` instance

      Parameters:
        `remoteAddress` - the remote address
        `serverName` - the SNI server name
      Returns:
        a reference to this, so the API can be used fluently

    - #### connect

          Future<NetSocket> connect(SocketAddress remoteAddress,
                                    String serverName)

      Like `connect(SocketAddress, String, Handler)` but returns a `Future` of the asynchronous result

    - #### close

          void close(Handler<AsyncResult<Void>> handler)

      Close the client.

      Any sockets which have not been closed manually will be closed here. The close is asynchronous and may not complete until some time after the method has returned.

    - #### close

          Future<Void> close()

      Like `close(Handler)` but returns a `Future` of the asynchronous result

    - #### updateSSLOptions

          Future<Void> updateSSLOptions(SSLOptions options)

      Update the client SSL options. Update only happens if the SSL options is valid.
      Parameters:
        `options` - the new SSL options
      Returns:
        a future signaling the update success

    - #### updateSSLOptions

          default void updateSSLOptions(SSLOptions options,
                                        Handler<AsyncResult<Void>> handler)

      Like `updateSSLOptions(SSLOptions)` but supplying a handler that will be called when the update happened (or has failed).
      Parameters:
        `options` - the new SSL options
        `handler` - the update handler

Copyright © 2023 Eclipse. All rights reserved.