org.eclipse.jetty.server

## Class Request

- java.lang.Object
- - org.eclipse.jetty.server.Request

- All Implemented Interfaces:
    javax.servlet.http.HttpServletRequest, javax.servlet.ServletRequest
  Direct Known Subclasses:
    Ajp13Request, NestedRequest

      public class Request
      extends Object
      implements javax.servlet.http.HttpServletRequest

  Jetty Request.

  Implements `HttpServletRequest` from the `javax.servlet.http` package.

  The standard interface of mostly getters, is extended with setters so that the request is mutable by the handlers that it is passed to. This allows the request object to be as lightweight as possible and not actually implement any significant behavior. For example

  - The `getContextPath()` method will return null, until the request has been passed to a `ContextHandler` which matches the `getPathInfo()` with a context path and calls `setContextPath(String)` as a result.
  - the HTTP session methods will all return null sessions until such time as a request has been passed to a `SessionHandler` which checks for session cookies and enables the ability to create new sessions.
  - The `getServletPath()` method will return null until the request has been passed to a `org.eclipse.jetty.servlet.ServletHandler` and the pathInfo matched against the servlet URL patterns and `setServletPath(String)` called as a result.
  A request instance is created for each `AbstractHttpConnection` accepted by the server and recycled for each HTTP request received via that connection. An effort is made to avoid reparsing headers and cookies that are likely to be the same for requests from the same connection.

  The form content that a request can process is limited to protect from Denial of Service attacks. The size in bytes is limited by `ContextHandler.getMaxFormContentSize()` or if there is no context then the "org.eclipse.jetty.server.Request.maxFormContentSize" `Server` attribute. The number of parameters keys is limited by `ContextHandler.getMaxFormKeys()` or if there is no context then the "org.eclipse.jetty.server.Request.maxFormKeys" `Server` attribute.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected AsyncContinuation` | `_async`
    `protected AbstractHttpConnection` | `_connection`

    - ### Fields inherited from interface javax.servlet.http.HttpServletRequest

      `BASIC_AUTH, CLIENT_CERT_AUTH, DIGEST_AUTH, FORM_AUTH`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Request()`
    `Request(AbstractHttpConnection connection)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addEventListener(EventListener listener)`
    `void` | `extractParameters()` Extract Parameters from query string and/or form _content.
    `AsyncContext` | `getAsyncContext()`
    `AsyncContinuation` | `getAsyncContinuation()`
    `Object` | `getAttribute(String name)`
    `Enumeration` | `getAttributeNames()`
    `Attributes` | `getAttributes()`
    `Authentication` | `getAuthentication()` Get the authentication.
    `String` | `getAuthType()`
    `String` | `getCharacterEncoding()`
    `AbstractHttpConnection` | `getConnection()`
    `int` | `getContentLength()`
    `long` | `getContentRead()`
    `String` | `getContentType()`
    `ContextHandler.Context` | `getContext()`
    `String` | `getContextPath()`
    `javax.servlet.http.Cookie[]` | `getCookies()`
    `long` | `getDateHeader(String name)`
    `DispatcherType` | `getDispatcherType()`
    `long` | `getDispatchTime()` Get timestamp of the request dispatch
    `String` | `getHeader(String name)`
    `Enumeration` | `getHeaderNames()`
    `Enumeration` | `getHeaders(String name)`
    `int` | `getInputState()`
    `javax.servlet.ServletInputStream` | `getInputStream()`
    `int` | `getIntHeader(String name)`
    `String` | `getLocalAddr()`
    `Locale` | `getLocale()`
    `Enumeration` | `getLocales()`
    `String` | `getLocalName()`
    `int` | `getLocalPort()`
    `String` | `getMethod()`
    `String` | `getParameter(String name)`
    `Map` | `getParameterMap()`
    `Enumeration` | `getParameterNames()`
    `MultiMap<String>` | `getParameters()`
    `String[]` | `getParameterValues(String name)`
    `String` | `getPathInfo()`
    `String` | `getPathTranslated()`
    `String` | `getProtocol()`
    `String` | `getQueryEncoding()`
    `String` | `getQueryString()`
    `BufferedReader` | `getReader()`
    `String` | `getRealPath(String path)`
    `String` | `getRemoteAddr()`
    `String` | `getRemoteHost()`
    `int` | `getRemotePort()`
    `String` | `getRemoteUser()`
    `static Request` | `getRequest(javax.servlet.http.HttpServletRequest request)`
    `javax.servlet.RequestDispatcher` | `getRequestDispatcher(String path)`
    `String` | `getRequestedSessionId()`
    `String` | `getRequestURI()`
    `StringBuffer` | `getRequestURL()`
    `UserIdentity` | `getResolvedUserIdentity()`
    `Response` | `getResponse()`
    `StringBuilder` | `getRootURL()` Reconstructs the URL the client used to make the request.
    `String` | `getScheme()`
    `String` | `getServerName()`
    `int` | `getServerPort()`
    `javax.servlet.ServletContext` | `getServletContext()`
    `String` | `getServletName()`
    `String` | `getServletPath()`
    `javax.servlet.ServletResponse` | `getServletResponse()`
    `javax.servlet.http.HttpSession` | `getSession()`
    `javax.servlet.http.HttpSession` | `getSession(boolean create)`
    `SessionManager` | `getSessionManager()`
    `long` | `getTimeStamp()` Get Request TimeStamp
    `Buffer` | `getTimeStampBuffer()` Get Request TimeStamp
    `HttpURI` | `getUri()`
    `UserIdentity` | `getUserIdentity()`
    `UserIdentity.Scope` | `getUserIdentityScope()`
    `Principal` | `getUserPrincipal()`
    `boolean` | `isAsyncSupported()`
    `boolean` | `isHandled()`
    `boolean` | `isRequestedSessionIdFromCookie()`
    `boolean` | `isRequestedSessionIdFromUrl()`
    `boolean` | `isRequestedSessionIdFromURL()`
    `boolean` | `isRequestedSessionIdValid()`
    `boolean` | `isSecure()`
    `boolean` | `isUserInRole(String role)`
    `void` | `mergeQueryString(String query)` Merge in a new query string.
    `javax.servlet.http.HttpSession` | `recoverNewSession(Object key)`
    `protected void` | `recycle()`
    `void` | `removeAttribute(String name)`
    `void` | `removeEventListener(EventListener listener)`
    `void` | `saveNewSession(Object key, javax.servlet.http.HttpSession session)`
    `void` | `setAsyncSupported(boolean supported)`
    `void` | `setAttribute(String name, Object value)`
    `void` | `setAttributes(Attributes attributes)`
    `void` | `setAuthentication(Authentication authentication)` Set the authentication.
    `void` | `setCharacterEncoding(String encoding)`
    `void` | `setCharacterEncodingUnchecked(String encoding)`
    `protected void` | `setConnection(AbstractHttpConnection connection)`
    `void` | `setContentType(String contentType)`
    `void` | `setContext(ContextHandler.Context context)` Set request context
    `void` | `setContextPath(String contextPath)` Sets the "context path" for this request
    `void` | `setCookies(javax.servlet.http.Cookie[] cookies)`
    `void` | `setDispatcherType(DispatcherType type)`
    `void` | `setDispatchTime(long value)` Set timetstamp of request dispatch
    `void` | `setHandled(boolean h)`
    `void` | `setMethod(String method)`
    `void` | `setParameters(MultiMap<String> parameters)`
    `void` | `setPathInfo(String pathInfo)`
    `void` | `setProtocol(String protocol)`
    `void` | `setQueryEncoding(String queryEncoding)` Set the character encoding used for the query string.
    `void` | `setQueryString(String queryString)`
    `void` | `setRemoteAddr(String addr)`
    `void` | `setRemoteHost(String host)`
    `void` | `setRequestedSessionId(String requestedSessionId)`
    `void` | `setRequestedSessionIdFromCookie(boolean requestedSessionIdCookie)`
    `void` | `setRequestURI(String requestURI)`
    `void` | `setScheme(String scheme)`
    `void` | `setServerName(String host)`
    `void` | `setServerPort(int port)`
    `void` | `setServletPath(String servletPath)`
    `void` | `setSession(javax.servlet.http.HttpSession session)`
    `void` | `setSessionManager(SessionManager sessionManager)`
    `void` | `setTimeStamp(long ts)`
    `void` | `setUri(HttpURI uri)`
    `void` | `setUserIdentityScope(UserIdentity.Scope scope)`
    `AsyncContext` | `startAsync()`
    `AsyncContext` | `startAsync(javax.servlet.ServletRequest servletRequest, javax.servlet.ServletResponse servletResponse)`
    `boolean` | `takeNewContext()`
    `String` | `toString()`

    - ### Methods inherited from class java.lang.Object

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

