org.resteasy.mock
Class MockHttpServletRequest

java.lang.Object
  extended by org.resteasy.mock.MockHttpServletRequest
All Implemented Interfaces:
javax.servlet.http.HttpServletRequest, javax.servlet.ServletRequest

public class MockHttpServletRequest
extends java.lang.Object
implements javax.servlet.http.HttpServletRequest

Mock implementation of the HttpServletRequest interface. Supports the Servlet 2.4 API level.

Used for testing the web framework; also useful for testing application controllers.

Since:
1.0.2
Author:
Juergen Hoeller, Rod Johnson, Rick Evans

Field Summary
static java.lang.String DEFAULT_PROTOCOL
          The default protocol: 'http'.
static java.lang.String DEFAULT_REMOTE_ADDR
          The default remote address: '127.0.0.1'.
static java.lang.String DEFAULT_REMOTE_HOST
          The default remote host: 'localhost'.
static java.lang.String DEFAULT_SERVER_ADDR
          The default server address: '127.0.0.1'.
static java.lang.String DEFAULT_SERVER_NAME
          The default server name: 'localhost'.
static int DEFAULT_SERVER_PORT
          The default server port: '80'.
 
Fields inherited from interface javax.servlet.http.HttpServletRequest
BASIC_AUTH, CLIENT_CERT_AUTH, DIGEST_AUTH, FORM_AUTH
 
Constructor Summary
MockHttpServletRequest()
          Create a new MockHttpServletRequest with a default MockServletContext.
MockHttpServletRequest(javax.servlet.ServletContext servletContext)
          Create a new MockHttpServletRequest.
MockHttpServletRequest(javax.servlet.ServletContext servletContext, java.lang.String method, java.lang.String requestURI)
          Create a new MockHttpServletRequest.
MockHttpServletRequest(java.lang.String method, java.lang.String requestURI)
          Create a new MockHttpServletRequest with a default MockServletContext.
 
