Class DefaultMultipartActionRequest
- java.lang.Object
- javax.portlet.filter.PortletRequestWrapper
- javax.portlet.filter.ActionRequestWrapper
- org.springframework.web.portlet.multipart.DefaultMultipartActionRequest
- All Implemented Interfaces:
ActionRequest
,ClientDataRequest
,PortletRequest
,MultipartRequest
,MultipartActionRequest
public class DefaultMultipartActionRequest extends ActionRequestWrapper implements MultipartActionRequest
Default implementation of theMultipartActionRequest
interface. Provides management of pre-generated parameter values.- Since:
- 2.0
- Author:
- Juergen Hoeller, Arjen Poutsma
- See Also:
PortletMultipartResolver
Nested Class Summary
Nested classes/interfaces inherited from interface javax.portlet.PortletRequest
PortletRequest.P3PUserInfos
Field Summary
Fields inherited from interface javax.portlet.ActionRequest
ACTION_NAME
Fields inherited from interface javax.portlet.PortletRequest
ACTION_PHASE, ACTION_SCOPE_ID, BASIC_AUTH, CCPP_PROFILE, CLIENT_CERT_AUTH, DIGEST_AUTH, EVENT_PHASE, FORM_AUTH, LIFECYCLE_PHASE, RENDER_HEADERS, RENDER_MARKUP, RENDER_PART, RENDER_PHASE, RESOURCE_PHASE, USER_INFO
Constructor Summary
Constructors Modifier Constructor Description protected
DefaultMultipartActionRequest(ActionRequest request)
Wrap the given Portlet ActionRequest in a MultipartActionRequest.DefaultMultipartActionRequest(ActionRequest request, MultiValueMap<String,MultipartFile> mpFiles, Map<String,String[]> mpParams, Map<String,String> mpParamContentTypes)
Wrap the given Portlet ActionRequest in a MultipartActionRequest.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MultipartFile
getFile(String name)
Return the contents plus description of an uploaded file in this request, ornull
if it does not exist.Map<String,MultipartFile>
getFileMap()
Return aMap
of the multipart files contained in this request.Iterator<String>
getFileNames()
Return anIterator
of 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 aMultiValueMap
of the multipart files contained in this request.String
getMultipartContentType(String paramOrFileName)
Determine the content type of the specified request part.protected MultiValueMap<String,MultipartFile>
getMultipartFiles()
Obtain the MultipartFile Map for retrieval, lazily initializing it if necessary.protected Map<String,String>
getMultipartParameterContentTypes()
Obtain the multipart parameter content type Map for retrieval, lazily initializing it if necessary.protected Map<String,String[]>
getMultipartParameters()
Obtain the multipart parameter Map for retrieval, lazily initializing it if necessary.String
getParameter(String name)
Map<String,String[]>
getParameterMap()
Enumeration<String>
getParameterNames()
String[]
getParameterValues(String name)
protected void
initializeMultipart()
Lazily initialize the multipart request, if possible.protected void
setMultipartFiles(MultiValueMap<String,MultipartFile> multipartFiles)
Set a Map with parameter names as keys and list of MultipartFile objects as values.protected void
setMultipartParameterContentTypes(Map<String,String> multipartParameterContentTypes)
Set a Map with parameter names as keys and content type Strings as values.protected void
setMultipartParameters(Map<String,String[]> multipartParameters)
Set a Map with parameter names as keys and String array objects as values.Methods inherited from class javax.portlet.filter.ActionRequestWrapper
getCharacterEncoding, getContentLength, getContentType, getMethod, getPortletInputStream, getReader, getRequest, setCharacterEncoding, setRequest
Methods inherited from class javax.portlet.filter.PortletRequestWrapper
getAttribute, getAttributeNames, getAuthType, getContextPath, getCookies, getLocale, getLocales, getPortalContext, getPortletMode, getPortletSession, getPortletSession, getPreferences, getPrivateParameterMap, getProperties, getProperty, getPropertyNames, getPublicParameterMap, getRemoteUser, getRequestedSessionId, getResponseContentType, getResponseContentTypes, getScheme, getServerName, getServerPort, getUserPrincipal, getWindowID, getWindowState, isPortletModeAllowed, isRequestedSessionIdValid, isSecure, isUserInRole, isWindowStateAllowed, removeAttribute, setAttribute, setRequest
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface javax.portlet.ClientDataRequest
getCharacterEncoding, getContentLength, getContentType, getMethod, getPortletInputStream, getReader, setCharacterEncoding
Methods inherited from interface javax.portlet.PortletRequest
getAttribute, getAttributeNames, getAuthType, getContextPath, getCookies, getLocale, getLocales, getPortalContext, getPortletMode, getPortletSession, getPortletSession, getPreferences, getPrivateParameterMap, getProperties, getProperty, getPropertyNames, getPublicParameterMap, getRemoteUser, getRequestedSessionId, getResponseContentType, getResponseContentTypes, getScheme, getServerName, getServerPort, getUserPrincipal, getWindowID, getWindowState, isPortletModeAllowed, isRequestedSessionIdValid, isSecure, isUserInRole, isWindowStateAllowed, removeAttribute, setAttribute
Constructor Detail
DefaultMultipartActionRequest
public DefaultMultipartActionRequest(ActionRequest request, MultiValueMap<String,MultipartFile> mpFiles, Map<String,String[]> mpParams, Map<String,String> mpParamContentTypes)
Wrap the given Portlet ActionRequest in a MultipartActionRequest.- Parameters:
request
- the request to wrapmpFiles
- a map of the multipart filesmpParams
- a map of the parameters to expose, with Strings as keys and String arrays as values
DefaultMultipartActionRequest
protected DefaultMultipartActionRequest(ActionRequest request)
Wrap the given Portlet ActionRequest in a MultipartActionRequest.- Parameters:
request
- the request to wrap
Method Detail
getFileNames
public Iterator<String> getFileNames()
Description copied from interface:MultipartRequest
Return anIterator
of 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:
getFileNames
in interfaceMultipartRequest
- Returns:
- the names of the files
getFile
public MultipartFile getFile(String name)
Description copied from interface:MultipartRequest
Return the contents plus description of an uploaded file in this request, ornull
if it does not exist.- Specified by:
getFile
in interfaceMultipartRequest
- Parameters:
name
- a String specifying the parameter name of the multipart file- Returns:
- the uploaded content in the form of a
MultipartFile
object
getFiles
public List<MultipartFile> getFiles(String name)
Description copied from interface:MultipartRequest
Return the contents plus description of uploaded files in this request, or an empty list if it does not exist.- Specified by:
getFiles
in interfaceMultipartRequest
- Parameters:
name
- a String specifying the parameter name of the multipart file- Returns:
- the uploaded content in the form of a
MultipartFile
list
getFileMap
public Map<String,MultipartFile> getFileMap()
Description copied from interface:MultipartRequest
Return aMap
of the multipart files contained in this request.- Specified by:
getFileMap
in interfaceMultipartRequest
- Returns:
- a map containing the parameter names as keys, and the
MultipartFile
objects as values
getMultiFileMap
public MultiValueMap<String,MultipartFile> getMultiFileMap()
Description copied from interface:MultipartRequest
Return aMultiValueMap
of the multipart files contained in this request.- Specified by:
getMultiFileMap
in interfaceMultipartRequest
- Returns:
- a map containing the parameter names as keys, and a list of
MultipartFile
objects as values
getParameterNames
public Enumeration<String> getParameterNames()
- Specified by:
getParameterNames
in interfacePortletRequest
- Overrides:
getParameterNames
in classPortletRequestWrapper
getParameter
public String getParameter(String name)
- Specified by:
getParameter
in interfacePortletRequest
- Overrides:
getParameter
in classPortletRequestWrapper
getParameterValues
public String[] getParameterValues(String name)
- Specified by:
getParameterValues
in interfacePortletRequest
- Overrides:
getParameterValues
in classPortletRequestWrapper
getParameterMap
public Map<String,String[]> getParameterMap()
- Specified by:
getParameterMap
in interfacePortletRequest
- Overrides:
getParameterMap
in classPortletRequestWrapper
getMultipartContentType
public String getMultipartContentType(String paramOrFileName)
Description copied from interface:MultipartRequest
Determine the content type of the specified request part.- Specified by:
getMultipartContentType
in interfaceMultipartRequest
- Parameters:
paramOrFileName
- the name of the part- Returns:
- the associated content type, or
null
if not defined
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()
setMultipartParameters
protected final void setMultipartParameters(Map<String,String[]> multipartParameters)
Set a Map with parameter names as keys and String array objects as values. To be invoked by subclasses on initialization.
getMultipartParameters
protected Map<String,String[]> getMultipartParameters()
Obtain the multipart parameter Map for retrieval, lazily initializing it if necessary.- See Also:
initializeMultipart()
setMultipartParameterContentTypes
protected final void setMultipartParameterContentTypes(Map<String,String> multipartParameterContentTypes)
Set a Map with parameter names as keys and content type Strings as values. To be invoked by subclasses on initialization.
getMultipartParameterContentTypes
protected Map<String,String> getMultipartParameterContentTypes()
Obtain the multipart parameter content type 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.