nl.imsystems.atag.servlet
Class ResponseWrapper

java.lang.Object
  extended by javax.servlet.ServletResponseWrapper
      extended by javax.servlet.http.HttpServletResponseWrapper
          extended by nl.imsystems.atag.servlet.ResponseWrapper
All Implemented Interfaces:
HttpServletResponse, ServletResponse

public class ResponseWrapper
extends HttpServletResponseWrapper

Wraps a HttpServletResponse in order to buffer output written to the streams by individual components.

Author:
kayvan


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_FOUND, 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
ResponseWrapper(HttpServletResponse res)
           
 
Method Summary
 void addHeader(String name, String value)
          Adds any header other than Content-Type.
 void beginRenderPhase()
          Used to disable the warning system for app controller attemting to write to the response when handeling an ATag event.
 void flushBuffer()
          flushes the internal buffers.
 byte[] getContentBytes()
          Returns bufferd data as a byte[].
 String getContentString()
          Returns bufferd data as a String.
 ServletOutputStream getOutputStream()
          Gets the buffred bin Stream.
 PrintWriter getWriter()
          Gets the buffered Writer.
 boolean isCommitted()
          Will always return false.
 void reset()
          Does nothing.
 void resetBuffer()
          Does nothing.
 void resetStreams()
          Resets the buffers so that the response object can be used to render the next component.
 void setContentType(String type)
          Does nothing.
 
Methods inherited from class javax.servlet.http.HttpServletResponseWrapper
addCookie, addDateHeader, addIntHeader, containsHeader, encodeRedirectUrl, encodeRedirectURL, encodeUrl, encodeURL, sendError, sendError, sendRedirect, setDateHeader, setHeader, setIntHeader, setStatus, setStatus
 
Methods inherited from class javax.servlet.ServletResponseWrapper
getBufferSize, getCharacterEncoding, getContentType, getLocale, getResponse, setBufferSize, setCharacterEncoding, setContentLength, 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, getContentType, getLocale, setBufferSize, setCharacterEncoding, setContentLength, setLocale
 

Constructor Detail

ResponseWrapper

public ResponseWrapper(HttpServletResponse res)
Method Detail

getContentString

public String getContentString()
Returns bufferd data as a String. This method will return a blank String if the bin Stream was used for writing the content.

Returns:
Bufferd data as a String.

getContentBytes

public byte[] getContentBytes()
Returns bufferd data as a byte[]. This method will return an empty byte[] if the Writer was used for writing the content.

Returns:
Bufferd data as a byte[].

beginRenderPhase

public void beginRenderPhase()
Used to disable the warning system for app controller attemting to write to the response when handeling an ATag event.


setContentType

public void setContentType(String type)
Does nothing.

Specified by:
setContentType in interface ServletResponse
Overrides:
setContentType in class ServletResponseWrapper

addHeader

public void addHeader(String name,
                      String value)
Adds any header other than Content-Type.

Specified by:
addHeader in interface HttpServletResponse
Overrides:
addHeader in class HttpServletResponseWrapper

resetStreams

public void resetStreams()
Resets the buffers so that the response object can be used to render the next component.


getOutputStream

public ServletOutputStream getOutputStream()
                                    throws IOException
Gets the buffred bin Stream.

Specified by:
getOutputStream in interface ServletResponse
Overrides:
getOutputStream in class ServletResponseWrapper
Throws:
IOException

getWriter

public PrintWriter getWriter()
                      throws IOException
Gets the buffered Writer.

Specified by:
getWriter in interface ServletResponse
Overrides:
getWriter in class ServletResponseWrapper
Throws:
IOException

flushBuffer

public void flushBuffer()
                 throws IOException
flushes the internal buffers.

Specified by:
flushBuffer in interface ServletResponse
Overrides:
flushBuffer in class ServletResponseWrapper
Throws:
IOException

isCommitted

public boolean isCommitted()
Will always return false.

Specified by:
isCommitted in interface ServletResponse
Overrides:
isCommitted in class ServletResponseWrapper

reset

public void reset()
Does nothing.

Specified by:
reset in interface ServletResponse
Overrides:
reset in class ServletResponseWrapper

resetBuffer

public void resetBuffer()
Does nothing.

Specified by:
resetBuffer in interface ServletResponse
Overrides:
resetBuffer in class ServletResponseWrapper