com.opensymphony.oscache.web.filter
Class CacheHttpServletResponseWrapper

java.lang.Object
  extended byjavax.servlet.ServletResponseWrapper
      extended byjavax.servlet.http.HttpServletResponseWrapper
          extended bycom.opensymphony.oscache.web.filter.CacheHttpServletResponseWrapper
All Implemented Interfaces:
javax.servlet.http.HttpServletResponse, javax.servlet.ServletResponse

public class CacheHttpServletResponseWrapper
extends javax.servlet.http.HttpServletResponseWrapper

CacheServletResponse is a serialized representation of a response

Version:
$Revision: 1.3 $
Author:
Serge Knystautas

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
CacheHttpServletResponseWrapper(javax.servlet.http.HttpServletResponse response)
          Constructor
 
Method Summary
 void flushBuffer()
           
 ResponseContent getContent()
          Get a response content
 javax.servlet.ServletOutputStream getOutputStream()
          Get an output stream
 int getStatus()
          Retrieves the captured HttpResponse status.
 java.io.PrintWriter getWriter()
          Get a print writer
 void sendError(int status)
          We override this so we can catch the response status.
 void sendError(int status, java.lang.String string)
          We override this so we can catch the response status.
 void sendRedirect(java.lang.String location)
           
 void setContentType(java.lang.String value)
          Set the content type
 void setDateHeader(java.lang.String name, long value)
          Set the date of a header
 void setHeader(java.lang.String name, java.lang.String value)
          Set a header field
 void setIntHeader(java.lang.String name, int value)
          Set the int value of the header
 void setLocale(java.util.Locale value)
          Set the locale
 void setStatus(int status)
          We override this so we can catch the response status.
 void setStatus(int status, java.lang.String string)
          We override this so we can catch the response status.
 
Methods inherited from class javax.servlet.http.HttpServletResponseWrapper
addCookie, addDateHeader, addHeader, addIntHeader, containsHeader, encodeRedirectUrl, encodeRedirectURL, encodeUrl, encodeURL
 
Methods inherited from class javax.servlet.ServletResponseWrapper
getBufferSize, getCharacterEncoding, getLocale, getResponse, isCommitted, reset, resetBuffer, setBufferSize, setContentLength, 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
getBufferSize, getCharacterEncoding, getLocale, isCommitted, reset, resetBuffer, setBufferSize, setContentLength
 

Constructor Detail

CacheHttpServletResponseWrapper

public CacheHttpServletResponseWrapper(javax.servlet.http.HttpServletResponse response)
Constructor

Parameters:
response - The servlet response
Method Detail

getContent

public ResponseContent getContent()
Get a response content

Returns:
The content

setContentType

public void setContentType(java.lang.String value)
Set the content type

Parameters:
value - The content type

setDateHeader

public void setDateHeader(java.lang.String name,
                          long value)
Set the date of a header

Parameters:
name - The header name
value - The date

setHeader

public void setHeader(java.lang.String name,
                      java.lang.String value)
Set a header field

Parameters:
name - The header name
value - The header value

setIntHeader

public void setIntHeader(java.lang.String name,
                         int value)
Set the int value of the header

Parameters:
name - The header name
value - The int value

setStatus

public void setStatus(int status)
We override this so we can catch the response status. Only responses with a status of 200 (SC_OK) will be cached.


sendError

public void sendError(int status,
                      java.lang.String string)
               throws java.io.IOException
We override this so we can catch the response status. Only responses with a status of 200 (SC_OK) will be cached.

Throws:
java.io.IOException

sendError

public void sendError(int status)
               throws java.io.IOException
We override this so we can catch the response status. Only responses with a status of 200 (SC_OK) will be cached.

Throws:
java.io.IOException

setStatus

public void setStatus(int status,
                      java.lang.String string)
We override this so we can catch the response status. Only responses with a status of 200 (SC_OK) will be cached.


sendRedirect

public void sendRedirect(java.lang.String location)
                  throws java.io.IOException
Throws:
java.io.IOException

getStatus

public int getStatus()
Retrieves the captured HttpResponse status.


setLocale

public void setLocale(java.util.Locale value)
Set the locale

Parameters:
value - The locale

getOutputStream

public javax.servlet.ServletOutputStream getOutputStream()
                                                  throws java.io.IOException
Get an output stream

Throws:
java.io.IOException

getWriter

public java.io.PrintWriter getWriter()
                              throws java.io.IOException
Get a print writer

Throws:
java.io.IOException

flushBuffer

public void flushBuffer()
                 throws java.io.IOException
Throws:
java.io.IOException

See www.opensymphony.com for more information.