Class BennyOkHttpClientAsync.Builder
-
- All Implemented Interfaces:
public final class BennyOkHttpClientAsync.BuilderA builder for BennyOkHttpClientAsync.
-
-
Method Summary
Modifier and Type Method Description final BennyOkHttpClientAsync.BuilderdispatcherExecutorService(ExecutorService dispatcherExecutorService)The executor service to use for running HTTP requests. final BennyOkHttpClientAsync.BuilderdispatcherExecutorService(Optional<ExecutorService> dispatcherExecutorService)Alias for calling Builder.dispatcherExecutorService with dispatcherExecutorService.orElse(null).final BennyOkHttpClientAsync.Builderproxy(Proxy proxy)final BennyOkHttpClientAsync.Builderproxy(Optional<Proxy> proxy)Alias for calling Builder.proxy with proxy.orElse(null).final BennyOkHttpClientAsync.BuildersslSocketFactory(SSLSocketFactory sslSocketFactory)The socket factory used to secure HTTPS connections. final BennyOkHttpClientAsync.BuildersslSocketFactory(Optional<SSLSocketFactory> sslSocketFactory)Alias for calling Builder.sslSocketFactory with sslSocketFactory.orElse(null).final BennyOkHttpClientAsync.BuildertrustManager(X509TrustManager trustManager)The trust manager used to secure HTTPS connections. final BennyOkHttpClientAsync.BuildertrustManager(Optional<X509TrustManager> trustManager)Alias for calling Builder.trustManager with trustManager.orElse(null).final BennyOkHttpClientAsync.BuilderhostnameVerifier(HostnameVerifier hostnameVerifier)The verifier used to confirm that response certificates apply to requested hostnames for HTTPS connections. final BennyOkHttpClientAsync.BuilderhostnameVerifier(Optional<HostnameVerifier> hostnameVerifier)Alias for calling Builder.hostnameVerifier with hostnameVerifier.orElse(null).final BennyOkHttpClientAsync.BuildercheckJacksonVersionCompatibility(Boolean checkJacksonVersionCompatibility)Whether to throw an exception if any of the Jackson versions detected at runtime are incompatible with the SDK's minimum supported Jackson version (2.13.4). final BennyOkHttpClientAsync.BuilderjsonMapper(JsonMapper jsonMapper)The Jackson JSON mapper to use for serializing and deserializing JSON. final BennyOkHttpClientAsync.Buildersleeper(Sleeper sleeper)The interface to use for delaying execution, like during retries. final BennyOkHttpClientAsync.Builderclock(Clock clock)The clock to use for operations that require timing, like retries. final BennyOkHttpClientAsync.BuilderbaseUrl(String baseUrl)The base URL to use for every request. final BennyOkHttpClientAsync.BuilderbaseUrl(Optional<String> baseUrl)Alias for calling Builder.baseUrl with baseUrl.orElse(null).final BennyOkHttpClientAsync.Buildersandbox()Sets baseUrl to https://{subdomain}.bennyapi.com.final BennyOkHttpClientAsync.BuilderresponseValidation(Boolean responseValidation)Whether to call validateon every response before returning it.final BennyOkHttpClientAsync.Buildertimeout(Timeout timeout)Sets the maximum time allowed for various parts of an HTTP call's lifecycle, excluding retries. final BennyOkHttpClientAsync.Buildertimeout(Duration timeout)Sets the maximum time allowed for a complete HTTP call, not including retries. final BennyOkHttpClientAsync.BuildermaxRetries(Integer maxRetries)The maximum number of times to retry failed requests, with a short exponential backoff between requests. final BennyOkHttpClientAsync.BuilderapiKey(String apiKey)API key authentication for public endpoints final BennyOkHttpClientAsync.Buildersubdomain(String subdomain)final BennyOkHttpClientAsync.Builderheaders(Headers headers)final BennyOkHttpClientAsync.Builderheaders(Map<String, Iterable<String>> headers)final BennyOkHttpClientAsync.BuilderputHeader(String name, String value)final BennyOkHttpClientAsync.BuilderputHeaders(String name, Iterable<String> values)final BennyOkHttpClientAsync.BuilderputAllHeaders(Headers headers)final BennyOkHttpClientAsync.BuilderputAllHeaders(Map<String, Iterable<String>> headers)final BennyOkHttpClientAsync.BuilderreplaceHeaders(String name, String value)final BennyOkHttpClientAsync.BuilderreplaceHeaders(String name, Iterable<String> values)final BennyOkHttpClientAsync.BuilderreplaceAllHeaders(Headers headers)final BennyOkHttpClientAsync.BuilderreplaceAllHeaders(Map<String, Iterable<String>> headers)final BennyOkHttpClientAsync.BuilderremoveHeaders(String name)final BennyOkHttpClientAsync.BuilderremoveAllHeaders(Set<String> names)final BennyOkHttpClientAsync.BuilderqueryParams(QueryParams queryParams)final BennyOkHttpClientAsync.BuilderqueryParams(Map<String, Iterable<String>> queryParams)final BennyOkHttpClientAsync.BuilderputQueryParam(String key, String value)final BennyOkHttpClientAsync.BuilderputQueryParams(String key, Iterable<String> values)final BennyOkHttpClientAsync.BuilderputAllQueryParams(QueryParams queryParams)final BennyOkHttpClientAsync.BuilderputAllQueryParams(Map<String, Iterable<String>> queryParams)final BennyOkHttpClientAsync.BuilderreplaceQueryParams(String key, String value)final BennyOkHttpClientAsync.BuilderreplaceQueryParams(String key, Iterable<String> values)final BennyOkHttpClientAsync.BuilderreplaceAllQueryParams(QueryParams queryParams)final BennyOkHttpClientAsync.BuilderreplaceAllQueryParams(Map<String, Iterable<String>> queryParams)final BennyOkHttpClientAsync.BuilderremoveQueryParams(String key)final BennyOkHttpClientAsync.BuilderremoveAllQueryParams(Set<String> keys)final BennyOkHttpClientAsync.BuilderfromEnv()Updates configuration using system properties and environment variables. final BennyClientAsyncbuild()Returns an immutable instance of BennyClientAsync. -
-
Method Detail
-
dispatcherExecutorService
final BennyOkHttpClientAsync.Builder dispatcherExecutorService(ExecutorService dispatcherExecutorService)
The executor service to use for running HTTP requests.
Defaults to OkHttp's default executor service.
This class takes ownership of the executor service and shuts it down when closed.
-
dispatcherExecutorService
final BennyOkHttpClientAsync.Builder dispatcherExecutorService(Optional<ExecutorService> dispatcherExecutorService)
Alias for calling Builder.dispatcherExecutorService with
dispatcherExecutorService.orElse(null).
-
proxy
final BennyOkHttpClientAsync.Builder proxy(Proxy proxy)
-
proxy
final BennyOkHttpClientAsync.Builder proxy(Optional<Proxy> proxy)
Alias for calling Builder.proxy with
proxy.orElse(null).
-
sslSocketFactory
final BennyOkHttpClientAsync.Builder sslSocketFactory(SSLSocketFactory sslSocketFactory)
The socket factory used to secure HTTPS connections.
If this is set, then trustManager must also be set.
If unset, then the system default is used. Most applications should not call this method, and instead use the system default. The default include special optimizations that can be lost if the implementation is modified.
-
sslSocketFactory
final BennyOkHttpClientAsync.Builder sslSocketFactory(Optional<SSLSocketFactory> sslSocketFactory)
Alias for calling Builder.sslSocketFactory with
sslSocketFactory.orElse(null).
-
trustManager
final BennyOkHttpClientAsync.Builder trustManager(X509TrustManager trustManager)
The trust manager used to secure HTTPS connections.
If this is set, then sslSocketFactory must also be set.
If unset, then the system default is used. Most applications should not call this method, and instead use the system default. The default include special optimizations that can be lost if the implementation is modified.
-
trustManager
final BennyOkHttpClientAsync.Builder trustManager(Optional<X509TrustManager> trustManager)
Alias for calling Builder.trustManager with
trustManager.orElse(null).
-
hostnameVerifier
final BennyOkHttpClientAsync.Builder hostnameVerifier(HostnameVerifier hostnameVerifier)
The verifier used to confirm that response certificates apply to requested hostnames for HTTPS connections.
If unset, then a default hostname verifier is used.
-
hostnameVerifier
final BennyOkHttpClientAsync.Builder hostnameVerifier(Optional<HostnameVerifier> hostnameVerifier)
Alias for calling Builder.hostnameVerifier with
hostnameVerifier.orElse(null).
-
checkJacksonVersionCompatibility
final BennyOkHttpClientAsync.Builder checkJacksonVersionCompatibility(Boolean checkJacksonVersionCompatibility)
Whether to throw an exception if any of the Jackson versions detected at runtime are incompatible with the SDK's minimum supported Jackson version (2.13.4).
Defaults to true. Use extreme caution when disabling this option. There is no guarantee that the SDK will work correctly when using an incompatible Jackson version.
-
jsonMapper
final BennyOkHttpClientAsync.Builder jsonMapper(JsonMapper jsonMapper)
The Jackson JSON mapper to use for serializing and deserializing JSON.
Defaults to com.bennyapi.core.jsonMapper. The default is usually sufficient and rarely needs to be overridden.
-
sleeper
final BennyOkHttpClientAsync.Builder sleeper(Sleeper sleeper)
The interface to use for delaying execution, like during retries.
This is primarily useful for using fake delays in tests.
Defaults to real execution delays.
This class takes ownership of the sleeper and closes it when closed.
-
clock
final BennyOkHttpClientAsync.Builder clock(Clock clock)
The clock to use for operations that require timing, like retries.
This is primarily useful for using a fake clock in tests.
Defaults to Clock.systemUTC.
-
baseUrl
final BennyOkHttpClientAsync.Builder baseUrl(String baseUrl)
The base URL to use for every request.
Defaults to the production environment:
https://{subdomain}.bennyapi.com.The following other environments, with dedicated builder methods, are available:
sandbox:
https://{subdomain}.bennyapi.com
-
baseUrl
final BennyOkHttpClientAsync.Builder baseUrl(Optional<String> baseUrl)
Alias for calling Builder.baseUrl with
baseUrl.orElse(null).
-
sandbox
final BennyOkHttpClientAsync.Builder sandbox()
Sets baseUrl to
https://{subdomain}.bennyapi.com.
-
responseValidation
final BennyOkHttpClientAsync.Builder responseValidation(Boolean responseValidation)
Whether to call
validateon every response before returning it.Defaults to false, which means the shape of the response will not be validated upfront. Instead, validation will only occur for the parts of the response that are accessed.
-
timeout
final BennyOkHttpClientAsync.Builder timeout(Timeout timeout)
Sets the maximum time allowed for various parts of an HTTP call's lifecycle, excluding retries.
Defaults to Timeout.default.
-
timeout
final BennyOkHttpClientAsync.Builder timeout(Duration timeout)
Sets the maximum time allowed for a complete HTTP call, not including retries.
See Timeout.request for more details.
For fine-grained control, pass a Timeout object.
-
maxRetries
final BennyOkHttpClientAsync.Builder maxRetries(Integer maxRetries)
The maximum number of times to retry failed requests, with a short exponential backoff between requests.
Only the following error types are retried:
Connection errors (for example, due to a network connectivity problem)
408 Request Timeout
409 Conflict
429 Rate Limit
5xx Internal
The API may also explicitly instruct the SDK to retry or not retry a request.
Defaults to 2.
-
apiKey
final BennyOkHttpClientAsync.Builder apiKey(String apiKey)
API key authentication for public endpoints
-
subdomain
final BennyOkHttpClientAsync.Builder subdomain(String subdomain)
-
headers
final BennyOkHttpClientAsync.Builder headers(Headers headers)
-
putHeader
final BennyOkHttpClientAsync.Builder putHeader(String name, String value)
-
putHeaders
final BennyOkHttpClientAsync.Builder putHeaders(String name, Iterable<String> values)
-
putAllHeaders
final BennyOkHttpClientAsync.Builder putAllHeaders(Headers headers)
-
putAllHeaders
final BennyOkHttpClientAsync.Builder putAllHeaders(Map<String, Iterable<String>> headers)
-
replaceHeaders
final BennyOkHttpClientAsync.Builder replaceHeaders(String name, String value)
-
replaceHeaders
final BennyOkHttpClientAsync.Builder replaceHeaders(String name, Iterable<String> values)
-
replaceAllHeaders
final BennyOkHttpClientAsync.Builder replaceAllHeaders(Headers headers)
-
replaceAllHeaders
final BennyOkHttpClientAsync.Builder replaceAllHeaders(Map<String, Iterable<String>> headers)
-
removeHeaders
final BennyOkHttpClientAsync.Builder removeHeaders(String name)
-
removeAllHeaders
final BennyOkHttpClientAsync.Builder removeAllHeaders(Set<String> names)
-
queryParams
final BennyOkHttpClientAsync.Builder queryParams(QueryParams queryParams)
-
queryParams
final BennyOkHttpClientAsync.Builder queryParams(Map<String, Iterable<String>> queryParams)
-
putQueryParam
final BennyOkHttpClientAsync.Builder putQueryParam(String key, String value)
-
putQueryParams
final BennyOkHttpClientAsync.Builder putQueryParams(String key, Iterable<String> values)
-
putAllQueryParams
final BennyOkHttpClientAsync.Builder putAllQueryParams(QueryParams queryParams)
-
putAllQueryParams
final BennyOkHttpClientAsync.Builder putAllQueryParams(Map<String, Iterable<String>> queryParams)
-
replaceQueryParams
final BennyOkHttpClientAsync.Builder replaceQueryParams(String key, String value)
-
replaceQueryParams
final BennyOkHttpClientAsync.Builder replaceQueryParams(String key, Iterable<String> values)
-
replaceAllQueryParams
final BennyOkHttpClientAsync.Builder replaceAllQueryParams(QueryParams queryParams)
-
replaceAllQueryParams
final BennyOkHttpClientAsync.Builder replaceAllQueryParams(Map<String, Iterable<String>> queryParams)
-
removeQueryParams
final BennyOkHttpClientAsync.Builder removeQueryParams(String key)
-
removeAllQueryParams
final BennyOkHttpClientAsync.Builder removeAllQueryParams(Set<String> keys)
-
fromEnv
final BennyOkHttpClientAsync.Builder fromEnv()
Updates configuration using system properties and environment variables.
-
-
-
-