Class IntHttpClient

  • Direct Known Subclasses:
    AuthenticatingIntHttpClient

    public class IntHttpClient
    extends java.lang.Object
    A basic, extendable http client.
    • Field Detail

      • SSL_CONTEXT_SUPPLIER

        public static final java.util.function.Supplier<javax.net.ssl.SSLContext> SSL_CONTEXT_SUPPLIER
      • ERROR_MSG_PROXY_INFO_NULL

        public static final java.lang.String ERROR_MSG_PROXY_INFO_NULL
        See Also:
        Constant Field Values
      • logger

        protected final com.synopsys.integration.log.IntLogger logger
    • Constructor Detail

      • IntHttpClient

        public IntHttpClient​(com.synopsys.integration.log.IntLogger logger,
                             int timeoutInSeconds,
                             boolean alwaysTrustServerCertificate,
                             ProxyInfo proxyInfo)
      • IntHttpClient

        public IntHttpClient​(com.synopsys.integration.log.IntLogger logger,
                             int timeoutInSeconds,
                             ProxyInfo proxyInfo,
                             javax.net.ssl.SSLContext sslContext)
      • IntHttpClient

        public IntHttpClient​(com.synopsys.integration.log.IntLogger logger,
                             int timeoutInSeconds,
                             boolean alwaysTrustServerCertificate,
                             ProxyInfo proxyInfo,
                             org.apache.http.client.CredentialsProvider credentialsProvider,
                             org.apache.http.impl.client.HttpClientBuilder clientBuilder,
                             org.apache.http.client.config.RequestConfig.Builder defaultRequestConfigBuilder,
                             java.util.Map<java.lang.String,​java.lang.String> commonRequestHeaders)
      • IntHttpClient

        public IntHttpClient​(com.synopsys.integration.log.IntLogger logger,
                             int timeoutInSeconds,
                             ProxyInfo proxyInfo,
                             org.apache.http.client.CredentialsProvider credentialsProvider,
                             org.apache.http.impl.client.HttpClientBuilder clientBuilder,
                             org.apache.http.client.config.RequestConfig.Builder defaultRequestConfigBuilder,
                             java.util.Map<java.lang.String,​java.lang.String> commonRequestHeaders,
                             javax.net.ssl.SSLContext sslContext)
    • Method Detail

      • createRequestBuilder

        public final org.apache.http.client.methods.RequestBuilder createRequestBuilder​(HttpMethod method)
                                                                                 throws com.synopsys.integration.exception.IntegrationException
        Throws:
        com.synopsys.integration.exception.IntegrationException
      • createRequestBuilder

        public final org.apache.http.client.methods.RequestBuilder createRequestBuilder​(HttpMethod method,
                                                                                        java.util.Map<java.lang.String,​java.lang.String> additionalHeaders)
                                                                                 throws com.synopsys.integration.exception.IntegrationException
        Throws:
        com.synopsys.integration.exception.IntegrationException
      • createHttpUriRequest

        public org.apache.http.client.methods.HttpUriRequest createHttpUriRequest​(Request request)
                                                                           throws com.synopsys.integration.exception.IntegrationException
        Throws:
        com.synopsys.integration.exception.IntegrationException
      • execute

        public Response execute​(Request request)
                         throws com.synopsys.integration.exception.IntegrationException
        Throws:
        com.synopsys.integration.exception.IntegrationException
      • execute

        public Response execute​(Request request,
                                org.apache.http.protocol.HttpContext httpContext)
                         throws com.synopsys.integration.exception.IntegrationException
        Throws:
        com.synopsys.integration.exception.IntegrationException
      • execute

        public Response execute​(org.apache.http.client.methods.HttpUriRequest request)
                         throws com.synopsys.integration.exception.IntegrationException
        Throws:
        com.synopsys.integration.exception.IntegrationException
      • execute

        public Response execute​(org.apache.http.client.methods.HttpUriRequest request,
                                org.apache.http.protocol.HttpContext httpContext)
                         throws com.synopsys.integration.exception.IntegrationException
        Throws:
        com.synopsys.integration.exception.IntegrationException
      • executeGetRequestIfModifiedSince

        public java.util.Optional<Response> executeGetRequestIfModifiedSince​(Request getRequest,
                                                                             long timeToCheck)
                                                                      throws com.synopsys.integration.exception.IntegrationException,
                                                                             java.io.IOException
        Throws:
        com.synopsys.integration.exception.IntegrationException
        java.io.IOException
      • executeGetRequestIfModifiedSince

        public java.util.Optional<Response> executeGetRequestIfModifiedSince​(Request getRequest,
                                                                             long timeToCheck,
                                                                             org.apache.http.protocol.HttpContext httpContext)
                                                                      throws com.synopsys.integration.exception.IntegrationException,
                                                                             java.io.IOException
        Throws:
        com.synopsys.integration.exception.IntegrationException
        java.io.IOException
      • logRequestHeaders

        public final void logRequestHeaders​(org.apache.http.client.methods.HttpUriRequest request)
      • logResponseHeaders

        public final void logResponseHeaders​(org.apache.http.HttpResponse response)
      • addToHttpClientBuilder

        protected void addToHttpClientBuilder​(org.apache.http.impl.client.HttpClientBuilder httpClientBuilder,
                                              org.apache.http.client.config.RequestConfig.Builder defaultRequestConfigBuilder)
      • handleErrorResponse

        protected void handleErrorResponse​(org.apache.http.client.methods.HttpUriRequest request,
                                           Response response)
      • throwExceptionForError

        public void throwExceptionForError​(Response response)
                                    throws com.synopsys.integration.exception.IntegrationException
        Throws:
        com.synopsys.integration.exception.IntegrationException
      • extractErrorResponse

        public java.util.Optional<ErrorResponse> extractErrorResponse​(java.lang.String responseContent)
      • getTimeoutInSeconds

        public int getTimeoutInSeconds()
      • isAlwaysTrustServerCertificate

        public boolean isAlwaysTrustServerCertificate()
      • getProxyInfo

        public ProxyInfo getProxyInfo()
      • getCredentialsProvider

        public org.apache.http.client.CredentialsProvider getCredentialsProvider()
      • getClientBuilder

        public org.apache.http.impl.client.HttpClientBuilder getClientBuilder()
      • getDefaultRequestConfigBuilder

        public org.apache.http.client.config.RequestConfig.Builder getDefaultRequestConfigBuilder()
      • getCommonRequestHeaders

        public java.util.Map<java.lang.String,​java.lang.String> getCommonRequestHeaders()
      • addCommonRequestHeader

        public void addCommonRequestHeader​(java.lang.String key,
                                           java.lang.String value)
      • addCommonRequestHeaders

        public void addCommonRequestHeaders​(java.util.Map<java.lang.String,​java.lang.String> commonRequestHeaders)
      • removeCommonRequestHeader

        public java.lang.String removeCommonRequestHeader​(java.lang.String key)
      • getLogger

        public com.synopsys.integration.log.IntLogger getLogger()