Class ResponseWrapper

  • All Implemented Interfaces:
    Response

    public class ResponseWrapper
    extends Object
    implements Response
    Implementation of Response that delegates all method invocations to a delegate instance. This is used as a base class for overriding just some behaviors of Response.
    • Method Detail

      • getOutputStream

        public OutputStream getOutputStream​(String contentType)
                                     throws IOException
        Description copied from interface: Response
        Returns an OutputStream to which byte-oriented output may be sent. Invoking flush() on the stream will commit the output.
        Specified by:
        getOutputStream in interface Response
        Parameters:
        contentType - the MIME content type for the output, often "application/octet-stream" or "text/plain" or one of several others
        Throws:
        IOException
      • setStatus

        public void setStatus​(int sc)
        Description copied from interface: Response
        Sets the status code for this response. This method is used to set the return status code when there is no error (for example, for the status codes SC_OK or SC_MOVED_TEMPORARILY). If there is an error, and the caller wishes to invoke an error-page defined in the web applicaion, the sendError method should be used instead.
        Specified by:
        setStatus in interface Response
        Parameters:
        sc - the status code
      • sendError

        public void sendError​(int sc,
                              String message)
                       throws IOException
        Description copied from interface: Response
        Sends an error response to the client using the specified status. The server defaults to creating the response to look like an HTML-formatted server error page containing the specified message, setting the content type to "text/html", leaving cookies and other headers unmodified. If an error-page declaration has been made for the web application corresponding to the status code passed in, it will be served back in preference to the suggested msg parameter. If the response has already been committed, this method throws an IllegalStateException. After using this method, the response should be considered to be committed and should not be written to.
        Specified by:
        sendError in interface Response
        Parameters:
        sc - the error status code
        message - the descriptive message
        Throws:
        IOException - If an input or output exception occurs
      • setContentLength

        public void setContentLength​(int length)
        Description copied from interface: Response
        Sets the length of the content body in the response; this method sets the HTTP Content-Length header.
        Specified by:
        setContentLength in interface Response
        Parameters:
        length - the length of the content
      • setDateHeader

        public void setDateHeader​(String name,
                                  long date)
        Description copied from interface: Response
        Sets a response header with the given name and date-value. The date is specified in terms of milliseconds since the epoch. If the header had already been set, the new value overwrites the previous one.
        Specified by:
        setDateHeader in interface Response
        Parameters:
        name - the name of the header to set
        date - the assigned date value
      • setHeader

        public void setHeader​(String name,
                              String value)
        Description copied from interface: Response
        Sets a response header with the given name and value. If the header had already been set, the new value overwrites the previous one.
        Specified by:
        setHeader in interface Response
        Parameters:
        name - the name of the header to set
        value - the assigned value
      • addHeader

        public void addHeader​(String name,
                              String value)
        Description copied from interface: Response
        Adds a response header with the given name and value, not overwriting any previous values which may have already been added.
        Specified by:
        addHeader in interface Response
        Parameters:
        name - the name of the header to add
        value - the assigned value
      • setIntHeader

        public void setIntHeader​(String name,
                                 int value)
        Description copied from interface: Response
        Sets a response header with the given name and integer value. If the header had already been set, the new value overwrites the previous one.
        Specified by:
        setIntHeader in interface Response
        Parameters:
        name - the name of the header to set
        value - the assigned integer value
      • encodeURL

        public String encodeURL​(String URL)
        Description copied from interface: Response
        Encodes the URL, ensuring that a session id is included (if a session exists, and as necessary depending on the client browser's use of cookies).
        Specified by:
        encodeURL in interface Response
        Returns:
        the same URL or a different one with additional information to track the user session
      • encodeRedirectURL

        public String encodeRedirectURL​(String URL)
        Description copied from interface: Response
        Encodes the URL for use as a redirect, ensuring that a session id is included (if a session exists, and as necessary depending on the client browser's use of cookies).
        Specified by:
        encodeRedirectURL in interface Response
        Returns:
        the same URL or a different one with additional information to track the user session
      • isCommitted

        public boolean isCommitted()
        Description copied from interface: Response
        Returns true if the response has already been sent, either as a redirect or as a stream of content.
        Specified by:
        isCommitted in interface Response
        Returns:
        true if response already sent