Class AbstractMultipartHttpServletRequest
- java.lang.Object
- javax.servlet.ServletRequestWrapper
- javax.servlet.http.HttpServletRequestWrapper
- org.springframework.web.multipart.support.AbstractMultipartHttpServletRequest
- All Implemented Interfaces:
HttpServletRequest,ServletRequest,MultipartHttpServletRequest,MultipartRequest
- Direct Known Subclasses:
DefaultMultipartHttpServletRequest,StandardMultipartHttpServletRequest
public abstract class AbstractMultipartHttpServletRequest extends HttpServletRequestWrapper implements MultipartHttpServletRequest
Abstract base implementation of the MultipartHttpServletRequest interface. Provides management of pre-generated MultipartFile instances.- Since:
- 06.10.2003
- Author:
- Juergen Hoeller, Arjen Poutsma
Field Summary
Fields inherited from interface javax.servlet.http.HttpServletRequest
BASIC_AUTH, CLIENT_CERT_AUTH, DIGEST_AUTH, FORM_AUTH
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractMultipartHttpServletRequest(HttpServletRequest request)Wrap the given HttpServletRequest in a MultipartHttpServletRequest.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MultipartFilegetFile(String name)Return the contents plus description of an uploaded file in this request, ornullif it does not exist.Map<String,MultipartFile>getFileMap()Return aMapof the multipart files contained in this request.Iterator<String>getFileNames()Return anIteratorof String objects containing the parameter names of the multipart files contained in this request.List<MultipartFile>getFiles(String name)Return the contents plus description of uploaded files in this request, or an empty list if it does not exist.MultiValueMap<String,MultipartFile>getMultiFileMap()Return aMultiValueMapof the multipart files contained in this request.protected MultiValueMap<String,MultipartFile>getMultipartFiles()Obtain the MultipartFile Map for retrieval, lazily initializing it if necessary.HttpServletRequestgetRequest()Return the wrapped request object.HttpHeadersgetRequestHeaders()Return this request's headers as a convenient HttpHeaders instance.HttpMethodgetRequestMethod()Return this request's method as a convenient HttpMethod instance.protected voidinitializeMultipart()Lazily initialize the multipart request, if possible.booleanisResolved()Determine whether the underlying multipart request has been resolved.protected voidsetMultipartFiles(MultiValueMap<String,MultipartFile> multipartFiles)Set a Map with parameter names as keys and list of MultipartFile objects as values.Methods inherited from class javax.servlet.http.HttpServletRequestWrapper
authenticate, changeSessionId, getAuthType, getContextPath, getCookies, getDateHeader, getHeader, getHeaderNames, getHeaders, getHttpServletMapping, getIntHeader, getMethod, getPart, getParts, getPathInfo, getPathTranslated, getQueryString, getRemoteUser, getRequestedSessionId, getRequestURI, getRequestURL, getServletPath, getSession, getSession, getTrailerFields, getUserPrincipal, isRequestedSessionIdFromCookie, isRequestedSessionIdFromUrl, isRequestedSessionIdFromURL, isRequestedSessionIdValid, isTrailerFieldsReady, isUserInRole, login, logout, newPushBuilder, upgrade
Methods inherited from class javax.servlet.ServletRequestWrapper
getAsyncContext, getAttribute, getAttributeNames, getCharacterEncoding, getContentLength, getContentLengthLong, getContentType, getDispatcherType, getInputStream, getLocalAddr, getLocale, getLocales, getLocalName, getLocalPort, getParameter, getParameterMap, getParameterNames, getParameterValues, getProtocol, getReader, getRealPath, getRemoteAddr, getRemoteHost, getRemotePort, getRequestDispatcher, getScheme, getServerName, getServerPort, getServletContext, isAsyncStarted, isAsyncSupported, isSecure, isWrapperFor, isWrapperFor, removeAttribute, setAttribute, setCharacterEncoding, setRequest, startAsync, startAsync
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface javax.servlet.http.HttpServletRequest
authenticate, changeSessionId, getAuthType, getContextPath, getCookies, getDateHeader, getHeader, getHeaderNames, getHeaders, getHttpServletMapping, getIntHeader, getMethod, getPart, getParts, getPathInfo, getPathTranslated, getQueryString, getRemoteUser, getRequestedSessionId, getRequestURI, getRequestURL, getServletPath, getSession, getSession, getTrailerFields, getUserPrincipal, isRequestedSessionIdFromCookie, isRequestedSessionIdFromUrl, isRequestedSessionIdFromURL, isRequestedSessionIdValid, isTrailerFieldsReady, isUserInRole, login, logout, newPushBuilder, upgrade
Methods inherited from interface org.springframework.web.multipart.MultipartHttpServletRequest
getMultipartHeaders
Methods inherited from interface org.springframework.web.multipart.MultipartRequest
getMultipartContentType
Methods inherited from interface javax.servlet.ServletRequest
getAsyncContext, getAttribute, getAttributeNames, getCharacterEncoding, getContentLength, getContentLengthLong, getContentType, getDispatcherType, getInputStream, getLocalAddr, getLocale, getLocales, getLocalName, getLocalPort, getParameter, getParameterMap, getParameterNames, getParameterValues, getProtocol, getReader, getRealPath, getRemoteAddr, getRemoteHost, getRemotePort, getRequestDispatcher, getScheme, getServerName, getServerPort, getServletContext, isAsyncStarted, isAsyncSupported, isSecure, removeAttribute, setAttribute, setCharacterEncoding, startAsync, startAsync
Constructor Detail
AbstractMultipartHttpServletRequest
protected AbstractMultipartHttpServletRequest(HttpServletRequest request)
Wrap the given HttpServletRequest in a MultipartHttpServletRequest.- Parameters:
request- the request to wrap
Method Detail
getRequest
public HttpServletRequest getRequest()
Description copied from class:javax.servlet.ServletRequestWrapperReturn the wrapped request object.- Overrides:
getRequestin classServletRequestWrapper- Returns:
- the wrapped
ServletRequest
getRequestMethod
public HttpMethod getRequestMethod()
Description copied from interface:MultipartHttpServletRequestReturn this request's method as a convenient HttpMethod instance.- Specified by:
getRequestMethodin interfaceMultipartHttpServletRequest
getRequestHeaders
public HttpHeaders getRequestHeaders()
Description copied from interface:MultipartHttpServletRequestReturn this request's headers as a convenient HttpHeaders instance.- Specified by:
getRequestHeadersin interfaceMultipartHttpServletRequest
getFileNames
public Iterator<String> getFileNames()
Description copied from interface:MultipartRequestReturn anIteratorof String objects containing the parameter names of the multipart files contained in this request. These are the field names of the form (like with normal parameters), not the original file names.- Specified by:
getFileNamesin interfaceMultipartRequest- Returns:
- the names of the files
getFile
public MultipartFile getFile(String name)
Description copied from interface:MultipartRequestReturn the contents plus description of an uploaded file in this request, ornullif it does not exist.- Specified by:
getFilein interfaceMultipartRequest- Parameters:
name- a String specifying the parameter name of the multipart file- Returns:
- the uploaded content in the form of a
MultipartFileobject
getFiles
public List<MultipartFile> getFiles(String name)
Description copied from interface:MultipartRequestReturn the contents plus description of uploaded files in this request, or an empty list if it does not exist.- Specified by:
getFilesin interfaceMultipartRequest- Parameters:
name- a String specifying the parameter name of the multipart file- Returns:
- the uploaded content in the form of a
MultipartFilelist
getFileMap
public Map<String,MultipartFile> getFileMap()
Description copied from interface:MultipartRequestReturn aMapof the multipart files contained in this request.- Specified by:
getFileMapin interfaceMultipartRequest- Returns:
- a map containing the parameter names as keys, and the
MultipartFileobjects as values
getMultiFileMap
public MultiValueMap<String,MultipartFile> getMultiFileMap()
Description copied from interface:MultipartRequestReturn aMultiValueMapof the multipart files contained in this request.- Specified by:
getMultiFileMapin interfaceMultipartRequest- Returns:
- a map containing the parameter names as keys, and a list of
MultipartFileobjects as values
isResolved
public boolean isResolved()
Determine whether the underlying multipart request has been resolved.- Returns:
truewhen eagerly initialized or lazily triggered,falsein case of a lazy-resolution request that got aborted before any parameters or multipart files have been accessed- Since:
- 4.3.15
- See Also:
getMultipartFiles()
setMultipartFiles
protected final void setMultipartFiles(MultiValueMap<String,MultipartFile> multipartFiles)
Set a Map with parameter names as keys and list of MultipartFile objects as values. To be invoked by subclasses on initialization.
getMultipartFiles
protected MultiValueMap<String,MultipartFile> getMultipartFiles()
Obtain the MultipartFile Map for retrieval, lazily initializing it if necessary.- See Also:
initializeMultipart()
initializeMultipart
protected void initializeMultipart()
Lazily initialize the multipart request, if possible. Only called if not already eagerly initialized.