org.talika.tarsis.filters.gzip
Class GZIPResponseWrapper

java.lang.Object
  extended byjavax.servlet.ServletResponseWrapper
      extended byjavax.servlet.http.HttpServletResponseWrapper
          extended byorg.talika.tarsis.filters.gzip.GZIPResponseWrapper
All Implemented Interfaces:
javax.servlet.http.HttpServletResponse, javax.servlet.ServletResponse

public final class GZIPResponseWrapper
extends javax.servlet.http.HttpServletResponseWrapper

Provides a convenient implementation of the HttpServletResponse interface that permits us replace default ServletOutputStream by our GZIPServletOutputStream.

Version:
$Revision: 122 $
Author:
Jose M. Palomar

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
GZIPResponseWrapper(javax.servlet.http.HttpServletResponse response)
          Constructs a response adaptor wrapping the given response.
GZIPResponseWrapper(javax.servlet.http.HttpServletResponse response, int bufferSize)
          Constructs a response adaptor wrapping the given response and buffer size.
 
Method Summary
 void flushBuffer()
          Forces any content in the buffer to be written to the client.
 javax.servlet.ServletOutputStream getOutputStream()
          Returns a ServletOutputStream suitable for writing binary data in the response.
 java.io.PrintWriter getWriter()
          Returns a PrintWriter object that can send character text to the client.
 void setContentLength(int length)
          Sets the length of the content body in the response In HTTP servlets, this method sets the HTTP Content-Length header.
 
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
getBufferSize, getCharacterEncoding, getLocale, getResponse, isCommitted, reset, resetBuffer, setBufferSize, 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
getBufferSize, getCharacterEncoding, getLocale, isCommitted, reset, resetBuffer, setBufferSize, setContentType, setLocale
 

Constructor Detail

GZIPResponseWrapper

public GZIPResponseWrapper(javax.servlet.http.HttpServletResponse response)
Constructs a response adaptor wrapping the given response.

Parameters:
response - HttpServletResponse reponse to be wrapped.

GZIPResponseWrapper

public GZIPResponseWrapper(javax.servlet.http.HttpServletResponse response,
                           int bufferSize)
Constructs a response adaptor wrapping the given response and buffer size.

Parameters:
response - HttpServletResponse reponse to be wrapped.
bufferSize - int buffer size.
Method Detail

flushBuffer

public void flushBuffer()
                 throws java.io.IOException
Forces any content in the buffer to be written to the client. A call to this method automatically commits the response, meaning the status code and headers will be written.

Throws:
java.io.IOException - if an input or output exception occurs.
See Also:
ServletResponse.flushBuffer()

getOutputStream

public javax.servlet.ServletOutputStream getOutputStream()
                                                  throws java.io.IOException
Returns a ServletOutputStream suitable for writing binary data in the response. The servlet container does not encode the binary data.

Returns:
ServletOutputStream a ServletOutputStream for writing binary data.
Throws:
java.io.IOException - if an input or output exception occurs.
See Also:
ServletResponse.getOutputStream()

getWriter

public java.io.PrintWriter getWriter()
                              throws java.io.IOException
Returns a PrintWriter object that can send character text to the client.

Returns:
PrintWriter a PrintWriter object that can return character data to the client.
Throws:
java.io.IOException - if an input or output exception occurs.
See Also:
ServletResponse.getWriter()

setContentLength

public void setContentLength(int length)
Sets the length of the content body in the response In HTTP servlets, this method sets the HTTP Content-Length header.

Parameters:
length - int an integer specifying the length of the content being returned to the client; sets the Content-Length header
See Also:
ServletResponse.setContentLength(int)


Copyright © 2002-2005 Talika Open Source Group. All Rights Reserved.