Package io.vertx.core.net

## Class NetClientOptions

- java.lang.Object
- - io.vertx.core.net.NetworkOptions
  - - io.vertx.core.net.TCPSSLOptions
    - - io.vertx.core.net.ClientOptionsBase
      - - io.vertx.core.net.NetClientOptions

- Direct Known Subclasses:
    `MailConfig`, `MqttClientOptions`, `io.vertx.proton.ProtonClientOptions`, `RabbitMQOptions`, `StompClientOptions`

      public class NetClientOptions
      extends ClientOptionsBase

  Options for configuring a `NetClient`.
  Author:
    Tim Fox

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static String` | `DEFAULT_HOSTNAME_VERIFICATION_ALGORITHM` | Default value to determine hostname verification algorithm hostname verification (for SSL/TLS) = ""
    `static int` | `DEFAULT_RECONNECT_ATTEMPTS` | The default value for reconnect attempts = 0
    `static long` | `DEFAULT_RECONNECT_INTERVAL` | The default value for reconnect interval = 1000 ms
    `static boolean` | `DEFAULT_REGISTER_WRITE_HANDLER` | Whether a write-handler should be registered by default = false.

    - ### Fields inherited from class io.vertx.core.net.ClientOptionsBase

      `DEFAULT_CONNECT_TIMEOUT, DEFAULT_METRICS_NAME`

    - ### Fields inherited from class io.vertx.core.net.TCPSSLOptions

      `DEFAULT_IDLE_TIMEOUT, DEFAULT_IDLE_TIMEOUT_TIME_UNIT, DEFAULT_READ_IDLE_TIMEOUT, DEFAULT_SO_LINGER, DEFAULT_SSL, DEFAULT_SSL_ENGINE, DEFAULT_TCP_CORK, DEFAULT_TCP_FAST_OPEN, DEFAULT_TCP_KEEP_ALIVE, DEFAULT_TCP_NO_DELAY, DEFAULT_TCP_QUICKACK, DEFAULT_TCP_USER_TIMEOUT, DEFAULT_WRITE_IDLE_TIMEOUT`

    - ### Fields inherited from class io.vertx.core.net.NetworkOptions

      `DEFAULT_LOG_ACTIVITY_FORMAT, DEFAULT_LOG_ENABLED, DEFAULT_RECEIVE_BUFFER_SIZE, DEFAULT_REUSE_ADDRESS, DEFAULT_REUSE_PORT, DEFAULT_SEND_BUFFER_SIZE, DEFAULT_TRAFFIC_CLASS`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `NetClientOptions()` | The default constructor
    `NetClientOptions​(JsonObject json)` | Create options from JSON
    `NetClientOptions​(ClientOptionsBase other)` | Create an instance copying the values from `other` and using the defaults of `NetClientOptions`.
    `NetClientOptions​(NetClientOptions other)` | Copy constructor

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `NetClientOptions` | `addCrlPath​(String crlPath)` | Add a CRL path
    `NetClientOptions` | `addCrlValue​(Buffer crlValue)` | Add a CRL value
    `NetClientOptions` | `addEnabledCipherSuite​(String suite)` | Add an enabled cipher suite, appended to the ordered suites.
    `NetClientOptions` | `addEnabledSecureTransportProtocol​(String protocol)` | Add an enabled SSL/TLS protocols, appended to the ordered protocols.
    `NetClientOptions` | `addNonProxyHost​(String nonProxyHost)` | Add a `host` to the `ClientOptionsBase.getNonProxyHosts()` list.
    `List<String>` | `getApplicationLayerProtocols()` |
    `String` | `getHostnameVerificationAlgorithm()` |
    `int` | `getReconnectAttempts()` |
    `long` | `getReconnectInterval()` |
    `boolean` | `isRegisterWriteHandler()` |
    `NetClientOptions` | `removeEnabledCipherSuite​(String suite)` | Removes an enabled cipher suite from the ordered suites.
    `NetClientOptions` | `removeEnabledSecureTransportProtocol​(String protocol)` | Removes an enabled SSL/TLS protocol from the ordered protocols.
    `NetClientOptions` | `setActivityLogDataFormat​(ByteBufFormat activityLogDataFormat)` | Set the value of Netty's logging handler's data format: Netty's pipeline is configured for logging on Netty's logger.
    `NetClientOptions` | `setApplicationLayerProtocols​(List<String> protocols)` | Set the list of application-layer protocols to provide to the server during the Application-Layer Protocol Negotiation.
    `NetClientOptions` | `setConnectTimeout​(int connectTimeout)` | Set the connect timeout
    `NetClientOptions` | `setEnabledSecureTransportProtocols​(Set<String> enabledSecureTransportProtocols)` | Sets the list of enabled SSL/TLS protocols.
    `NetClientOptions` | `setHostnameVerificationAlgorithm​(String hostnameVerificationAlgorithm)` | Set the hostname verification algorithm interval To disable hostname verification, set hostnameVerificationAlgorithm to an empty String
    `NetClientOptions` | `setIdleTimeout​(int idleTimeout)` | Set the idle timeout, default time unit is seconds.
    `NetClientOptions` | `setIdleTimeoutUnit​(TimeUnit idleTimeoutUnit)` | Set the idle timeout unit.
    `NetClientOptions` | `setKeyCertOptions​(KeyCertOptions options)` | Set the key/cert options.
    `NetClientOptions` | `setLocalAddress​(String localAddress)` | Set the local interface to bind for network connections.
    `NetClientOptions` | `setLogActivity​(boolean logEnabled)` | Set to true to enabled network activity logging: Netty's pipeline is configured for logging on Netty's logger.
    `NetClientOptions` | `setMetricsName​(String metricsName)` | Set the metrics name identifying the reported metrics, useful for grouping metrics with the same name.
    `NetClientOptions` | `setNonProxyHosts​(List<String> nonProxyHosts)` | Set a list of remote hosts that are not proxied when the client is configured to use a proxy.
    `NetClientOptions` | `setProxyOptions​(ProxyOptions proxyOptions)` | Set proxy options for connections via CONNECT proxy (e.g.
    `NetClientOptions` | `setReadIdleTimeout​(int idleTimeout)` | Set the read idle timeout, default time unit is seconds.
    `NetClientOptions` | `setReceiveBufferSize​(int receiveBufferSize)` | Set the TCP receive buffer size
    `NetClientOptions` | `setReconnectAttempts​(int attempts)` | Set the value of reconnect attempts
    `NetClientOptions` | `setReconnectInterval​(long interval)` | Set the reconnect interval
    `NetClientOptions` | `setRegisterWriteHandler​(boolean registerWriteHandler)` | Whether a write-handler should be registered on the `EventBus`.
    `NetClientOptions` | `setReuseAddress​(boolean reuseAddress)` | Set the value of reuse address
    `NetClientOptions` | `setReusePort​(boolean reusePort)` | Set the value of reuse port.
    `NetClientOptions` | `setSendBufferSize​(int sendBufferSize)` | Set the TCP send buffer size
    `NetClientOptions` | `setSoLinger​(int soLinger)` | Set whether SO_linger keep alive is enabled
    `NetClientOptions` | `setSsl​(boolean ssl)` | Set whether SSL/TLS is enabled
    `NetClientOptions` | `setSslEngineOptions​(SSLEngineOptions sslEngineOptions)` | Set to use SSL engine implementation to use.
    `NetClientOptions` | `setSslHandshakeTimeout​(long sslHandshakeTimeout)` | Set the SSL handshake timeout, default time unit is seconds.
    `NetClientOptions` | `setSslHandshakeTimeoutUnit​(TimeUnit sslHandshakeTimeoutUnit)` | Set the SSL handshake timeout unit.
    `NetClientOptions` | `setTcpCork​(boolean tcpCork)` | Enable the `TCP_CORK` option - only with linux native transport.
    `NetClientOptions` | `setTcpFastOpen​(boolean tcpFastOpen)` | Enable the `TCP_FASTOPEN` option - only with linux native transport.
    `NetClientOptions` | `setTcpKeepAlive​(boolean tcpKeepAlive)` | Set whether TCP keep alive is enabled
    `NetClientOptions` | `setTcpNoDelay​(boolean tcpNoDelay)` | Set whether TCP no delay is enabled
    `NetClientOptions` | `setTcpQuickAck​(boolean tcpQuickAck)` | Enable the `TCP_QUICKACK` option - only with linux native transport.
    `NetClientOptions` | `setTrafficClass​(int trafficClass)` | Set the value of traffic class
    `NetClientOptions` | `setTrustAll​(boolean trustAll)` | Set whether all server certificates should be trusted
    `NetClientOptions` | `setTrustOptions​(TrustOptions options)` | Set the trust options.
    `NetClientOptions` | `setUseAlpn​(boolean useAlpn)` | Set the ALPN usage.
    `NetClientOptions` | `setWriteIdleTimeout​(int idleTimeout)` | Set the write idle timeout, default time unit is seconds.
    `JsonObject` | `toJson()` | Convert to JSON

    - ### Methods inherited from class io.vertx.core.net.ClientOptionsBase

      `getConnectTimeout, getLocalAddress, getMetricsName, getNonProxyHosts, getOrCreateSSLOptions, getProxyOptions, getSslOptions, isTrustAll, setTcpUserTimeout`

    - ### Methods inherited from class io.vertx.core.net.TCPSSLOptions

      `getCrlPaths, getCrlValues, getEnabledCipherSuites, getEnabledSecureTransportProtocols, getIdleTimeout, getIdleTimeoutUnit, getKeyCertOptions, getReadIdleTimeout, getSoLinger, getSslEngineOptions, getSslHandshakeTimeout, getSslHandshakeTimeoutUnit, getTcpUserTimeout, getTrustOptions, getWriteIdleTimeout, isSsl, isTcpCork, isTcpFastOpen, isTcpKeepAlive, isTcpNoDelay, isTcpQuickAck, isUseAlpn`

    - ### Methods inherited from class io.vertx.core.net.NetworkOptions

      `getActivityLogDataFormat, getLogActivity, getReceiveBufferSize, getSendBufferSize, getTrafficClass, isReuseAddress, isReusePort`

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

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### DEFAULT_RECONNECT_ATTEMPTS

          public static final int DEFAULT_RECONNECT_ATTEMPTS

      The default value for reconnect attempts = 0
      See Also:
        Constant Field Values

    - #### DEFAULT_RECONNECT_INTERVAL

          public static final long DEFAULT_RECONNECT_INTERVAL

      The default value for reconnect interval = 1000 ms
      See Also:
        Constant Field Values

    - #### DEFAULT_HOSTNAME_VERIFICATION_ALGORITHM

          public static final String DEFAULT_HOSTNAME_VERIFICATION_ALGORITHM

      Default value to determine hostname verification algorithm hostname verification (for SSL/TLS) = ""
      See Also:
        Constant Field Values

    - #### DEFAULT_REGISTER_WRITE_HANDLER

          public static final boolean DEFAULT_REGISTER_WRITE_HANDLER

      Whether a write-handler should be registered by default = false.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### NetClientOptions

          public NetClientOptions()

      The default constructor

    - #### NetClientOptions

          public NetClientOptions​(NetClientOptions other)

      Copy constructor
      Parameters:
        `other` - the options to copy

    - #### NetClientOptions

          public NetClientOptions​(ClientOptionsBase other)

      Create an instance copying the values from `other` and using the defaults of `NetClientOptions`.
      Parameters:
        `other` - the options to copy

    - #### NetClientOptions

          public NetClientOptions​(JsonObject json)

      Create options from JSON
      Parameters:
        `json` - the JSON

  - ### Method Detail

    - #### setSendBufferSize

          public NetClientOptions setSendBufferSize​(int sendBufferSize)

      Description copied from class: `NetworkOptions`
      Set the TCP send buffer size
      Overrides:
        `setSendBufferSize` in class `ClientOptionsBase`
      Parameters:
        `sendBufferSize` - the buffers size, in bytes
      Returns:
        a reference to this, so the API can be used fluently

    - #### setReceiveBufferSize

          public NetClientOptions setReceiveBufferSize​(int receiveBufferSize)

      Description copied from class: `NetworkOptions`
      Set the TCP receive buffer size
      Overrides:
        `setReceiveBufferSize` in class `ClientOptionsBase`
      Parameters:
        `receiveBufferSize` - the buffers size, in bytes
      Returns:
        a reference to this, so the API can be used fluently

    - #### setReuseAddress

          public NetClientOptions setReuseAddress​(boolean reuseAddress)

      Description copied from class: `NetworkOptions`
      Set the value of reuse address
      Overrides:
        `setReuseAddress` in class `ClientOptionsBase`
      Parameters:
        `reuseAddress` - the value of reuse address
      Returns:
        a reference to this, so the API can be used fluently

    - #### setReusePort

          public NetClientOptions setReusePort​(boolean reusePort)

      Description copied from class: `NetworkOptions`
      Set the value of reuse port.

      This is only supported by native transports.
      Overrides:
        `setReusePort` in class `ClientOptionsBase`
      Parameters:
        `reusePort` - the value of reuse port
      Returns:
        a reference to this, so the API can be used fluently

    - #### setTrafficClass

          public NetClientOptions setTrafficClass​(int trafficClass)

      Description copied from class: `NetworkOptions`
      Set the value of traffic class
      Overrides:
        `setTrafficClass` in class `ClientOptionsBase`
      Parameters:
        `trafficClass` - the value of traffic class
      Returns:
        a reference to this, so the API can be used fluently

    - #### setTcpNoDelay

          public NetClientOptions setTcpNoDelay​(boolean tcpNoDelay)

      Description copied from class: `TCPSSLOptions`
      Set whether TCP no delay is enabled
      Overrides:
        `setTcpNoDelay` in class `ClientOptionsBase`
      Parameters:
        `tcpNoDelay` - true if TCP no delay is enabled (Nagle disabled)
      Returns:
        a reference to this, so the API can be used fluently

    - #### setTcpKeepAlive

          public NetClientOptions setTcpKeepAlive​(boolean tcpKeepAlive)

      Description copied from class: `TCPSSLOptions`
      Set whether TCP keep alive is enabled
      Overrides:
        `setTcpKeepAlive` in class `ClientOptionsBase`
      Parameters:
        `tcpKeepAlive` - true if TCP keep alive is enabled
      Returns:
        a reference to this, so the API can be used fluently

    - #### setSoLinger

          public NetClientOptions setSoLinger​(int soLinger)

      Description copied from class: `TCPSSLOptions`
      Set whether SO_linger keep alive is enabled
      Overrides:
        `setSoLinger` in class `ClientOptionsBase`
      Parameters:
        `soLinger` - true if SO_linger is enabled
      Returns:
        a reference to this, so the API can be used fluently

    - #### setIdleTimeout

          public NetClientOptions setIdleTimeout​(int idleTimeout)

      Description copied from class: `TCPSSLOptions`
      Set the idle timeout, default time unit is seconds. Zero means don't timeout. This determines if a connection will timeout and be closed if no data is received nor sent within the timeout. If you want change default time unit, use `TCPSSLOptions.setIdleTimeoutUnit(TimeUnit)`
      Overrides:
        `setIdleTimeout` in class `ClientOptionsBase`
      Parameters:
        `idleTimeout` - the timeout
      Returns:
        a reference to this, so the API can be used fluently

    - #### setReadIdleTimeout

          public NetClientOptions setReadIdleTimeout​(int idleTimeout)

      Description copied from class: `TCPSSLOptions`
      Set the read idle timeout, default time unit is seconds. Zero means don't timeout. This determines if a connection will timeout and be closed if no data is received within the timeout. If you want change default time unit, use `TCPSSLOptions.setIdleTimeoutUnit(TimeUnit)`
      Overrides:
        `setReadIdleTimeout` in class `ClientOptionsBase`
      Parameters:
        `idleTimeout` - the read timeout
      Returns:
        a reference to this, so the API can be used fluently

    - #### setWriteIdleTimeout

          public NetClientOptions setWriteIdleTimeout​(int idleTimeout)

      Description copied from class: `TCPSSLOptions`
      Set the write idle timeout, default time unit is seconds. Zero means don't timeout. This determines if a connection will timeout and be closed if no data is sent within the timeout. If you want change default time unit, use `TCPSSLOptions.setIdleTimeoutUnit(TimeUnit)`
      Overrides:
        `setWriteIdleTimeout` in class `ClientOptionsBase`
      Parameters:
        `idleTimeout` - the write timeout
      Returns:
        a reference to this, so the API can be used fluently

    - #### setIdleTimeoutUnit

          public NetClientOptions setIdleTimeoutUnit​(TimeUnit idleTimeoutUnit)

      Description copied from class: `TCPSSLOptions`
      Set the idle timeout unit. If not specified, default is seconds.
      Overrides:
        `setIdleTimeoutUnit` in class `ClientOptionsBase`
      Parameters:
        `idleTimeoutUnit` - specify time unit.
      Returns:
        a reference to this, so the API can be used fluently

    - #### setSsl

          public NetClientOptions setSsl​(boolean ssl)

      Description copied from class: `TCPSSLOptions`
      Set whether SSL/TLS is enabled
      Overrides:
        `setSsl` in class `ClientOptionsBase`
      Parameters:
        `ssl` - true if enabled
      Returns:
        a reference to this, so the API can be used fluently

    - #### setKeyCertOptions

          public NetClientOptions setKeyCertOptions​(KeyCertOptions options)

      Description copied from class: `TCPSSLOptions`
      Set the key/cert options.
      Overrides:
        `setKeyCertOptions` in class `ClientOptionsBase`
      Parameters:
        `options` - the key store options
      Returns:
        a reference to this, so the API can be used fluently

    - #### setTrustOptions

          public NetClientOptions setTrustOptions​(TrustOptions options)

      Description copied from class: `TCPSSLOptions`
      Set the trust options.
      Overrides:
        `setTrustOptions` in class `ClientOptionsBase`
      Parameters:
        `options` - the trust options
      Returns:
        a reference to this, so the API can be used fluently

    - #### addEnabledCipherSuite

          public NetClientOptions addEnabledCipherSuite​(String suite)

      Description copied from class: `TCPSSLOptions`
      Add an enabled cipher suite, appended to the ordered suites.
      Overrides:
        `addEnabledCipherSuite` in class `ClientOptionsBase`
      Parameters:
        `suite` - the suite
      Returns:
        a reference to this, so the API can be used fluently
      See Also:
        `TCPSSLOptions.getEnabledCipherSuites()`

    - #### removeEnabledCipherSuite

          public NetClientOptions removeEnabledCipherSuite​(String suite)

      Description copied from class: `TCPSSLOptions`
      Removes an enabled cipher suite from the ordered suites.
      Overrides:
        `removeEnabledCipherSuite` in class `ClientOptionsBase`
      Parameters:
        `suite` - the suite
      Returns:
        a reference to this, so the API can be used fluently

    - #### addEnabledSecureTransportProtocol

          public NetClientOptions addEnabledSecureTransportProtocol​(String protocol)

      Description copied from class: `TCPSSLOptions`
      Add an enabled SSL/TLS protocols, appended to the ordered protocols.
      Overrides:
        `addEnabledSecureTransportProtocol` in class `ClientOptionsBase`
      Parameters:
        `protocol` - the SSL/TLS protocol to enable
      Returns:
        a reference to this, so the API can be used fluently

    - #### removeEnabledSecureTransportProtocol

          public NetClientOptions removeEnabledSecureTransportProtocol​(String protocol)

      Description copied from class: `TCPSSLOptions`
      Removes an enabled SSL/TLS protocol from the ordered protocols.
      Overrides:
        `removeEnabledSecureTransportProtocol` in class `ClientOptionsBase`
      Parameters:
        `protocol` - the SSL/TLS protocol to disable
      Returns:
        a reference to this, so the API can be used fluently

    - #### setUseAlpn

          public NetClientOptions setUseAlpn​(boolean useAlpn)

      Description copied from class: `TCPSSLOptions`
      Set the ALPN usage.
      Overrides:
        `setUseAlpn` in class `ClientOptionsBase`
      Parameters:
        `useAlpn` - true when Application-Layer Protocol Negotiation should be used

    - #### setSslEngineOptions

          public NetClientOptions setSslEngineOptions​(SSLEngineOptions sslEngineOptions)

      Description copied from class: `TCPSSLOptions`
      Set to use SSL engine implementation to use.
      Overrides:
        `setSslEngineOptions` in class `ClientOptionsBase`
      Parameters:
        `sslEngineOptions` - the ssl engine to use
      Returns:
        a reference to this, so the API can be used fluently

    - #### setTcpFastOpen

          public NetClientOptions setTcpFastOpen​(boolean tcpFastOpen)

      Description copied from class: `TCPSSLOptions`
      Enable the `TCP_FASTOPEN` option - only with linux native transport.
      Overrides:
        `setTcpFastOpen` in class `ClientOptionsBase`
      Parameters:
        `tcpFastOpen` - the fast open value

    - #### setTcpCork

          public NetClientOptions setTcpCork​(boolean tcpCork)

      Description copied from class: `TCPSSLOptions`
      Enable the `TCP_CORK` option - only with linux native transport.
      Overrides:
        `setTcpCork` in class `ClientOptionsBase`
      Parameters:
        `tcpCork` - the cork value

    - #### setTcpQuickAck

          public NetClientOptions setTcpQuickAck​(boolean tcpQuickAck)

      Description copied from class: `TCPSSLOptions`
      Enable the `TCP_QUICKACK` option - only with linux native transport.
      Overrides:
        `setTcpQuickAck` in class `ClientOptionsBase`
      Parameters:
        `tcpQuickAck` - the quick ack value

    - #### addCrlPath

          public NetClientOptions addCrlPath​(String crlPath)
                                      throws NullPointerException

      Description copied from class: `TCPSSLOptions`
      Add a CRL path
      Overrides:
        `addCrlPath` in class `ClientOptionsBase`
      Parameters:
        `crlPath` - the path
      Returns:
        a reference to this, so the API can be used fluently
      Throws:
        `NullPointerException`

    - #### addCrlValue

          public NetClientOptions addCrlValue​(Buffer crlValue)
                                       throws NullPointerException

      Description copied from class: `TCPSSLOptions`
      Add a CRL value
      Overrides:
        `addCrlValue` in class `ClientOptionsBase`
      Parameters:
        `crlValue` - the value
      Returns:
        a reference to this, so the API can be used fluently
      Throws:
        `NullPointerException`

    - #### setTrustAll

          public NetClientOptions setTrustAll​(boolean trustAll)

      Description copied from class: `ClientOptionsBase`
      Set whether all server certificates should be trusted
      Overrides:
        `setTrustAll` in class `ClientOptionsBase`
      Parameters:
        `trustAll` - true if all should be trusted
      Returns:
        a reference to this, so the API can be used fluently

    - #### setConnectTimeout

          public NetClientOptions setConnectTimeout​(int connectTimeout)

      Description copied from class: `ClientOptionsBase`
      Set the connect timeout
      Overrides:
        `setConnectTimeout` in class `ClientOptionsBase`
      Parameters:
        `connectTimeout` - connect timeout, in ms
      Returns:
        a reference to this, so the API can be used fluently

    - #### setMetricsName

          public NetClientOptions setMetricsName​(String metricsName)

      Description copied from class: `ClientOptionsBase`
      Set the metrics name identifying the reported metrics, useful for grouping metrics with the same name.
      Overrides:
        `setMetricsName` in class `ClientOptionsBase`
      Parameters:
        `metricsName` - the metrics name
      Returns:
        a reference to this, so the API can be used fluently

    - #### setReconnectAttempts

          public NetClientOptions setReconnectAttempts​(int attempts)

      Set the value of reconnect attempts
      Parameters:
        `attempts` - the maximum number of reconnect attempts
      Returns:
        a reference to this, so the API can be used fluently

    - #### getReconnectAttempts

          public int getReconnectAttempts()

      Returns:
        the value of reconnect attempts

    - #### setReconnectInterval

          public NetClientOptions setReconnectInterval​(long interval)

      Set the reconnect interval
      Parameters:
        `interval` - the reconnect interval in ms
      Returns:
        a reference to this, so the API can be used fluently

    - #### getHostnameVerificationAlgorithm

          public String getHostnameVerificationAlgorithm()

      Returns:
        the value of the hostname verification algorithm

    - #### setHostnameVerificationAlgorithm

          public NetClientOptions setHostnameVerificationAlgorithm​(String hostnameVerificationAlgorithm)

      Set the hostname verification algorithm interval To disable hostname verification, set hostnameVerificationAlgorithm to an empty String
      Parameters:
        `hostnameVerificationAlgorithm` - should be HTTPS, LDAPS or an empty String
      Returns:
        a reference to this, so the API can be used fluently

    - #### getApplicationLayerProtocols

          public List<String> getApplicationLayerProtocols()

      Returns:
        the list of application-layer protocols send during the Application-Layer Protocol Negotiation.

    - #### setApplicationLayerProtocols

          public NetClientOptions setApplicationLayerProtocols​(List<String> protocols)

      Set the list of application-layer protocols to provide to the server during the Application-Layer Protocol Negotiation.
      Parameters:
        `protocols` - the protocols
      Returns:
        a reference to this, so the API can be used fluently

    - #### getReconnectInterval

          public long getReconnectInterval()

      Returns:
        the value of reconnect interval

    - #### setLogActivity

          public NetClientOptions setLogActivity​(boolean logEnabled)

      Description copied from class: `NetworkOptions`
      Set to true to enabled network activity logging: Netty's pipeline is configured for logging on Netty's logger.
      Overrides:
        `setLogActivity` in class `ClientOptionsBase`
      Parameters:
        `logEnabled` - true for logging the network activity
      Returns:
        a reference to this, so the API can be used fluently

    - #### setActivityLogDataFormat

          public NetClientOptions setActivityLogDataFormat​(ByteBufFormat activityLogDataFormat)

      Description copied from class: `NetworkOptions`
      Set the value of Netty's logging handler's data format: Netty's pipeline is configured for logging on Netty's logger.
      Overrides:
        `setActivityLogDataFormat` in class `ClientOptionsBase`
      Parameters:
        `activityLogDataFormat` - the format to use
      Returns:
        a reference to this, so the API can be used fluently

    - #### setProxyOptions

          public NetClientOptions setProxyOptions​(ProxyOptions proxyOptions)

      Description copied from class: `ClientOptionsBase`
      Set proxy options for connections via CONNECT proxy (e.g. Squid) or a SOCKS proxy.
      Overrides:
        `setProxyOptions` in class `ClientOptionsBase`
      Parameters:
        `proxyOptions` - proxy options object
      Returns:
        a reference to this, so the API can be used fluently

    - #### setNonProxyHosts

          public NetClientOptions setNonProxyHosts​(List<String> nonProxyHosts)

      Description copied from class: `ClientOptionsBase`
      Set a list of remote hosts that are not proxied when the client is configured to use a proxy. This list serves the same purpose than the JVM `nonProxyHosts` configuration.

      Entries can use the * wildcard character for pattern matching, e.g *.example.com matches www.example.com.

      Overrides:
        `setNonProxyHosts` in class `ClientOptionsBase`
      Parameters:
        `nonProxyHosts` - the list of non proxies hosts
      Returns:
        a reference to this, so the API can be used fluently

    - #### addNonProxyHost

          public NetClientOptions addNonProxyHost​(String nonProxyHost)

      Description copied from class: `ClientOptionsBase`
      Add a `host` to the `ClientOptionsBase.getNonProxyHosts()` list.
      Overrides:
        `addNonProxyHost` in class `ClientOptionsBase`
      Parameters:
        `nonProxyHost` - the added host
      Returns:
        a reference to this, so the API can be used fluently

    - #### setLocalAddress

          public NetClientOptions setLocalAddress​(String localAddress)

      Description copied from class: `ClientOptionsBase`
      Set the local interface to bind for network connections. When the local address is null, it will pick any local address, the default local address is null.
      Overrides:
        `setLocalAddress` in class `ClientOptionsBase`
      Parameters:
        `localAddress` - the local address
      Returns:
        a reference to this, so the API can be used fluently

    - #### setEnabledSecureTransportProtocols

          public NetClientOptions setEnabledSecureTransportProtocols​(Set<String> enabledSecureTransportProtocols)

      Description copied from class: `TCPSSLOptions`
      Sets the list of enabled SSL/TLS protocols.
      Overrides:
        `setEnabledSecureTransportProtocols` in class `TCPSSLOptions`
      Parameters:
        `enabledSecureTransportProtocols` - the SSL/TLS protocols to enable
      Returns:
        a reference to this, so the API can be used fluently

    - #### setSslHandshakeTimeout

          public NetClientOptions setSslHandshakeTimeout​(long sslHandshakeTimeout)

      Description copied from class: `TCPSSLOptions`
      Set the SSL handshake timeout, default time unit is seconds.
      Overrides:
        `setSslHandshakeTimeout` in class `TCPSSLOptions`
      Parameters:
        `sslHandshakeTimeout` - the SSL handshake timeout to set, in milliseconds
      Returns:
        a reference to this, so the API can be used fluently

    - #### setSslHandshakeTimeoutUnit

          public NetClientOptions setSslHandshakeTimeoutUnit​(TimeUnit sslHandshakeTimeoutUnit)

      Description copied from class: `TCPSSLOptions`
      Set the SSL handshake timeout unit. If not specified, default is seconds.
      Overrides:
        `setSslHandshakeTimeoutUnit` in class `TCPSSLOptions`
      Parameters:
        `sslHandshakeTimeoutUnit` - specify time unit.
      Returns:
        a reference to this, so the API can be used fluently

    - #### toJson

          public JsonObject toJson()

      Description copied from class: `ClientOptionsBase`
      Convert to JSON
      Overrides:
        `toJson` in class `ClientOptionsBase`
      Returns:
        the JSON

    - #### isRegisterWriteHandler

          public boolean isRegisterWriteHandler()

      Returns:
        `true` if a write-handler should be registered on the `EventBus`, otherwise `false`

    - #### setRegisterWriteHandler

          public NetClientOptions setRegisterWriteHandler​(boolean registerWriteHandler)

      Whether a write-handler should be registered on the `EventBus`.

      Defaults to `false`.

      Parameters:
        `registerWriteHandler` - true to register a write-handler
      Returns:
        a reference to this, so the API can be used fluently
      See Also:
        `NetSocket.writeHandlerID()`