Package mondrian.tui

Class MockHttpServletResponse

java.lang.Object
mondrian.tui.MockHttpServletResponse
All Implemented Interfaces:
jakarta.servlet.http.HttpServletResponse, jakarta.servlet.ServletResponse

public class MockHttpServletResponse extends Object implements jakarta.servlet.http.HttpServletResponse
This is a partial implementation of the HttpServletResponse where just enough is present to allow for communication between Mondrian's XMLA code and other code in the same JVM. Currently it is used in both the CmdRunner and in XMLA JUnit tests.

If you need to add to this implementation, please do so.

Author:
Richard M. Emberson
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
     

    Fields inherited from interface jakarta.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

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addCookie(jakarta.servlet.http.Cookie cookie)
    Adds the specified cookie to the response.
    void
    addDateHeader(String name, long date)
    Adds a response header with the given name and date-value.
    void
    addHeader(String name, String value)
    Adds a response header with the given name and value.
    void
    addIntHeader(String name, int value)
    Adds a response header with the given name and integer value.
    boolean
    Returns a boolean indicating whether the named response header has already been set.
    protected String
     
    Deprecated.
    Method encodeRedirectUrl is deprecated
    Encodes the specified URL for use in the sendRedirect method or, if encoding is not needed, returns the URL unchanged.
    Deprecated.
    Method encodeUrl is deprecated
    Encodes the specified URL by including the session ID in it, or, if encoding is not needed, returns the URL unchanged.
    void
    Forces any content in the buffer to be written to the client.
    int
    Returns the actual buffer size used for the response.
    Returns the name of the charset used for the MIME body sent in this response.
     
     
    int
     
     
     
     
     
    Returns the locale assigned to the response.
    jakarta.servlet.ServletOutputStream
    Returns a ServletOutputStream suitable for writing binary data in the response.
    int
     
    int
     
    Returns a PrintWriter object that can send character text to the client.
    boolean
    Returns a boolean indicating if the response has been committed.
    void
    Clears any data that exists in the buffer as well as the status code and headers.
    void
     
    void
    sendError(int code)
    Sends an error response to the client using the specified status.
    void
    sendError(int code, String msg)
    Sends an error response to the client using the specified status code and descriptive message.
    void
    sendRedirect(String location)
    Sends a temporary redirect response to the client using the specified redirect location URL.
    void
    setBufferSize(int size)
    Sets the preferred buffer size for the body of the response.
    void
     
    void
    Sets the length of the content body in the response In HTTP servlets, this method sets the HTTP Content-Length header.
    void
     
    void
    setContentType(String contentType)
    Sets the content type of the response being sent to the client.
    void
    setDateHeader(String name, long date)
    Sets a response header with the given name and date-value.
    void
    setHeader(String name, String value)
    Sets a response header with the given name and value.
    void
    setIntHeader(String name, int value)
    Sets a response header with the given name and integer value.
    void
    setLocale(Locale locale)
    Sets the locale of the response, setting the headers (including the Content-Type's charset) as appropriate.
    void
    setStatus(int status)
    Sets the status code for this response.
    void
    setStatus(int status, String s)
    Deprecated.
    Method setStatus is deprecated Deprecated.
    byte[]
     
    boolean
     
    boolean
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface jakarta.servlet.http.HttpServletResponse

    getTrailerFields, setTrailerFields
  • Field Details

  • Constructor Details

    • MockHttpServletResponse

      public MockHttpServletResponse()
  • Method Details

    • getCharacterEncoding

      public String getCharacterEncoding()
      Returns the name of the charset used for the MIME body sent in this response.
      Specified by:
      getCharacterEncoding in interface jakarta.servlet.ServletResponse
    • getOutputStream

      public jakarta.servlet.ServletOutputStream getOutputStream() throws IOException
      Returns a ServletOutputStream suitable for writing binary data in the response.
      Specified by:
      getOutputStream in interface jakarta.servlet.ServletResponse
      Throws:
      IOException
    • getWriter

      public PrintWriter getWriter() throws IOException
      Returns a PrintWriter object that can send character text to the client.
      Specified by:
      getWriter in interface jakarta.servlet.ServletResponse
      Throws:
      IOException
    • setCharacterEncoding

      public void setCharacterEncoding(String charEncoding)
      Specified by:
      setCharacterEncoding in interface jakarta.servlet.ServletResponse
    • setContentLength

      public void setContentLength(int len)
      Sets the length of the content body in the response In HTTP servlets, this method sets the HTTP Content-Length header.
      Specified by:
      setContentLength in interface jakarta.servlet.ServletResponse
    • setContentLengthLong

      public void setContentLengthLong(long l)
      Specified by:
      setContentLengthLong in interface jakarta.servlet.ServletResponse
    • setContentType

      public void setContentType(String contentType)
      Sets the content type of the response being sent to the client.
      Specified by:
      setContentType in interface jakarta.servlet.ServletResponse
    • setBufferSize

      public void setBufferSize(int size)
      Sets the preferred buffer size for the body of the response.
      Specified by:
      setBufferSize in interface jakarta.servlet.ServletResponse
    • getBufferSize

      public int getBufferSize()
      Returns the actual buffer size used for the response.
      Specified by:
      getBufferSize in interface jakarta.servlet.ServletResponse
    • flushBuffer

      public void flushBuffer() throws IOException
      Forces any content in the buffer to be written to the client.
      Specified by:
      flushBuffer in interface jakarta.servlet.ServletResponse
      Throws:
      IOException
    • resetBuffer

      public void resetBuffer()
      Specified by:
      resetBuffer in interface jakarta.servlet.ServletResponse
    • isCommitted

      public boolean isCommitted()
      Returns a boolean indicating if the response has been committed.
      Specified by:
      isCommitted in interface jakarta.servlet.ServletResponse
    • reset

      public void reset()
      Clears any data that exists in the buffer as well as the status code and headers.
      Specified by:
      reset in interface jakarta.servlet.ServletResponse
    • setLocale

      public void setLocale(Locale locale)
      Sets the locale of the response, setting the headers (including the Content-Type's charset) as appropriate.
      Specified by:
      setLocale in interface jakarta.servlet.ServletResponse
    • getLocale

      public Locale getLocale()
      Returns the locale assigned to the response.
      Specified by:
      getLocale in interface jakarta.servlet.ServletResponse
    • addCookie

      public void addCookie(jakarta.servlet.http.Cookie cookie)
      Adds the specified cookie to the response.
      Specified by:
      addCookie in interface jakarta.servlet.http.HttpServletResponse
    • containsHeader

      public boolean containsHeader(String name)
      Returns a boolean indicating whether the named response header has already been set.
      Specified by:
      containsHeader in interface jakarta.servlet.http.HttpServletResponse
    • encodeURL

      public String encodeURL(String url)
      Encodes the specified URL by including the session ID in it, or, if encoding is not needed, returns the URL unchanged.
      Specified by:
      encodeURL in interface jakarta.servlet.http.HttpServletResponse
    • encodeRedirectURL

      public String encodeRedirectURL(String url)
      Encodes the specified URL for use in the sendRedirect method or, if encoding is not needed, returns the URL unchanged.
      Specified by:
      encodeRedirectURL in interface jakarta.servlet.http.HttpServletResponse
    • encodeUrl

      public String encodeUrl(String s)
      Deprecated.
      Method encodeUrl is deprecated
    • encodeRedirectUrl

      public String encodeRedirectUrl(String s)
      Deprecated.
      Method encodeRedirectUrl is deprecated
    • sendError

      public void sendError(int code, String msg) throws IOException
      Sends an error response to the client using the specified status code and descriptive message.
      Specified by:
      sendError in interface jakarta.servlet.http.HttpServletResponse
      Throws:
      IOException
    • sendError

      public void sendError(int code) throws IOException
      Sends an error response to the client using the specified status.
      Specified by:
      sendError in interface jakarta.servlet.http.HttpServletResponse
      Throws:
      IOException
    • sendRedirect

      public void sendRedirect(String location) throws IOException
      Sends a temporary redirect response to the client using the specified redirect location URL.
      Specified by:
      sendRedirect in interface jakarta.servlet.http.HttpServletResponse
      Throws:
      IOException
    • setDateHeader

      public void setDateHeader(String name, long date)
      Sets a response header with the given name and date-value.
      Specified by:
      setDateHeader in interface jakarta.servlet.http.HttpServletResponse
    • addDateHeader

      public void addDateHeader(String name, long date)
      Adds a response header with the given name and date-value.
      Specified by:
      addDateHeader in interface jakarta.servlet.http.HttpServletResponse
    • setHeader

      public void setHeader(String name, String value)
      Sets a response header with the given name and value.
      Specified by:
      setHeader in interface jakarta.servlet.http.HttpServletResponse
    • addHeader

      public void addHeader(String name, String value)
      Adds a response header with the given name and value.
      Specified by:
      addHeader in interface jakarta.servlet.http.HttpServletResponse
    • setIntHeader

      public void setIntHeader(String name, int value)
      Sets a response header with the given name and integer value.
      Specified by:
      setIntHeader in interface jakarta.servlet.http.HttpServletResponse
    • addIntHeader

      public void addIntHeader(String name, int value)
      Adds a response header with the given name and integer value.
      Specified by:
      addIntHeader in interface jakarta.servlet.http.HttpServletResponse
    • setStatus

      public void setStatus(int status)
      Sets the status code for this response.
      Specified by:
      setStatus in interface jakarta.servlet.http.HttpServletResponse
    • setStatus

      public void setStatus(int status, String s)
      Deprecated.
      Method setStatus is deprecated Deprecated. As of version 2.1, due to ambiguous meaning of the message parameter. To set a status code use setStatus(int), to send an error with a description use sendError(int, String). Sets the status code and message for this response.
    • getStatus

      public int getStatus()
      Specified by:
      getStatus in interface jakarta.servlet.http.HttpServletResponse
    • toByteArray

      public byte[] toByteArray() throws IOException
      Throws:
      IOException
    • getHeader

      public String getHeader(String name)
      Specified by:
      getHeader in interface jakarta.servlet.http.HttpServletResponse
    • getHeaders

      public Collection<String> getHeaders(String s)
      Specified by:
      getHeaders in interface jakarta.servlet.http.HttpServletResponse
    • getHeaderNames

      public Collection<String> getHeaderNames()
      Specified by:
      getHeaderNames in interface jakarta.servlet.http.HttpServletResponse
    • getContentType

      public String getContentType()
      Specified by:
      getContentType in interface jakarta.servlet.ServletResponse
    • getHeaderList

      public List<String> getHeaderList(String name)
    • getStatusCode

      public int getStatusCode()
    • getErrorCode

      public int getErrorCode()
    • getCookies

      public List getCookies()
    • wasErrorSent

      public boolean wasErrorSent()
    • wasRedirectSent

      public boolean wasRedirectSent()
    • encode

      protected String encode(String s)