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_METHODSstatic 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_HTTP2_UPGRADE_MAX_CONTENT_LENGTH, 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 CachingWebClientOptionsaddCachedMethod(HttpMethod method)Add an HTTP method that is cacheable.CachingWebClientOptionsaddCachedStatusCode(Integer code)Add a status code that is cacheable.CachingWebClientOptionsaddCrlPath(String crlPath)Add a CRL pathCachingWebClientOptionsaddCrlValue(Buffer crlValue)Add a CRL valueCachingWebClientOptionsaddEnabledCipherSuite(String suite)Add an enabled cipher suite, appended to the ordered suites.CachingWebClientOptionsaddEnabledSecureTransportProtocol(String protocol)Add an enabled SSL/TLS protocols, appended to the ordered protocols.Set<HttpMethod>getCachedMethods()Set<Integer>getCachedStatusCodes()booleanisVaryCachingEnabled()CachingWebClientOptionsremoveCachedMethod(HttpMethod method)Remove an HTTP method that is cacheable.CachingWebClientOptionsremoveCachedStatusCode(Integer code)Remove a status code that is cacheable.CachingWebClientOptionsremoveEnabledSecureTransportProtocol(String protocol)Removes an enabled SSL/TLS protocol from the ordered protocols.CachingWebClientOptionssetAlpnVersions(List<HttpVersion> alpnVersions)Set the list of protocol versions to provide to the server during the Application-Layer Protocol Negotiation.CachingWebClientOptionssetCachedMethods(Set<HttpMethod> methods)Configure the HTTP methods that can be cached.CachingWebClientOptionssetCachedStatusCodes(Set<Integer> codes)Configure the status codes that can be cached.CachingWebClientOptionssetConnectTimeout(int connectTimeout)Set the connect timeoutCachingWebClientOptionssetDecoderInitialBufferSize(int decoderInitialBufferSize)set toinitialBufferSizeHttpDecoderthe initial buffer of the HttpDecoder.CachingWebClientOptionssetDecompressionSupported(boolean tryUseCompression)Whether the client should send requests with anaccepting-encodingheader set to a compression algorithm.CachingWebClientOptionssetDefaultHost(String defaultHost)Set the default host name to be used by this client in requests if none is provided when making the request.CachingWebClientOptionssetDefaultPort(int defaultPort)Set the default port to be used by this client in requests if none is provided when making the request.CachingWebClientOptionssetEnabledSecureTransportProtocols(Set<String> enabledSecureTransportProtocols)Sets the list of enabled SSL/TLS protocols.CachingWebClientOptionssetEnableVaryCaching(boolean enabled)Configure the client cache behavior forVaryresponses.CachingWebClientOptionssetFollowRedirects(boolean followRedirects)Configure the default behavior of the client to follow HTTP30xredirections.CachingWebClientOptionssetForceSni(boolean forceSni)By default, the server name is only sent for Fully Qualified Domain Name (FQDN), setting this property totrueforces the server name to be always sent.CachingWebClientOptionssetHttp2ClearTextUpgrade(boolean value)Set totruewhen an h2c connection is established using an HTTP/1.1 upgrade request, andfalsewhen an h2c connection is established directly (with prior knowledge).CachingWebClientOptionssetHttp2ConnectionWindowSize(int http2ConnectionWindowSize)Set the default HTTP/2 connection window size.CachingWebClientOptionssetHttp2KeepAliveTimeout(int keepAliveTimeout)Set the keep alive timeout for HTTP/2 connections, in seconds.CachingWebClientOptionssetHttp2MultiplexingLimit(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.CachingWebClientOptionssetIdleTimeout(int idleTimeout)Set the idle timeout, default time unit is seconds.CachingWebClientOptionssetIdleTimeoutUnit(TimeUnit idleTimeoutUnit)Set the idle timeout unit.CachingWebClientOptionssetInitialSettings(Http2Settings settings)Set the HTTP/2 connection settings immediately sent by to the server when the client connects.CachingWebClientOptionssetKeepAlive(boolean keepAlive)Set whether keep alive is enabled on the clientCachingWebClientOptionssetKeepAliveTimeout(int keepAliveTimeout)Set the keep alive timeout for HTTP/1.x, in seconds.CachingWebClientOptionssetKeyCertOptions(KeyCertOptions options)Set the key/cert options.CachingWebClientOptionssetLocalAddress(String localAddress)Set the local interface to bind for network connections.CachingWebClientOptionssetLogActivity(boolean logEnabled)Set to true to enabled network activity logging: Netty's pipeline is configured for logging on Netty's logger.CachingWebClientOptionssetMaxChunkSize(int maxChunkSize)Set the maximum HTTP chunk sizeCachingWebClientOptionssetMaxHeaderSize(int maxHeaderSize)Set the maximum length of all headers for HTTP/1.x .CachingWebClientOptionssetMaxInitialLineLength(int maxInitialLineLength)Set the maximum length of the initial line for HTTP/1.x (e.g.CachingWebClientOptionssetMaxRedirects(int maxRedirects)Set tomaxRedirectsthe maximum number of redirection a request can follow.CachingWebClientOptionssetMetricsName(String metricsName)Set the metrics name identifying the reported metrics, useful for grouping metrics with the same name.CachingWebClientOptionssetPipelining(boolean pipelining)Set whether pipe-lining is enabled on the clientCachingWebClientOptionssetPipeliningLimit(int limit)Set the limit of pending requests a pipe-lined HTTP/1 connection can send.CachingWebClientOptionssetProtocolVersion(HttpVersion protocolVersion)Set the protocol version.CachingWebClientOptionssetProxyOptions(ProxyOptions proxyOptions)Set proxy options for connections via CONNECT proxy (e.g.CachingWebClientOptionssetReceiveBufferSize(int receiveBufferSize)Set the TCP receive buffer sizeCachingWebClientOptionssetReuseAddress(boolean reuseAddress)Set the value of reuse addressCachingWebClientOptionssetReusePort(boolean reusePort)Set the value of reuse port.CachingWebClientOptionssetSendBufferSize(int sendBufferSize)Set the TCP send buffer sizeCachingWebClientOptionssetSoLinger(int soLinger)Set whether SO_linger keep alive is enabledCachingWebClientOptionssetSsl(boolean ssl)Set whether SSL/TLS is enabledCachingWebClientOptionssetSslEngineOptions(SSLEngineOptions sslEngineOptions)Set to use SSL engine implementation to use.CachingWebClientOptionssetSslHandshakeTimeout(long sslHandshakeTimeout)Set the SSL handshake timeout, default time unit is seconds.CachingWebClientOptionssetSslHandshakeTimeoutUnit(TimeUnit sslHandshakeTimeoutUnit)Set the SSL handshake timeout unit.CachingWebClientOptionssetTcpCork(boolean tcpCork)Enable theTCP_CORKoption - only with linux native transport.CachingWebClientOptionssetTcpFastOpen(boolean tcpFastOpen)Enable theTCP_FASTOPENoption - only with linux native transport.CachingWebClientOptionssetTcpKeepAlive(boolean tcpKeepAlive)Set whether TCP keep alive is enabledCachingWebClientOptionssetTcpNoDelay(boolean tcpNoDelay)Set whether TCP no delay is enabledCachingWebClientOptionssetTcpQuickAck(boolean tcpQuickAck)Enable theTCP_QUICKACKoption - only with linux native transport.CachingWebClientOptionssetTrafficClass(int trafficClass)Set the value of traffic classCachingWebClientOptionssetTrustAll(boolean trustAll)Set whether all server certificates should be trustedCachingWebClientOptionssetTrustOptions(TrustOptions options)Set the trust options.CachingWebClientOptionssetUseAlpn(boolean useAlpn)Set the ALPN usage.CachingWebClientOptionssetUserAgent(String userAgent)Sets the Web Client user agent header.CachingWebClientOptionssetUserAgentEnabled(boolean userAgentEnabled)Sets whether the Web Client should send a user agent header.CachingWebClientOptionssetVerifyHost(boolean verifyHost)Set whether hostname verification is enabledJsonObjecttoJson()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, getHttp2UpgradeMaxContentLength, getInitialSettings, getKeepAliveTimeout, getMaxChunkSize, getMaxHeaderSize, getMaxInitialLineLength, getMaxRedirects, getName, getPipeliningLimit, getProtocolVersion, getTracingPolicy, isDecompressionSupported, isForceSni, isHttp2ClearTextUpgrade, isHttp2ClearTextUpgradeWithPreflightRequest, isKeepAlive, isPipelining, isShared, isVerifyHost, removeEnabledCipherSuite, setActivityLogDataFormat, setHttp2ClearTextUpgradeWithPreflightRequest, setHttp2UpgradeMaxContentLength, 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:
toJsonin classWebClientOptions- Returns:
- the JSON
-
setEnableVaryCaching
public CachingWebClientOptions setEnableVaryCaching(boolean enabled)
Configure the client cache behavior forVaryresponses.- 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
Varyheader, false otherwise
-
setUserAgentEnabled
public CachingWebClientOptions setUserAgentEnabled(boolean userAgentEnabled)
Description copied from class:WebClientOptionsSets whether the Web Client should send a user agent header. Defaults to true.- Overrides:
setUserAgentEnabledin 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:WebClientOptionsSets the Web Client user agent header. Defaults to Vert.x-WebClient/<version>.- Overrides:
setUserAgentin 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:WebClientOptionsConfigure the default behavior of the client to follow HTTP30xredirections.- Overrides:
setFollowRedirectsin 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:HttpClientOptionsSet tomaxRedirectsthe maximum number of redirection a request can follow.- Overrides:
setMaxRedirectsin 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:NetworkOptionsSet the TCP send buffer size- Overrides:
setSendBufferSizein 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:NetworkOptionsSet the TCP receive buffer size- Overrides:
setReceiveBufferSizein 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:NetworkOptionsSet the value of reuse address- Overrides:
setReuseAddressin 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:NetworkOptionsSet the value of traffic class- Overrides:
setTrafficClassin 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:TCPSSLOptionsSet whether TCP no delay is enabled- Overrides:
setTcpNoDelayin 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:TCPSSLOptionsSet whether TCP keep alive is enabled- Overrides:
setTcpKeepAlivein 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:TCPSSLOptionsSet whether SO_linger keep alive is enabled- Overrides:
setSoLingerin 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:TCPSSLOptionsSet 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:
setIdleTimeoutin 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:TCPSSLOptionsSet the idle timeout unit. If not specified, default is seconds.- Overrides:
setIdleTimeoutUnitin 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:TCPSSLOptionsSet whether SSL/TLS is enabled- Overrides:
setSslin 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:TCPSSLOptionsSet the key/cert options.- Overrides:
setKeyCertOptionsin 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:TCPSSLOptionsSet the trust options.- Overrides:
setTrustOptionsin 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:TCPSSLOptionsAdd an enabled cipher suite, appended to the ordered suites.- Overrides:
addEnabledCipherSuitein 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:TCPSSLOptionsAdd a CRL path- Overrides:
addCrlPathin 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:TCPSSLOptionsAdd a CRL value- Overrides:
addCrlValuein 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:ClientOptionsBaseSet the connect timeout- Overrides:
setConnectTimeoutin 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:ClientOptionsBaseSet whether all server certificates should be trusted- Overrides:
setTrustAllin 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:HttpClientOptionsSet 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-1means to use the value sent by the server's initial settings.-1is the default value.- Overrides:
setHttp2MultiplexingLimitin 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:HttpClientOptionsSet 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-1reuses the initial window size setting.- Overrides:
setHttp2ConnectionWindowSizein 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:HttpClientOptionsSet whether keep alive is enabled on the client- Overrides:
setKeepAlivein classWebClientOptions- Parameters:
keepAlive-trueif enabled- Returns:
- a reference to this, so the API can be used fluently
-
setPipelining
public CachingWebClientOptions setPipelining(boolean pipelining)
Description copied from class:HttpClientOptionsSet whether pipe-lining is enabled on the client- Overrides:
setPipeliningin classWebClientOptions- Parameters:
pipelining-trueif enabled- Returns:
- a reference to this, so the API can be used fluently
-
setPipeliningLimit
public CachingWebClientOptions setPipeliningLimit(int limit)
Description copied from class:HttpClientOptionsSet the limit of pending requests a pipe-lined HTTP/1 connection can send.- Overrides:
setPipeliningLimitin 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:HttpClientOptionsSet whether hostname verification is enabled- Overrides:
setVerifyHostin classWebClientOptions- Parameters:
verifyHost-trueif enabled- Returns:
- a reference to this, so the API can be used fluently
-
setDecompressionSupported
public CachingWebClientOptions setDecompressionSupported(boolean tryUseCompression)
Description copied from class:HttpClientOptionsWhether the client should send requests with anaccepting-encodingheader set to a compression algorithm.- Overrides:
setDecompressionSupportedin classWebClientOptions- Parameters:
tryUseCompression-trueif the client should send a request with anaccepting-encodingheader set to a compression algorithm,falseotherwise- Returns:
- a reference to this, so the API can be used fluently
-
setDefaultHost
public CachingWebClientOptions setDefaultHost(String defaultHost)
Description copied from class:HttpClientOptionsSet the default host name to be used by this client in requests if none is provided when making the request.- Overrides:
setDefaultHostin classWebClientOptions- Returns:
- a reference to this, so the API can be used fluently
-
setDefaultPort
public CachingWebClientOptions setDefaultPort(int defaultPort)
Description copied from class:HttpClientOptionsSet the default port to be used by this client in requests if none is provided when making the request.- Overrides:
setDefaultPortin classWebClientOptions- Returns:
- a reference to this, so the API can be used fluently
-
setMaxChunkSize
public CachingWebClientOptions setMaxChunkSize(int maxChunkSize)
Description copied from class:HttpClientOptionsSet the maximum HTTP chunk size- Overrides:
setMaxChunkSizein 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:HttpClientOptionsSet the protocol version.- Overrides:
setProtocolVersionin 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:HttpClientOptionsSet the maximum length of all headers for HTTP/1.x .- Overrides:
setMaxHeaderSizein 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:TCPSSLOptionsSet the ALPN usage.- Overrides:
setUseAlpnin classWebClientOptions- Parameters:
useAlpn- true when Application-Layer Protocol Negotiation should be used
-
setSslEngineOptions
public CachingWebClientOptions setSslEngineOptions(SSLEngineOptions sslEngineOptions)
Description copied from class:TCPSSLOptionsSet to use SSL engine implementation to use.- Overrides:
setSslEngineOptionsin 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:HttpClientOptionsSet totruewhen an h2c connection is established using an HTTP/1.1 upgrade request, andfalsewhen an h2c connection is established directly (with prior knowledge).- Overrides:
setHttp2ClearTextUpgradein 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:HttpClientOptionsSet 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:
setAlpnVersionsin 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:ClientOptionsBaseSet the metrics name identifying the reported metrics, useful for grouping metrics with the same name.- Overrides:
setMetricsNamein 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:ClientOptionsBaseSet proxy options for connections via CONNECT proxy (e.g. Squid) or a SOCKS proxy.- Overrides:
setProxyOptionsin 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:ClientOptionsBaseSet 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:
setLocalAddressin 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:NetworkOptionsSet to true to enabled network activity logging: Netty's pipeline is configured for logging on Netty's logger.- Overrides:
setLogActivityin 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:TCPSSLOptionsAdd an enabled SSL/TLS protocols, appended to the ordered protocols.- Overrides:
addEnabledSecureTransportProtocolin 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:TCPSSLOptionsRemoves an enabled SSL/TLS protocol from the ordered protocols.- Overrides:
removeEnabledSecureTransportProtocolin 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:TCPSSLOptionsSets the list of enabled SSL/TLS protocols.- Overrides:
setEnabledSecureTransportProtocolsin 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:NetworkOptionsSet the value of reuse port. This is only supported by native transports.- Overrides:
setReusePortin 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:TCPSSLOptionsEnable theTCP_FASTOPENoption - only with linux native transport.- Overrides:
setTcpFastOpenin classWebClientOptions- Parameters:
tcpFastOpen- the fast open value
-
setTcpCork
public CachingWebClientOptions setTcpCork(boolean tcpCork)
Description copied from class:TCPSSLOptionsEnable theTCP_CORKoption - only with linux native transport.- Overrides:
setTcpCorkin classWebClientOptions- Parameters:
tcpCork- the cork value
-
setTcpQuickAck
public CachingWebClientOptions setTcpQuickAck(boolean tcpQuickAck)
Description copied from class:TCPSSLOptionsEnable theTCP_QUICKACKoption - only with linux native transport.- Overrides:
setTcpQuickAckin classWebClientOptions- Parameters:
tcpQuickAck- the quick ack value
-
setHttp2KeepAliveTimeout
public CachingWebClientOptions setHttp2KeepAliveTimeout(int keepAliveTimeout)
Description copied from class:HttpClientOptionsSet 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 of0means there is no timeout.- Overrides:
setHttp2KeepAliveTimeoutin 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:HttpClientOptionsBy default, the server name is only sent for Fully Qualified Domain Name (FQDN), setting this property totrueforces the server name to be always sent.- Overrides:
setForceSniin classWebClientOptions- Parameters:
forceSni-truewhen 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:HttpClientOptionsset toinitialBufferSizeHttpDecoderthe initial buffer of the HttpDecoder.- Overrides:
setDecoderInitialBufferSizein 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:HttpClientOptionsSet 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 of0means there is no timeout.- Overrides:
setKeepAliveTimeoutin 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:HttpClientOptionsSet the maximum length of the initial line for HTTP/1.x (e.g."HTTP/1.1 200 OK")- Overrides:
setMaxInitialLineLengthin 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:HttpClientOptionsSet the HTTP/2 connection settings immediately sent by to the server when the client connects.- Overrides:
setInitialSettingsin 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:TCPSSLOptionsSet the SSL handshake timeout, default time unit is seconds.- Overrides:
setSslHandshakeTimeoutin 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:TCPSSLOptionsSet the SSL handshake timeout unit. If not specified, default is seconds.- Overrides:
setSslHandshakeTimeoutUnitin classWebClientOptions- Parameters:
sslHandshakeTimeoutUnit- specify time unit.- Returns:
- a reference to this, so the API can be used fluently
-
-