- - ### Field Detail

    - #### _async

          protected final AsyncContinuation _async

    - #### _connection

          protected AbstractHttpConnection _connection

  - ### Constructor Detail

    - #### Request

          public Request()

    - #### Request

          public Request(AbstractHttpConnection connection)

  - ### Method Detail

    - #### getRequest

          public static Request getRequest(javax.servlet.http.HttpServletRequest request)

    - #### addEventListener

          public void addEventListener(EventListener listener)

    - #### extractParameters

          public void extractParameters()

      Extract Parameters from query string and/or form _content.

    - #### getAsyncContext

          public AsyncContext getAsyncContext()

    - #### getAsyncContinuation

          public AsyncContinuation getAsyncContinuation()

    - #### getAttribute

          public Object getAttribute(String name)

      Specified by:
        `getAttribute` in interface `javax.servlet.ServletRequest`

    - #### getAttributeNames

          public Enumeration getAttributeNames()

      Specified by:
        `getAttributeNames` in interface `javax.servlet.ServletRequest`

    - #### getAttributes

          public Attributes getAttributes()

    - #### getAuthentication

          public Authentication getAuthentication()

      Get the authentication.
      Returns:
        the authentication

    - #### getAuthType

          public String getAuthType()

      Specified by:
        `getAuthType` in interface `javax.servlet.http.HttpServletRequest`

    - #### getCharacterEncoding

          public String getCharacterEncoding()

      Specified by:
        `getCharacterEncoding` in interface `javax.servlet.ServletRequest`

    - #### getConnection

          public AbstractHttpConnection getConnection()

      Returns:
        Returns the connection.

    - #### getContentLength

          public int getContentLength()

      Specified by:
        `getContentLength` in interface `javax.servlet.ServletRequest`

    - #### getContentRead

          public long getContentRead()

    - #### getContentType

          public String getContentType()

      Specified by:
        `getContentType` in interface `javax.servlet.ServletRequest`

    - #### getContext

          public ContextHandler.Context getContext()

      Returns:
        The current `context` used for this request, or `null` if `setContext(org.eclipse.jetty.server.handler.ContextHandler.Context)` has not yet been called.

    - #### getContextPath

          public String getContextPath()

      Specified by:
        `getContextPath` in interface `javax.servlet.http.HttpServletRequest`

    - #### getCookies

          public javax.servlet.http.Cookie[] getCookies()

      Specified by:
        `getCookies` in interface `javax.servlet.http.HttpServletRequest`

    - #### getDateHeader

          public long getDateHeader(String name)

      Specified by:
        `getDateHeader` in interface `javax.servlet.http.HttpServletRequest`

    - #### getDispatcherType

          public DispatcherType getDispatcherType()

    - #### getHeader

          public String getHeader(String name)

      Specified by:
        `getHeader` in interface `javax.servlet.http.HttpServletRequest`

    - #### getHeaderNames

          public Enumeration getHeaderNames()

      Specified by:
        `getHeaderNames` in interface `javax.servlet.http.HttpServletRequest`

    - #### getHeaders

          public Enumeration getHeaders(String name)

      Specified by:
        `getHeaders` in interface `javax.servlet.http.HttpServletRequest`

    - #### getInputState

          public int getInputState()

      Returns:
        Returns the inputState.

    - #### getInputStream

          public javax.servlet.ServletInputStream getInputStream()
                                                          throws IOException

      Specified by:
        `getInputStream` in interface `javax.servlet.ServletRequest`
      Throws:
        `IOException`

    - #### getIntHeader

          public int getIntHeader(String name)

      Specified by:
        `getIntHeader` in interface `javax.servlet.http.HttpServletRequest`

    - #### getLocalAddr

          public String getLocalAddr()

      Specified by:
        `getLocalAddr` in interface `javax.servlet.ServletRequest`

    - #### getLocale

          public Locale getLocale()

      Specified by:
        `getLocale` in interface `javax.servlet.ServletRequest`

    - #### getLocales

          public Enumeration getLocales()

      Specified by:
        `getLocales` in interface `javax.servlet.ServletRequest`

    - #### getLocalName

          public String getLocalName()

      Specified by:
        `getLocalName` in interface `javax.servlet.ServletRequest`

    - #### getLocalPort

          public int getLocalPort()

      Specified by:
        `getLocalPort` in interface `javax.servlet.ServletRequest`

    - #### getMethod

          public String getMethod()

      Specified by:
        `getMethod` in interface `javax.servlet.http.HttpServletRequest`

    - #### getParameter

          public String getParameter(String name)

      Specified by:
        `getParameter` in interface `javax.servlet.ServletRequest`

    - #### getParameterMap

          public Map getParameterMap()

      Specified by:
        `getParameterMap` in interface `javax.servlet.ServletRequest`

    - #### getParameterNames

          public Enumeration getParameterNames()

      Specified by:
        `getParameterNames` in interface `javax.servlet.ServletRequest`

    - #### getParameters

          public MultiMap<String> getParameters()

      Returns:
        Returns the parameters.

    - #### getParameterValues

          public String[] getParameterValues(String name)

      Specified by:
        `getParameterValues` in interface `javax.servlet.ServletRequest`

    - #### getPathInfo

          public String getPathInfo()

      Specified by:
        `getPathInfo` in interface `javax.servlet.http.HttpServletRequest`

    - #### getPathTranslated

          public String getPathTranslated()

      Specified by:
        `getPathTranslated` in interface `javax.servlet.http.HttpServletRequest`

    - #### getProtocol

          public String getProtocol()

      Specified by:
        `getProtocol` in interface `javax.servlet.ServletRequest`

    - #### getQueryEncoding

          public String getQueryEncoding()

    - #### getQueryString

          public String getQueryString()

      Specified by:
        `getQueryString` in interface `javax.servlet.http.HttpServletRequest`

    - #### getReader

          public BufferedReader getReader()
                                   throws IOException

      Specified by:
        `getReader` in interface `javax.servlet.ServletRequest`
      Throws:
        `IOException`

    - #### getRealPath

          public String getRealPath(String path)

      Specified by:
        `getRealPath` in interface `javax.servlet.ServletRequest`

    - #### getRemoteAddr

          public String getRemoteAddr()

      Specified by:
        `getRemoteAddr` in interface `javax.servlet.ServletRequest`

    - #### getRemoteHost

          public String getRemoteHost()

      Specified by:
        `getRemoteHost` in interface `javax.servlet.ServletRequest`

    - #### getRemotePort

          public int getRemotePort()

      Specified by:
        `getRemotePort` in interface `javax.servlet.ServletRequest`

    - #### getRemoteUser

          public String getRemoteUser()

      Specified by:
        `getRemoteUser` in interface `javax.servlet.http.HttpServletRequest`

    - #### getRequestDispatcher

          public javax.servlet.RequestDispatcher getRequestDispatcher(String path)

      Specified by:
        `getRequestDispatcher` in interface `javax.servlet.ServletRequest`

    - #### getRequestedSessionId

          public String getRequestedSessionId()

      Specified by:
        `getRequestedSessionId` in interface `javax.servlet.http.HttpServletRequest`

    - #### getRequestURI

          public String getRequestURI()

      Specified by:
        `getRequestURI` in interface `javax.servlet.http.HttpServletRequest`

    - #### getRequestURL

          public StringBuffer getRequestURL()

      Specified by:
        `getRequestURL` in interface `javax.servlet.http.HttpServletRequest`

    - #### getResponse

          public Response getResponse()

    - #### getRootURL

          public StringBuilder getRootURL()

      Reconstructs the URL the client used to make the request. The returned URL contains a protocol, server name, port number, and, but it does not include a path.

      Because this method returns a `StringBuffer`, not a string, you can modify the URL easily, for example, to append path and query parameters. This method is useful for creating redirect messages and for reporting errors.

      Returns:
        "scheme://host:port"

    - #### getScheme

          public String getScheme()

      Specified by:
        `getScheme` in interface `javax.servlet.ServletRequest`

    - #### getServerName

          public String getServerName()

      Specified by:
        `getServerName` in interface `javax.servlet.ServletRequest`

    - #### getServerPort

          public int getServerPort()

      Specified by:
        `getServerPort` in interface `javax.servlet.ServletRequest`

    - #### getServletContext

          public javax.servlet.ServletContext getServletContext()

    - #### getServletName

          public String getServletName()

    - #### getServletPath

          public String getServletPath()

      Specified by:
        `getServletPath` in interface `javax.servlet.http.HttpServletRequest`

    - #### getServletResponse

          public javax.servlet.ServletResponse getServletResponse()

    - #### getSession

          public javax.servlet.http.HttpSession getSession()

      Specified by:
        `getSession` in interface `javax.servlet.http.HttpServletRequest`

    - #### getSession

          public javax.servlet.http.HttpSession getSession(boolean create)

      Specified by:
        `getSession` in interface `javax.servlet.http.HttpServletRequest`

    - #### getSessionManager

          public SessionManager getSessionManager()

      Returns:
        Returns the sessionManager.

    - #### getTimeStamp

          public long getTimeStamp()

      Get Request TimeStamp
      Returns:
        The time that the request was received.

    - #### getTimeStampBuffer

          public Buffer getTimeStampBuffer()

      Get Request TimeStamp
      Returns:
        The time that the request was received.

    - #### getUri

          public HttpURI getUri()

      Returns:
        Returns the uri.

    - #### getUserIdentity

          public UserIdentity getUserIdentity()

    - #### getResolvedUserIdentity

          public UserIdentity getResolvedUserIdentity()

      Returns:
        The resolved user Identity, which may be null if the `Authentication` is not `Authentication.User` (eg. `Authentication.Deferred`).

    - #### getUserIdentityScope

          public UserIdentity.Scope getUserIdentityScope()

    - #### getUserPrincipal

          public Principal getUserPrincipal()

      Specified by:
        `getUserPrincipal` in interface `javax.servlet.http.HttpServletRequest`

    - #### getDispatchTime

          public long getDispatchTime()

      Get timestamp of the request dispatch
      Returns:
        timestamp

    - #### isHandled

          public boolean isHandled()

    - #### isAsyncSupported

          public boolean isAsyncSupported()

    - #### isRequestedSessionIdFromCookie

          public boolean isRequestedSessionIdFromCookie()

      Specified by:
        `isRequestedSessionIdFromCookie` in interface `javax.servlet.http.HttpServletRequest`

    - #### 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`

    - #### isRequestedSessionIdValid

          public boolean isRequestedSessionIdValid()

      Specified by:
        `isRequestedSessionIdValid` in interface `javax.servlet.http.HttpServletRequest`

    - #### isSecure

          public boolean isSecure()

      Specified by:
        `isSecure` in interface `javax.servlet.ServletRequest`

    - #### isUserInRole

          public boolean isUserInRole(String role)

      Specified by:
        `isUserInRole` in interface `javax.servlet.http.HttpServletRequest`

    - #### recoverNewSession

          public javax.servlet.http.HttpSession recoverNewSession(Object key)

    - #### recycle

          protected void recycle()

    - #### removeAttribute

          public void removeAttribute(String name)

      Specified by:
        `removeAttribute` in interface `javax.servlet.ServletRequest`

    - #### removeEventListener

          public void removeEventListener(EventListener listener)

    - #### saveNewSession

          public void saveNewSession(Object key,
                            javax.servlet.http.HttpSession session)

    - #### setAsyncSupported

          public void setAsyncSupported(boolean supported)

    - #### setAttribute

          public void setAttribute(String name,
                          Object value)

      Specified by:
        `setAttribute` in interface `javax.servlet.ServletRequest`

    - #### setAttributes

          public void setAttributes(Attributes attributes)

    - #### setAuthentication

          public void setAuthentication(Authentication authentication)

      Set the authentication.
      Parameters:
        `authentication` - the authentication to set

    - #### setCharacterEncoding

          public void setCharacterEncoding(String encoding)
                                    throws UnsupportedEncodingException

      Specified by:
        `setCharacterEncoding` in interface `javax.servlet.ServletRequest`
      Throws:
        `UnsupportedEncodingException`

    - #### setCharacterEncodingUnchecked

          public void setCharacterEncodingUnchecked(String encoding)

    - #### setConnection

          protected final void setConnection(AbstractHttpConnection connection)

    - #### setContentType

          public void setContentType(String contentType)

    - #### setContext

          public void setContext(ContextHandler.Context context)

      Set request context
      Parameters:
        `context` - context object

    - #### takeNewContext

          public boolean takeNewContext()

      Returns:
        True if this is the first call of `takeNewContext()` since the last `setContext(org.eclipse.jetty.server.handler.ContextHandler.Context)` call.

    - #### setContextPath

          public void setContextPath(String contextPath)

      Sets the "context path" for this request
      See Also:
        `HttpServletRequest.getContextPath()`

    - #### setCookies

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

      Parameters:
        `cookies` - The cookies to set.

    - #### setDispatcherType

          public void setDispatcherType(DispatcherType type)

    - #### setHandled

          public void setHandled(boolean h)

    - #### setMethod

          public void setMethod(String method)

      Parameters:
        `method` - The method to set.

    - #### setParameters

          public void setParameters(MultiMap<String> parameters)

      Parameters:
        `parameters` - The parameters to set.

    - #### setPathInfo

          public void setPathInfo(String pathInfo)

      Parameters:
        `pathInfo` - The pathInfo to set.

    - #### setProtocol

          public void setProtocol(String protocol)

      Parameters:
        `protocol` - The protocol to set.

    - #### setQueryEncoding

          public void setQueryEncoding(String queryEncoding)

      Set the character encoding used for the query string. This call will effect the return of getQueryString and getParamaters. It must be called before any geParameter methods. The request attribute "org.eclipse.jetty.server.server.Request.queryEncoding" may be set as an alternate method of calling setQueryEncoding.
      Parameters:
        `queryEncoding` -

    - #### setQueryString

          public void setQueryString(String queryString)

      Parameters:
        `queryString` - The queryString to set.

    - #### setRemoteAddr

          public void setRemoteAddr(String addr)

      Parameters:
        `addr` - The address to set.

    - #### setRemoteHost

          public void setRemoteHost(String host)

      Parameters:
        `host` - The host to set.

    - #### setRequestedSessionId

          public void setRequestedSessionId(String requestedSessionId)

      Parameters:
        `requestedSessionId` - The requestedSessionId to set.

    - #### setRequestedSessionIdFromCookie

          public void setRequestedSessionIdFromCookie(boolean requestedSessionIdCookie)

      Parameters:
        `requestedSessionIdCookie` - The requestedSessionIdCookie to set.

    - #### setRequestURI

          public void setRequestURI(String requestURI)

      Parameters:
        `requestURI` - The requestURI to set.

    - #### setScheme

          public void setScheme(String scheme)

      Parameters:
        `scheme` - The scheme to set.

    - #### setServerName

          public void setServerName(String host)

      Parameters:
        `host` - The host to set.

    - #### setServerPort

          public void setServerPort(int port)

      Parameters:
        `port` - The port to set.

    - #### setServletPath

          public void setServletPath(String servletPath)

      Parameters:
        `servletPath` - The servletPath to set.

    - #### setSession

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

      Parameters:
        `session` - The session to set.

    - #### setSessionManager

          public void setSessionManager(SessionManager sessionManager)

      Parameters:
        `sessionManager` - The sessionManager to set.

    - #### setTimeStamp

          public void setTimeStamp(long ts)

    - #### setUri

          public void setUri(HttpURI uri)

      Parameters:
        `uri` - The uri to set.

    - #### setUserIdentityScope

          public void setUserIdentityScope(UserIdentity.Scope scope)

    - #### setDispatchTime

          public void setDispatchTime(long value)

      Set timetstamp of request dispatch
      Parameters:
        `value` - timestamp

    - #### startAsync

          public AsyncContext startAsync()
                                  throws IllegalStateException

      Throws:
        `IllegalStateException`

    - #### startAsync

          public AsyncContext startAsync(javax.servlet.ServletRequest servletRequest,
                                javax.servlet.ServletResponse servletResponse)
                                  throws IllegalStateException

      Throws:
        `IllegalStateException`

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

    - #### mergeQueryString

          public void mergeQueryString(String query)

      Merge in a new query string. The query string is merged with the existing parameters and `setParameters(MultiMap)` and `setQueryString(String)` are called with the result. The merge is according to the rules of the servlet dispatch forward method.
      Parameters:
        `query` - The query string to merge into the request.

Copyright © 1995-2016 Mort Bay Consulting. All Rights Reserved.