Milyn-Smooks Version 0.4

org.milyn.delivery.response
Class ServletResponseWrapper

java.lang.Object
  extended byjavax.servlet.ServletResponseWrapper
      extended byjavax.servlet.http.HttpServletResponseWrapper
          extended byorg.milyn.delivery.response.ServletResponseWrapper
All Implemented Interfaces:
ContentDeliveryUnit, javax.servlet.http.HttpServletResponse, javax.servlet.ServletResponse
Direct Known Subclasses:
HtmlServletResponseWrapper, PassThruServletResponseWrapper

public abstract class ServletResponseWrapper
extends javax.servlet.http.HttpServletResponseWrapper
implements ContentDeliveryUnit

Abstract Servlet Response Wrapper for the Smooks framework.

Allows browser aware manipulation of a Servlet response right at the response stream level.

ServletResponseWrapper implementations are triggered by supplying "smooksrw=cdrl-selector" as a HTTP request parameter. See PassThruServletResponseWrapper.

Author:
tfennelly

Field Summary
 
Fields inherited from interface javax.servlet.http.HttpServletResponse
SC_ACCEPTED, SC_BAD_GATEWAY, SC_BAD_REQUEST, SC_CONFLICT, SC_CONTINUE, SC_CREATED, SC_EXPECTATION_FAILED, SC_FORBIDDEN, SC_GATEWAY_TIMEOUT, SC_GONE, SC_HTTP_VERSION_NOT_SUPPORTED, SC_INTERNAL_SERVER_ERROR, SC_LENGTH_REQUIRED, SC_METHOD_NOT_ALLOWED, SC_MOVED_PERMANENTLY, SC_MOVED_TEMPORARILY, SC_MULTIPLE_CHOICES, SC_NO_CONTENT, SC_NON_AUTHORITATIVE_INFORMATION, SC_NOT_ACCEPTABLE, SC_NOT_FOUND, SC_NOT_IMPLEMENTED, SC_NOT_MODIFIED, SC_OK, SC_PARTIAL_CONTENT, SC_PAYMENT_REQUIRED, SC_PRECONDITION_FAILED, SC_PROXY_AUTHENTICATION_REQUIRED, SC_REQUEST_ENTITY_TOO_LARGE, SC_REQUEST_TIMEOUT, SC_REQUEST_URI_TOO_LONG, SC_REQUESTED_RANGE_NOT_SATISFIABLE, SC_RESET_CONTENT, SC_SEE_OTHER, SC_SERVICE_UNAVAILABLE, SC_SWITCHING_PROTOCOLS, SC_TEMPORARY_REDIRECT, SC_UNAUTHORIZED, SC_UNSUPPORTED_MEDIA_TYPE, SC_USE_PROXY
 
Constructor Summary
ServletResponseWrapper(ContainerRequest containerRequest, javax.servlet.http.HttpServletResponse originalResponse)
          Constructor.
 
Method Summary
abstract  void close()
          Close response resources.
abstract  void deliverResponse()
          Transform and serialise the supplied content to the target OutputStream.
 ContainerRequest getContainerRequest()
          Get the ContainerRequest instance associated with this response wrapper.
 
Methods inherited from class javax.servlet.http.HttpServletResponseWrapper
addCookie, addDateHeader, addHeader, addIntHeader, containsHeader, encodeRedirectUrl, encodeRedirectURL, encodeUrl, encodeURL, sendError, sendError, sendRedirect, setDateHeader, setHeader, setIntHeader, setStatus, setStatus
 
Methods inherited from class javax.servlet.ServletResponseWrapper
flushBuffer, getBufferSize, getCharacterEncoding, getLocale, getOutputStream, getResponse, getWriter, isCommitted, reset, resetBuffer, setBufferSize, setContentLength, setContentType, setLocale, setResponse
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.milyn.delivery.ContentDeliveryUnit
getDetailDescription, getShortDescription
 
Methods inherited from interface javax.servlet.ServletResponse
flushBuffer, getBufferSize, getCharacterEncoding, getLocale, getOutputStream, getWriter, isCommitted, reset, resetBuffer, setBufferSize, setContentLength, setContentType, setLocale
 

Constructor Detail

ServletResponseWrapper

public ServletResponseWrapper(ContainerRequest containerRequest,
                              javax.servlet.http.HttpServletResponse originalResponse)
Constructor.

Parameters:
containerRequest - Container request.
originalResponse - Original servlet response.
Method Detail

getContainerRequest

public ContainerRequest getContainerRequest()
Get the ContainerRequest instance associated with this response wrapper.

Returns:
The ContainerRequest.

deliverResponse

public abstract void deliverResponse()
                              throws java.io.IOException
Transform and serialise the supplied content to the target OutputStream.

Throws:
java.io.IOException - Probable cause: Unable to get target ServletOutputStream.

close

public abstract void close()
Close response resources.

Ensure all resources etc are closed


Milyn-Smooks Version 0.4