Interface IResponse

All Known Subinterfaces:
IResponse

public interface IResponse
Interface that the webcontainer expects the response objects to implement. The methods on this interface will be called by the webcontainer in the process of writing back the response.
  • Method Details

    • setStatusCode

      void setStatusCode(int code)
      Sets the HTTP status code
      Parameters:
      code - the HTTP status code
    • getOutputStream

      javax.servlet.ServletOutputStream getOutputStream() throws IOException
      Get the OutputStream
      Returns:
      OutputStream the output stream
      Throws:
      IOException
    • isCommitted

      boolean isCommitted()
      Check if the response is committed yet
      Returns:
      boolean whether or not the response is committed
    • addHeader

      void addHeader(String name, String value)
      Add a header
      Parameters:
      name - the name of the header
      name - the value of the header
    • addHeader

      void addHeader(byte[] name, byte[] value)
      Add a header
      Parameters:
      name - the name of the header
      value - the value of the header
    • addDateHeader

      void addDateHeader(String name, long t)
      Add a header as a long value
      Parameters:
      name - the header name
      t - the header date value
    • addIntHeader

      void addIntHeader(String name, int i)
      Add a header as an int value
      Parameters:
      name - the header name
      i - the header int value
    • setDateHeader

      void setDateHeader(String name, long t)
      Set date header as a long value
      Parameters:
      name - the header name
      t - the header date value
    • setIntHeader

      void setIntHeader(String name, int i)
      Set a header as an int
      Parameters:
      name - the header name
      i - the header int value
    • getHeaderNames

      Enumeration getHeaderNames()
      Gets all the header names (keys)
      Returns:
      Collection of header names
    • getHeaders

      Enumeration getHeaders(String name)
      Gets all the header values for a particular header name
      Returns:
      Collection of header v
    • getHeader

      String getHeader(String name)
      Get a header
      Parameters:
      name - the header name
      Returns:
      String the header value
    • getHeaderTable

      Vector[] getHeaderTable()
      Get the header table
      Returns:
      Vector the header names
    • getHeader

      String getHeader(byte[] name)
      Get a header
      Parameters:
      name - the header name
      Returns:
      String the header value
    • containsHeader

      boolean containsHeader(String name)
      Returns true is the header with the supplied name is already present
      Parameters:
      name - the header name
      Returns:
      boolean whether the header is present
    • containsHeader

      boolean containsHeader(byte[] name)
      Returns true if the header with the supplied name is already present
      Parameters:
      name - the header name
      Returns:
      boolean whether the header is present
    • removeHeader

      void removeHeader(String name)
      Removes the header with the given name
      Parameters:
      name - the header name
    • removeHeader

      void removeHeader(byte[] name)
      Removes the header with the given name
      Parameters:
      name - the header name
    • clearHeaders

      void clearHeaders()
      Clears the headers datastructure
    • getWCCRequest

      IRequest getWCCRequest()
      Get the webcontainer channel request object for this response
      Returns:
      IWCCRequest the associated request for this response
    • setFlushMode

      void setFlushMode(boolean flushToWire)
      Sets the flush mode. When set to true, the subsequent flush calls *must* write the contents to the wire. Otherwise, the contents written can be buffered by the underlying layer.
      Parameters:
      flushToWire -
    • setIsClosing

      void setIsClosing(boolean isClosing)
    • getFlushMode

      boolean getFlushMode()
      Gets the flush mode.
      Returns:
      flushToWire
    • flushBufferedContent

      void flushBufferedContent()
      Flushes the contents to wire
    • setReason

      void setReason(String reason)
      Sets the reason in the response.
      Parameters:
      reason -
    • setReason

      void setReason(byte[] reason)
      Sets the reason in the response.
      Parameters:
      reason -
    • addCookie

      void addCookie(javax.servlet.http.Cookie cookie)
      Add a cookie to the response.
      Parameters:
      cookie -
    • getCookies

      javax.servlet.http.Cookie[] getCookies()
      Get all the cookies for the response
      Returns:
      Cookie[] containing all the Cookies.
    • prepareHeadersForWrite

      void prepareHeadersForWrite()
      Prepare to write the headers
    • writeHeaders

      void writeHeaders()
      Write the headers
    • setHeader

      void setHeader(String name, String s)
      Parameters:
      name -
      s -
    • setHeader

      void setHeader(byte[] name, byte[] bs)
      Parameters:
      name -
      bs -
    • setContentType

      void setContentType(String value)
      Set the content type for the response
      Parameters:
      value -
    • setContentType

      void setContentType(byte[] value)
      Set the content type for the response
      Parameters:
      value -
    • setContentLanguage

      void setContentLanguage(String value)
      Set the content language for the response
      Parameters:
      value -
    • setContentLength

      void setContentLength(int length)
      Set the content length for the response
      Parameters:
      length -
    • setContentLanguage

      void setContentLanguage(byte[] value)
      Set the content language for the response
      Parameters:
      value -
    • setAllocateDirect

      void setAllocateDirect(boolean allocateDirect)
      Set whether to allocate direct or indirect byte buffers
      Parameters:
      allocateDirect -
    • isAllocateDirect

      boolean isAllocateDirect()
      Get whether to allocate direct or indirect byte buffers
    • setLastBuffer

      void setLastBuffer(boolean writeLastBuffer)
      Set the last buffer mode
      Parameters:
      writeLastBuffer -
    • releaseChannel

      void releaseChannel()
    • removeCookie

      void removeCookie(String cookieName)
    • resetBuffer

      void resetBuffer()
    • getBufferSize

      int getBufferSize()
    • setBufferSize

      void setBufferSize(int bufferSize)
    • flushBuffer

      void flushBuffer() throws IOException
      Throws:
      IOException