Method Summary
 void addHeader(java.lang.String name, java.lang.Object value)
          Add a header entry for the given name.
 void addParameter(java.lang.String name, java.lang.String value)
          Add a single value for the specified HTTP parameter.
 void addParameter(java.lang.String name, java.lang.String[] values)
          Add an array of values for the specified HTTP parameter.
 void addPreferredLocale(java.util.Locale locale)
          Add a new preferred locale, before any existing locales.
 void addRole(java.lang.String role)
          Deprecated. in favor of addUserRole
 void addUserRole(java.lang.String role)
           
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.
 java.lang.Object getAttribute(java.lang.String name)
           
 java.util.Enumeration getAttributeNames()
           
 java.lang.String getAuthType()
           
 java.lang.String getCharacterEncoding()
           
 int getContentLength()
           
 java.lang.String getContentType()
           
 java.lang.String getContextPath()
           
 javax.servlet.http.Cookie[] getCookies()
           
 long getDateHeader(java.lang.String name)
           
 java.lang.String getHeader(java.lang.String name)
           
 java.util.Enumeration getHeaderNames()
           
 java.util.Enumeration getHeaders(java.lang.String name)
           
 javax.servlet.ServletInputStream getInputStream()
           
 int getIntHeader(java.lang.String name)
           
 java.lang.String getLocalAddr()
           
 java.util.Locale getLocale()
           
 java.util.Enumeration getLocales()
           
 java.lang.String getLocalName()
           
 int getLocalPort()
           
 java.lang.String getMethod()
           
 java.lang.String getParameter(java.lang.String name)
           
 java.util.Map getParameterMap()
           
 java.util.Enumeration getParameterNames()
           
 java.lang.String[] getParameterValues(java.lang.String name)
           
 java.lang.String getPathInfo()
           
 java.lang.String getPathTranslated()
           
 java.lang.String getProtocol()
           
 java.lang.String getQueryString()
           
 java.io.BufferedReader getReader()
           
 java.lang.String getRealPath(java.lang.String path)
           
 java.lang.String getRemoteAddr()
           
 java.lang.String getRemoteHost()
           
 int getRemotePort()
           
 java.lang.String getRemoteUser()
           
 javax.servlet.RequestDispatcher getRequestDispatcher(java.lang.String path)
           
 java.lang.String getRequestedSessionId()
           
 java.lang.String getRequestURI()
           
 java.lang.StringBuffer getRequestURL()
           
 java.lang.String getScheme()
           
 java.lang.String getServerName()
           
 int getServerPort()
           
 java.lang.String getServletPath()
           
 javax.servlet.http.HttpSession getSession()
           
 javax.servlet.http.HttpSession getSession(boolean create)
           
 java.security.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 isRequestedSessionIdFromCookie()
           
 boolean isRequestedSessionIdFromUrl()
           
 boolean isRequestedSessionIdFromURL()
           
 boolean isRequestedSessionIdValid()
           
 boolean isSecure()
           
 boolean isUserInRole(java.lang.String role)
           
 void removeAttribute(java.lang.String name)
           
 void removeParameter(java.lang.String name)
          Remove already registered values for the specified HTTP parameter, if any.
 void setAttribute(java.lang.String name, java.lang.Object value)
           
 void setAuthType(java.lang.String authType)
           
 void setCharacterEncoding(java.lang.String characterEncoding)
           
 void setContent(byte[] content)
           
 void setContentType(java.lang.String contentType)
           
 void setContextPath(java.lang.String contextPath)
           
 void setCookies(javax.servlet.http.Cookie[] cookies)
           
 void setLocalAddr(java.lang.String localAddr)
           
 void setLocalName(java.lang.String localName)
           
 void setLocalPort(int localPort)
           
 void setMethod(java.lang.String method)
           
 void setParameter(java.lang.String name, java.lang.String value)
          Set a single value for the specified HTTP parameter.
 void setParameter(java.lang.String name, java.lang.String[] values)
          Set an array of values for the specified HTTP parameter.
 void setPathInfo(java.lang.String pathInfo)
           
 void setProtocol(java.lang.String protocol)
           
 void setQueryString(java.lang.String queryString)
           
 void setRemoteAddr(java.lang.String remoteAddr)
           
 void setRemoteHost(java.lang.String remoteHost)
           
 void setRemotePort(int remotePort)
           
 void setRemoteUser(java.lang.String remoteUser)
           
 void setRequestedSessionIdFromCookie(boolean requestedSessionIdFromCookie)
           
 void setRequestedSessionIdFromURL(boolean requestedSessionIdFromURL)
           
 void setRequestedSessionIdValid(boolean requestedSessionIdValid)
           
 void setRequestURI(java.lang.String requestURI)
           
 void setScheme(java.lang.String scheme)
           
 void setSecure(boolean secure)
           
 void setServerName(java.lang.String serverName)
           
 void setServerPort(int serverPort)
           
 void setServletPath(java.lang.String servletPath)
           
 void setSession(javax.servlet.http.HttpSession session)
           
 void setUserPrincipal(java.security.Principal userPrincipal)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_PROTOCOL

public static final java.lang.String DEFAULT_PROTOCOL
The default protocol: 'http'.

See Also:
Constant Field Values

DEFAULT_SERVER_ADDR

public static final java.lang.String DEFAULT_SERVER_ADDR
The default server address: '127.0.0.1'.

See Also:
Constant Field Values

DEFAULT_SERVER_NAME

public static final java.lang.String DEFAULT_SERVER_NAME
The default server name: 'localhost'.

See Also:
Constant Field Values

DEFAULT_SERVER_PORT

public static final int DEFAULT_SERVER_PORT
The default server port: '80'.

See Also:
Constant Field Values

DEFAULT_REMOTE_ADDR

public static final java.lang.String DEFAULT_REMOTE_ADDR
The default remote address: '127.0.0.1'.

See Also:
Constant Field Values

DEFAULT_REMOTE_HOST

public static final java.lang.String DEFAULT_REMOTE_HOST
The default remote host: 'localhost'.

See Also:
Constant Field Values
Constructor Detail

MockHttpServletRequest

public MockHttpServletRequest()
Create a new MockHttpServletRequest with a default MockServletContext.

See Also:
MockServletContext

MockHttpServletRequest

public MockHttpServletRequest(java.lang.String method,
                              java.lang.String requestURI)
