Interface HTTPClient

    • Method Summary

      All Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      HTTPResponse get​(URL url)
      Executes an HTTP GET request against the provided URL and returns the server response.
      default HTTPResponse get​(URL url, Map<String,​String> headers)
      Executes an HTTP GET request against the provided URL and returns the server response.
      int getConnectTimeout()  
      String getPassword()  
      int getReadTimeout()  
      String getUser()  
      boolean isTryGzip()  
      HTTPResponse post​(URL url, InputStream postContent, String postContentType)
      Executes an HTTP POST request against the provided URL, sending the contents of postContent as the POST method body and setting the Content-Type request header to postContentType if given, and returns the server response.
      default HTTPResponse post​(URL url, InputStream postContent, String postContentType, Map<String,​String> headers)
      Executes an HTTP POST request against the provided URL, sending the contents of postContent as the POST method body and setting the Content-Type request header to postContentType if given, and returns the server response.
      void setConnectTimeout​(int connectTimeout)  
      void setPassword​(String password)  
      void setReadTimeout​(int readTimeout)  
      void setTryGzip​(boolean tryGZIP)  
      void setUser​(String user)  
    • Method Detail

      • post

        HTTPResponse post​(URL url,
                          InputStream postContent,
                          String postContentType)
                   throws IOException
        Executes an HTTP POST request against the provided URL, sending the contents of postContent as the POST method body and setting the Content-Type request header to postContentType if given, and returns the server response.

        If an HTTP authentication user and password is set, the appropriate authentication HTTP header will be sent with the request.

        If a connection timeout is set, the http connection will be set to respect that timeout.

        If a read timeout is set, the http connection will be set to respect it.

        Parameters:
        url - the URL against which to execute the POST request
        postContent - an input stream with the contents of the POST body
        postContentType - the MIME type of the contents sent as the request POST body, can be null
        Returns:
        the HTTPResponse encapsulating the response to the HTTP POST request
        Throws:
        IOException
      • post

        default HTTPResponse post​(URL url,
                                  InputStream postContent,
                                  String postContentType,
                                  Map<String,​String> headers)
                           throws IOException
        Executes an HTTP POST request against the provided URL, sending the contents of postContent as the POST method body and setting the Content-Type request header to postContentType if given, and returns the server response.

        If an HTTP authentication user and password is set, the appropriate authentication HTTP header will be sent with the request.

        If a connection timeout is set, the http connection will be set to respect that timeout.

        If a read timeout is set, the http connection will be set to respect it.

        header parameter contains additional headers to add to the request.

        Parameters:
        url - the URL against which to execute the POST request
        postContent - an input stream with the contents of the POST body
        postContentType - the MIME type of the contents sent as the request POST body, can be null
        headers - a list of custom headers to add to the request.
        Returns:
        the HTTPResponse encapsulating the response to the HTTP POST request
        Throws:
        IOException
      • get

        HTTPResponse get​(URL url)
                  throws IOException
        Executes an HTTP GET request against the provided URL and returns the server response.

        If an HTTP authentication user and password is set, the appropriate authentication HTTP header will be sent with the request.

        If a connection timeout is set, the http connection will be set to respect that timeout.

        If a read timeout is set, the http connection will be set to respect it.

        Parameters:
        url - the URL to retrieve
        Returns:
        an HTTPResponse encapsulating the response to the HTTP GET request
        Throws:
        IOException
      • get

        default HTTPResponse get​(URL url,
                                 Map<String,​String> headers)
                          throws IOException
        Executes an HTTP GET request against the provided URL and returns the server response.

        If an HTTP authentication user and password is set, the appropriate authentication HTTP header will be sent with the request.

        If a connection timeout is set, the http connection will be set to respect that timeout.

        If a read timeout is set, the http connection will be set to respect it.

        header parameter contains additional headers to add to the request.

        Parameters:
        url - the URL to retrieve
        headers - a list of custom headers to add to the request.
        Returns:
        an HTTPResponse encapsulating the response to the HTTP GET request
        Throws:
        IOException
      • getUser

        String getUser()
        Returns:
        the HTTP BASIC Authentication user name, or null if not set
      • setUser

        void setUser​(String user)
        Parameters:
        user - the HTTP BASIC Authentication user name
      • getPassword

        String getPassword()
        Returns:
        the HTTP BASIC Authentication password, or null if not set
      • setPassword

        void setPassword​(String password)
        Parameters:
        password - the HTTP BASIC Authentication password
      • getConnectTimeout

        int getConnectTimeout()
        Returns:
        the tcp/ip connect timeout in seconds
      • setConnectTimeout

        void setConnectTimeout​(int connectTimeout)
        Parameters:
        connectTimeout - tcp/ip connect timeout in seconds
      • getReadTimeout

        int getReadTimeout()
        Returns:
        the socket read timeout in seconds
      • setReadTimeout

        void setReadTimeout​(int readTimeout)
        Parameters:
        readTimeout - socket read timeout in seconds
      • setTryGzip

        void setTryGzip​(boolean tryGZIP)
        Parameters:
        tryGZIP -
      • isTryGzip

        boolean isTryGzip()
        Returns:
        whether gzip content encoding will be attempted; defaults to false