Apache Tomcat 6.0.53

## org.apache.catalina.ssi
Class ResponseIncludeWrapper

    java.lang.Object
      javax.servlet.ServletResponseWrapper
          javax.servlet.http.HttpServletResponseWrapper
              org.apache.catalina.ssi.ResponseIncludeWrapper

All Implemented Interfaces:
  javax.servlet.http.HttpServletResponse, javax.servlet.ServletResponse

    public class ResponseIncludeWrapper

extends javax.servlet.http.HttpServletResponseWrapper

A HttpServletResponseWrapper, used from `SSIServletExternalResolver`

Author:
  Bip Thelin, David Becker

Field Summary
`protected javax.servlet.ServletOutputStream` | `captureServletOutputStream` Our ServletOutputStream
`protected long` | `lastModified`
`protected java.io.PrintWriter` | `printWriter`
`protected javax.servlet.ServletOutputStream` | `servletOutputStream`

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
`ResponseIncludeWrapper(javax.servlet.ServletContext context, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, javax.servlet.ServletOutputStream captureServletOutputStream)` Initialize our wrapper with the current HttpServletResponse and ServletOutputStream.

Method Summary
`void` | `addDateHeader(java.lang.String name, long value)` The default behavior of this method is to call addDateHeader(String name, long date) on the wrapped response object.
`void` | `addHeader(java.lang.String name, java.lang.String value)` The default behavior of this method is to return addHeader(String name, String value) on the wrapped response object.
`void` | `flushOutputStreamOrWriter()` Flush the servletOutputStream or printWriter ( only one will be non-null ) This must be called after a requestDispatcher.include, since we can't assume that the included servlet flushed its stream.
`java.lang.String` | `getContentType()` Returns the value of the `content-type` header field.
`long` | `getLastModified()` Returns the value of the `last-modified` header field.
`javax.servlet.ServletOutputStream` | `getOutputStream()` Return a OutputStream, throws and exception if a printwriter already been returned.
`java.io.PrintWriter` | `getWriter()` Return a printwriter, throws and exception if a OutputStream already been returned.
`void` | `setContentType(java.lang.String mime)` Sets the value of the `content-type` header field.
`void` | `setDateHeader(java.lang.String name, long value)` The default behavior of this method is to call setDateHeader(String name, long date) on the wrapped response object.
`void` | `setHeader(java.lang.String name, java.lang.String value)` The default behavior of this method is to return setHeader(String name, String value) on the wrapped response object.
`void` | `setLastModified(long lastModified)` Sets the value of the `last-modified` header field.

Methods inherited from class javax.servlet.http.HttpServletResponseWrapper
`addCookie, addIntHeader, containsHeader, encodeRedirectUrl, encodeRedirectURL, encodeUrl, encodeURL, sendError, sendError, sendRedirect, 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`

Field Detail

### lastModified

    protected long lastModified

### captureServletOutputStream

    protected javax.servlet.ServletOutputStream captureServletOutputStream

  Our ServletOutputStream

### servletOutputStream

    protected javax.servlet.ServletOutputStream servletOutputStream

### printWriter

    protected java.io.PrintWriter printWriter

Constructor Detail

### ResponseIncludeWrapper

    public ResponseIncludeWrapper(javax.servlet.ServletContext context,
                                  javax.servlet.http.HttpServletRequest request,
                                  javax.servlet.http.HttpServletResponse response,
                                  javax.servlet.ServletOutputStream captureServletOutputStream)

  Initialize our wrapper with the current HttpServletResponse and ServletOutputStream.

  Parameters:
    `context` - The servlet context
    `request` - The HttpServletResponse to use
    `response` - The response to use
    `captureServletOutputStream` - The ServletOutputStream to use

Method Detail

### flushOutputStreamOrWriter

    public void flushOutputStreamOrWriter()
                                   throws java.io.IOException

  Flush the servletOutputStream or printWriter ( only one will be non-null ) This must be called after a requestDispatcher.include, since we can't assume that the included servlet flushed its stream.

  Throws:
    `java.io.IOException`

### getWriter

    public java.io.PrintWriter getWriter()
                                  throws java.io.IOException

  Return a printwriter, throws and exception if a OutputStream already been returned.

  Specified by:
    `getWriter` in interface `javax.servlet.ServletResponse`
  Overrides:
    `getWriter` in class `javax.servlet.ServletResponseWrapper`
  Returns:
    a PrintWriter object
  Throws:
    `java.io.IOException` - if the outputstream already been called
  See Also:
    `ServletResponse.getOutputStream()`, `ServletResponse.setCharacterEncoding(java.lang.String)`

