Milyn-Smooks Version 0.4

org.milyn.delivery.response
Class PassThruServletResponseWrapper

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

public class PassThruServletResponseWrapper
extends ServletResponseWrapper

Pass-through ServletResponseWrapper.

Pass content through without performing any manipulation/transformation. Triggered by supplying "smooksrw=passthru-smooksrw" as a HTTP request parameter.

This response wrapper is configured to be applicable to all devices through the following content delivery resource configuration:

 <?xml version="1.0"?>
 <!DOCTYPE cdres-list PUBLIC "-//MILYN//DTD SMOOKS 1.0//EN" 
 			"http://www.milyn.org/dtd/cdres-list-1.0.dtd">
 
 <!--
 	This CDRL defines common delivery units shared across all browsers.
 
 	NB: See device-profile.xml
 -->
 
 <cdres-list default-uatarget="*"> 
 	<!--
 		Pass-Thru response filter configuration - this basically turns of Smooks transformation.
 	-->
 	<cdres selector="passthru-smooksrw" path="org.milyn.delivery.response.PassThruServletResponseWrapper" />
 </cdres-list>

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
PassThruServletResponseWrapper(ContainerRequest containerRequest, javax.servlet.http.HttpServletResponse originalResponse)
           
 
Method Summary
 void close()
          Close response resources.
 void deliverResponse()
          Transform and serialise the supplied content to the target OutputStream.
 java.lang.String getDetailDescription()
          Get a detail (more verbose) description of the Content Delivery Unit and what it does.
 java.lang.String getShortDescription()
          Get a short description of the Content Delivery Unit and what it does.
 
Methods inherited from class org.milyn.delivery.response.ServletResponseWrapper
getContainerRequest
 
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 javax.servlet.ServletResponse
flushBuffer, getBufferSize, getCharacterEncoding, getLocale, getOutputStream, getWriter, isCommitted, reset, resetBuffer, setBufferSize, setContentLength, setContentType, setLocale
 

Constructor Detail

PassThruServletResponseWrapper

public PassThruServletResponseWrapper(ContainerRequest containerRequest,
                                      javax.servlet.http.HttpServletResponse originalResponse)
Method Detail

deliverResponse

public void deliverResponse()
                     throws java.io.IOException
Description copied from class: ServletResponseWrapper
Transform and serialise the supplied content to the target OutputStream.

Specified by:
deliverResponse in class ServletResponseWrapper
Throws:
java.io.IOException - Probable cause: Unable to get target ServletOutputStream.

close

public void close()
Description copied from class: ServletResponseWrapper
Close response resources.

Ensure all resources etc are closed

Specified by:
close in class ServletResponseWrapper

getShortDescription

public java.lang.String getShortDescription()
Description copied from interface: ContentDeliveryUnit
Get a short description of the Content Delivery Unit and what it does.

This description will be used as the short description text in UI tools.
Example: "Unclose EMPTY Element"

Note: Implementations of this method should declare this string statically.

Returns:
Short description String.
See Also:
ContentDeliveryUnit.getDetailDescription()

getDetailDescription

public java.lang.String getDetailDescription()
Description copied from interface: ContentDeliveryUnit
Get a detail (more verbose) description of the Content Delivery Unit and what it does.

This description will be used as the detail description text in UI tools.
Example: "Replace element with an unclosed (badly formed!) equivalent if the element contains no content i.e. is empty. This is required by some older useragents."

Note: Implementations of this method should declare this string statically.

Returns:
Detail description String.
See Also:
ContentDeliveryUnit.getShortDescription()

Milyn-Smooks Version 0.4