Package io.joshworks.restclient.http
Class ClientBuilder
- java.lang.Object
-
- io.joshworks.restclient.http.ClientBuilder
-
public class ClientBuilder extends java.lang.Object
-
-
Method Summary
Modifier and Type Method Description ClientBuilderbaseUrl(java.lang.String baseUrl)RestClientbuild()ClientBuilderconcurrency(int maxTotal)Set the concurrency levelsClientBuilderconnectionTTL(long ttlMillis)Total time to live (TTL) defines maximum life span of persistent connections regardless of their expiration setting.ClientBuildercookieSpec(java.lang.String cookieSpec)ClientBuildercredentialProvider(org.apache.http.client.CredentialsProvider provider)ClientBuilderdefaultHeader(java.lang.String key, long value)ClientBuilderdefaultHeader(java.lang.String key, java.lang.String value)ClientBuilderdisableSSLCheck()ClientBuilderfollowRedirect(boolean followRedirect)ClientBuilderinterceptor(org.apache.http.HttpRequestInterceptor interceptor)ClientBuilderinterceptor(org.apache.http.HttpResponseInterceptor interceptor)ClientBuilderproxy(org.apache.http.HttpHost proxy)ClientBuilderproxy(org.apache.http.HttpHost proxy, org.apache.http.auth.Credentials credentials)ClientBuilderrouteConcurrency(int maxRoute)Set the concurrency levels per hostClientBuildersslContext(javax.net.ssl.SSLContext sslContext)ClientBuildertimeout(int connectionTimeout, int readTimeout)Set the connection timeout and socket timeoutClientBuilderurlTransformer(java.util.function.Function<java.lang.String,java.lang.String> transformer)
-
-
-
Method Detail
-
build
public RestClient build()
-
baseUrl
public ClientBuilder baseUrl(java.lang.String baseUrl)
-
defaultHeader
public ClientBuilder defaultHeader(java.lang.String key, java.lang.String value)
-
followRedirect
public ClientBuilder followRedirect(boolean followRedirect)
-
disableSSLCheck
public ClientBuilder disableSSLCheck()
-
sslContext
public ClientBuilder sslContext(javax.net.ssl.SSLContext sslContext)
-
interceptor
public ClientBuilder interceptor(org.apache.http.HttpRequestInterceptor interceptor)
-
interceptor
public ClientBuilder interceptor(org.apache.http.HttpResponseInterceptor interceptor)
-
defaultHeader
public ClientBuilder defaultHeader(java.lang.String key, long value)
-
credentialProvider
public ClientBuilder credentialProvider(org.apache.http.client.CredentialsProvider provider)
-
urlTransformer
public ClientBuilder urlTransformer(java.util.function.Function<java.lang.String,java.lang.String> transformer)
-
cookieSpec
public ClientBuilder cookieSpec(java.lang.String cookieSpec)
-
proxy
public ClientBuilder proxy(org.apache.http.HttpHost proxy)
-
proxy
public ClientBuilder proxy(org.apache.http.HttpHost proxy, org.apache.http.auth.Credentials credentials)
-
timeout
public ClientBuilder timeout(int connectionTimeout, int readTimeout)
Set the connection timeout and socket timeout- Parameters:
connectionTimeout- The timeout until a connection with the server is established (in milliseconds). Default is 10000. Set to zero to disable the timeout.readTimeout- The timeout to receive data (in milliseconds). Default is 60000. Set to zero to disable the timeout.
-
concurrency
public ClientBuilder concurrency(int maxTotal)
Set the concurrency levels- Parameters:
maxTotal- Defines the overall connection limit for a connection pool. Default is 20.
-
routeConcurrency
public ClientBuilder routeConcurrency(int maxRoute)
Set the concurrency levels per host- Parameters:
maxRoute- Defines the connection limit for a connection pool per host. Default is 2.
-
connectionTTL
public ClientBuilder connectionTTL(long ttlMillis)
Total time to live (TTL) defines maximum life span of persistent connections regardless of their expiration setting. No persistent connection will be re-used past its TTL value.- Returns:
- this config object
-
-