org.jdesktop.http
Class Response

java.lang.Object
  extended by org.jdesktop.http.Response

public class Response
extends Object

Represents a Response from an http Request. Instances of this class are created as a result of executing a Request in a Session. They are not created manually.

Responses can access all of the http Headers that were returned with the response, as well as the status code, status message, and response body. In addition, the url that this response originated from is available. This is useful when constructing further requests based on relative url paths.

As with Request, the body of the Response is treated specially. Since the response may be very large (like, say, downloading an operating system) it is critical that the responses not be cached. As a result, once the response body has been read, any futher calls to getResponseBody may result in an exception.


Method Summary
 String getBaseUrl()
          Gets the url that was used to produce this Response.
 String getBody()
          Gets the response body as a String.
 byte[] getBodyAsBytes()
          Gets a byte array representing the body of the response.
 Reader getBodyAsReader()
          Gets a Reader from which the body of the response may be read.
 InputStream getBodyAsStream()
          Gets an InputStream from which the body of the response may be read.
 Header getHeader(String name)
          Returns the Header with the given name, or null if there is no such header.
 Header[] getHeaders()
          Gets an array of all the Headers for this Request.
 Date getLastModified()
          Gets the Date specified in the Last-Modified header, if any.
 StatusCode getStatusCode()
          Gets the status code.
 String getStatusText()
          Returns the status text.
 String toString()
          Returns a string representation of the object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

getHeader

public Header getHeader(String name)
Returns the Header with the given name, or null if there is no such header. Comparisons with header names are done in a case insensitive manner.

Parameters:
name - the name to look for. This must not be null.
Returns:
the Header with the given name.

getHeaders

public Header[] getHeaders()
Gets an array of all the Headers for this Request. This array will never be null. Ordering of items is not guaranteed.

Returns:
the array of Headers for this request

getLastModified

public Date getLastModified()
Gets the Date specified in the Last-Modified header, if any. This is a special convenience method for reading the Last-Modified value. If the value associated with Last-Modified cannot be properly decoded, or if Last-Modified is not specified, then null is returned.

Returns:

getStatusCode

public StatusCode getStatusCode()
Gets the status code. See StatusCode for the definitive list of status codes.

Returns:
a code indicating the status of the response. This is never null.

getStatusText

public String getStatusText()
Returns the status text.

Returns:
the status text

getBodyAsStream

public InputStream getBodyAsStream()
Gets an InputStream from which the body of the response may be read.


getBodyAsReader

public Reader getBodyAsReader()
Gets a Reader from which the body of the response may be read.


getBodyAsBytes

public byte[] getBodyAsBytes()
Gets a byte array representing the body of the response.


getBody

public String getBody()
Gets the response body as a String.


getBaseUrl

public String getBaseUrl()
Gets the url that was used to produce this Response. This url will not contain a query string (that is, no parameters).


toString

public String toString()
Description copied from class: java.lang.Object
Returns a string representation of the object. In general, the toString method returns a string that "textually represents" this object. The result should be a concise but informative representation that is easy for a person to read. It is recommended that all subclasses override this method.

The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:

 getClass().getName() + '@' + Integer.toHexString(hashCode())
 

Overrides:
toString in class Object
Returns:
a string representation of the object.