Class WebResponse
- java.lang.Object
-
- jakarta.servlet.ServletResponseWrapper
-
- jakarta.servlet.http.HttpServletResponseWrapper
-
- eu.webtoolkit.jwt.servlet.WebResponse
-
- All Implemented Interfaces:
jakarta.servlet.http.HttpServletResponse,jakarta.servlet.ServletResponse
public class WebResponse extends jakarta.servlet.http.HttpServletResponseWrapperA WebResponse which wraps the HttpServletResponse to support testing.WebResponse is used instead of HttpServletRequest inside JWt's request handling, and also in
WResource.handleRequest(WebRequest request, WebResponse response).It augments the functionality of HttpServletResponse by having a constructor which serializes the response to an arbitrary output stream, for testing purposes.
- See Also:
WebResponse
-
-
Field Summary
-
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_MISDIRECTED_REQUEST, 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_PERMANENT_REDIRECT, 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_UNPROCESSABLE_CONTENT, SC_UNSUPPORTED_MEDIA_TYPE, SC_UPGRADE_REQUIRED, SC_USE_PROXY
-
-
Constructor Summary
Constructors Constructor Description WebResponse()Create a response with no real ServletOutputStream.WebResponse(jakarta.servlet.http.HttpServletResponse response, jakarta.servlet.http.HttpServletRequest request)Constructor which wraps a HttpServletResponse.WebResponse(java.io.OutputStream out)Construct which uses a custom output stream.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidflush()Flushes the response.intgetId()Returns the ID.java.lang.StringgetNonce()Returns the nonce in the header.jakarta.servlet.ServletOutputStreamgetOutputStream()Returns the output stream.java.lang.StringgetParameter(java.lang.String string)Returns a request parameter value.java.util.Map<java.lang.String,java.lang.String[]>getParameterMap()Returns the request's parameter map.java.lang.StringgetPathInfo()Returns the request path information.java.lang.StringgetRequestMethod()Returns the request method.WebRequest.ResponseTypegetResponseType()Returns the response type.booleanisWebSocketMessage()Returns whether this request is a WebSocket message.booleanisWebSocketMessagePending()Returns whether another WebSocket message is pending.booleanisWebSocketRequest()Returns whether this request is a WebSocket request.java.io.Writerout()Returns a text writer.voidsetId(int i)Sets an ID to the WebResponse (used by JWt).voidsetResponseType(WebRequest.ResponseType responseType)Sets the response type.-
Methods inherited from class jakarta.servlet.http.HttpServletResponseWrapper
addCookie, addDateHeader, addHeader, addIntHeader, containsHeader, encodeRedirectURL, encodeURL, getHeader, getHeaderNames, getHeaders, getStatus, getTrailerFields, sendError, sendError, sendRedirect, sendRedirect, sendRedirect, sendRedirect, setDateHeader, setHeader, setIntHeader, setStatus, setTrailerFields
-
Methods inherited from class jakarta.servlet.ServletResponseWrapper
flushBuffer, getBufferSize, getCharacterEncoding, getContentType, getLocale, getResponse, getWriter, isCommitted, isWrapperFor, isWrapperFor, reset, resetBuffer, setBufferSize, setCharacterEncoding, setCharacterEncoding, setContentLength, setContentLengthLong, setContentType, setLocale, setResponse
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface jakarta.servlet.ServletResponse
flushBuffer, getBufferSize, getCharacterEncoding, getContentType, getLocale, getWriter, isCommitted, reset, resetBuffer, setBufferSize, setCharacterEncoding, setCharacterEncoding, setContentLength, setContentLengthLong, setContentType, setLocale
-
-
-
-
Constructor Detail
-
WebResponse
public WebResponse(jakarta.servlet.http.HttpServletResponse response, jakarta.servlet.http.HttpServletRequest request)Constructor which wraps a HttpServletResponse.It also saves the corresponding request. This is for convenience, when wanting to change the rendering based on request information.
- Parameters:
response- The HttpSerlvetResponserequest- The HttpServletRequest
-
WebResponse
public WebResponse(java.io.OutputStream out)
Construct which uses a custom output stream.This constructor is useful for testing purposes, for simulating a browser request and sending the output to e.g. a file.
- Parameters:
out- The custom output stream.
-
WebResponse
public WebResponse()
Create a response with no real ServletOutputStream. Used to set up a web socket response
-
-
Method Detail
-
getOutputStream
public jakarta.servlet.ServletOutputStream getOutputStream()
Returns the output stream.Returns
ServletResponseWrapper.getOutputStream()or the custom output stream passed toWebResponse(OutputStream).You should only use the output stream to transmit binary information. Use
ServletResponseWrapper.getWriter()for text output.- Specified by:
getOutputStreamin interfacejakarta.servlet.ServletResponse- Overrides:
getOutputStreamin classjakarta.servlet.ServletResponseWrapper
-
out
public java.io.Writer out()
Returns a text writer.This returns a writer set on the output stream, which encodes text in UTF-8 format.
- Returns:
- a writer for streaming text.
-
setId
public void setId(int i)
Sets an ID to the WebResponse (used by JWt).- Parameters:
i-
-
getId
public int getId()
Returns the ID.Returns the ID previously set using
setId(int)- Returns:
- the Id.
-
flush
public void flush()
Flushes the response.This flushes the writer.
-
getPathInfo
public java.lang.String getPathInfo()
Returns the request path information.This returns the path information that was passed in the request.
- Returns:
- the request path information.
-
getParameter
public java.lang.String getParameter(java.lang.String string)
Returns a request parameter value.- Parameters:
string- the parameter name- Returns:
- the request parameter value, or the empty string if the parameter was not set.
-
getRequestMethod
public java.lang.String getRequestMethod()
Returns the request method.- Returns:
- the request method.
-
getParameterMap
public java.util.Map<java.lang.String,java.lang.String[]> getParameterMap()
Returns the request's parameter map.- Returns:
- the request's parameter map
-
isWebSocketRequest
public boolean isWebSocketRequest()
Returns whether this request is a WebSocket request. This is an internal JWt method.
-
isWebSocketMessage
public boolean isWebSocketMessage()
Returns whether this request is a WebSocket message. This is an internal JWt method.
-
isWebSocketMessagePending
public boolean isWebSocketMessagePending()
Returns whether another WebSocket message is pending. This is an internal JWt method.
-
setResponseType
public void setResponseType(WebRequest.ResponseType responseType)
Sets the response type. This is an internal JWt method.
-
getResponseType
public WebRequest.ResponseType getResponseType()
Returns the response type. This is an internal JWt method.
-
getNonce
public java.lang.String getNonce()
Returns the nonce in the header.- Returns:
- the nonce that will be used in the header of the response if useScriptNonce is true, otherwise returns an empty String
-
-