com.sitemesh.filter
Class PageResponse

java.lang.Object
  |
  +--javax.servlet.ServletResponseWrapper
        |
        +--javax.servlet.http.HttpServletResponseWrapper
              |
              +--com.sitemesh.filter.PageResponse

public class PageResponse
extends javax.servlet.http.HttpServletResponseWrapper

Implementation of HttpServletResponse that captures page data instead of sending to output stream.

Should be used in filter-chains or when forwarding/including pages using a RequestDispatcher.

In order to capture the response, getOutputStream() returns an instance of PageOutputStream .

Version:
$Revision: 1.8 $
Author:
Joe Walnes

Fields inherited from class javax.servlet.http.HttpServletResponseWrapper
response
 
Fields inherited from class javax.servlet.ServletResponseWrapper
response
 
Constructor Summary
PageResponse(javax.servlet.http.HttpServletResponse response, javax.servlet.Config config)
          Create PageResponse wrapped around existing HttpServletResponse.
 
Method Summary
 void closeStream()
          Flush and close output stream of wrapped response.
 javax.servlet.ServletOutputStream getOutputStream()
          Return instance of PageOutputStream allowing all data written to stream to be stored in temporary buffer.
 Page getPage()
          Send data written to PageOutputStream to PageParser and return Page instance.
 void setContentType(java.lang.String contentType)
          Set the content-type of the request and store it so it can be passed to the PageParser.
 
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, getWriter, isCommitted, reset, setBufferSize, setContentLength, setLocale
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PageResponse

public PageResponse(javax.servlet.http.HttpServletResponse response,
                    javax.servlet.Config config)
             throws java.io.IOException
Create PageResponse wrapped around existing HttpServletResponse.
Method Detail

setContentType

public void setContentType(java.lang.String contentType)
Set the content-type of the request and store it so it can be passed to the PageParser.
Overrides:
setContentType in class javax.servlet.ServletResponseWrapper

getOutputStream

public javax.servlet.ServletOutputStream getOutputStream()
                                                  throws java.io.IOException
Return instance of PageOutputStream allowing all data written to stream to be stored in temporary buffer.
Overrides:
getOutputStream in class javax.servlet.ServletResponseWrapper

closeStream

public void closeStream()
                 throws java.io.IOException
Flush and close output stream of wrapped response.

getPage

public Page getPage()
             throws java.io.IOException
Send data written to PageOutputStream to PageParser and return Page instance.