io.vertx.core.eventbus

## Class EventBusOptions

- java.lang.Object
- - io.vertx.core.net.NetworkOptions
  - - io.vertx.core.net.TCPSSLOptions
    - - io.vertx.core.eventbus.EventBusOptions

-     public class EventBusOptions
      extends TCPSSLOptions

  Options to configure the event bus.
  Author:
    Clement Escoffier

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `DEFAULT_ACCEPT_BACKLOG` The default accept backlog = 1024
    `static ClientAuth` | `DEFAULT_CLIENT_AUTH` Default value of whether client auth is required (SSL/TLS) = No
    `static String` | `DEFAULT_CLUSTER_HOST` The default cluster host = null which means use the same as the cluster manager, if possible.
    `static long` | `DEFAULT_CLUSTER_PING_INTERVAL` The default value of cluster ping interval = 20000 ms.
    `static long` | `DEFAULT_CLUSTER_PING_REPLY_INTERVAL` The default value of cluster ping reply interval = 20000 ms.
    `static int` | `DEFAULT_CLUSTER_PORT` The default cluster port = 0 which means assign a random port.
    `static String` | `DEFAULT_CLUSTER_PUBLIC_HOST` The default cluster public host = null which means use the same as the cluster host.
    `static int` | `DEFAULT_CLUSTER_PUBLIC_PORT` The default cluster public port = -1 which means use the same as the cluster port.
    `static int` | `DEFAULT_CONNECT_TIMEOUT` The default value of connect timeout = 60000 ms
    `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_TRUST_ALL` The default value of whether all servers (SSL/TLS) should be trusted = true

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

      `DEFAULT_ENABLED_SECURE_TRANSPORT_PROTOCOLS, DEFAULT_IDLE_TIMEOUT, DEFAULT_IDLE_TIMEOUT_TIME_UNIT, DEFAULT_READ_IDLE_TIMEOUT, DEFAULT_SO_LINGER, DEFAULT_SSL, DEFAULT_SSL_ENGINE, DEFAULT_SSL_HANDSHAKE_TIMEOUT, DEFAULT_SSL_HANDSHAKE_TIMEOUT_TIME_UNIT, DEFAULT_TCP_CORK, DEFAULT_TCP_FAST_OPEN, DEFAULT_TCP_KEEP_ALIVE, DEFAULT_TCP_NO_DELAY, DEFAULT_TCP_QUICKACK, DEFAULT_USE_ALPN, 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 and Description
    `EventBusOptions()` Creates a new instance of `EventBusOptions` using the default configuration.
    `EventBusOptions(EventBusOptions other)` Copy constructor to create an instance of `EventBusOptions` using the values of the given object.
    `EventBusOptions(JsonObject json)` Creates a new instance of `EventBusOptions` from the JSON object.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `EventBusOptions` | `addCrlPath(String crlPath)` Add a CRL path
    `EventBusOptions` | `addCrlValue(Buffer crlValue)` Add a CRL value
    `EventBusOptions` | `addEnabledCipherSuite(String suite)` Add an enabled cipher suite, appended to the ordered suites.
    `EventBusOptions` | `addEnabledSecureTransportProtocol(String protocol)` Add an enabled SSL/TLS protocols, appended to the ordered protocols.
    `int` | `getAcceptBacklog()`
    `ClientAuth` | `getClientAuth()`
    `JsonObject` | `getClusterNodeMetadata()` User-supplied information about this node when Vert.x is clustered.
    `long` | `getClusterPingInterval()` Get the value of cluster ping reply interval, in ms.
    `long` | `getClusterPingReplyInterval()` Get the value of cluster ping reply interval, in ms.
    `String` | `getClusterPublicHost()` Get the public facing host to be used when clustering.
    `int` | `getClusterPublicPort()` Gets the public facing port to be used when clustering.
    `int` | `getConnectTimeout()`
    `String` | `getHost()`
    `int` | `getPort()`
    `int` | `getReconnectAttempts()`
    `long` | `getReconnectInterval()`
    `boolean` | `isTrustAll()`
    `EventBusOptions` | `removeEnabledSecureTransportProtocol(String protocol)` Removes an enabled SSL/TLS protocol from the ordered protocols.
    `EventBusOptions` | `setAcceptBacklog(int acceptBacklog)` Set the accept back log.
    `EventBusOptions` | `setClientAuth(ClientAuth clientAuth)` Set whether client auth is required
    `EventBusOptions` | `setClusterNodeMetadata(JsonObject clusterNodeMetadata)` Set information about this node when Vert.x is clustered.
    `EventBusOptions` | `setClusterPingInterval(long clusterPingInterval)` Set the value of cluster ping interval, in ms.
    `EventBusOptions` | `setClusterPingReplyInterval(long clusterPingReplyInterval)` Set the value of cluster ping reply interval, in ms.
    `EventBusOptions` | `setClusterPublicHost(String clusterPublicHost)` Set the public facing hostname to be used for clustering.
    `EventBusOptions` | `setClusterPublicPort(int clusterPublicPort)` See `setClusterPublicHost(String)` for an explanation.
    `EventBusOptions` | `setConnectTimeout(int connectTimeout)` Sets the connect timeout
    `EventBusOptions` | `setEnabledSecureTransportProtocols(Set<String> enabledSecureTransportProtocols)` Sets the list of enabled SSL/TLS protocols.
    `EventBusOptions` | `setHost(String host)` Sets the host.
    `EventBusOptions` | `setIdleTimeout(int idleTimeout)` Set the idle timeout, default time unit is seconds.
    `EventBusOptions` | `setIdleTimeoutUnit(TimeUnit idleTimeoutUnit)` Set the idle timeout unit.
    `EventBusOptions` | `setJdkSslEngineOptions(JdkSSLEngineOptions sslEngineOptions)`
    `EventBusOptions` | `setKeyCertOptions(KeyCertOptions options)` Set the key/cert options.
    `EventBusOptions` | `setKeyStoreOptions(JksOptions options)` Set the key/cert options in jks format, aka Java keystore.
    `EventBusOptions` | `setLogActivity(boolean logEnabled)` Set to true to enabled network activity logging: Netty's pipeline is configured for logging on Netty's logger.
    `EventBusOptions` | `setOpenSslEngineOptions(OpenSSLEngineOptions sslEngineOptions)`
    `EventBusOptions` | `setPemKeyCertOptions(PemKeyCertOptions options)` Set the key/cert store options in pem format.
    `EventBusOptions` | `setPemTrustOptions(PemTrustOptions options)` Set the trust options in pem format
    `EventBusOptions` | `setPfxKeyCertOptions(PfxOptions options)` Set the key/cert options in pfx format.
    `EventBusOptions` | `setPfxTrustOptions(PfxOptions options)` Set the trust options in pfx format
    `EventBusOptions` | `setPort(int port)` Sets the port.
    `EventBusOptions` | `setReadIdleTimeout(int idleTimeout)` Set the read idle timeout, default time unit is seconds.
    `EventBusOptions` | `setReceiveBufferSize(int receiveBufferSize)` Set the TCP receive buffer size
    `EventBusOptions` | `setReconnectAttempts(int attempts)` Sets the value of reconnect attempts.
    `EventBusOptions` | `setReconnectInterval(long interval)` Set the reconnect interval.
    `EventBusOptions` | `setReuseAddress(boolean reuseAddress)` Set the value of reuse address
    `EventBusOptions` | `setReusePort(boolean reusePort)` Set the value of reuse port.
    `EventBusOptions` | `setSendBufferSize(int sendBufferSize)` Set the TCP send buffer size
    `EventBusOptions` | `setSoLinger(int soLinger)` Set whether SO_linger keep alive is enabled
    `EventBusOptions` | `setSsl(boolean ssl)` Set whether SSL/TLS is enabled
    `EventBusOptions` | `setSslEngineOptions(SSLEngineOptions sslEngineOptions)` Set to use SSL engine implementation to use.
    `EventBusOptions` | `setSslHandshakeTimeout(long sslHandshakeTimeout)` Set the SSL handshake timeout, default time unit is seconds.
    `EventBusOptions` | `setSslHandshakeTimeoutUnit(TimeUnit sslHandshakeTimeoutUnit)` Set the SSL handshake timeout unit.
    `EventBusOptions` | `setTcpCork(boolean tcpCork)` Enable the `TCP_CORK` option - only with linux native transport.
    `EventBusOptions` | `setTcpFastOpen(boolean tcpFastOpen)` Enable the `TCP_FASTOPEN` option - only with linux native transport.
    `EventBusOptions` | `setTcpKeepAlive(boolean tcpKeepAlive)` Set whether TCP keep alive is enabled
    `EventBusOptions` | `setTcpNoDelay(boolean tcpNoDelay)` Set whether TCP no delay is enabled
    `EventBusOptions` | `setTcpQuickAck(boolean tcpQuickAck)` Enable the `TCP_QUICKACK` option - only with linux native transport.
    `EventBusOptions` | `setTrafficClass(int trafficClass)` Set the value of traffic class
    `EventBusOptions` | `setTrustAll(boolean trustAll)` Set whether all server certificates should be trusted.
    `EventBusOptions` | `setTrustOptions(TrustOptions options)` Set the trust options.
    `EventBusOptions` | `setTrustStoreOptions(JksOptions options)` Set the trust options in jks format, aka Java truststore
    `EventBusOptions` | `setUseAlpn(boolean useAlpn)` Set the ALPN usage.
    `EventBusOptions` | `setWriteIdleTimeout(int idleTimeout)` Set the write idle timeout, default time unit is seconds.
    `JsonObject` | `toJson()` Builds a JSON object representing the current `EventBusOptions`.

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

      `getCrlPaths, getCrlValues, getEnabledCipherSuites, getEnabledSecureTransportProtocols, getIdleTimeout, getIdleTimeoutUnit, getJdkSslEngineOptions, getKeyCertOptions, getKeyStoreOptions, getOpenSslEngineOptions, getPemKeyCertOptions, getPemTrustOptions, getPfxKeyCertOptions, getPfxTrustOptions, getReadIdleTimeout, getSoLinger, getSslEngineOptions, getSslHandshakeTimeout, getSslHandshakeTimeoutUnit, getTrustOptions, getTrustStoreOptions, getWriteIdleTimeout, isSsl, isTcpCork, isTcpFastOpen, isTcpKeepAlive, isTcpNoDelay, isTcpQuickAck, isUseAlpn, setActivityLogDataFormat`

    - ### 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_CLUSTER_HOST

          public static final String DEFAULT_CLUSTER_HOST

      The default cluster host = null which means use the same as the cluster manager, if possible.

    - #### DEFAULT_CLUSTER_PORT

          public static final int DEFAULT_CLUSTER_PORT

      The default cluster port = 0 which means assign a random port.
      See Also:
        Constant Field Values

    - #### DEFAULT_CLUSTER_PUBLIC_HOST

          public static final String DEFAULT_CLUSTER_PUBLIC_HOST

      The default cluster public host = null which means use the same as the cluster host.

    - #### DEFAULT_CLUSTER_PUBLIC_PORT

          public static final int DEFAULT_CLUSTER_PUBLIC_PORT

      The default cluster public port = -1 which means use the same as the cluster port.
      See Also:
        Constant Field Values

    - #### DEFAULT_CLUSTER_PING_INTERVAL

          public static final long DEFAULT_CLUSTER_PING_INTERVAL

      The default value of cluster ping interval = 20000 ms.

    - #### DEFAULT_CLUSTER_PING_REPLY_INTERVAL

          public static final long DEFAULT_CLUSTER_PING_REPLY_INTERVAL

      The default value of cluster ping reply interval = 20000 ms.

    - #### DEFAULT_ACCEPT_BACKLOG

          public static final int DEFAULT_ACCEPT_BACKLOG

      The default accept backlog = 1024
      See Also:
        Constant Field Values

    - #### DEFAULT_CLIENT_AUTH

          public static final ClientAuth DEFAULT_CLIENT_AUTH

      Default value of whether client auth is required (SSL/TLS) = No

    - #### 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_CONNECT_TIMEOUT

          public static final int DEFAULT_CONNECT_TIMEOUT

      The default value of connect timeout = 60000 ms
      See Also:
        Constant Field Values

    - #### DEFAULT_TRUST_ALL

          public static final boolean DEFAULT_TRUST_ALL

      The default value of whether all servers (SSL/TLS) should be trusted = true
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### EventBusOptions

          public EventBusOptions()

      Creates a new instance of `EventBusOptions` using the default configuration.

    - #### EventBusOptions

          public EventBusOptions(EventBusOptions other)

      Copy constructor to create an instance of `EventBusOptions` using the values of the given object.
      Parameters:
        `other` - the other `EventBusOptions`

    - #### EventBusOptions

          public EventBusOptions(JsonObject json)

      Creates a new instance of `EventBusOptions` from the JSON object. This JSOn object has (generally) be generated using `toJson()`.
      Parameters:
        `json` - the json object

  - ### Method Detail

    - #### toJson

          public JsonObject toJson()

      Builds a JSON object representing the current `EventBusOptions`.
      Overrides:
        `toJson` in class `TCPSSLOptions`
      Returns:
        the JSON representation

    - #### getClientAuth

          public ClientAuth getClientAuth()

      Returns:
        the configure client authentication requirement
      See Also:
        `NetServerOptions.getClientAuth()`

    - #### setClientAuth

          public EventBusOptions setClientAuth(ClientAuth clientAuth)

      Set whether client auth is required
      Parameters:
        `clientAuth` - One of "NONE, REQUEST, REQUIRED". If it's set to "REQUIRED" then server will require the SSL cert to be presented otherwise it won't accept the request. If it's set to "REQUEST" then it won't mandate the certificate to be presented, basically make it optional.
      Returns:
        a reference to this, so the API can be used fluently
      See Also:
        `NetServerOptions.setClientAuth(ClientAuth)`

    - #### getAcceptBacklog

          public int getAcceptBacklog()

      Returns:
        the value of accept backlog.
      See Also:
        `NetServerOptions.getAcceptBacklog()`

    - #### setAcceptBacklog

          public EventBusOptions setAcceptBacklog(int acceptBacklog)

      Set the accept back log.
      Parameters:
        `acceptBacklog` - accept backlog
      Returns:
        a reference to this, so the API can be used fluently
      See Also:
        `NetServerOptions.setAcceptBacklog(int)`

    - #### getHost

          public String getHost()

      Returns:
        the host or `null` if the clustered eventbus should try to pick one automatically

    - #### setHost

          public EventBusOptions setHost(String host)

      Sets the host. Defaults to `null`.

      When the clustered eventbus starts, it tries to bind to the provided `host`. If `host` is `null`, then it tries to bind to the same host as the underlying cluster manager. As a last resort, an address will be picked among the available network interfaces.

      Parameters:
        `host` - the host
      Returns:
        a reference to this, so the API can be used fluently
      See Also:
        `NetServerOptions.setHost(String)`

    - #### getPort

          public int getPort()

      Returns:
        the port, which can be configured from the `setPort(int)`, or using the `--cluster-port` command line option.
      See Also:
        `NetServerOptions.getPort()`

    - #### setPort

          public EventBusOptions setPort(int port)

      Sets the port.
      Parameters:
        `port` - the port
      Returns:
        a reference to this, so the API can be used fluently
      See Also:
        `NetServerOptions.setPort(int)`

    - #### getReconnectAttempts

          public int getReconnectAttempts()

      Returns:
        the value of reconnect attempts
      See Also:
        `NetClientOptions.getReconnectAttempts()`

    - #### setReconnectAttempts

          public EventBusOptions setReconnectAttempts(int attempts)

      Sets 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
      See Also:
        `NetClientOptions.setReconnectAttempts(int)`

    - #### getReconnectInterval

          public long getReconnectInterval()

      Returns:
        the value of reconnect interval
      See Also:
        `NetClientOptions.getReconnectInterval()`

    - #### setReconnectInterval

          public EventBusOptions 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
      See Also:
        `NetClientOptions.setReconnectInterval(long)`

    - #### addCrlPath

          public EventBusOptions addCrlPath(String crlPath)
                                     throws NullPointerException

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

    - #### addCrlValue

          public EventBusOptions addCrlValue(Buffer crlValue)
                                      throws NullPointerException

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

    - #### addEnabledCipherSuite

          public EventBusOptions addEnabledCipherSuite(String suite)

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

    - #### setIdleTimeout

          public EventBusOptions 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 `TCPSSLOptions`
      Parameters:
        `idleTimeout` - the timeout
      Returns:
        a reference to this, so the API can be used fluently

    - #### setReadIdleTimeout

          public EventBusOptions 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 `TCPSSLOptions`
      Parameters:
        `idleTimeout` - the read timeout
      Returns:
        a reference to this, so the API can be used fluently

    - #### setWriteIdleTimeout

          public EventBusOptions 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 `TCPSSLOptions`
      Parameters:
        `idleTimeout` - the write timeout
      Returns:
        a reference to this, so the API can be used fluently

    - #### setIdleTimeoutUnit

          public EventBusOptions setIdleTimeoutUnit(TimeUnit idleTimeoutUnit)

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

    - #### setKeyCertOptions

          public EventBusOptions setKeyCertOptions(KeyCertOptions options)

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

    - #### setKeyStoreOptions

          public EventBusOptions setKeyStoreOptions(JksOptions options)

      Description copied from class: `TCPSSLOptions`
      Set the key/cert options in jks format, aka Java keystore.
      Overrides:
        `setKeyStoreOptions` in class `TCPSSLOptions`
      Parameters:
        `options` - the key store in jks format
      Returns:
        a reference to this, so the API can be used fluently

    - #### setPemKeyCertOptions

          public EventBusOptions setPemKeyCertOptions(PemKeyCertOptions options)

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

    - #### setPemTrustOptions

          public EventBusOptions setPemTrustOptions(PemTrustOptions options)

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

    - #### setPfxKeyCertOptions

          public EventBusOptions setPfxKeyCertOptions(PfxOptions options)

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

    - #### setPfxTrustOptions

          public EventBusOptions setPfxTrustOptions(PfxOptions options)

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

    - #### setSoLinger

          public EventBusOptions setSoLinger(int soLinger)

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

    - #### setSsl

          public EventBusOptions setSsl(boolean ssl)

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

    - #### setTcpKeepAlive

          public EventBusOptions setTcpKeepAlive(boolean tcpKeepAlive)

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

    - #### setTcpNoDelay

          public EventBusOptions setTcpNoDelay(boolean tcpNoDelay)

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

    - #### setTrustOptions

          public EventBusOptions setTrustOptions(TrustOptions options)

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

    - #### setTrustStoreOptions

          public EventBusOptions setTrustStoreOptions(JksOptions options)

      Description copied from class: `TCPSSLOptions`
      Set the trust options in jks format, aka Java truststore
      Overrides:
        `setTrustStoreOptions` in class `TCPSSLOptions`
      Parameters:
        `options` - the trust options in jks format
      Returns:
        a reference to this, so the API can be used fluently

    - #### setReceiveBufferSize

          public EventBusOptions setReceiveBufferSize(int receiveBufferSize)

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

    - #### setReuseAddress

          public EventBusOptions setReuseAddress(boolean reuseAddress)

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

    - #### setReusePort

          public EventBusOptions 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 `TCPSSLOptions`
      Parameters:
        `reusePort` - the value of reuse port
      Returns:
        a reference to this, so the API can be used fluently

    - #### setSendBufferSize

          public EventBusOptions setSendBufferSize(int sendBufferSize)

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

    - #### setTrafficClass

          public EventBusOptions setTrafficClass(int trafficClass)

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

    - #### setUseAlpn

          public EventBusOptions setUseAlpn(boolean useAlpn)

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

    - #### setSslEngineOptions

          public EventBusOptions setSslEngineOptions(SSLEngineOptions sslEngineOptions)

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

    - #### setJdkSslEngineOptions

          public EventBusOptions setJdkSslEngineOptions(JdkSSLEngineOptions sslEngineOptions)

      Overrides:
        `setJdkSslEngineOptions` in class `TCPSSLOptions`

    - #### setOpenSslEngineOptions

          public EventBusOptions setOpenSslEngineOptions(OpenSSLEngineOptions sslEngineOptions)

      Overrides:
        `setOpenSslEngineOptions` in class `TCPSSLOptions`

    - #### setEnabledSecureTransportProtocols

          public EventBusOptions 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

    - #### addEnabledSecureTransportProtocol

          public EventBusOptions addEnabledSecureTransportProtocol(String protocol)

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

    - #### removeEnabledSecureTransportProtocol

          public EventBusOptions removeEnabledSecureTransportProtocol(String protocol)

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

    - #### setTcpFastOpen

          public EventBusOptions setTcpFastOpen(boolean tcpFastOpen)

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

    - #### setTcpCork

          public EventBusOptions setTcpCork(boolean tcpCork)

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

    - #### setTcpQuickAck

          public EventBusOptions setTcpQuickAck(boolean tcpQuickAck)

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

    - #### setLogActivity

          public EventBusOptions 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 `TCPSSLOptions`
      Parameters:
        `logEnabled` - true for logging the network activity
      Returns:
        a reference to this, so the API can be used fluently

    - #### setSslHandshakeTimeout

          public EventBusOptions 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 EventBusOptions 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

    - #### setTrustAll

          public EventBusOptions setTrustAll(boolean trustAll)

      Set whether all server certificates should be trusted.
      Parameters:
        `trustAll` - true if all should be trusted
      Returns:
        a reference to this, so the API can be used fluently
      See Also:
        `NetClientOptions.setTrustAll(boolean)`

    - #### isTrustAll

          public boolean isTrustAll()

      Returns:
        true if all server certificates should be trusted
      See Also:
        `ClientOptionsBase.isTrustAll()`

    - #### getConnectTimeout

          public int getConnectTimeout()

      Returns:
        the value of connect timeout
      See Also:
        `ClientOptionsBase.getConnectTimeout()`

    - #### setConnectTimeout

          public EventBusOptions setConnectTimeout(int connectTimeout)

      Sets the connect timeout
      Parameters:
        `connectTimeout` - connect timeout, in ms
      Returns:
        a reference to this, so the API can be used fluently
      See Also:
        `NetClientOptions.setConnectTimeout(int)`

    - #### getClusterPingInterval

          public long getClusterPingInterval()

      Get the value of cluster ping reply interval, in ms. After sending a ping, if a pong is not received in this time, the node will be considered dead.
      Returns:
        the value of cluster ping reply interval

    - #### setClusterPingInterval

          public EventBusOptions setClusterPingInterval(long clusterPingInterval)

      Set the value of cluster ping interval, in ms.
      Parameters:
        `clusterPingInterval` - The value of cluster ping interval, in ms.
      Returns:
        a reference to this, so the API can be used fluently

    - #### getClusterPingReplyInterval

          public long getClusterPingReplyInterval()

      Get the value of cluster ping reply interval, in ms. After sending a ping, if a pong is not received in this time, the node will be considered dead.
      Returns:
        the value of cluster ping reply interval

    - #### setClusterPingReplyInterval

          public EventBusOptions setClusterPingReplyInterval(long clusterPingReplyInterval)

      Set the value of cluster ping reply interval, in ms.
      Parameters:
        `clusterPingReplyInterval` - The value of cluster ping reply interval, in ms.
      Returns:
        a reference to this, so the API can be used fluently

    - #### getClusterPublicHost

          public String getClusterPublicHost()

      Get the public facing host to be used when clustering.
      Returns:
        the public facing port

    - #### setClusterPublicHost

          public EventBusOptions setClusterPublicHost(String clusterPublicHost)

      Set the public facing hostname to be used for clustering. Sometimes, e.g. when running on certain clouds, the local address the server listens on for clustering is not the same address that other nodes connect to it at, as the OS / cloud infrastructure does some kind of proxying. If this is the case you can specify a public hostname which is different from the hostname the server listens at.

      The default value is null which means use the same as the cluster hostname.

      Parameters:
        `clusterPublicHost` - the public host name to use
      Returns:
        a reference to this, so the API can be used fluently

    - #### getClusterPublicPort

          public int getClusterPublicPort()

      Gets the public facing port to be used when clustering.
      Returns:
        the public facing port

    - #### setClusterPublicPort

          public EventBusOptions setClusterPublicPort(int clusterPublicPort)

      See `setClusterPublicHost(String)` for an explanation.
      Parameters:
        `clusterPublicPort` - the public port to use
      Returns:
        a reference to this, so the API can be used fluently

    - #### getClusterNodeMetadata

          public JsonObject getClusterNodeMetadata()

      User-supplied information about this node when Vert.x is clustered.

      The data may be used by the `NodeSelector` to select a node for a given message. For example, it could be used to implement a partioning strategy.

      The default `NodeSelector` does not use the node metadata.

      Returns:
        user-supplied information about this node when Vert.x is clustered

    - #### setClusterNodeMetadata

          public EventBusOptions setClusterNodeMetadata(JsonObject clusterNodeMetadata)

      Set information about this node when Vert.x is clustered.

      The data may be used by the `NodeSelector` to select a node for a given message. For example, it could be used to implement a partioning strategy.

      The default `NodeSelector` does not use the node metadata.

      Parameters:
        `clusterNodeMetadata` - user-supplied information about this node when Vert.x is clustered
      Returns:
        a reference to this, so the API can be used fluently

Copyright © 2022 Eclipse. All rights reserved.