public class MockHttpServletResponse extends Object implements HttpServletResponse
HttpServletResponse
interface.
As of Spring Framework 5.0, this set of mocks is designed on a Servlet 4.0 baseline.
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 and Description |
---|
MockHttpServletResponse() |
Modifier and Type | Method and Description |
---|---|
void |
addCookie(Cookie cookie) |
void |
addDateHeader(String name,
long value) |
void |
addHeader(String name,
String value) |
void |
addIncludedUrl(String includedUrl) |
void |
addIntHeader(String name,
int value) |
boolean |
containsHeader(String name) |
String |
encodeRedirectUrl(String url)
Deprecated.
|
String |
encodeRedirectURL(String url)
The default implementation delegates to
encodeURL(java.lang.String) ,
returning the given URL String as-is. |
String |
encodeUrl(String url)
Deprecated.
|
String |
encodeURL(String url)
The default implementation returns the given URL String as-is.
|
void |
flushBuffer() |
int |
getBufferSize() |
String |
getCharacterEncoding() |
byte[] |
getContentAsByteArray() |
String |
getContentAsString()
Get the content of the response body as a
String , using the charset
specified for the response by the application, either through
HttpServletResponse methods or through a charset parameter on the
Content-Type . |
String |
getContentAsString(Charset fallbackCharset)
Get the content of the response body as a
String , using the provided
fallbackCharset if no charset has been explicitly defined and otherwise
using the charset specified for the response by the application, either
through HttpServletResponse methods or through a charset parameter on the
Content-Type . |
int |
getContentLength() |
long |
getContentLengthLong() |
String |
getContentType() |
Cookie |
getCookie(String name) |
Cookie[] |
getCookies() |
long |
getDateHeader(String name) |
String |
getErrorMessage() |
String |
getForwardedUrl() |
String |
getHeader(String name)
Return the primary value for the given header as a String, if any.
|
Collection<String> |
getHeaderNames()
Return the names of all specified headers as a Set of Strings.
|
List<String> |
getHeaders(String name)
Return all values for the given header as a List of Strings.
|
Object |
getHeaderValue(String name)
Return the primary value for the given header, if any.
|
List<Object> |
getHeaderValues(String name)
Return all values for the given header as a List of value objects.
|
String |
getIncludedUrl() |
List<String> |
getIncludedUrls() |
Locale |
getLocale() |
ServletOutputStream |
getOutputStream() |
String |
getRedirectedUrl() |
int |
getStatus() |
PrintWriter |
getWriter() |
boolean |
isCharset()
Determine whether the character encoding has been explicitly set through
HttpServletResponse methods or through a charset parameter
on the Content-Type . |
boolean |
isCommitted() |
boolean |
isOutputStreamAccessAllowed()
Return whether
getOutputStream() access is allowed. |
boolean |
isWriterAccessAllowed()
Return whether
getOutputStream() access is allowed. |
void |
reset() |
void |
resetBuffer() |
void |
sendError(int status) |
void |
sendError(int status,
String errorMessage) |
void |
sendRedirect(String url) |
void |
setBufferSize(int bufferSize) |
void |
setCharacterEncoding(String characterEncoding) |
void |
setCommitted(boolean committed) |
void |
setContentLength(int contentLength) |
void |
setContentLengthLong(long contentLength) |
void |
setContentType(String contentType) |
void |
setDateHeader(String name,
long value) |
void |
setDefaultCharacterEncoding(String characterEncoding)
Set the default character encoding for the response.
|
void |
setForwardedUrl(String forwardedUrl) |
void |
setHeader(String name,
String value) |
void |
setIncludedUrl(String includedUrl) |
void |
setIntHeader(String name,
int value) |
void |
setLocale(Locale locale) |
void |
setOutputStreamAccessAllowed(boolean outputStreamAccessAllowed)
Set whether
getOutputStream() access is allowed. |
void |
setStatus(int status) |
void |
setStatus(int status,
String errorMessage)
Deprecated.
|
void |
setWriterAccessAllowed(boolean writerAccessAllowed)
Set whether
getWriter() access is allowed. |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getTrailerFields, setTrailerFields
public void setOutputStreamAccessAllowed(boolean outputStreamAccessAllowed)
getOutputStream()
access is allowed.
Default is true
.
public boolean isOutputStreamAccessAllowed()
getOutputStream()
access is allowed.public void setWriterAccessAllowed(boolean writerAccessAllowed)
getWriter()
access is allowed.
Default is true
.
public boolean isWriterAccessAllowed()
getOutputStream()
access is allowed.public void setDefaultCharacterEncoding(String characterEncoding)
If this method is not invoked, ISO-8859-1
will be used as the
default character encoding.
If the character encoding for the
response has not already been explicitly set via setCharacterEncoding(String)
or setContentType(String)
, the character encoding for the response
will be set to the supplied default character encoding.
characterEncoding
- the default character encodingsetCharacterEncoding(String)
,
setContentType(String)
public boolean isCharset()
HttpServletResponse
methods or through a charset
parameter
on the Content-Type
.
If false
, getCharacterEncoding()
will return the
default character encoding.
public void setCharacterEncoding(String characterEncoding)
setCharacterEncoding
in interface ServletResponse
public String getCharacterEncoding()
getCharacterEncoding
in interface ServletResponse
public ServletOutputStream getOutputStream()
getOutputStream
in interface ServletResponse
public PrintWriter getWriter() throws UnsupportedEncodingException
getWriter
in interface ServletResponse
UnsupportedEncodingException
public byte[] getContentAsByteArray()
public String getContentAsString() throws UnsupportedEncodingException
String
, using the charset
specified for the response by the application, either through
HttpServletResponse
methods or through a charset parameter on the
Content-Type
. If no charset has been explicitly defined, the
default character encoding
will be used.String
UnsupportedEncodingException
- if the character encoding is not supportedgetContentAsString(Charset)
,
setCharacterEncoding(String)
,
setContentType(String)
public String getContentAsString(Charset fallbackCharset) throws UnsupportedEncodingException
String
, using the provided
fallbackCharset
if no charset has been explicitly defined and otherwise
using the charset specified for the response by the application, either
through HttpServletResponse
methods or through a charset parameter on the
Content-Type
.String
UnsupportedEncodingException
- if the character encoding is not supportedgetContentAsString()
,
setCharacterEncoding(String)
,
setContentType(String)
public void setContentLength(int contentLength)
setContentLength
in interface ServletResponse
public int getContentLength()
public void setContentLengthLong(long contentLength)
setContentLengthLong
in interface ServletResponse
public long getContentLengthLong()
public void setContentType(@Nullable String contentType)
setContentType
in interface ServletResponse
@Nullable public String getContentType()
getContentType
in interface ServletResponse
public void setBufferSize(int bufferSize)
setBufferSize
in interface ServletResponse
public int getBufferSize()
getBufferSize
in interface ServletResponse
public void flushBuffer()
flushBuffer
in interface ServletResponse
public void resetBuffer()
resetBuffer
in interface ServletResponse
public void setCommitted(boolean committed)
public boolean isCommitted()
isCommitted
in interface ServletResponse
public void reset()
reset
in interface ServletResponse
public void setLocale(@Nullable Locale locale)
setLocale
in interface ServletResponse
public Locale getLocale()
getLocale
in interface ServletResponse
public void addCookie(Cookie cookie)
addCookie
in interface HttpServletResponse
public Cookie[] getCookies()
public boolean containsHeader(String name)
containsHeader
in interface HttpServletResponse
public Collection<String> getHeaderNames()
As of Servlet 3.0, this method is also defined in HttpServletResponse
.
getHeaderNames
in interface HttpServletResponse
Set
of header name Strings
, or an empty Set
if none@Nullable public String getHeader(String name)
As of Servlet 3.0, this method is also defined in HttpServletResponse
.
As of Spring 3.1, it returns a stringified value for Servlet 3.0 compatibility.
Consider using getHeaderValue(String)
for raw Object access.
getHeader
in interface HttpServletResponse
name
- the name of the headernull
if nonepublic List<String> getHeaders(String name)
As of Servlet 3.0, this method is also defined in HttpServletResponse
.
As of Spring 3.1, it returns a List of stringified values for Servlet 3.0 compatibility.
Consider using getHeaderValues(String)
for raw Object access.
getHeaders
in interface HttpServletResponse
name
- the name of the header@Nullable public Object getHeaderValue(String name)
Will return the first value in case of multiple values.
name
- the name of the headernull
if nonepublic List<Object> getHeaderValues(String name)
name
- the name of the headerpublic String encodeURL(String url)
Can be overridden in subclasses, appending a session id or the like.
encodeURL
in interface HttpServletResponse
public String encodeRedirectURL(String url)
encodeURL(java.lang.String)
,
returning the given URL String as-is.
Can be overridden in subclasses, appending a session id or the like
in a redirect-specific fashion. For general URL encoding rules,
override the common encodeURL(java.lang.String)
method instead, applying
to redirect URLs as well as to general URLs.
encodeRedirectURL
in interface HttpServletResponse
@Deprecated public String encodeUrl(String url)
encodeUrl
in interface HttpServletResponse
@Deprecated public String encodeRedirectUrl(String url)
encodeRedirectUrl
in interface HttpServletResponse
public void sendError(int status, String errorMessage) throws IOException
sendError
in interface HttpServletResponse
IOException
public void sendError(int status) throws IOException
sendError
in interface HttpServletResponse
IOException
public void sendRedirect(String url) throws IOException
sendRedirect
in interface HttpServletResponse
IOException
public void setDateHeader(String name, long value)
setDateHeader
in interface HttpServletResponse
public void addDateHeader(String name, long value)
addDateHeader
in interface HttpServletResponse
public long getDateHeader(String name)
public void setHeader(String name, @Nullable String value)
setHeader
in interface HttpServletResponse
public void addHeader(String name, @Nullable String value)
addHeader
in interface HttpServletResponse
public void setIntHeader(String name, int value)
setIntHeader
in interface HttpServletResponse
public void addIntHeader(String name, int value)
addIntHeader
in interface HttpServletResponse
public void setStatus(int status)
setStatus
in interface HttpServletResponse
@Deprecated public void setStatus(int status, String errorMessage)
setStatus
in interface HttpServletResponse
public int getStatus()
getStatus
in interface HttpServletResponse
public void addIncludedUrl(String includedUrl)