Create a new MockHttpServletRequest with a default MockServletContext.

Parameters:
method - the request method (may be null)
requestURI - the request URI (may be null)
See Also:
setMethod(java.lang.String), setRequestURI(java.lang.String), MockServletContext

MockHttpServletRequest

public MockHttpServletRequest(javax.servlet.ServletContext servletContext)
Create a new MockHttpServletRequest.

Parameters:
servletContext - the ServletContext that the request runs in (may be null to use a default MockServletContext)
See Also:
MockServletContext

MockHttpServletRequest

public MockHttpServletRequest(javax.servlet.ServletContext servletContext,
                              java.lang.String method,
                              java.lang.String requestURI)
Create a new MockHttpServletRequest.

Parameters:
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)
See Also:
setMethod(java.lang.String), setRequestURI(java.lang.String), MockServletContext
Method Detail

isActive

public boolean isActive()
Return whether this request is still active (that is, not completed yet).


close

public void close()
Mark this request as completed, keeping its state.


invalidate

public void invalidate()
Invalidate this request, clearing its state.


checkActive

protected void checkActive()
                    throws java.lang.IllegalStateException
Check whether this request is still active (that is, not completed yet), throwing an IllegalStateException if not active anymore.

Throws:
java.lang.IllegalStateException

getAttribute

public java.lang.Object getAttribute(java.lang.String name)
Specified by:
getAttribute in interface javax.servlet.ServletRequest

getAttributeNames

public java.util.Enumeration getAttributeNames()
Specified by:
getAttributeNames in interface javax.servlet.ServletRequest

getCharacterEncoding

public java.lang.String getCharacterEncoding()
Specified by:
getCharacterEncoding in interface javax.servlet.ServletRequest

setCharacterEncoding

public void setCharacterEncoding(java.lang.String characterEncoding)
Specified by:
setCharacterEncoding in interface javax.servlet.ServletRequest

setContent

public void setContent(byte[] content)

getContentLength

public int getContentLength()
Specified by:
getContentLength in interface javax.servlet.ServletRequest

setContentType

public void setContentType(java.lang.String contentType)

getContentType

public java.lang.String getContentType()
Specified by:
getContentType in interface javax.servlet.ServletRequest

getInputStream

public javax.servlet.ServletInputStream getInputStream()
Specified by:
getInputStream in interface javax.servlet.ServletRequest

setParameter

public void setParameter(java.lang.String name,
                         java.lang.String value)
Set a single value for the specified HTTP parameter.

If there are already one or more values registered for the given parameter name, they will be replaced.


setParameter

public void setParameter(java.lang.String name,
                         java.lang.String[] values)
Set an array of values for the specified HTTP parameter.

If there are already one or more values registered for the given parameter name, they will be replaced.


addParameter

public void addParameter(java.lang.String name,
                         java.lang.String value)
Add a single value for the specified HTTP parameter.

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.


addParameter

public void addParameter(java.lang.String name,
                         java.lang.String[] values)
Add an array of values for the specified HTTP parameter.

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.


removeParameter

public void removeParameter(java.lang.String name)
Remove already registered values for the specified HTTP parameter, if any.


getParameter

public java.lang.String getParameter(java.lang.String name)
Specified by:
getParameter in interface javax.servlet.ServletRequest

getParameterNames

public java.util.Enumeration getParameterNames()
Specified by:
getParameterNames in interface javax.servlet.ServletRequest

getParameterValues

public java.lang.String[] getParameterValues(java.lang.String name)
Specified by:
getParameterValues in interface javax.servlet.ServletRequest

getParameterMap

public java.util.Map getParameterMap()
Specified by:
getParameterMap in interface javax.servlet.ServletRequest

setProtocol

public void setProtocol(java.lang.String protocol)

getProtocol

public java.lang.String getProtocol()
Specified by:
getProtocol in interface javax.servlet.ServletRequest

setScheme

public void setScheme(java.lang.String scheme)

getScheme

public java.lang.String getScheme()
Specified by:
getScheme in interface javax.servlet.ServletRequest

setServerName

public void setServerName(java.lang.String serverName)

getServerName

