Class ResteasyClientBuilderImpl
- java.lang.Object
 - 
- javax.ws.rs.client.ClientBuilder
 - 
- org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder
 - 
- org.jboss.resteasy.client.jaxrs.internal.ResteasyClientBuilderImpl
 
 
 
 
- 
- All Implemented Interfaces:
 javax.ws.rs.core.Configurable<javax.ws.rs.client.ClientBuilder>
- Direct Known Subclasses:
 MpClientBuilderImpl
public class ResteasyClientBuilderImpl extends ResteasyClientBuilder
Abstraction for creating Clients. Allows SSL configuration. Uses Apache Http Client under the covers. If used with other ClientHttpEngines though, all configuration options are ignored.- Version:
 - $Revision: 1 $
 - Author:
 - Bill Burke
 
 
- 
- 
Nested Class Summary
- 
Nested classes/interfaces inherited from class org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder
ResteasyClientBuilder.HostnameVerificationPolicy 
 - 
 
- 
Field Summary
- 
Fields inherited from class org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder
PROPERTY_PROXY_HOST, PROPERTY_PROXY_PORT, PROPERTY_PROXY_SCHEME 
 - 
 
- 
Constructor Summary
Constructors Constructor Description ResteasyClientBuilderImpl() 
- 
Method Summary
 
 - 
 
- 
- 
Field Detail
- 
truststore
protected KeyStore truststore
 
- 
clientKeyStore
protected KeyStore clientKeyStore
 
- 
clientPrivateKeyPassword
protected String clientPrivateKeyPassword
 
- 
disableTrustManager
protected boolean disableTrustManager
 
- 
policy
protected ResteasyClientBuilder.HostnameVerificationPolicy policy
 
- 
providerFactory
protected ResteasyProviderFactory providerFactory
 
- 
asyncExecutor
protected ExecutorService asyncExecutor
 
- 
scheduledExecutorService
protected ScheduledExecutorService scheduledExecutorService
 
- 
cleanupExecutor
protected boolean cleanupExecutor
 
- 
sslContext
protected SSLContext sslContext
 
- 
httpEngine
protected ClientHttpEngine httpEngine
 
- 
connectionPoolSize
protected int connectionPoolSize
 
- 
maxPooledPerRoute
protected int maxPooledPerRoute
 
- 
connectionTTL
protected long connectionTTL
 
- 
connectionTTLUnit
protected TimeUnit connectionTTLUnit
 
- 
socketTimeout
protected long socketTimeout
 
- 
socketTimeoutUnits
protected TimeUnit socketTimeoutUnits
 
- 
establishConnectionTimeout
protected long establishConnectionTimeout
 
- 
establishConnectionTimeoutUnits
protected TimeUnit establishConnectionTimeoutUnits
 
- 
connectionCheckoutTimeoutMs
protected int connectionCheckoutTimeoutMs
 
- 
verifier
protected HostnameVerifier verifier
 
- 
defaultProxy
protected org.apache.http.HttpHost defaultProxy
 
- 
responseBufferSize
protected int responseBufferSize
 
- 
trustSelfSignedCertificates
protected boolean trustSelfSignedCertificates
 
- 
cookieManagementEnabled
protected boolean cookieManagementEnabled
 
- 
disableAutomaticRetries
protected boolean disableAutomaticRetries
 
- 
followRedirects
protected boolean followRedirects
 
 - 
 
- 
Method Detail
- 
setProviderFactory
public static void setProviderFactory(ResteasyProviderFactory providerFactory)
 
- 
providerFactory
public ResteasyClientBuilderImpl providerFactory(ResteasyProviderFactory providerFactory)
Changing the providerFactory will wipe clean any registered components or properties.- Specified by:
 providerFactoryin classResteasyClientBuilder- Parameters:
 providerFactory- provider factory- Returns:
 - the updated client builder instance
 
 
- 
asyncExecutor
@Deprecated public ResteasyClientBuilderImpl asyncExecutor(ExecutorService asyncExecutor)
Deprecated.useexecutorService(ExecutorService)insteadExecutor to use to run AsyncInvoker invocations.- Parameters:
 asyncExecutor- executor service- Returns:
 - the updated client builder instance
 
 
- 
asyncExecutor
@Deprecated public ResteasyClientBuilderImpl asyncExecutor(ExecutorService asyncExecutor, boolean cleanupExecutor)
Deprecated.Executor to use to run AsyncInvoker invocations.- Parameters:
 asyncExecutor- executor servicecleanupExecutor- true if the Client should close the executor when it is closed- Returns:
 - the updated client builder instance
 
 
