| 
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjavax.servlet.ServletResponseWrapper
javax.servlet.http.HttpServletResponseWrapper
org.deegree.services.controller.utils.HttpResponseBuffer
public class HttpResponseBuffer
Custom HttpServletResponseWrapper that buffers all written data internally and will only send the result when
 flushBuffer() is called.
 
This allows for two things:
 This wrapper allows the change between getWriter() and getOutputStream() after reset() was
 called. This is unlike the original servlet API that throws an IllegalStateException when getWriter is called
 after getOutputStream, or vice versa.
 
| 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 | |
|---|---|
HttpResponseBuffer(javax.servlet.http.HttpServletResponse response)
 | 
|
| Method Summary | |
|---|---|
 void | 
disableBuffering()
Disables the buffering of the output.  | 
 void | 
flushBuffer()
 | 
 OutputStream | 
getBuffer()
 | 
 int | 
getBufferSize()
 | 
 javax.servlet.ServletOutputStream | 
getOutputStream()
 | 
 javax.servlet.http.HttpServletResponse | 
getWrappee()
 | 
 PrintWriter | 
getWriter()
 | 
 XMLStreamWriter | 
getXMLWriter()
Returns an XMLStreamWriter for writing a response with XML content. | 
 XMLStreamWriter | 
getXMLWriter(boolean setCharacterEncoding)
Returns an XMLStreamWriter for writing a response with XML content. | 
 void | 
reset()
 | 
 void | 
validate()
Performs a schema-based validation of the response (only if the written output has been buffered and was XML).  | 
| 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 | 
|---|
getCharacterEncoding, getContentType, getLocale, getResponse, isCommitted, resetBuffer, setBufferSize, setCharacterEncoding, 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 | 
|---|
getCharacterEncoding, getContentType, getLocale, isCommitted, resetBuffer, setBufferSize, setCharacterEncoding, setContentLength, setContentType, setLocale | 
| Constructor Detail | 
|---|
public HttpResponseBuffer(javax.servlet.http.HttpServletResponse response)
response - | Method Detail | 
|---|
public javax.servlet.http.HttpServletResponse getWrappee()
public void disableBuffering()
 This method may only be called, if neither getWriter(), getOutputStream() nor
 getXMLWriter() has been called before.
 
public PrintWriter getWriter()
                      throws IOException
getWriter in interface javax.servlet.ServletResponsegetWriter in class javax.servlet.ServletResponseWrapperIOException
public javax.servlet.ServletOutputStream getOutputStream()
                                                  throws IOException
getOutputStream in interface javax.servlet.ServletResponsegetOutputStream in class javax.servlet.ServletResponseWrapperIOException
public XMLStreamWriter getXMLWriter()
                             throws IOException,
                                    XMLStreamException
XMLStreamWriter for writing a response with XML content.
 
 NOTE: This method may be called more than once -- the first call will create an XMLStreamWriter object
 and subsequent calls return the same object. This provides a convenient means to produce plain XML responses and
 SOAP wrapped response bodies with the same code.
 
XMLStreamWriter for writing the response, with XML preamble already written
IOException
XMLStreamException
public XMLStreamWriter getXMLWriter(boolean setCharacterEncoding)
                             throws IOException,
                                    XMLStreamException
XMLStreamWriter for writing a response with XML content.
 
 NOTE: This method may be called more than once -- the first call will create an XMLStreamWriter object
 and subsequent calls return the same object. This provides a convenient means to produce plain XML responses and
 SOAP wrapped response bodies with the same code.
 
setCharacterEncoding - true, if the response's character encoding should be set, false otherwise
XMLStreamWriter for writing the response, with XML preamble already written
IOException
XMLStreamExceptionpublic void validate()
public void flushBuffer()
                 throws IOException
flushBuffer in interface javax.servlet.ServletResponseflushBuffer in class javax.servlet.ServletResponseWrapperIOExceptionpublic void reset()
reset in interface javax.servlet.ServletResponsereset in class javax.servlet.ServletResponseWrapperpublic int getBufferSize()
getBufferSize in interface javax.servlet.ServletResponsegetBufferSize in class javax.servlet.ServletResponseWrapperpublic OutputStream getBuffer()
  | 
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||