Class HttpSenderOptions


  • public class HttpSenderOptions
    extends HttpClientOptions
    Options for reporting to a Zipkin server configured by default to http://localhost:9411/api/v2/spans.
    • Constructor Detail

      • HttpSenderOptions

        public HttpSenderOptions()
      • HttpSenderOptions

        public HttpSenderOptions​(JsonObject json)
    • Method Detail

      • getSenderEndpoint

        public String getSenderEndpoint()
        Returns:
      • setSendBufferSize

        public HttpSenderOptions setSendBufferSize​(int sendBufferSize)
        Description copied from class: NetworkOptions
        Set the TCP send buffer size
        Overrides:
        setSendBufferSize in class HttpClientOptions
        Parameters:
        sendBufferSize - the buffers size, in bytes
        Returns:
        a reference to this, so the API can be used fluently
      • setReceiveBufferSize

        public HttpSenderOptions setReceiveBufferSize​(int receiveBufferSize)
        Description copied from class: NetworkOptions
        Set the TCP receive buffer size
        Overrides:
        setReceiveBufferSize in class HttpClientOptions
        Parameters:
        receiveBufferSize - the buffers size, in bytes
        Returns:
        a reference to this, so the API can be used fluently
      • setReuseAddress

        public HttpSenderOptions setReuseAddress​(boolean reuseAddress)
        Description copied from class: NetworkOptions
        Set the value of reuse address
        Overrides:
        setReuseAddress in class HttpClientOptions
        Parameters:
        reuseAddress - the value of reuse address
        Returns:
        a reference to this, so the API can be used fluently
      • setReusePort

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

        public HttpSenderOptions setTrafficClass​(int trafficClass)
        Description copied from class: NetworkOptions
        Set the value of traffic class
        Overrides:
        setTrafficClass in class HttpClientOptions
        Parameters:
        trafficClass - the value of traffic class
        Returns:
        a reference to this, so the API can be used fluently
      • setTcpNoDelay

        public HttpSenderOptions setTcpNoDelay​(boolean tcpNoDelay)
        Description copied from class: TCPSSLOptions
        Set whether TCP no delay is enabled
        Overrides:
        setTcpNoDelay in class HttpClientOptions
        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 HttpSenderOptions setTcpKeepAlive​(boolean tcpKeepAlive)
        Description copied from class: TCPSSLOptions
        Set whether TCP keep alive is enabled
        Overrides:
        setTcpKeepAlive in class HttpClientOptions
        Parameters:
        tcpKeepAlive - true if TCP keep alive is enabled
        Returns:
        a reference to this, so the API can be used fluently
      • setSoLinger

        public HttpSenderOptions setSoLinger​(int soLinger)
        Description copied from class: TCPSSLOptions
        Set whether SO_linger keep alive is enabled
        Overrides:
        setSoLinger in class HttpClientOptions
        Parameters:
        soLinger - true if SO_linger is enabled
        Returns:
        a reference to this, so the API can be used fluently
      • setIdleTimeout

        public HttpSenderOptions 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 HttpClientOptions
        Parameters:
        idleTimeout - the timeout
        Returns:
        a reference to this, so the API can be used fluently
      • setIdleTimeoutUnit

        public HttpSenderOptions setIdleTimeoutUnit​(TimeUnit idleTimeoutUnit)
        Description copied from class: TCPSSLOptions
        Set the idle timeout unit. If not specified, default is seconds.
        Overrides:
        setIdleTimeoutUnit in class HttpClientOptions
        Parameters:
        idleTimeoutUnit - specify time unit.
        Returns:
        a reference to this, so the API can be used fluently
      • setSsl

        public HttpSenderOptions setSsl​(boolean ssl)
        Description copied from class: TCPSSLOptions
        Set whether SSL/TLS is enabled
        Overrides:
        setSsl in class HttpClientOptions
        Parameters:
        ssl - true if enabled
        Returns:
        a reference to this, so the API can be used fluently
      • setTrustAll

        public HttpSenderOptions setTrustAll​(boolean trustAll)
        Description copied from class: ClientOptionsBase
        Set whether all server certificates should be trusted
        Overrides:
        setTrustAll in class HttpClientOptions
        Parameters:
        trustAll - true if all should be trusted
        Returns:
        a reference to this, so the API can be used fluently
      • setEnabledSecureTransportProtocols

        public HttpSenderOptions setEnabledSecureTransportProtocols​(Set<String> enabledSecureTransportProtocols)
        Description copied from class: TCPSSLOptions
        Sets the list of enabled SSL/TLS protocols.
        Overrides:
        setEnabledSecureTransportProtocols in class HttpClientOptions
        Parameters:
        enabledSecureTransportProtocols - the SSL/TLS protocols to enable
        Returns:
        a reference to this, so the API can be used fluently
      • setHttp2MultiplexingLimit

        public HttpSenderOptions setHttp2MultiplexingLimit​(int limit)
        Description copied from class: HttpClientOptions
        Set a client limit of the number concurrent streams for each HTTP/2 connection, this limits the number of streams the client can create for a connection. The effective number of streams for a connection is the min of this value and the server's initial settings.

        Setting the value to -1 means to use the value sent by the server's initial settings. -1 is the default value.

        Overrides:
        setHttp2MultiplexingLimit in class HttpClientOptions
        Parameters:
        limit - the maximum concurrent for an HTTP/2 connection
        Returns:
        a reference to this, so the API can be used fluently
      • setHttp2ConnectionWindowSize

        public HttpSenderOptions setHttp2ConnectionWindowSize​(int http2ConnectionWindowSize)
        Description copied from class: HttpClientOptions
        Set the default HTTP/2 connection window size. It overrides the initial window size set by Http2Settings.getInitialWindowSize(), so the connection window size is greater than for its streams, in order the data throughput.

        A value of -1 reuses the initial window size setting.

        Overrides:
        setHttp2ConnectionWindowSize in class HttpClientOptions
        Parameters:
        http2ConnectionWindowSize - the window size applied to the connection
        Returns:
        a reference to this, so the API can be used fluently
      • setHttp2KeepAliveTimeout

        public HttpSenderOptions setHttp2KeepAliveTimeout​(int keepAliveTimeout)
        Description copied from class: HttpClientOptions
        Set the keep alive timeout for HTTP/2 connections, in seconds.

        This value determines how long a connection remains unused in the pool before being evicted and closed.

        A timeout of 0 means there is no timeout.

        Overrides:
        setHttp2KeepAliveTimeout in class HttpClientOptions
        Parameters:
        keepAliveTimeout - the timeout, in seconds
        Returns:
        a reference to this, so the API can be used fluently
      • setKeepAlive

        public HttpSenderOptions setKeepAlive​(boolean keepAlive)
        Description copied from class: HttpClientOptions
        Set whether keep alive is enabled on the client
        Overrides:
        setKeepAlive in class HttpClientOptions
        Parameters:
        keepAlive - true if enabled
        Returns:
        a reference to this, so the API can be used fluently
      • setKeepAliveTimeout

        public HttpSenderOptions setKeepAliveTimeout​(int keepAliveTimeout)
        Description copied from class: HttpClientOptions
        Set the keep alive timeout for HTTP/1.x, in seconds.

        This value determines how long a connection remains unused in the pool before being evicted and closed.

        A timeout of 0 means there is no timeout.

        Overrides:
        setKeepAliveTimeout in class HttpClientOptions
        Parameters:
        keepAliveTimeout - the timeout, in seconds
        Returns:
        a reference to this, so the API can be used fluently
      • setPipelining

        public HttpSenderOptions setPipelining​(boolean pipelining)
        Description copied from class: HttpClientOptions
        Set whether pipe-lining is enabled on the client
        Overrides:
        setPipelining in class HttpClientOptions
        Parameters:
        pipelining - true if enabled
        Returns:
        a reference to this, so the API can be used fluently
      • setPipeliningLimit

        public HttpSenderOptions setPipeliningLimit​(int limit)
        Description copied from class: HttpClientOptions
        Set the limit of pending requests a pipe-lined HTTP/1 connection can send.
        Overrides:
        setPipeliningLimit in class HttpClientOptions
        Parameters:
        limit - the limit of pending requests
        Returns:
        a reference to this, so the API can be used fluently
      • setVerifyHost

        public HttpSenderOptions setVerifyHost​(boolean verifyHost)
        Description copied from class: HttpClientOptions
        Set whether hostname verification is enabled
        Overrides:
        setVerifyHost in class HttpClientOptions
        Parameters:
        verifyHost - true if enabled
        Returns:
        a reference to this, so the API can be used fluently
      • setDecompressionSupported

        public HttpSenderOptions setDecompressionSupported​(boolean decompressionSupported)
        Description copied from class: HttpClientOptions
        Whether the client should send requests with an accepting-encoding header set to a compression algorithm.
        Overrides:
        setDecompressionSupported in class HttpClientOptions
        Parameters:
        decompressionSupported - true if the client should send a request with an accepting-encoding header set to a compression algorithm, false otherwise
        Returns:
        a reference to this, so the API can be used fluently
      • setDefaultHost

        public HttpSenderOptions setDefaultHost​(String defaultHost)
        Description copied from class: HttpClientOptions
        Set the default host name to be used by this client in requests if none is provided when making the request.
        Overrides:
        setDefaultHost in class HttpClientOptions
        Returns:
        a reference to this, so the API can be used fluently
      • setDefaultPort

        public HttpSenderOptions setDefaultPort​(int defaultPort)
        Description copied from class: HttpClientOptions
        Set the default port to be used by this client in requests if none is provided when making the request.
        Overrides:
        setDefaultPort in class HttpClientOptions
        Returns:
        a reference to this, so the API can be used fluently
      • setMaxChunkSize

        public HttpSenderOptions setMaxChunkSize​(int maxChunkSize)
        Description copied from class: HttpClientOptions
        Set the maximum HTTP chunk size
        Overrides:
        setMaxChunkSize in class HttpClientOptions
        Parameters:
        maxChunkSize - the maximum chunk size
        Returns:
        a reference to this, so the API can be used fluently
      • setMaxInitialLineLength

        public HttpSenderOptions setMaxInitialLineLength​(int maxInitialLineLength)
        Description copied from class: HttpClientOptions
        Set the maximum length of the initial line for HTTP/1.x (e.g. "HTTP/1.1 200 OK")
        Overrides:
        setMaxInitialLineLength in class HttpClientOptions
        Parameters:
        maxInitialLineLength - the new maximum initial length
        Returns:
        a reference to this, so the API can be used fluently
      • setMaxHeaderSize

        public HttpSenderOptions setMaxHeaderSize​(int maxHeaderSize)
        Description copied from class: HttpClientOptions
        Set the maximum length of all headers for HTTP/1.x .
        Overrides:
        setMaxHeaderSize in class HttpClientOptions
        Parameters:
        maxHeaderSize - the new maximum length
        Returns:
        a reference to this, so the API can be used fluently
      • setHttp2ClearTextUpgrade

        public HttpSenderOptions setHttp2ClearTextUpgrade​(boolean value)
        Description copied from class: HttpClientOptions
        Set to true when an h2c connection is established using an HTTP/1.1 upgrade request, and false when an h2c connection is established directly (with prior knowledge).
        Overrides:
        setHttp2ClearTextUpgrade in class HttpClientOptions
        Parameters:
        value - the upgrade value
        Returns:
        a reference to this, so the API can be used fluently
      • setMaxRedirects

        public HttpSenderOptions setMaxRedirects​(int maxRedirects)
        Description copied from class: HttpClientOptions
        Set to maxRedirects the maximum number of redirection a request can follow.
        Overrides:
        setMaxRedirects in class HttpClientOptions
        Parameters:
        maxRedirects - the maximum number of redirection
        Returns:
        a reference to this, so the API can be used fluently
      • setForceSni

        public HttpSenderOptions setForceSni​(boolean forceSni)
        Description copied from class: HttpClientOptions
        By default, the server name is only sent for Fully Qualified Domain Name (FQDN), setting this property to true forces the server name to be always sent.
        Overrides:
        setForceSni in class HttpClientOptions
        Parameters:
        forceSni - true when the client should always use SNI on TLS/SSL connections
        Returns:
        a reference to this, so the API can be used fluently
      • setMetricsName

        public HttpSenderOptions 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 HttpClientOptions
        Parameters:
        metricsName - the metrics name
        Returns:
        a reference to this, so the API can be used fluently
      • setProxyOptions

        public HttpSenderOptions 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 HttpClientOptions
        Parameters:
        proxyOptions - proxy options object
        Returns:
        a reference to this, so the API can be used fluently
      • setLocalAddress

        public HttpSenderOptions 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 HttpClientOptions
        Parameters:
        localAddress - the local address
        Returns:
        a reference to this, so the API can be used fluently
      • setLogActivity

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

        public HttpSenderOptions setDecoderInitialBufferSize​(int decoderInitialBufferSize)
        Description copied from class: HttpClientOptions
        set to initialBufferSizeHttpDecoder the initial buffer of the HttpDecoder.
        Overrides:
        setDecoderInitialBufferSize in class HttpClientOptions
        Parameters:
        decoderInitialBufferSize - the initial buffer size
        Returns:
        a reference to this, so the API can be used fluently