org.springframework.web.context.request
Interface WebRequest

All Superinterfaces:
RequestAttributes
All Known Subinterfaces:
NativeWebRequest
All Known Implementing Classes:
DispatcherServletWebRequest, FacesWebRequest, PortletWebRequest, ServletWebRequest

public interface WebRequest
extends RequestAttributes

Generic interface for a web request. Mainly intended for generic web request interceptors, giving them access to general request metadata, not for actual handling of the request.

Since:
2.0
Author:
Juergen Hoeller
See Also:
WebRequestInterceptor

Field Summary
 
Fields inherited from interface org.springframework.web.context.request.RequestAttributes
SCOPE_GLOBAL_SESSION, SCOPE_REQUEST, SCOPE_SESSION
 
Method Summary
 boolean checkNotModified(long lastModifiedTimestamp)
          Check whether the request qualifies as not modified given the supplied last-modified timestamp (as determined by the application).
 String getContextPath()
          Return the context path for this request (usually the base path that the current web application is mapped to).
 String getDescription(boolean includeClientInfo)
          Get a short description of this request, typically containing request URI and session id.
 Locale getLocale()
          Return the primary Locale for this request.
 String getParameter(String paramName)
          Return the request parameter of the given name, or null if none.
 Map getParameterMap()
          Return a immutable Map of the request parameters, with parameter names as map keys and parameter values as map values.
 String[] getParameterValues(String paramName)
          Return the request parameter values for the given parameter name, or null if none.
 String getRemoteUser()
          Return the remote user for this request, if any.
 Principal getUserPrincipal()
          Return the user principal for this request, if any.
 boolean isSecure()
          Return whether this request has been sent over a secure transport mechanism (such as SSL).
 boolean isUserInRole(String role)
          Determine whether the user is in the given role for this request.
 
Methods inherited from interface org.springframework.web.context.request.RequestAttributes
getAttribute, getAttributeNames, getSessionId, getSessionMutex, registerDestructionCallback, removeAttribute, setAttribute
 

Method Detail

getParameter

String getParameter(String paramName)
Return the request parameter of the given name, or null if none.

Retrieves the first parameter value in case of a multi-value parameter.

See Also:
ServletRequest.getParameter(String)

getParameterValues

String[] getParameterValues(String paramName)
Return the request parameter values for the given parameter name, or null if none.

A single-value parameter will be exposed as an array with a single element.

See Also:
ServletRequest.getParameterValues(String)

getParameterMap

Map getParameterMap()
Return a immutable Map of the request parameters, with parameter names as map keys and parameter values as map values. The map values will be of type String array.

A single-value parameter will be exposed as an array with a single element.

See Also:
ServletRequest.getParameterMap()

getLocale

Locale getLocale()
Return the primary Locale for this request.

See Also:
ServletRequest.getLocale()

getContextPath

String getContextPath()
Return the context path for this request (usually the base path that the current web application is mapped to).

See Also:
HttpServletRequest.getContextPath()

getRemoteUser

String getRemoteUser()
Return the remote user for this request, if any.

See Also:
HttpServletRequest.getRemoteUser()

getUserPrincipal

Principal getUserPrincipal()
Return the user principal for this request, if any.

See Also:
HttpServletRequest.getUserPrincipal()

isUserInRole

boolean isUserInRole(String role)
Determine whether the user is in the given role for this request.

See Also:
HttpServletRequest.isUserInRole(String)

isSecure

boolean isSecure()
Return whether this request has been sent over a secure transport mechanism (such as SSL).

See Also:
ServletRequest.isSecure()

checkNotModified

boolean checkNotModified(long lastModifiedTimestamp)
Check whether the request qualifies as not modified given the supplied last-modified timestamp (as determined by the application).

This will also transparently set the appropriate response headers, for both the modified case and the not-modified case.

Typical usage:

 public String myHandleMethod(WebRequest webRequest, Model model) {
   long lastModified = // application-specific calculation
   if (request.checkNotModified(lastModified)) {
     // shortcut exit - no further processing necessary
     return null;
   }
   // further request processing, actually building content
   model.addAttribute(...);
   return "myViewName";
 }

Parameters:
lastModifiedTimestamp - the last-modified timestamp that the application determined for the underlying resource
Returns:
whether the request qualifies as not modified, allowing to abort request processing and relying on the response telling the client that the content has not been modified

getDescription

String getDescription(boolean includeClientInfo)
Get a short description of this request, typically containing request URI and session id.

Parameters:
includeClientInfo - whether to include client-specific information such as session id and user name
Returns:
the requested description as String


Copyright © 2002-2008 The Spring Framework.