Class ApacheClientProperties


  • public final class ApacheClientProperties
    extends Object
    Configuration options specific to the Client API that utilizes ApacheConnectorProvider.
    Author:
    [email protected], Paul Sandoz, Pavel Bucek, Arul Dhesiaseelan (aruld at acm.org)
    • Field Detail

      • CREDENTIALS_PROVIDER

        public static final String CREDENTIALS_PROVIDER
        The credential provider that should be used to retrieve credentials from a user. Credentials needed for proxy authentication are stored here as well.

        The value MUST be an instance of CredentialsProvider.

        If the property is absent a default provider will be used.

        The name of the configuration property is "jersey.config.apache.client.credentialsProvider".

        See Also:
        Constant Field Values
      • DISABLE_COOKIES

        public static final String DISABLE_COOKIES
        A value of false indicates the client should handle cookies automatically using HttpClient's default cookie policy. A value of true will cause the client to ignore all cookies.

        The value MUST be an instance of Boolean.

        The default value is false.

        The name of the configuration property is "jersey.config.apache.client.handleCookies".

        See Also:
        Constant Field Values
      • PREEMPTIVE_BASIC_AUTHENTICATION

        public static final String PREEMPTIVE_BASIC_AUTHENTICATION
        A value of true indicates that a client should send an authentication request even before the server gives a 401 response.

        This property may only be set prior to constructing Apache connector using ApacheConnectorProvider.

        The value MUST be an instance of Boolean.

        The default value is false.

        The name of the configuration property is "jersey.config.apache.client.preemptiveBasicAuthentication".

        See Also:
        Constant Field Values
      • CONNECTION_MANAGER

        public static final String CONNECTION_MANAGER
        Connection Manager which will be used to create HttpClient.

        The value MUST be an instance of HttpClientConnectionManager.

        If the property is absent a default Connection Manager will be used (BasicHttpClientConnectionManager). If you want to use this client in multi-threaded environment, be sure you override default value with PoolingHttpClientConnectionManager instance.

        The name of the configuration property is "jersey.config.apache.client.connectionManager".

        See Also:
        Constant Field Values
      • CONNECTION_MANAGER_SHARED

        public static final String CONNECTION_MANAGER_SHARED
        A value of true indicates that configured connection manager should be shared among multiple Jersey ClientRuntime instances. It means that closing a particular ClientRuntime instance does not shut down the underlying connection manager automatically. In such case, the connection manager life-cycle should be fully managed by the application code. To release all allocated resources, caller code should especially ensure HttpClientConnectionManager.shutdown() gets invoked eventually.

        This property may only be set prior to constructing Apache connector using ApacheConnectorProvider.

        The value MUST be an instance of Boolean.

        The default value is false.

        The name of the configuration property is "jersey.config.apache.client.connectionManagerShared".

        Since:
        2.18
        See Also:
        Constant Field Values
      • REQUEST_CONFIG

        public static final String REQUEST_CONFIG
        Request configuration for the HttpClient. Http parameters which will be used to create HttpClient.

        The value MUST be an instance of RequestConfig.

        If the property is absent default request configuration will be used.

        The name of the configuration property is "jersey.config.apache.client.requestConfig".

        Since:
        2.5
        See Also:
        Constant Field Values
      • RETRY_HANDLER

        public static final String RETRY_HANDLER
        HttpRequestRetryHandler which will be used to create HttpClient.

        The value MUST be an instance of HttpRequestRetryHandler.

        If the property is absent a default retry handler will be used (DefaultHttpRequestRetryHandler).

        The name of the configuration property is "jersey.config.apache.client.retryHandler".

        See Also:
        Constant Field Values
      • REUSE_STRATEGY

        public static final String REUSE_STRATEGY
        ConnectionReuseStrategy for the HttpClient.

        The value MUST be an instance of org.apache.http.impl.ConnectionReuseStrategy.

        If the property is absent the default reuse strategy of the Apache HTTP library will be used

        The name of the configuration property is "jersey.config.apache.client.reuseStrategy".

        See Also:
        Constant Field Values
      • KEEPALIVE_STRATEGY

        public static final String KEEPALIVE_STRATEGY
        ConnectionKeepAliveStrategy for the HttpClient.

        The value MUST be an instance of ConnectionKeepAliveStrategy.

        If the property is absent the default keepalive strategy of the Apache HTTP library will be used

        The name of the configuration property is "jersey.config.apache.client.keepAliveStrategy".

        See Also:
        Constant Field Values
      • USE_SYSTEM_PROPERTIES

        public static final String USE_SYSTEM_PROPERTIES
        A value of false indicates the client will use default ApacheConnector params. A value of true will cause the client to take into account the system properties https.protocols, https.cipherSuites, http.keepAlive, http.maxConnections.

        The value MUST be an instance of Boolean.

        The default value is false.

        The name of the configuration property is "jersey.config.apache.client.useSystemProperties".

        See Also:
        Constant Field Values
    • Method Detail

      • getValue

        public static <T> T getValue​(Map<String,​?> properties,
                                     String key,
                                     Class<T> type)
        Get the value of the specified property. If the property is not set or the actual property value type is not compatible with the specified type, the method will return null.
        Type Parameters:
        T - Type of the property value.
        Parameters:
        properties - Map of properties to get the property value from.
        key - Name of the property.
        type - Type to retrieve the value as.
        Returns:
        Value of the property or null.
        Since:
        2.8