- 
connectionTTL
public ResteasyClientBuilderImpl connectionTTL(long ttl, TimeUnit unit)
If there is a connection pool, set the time to live in the pool.- Specified by:
 connectionTTLin classResteasyClientBuilder- Parameters:
 ttl- time to liveunit- the time unit of the ttl argument- Returns:
 - the updated client builder instance
 
 
- 
readTimeout
public ResteasyClientBuilderImpl readTimeout(long timeout, TimeUnit unit)
- Specified by:
 readTimeoutin classResteasyClientBuilder
 
- 
connectTimeout
public ResteasyClientBuilderImpl connectTimeout(long timeout, TimeUnit unit)
- Specified by:
 connectTimeoutin classResteasyClientBuilder
 
- 
maxPooledPerRoute
public ResteasyClientBuilderImpl maxPooledPerRoute(int maxPooledPerRoute)
If connection pooling enabled, how many connections to pool per url?- Specified by:
 maxPooledPerRoutein classResteasyClientBuilder- Parameters:
 maxPooledPerRoute- max pool size per url- Returns:
 - the updated client builder instance
 
 
- 
connectionCheckoutTimeout
public ResteasyClientBuilderImpl connectionCheckoutTimeout(long timeout, TimeUnit unit)
If connection pooling is enabled, how long will we wait to get a connection?- Specified by:
 connectionCheckoutTimeoutin classResteasyClientBuilder- Parameters:
 timeout- the timeoutunit- the units the timeout is in- Returns:
 - the updated client builder instance
 
 
- 
connectionPoolSize
public ResteasyClientBuilderImpl connectionPoolSize(int connectionPoolSize)
Number of connections allowed to pool.- Specified by:
 connectionPoolSizein classResteasyClientBuilder- Parameters:
 connectionPoolSize- connection pool size- Returns:
 - the updated client builder instance
 
 
- 
responseBufferSize
public ResteasyClientBuilderImpl responseBufferSize(int size)
Response stream is wrapped in a BufferedInputStream. Default is 8192. Value of 0 will not wrap it. Value of -1 will use a SelfExpandingBufferedInputStream.- Specified by:
 responseBufferSizein classResteasyClientBuilder- Parameters:
 size- response buffer size- Returns:
 - the updated client builder instance
 
 
- 
disableTrustManager
public ResteasyClientBuilderImpl disableTrustManager()
Disable trust management and hostname verification. NOTE this is a security hole, so only set this option if you cannot or do not want to verify the identity of the host you are communicating with.- Specified by:
 disableTrustManagerin classResteasyClientBuilder- Returns:
 - the updated client builder instance
 
 
- 
hostnameVerification
public ResteasyClientBuilderImpl hostnameVerification(ResteasyClientBuilder.HostnameVerificationPolicy policy)
SSL policy used to verify hostnames- Specified by:
 hostnameVerificationin classResteasyClientBuilder- Parameters:
 policy- SSL policy- Returns:
 - the updated client builder instance
 
 
- 
httpEngine
public ResteasyClientBuilderImpl httpEngine(ClientHttpEngine httpEngine)
Negates all ssl and connection specific configuration- Specified by:
 httpEnginein classResteasyClientBuilder- Parameters:
 httpEngine- http engine- Returns:
 - the updated client builder instance
 
 
- 
useAsyncHttpEngine
public ResteasyClientBuilderImpl useAsyncHttpEngine()
- Specified by:
 useAsyncHttpEnginein classResteasyClientBuilder
 
- 
sslContext
public ResteasyClientBuilderImpl sslContext(SSLContext sslContext)
- Specified by:
 sslContextin classResteasyClientBuilder
 
- 
trustStore
public ResteasyClientBuilderImpl trustStore(KeyStore truststore)
- Specified by:
 trustStorein classResteasyClientBuilder
 
- 
keyStore
public ResteasyClientBuilderImpl keyStore(KeyStore keyStore, String password)
- Specified by:
 keyStorein classResteasyClientBuilder
 
- 
keyStore
public ResteasyClientBuilderImpl keyStore(KeyStore keyStore, char[] password)
- Specified by:
 keyStorein classResteasyClientBuilder
 
- 
property
public ResteasyClientBuilderImpl property(String name, Object value)
 