### getOutputStream

    public javax.servlet.ServletOutputStream getOutputStream()
                                                      throws java.io.IOException

  Return a OutputStream, throws and exception if a printwriter already been returned.

  Specified by:
    `getOutputStream` in interface `javax.servlet.ServletResponse`
  Overrides:
    `getOutputStream` in class `javax.servlet.ServletResponseWrapper`
  Returns:
    a OutputStream object
  Throws:
    `java.io.IOException` - if the printwriter already been called
  See Also:
    `ServletResponse.getWriter()`

### getLastModified

    public long getLastModified()

  Returns the value of the `last-modified` header field. The result is the number of milliseconds since January 1, 1970 GMT.

  Returns:
    the date the resource referenced by this `ResponseIncludeWrapper` was last modified, or -1 if not known.

### setLastModified

    public void setLastModified(long lastModified)

  Sets the value of the `last-modified` header field.

  Parameters:
    `lastModified` - The number of milliseconds since January 1, 1970 GMT.

### getContentType

    public java.lang.String getContentType()

  Returns the value of the `content-type` header field.

  Specified by:
    `getContentType` in interface `javax.servlet.ServletResponse`
  Overrides:
    `getContentType` in class `javax.servlet.ServletResponseWrapper`
  Returns:
    the content type of the resource referenced by this `ResponseIncludeWrapper`, or `null` if not known.

### setContentType

    public void setContentType(java.lang.String mime)

  Sets the value of the `content-type` header field.

  Specified by:
    `setContentType` in interface `javax.servlet.ServletResponse`
  Overrides:
    `setContentType` in class `javax.servlet.ServletResponseWrapper`
  Parameters:
    `mime` - a mime type
  See Also:
    `ServletResponse.setLocale(java.util.Locale)`, `ServletResponse.setCharacterEncoding(java.lang.String)`, `ServletResponse.getOutputStream()`, `ServletResponse.getWriter()`

### addDateHeader

    public void addDateHeader(java.lang.String name,
                              long value)

  Description copied from class: `javax.servlet.http.HttpServletResponseWrapper`
  The default behavior of this method is to call addDateHeader(String name, long date) on the wrapped response object.

  Specified by:
    `addDateHeader` in interface `javax.servlet.http.HttpServletResponse`
  Overrides:
    `addDateHeader` in class `javax.servlet.http.HttpServletResponseWrapper`
  Parameters:
    `name` - the name of the header to set
    `value` - the additional date value
  See Also:
    `HttpServletResponse.setDateHeader(java.lang.String, long)`

### addHeader

    public void addHeader(java.lang.String name,
                          java.lang.String value)

  Description copied from class: `javax.servlet.http.HttpServletResponseWrapper`
  The default behavior of this method is to return addHeader(String name, String value) on the wrapped response object.

  Specified by:
    `addHeader` in interface `javax.servlet.http.HttpServletResponse`
  Overrides:
    `addHeader` in class `javax.servlet.http.HttpServletResponseWrapper`
  Parameters:
    `name` - the name of the header
    `value` - the additional header value If it contains octet string, it should be encoded according to RFC 2047 (http://www.ietf.org/rfc/rfc2047.txt)
  See Also:
    `HttpServletResponse.setHeader(java.lang.String, java.lang.String)`

### setDateHeader

    public void setDateHeader(java.lang.String name,
                              long value)

  Description copied from class: `javax.servlet.http.HttpServletResponseWrapper`
  The default behavior of this method is to call setDateHeader(String name, long date) on the wrapped response object.

  Specified by:
    `setDateHeader` in interface `javax.servlet.http.HttpServletResponse`
  Overrides:
    `setDateHeader` in class `javax.servlet.http.HttpServletResponseWrapper`
  Parameters:
    `name` - the name of the header to set
    `value` - the assigned date value
  See Also:
    `HttpServletResponse.containsHeader(java.lang.String)`, `HttpServletResponse.addDateHeader(java.lang.String, long)`

### setHeader

    public void setHeader(java.lang.String name,
                          java.lang.String value)

  Description copied from class: `javax.servlet.http.HttpServletResponseWrapper`
  The default behavior of this method is to return setHeader(String name, String value) on the wrapped response object.

  Specified by:
    `setHeader` in interface `javax.servlet.http.HttpServletResponse`
  Overrides:
    `setHeader` in class `javax.servlet.http.HttpServletResponseWrapper`
  Parameters:
    `name` - the name of the header
    `value` - the header value If it contains octet string, it should be encoded according to RFC 2047 (http://www.ietf.org/rfc/rfc2047.txt)
  See Also:
    `HttpServletResponse.containsHeader(java.lang.String)`, `HttpServletResponse.addHeader(java.lang.String, java.lang.String)`

Apache Tomcat 6.0.53

Copyright © 2000-2017 Apache Software Foundation. All Rights Reserved.