NAME

Wombat::Connector::HttpResponseBase - internal http response base class

SYNOPSIS

package My::Connector::HttpResponse;

use base qw(Wombat::Connector::HttpResponseBase);

DESCRIPTION

Convenience base implementation of Wombat::HttpResponse and Servlet::Http::HttpServletResponse which can be used for most connectors that implement the HTTP protocol. Only connector-specific methods need to be implemented. Extends Wombat::Connector::ResponseBase.

CONSTRUCTOR

new()

Construct and return a Wombat::Connector::HttpResponseBase instance, initializing fields appropriately. If subclasses override the constructor, they must be sure to call

$self->SUPER::new();

ACCESSOR METHODS

getCookies()

Return the list of Cookies for this Response.

addCookie($cookie)

Add the specified Cookie to those that will be included with this Response.

Parameters:

$cookie

the Servlet::Http::Cookie to be added

clearCookies()

Clear the list of Cookies for this Response;

addDateHeader($name, $date)

Add a date value for the named response header.

Parameters:

$name

the name of the response header

$date

the additional header value

setDateHeader($name, $date)

Set the date value for the named response header.

Parameters:

$name

the name of the header

$date

the header value

addHeader($name, $value)

Add a value for the named response header.

Parameters:

$name

the name of the response header

$value

the additional header value

getHeader($name)

Return the value for the first occurrence of the named response header. For all values, use getHeaderValues().

Parameters:

$name

the header name

getHeaderNames()

Return a list of all the header names set for this Response.

getHeaderValues($name)

Return the list of values for the named response header.

Parameters:

$name

the header name

setHeader($name, $value)

Set the value for the named response header.

Parameters:

$name

the name of the response header

$value

the header value

clearHeaders()

Clear the set of headers for this Response;

setLocale($loc)

Set the locale for this Response. The character encoding for this Response will be set to the encoding specified by the locale, and the Content-Language header will be set to the language specified by the locale.

Parameters:

$loc

the locale for the response

getMessage()

Return the status message for this Response.

getStatus()

Return the HTTP status code for this Response.

setStatus($code)

Set the status code for this response.

Parameters:

$code

the HTTP status code

PUBLIC METHODS

containsHeader($name)

Return a boolean value indicating whether or not the named response header has already been set.

Parameters:

$name

the name of the header

encodeRedirectURL($url)

Encode the session ID for this Response into the specified redirect URL, if necessary.

Parameters:

$url

the url to be encoded

encodeURL($url)

Encode the session ID for this Response into the specified URL, if necessary.

Parameters:

$url

the url to be encoded

finishResponse()

Perform whatever actions are required to flush and close the output handle or writer, including sending headers if the response is not already committed.

Throws:

Servlet::Util::IOException

if an input or output error occurs

flushBuffer()

Force any content in the buffer to be written to the client. Headers are automatically sent and the response is committed on the first invocation of this method.

Throws:

Servlet::Util::IOException
reset()

Clear any data that exists in the content buffer and unsets the content length and content type, all cookies and headers, and the status and message.

Throws:

Servlet::Util::IllegalStateException

if the response has already been committed

sendError($code, [$message])

Send an error response with the specified status and optional message.

Parameters:

$code

the error status code

$message

the optional descriptive message; if unspecified, the standard message for the given status code will be used.

Throws:

Servlet::Util::IOException

if an input or output exception occurs

Servlet::Util::IllegalStateException

if the response has already been committed

sendRedirect($location)

Send a temporary redirect to the specified URL.

Parameters:

$location

the redirect location URL

Throws:

Servlet::Util::IOException

if an input or output exception occurs

Servlet::Util::IllegalStateException

if the response has already been committed

PACKAGE METHODS

sendHeaders()

Write response headers to the output handle, committing the response. Usually doesn't need to be called by other classes, but will be called the first time the buffer is flushed.

recycle()

Release all object references and initialize instances variables in preparation for use or reuse of this object.

SEE ALSO

Servlet::ServletResponse, Servlet::Http::Cookie, Servlet::Util::Exception, Wombat::HttpResponse, Wombat::Connector::ResponseBase

AUTHOR

Brian Moseley, bcm@maz.org