Package io.vertx.ext.web.client
Class CachingWebClientOptions
- java.lang.Object
-
- io.vertx.core.net.NetworkOptions
-
- io.vertx.core.net.TCPSSLOptions
-
- io.vertx.core.net.ClientOptionsBase
-
- io.vertx.core.http.HttpClientOptions
-
- io.vertx.ext.web.client.WebClientOptions
-
- io.vertx.ext.web.client.CachingWebClientOptions
-
public class CachingWebClientOptions extends WebClientOptions
- Author:
- Craig Day
-
-
Field Summary
Fields Modifier and Type Field Description static Set<HttpMethod>
DEFAULT_CACHED_METHODS
static Set<Integer>
DEFAULT_CACHED_STATUS_CODES
-
Fields inherited from class io.vertx.ext.web.client.WebClientOptions
DEFAULT_EXPAND_OPTIONS, DEFAULT_FOLLOW_REDIRECTS, DEFAULT_USER_AGENT, DEFAULT_USER_AGENT_ENABLED
-
Fields inherited from class io.vertx.core.http.HttpClientOptions
DEFAULT_ALPN_VERSIONS, DEFAULT_DECODER_INITIAL_BUFFER_SIZE, DEFAULT_DECOMPRESSION_SUPPORTED, DEFAULT_DEFAULT_HOST, DEFAULT_DEFAULT_PORT, DEFAULT_FORCE_SNI, DEFAULT_HTTP2_CLEAR_TEXT_UPGRADE, DEFAULT_HTTP2_CLEAR_TEXT_UPGRADE_WITH_PREFLIGHT_REQUEST, DEFAULT_HTTP2_CONNECTION_WINDOW_SIZE, DEFAULT_HTTP2_KEEP_ALIVE_TIMEOUT, DEFAULT_HTTP2_MULTIPLEXING_LIMIT, DEFAULT_KEEP_ALIVE, DEFAULT_KEEP_ALIVE_TIMEOUT, DEFAULT_MAX_CHUNK_SIZE, DEFAULT_MAX_HEADER_SIZE, DEFAULT_MAX_INITIAL_LINE_LENGTH, DEFAULT_MAX_REDIRECTS, DEFAULT_NAME, DEFAULT_PIPELINING, DEFAULT_PIPELINING_LIMIT, DEFAULT_PROTOCOL_VERSION, DEFAULT_SHARED, DEFAULT_TRACING_POLICY, DEFAULT_VERIFY_HOST
-
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 CachingWebClientOptions()
CachingWebClientOptions(boolean enableVaryCaching)
CachingWebClientOptions(JsonObject json)
CachingWebClientOptions(WebClientOptions other)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CachingWebClientOptions
addCachedMethod(HttpMethod method)
Add an HTTP method that is cacheable.CachingWebClientOptions
addCachedStatusCode(Integer code)
Add a status code that is cacheable.CachingWebClientOptions
addCrlPath(String crlPath)
Add a CRL pathCachingWebClientOptions
addCrlValue(Buffer crlValue)
Add a CRL valueCachingWebClientOptions
addEnabledCipherSuite(String suite)
Add an enabled cipher suite, appended to the ordered suites.CachingWebClientOptions
addEnabledSecureTransportProtocol(String protocol)
Add an enabled SSL/TLS protocols, appended to the ordered protocols.Set<HttpMethod>
getCachedMethods()
Set<Integer>
getCachedStatusCodes()
boolean
isVaryCachingEnabled()
CachingWebClientOptions
removeCachedMethod(HttpMethod method)
Remove an HTTP method that is cacheable.CachingWebClientOptions
removeCachedStatusCode(Integer code)
Remove a status code that is cacheable.CachingWebClientOptions
removeEnabledSecureTransportProtocol(String protocol)
Removes an enabled SSL/TLS protocol from the ordered protocols.CachingWebClientOptions
setAlpnVersions(List<HttpVersion> alpnVersions)
Set the list of protocol versions to provide to the server during the Application-Layer Protocol Negotiation.CachingWebClientOptions
setCachedMethods(Set<HttpMethod> methods)
Configure the HTTP methods that can be cached.CachingWebClientOptions
setCachedStatusCodes(Set<Integer> codes)
Configure the status codes that can be cached.CachingWebClientOptions
setConnectTimeout(int connectTimeout)
Set the connect timeoutCachingWebClientOptions
setDecoderInitialBufferSize(int decoderInitialBufferSize)
set toinitialBufferSizeHttpDecoder
the initial buffer of the HttpDecoder.CachingWebClientOptions
setDecompressionSupported(boolean tryUseCompression)
Whether the client should send requests with anaccepting-encoding
header set to a compression algorithm.CachingWebClientOptions
setDefaultHost(String defaultHost)
Set the default host name to be used by this client in requests if none is provided when making the request.CachingWebClientOptions
setDefaultPort(int defaultPort)
Set the default port to be used by this client in requests if none is provided when making the request.CachingWebClientOptions
setEnabledSecureTransportProtocols(Set<String> enabledSecureTransportProtocols)
Sets the list of enabled SSL/TLS protocols.CachingWebClientOptions
setEnableVaryCaching(boolean enabled)
Configure the client cache behavior forVary
responses.CachingWebClientOptions
setFollowRedirects(boolean followRedirects)
Configure the default behavior of the client to follow HTTP30x
redirections.CachingWebClientOptions
setForceSni(boolean forceSni)
By default, the server name is only sent for Fully Qualified Domain Name (FQDN), setting this property totrue
forces the server name to be always sent.CachingWebClientOptions
setHttp2ClearTextUpgrade(boolean value)
Set totrue
when an h2c connection is established using an HTTP/1.1 upgrade request, andfalse
when an h2c connection is established directly (with prior knowledge).CachingWebClientOptions
setHttp2ConnectionWindowSize(int http2ConnectionWindowSize)
Set the default HTTP/2 connection window size.CachingWebClientOptions
setHttp2KeepAliveTimeout(int keepAliveTimeout)
Set the keep alive timeout for HTTP/2 connections, in seconds.CachingWebClientOptions
setHttp2MultiplexingLimit(int limit)
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.CachingWebClientOptions
setIdleTimeout(int idleTimeout)
Set the idle timeout, default time unit is seconds.CachingWebClientOptions
setIdleTimeoutUnit(TimeUnit idleTimeoutUnit)
Set the idle timeout unit.CachingWebClientOptions
setInitialSettings(Http2Settings settings)
Set the HTTP/2 connection settings immediately sent by to the server when the client connects.CachingWebClientOptions
setKeepAlive(boolean keepAlive)
Set whether keep alive is enabled on the clientCachingWebClientOptions
setKeepAliveTimeout(int keepAliveTimeout)
Set the keep alive timeout for HTTP/1.x, in seconds.CachingWebClientOptions
setKeyCertOptions(KeyCertOptions options)
Set the key/cert options.CachingWebClientOptions
setLocalAddress(String localAddress)
Set the local interface to bind for network connections.CachingWebClientOptions
setLogActivity(boolean logEnabled)
Set to true to enabled network activity logging: Netty's pipeline is configured for logging on Netty's logger.CachingWebClientOptions
setMaxChunkSize(int maxChunkSize)
Set the maximum HTTP chunk sizeCachingWebClientOptions
setMaxHeaderSize(int maxHeaderSize)
Set the maximum length of all headers for HTTP/1.x .CachingWebClientOptions
setMaxInitialLineLength(int maxInitialLineLength)
Set the maximum length of the initial line for HTTP/1.x (e.g.CachingWebClientOptions
setMaxRedirects(int maxRedirects)
Set tomaxRedirects
the maximum number of redirection a request can follow.CachingWebClientOptions
setMetricsName(String metricsName)
Set the metrics name identifying the reported metrics, useful for grouping metrics with the same name.CachingWebClientOptions
setPipelining(boolean pipelining)
Set whether pipe-lining is enabled on the clientCachingWebClientOptions
setPipeliningLimit(int limit)
Set the limit of pending requests a pipe-lined HTTP/1 connection can send.CachingWebClientOptions
setProtocolVersion(HttpVersion protocolVersion)
Set the protocol version.CachingWebClientOptions
setProxyOptions(ProxyOptions proxyOptions)
Set proxy options for connections via CONNECT proxy (e.g.CachingWebClientOptions
setReceiveBufferSize(int receiveBufferSize)
Set the TCP receive buffer sizeCachingWebClientOptions
setReuseAddress(boolean reuseAddress)
Set the value of reuse addressCachingWebClientOptions
setReusePort(boolean reusePort)
Set the value of reuse port.CachingWebClientOptions
setSendBufferSize(int sendBufferSize)
Set the TCP send buffer sizeCachingWebClientOptions
setSoLinger(int soLinger)
Set whether SO_linger keep alive is enabledCachingWebClientOptions
setSsl(boolean ssl)
Set whether SSL/TLS is enabledCachingWebClientOptions
setSslEngineOptions(SSLEngineOptions sslEngineOptions)
Set to use SSL engine implementation to use.CachingWebClientOptions
setSslHandshakeTimeout(long sslHandshakeTimeout)
Set the SSL handshake timeout, default time unit is seconds.CachingWebClientOptions
setSslHandshakeTimeoutUnit(TimeUnit sslHandshakeTimeoutUnit)
Set the SSL handshake timeout unit.CachingWebClientOptions
setTcpCork(boolean tcpCork)
Enable theTCP_CORK
option - only with linux native transport.CachingWebClientOptions
setTcpFastOpen(boolean tcpFastOpen)
Enable theTCP_FASTOPEN
option - only with linux native transport.CachingWebClientOptions
setTcpKeepAlive(boolean tcpKeepAlive)
Set whether TCP keep alive is enabledCachingWebClientOptions
setTcpNoDelay(boolean tcpNoDelay)
Set whether TCP no delay is enabledCachingWebClientOptions
setTcpQuickAck(boolean tcpQuickAck)
Enable theTCP_QUICKACK
option - only with linux native transport.CachingWebClientOptions
setTrafficClass(int trafficClass)
Set the value of traffic classCachingWebClientOptions
setTrustAll(boolean trustAll)
Set whether all server certificates should be trustedCachingWebClientOptions
setTrustOptions(TrustOptions options)
Set the trust options.CachingWebClientOptions
setUseAlpn(boolean useAlpn)
Set the ALPN usage.CachingWebClientOptions
setUserAgent(String userAgent)
Sets the Web Client user agent header.CachingWebClientOptions
setUserAgentEnabled(boolean userAgentEnabled)
Sets whether the Web Client should send a user agent header.CachingWebClientOptions
setVerifyHost(boolean verifyHost)
Set whether hostname verification is enabledJsonObject
toJson()
Convert to JSON-
Methods inherited from class io.vertx.ext.web.client.WebClientOptions
addNonProxyHost, getTemplateExpandOptions, getUserAgent, isFollowRedirects, isUserAgentEnabled, loadUserAgent, setName, setNonProxyHosts, setReadIdleTimeout, setShared, setTemplateExpandOptions, setTracingPolicy, setWriteIdleTimeout
-
Methods inherited from class io.vertx.core.http.HttpClientOptions
getAlpnVersions, getDecoderInitialBufferSize, getDefaultHost, getDefaultPort, getHttp2ConnectionWindowSize, getHttp2KeepAliveTimeout, getHttp2MultiplexingLimit, getInitialSettings, getKeepAliveTimeout, getMaxChunkSize, getMaxHeaderSize, getMaxInitialLineLength, getMaxRedirects, getName, getPipeliningLimit, getProtocolVersion, getTracingPolicy, isDecompressionSupported, isForceSni, isHttp2ClearTextUpgrade, isHttp2ClearTextUpgradeWithPreflightRequest, isKeepAlive, isPipelining, isShared, isVerifyHost, removeEnabledCipherSuite, setActivityLogDataFormat, setHttp2ClearTextUpgradeWithPreflightRequest, setTcpUserTimeout
-
Methods inherited from class io.vertx.core.net.ClientOptionsBase
getConnectTimeout, getLocalAddress, getMetricsName, getNonProxyHosts, getOrCreateSSLOptions, getProxyOptions, getSslOptions, isTrustAll
-
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
-
-
-
-
Field Detail
-
DEFAULT_CACHED_METHODS
public static final Set<HttpMethod> DEFAULT_CACHED_METHODS
-
-
Constructor Detail
-
CachingWebClientOptions
public CachingWebClientOptions()
-
CachingWebClientOptions
public CachingWebClientOptions(boolean enableVaryCaching)
-
CachingWebClientOptions
public CachingWebClientOptions(WebClientOptions other)
-
CachingWebClientOptions
public CachingWebClientOptions(JsonObject json)
-
-
Method Detail
-
toJson
public JsonObject toJson()
Convert to JSON- Overrides:
toJson
in classWebClientOptions
- Returns:
- the JSON
-
setEnableVaryCaching
public CachingWebClientOptions setEnableVaryCaching(boolean enabled)
Configure the client cache behavior forVary
responses.- Parameters:
enabled
- true to enable caching varying responses- Returns:
- a reference to this, so the API can be used fluently
-
getCachedStatusCodes
public Set<Integer> getCachedStatusCodes()
- Returns:
- the set of status codes to consider cacheable.
-
setCachedStatusCodes
public CachingWebClientOptions setCachedStatusCodes(Set<Integer> codes)
Configure the status codes that can be cached.- Parameters:
codes
- the cacheable status code numbers- Returns:
- a reference to this, so the API can be used fluently
-
addCachedStatusCode
public CachingWebClientOptions addCachedStatusCode(Integer code)
Add a status code that is cacheable.- Parameters:
code
- the additional code number- Returns:
- a reference to this, so the API can be used fluently
-
removeCachedStatusCode
public CachingWebClientOptions removeCachedStatusCode(Integer code)
Remove a status code that is cacheable.- Parameters:
code
- the code number to remove- Returns:
- a reference to this, so the API can be used fluently
-
getCachedMethods
public Set<HttpMethod> getCachedMethods()
- Returns:
- the set of HTTP methods to consider cacheable.
-
setCachedMethods
public CachingWebClientOptions setCachedMethods(Set<HttpMethod> methods)
Configure the HTTP methods that can be cached.- Parameters:
methods
- the HTTP methods to cache- Returns:
- a reference to this, so the API can be used fluently
-
addCachedMethod
public CachingWebClientOptions addCachedMethod(HttpMethod method)
Add an HTTP method that is cacheable.- Parameters:
method
- the method to add- Returns:
- a reference to this, so the API can be used fluently
-
removeCachedMethod
public CachingWebClientOptions removeCachedMethod(HttpMethod method)
Remove an HTTP method that is cacheable.- Parameters:
method
- the method to remove- Returns:
- a reference to this, so the API can be used fluently
-
isVaryCachingEnabled
public boolean isVaryCachingEnabled()
- Returns:
- true if the client will cache responses with the
Vary
header, false otherwise
-
setUserAgentEnabled
public CachingWebClientOptions setUserAgentEnabled(boolean userAgentEnabled)
Description copied from class:WebClientOptions
Sets whether the Web Client should send a user agent header. Defaults to true.- Overrides:
setUserAgentEnabled
in classWebClientOptions
- Parameters:
userAgentEnabled
- true to send a user agent header, false otherwise- Returns:
- a reference to this, so the API can be used fluently
-
setUserAgent
public CachingWebClientOptions setUserAgent(String userAgent)
Description copied from class:WebClientOptions
Sets the Web Client user agent header. Defaults to Vert.x-WebClient/<version>.- Overrides:
setUserAgent
in classWebClientOptions
- Parameters:
userAgent
- user agent header value- Returns:
- a reference to this, so the API can be used fluently
-
setFollowRedirects
public CachingWebClientOptions setFollowRedirects(boolean followRedirects)
Description copied from class:WebClientOptions
Configure the default behavior of the client to follow HTTP30x
redirections.- Overrides:
setFollowRedirects
in classWebClientOptions
- Parameters:
followRedirects
- true when a redirect is followed- Returns:
- a reference to this, so the API can be used fluently
-
setMaxRedirects
public CachingWebClientOptions setMaxRedirects(int maxRedirects)
Description copied from class:HttpClientOptions
Set tomaxRedirects
the maximum number of redirection a request can follow.- Overrides:
setMaxRedirects
in classWebClientOptions
- Parameters:
maxRedirects
- the maximum number of redirection- Returns:
- a reference to this, so the API can be used fluently
-
setSendBufferSize
public CachingWebClientOptions setSendBufferSize(int sendBufferSize)
Description copied from class:NetworkOptions
Set the TCP send buffer size- Overrides:
setSendBufferSize
in classWebClientOptions
- Parameters:
sendBufferSize
- the buffers size, in bytes- Returns:
- a reference to this, so the API can be used fluently
-
setReceiveBufferSize
public CachingWebClientOptions setReceiveBufferSize(int receiveBufferSize)
Description copied from class:NetworkOptions
Set the TCP receive buffer size- Overrides:
setReceiveBufferSize
in classWebClientOptions
- Parameters:
receiveBufferSize
- the buffers size, in bytes- Returns:
- a reference to this, so the API can be used fluently
-
setReuseAddress
public CachingWebClientOptions setReuseAddress(boolean reuseAddress)
Description copied from class:NetworkOptions
Set the value of reuse address- Overrides:
setReuseAddress
in classWebClientOptions
- Parameters:
reuseAddress
- the value of reuse address- Returns:
- a reference to this, so the API can be used fluently
-
setTrafficClass
public CachingWebClientOptions setTrafficClass(int trafficClass)
Description copied from class:NetworkOptions
Set the value of traffic class- Overrides:
setTrafficClass
in classWebClientOptions
- Parameters:
trafficClass
- the value of traffic class- Returns:
- a reference to this, so the API can be used fluently
-
setTcpNoDelay
public CachingWebClientOptions setTcpNoDelay(boolean tcpNoDelay)
Description copied from class:TCPSSLOptions
Set whether TCP no delay is enabled- Overrides:
setTcpNoDelay
in classWebClientOptions
- 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 CachingWebClientOptions setTcpKeepAlive(boolean tcpKeepAlive)
Description copied from class:TCPSSLOptions
Set whether TCP keep alive is enabled- Overrides:
setTcpKeepAlive
in classWebClientOptions
- Parameters:
tcpKeepAlive
- true if TCP keep alive is enabled- Returns:
- a reference to this, so the API can be used fluently
-
setSoLinger
public CachingWebClientOptions setSoLinger(int soLinger)
Description copied from class:TCPSSLOptions
Set whether SO_linger keep alive is enabled- Overrides:
setSoLinger
in classWebClientOptions
- Parameters:
soLinger
- true if SO_linger is enabled- Returns:
- a reference to this, so the API can be used fluently
-
setIdleTimeout
public CachingWebClientOptions 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, useTCPSSLOptions.setIdleTimeoutUnit(TimeUnit)
- Overrides:
setIdleTimeout
in classWebClientOptions
- Parameters:
idleTimeout
- the timeout- Returns:
- a reference to this, so the API can be used fluently
-
setIdleTimeoutUnit
public CachingWebClientOptions setIdleTimeoutUnit(TimeUnit idleTimeoutUnit)
Description copied from class:TCPSSLOptions
Set the idle timeout unit. If not specified, default is seconds.- Overrides:
setIdleTimeoutUnit
in classWebClientOptions
- Parameters:
idleTimeoutUnit
- specify time unit.- Returns:
- a reference to this, so the API can be used fluently
-
setSsl
public CachingWebClientOptions setSsl(boolean ssl)
Description copied from class:TCPSSLOptions
Set whether SSL/TLS is enabled- Overrides:
setSsl
in classWebClientOptions
- Parameters:
ssl
- true if enabled- Returns:
- a reference to this, so the API can be used fluently
-
setKeyCertOptions
public CachingWebClientOptions setKeyCertOptions(KeyCertOptions options)
Description copied from class:TCPSSLOptions
Set the key/cert options.- Overrides:
setKeyCertOptions
in classWebClientOptions
- Parameters:
options
- the key store options- Returns:
- a reference to this, so the API can be used fluently
-
setTrustOptions
public CachingWebClientOptions setTrustOptions(TrustOptions options)
Description copied from class:TCPSSLOptions
Set the trust options.- Overrides:
setTrustOptions
in classWebClientOptions
- Parameters:
options
- the trust options- Returns:
- a reference to this, so the API can be used fluently
-
addEnabledCipherSuite
public CachingWebClientOptions addEnabledCipherSuite(String suite)
Description copied from class:TCPSSLOptions
Add an enabled cipher suite, appended to the ordered suites.- Overrides:
addEnabledCipherSuite
in classWebClientOptions
- Parameters:
suite
- the suite- Returns:
- a reference to this, so the API can be used fluently
- See Also:
TCPSSLOptions.getEnabledCipherSuites()
-
addCrlPath
public CachingWebClientOptions addCrlPath(String crlPath) throws NullPointerException
Description copied from class:TCPSSLOptions
Add a CRL path- Overrides:
addCrlPath
in classWebClientOptions
- Parameters:
crlPath
- the path- Returns:
- a reference to this, so the API can be used fluently
- Throws:
NullPointerException
-
addCrlValue
public CachingWebClientOptions addCrlValue(Buffer crlValue) throws NullPointerException
Description copied from class:TCPSSLOptions
Add a CRL value- Overrides:
addCrlValue
in classWebClientOptions
- Parameters:
crlValue
- the value- Returns:
- a reference to this, so the API can be used fluently
- Throws:
NullPointerException
-
setConnectTimeout
public CachingWebClientOptions setConnectTimeout(int connectTimeout)
Description copied from class:ClientOptionsBase
Set the connect timeout- Overrides:
setConnectTimeout
in classWebClientOptions
- Parameters:
connectTimeout
- connect timeout, in ms- Returns:
- a reference to this, so the API can be used fluently
-
setTrustAll
public CachingWebClientOptions setTrustAll(boolean trustAll)
Description copied from class:ClientOptionsBase
Set whether all server certificates should be trusted- Overrides:
setTrustAll
in classWebClientOptions
- Parameters:
trustAll
- true if all should be trusted- Returns:
- a reference to this, so the API can be used fluently
-
setHttp2MultiplexingLimit
public CachingWebClientOptions 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 classWebClientOptions
- Parameters:
limit
- the maximum concurrent for an HTTP/2 connection- Returns:
- a reference to this, so the API can be used fluently
-
setHttp2ConnectionWindowSize
public CachingWebClientOptions setHttp2ConnectionWindowSize(int http2ConnectionWindowSize)
Description copied from class:HttpClientOptions
Set the default HTTP/2 connection window size. It overrides the initial window size set byHttp2Settings.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 classWebClientOptions
- Parameters:
http2ConnectionWindowSize
- the window size applied to the connection- Returns:
- a reference to this, so the API can be used fluently
-
setKeepAlive
public CachingWebClientOptions setKeepAlive(boolean keepAlive)
Description copied from class:HttpClientOptions
Set whether keep alive is enabled on the client- Overrides:
setKeepAlive
in classWebClientOptions
- Parameters:
keepAlive
-true
if enabled- Returns:
- a reference to this, so the API can be used fluently
-
setPipelining
public CachingWebClientOptions setPipelining(boolean pipelining)
Description copied from class:HttpClientOptions
Set whether pipe-lining is enabled on the client- Overrides:
setPipelining
in classWebClientOptions
- Parameters:
pipelining
-true
if enabled- Returns:
- a reference to this, so the API can be used fluently
-
setPipeliningLimit
public CachingWebClientOptions 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 classWebClientOptions
- Parameters:
limit
- the limit of pending requests- Returns:
- a reference to this, so the API can be used fluently
-
setVerifyHost
public CachingWebClientOptions setVerifyHost(boolean verifyHost)
Description copied from class:HttpClientOptions
Set whether hostname verification is enabled- Overrides:
setVerifyHost
in classWebClientOptions
- Parameters:
verifyHost
-true
if enabled- Returns:
- a reference to this, so the API can be used fluently
-
setDecompressionSupported
public CachingWebClientOptions setDecompressionSupported(boolean tryUseCompression)
Description copied from class:HttpClientOptions
Whether the client should send requests with anaccepting-encoding
header set to a compression algorithm.- Overrides:
setDecompressionSupported
in classWebClientOptions
- Parameters:
tryUseCompression
-true
if the client should send a request with anaccepting-encoding
header set to a compression algorithm,false
otherwise- Returns:
- a reference to this, so the API can be used fluently
-
setDefaultHost
public CachingWebClientOptions 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 classWebClientOptions
- Returns:
- a reference to this, so the API can be used fluently
-
setDefaultPort
public CachingWebClientOptions 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 classWebClientOptions
- Returns:
- a reference to this, so the API can be used fluently
-
setMaxChunkSize
public CachingWebClientOptions setMaxChunkSize(int maxChunkSize)
Description copied from class:HttpClientOptions
Set the maximum HTTP chunk size- Overrides:
setMaxChunkSize
in classWebClientOptions
- Parameters:
maxChunkSize
- the maximum chunk size- Returns:
- a reference to this, so the API can be used fluently
-
setProtocolVersion
public CachingWebClientOptions setProtocolVersion(HttpVersion protocolVersion)
Description copied from class:HttpClientOptions
Set the protocol version.- Overrides:
setProtocolVersion
in classWebClientOptions
- Parameters:
protocolVersion
- the protocol version- Returns:
- a reference to this, so the API can be used fluently
-
setMaxHeaderSize
public CachingWebClientOptions setMaxHeaderSize(int maxHeaderSize)
Description copied from class:HttpClientOptions
Set the maximum length of all headers for HTTP/1.x .- Overrides:
setMaxHeaderSize
in classWebClientOptions
- Parameters:
maxHeaderSize
- the new maximum length- Returns:
- a reference to this, so the API can be used fluently
-
setUseAlpn
public CachingWebClientOptions setUseAlpn(boolean useAlpn)
Description copied from class:TCPSSLOptions
Set the ALPN usage.- Overrides:
setUseAlpn
in classWebClientOptions
- Parameters:
useAlpn
- true when Application-Layer Protocol Negotiation should be used
-
setSslEngineOptions
public CachingWebClientOptions setSslEngineOptions(SSLEngineOptions sslEngineOptions)
Description copied from class:TCPSSLOptions
Set to use SSL engine implementation to use.- Overrides:
setSslEngineOptions
in classWebClientOptions
- Parameters:
sslEngineOptions
- the ssl engine to use- Returns:
- a reference to this, so the API can be used fluently
-
setHttp2ClearTextUpgrade
public CachingWebClientOptions setHttp2ClearTextUpgrade(boolean value)
Description copied from class:HttpClientOptions
Set totrue
when an h2c connection is established using an HTTP/1.1 upgrade request, andfalse
when an h2c connection is established directly (with prior knowledge).- Overrides:
setHttp2ClearTextUpgrade
in classWebClientOptions
- Parameters:
value
- the upgrade value- Returns:
- a reference to this, so the API can be used fluently
-
setAlpnVersions
public CachingWebClientOptions setAlpnVersions(List<HttpVersion> alpnVersions)
Description copied from class:HttpClientOptions
Set the list of protocol versions to provide to the server during the Application-Layer Protocol Negotiation. When the list is empty, the client provides a best effort list according toHttpClientOptions.setProtocolVersion(io.vertx.core.http.HttpVersion)
:HttpVersion.HTTP_2
: [ "h2", "http/1.1" ]- otherwise: [
HttpClientOptions.getProtocolVersion()
]
- Overrides:
setAlpnVersions
in classWebClientOptions
- Parameters:
alpnVersions
- the versions- Returns:
- a reference to this, so the API can be used fluently
-
setMetricsName
public CachingWebClientOptions 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 classWebClientOptions
- Parameters:
metricsName
- the metrics name- Returns:
- a reference to this, so the API can be used fluently
-
setProxyOptions
public CachingWebClientOptions 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 classWebClientOptions
- Parameters:
proxyOptions
- proxy options object- Returns:
- a reference to this, so the API can be used fluently
-
setLocalAddress
public CachingWebClientOptions 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 classWebClientOptions
- Parameters:
localAddress
- the local address- Returns:
- a reference to this, so the API can be used fluently
-
setLogActivity
public CachingWebClientOptions 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 classWebClientOptions
- Parameters:
logEnabled
- true for logging the network activity- Returns:
- a reference to this, so the API can be used fluently
-
addEnabledSecureTransportProtocol
public CachingWebClientOptions addEnabledSecureTransportProtocol(String protocol)
Description copied from class:TCPSSLOptions
Add an enabled SSL/TLS protocols, appended to the ordered protocols.- Overrides:
addEnabledSecureTransportProtocol
in classWebClientOptions
- Parameters:
protocol
- the SSL/TLS protocol to enable- Returns:
- a reference to this, so the API can be used fluently
-
removeEnabledSecureTransportProtocol
public CachingWebClientOptions removeEnabledSecureTransportProtocol(String protocol)
Description copied from class:TCPSSLOptions
Removes an enabled SSL/TLS protocol from the ordered protocols.- Overrides:
removeEnabledSecureTransportProtocol
in classWebClientOptions
- Parameters:
protocol
- the SSL/TLS protocol to disable- Returns:
- a reference to this, so the API can be used fluently
-
setEnabledSecureTransportProtocols
public CachingWebClientOptions setEnabledSecureTransportProtocols(Set<String> enabledSecureTransportProtocols)
Description copied from class:TCPSSLOptions
Sets the list of enabled SSL/TLS protocols.- Overrides:
setEnabledSecureTransportProtocols
in classWebClientOptions
- Parameters:
enabledSecureTransportProtocols
- the SSL/TLS protocols to enable- Returns:
- a reference to this, so the API can be used fluently
-
setReusePort
public CachingWebClientOptions setReusePort(boolean reusePort)
Description copied from class:NetworkOptions
Set the value of reuse port. This is only supported by native transports.- Overrides:
setReusePort
in classWebClientOptions
- Parameters:
reusePort
- the value of reuse port- Returns:
- a reference to this, so the API can be used fluently
-
setTcpFastOpen
public CachingWebClientOptions setTcpFastOpen(boolean tcpFastOpen)
Description copied from class:TCPSSLOptions
Enable theTCP_FASTOPEN
option - only with linux native transport.- Overrides:
setTcpFastOpen
in classWebClientOptions
- Parameters:
tcpFastOpen
- the fast open value
-
setTcpCork
public CachingWebClientOptions setTcpCork(boolean tcpCork)
Description copied from class:TCPSSLOptions
Enable theTCP_CORK
option - only with linux native transport.- Overrides:
setTcpCork
in classWebClientOptions
- Parameters:
tcpCork
- the cork value
-
setTcpQuickAck
public CachingWebClientOptions setTcpQuickAck(boolean tcpQuickAck)
Description copied from class:TCPSSLOptions
Enable theTCP_QUICKACK
option - only with linux native transport.- Overrides:
setTcpQuickAck
in classWebClientOptions
- Parameters:
tcpQuickAck
- the quick ack value
-
setHttp2KeepAliveTimeout
public CachingWebClientOptions 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 of0
means there is no timeout.- Overrides:
setHttp2KeepAliveTimeout
in classWebClientOptions
- Parameters:
keepAliveTimeout
- the timeout, in seconds- Returns:
- a reference to this, so the API can be used fluently
-
setForceSni
public CachingWebClientOptions 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 totrue
forces the server name to be always sent.- Overrides:
setForceSni
in classWebClientOptions
- 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
-
setDecoderInitialBufferSize
public CachingWebClientOptions setDecoderInitialBufferSize(int decoderInitialBufferSize)
Description copied from class:HttpClientOptions
set toinitialBufferSizeHttpDecoder
the initial buffer of the HttpDecoder.- Overrides:
setDecoderInitialBufferSize
in classWebClientOptions
- Parameters:
decoderInitialBufferSize
- the initial buffer size- Returns:
- a reference to this, so the API can be used fluently
-
setKeepAliveTimeout
public CachingWebClientOptions 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 of0
means there is no timeout.- Overrides:
setKeepAliveTimeout
in classWebClientOptions
- Parameters:
keepAliveTimeout
- the timeout, in seconds- Returns:
- a reference to this, so the API can be used fluently
-
setMaxInitialLineLength
public CachingWebClientOptions 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 classWebClientOptions
- Parameters:
maxInitialLineLength
- the new maximum initial length- Returns:
- a reference to this, so the API can be used fluently
-
setInitialSettings
public CachingWebClientOptions setInitialSettings(Http2Settings settings)
Description copied from class:HttpClientOptions
Set the HTTP/2 connection settings immediately sent by to the server when the client connects.- Overrides:
setInitialSettings
in classWebClientOptions
- Parameters:
settings
- the settings value- Returns:
- a reference to this, so the API can be used fluently
-
setSslHandshakeTimeout
public CachingWebClientOptions setSslHandshakeTimeout(long sslHandshakeTimeout)
Description copied from class:TCPSSLOptions
Set the SSL handshake timeout, default time unit is seconds.- Overrides:
setSslHandshakeTimeout
in classWebClientOptions
- Parameters:
sslHandshakeTimeout
- the SSL handshake timeout to set, in milliseconds- Returns:
- a reference to this, so the API can be used fluently
-
setSslHandshakeTimeoutUnit
public CachingWebClientOptions setSslHandshakeTimeoutUnit(TimeUnit sslHandshakeTimeoutUnit)
Description copied from class:TCPSSLOptions
Set the SSL handshake timeout unit. If not specified, default is seconds.- Overrides:
setSslHandshakeTimeoutUnit
in classWebClientOptions
- Parameters:
sslHandshakeTimeoutUnit
- specify time unit.- Returns:
- a reference to this, so the API can be used fluently
-
-