org.xwiki.portlet.controller
Class DispatchedMimeResponse

java.lang.Object
  extended by javax.servlet.ServletResponseWrapper
      extended by javax.servlet.http.HttpServletResponseWrapper
          extended by org.xwiki.portlet.controller.DispatchedMimeResponse
All Implemented Interfaces:
javax.servlet.http.HttpServletResponse, javax.servlet.ServletResponse

public class DispatchedMimeResponse
extends javax.servlet.http.HttpServletResponseWrapper

Wraps a servlet response object dispatched from a portlet's render or serve resource method.

Version:
$Id: 33916a8615bd4933c6acb173af5f93c621a5990b $

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
DispatchedMimeResponse(javax.servlet.http.HttpServletResponse response, Set<String> knownMimeTypes)
          Wraps the given servlet response that has been dispatched from a portlet's render or serve resource method.
 
Method Summary
 void addHeader(String name, String value)
           
 String getContentType()
           
 String getMediaType()
           
 javax.servlet.ServletOutputStream getOutputStream()
           
 Reader getReader()
           
 String getRedirect()
           
 PrintWriter getWriter()
           
 boolean isOutputIntercepted()
           
 void sendRedirect(String location)
           
 void setContentType(String contentType)
           
 void setHeader(String name, String value)
           
 
Methods inherited from class javax.servlet.http.HttpServletResponseWrapper
addCookie, addDateHeader, addIntHeader, containsHeader, encodeRedirectUrl, encodeRedirectURL, encodeUrl, encodeURL, sendError, sendError, setDateHeader, setIntHeader, setStatus, setStatus
 
Methods inherited from class javax.servlet.ServletResponseWrapper
flushBuffer, getBufferSize, getCharacterEncoding, getLocale, getResponse, isCommitted, reset, resetBuffer, 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
flushBuffer, getBufferSize, getCharacterEncoding, getLocale, isCommitted, reset, resetBuffer, setBufferSize, setCharacterEncoding, setContentLength, setLocale
 

Constructor Detail

DispatchedMimeResponse

public DispatchedMimeResponse(javax.servlet.http.HttpServletResponse response,
                              Set<String> knownMimeTypes)
Wraps the given servlet response that has been dispatched from a portlet's render or serve resource method.

Parameters:
response - the response object to be wrapped
knownMimeTypes - the set of known mime types, i.e. the content types for which the output is not preserved
Method Detail

getOutputStream

public javax.servlet.ServletOutputStream getOutputStream()
                                                  throws IOException
Specified by:
getOutputStream in interface javax.servlet.ServletResponse
Overrides:
getOutputStream in class javax.servlet.ServletResponseWrapper
Throws:
IOException

getWriter

public PrintWriter getWriter()
                      throws IOException
Specified by:
getWriter in interface javax.servlet.ServletResponse
Overrides:
getWriter in class javax.servlet.ServletResponseWrapper
Throws:
IOException

isOutputIntercepted

public boolean isOutputIntercepted()
Returns:
true if the response output was intercepted and not committed to the original response object, false otherwise

getReader

public Reader getReader()
                 throws UnsupportedEncodingException
Returns:
a reader that can be used to access the content written using either the writer returned by getWriter() or the output stream returned by getOutputStream()
Throws:
UnsupportedEncodingException - if the encoding returned by ServletResponseWrapper.getCharacterEncoding() is unsupported

getMediaType

public String getMediaType()
Returns:
the media type of the resource that is being served

setContentType

public void setContentType(String contentType)
Specified by:
setContentType in interface javax.servlet.ServletResponse
Overrides:
setContentType in class javax.servlet.ServletResponseWrapper

getContentType

public String getContentType()
Specified by:
getContentType in interface javax.servlet.ServletResponse
Overrides:
getContentType in class javax.servlet.ServletResponseWrapper

sendRedirect

public void sendRedirect(String location)
                  throws IOException
Specified by:
sendRedirect in interface javax.servlet.http.HttpServletResponse
Overrides:
sendRedirect in class javax.servlet.http.HttpServletResponseWrapper
Throws:
IOException

getRedirect

public String getRedirect()
Returns:
the redirect location

setHeader

public void setHeader(String name,
                      String value)
Specified by:
setHeader in interface javax.servlet.http.HttpServletResponse
Overrides:
setHeader in class javax.servlet.http.HttpServletResponseWrapper

addHeader

public void addHeader(String name,
                      String value)
Specified by:
addHeader in interface javax.servlet.http.HttpServletResponse
Overrides:
addHeader in class javax.servlet.http.HttpServletResponseWrapper


Copyright © 2004-2013 XWiki. All Rights Reserved.