- 
sniHostNames
public ResteasyClientBuilderImpl sniHostNames(String... sniHostNames)
Adds a TLS/SSL SNI Host Name for authentication.- Specified by:
 sniHostNamesin classResteasyClientBuilder- Parameters:
 sniHostNames- host names- Returns:
 - the updated client builder instance
 
 
- 
defaultProxy
public ResteasyClientBuilderImpl defaultProxy(String hostname)
Specify a default proxy. Default port and schema will be used.- Specified by:
 defaultProxyin classResteasyClientBuilder- Parameters:
 hostname- host name- Returns:
 - the updated client builder instance
 
 
- 
defaultProxy
public ResteasyClientBuilderImpl defaultProxy(String hostname, int port)
Specify a default proxy host and port. Default schema will be used.- Specified by:
 defaultProxyin classResteasyClientBuilder- Parameters:
 hostname- host nameport- port- Returns:
 - the updated client builder instance
 
 
- 
defaultProxy
public ResteasyClientBuilderImpl defaultProxy(String hostname, int port, String scheme)
Specify default proxy.- Specified by:
 defaultProxyin classResteasyClientBuilder- Parameters:
 hostname- host nameport- portscheme- scheme- Returns:
 - the updated client builder instance
 
 
- 
getProviderFactory
public ResteasyProviderFactory getProviderFactory()
- Specified by:
 getProviderFactoryin classResteasyClientBuilder
 
- 
build
public ResteasyClient build()
- Specified by:
 buildin classResteasyClientBuilder
 
- 
createResteasyClient
protected ResteasyClient createResteasyClient(ClientHttpEngine engine, ExecutorService executor, boolean cleanupExecutor, ScheduledExecutorService scheduledExecutorService, ClientConfiguration config)
 
- 
hostnameVerifier
public ResteasyClientBuilderImpl hostnameVerifier(HostnameVerifier verifier)
- Specified by:
 hostnameVerifierin classResteasyClientBuilder
 
- 
getConfiguration
public javax.ws.rs.core.Configuration getConfiguration()
 
- 
register
public ResteasyClientBuilderImpl register(Class<?> componentClass)
 
- 
register
public ResteasyClientBuilderImpl register(Class<?> componentClass, int priority)
 
- 
register
public ResteasyClientBuilderImpl register(Class<?> componentClass, Class<?>... contracts)
 
- 
register
public ResteasyClientBuilderImpl register(Class<?> componentClass, Map<Class<?>,Integer> contracts)
 
- 
register
public ResteasyClientBuilderImpl register(Object component)
 
- 
register
public ResteasyClientBuilderImpl register(Object component, int priority)
 
- 
register
public ResteasyClientBuilderImpl register(Object component, Class<?>... contracts)
 
- 
register
public ResteasyClientBuilderImpl register(Object component, Map<Class<?>,Integer> contracts)
 
- 
withConfig
public ResteasyClientBuilderImpl withConfig(javax.ws.rs.core.Configuration config)
- Specified by:
 withConfigin classResteasyClientBuilder
 
- 
executorService
public ResteasyClientBuilder executorService(ExecutorService executorService)
- Specified by:
 executorServicein classResteasyClientBuilder
 
- 
executorService
public ResteasyClientBuilder executorService(ExecutorService executorService, boolean cleanupExecutor)
- Specified by:
 executorServicein classResteasyClientBuilder
 
- 
scheduledExecutorService
public ResteasyClientBuilder scheduledExecutorService(ScheduledExecutorService scheduledExecutorService)
- Specified by:
 scheduledExecutorServicein classResteasyClientBuilder
 
- 
getConnectionTTL
public long getConnectionTTL(TimeUnit unit)
- Specified by:
 getConnectionTTLin classResteasyClientBuilder
 
- 
getMaxPooledPerRoute
public int getMaxPooledPerRoute()
- Specified by:
 getMaxPooledPerRoutein classResteasyClientBuilder
 
- 
getConnectionCheckoutTimeout
public long getConnectionCheckoutTimeout(TimeUnit unit)
- Specified by:
 getConnectionCheckoutTimeoutin classResteasyClientBuilder
 
- 
getConnectionPoolSize
public int getConnectionPoolSize()
- Specified by:
 getConnectionPoolSizein classResteasyClientBuilder
 
- 
getResponseBufferSize
public int getResponseBufferSize()
- Specified by:
 getResponseBufferSizein classResteasyClientBuilder
 
- 
isTrustManagerDisabled
public boolean isTrustManagerDisabled()
- Specified by:
 isTrustManagerDisabledin classResteasyClientBuilder
 