public java.lang.String getServerName()
Specified by:
getServerName in interface javax.servlet.ServletRequest

setServerPort

public void setServerPort(int serverPort)

getServerPort

public int getServerPort()
Specified by:
getServerPort in interface javax.servlet.ServletRequest

getReader

public java.io.BufferedReader getReader()
                                 throws java.io.UnsupportedEncodingException
Specified by:
getReader in interface javax.servlet.ServletRequest
Throws:
java.io.UnsupportedEncodingException

setRemoteAddr

public void setRemoteAddr(java.lang.String remoteAddr)

getRemoteAddr

public java.lang.String getRemoteAddr()
Specified by:
getRemoteAddr in interface javax.servlet.ServletRequest

setRemoteHost

public void setRemoteHost(java.lang.String remoteHost)

getRemoteHost

public java.lang.String getRemoteHost()
Specified by:
getRemoteHost in interface javax.servlet.ServletRequest

setAttribute

public void setAttribute(java.lang.String name,
                         java.lang.Object value)
Specified by:
setAttribute in interface javax.servlet.ServletRequest

removeAttribute

public void removeAttribute(java.lang.String name)
Specified by:
removeAttribute in interface javax.servlet.ServletRequest

clearAttributes

public void clearAttributes()
Clear all of this request's attributes.


addPreferredLocale

public void addPreferredLocale(java.util.Locale locale)
Add a new preferred locale, before any existing locales.


getLocale

public java.util.Locale getLocale()
Specified by:
getLocale in interface javax.servlet.ServletRequest

getLocales

public java.util.Enumeration getLocales()
Specified by:
getLocales in interface javax.servlet.ServletRequest

setSecure

public void setSecure(boolean secure)

isSecure

public boolean isSecure()
Specified by:
isSecure in interface javax.servlet.ServletRequest

getRequestDispatcher

public javax.servlet.RequestDispatcher getRequestDispatcher(java.lang.String path)
Specified by:
getRequestDispatcher in interface javax.servlet.ServletRequest

getRealPath

public java.lang.String getRealPath(java.lang.String path)
Specified by:
getRealPath in interface javax.servlet.ServletRequest

setRemotePort

public void setRemotePort(int remotePort)

getRemotePort

public int getRemotePort()
Specified by:
getRemotePort in interface javax.servlet.ServletRequest

setLocalName

public void setLocalName(java.lang.String localName)

getLocalName

public java.lang.String getLocalName()
Specified by:
getLocalName in interface javax.servlet.ServletRequest

setLocalAddr

public void setLocalAddr(java.lang.String localAddr)

getLocalAddr

public java.lang.String getLocalAddr()
Specified by:
getLocalAddr in interface javax.servlet.ServletRequest

setLocalPort

public void setLocalPort(int localPort)

getLocalPort

public int getLocalPort()
Specified by:
getLocalPort in interface javax.servlet.ServletRequest

setAuthType

public void setAuthType(java.lang.String authType)

getAuthType

public java.lang.String getAuthType()
Specified by:
getAuthType in interface javax.servlet.http.HttpServletRequest

setCookies

public void setCookies(javax.servlet.http.Cookie[] cookies)

getCookies

public javax.servlet.http.Cookie[] getCookies()
Specified by:
getCookies in interface javax.servlet.http.HttpServletRequest

addHeader

public void addHeader(java.lang.String name,
                      java.lang.Object value)
Add a header entry for the given name.

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.

See Also:
getHeaderNames(), getHeader(java.lang.String), getHeaders(java.lang.String), getDateHeader(java.lang.String), getIntHeader(java.lang.String)

getDateHeader

public long getDateHeader(java.lang.String name)
Specified by:
getDateHeader in interface javax.servlet.http.HttpServletRequest

getHeader

public java.lang.String getHeader(java.lang.String name)
Specified by:
getHeader in interface javax.servlet.http.HttpServletRequest

getHeaders

public java.util.Enumeration getHeaders(java.lang.String name)
Specified by:
getHeaders in interface javax.servlet.http.HttpServletRequest

getHeaderNames

public java.util.Enumeration getHeaderNames()
Specified by:
getHeaderNames in interface javax.servlet.http.HttpServletRequest

