| java.lang.Object HTTPClient.HTTPResponse
HTTPResponse | public class HTTPResponse implements GlobalConstants,HTTPClientModuleConstants(Code) | | This defines the http-response class returned by the requests. It's
basically a wrapper around the Response class which first lets all
the modules handle the response before finally giving the info to
the user.
version: 0.3-2 18/06/1999 author: Ronald Tschalär since: 0.3 |
HTTPResponse | HTTPResponse(HTTPClientModule[] modules, int timeout, Request orig)(Code) | | Creates a new HTTPResponse.
Parameters: modules - the list of modules handling this response Parameters: timeout - the timeout to be used on stream read()'s |
getData | public synchronized byte[] getData() throws IOException, ModuleException(Code) | | Reads all the response data into a byte array. Note that this method
won't return until all the data has been received (so for
instance don't invoke this method if the server is doing a server
push). If getInputStream() had been previously invoked
then this method only returns any unread data remaining on the stream
and then closes it.
Note to the unwarry: code like
System.out.println("The data: " + resp.getData())
will probably not do what you want - use
System.out.println("The data: " + new String(resp.getData()))
instead.
See Also: HTTPResponse.getInputStream() an array containing the data (body) returned. If no datawas returned then it's set to a zero-length array. exception: IOException - If any io exception occured while readingthe data exception: ModuleException - if any module encounters an exception. |
getEffectiveURI | final public URI getEffectiveURI() throws IOException, ModuleException(Code) | | Get the final URI of the document. If the request was redirected
via the "moved" (301, 302, 303, or 307) return status this returns
the URI used in the last redirection; otherwise it returns the
original URI.
the effective URI exception: IOException - If any exception occurs on the socket. exception: ModuleException - if any module encounters an exception. |
getEffectiveURL | final public URL getEffectiveURL() throws IOException, ModuleException(Code) | | Get the final URL of the document. This is set if the original
request was deferred via the "moved" (301, 302, or 303) return
status.
the effective URL, or null if no redirection occured exception: IOException - If any exception occurs on the socket. exception: ModuleException - if any module encounters an exception. See Also: HTTPResponse.getEffectiveURI |
getHeaderAsDate | public Date getHeaderAsDate(String hdr) throws IOException, IllegalArgumentException, ModuleException(Code) | | Retrieves the value for a given header. The value is parsed as a
date; if this fails it is parsed as a long representing the number
of seconds since 12:00 AM, Jan 1st, 1970. If this also fails an
exception is thrown.
Note: When sending dates use Util.httpDate().
Parameters: hdr - the header name. the value for the header, or null if non-existent. exception: IllegalArgumentException - if the header's value is neither alegal date nor a number. exception: IOException - if any exception occurs on the socket. exception: ModuleException - if any module encounters an exception. |
getInputStream | public synchronized InputStream getInputStream() throws IOException, ModuleException(Code) | | Gets an input stream from which the returned data can be read. Note
that if getData() had been previously invoked it will
actually return a ByteArrayInputStream created from that data.
See Also: HTTPResponse.getData() the InputStream. exception: IOException - If any exception occurs on the socket. exception: ModuleException - if any module encounters an exception. |
getOriginalURI | final public URI getOriginalURI()(Code) | | Get the original URI used in the request.
the URI used in primary request |
getStatusCode | final public int getStatusCode() throws IOException, ModuleException(Code) | | Give the status code for this request. These are grouped as follows:
- 1xx - Informational (new in HTTP/1.1)
- 2xx - Success
- 3xx - Redirection
- 4xx - Client Error
- 5xx - Server Error
exception: IOException - if any exception occurs on the socket. exception: ModuleException - if any module encounters an exception. |
getTimeout | int getTimeout()(Code) | | |
getTrailer | public String getTrailer(String trailer) throws IOException, ModuleException(Code) | | Retrieves the value for a given trailer. This should not be invoked
until all response data has been read. If invoked before it will
call getData() to force the data to be read.
Parameters: trailer - the trailer name. the value for the trailer, or null if non-existent. exception: IOException - If any exception occurs on the socket. exception: ModuleException - if any module encounters an exception. See Also: HTTPResponse.getData() |
getTrailerAsDate | public Date getTrailerAsDate(String trailer) throws IOException, IllegalArgumentException, ModuleException(Code) | | Retrieves the value for a given trailer. The value is parsed as a
date; if this fails it is parsed as a long representing the number
of seconds since 12:00 AM, Jan 1st, 1970. If this also fails an
IllegalArgumentException is thrown.
Note: When sending dates use Util.httpDate().
Parameters: trailer - the trailer name. the value for the trailer, or null if non-existent. exception: IllegalArgumentException - if the trailer's value is neither alegal date nor a number. exception: IOException - if any exception occurs on the socket. exception: ModuleException - if any module encounters an exception. |
handleResponse | synchronized boolean handleResponse() throws IOException, ModuleException(Code) | | Processes a Response. This is done by calling the response handler
in each module. When all is done, the various fields of this instance
are intialized from the last Response.
exception: IOException - if any handler throws an IOException. exception: ModuleException - if any module encounters an exception. true if a new request was generated. This is used for internalsubrequests only |
init | void init(Response resp)(Code) | | Copies the relevant fields from Response and marks this as initialized.
Parameters: resp - the Response class to copy from |
invokeTrailerHandlers | void invokeTrailerHandlers(boolean force) throws IOException, ModuleException(Code) | | This is invoked by the RespInputStream when it is close()'d. It
just invokes the trailer handler in each module.
Parameters: force - invoke the handlers even if not initialized yet? exception: IOException - if thrown by any module exception: ModuleException - if thrown by any module |
markAborted | void markAborted()(Code) | | Mark this request as having been aborted. It's invoked by
HTTPConnection.stop().
|
set | void set(Request req, Response resp)(Code) | | Parameters: req - the request Parameters: resp - the response |
toString | public String toString()(Code) | | produces a full list of headers and their values, one per line.
a string containing the headers |
|
|