- 
isTrustSelfSignedCertificates
public boolean isTrustSelfSignedCertificates()
- Specified by:
 isTrustSelfSignedCertificatesin classResteasyClientBuilder
 
- 
setIsTrustSelfSignedCertificates
public void setIsTrustSelfSignedCertificates(boolean b)
Description copied from class:ResteasyClientBuilderWhen the user is not using a TrustManager (see disableTrustManager) and does not define an SSLContext object but they want all defined trustStores to use the TrustSelfSignedCertificates trust strategy set this value to true.- Specified by:
 setIsTrustSelfSignedCertificatesin classResteasyClientBuilder- Parameters:
 b- A value of true assigns trust strategy TrustSelfSignedCertificates to the trustStores. A value of false assigns a null to the trust strategy. The default value is true in order to maintain backward compatibility.
 
- 
getHostnameVerification
public ResteasyClientBuilder.HostnameVerificationPolicy getHostnameVerification()
- Specified by:
 getHostnameVerificationin classResteasyClientBuilder
 
- 
getHttpEngine
public ClientHttpEngine getHttpEngine()
- Specified by:
 getHttpEnginein classResteasyClientBuilder
 
- 
isUseAsyncHttpEngine
public boolean isUseAsyncHttpEngine()
- Specified by:
 isUseAsyncHttpEnginein classResteasyClientBuilder
 
- 
getSniHostNames
public List<String> getSniHostNames()
- Specified by:
 getSniHostNamesin classResteasyClientBuilder
 
- 
getDefaultProxyHostname
public String getDefaultProxyHostname()
- Specified by:
 getDefaultProxyHostnamein classResteasyClientBuilder
 
- 
getDefaultProxyPort
public int getDefaultProxyPort()
- Specified by:
 getDefaultProxyPortin classResteasyClientBuilder
 
- 
getDefaultProxyScheme
public String getDefaultProxyScheme()
- Specified by:
 getDefaultProxySchemein classResteasyClientBuilder
 
- 
getReadTimeout
public long getReadTimeout(TimeUnit unit)
- Specified by:
 getReadTimeoutin classResteasyClientBuilder
 
- 
getConnectionTimeout
public long getConnectionTimeout(TimeUnit unit)
- Specified by:
 getConnectionTimeoutin classResteasyClientBuilder
 
- 
getSSLContext
public SSLContext getSSLContext()
- Specified by:
 getSSLContextin classResteasyClientBuilder
 
- 
getKeyStore
public KeyStore getKeyStore()
- Specified by:
 getKeyStorein classResteasyClientBuilder
 
- 
getKeyStorePassword
public String getKeyStorePassword()
- Specified by:
 getKeyStorePasswordin classResteasyClientBuilder
 
- 
getTrustStore
public KeyStore getTrustStore()
- Specified by:
 getTrustStorein classResteasyClientBuilder
 
- 
getHostnameVerifier
public HostnameVerifier getHostnameVerifier()
- Specified by:
 getHostnameVerifierin classResteasyClientBuilder
 
- 
enableCookieManagement
public ResteasyClientBuilder enableCookieManagement()
Description copied from class:ResteasyClientBuilderEnable state (cookie) management.- Specified by:
 enableCookieManagementin classResteasyClientBuilder- Returns:
 - the updated client builder instance
 
 
- 
isCookieManagementEnabled
public boolean isCookieManagementEnabled()
- Specified by:
 isCookieManagementEnabledin classResteasyClientBuilder
 
- 
disableAutomaticRetries
public ResteasyClientBuilder disableAutomaticRetries()
Description copied from class:ResteasyClientBuilderboolean, notify apache to disable its automatic retries.- Specified by:
 disableAutomaticRetriesin classResteasyClientBuilder
 
- 
isDisableAutomaticRetries
public boolean isDisableAutomaticRetries()
- Specified by:
 isDisableAutomaticRetriesin classResteasyClientBuilder
 
- 
setFollowRedirects
public ResteasyClientBuilder setFollowRedirects(boolean followRedirects)
Description copied from class:ResteasyClientBuilderFollow redirects added for MicroProfile-rest-client but can be used by tradition clients as well.- Specified by:
 setFollowRedirectsin classResteasyClientBuilder- Returns:
 
 
- 
isFollowRedirects
public boolean isFollowRedirects()
- Specified by:
 isFollowRedirectsin classResteasyClientBuilder
 
 - 
 
 -