getIntHeader

public int getIntHeader(java.lang.String name)
Specified by:
getIntHeader in interface javax.servlet.http.HttpServletRequest

setMethod

public void setMethod(java.lang.String method)

getMethod

public java.lang.String getMethod()
Specified by:
getMethod in interface javax.servlet.http.HttpServletRequest

setPathInfo

public void setPathInfo(java.lang.String pathInfo)

getPathInfo

public java.lang.String getPathInfo()
Specified by:
getPathInfo in interface javax.servlet.http.HttpServletRequest

getPathTranslated

public java.lang.String getPathTranslated()
Specified by:
getPathTranslated in interface javax.servlet.http.HttpServletRequest

setContextPath

public void setContextPath(java.lang.String contextPath)

getContextPath

public java.lang.String getContextPath()
Specified by:
getContextPath in interface javax.servlet.http.HttpServletRequest

setQueryString

public void setQueryString(java.lang.String queryString)

getQueryString

public java.lang.String getQueryString()
Specified by:
getQueryString in interface javax.servlet.http.HttpServletRequest

setRemoteUser

public void setRemoteUser(java.lang.String remoteUser)

getRemoteUser

public java.lang.String getRemoteUser()
Specified by:
getRemoteUser in interface javax.servlet.http.HttpServletRequest

addRole

public void addRole(java.lang.String role)
Deprecated. in favor of addUserRole

See Also:
addUserRole(java.lang.String)

addUserRole

public void addUserRole(java.lang.String role)

isUserInRole

public boolean isUserInRole(java.lang.String role)
Specified by:
isUserInRole in interface javax.servlet.http.HttpServletRequest

setUserPrincipal

public void setUserPrincipal(java.security.Principal userPrincipal)

getUserPrincipal

public java.security.Principal getUserPrincipal()
Specified by:
getUserPrincipal in interface javax.servlet.http.HttpServletRequest

getRequestedSessionId

public java.lang.String getRequestedSessionId()
Specified by:
getRequestedSessionId in interface javax.servlet.http.HttpServletRequest

setRequestURI

public void setRequestURI(java.lang.String requestURI)

getRequestURI

public java.lang.String getRequestURI()
Specified by:
getRequestURI in interface javax.servlet.http.HttpServletRequest

getRequestURL

public java.lang.StringBuffer getRequestURL()
Specified by:
getRequestURL in interface javax.servlet.http.HttpServletRequest

setServletPath

public void setServletPath(java.lang.String servletPath)

getServletPath

public java.lang.String getServletPath()
Specified by:
getServletPath in interface javax.servlet.http.HttpServletRequest

setSession

public void setSession(javax.servlet.http.HttpSession session)

getSession

public javax.servlet.http.HttpSession getSession(boolean create)
Specified by:
getSession in interface javax.servlet.http.HttpServletRequest

getSession

public javax.servlet.http.HttpSession getSession()
Specified by:
getSession in interface javax.servlet.http.HttpServletRequest

setRequestedSessionIdValid

public void setRequestedSessionIdValid(boolean requestedSessionIdValid)

isRequestedSessionIdValid

public boolean isRequestedSessionIdValid()
Specified by:
isRequestedSessionIdValid in interface javax.servlet.http.HttpServletRequest

setRequestedSessionIdFromCookie

public void setRequestedSessionIdFromCookie(boolean requestedSessionIdFromCookie)

isRequestedSessionIdFromCookie

public boolean isRequestedSessionIdFromCookie()
Specified by:
isRequestedSessionIdFromCookie in interface javax.servlet.http.HttpServletRequest

setRequestedSessionIdFromURL

public void setRequestedSessionIdFromURL(boolean requestedSessionIdFromURL)

isRequestedSessionIdFromURL

public boolean isRequestedSessionIdFromURL()
Specified by:
isRequestedSessionIdFromURL in interface javax.servlet.http.HttpServletRequest

isRequestedSessionIdFromUrl

public boolean isRequestedSessionIdFromUrl()
Specified by:
isRequestedSessionIdFromUrl in interface javax.servlet.http.HttpServletRequest


Copyright © 2008. All Rights Reserved.