Class Request

java.lang.Object
org.eclipse.jetty.server.Request
All Implemented Interfaces:
javax.servlet.http.HttpServletRequest, javax.servlet.ServletRequest

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 connection 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.

Request instances are recycled, which combined with badly written asynchronous applications can result in calls on requests that have been reset. The code is written in a style to avoid NPE and ISE when such calls are made, as this has often proved generate exceptions that distraction from debugging such bad asynchronous applications. Instead, request methods attempt to not fail when called in an illegal state, so that hopefully the bad application will proceed to a major state event (eg calling AsyncContext.onComplete) which has better asynchronous guards, true atomic state and better failure behaviour that will assist in debugging.

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.

If IOExceptions or timeouts occur while reading form parameters, these are thrown as unchecked Exceptions: ether RuntimeIOException, BadMessageException or RuntimeException as appropriate.

  • Field Details

    • MULTIPART_CONFIG_ELEMENT

      public static final String MULTIPART_CONFIG_ELEMENT
      See Also:
    • MULTIPARTS

      public static final String MULTIPARTS
      See Also:
    • LOG

      private static final Logger LOG
    • __defaultLocale

      private static final Collection<Locale> __defaultLocale
    • INPUT_NONE

      private static final int INPUT_NONE
      See Also:
    • INPUT_STREAM

      private static final int INPUT_STREAM
      See Also:
    • INPUT_READER

      private static final int INPUT_READER
      See Also:
    • NO_PARAMS

      private static final MultiMap<String> NO_PARAMS
    • _channel

      private final HttpChannel _channel
    • _requestAttributeListeners

      private final List<javax.servlet.ServletRequestAttributeListener> _requestAttributeListeners
    • _input

      private final HttpInput _input
    • _metaData

      private MetaData.Request _metaData
    • _originalURI

      private String _originalURI
    • _contextPath

      private String _contextPath
    • _servletPath

      private String _servletPath
    • _pathInfo

      private String _pathInfo
    • _asyncNotSupportedSource

      private Object _asyncNotSupportedSource
    • _secure

      private boolean _secure
    • _newContext

      private boolean _newContext
    • _cookiesExtracted

      private boolean _cookiesExtracted
    • _handled

      private boolean _handled
    • _contentParamsExtracted

      private boolean _contentParamsExtracted
    • _requestedSessionIdFromCookie

      private boolean _requestedSessionIdFromCookie
    • _attributes

      private Attributes _attributes
    • _authentication

      private Authentication _authentication
    • _contentType

      private String _contentType
    • _characterEncoding

      private String _characterEncoding
    • _context

      private ContextHandler.Context _context
    • _errorContext

      private ContextHandler.Context _errorContext
    • _cookies

      private CookieCutter _cookies
    • _dispatcherType

      private javax.servlet.DispatcherType _dispatcherType
    • _inputState

      private int _inputState
    • _reader

      private BufferedReader _reader
    • _readerEncoding

      private String _readerEncoding
    • _queryParameters

      private MultiMap<String> _queryParameters
    • _contentParameters

      private MultiMap<String> _contentParameters
    • _parameters

      private MultiMap<String> _parameters
    • _queryEncoding

      private String _queryEncoding
    • _remote

      private InetSocketAddress _remote
    • _requestedSessionId

      private String _requestedSessionId
    • _scope

      private UserIdentity.Scope _scope
    • _session

      private javax.servlet.http.HttpSession _session
    • _sessionHandler

      private SessionHandler _sessionHandler
    • _timeStamp

      private long _timeStamp
    • _multiParts

      private MultiParts _multiParts
    • _async

      private AsyncContextState _async
    • _sessions

      private List<Session> _sessions
  • Constructor Details

  • Method Details

    • isNoParams

      private static boolean isNoParams(MultiMap<String> inputParameters)
      Compare inputParameters to NO_PARAMS by Reference
      Parameters:
      inputParameters - The parameters to compare to NO_PARAMS
      Returns:
      True if the inputParameters reference is equal to NO_PARAMS otherwise False
    • getBaseRequest

      public static Request getBaseRequest(javax.servlet.ServletRequest request)
      Obtain the base Request instance of a ServletRequest, by coercion, unwrapping or special attribute.
      Parameters:
      request - The request
      Returns:
      the base Request instance of a ServletRequest.
    • getHttpFields

      public HttpFields getHttpFields()
    • getTrailers

      public HttpFields getTrailers()
    • getHttpInput

      public HttpInput getHttpInput()
    • isPush

      public boolean isPush()
    • isPushSupported

      public boolean isPushSupported()
    • getPushBuilder

      public PushBuilder getPushBuilder()
      Get a PushBuilder associated with this request initialized as follows:
      • The method is initialized to "GET"
      • The headers from this request are copied to the Builder, except for:
        • Conditional headers (eg. If-Modified-Since)
        • Range headers
        • Expect headers
        • Authorization headers
        • Referrer headers
      • If the request was Authenticated, an Authorization header will be set with a container generated token that will result in equivalent Authorization
      • The query string from getQueryString()
      • The getRequestedSessionId() value, unless at the time of the call getSession(boolean) has previously been called to create a new HttpSession, in which case the new session ID will be used as the PushBuilders requested session ID.
      • The source of the requested session id will be the same as for this request
      • The builders Referer header will be set to getRequestURL() plus any getQueryString()
      • If HttpServletResponse.addCookie(Cookie) has been called on the associated response, then a corresponding Cookie header will be added to the PushBuilder, unless the Cookie.getMaxAge() is <=0, in which case the Cookie will be removed from the builder.
      • If this request has has the conditional headers If-Modified-Since or If-None-Match then the PushBuilderImpl.isConditional() header is set to true.

      Each call to getPushBuilder() will return a new instance of a PushBuilder based off this Request. Any mutations to the returned PushBuilder are not reflected on future returns.

      Returns:
      A new PushBuilder or null if push is not supported
    • addEventListener

      public void addEventListener(EventListener listener)
    • enterSession

      public void enterSession(javax.servlet.http.HttpSession s)
      Remember a session that this request has just entered.
      Parameters:
      s - the session
    • leaveSession

      private void leaveSession(Session session)
      Complete this request's access to a session.
      Parameters:
      session - the session
    • commitSession

      private void commitSession(Session session)
      A response is being committed for a session, potentially write the session out before the client receives the response.
      Parameters:
      session - the session
    • getParameters

      private MultiMap<String> getParameters()
    • extractQueryParameters

      private void extractQueryParameters()
    • isContentEncodingSupported

      private boolean isContentEncodingSupported()
    • extractContentParameters

      private void extractContentParameters()
    • extractFormParameters

      public void extractFormParameters(MultiMap<String> params)
    • lookupServerAttribute

      private int lookupServerAttribute(String key, int dftValue)
    • getAsyncContext

      public javax.servlet.AsyncContext getAsyncContext()
      Specified by:
      getAsyncContext in interface javax.servlet.ServletRequest
    • getHttpChannelState

      public HttpChannelState getHttpChannelState()
    • getAttribute

      public Object getAttribute(String name)
      Get Request Attribute.

      Also supports jetty specific attributes to gain access to Jetty APIs:

      org.eclipse.jetty.server.Server
      The Jetty Server instance
      org.eclipse.jetty.server.HttpChannel
      The HttpChannel for this request
      org.eclipse.jetty.server.HttpConnection
      The HttpConnection or null if another transport is used
      While these attributes may look like security problems, they are exposing nothing that is not already available via reflection from a Request instance.
      Specified by:
      getAttribute in interface javax.servlet.ServletRequest
      See Also:
      • ServletRequest.getAttribute(java.lang.String)
    • getAttributeNames

      public Enumeration<String> 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
    • getHttpChannel

      public HttpChannel getHttpChannel()
      Returns:
      Returns the connection.
    • getContentLength

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

      public long getContentLengthLong()
      Specified by:
      getContentLengthLong 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.
    • getErrorContext

      public ContextHandler.Context getErrorContext()
      Returns:
      The current context used for this error handling for this request. If the request is asynchronous, then it is the context that called async. Otherwise it is the last non-null context passed to #setContext
    • 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 javax.servlet.DispatcherType getDispatcherType()
      Specified by:
      getDispatcherType in interface javax.servlet.ServletRequest
    • getHeader

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

      public Enumeration<String> getHeaderNames()
      Specified by:
      getHeaderNames in interface javax.servlet.http.HttpServletRequest
    • getHeaders

      public Enumeration<String> 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
    • getLocale

      public Locale getLocale()
      Specified by:
      getLocale in interface javax.servlet.ServletRequest
    • getLocales

      public Enumeration<Locale> getLocales()
      Specified by:
      getLocales in interface javax.servlet.ServletRequest
    • getLocalAddr

      public String getLocalAddr()
      Specified by:
      getLocalAddr 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<String,String[]> getParameterMap()
      Specified by:
      getParameterMap in interface javax.servlet.ServletRequest
    • getParameterNames

      public Enumeration<String> getParameterNames()
      Specified by:
      getParameterNames in interface javax.servlet.ServletRequest
    • getParameterValues

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

      public MultiMap<String> getQueryParameters()
    • setQueryParameters

      public void setQueryParameters(MultiMap<String> queryParameters)
    • setContentParameters

      public void setContentParameters(MultiMap<String> contentParameters)
    • resetParameters

      public void resetParameters()
    • 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
    • getHttpVersion

      public HttpVersion getHttpVersion()
    • 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
    • getRemoteInetSocketAddress

      public InetSocketAddress getRemoteInetSocketAddress()
      Access the underlying Remote InetSocketAddress for this request.
      Returns:
      the remote InetSocketAddress for this request, or null if the request has no remote (see ServletRequest.getRemoteAddr() for conditions that result in no remote address)
    • 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
    • findServerName

      private String findServerName()
    • getServerPort

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

      private int findServerPort()
    • getServletContext

      public javax.servlet.ServletContext getServletContext()
      Specified by:
      getServletContext in interface javax.servlet.ServletRequest
    • getServletName

      public String getServletName()
    • getServletPath

      public String getServletPath()
      Specified by:
      getServletPath in interface javax.servlet.http.HttpServletRequest
    • getServletResponse

      public javax.servlet.ServletResponse getServletResponse()
    • changeSessionId

      public String changeSessionId()
      Specified by:
      changeSessionId in interface javax.servlet.http.HttpServletRequest
    • onCompleted

      public void onCompleted()
      Called when the request is fully finished being handled. For every session in any context that the session has accessed, ensure that the session is completed.
    • onResponseCommit

      public void onResponseCommit()
      Called when a response is about to be committed, ie sent back to the client
    • getSession

      public javax.servlet.http.HttpSession getSession(SessionHandler sessionHandler)
      Find a session that this request has already entered for the given SessionHandler
      Parameters:
      sessionHandler - the SessionHandler (ie context) to check
      Returns:
    • 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
    • getSessionHandler

      public SessionHandler getSessionHandler()
      Returns:
      Returns the sessionManager.
    • getTimeStamp

      public long getTimeStamp()
      Get Request TimeStamp
      Returns:
      The time that the request was received.
    • getHttpURI

      public HttpURI getHttpURI()
      Returns:
      Returns the uri.
    • getOriginalURI

      public String getOriginalURI()
      Returns:
      Returns the original uri passed in metadata before customization/rewrite
    • setHttpURI

      public void setHttpURI(HttpURI uri)
      Parameters:
      uri - the URI to set
    • 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
    • isHandled

      public boolean isHandled()
    • isAsyncStarted

      public boolean isAsyncStarted()
      Specified by:
      isAsyncStarted in interface javax.servlet.ServletRequest
    • isAsyncSupported

      public boolean isAsyncSupported()
      Specified by:
      isAsyncSupported in interface javax.servlet.ServletRequest
    • 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
    • setSecure

      public void setSecure(boolean secure)
    • isUserInRole

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

      public void setMetaData(MetaData.Request request)
      Parameters:
      request - the Request metadata
    • getMetaData

      public MetaData.Request getMetaData()
    • hasMetaData

      public boolean hasMetaData()
    • recycle

      protected void recycle()
    • removeAttribute

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

      public void removeEventListener(EventListener listener)
    • setAsyncSupported

      public void setAsyncSupported(boolean supported, Object source)
    • setAttribute

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

      public void setAttributes(Attributes attributes)
    • setAsyncAttributes

      public void setAsyncAttributes()
    • 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)
    • 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
      Parameters:
      contextPath - 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(javax.servlet.DispatcherType type)
    • setHandled

      public void setHandled(boolean h)
    • setMethod

      public void setMethod(String method)
      Parameters:
      method - The method to set.
    • setHttpVersion

      public void setHttpVersion(HttpVersion version)
    • isHead

      public boolean isHead()
    • setPathInfo

      public void setPathInfo(String pathInfo)
      Parameters:
      pathInfo - The pathInfo 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 getParameter methods. The request attribute "org.eclipse.jetty.server.Request.queryEncoding" may be set as an alternate method of calling setQueryEncoding.
      Parameters:
      queryEncoding - the URI query character encoding
    • setQueryString

      public void setQueryString(String queryString)
      Parameters:
      queryString - The queryString to set.
    • setRemoteAddr

      public void setRemoteAddr(InetSocketAddress addr)
      Parameters:
      addr - The address 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.
    • setURIPathQuery

      public void setURIPathQuery(String requestURI)
    • setScheme

      public void setScheme(String scheme)
      Parameters:
      scheme - The scheme to set.
    • setAuthority

      public void setAuthority(String host, int port)
      Parameters:
      host - The host to set.
      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.
    • setSessionHandler

      public void setSessionHandler(SessionHandler sessionHandler)
      Parameters:
      sessionHandler - The SessionHandler to set.
    • setTimeStamp

      public void setTimeStamp(long ts)
    • setUserIdentityScope

      public void setUserIdentityScope(UserIdentity.Scope scope)
    • startAsync

      public javax.servlet.AsyncContext startAsync() throws IllegalStateException
      Specified by:
      startAsync in interface javax.servlet.ServletRequest
      Throws:
      IllegalStateException
    • startAsync

      public javax.servlet.AsyncContext startAsync(javax.servlet.ServletRequest servletRequest, javax.servlet.ServletResponse servletResponse) throws IllegalStateException
      Specified by:
      startAsync in interface javax.servlet.ServletRequest
      Throws:
      IllegalStateException
    • unwrap

      public static javax.servlet.http.HttpServletRequest unwrap(javax.servlet.ServletRequest servletRequest)
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • authenticate

      public boolean authenticate(javax.servlet.http.HttpServletResponse response) throws IOException, javax.servlet.ServletException
      Specified by:
      authenticate in interface javax.servlet.http.HttpServletRequest
      Throws:
      IOException
      javax.servlet.ServletException
    • getPart

      public javax.servlet.http.Part getPart(String name) throws IOException, javax.servlet.ServletException
      Specified by:
      getPart in interface javax.servlet.http.HttpServletRequest
      Throws:
      IOException
      javax.servlet.ServletException
    • getParts

      public Collection<javax.servlet.http.Part> getParts() throws IOException, javax.servlet.ServletException
      Specified by:
      getParts in interface javax.servlet.http.HttpServletRequest
      Throws:
      IOException
      javax.servlet.ServletException
    • getParts

      private Collection<javax.servlet.http.Part> getParts(MultiMap<String> params) throws IOException
      Throws:
      IOException
    • newMultiParts

      private MultiParts newMultiParts(javax.servlet.MultipartConfigElement config) throws IOException
      Throws:
      IOException
    • login

      public void login(String username, String password) throws javax.servlet.ServletException
      Specified by:
      login in interface javax.servlet.http.HttpServletRequest
      Throws:
      javax.servlet.ServletException
    • logout

      public void logout() throws javax.servlet.ServletException
      Specified by:
      logout in interface javax.servlet.http.HttpServletRequest
      Throws:
      javax.servlet.ServletException
    • mergeQueryParameters

      public void mergeQueryParameters(String oldQuery, String newQuery, boolean updateQueryString)
    • upgrade

      public <T extends javax.servlet.http.HttpUpgradeHandler> T upgrade(Class<T> handlerClass) throws IOException, javax.servlet.ServletException
      Specified by:
      upgrade in interface javax.servlet.http.HttpServletRequest
      Throws:
      IOException
      javax.servlet.ServletException
      See Also:
      • HttpServletRequest.upgrade(java.lang.Class)