public class MockHttpServletRequest extends Object implements HttpServletRequest
HttpServletRequest
interface.
The default, preferred Locale
for the server mocked by this request
is Locale.ENGLISH
. This value can be changed via addPreferredLocale(java.util.Locale)
or setPreferredLocales(java.util.List<java.util.Locale>)
.
As of Spring Framework 4.0, this set of mocks is designed on a Servlet 3.0 baseline.
Modifier and Type | Field and Description |
---|---|
static String |
DEFAULT_PROTOCOL
The default protocol: 'http'.
|
static String |
DEFAULT_REMOTE_ADDR
The default remote address: '127.0.0.1'.
|
static String |
DEFAULT_REMOTE_HOST
The default remote host: 'localhost'.
|
static String |
DEFAULT_SERVER_ADDR
The default server address: '127.0.0.1'.
|
static String |
DEFAULT_SERVER_NAME
The default server name: 'localhost'.
|
static int |
DEFAULT_SERVER_PORT
The default server port: '80'.
|
BASIC_AUTH, CLIENT_CERT_AUTH, DIGEST_AUTH, FORM_AUTH
Constructor and Description |
---|
MockHttpServletRequest()
Create a new
MockHttpServletRequest with a default
MockServletContext . |
MockHttpServletRequest(ServletContext servletContext)
Create a new
MockHttpServletRequest with the supplied ServletContext . |
MockHttpServletRequest(ServletContext servletContext,
String method,
String requestURI)
|
MockHttpServletRequest(String method,
String requestURI)
Create a new
MockHttpServletRequest with a default
MockServletContext . |
Modifier and Type | Method and Description |
---|---|
void |
addHeader(String name,
Object value)
Add a header entry for the given name.
|
void |
addParameter(String name,
String value)
Add a single value for the specified HTTP parameter.
|
void |
addParameter(String name,
String[] values)
Add an array of values for the specified HTTP parameter.
|
void |
addParameters(Map params)
Adds all provided parameters without replacing any
existing values.
|
void |
addPart(Part part) |
void |
addPreferredLocale(Locale locale)
Add a new preferred locale, before any existing locales.
|
void |
addUserRole(String role) |
boolean |
authenticate(HttpServletResponse response) |
String |
changeSessionId()
The implementation of this (Servlet 3.1+) method calls
MockHttpSession.changeSessionId() if the session is a mock session. |
protected void |
checkActive()
Check whether this request is still active (that is, not completed yet),
throwing an IllegalStateException if not active anymore.
|
void |
clearAttributes()
Clear all of this request's attributes.
|
void |
close()
Mark this request as completed, keeping its state.
|
AsyncContext |
getAsyncContext() |
Object |
getAttribute(String name) |
Enumeration<String> |
getAttributeNames() |
String |
getAuthType() |
String |
getCharacterEncoding() |
int |
getContentLength() |
long |
getContentLengthLong() |
String |
getContentType() |
String |
getContextPath() |
Cookie[] |
getCookies() |
long |
getDateHeader(String name) |
DispatcherType |
getDispatcherType() |
String |
getHeader(String name) |
Enumeration<String> |
getHeaderNames() |
Enumeration<String> |
getHeaders(String name) |
ServletInputStream |
getInputStream() |
int |
getIntHeader(String name) |
String |
getLocalAddr() |
Locale |
getLocale()
Returns the first preferred locale configured
in this mock request.
|
Enumeration<Locale> |
getLocales()
Returns an enumeration of the preferred
locales configured in this mock request.
|
String |
getLocalName() |
int |
getLocalPort() |
String |
getMethod() |
String |
getParameter(String name) |
Map<String,String[]> |
getParameterMap() |
Enumeration<String> |
getParameterNames() |
String[] |
getParameterValues(String name) |
Part |
getPart(String name) |
Collection<Part> |
getParts() |
String |
getPathInfo() |
String |
getPathTranslated() |
String |
getProtocol() |
String |
getQueryString() |
BufferedReader |
getReader() |
String |
getRealPath(String path)
Deprecated.
|
String |
getRemoteAddr() |
String |
getRemoteHost() |
int |
getRemotePort() |
String |
getRemoteUser() |
RequestDispatcher |
getRequestDispatcher(String path) |
String |
getRequestedSessionId() |
String |
getRequestURI() |
StringBuffer |
getRequestURL() |
String |
getScheme() |
String |
getServerName() |
int |
getServerPort() |
ServletContext |
getServletContext()
Return the ServletContext that this request is associated with.
|
String |
getServletPath() |
HttpSession |
getSession() |
HttpSession |
getSession(boolean create) |
Principal |
getUserPrincipal() |
void |
invalidate()
Invalidate this request, clearing its state.
|
boolean |
isActive()
Return whether this request is still active (that is, not completed yet).
|
boolean |
isAsyncStarted() |
boolean |
isAsyncSupported() |
boolean |
isRequestedSessionIdFromCookie() |
boolean |
isRequestedSessionIdFromUrl()
Deprecated.
|
boolean |
isRequestedSessionIdFromURL() |
boolean |
isRequestedSessionIdValid() |
boolean |
isSecure()
|
boolean |
isUserInRole(String role) |
void |
login(String username,
String password) |
void |
logout() |
void |
removeAllParameters()
Removes all existing parameters.
|
void |
removeAttribute(String name) |
void |
removeParameter(String name)
Remove already registered values for the specified HTTP parameter, if any.
|
void |
setAsyncContext(MockAsyncContext asyncContext) |
void |
setAsyncStarted(boolean asyncStarted) |
void |
setAsyncSupported(boolean asyncSupported) |
void |
setAttribute(String name,
Object value) |
void |
setAuthType(String authType) |
void |
setCharacterEncoding(String characterEncoding) |
void |
setContent(byte[] content) |
void |
setContentType(String contentType) |
void |
setContextPath(String contextPath) |
void |
setCookies(Cookie... cookies) |
void |
setDispatcherType(DispatcherType dispatcherType) |
void |
setLocalAddr(String localAddr) |
void |
setLocalName(String localName) |
void |
setLocalPort(int localPort) |
void |
setMethod(String method) |
void |
setParameter(String name,
String value)
Set a single value for the specified HTTP parameter.
|
void |
setParameter(String name,
String[] values)
Set an array of values for the specified HTTP parameter.
|
void |
setParameters(Map params)
Sets all provided parameters replacing any existing
values for the provided parameter names.
|
void |
setPathInfo(String pathInfo) |
void |
setPreferredLocales(List<Locale> locales)
Set the list of preferred locales, in descending order, effectively replacing
any existing locales.
|
void |
setProtocol(String protocol) |
void |
setQueryString(String queryString) |
void |
setRemoteAddr(String remoteAddr) |
void |
setRemoteHost(String remoteHost) |
void |
setRemotePort(int remotePort) |
void |
setRemoteUser(String remoteUser) |
void |
setRequestedSessionId(String requestedSessionId) |
void |
setRequestedSessionIdFromCookie(boolean requestedSessionIdFromCookie) |
void |
setRequestedSessionIdFromURL(boolean requestedSessionIdFromURL) |
void |
setRequestedSessionIdValid(boolean requestedSessionIdValid) |
void |
setRequestURI(String requestURI) |
void |
setScheme(String scheme) |
void |
setSecure(boolean secure)
Set the boolean
secure flag indicating whether the mock request
was made using a secure channel, such as HTTPS. |
void |
setServerName(String serverName) |
void |
setServerPort(int serverPort) |
void |
setServletPath(String servletPath) |
void |
setSession(HttpSession session) |
void |
setUserPrincipal(Principal userPrincipal) |
AsyncContext |
startAsync() |
AsyncContext |
startAsync(ServletRequest request,
ServletResponse response) |
public static final String DEFAULT_PROTOCOL
public static final String DEFAULT_SERVER_ADDR
public static final String DEFAULT_SERVER_NAME
public static final int DEFAULT_SERVER_PORT
public static final String DEFAULT_REMOTE_ADDR
public static final String DEFAULT_REMOTE_HOST
public MockHttpServletRequest()
MockHttpServletRequest
with a default
MockServletContext
.public MockHttpServletRequest(String method, String requestURI)
MockHttpServletRequest
with a default
MockServletContext
.method
- the request method (may be null
)requestURI
- the request URI (may be null
)setMethod(java.lang.String)
,
setRequestURI(java.lang.String)
,
MockHttpServletRequest(ServletContext, String, String)
public MockHttpServletRequest(ServletContext servletContext)
MockHttpServletRequest
with the supplied ServletContext
.servletContext
- the ServletContext that the request runs in
(may be null
to use a default MockServletContext
)MockHttpServletRequest(ServletContext, String, String)
public MockHttpServletRequest(ServletContext servletContext, String method, String requestURI)
MockHttpServletRequest
with the supplied ServletContext
,
method
, and requestURI
.
The preferred locale will be set to Locale.ENGLISH
.
servletContext
- the ServletContext that the request runs in (may be
null
to use a default MockServletContext
)method
- the request method (may be null
)requestURI
- the request URI (may be null
)setMethod(java.lang.String)
,
setRequestURI(java.lang.String)
,
setPreferredLocales(java.util.List<java.util.Locale>)
,
MockServletContext
public ServletContext getServletContext()
getServletContext
in interface ServletRequest
public boolean isActive()
public void close()
public void invalidate()
protected void checkActive() throws IllegalStateException
IllegalStateException
public Object getAttribute(String name)
getAttribute
in interface ServletRequest
public Enumeration<String> getAttributeNames()
getAttributeNames
in interface ServletRequest
public String getCharacterEncoding()
getCharacterEncoding
in interface ServletRequest
public void setCharacterEncoding(String characterEncoding)
setCharacterEncoding
in interface ServletRequest
public void setContent(byte[] content)
public int getContentLength()
getContentLength
in interface ServletRequest
public long getContentLengthLong()
public void setContentType(String contentType)
public String getContentType()
getContentType
in interface ServletRequest
public ServletInputStream getInputStream()
getInputStream
in interface ServletRequest
public void setParameter(String name, String value)
If there are already one or more values registered for the given parameter name, they will be replaced.
public void setParameter(String name, String[] values)
If there are already one or more values registered for the given parameter name, they will be replaced.
public void setParameters(Map params)
addParameters(java.util.Map)
.public void addParameter(String name, String value)
If there are already one or more values registered for the given parameter name, the given value will be added to the end of the list.
public void addParameter(String name, String[] values)
If there are already one or more values registered for the given parameter name, the given values will be added to the end of the list.
public void addParameters(Map params)
setParameters(java.util.Map)
.public void removeParameter(String name)
public void removeAllParameters()
public String getParameter(String name)
getParameter
in interface ServletRequest
public Enumeration<String> getParameterNames()
getParameterNames
in interface ServletRequest
public String[] getParameterValues(String name)
getParameterValues
in interface ServletRequest
public Map<String,String[]> getParameterMap()
getParameterMap
in interface ServletRequest
public void setProtocol(String protocol)
public String getProtocol()
getProtocol
in interface ServletRequest
public void setScheme(String scheme)
public String getScheme()
getScheme
in interface ServletRequest
public void setServerName(String serverName)
public String getServerName()
getServerName
in interface ServletRequest
public void setServerPort(int serverPort)
public int getServerPort()
getServerPort
in interface ServletRequest
public BufferedReader getReader() throws UnsupportedEncodingException
getReader
in interface ServletRequest
UnsupportedEncodingException
public void setRemoteAddr(String remoteAddr)
public String getRemoteAddr()
getRemoteAddr
in interface ServletRequest
public void setRemoteHost(String remoteHost)
public String getRemoteHost()
getRemoteHost
in interface ServletRequest
public void setAttribute(String name, Object value)
setAttribute
in interface ServletRequest
public void removeAttribute(String name)
removeAttribute
in interface ServletRequest
public void clearAttributes()
public void addPreferredLocale(Locale locale)
public void setPreferredLocales(List<Locale> locales)
addPreferredLocale(java.util.Locale)
public Locale getLocale()
If no locales have been explicitly configured, the default,
preferred Locale
for the server mocked by this
request is Locale.ENGLISH
.
In contrast to the Servlet specification, this mock implementation
does not take into consideration any locales
specified via the Accept-Language
header.
getLocale
in interface ServletRequest
ServletRequest.getLocale()
,
addPreferredLocale(Locale)
,
setPreferredLocales(List)
public Enumeration<Locale> getLocales()
If no locales have been explicitly configured, the default,
preferred Locale
for the server mocked by this
request is Locale.ENGLISH
.
In contrast to the Servlet specification, this mock implementation
does not take into consideration any locales
specified via the Accept-Language
header.
getLocales
in interface ServletRequest
ServletRequest.getLocales()
,
addPreferredLocale(Locale)
,
setPreferredLocales(List)
public void setSecure(boolean secure)
secure
flag indicating whether the mock request
was made using a secure channel, such as HTTPS.isSecure()
,
getScheme()
,
setScheme(String)
public boolean isSecure()
isSecure
in interface ServletRequest
ServletRequest.isSecure()
public RequestDispatcher getRequestDispatcher(String path)
getRequestDispatcher
in interface ServletRequest
@Deprecated public String getRealPath(String path)
getRealPath
in interface ServletRequest
public void setRemotePort(int remotePort)
public int getRemotePort()
getRemotePort
in interface ServletRequest
public void setLocalName(String localName)
public String getLocalName()
getLocalName
in interface ServletRequest
public void setLocalAddr(String localAddr)
public String getLocalAddr()
getLocalAddr
in interface ServletRequest
public void setLocalPort(int localPort)
public int getLocalPort()
getLocalPort
in interface ServletRequest
public AsyncContext startAsync()
startAsync
in interface ServletRequest
public AsyncContext startAsync(ServletRequest request, ServletResponse response)
startAsync
in interface ServletRequest
public void setAsyncStarted(boolean asyncStarted)
public boolean isAsyncStarted()
isAsyncStarted
in interface ServletRequest
public void setAsyncSupported(boolean asyncSupported)
public boolean isAsyncSupported()
isAsyncSupported
in interface ServletRequest
public void setAsyncContext(MockAsyncContext asyncContext)
public AsyncContext getAsyncContext()
getAsyncContext
in interface ServletRequest
public void setDispatcherType(DispatcherType dispatcherType)
public DispatcherType getDispatcherType()
getDispatcherType
in interface ServletRequest
public void setAuthType(String authType)
public String getAuthType()
getAuthType
in interface HttpServletRequest
public void setCookies(Cookie... cookies)
public Cookie[] getCookies()
getCookies
in interface HttpServletRequest
public void addHeader(String name, Object value)
If there was no entry for that header name before, the value will be used as-is. In case of an existing entry, a String array will be created, adding the given value (more specifically, its toString representation) as further element.
Multiple values can only be stored as list of Strings, following the
Servlet spec (see getHeaders
accessor). As alternative to
repeated addHeader
calls for individual elements, you can
use a single call with an entire array or Collection of values as
parameter.
public long getDateHeader(String name)
getDateHeader
in interface HttpServletRequest
public String getHeader(String name)
getHeader
in interface HttpServletRequest
public Enumeration<String> getHeaders(String name)
getHeaders
in interface HttpServletRequest
public Enumeration<String> getHeaderNames()
getHeaderNames
in interface HttpServletRequest
public int getIntHeader(String name)
getIntHeader
in interface HttpServletRequest
public void setMethod(String method)
public String getMethod()
getMethod
in interface HttpServletRequest
public void setPathInfo(String pathInfo)
public String getPathInfo()
getPathInfo
in interface HttpServletRequest
public String getPathTranslated()
getPathTranslated
in interface HttpServletRequest
public void setContextPath(String contextPath)
public String getContextPath()
getContextPath
in interface HttpServletRequest
public void setQueryString(String queryString)
public String getQueryString()
getQueryString
in interface HttpServletRequest
public void setRemoteUser(String remoteUser)
public String getRemoteUser()
getRemoteUser
in interface HttpServletRequest
public void addUserRole(String role)
public boolean isUserInRole(String role)
isUserInRole
in interface HttpServletRequest
public void setUserPrincipal(Principal userPrincipal)
public Principal getUserPrincipal()
getUserPrincipal
in interface HttpServletRequest
public void setRequestedSessionId(String requestedSessionId)
public String getRequestedSessionId()
getRequestedSessionId
in interface HttpServletRequest
public void setRequestURI(String requestURI)
public String getRequestURI()
getRequestURI
in interface HttpServletRequest
public StringBuffer getRequestURL()
getRequestURL
in interface HttpServletRequest
public void setServletPath(String servletPath)
public String getServletPath()
getServletPath
in interface HttpServletRequest
public void setSession(HttpSession session)
public HttpSession getSession(boolean create)
getSession
in interface HttpServletRequest
public HttpSession getSession()
getSession
in interface HttpServletRequest
public String changeSessionId()
MockHttpSession.changeSessionId()
if the session is a mock session.
Otherwise it simply returns the current session id.public void setRequestedSessionIdValid(boolean requestedSessionIdValid)
public boolean isRequestedSessionIdValid()
isRequestedSessionIdValid
in interface HttpServletRequest
public void setRequestedSessionIdFromCookie(boolean requestedSessionIdFromCookie)
public boolean isRequestedSessionIdFromCookie()
isRequestedSessionIdFromCookie
in interface HttpServletRequest
public void setRequestedSessionIdFromURL(boolean requestedSessionIdFromURL)
public boolean isRequestedSessionIdFromURL()
isRequestedSessionIdFromURL
in interface HttpServletRequest
@Deprecated public boolean isRequestedSessionIdFromUrl()
isRequestedSessionIdFromUrl
in interface HttpServletRequest
public boolean authenticate(HttpServletResponse response) throws IOException, ServletException
authenticate
in interface HttpServletRequest
IOException
ServletException
public void login(String username, String password) throws ServletException
login
in interface HttpServletRequest
ServletException
public void logout() throws ServletException
logout
in interface HttpServletRequest
ServletException
public void addPart(Part part)
public Part getPart(String name) throws IOException, IllegalStateException, ServletException
getPart
in interface HttpServletRequest
IOException
IllegalStateException
ServletException
public Collection<Part> getParts() throws IOException, IllegalStateException, ServletException
getParts
in interface HttpServletRequest
IOException
IllegalStateException
ServletException