Class HttpConnection.Response

    • Field Detail

      • statusCode

        private int statusCode
      • statusMessage

        private java.lang.String statusMessage
      • byteData

        private java.nio.ByteBuffer byteData
      • bodyStream

        private java.io.InputStream bodyStream
      • conn

        private java.net.HttpURLConnection conn
      • charset

        private java.lang.String charset
      • contentType

        private java.lang.String contentType
      • executed

        private boolean executed
      • inputStreamRead

        private boolean inputStreamRead
      • numRedirects

        private int numRedirects
      • xmlContentTypeRxp

        private static final java.util.regex.Pattern xmlContentTypeRxp
    • Constructor Detail

      • Response

        Response()
      • Response

        private Response​(HttpConnection.Response previousResponse)
                  throws java.io.IOException
        Throws:
        java.io.IOException
    • Method Detail

      • charset

        public java.lang.String charset()
        Description copied from interface: Connection.Response
        Get the character set name of the response, derived from the content-type header.
        Specified by:
        charset in interface Connection.Response
        Returns:
        character set name
      • charset

        public HttpConnection.Response charset​(java.lang.String charset)
        Description copied from interface: Connection.Response
        Set / override the response character set. When the document body is parsed it will be with this charset.
        Specified by:
        charset in interface Connection.Response
        Parameters:
        charset - to decode body as
        Returns:
        this Response, for chaining
      • contentType

        public java.lang.String contentType()
        Description copied from interface: Connection.Response
        Get the response content type (e.g. "text/html");
        Specified by:
        contentType in interface Connection.Response
        Returns:
        the response content type
      • prepareByteData

        private void prepareByteData()
      • body

        public java.lang.String body()
        Description copied from interface: Connection.Response
        Get the body of the response as a plain string.
        Specified by:
        body in interface Connection.Response
        Returns:
        body
      • bodyStream

        public java.io.BufferedInputStream bodyStream()
        Description copied from interface: Connection.Response
        Get the body of the response as a (buffered) InputStream. You should close the input stream when you're done with it. Other body methods (like bufferUp, body, parse, etc) will not work in conjunction with this method.

        This method is useful for writing large responses to disk, without buffering them completely into memory first.

        Specified by:
        bodyStream in interface Connection.Response
        Returns:
        the response body input stream
      • createConnection

        private static java.net.HttpURLConnection createConnection​(Connection.Request req)
                                                            throws java.io.IOException
        Throws:
        java.io.IOException
      • safeClose

        private void safeClose()
        Call on completion of stream read, to close the body (or error) stream
      • setupFromConnection

        private void setupFromConnection​(java.net.HttpURLConnection conn,
                                         HttpConnection.Response previousResponse)
                                  throws java.io.IOException
        Throws:
        java.io.IOException
      • createHeaderMap

        private static java.util.LinkedHashMap<java.lang.String,​java.util.List<java.lang.String>> createHeaderMap​(java.net.HttpURLConnection conn)
      • processResponseHeaders

        void processResponseHeaders​(java.util.Map<java.lang.String,​java.util.List<java.lang.String>> resHeaders)
      • setOutputContentType

        private static java.lang.String setOutputContentType​(Connection.Request req)
      • writePost

        private static void writePost​(Connection.Request req,
                                      java.io.OutputStream outputStream,
                                      java.lang.String bound)
                               throws java.io.IOException
        Throws:
        java.io.IOException
      • getRequestCookieString

        private static java.lang.String getRequestCookieString​(Connection.Request req)
      • serialiseRequestUrl

        private static void serialiseRequestUrl​(Connection.Request req)
                                         throws java.io.IOException
        Throws:
        java.io.IOException