org.apache.wicket.protocol.http.servlet
Class MultipartServletWebRequestImpl

java.lang.Object
  extended by org.apache.wicket.request.Request
      extended by org.apache.wicket.request.http.WebRequest
          extended by org.apache.wicket.protocol.http.servlet.ServletWebRequest
              extended by org.apache.wicket.protocol.http.servlet.MultipartServletWebRequest
                  extended by org.apache.wicket.protocol.http.servlet.MultipartServletWebRequestImpl
All Implemented Interfaces:
IMultipartWebRequest

public class MultipartServletWebRequestImpl
extends MultipartServletWebRequest

Servlet specific WebRequest subclass for multipart content uploads.

Author:
Jonathan Locke, Eelco Hillenius, Cameron Braid, Ate Douma, Igor Vaynberg (ivaynberg)

Field Summary
 
Fields inherited from class org.apache.wicket.request.http.WebRequest
HEADER_AJAX, HEADER_AJAX_BASE_URL, PARAM_AJAX, PARAM_AJAX_BASE_URL
 
Constructor Summary
MultipartServletWebRequestImpl(javax.servlet.http.HttpServletRequest request, String filterPrefix, Bytes maxSize)
          Constructor.
MultipartServletWebRequestImpl(javax.servlet.http.HttpServletRequest request, String filterPrefix, Bytes maxSize, FileItemFactory factory)
          Constructor
 
Method Summary
protected  Map<String,List<StringValue>> generatePostParameters()
           
 FileItem getFile(String fieldName)
          Gets the file that was uploaded using the given field name.
 Map<String,FileItem> getFiles()
           
 MultipartServletWebRequest newMultipartWebRequest(Bytes maxSize)
          Creates multipart web request from this request.
 MultipartServletWebRequest newMultipartWebRequest(Bytes maxSize, FileItemFactory factory)
          Creates multipart web request from this request.
protected  void onUploadCompleted()
          Upload completed callback
protected  void onUploadStarted(int totalBytes)
          Upload start callback
protected  void onUploadUpdate(int bytesUploaded, int total)
          Upload status update callback
protected  boolean wantUploadProgressUpdates()
          Subclasses that want to receive upload notifications should return true
 
Methods inherited from class org.apache.wicket.protocol.http.servlet.MultipartServletWebRequest
cloneWithUrl
 
Methods inherited from class org.apache.wicket.protocol.http.servlet.ServletWebRequest
getCharset, getClientUrl, getCookies, getDateHeader, getFilterPrefix, getHeader, getHeaders, getHttpServletRequest, getLocale, getPostParameters, getPrefixToContextPath, getUrl
 
Methods inherited from class org.apache.wicket.request.http.WebRequest
getCookie, getIfModifiedSinceHeader, isAjax
 
Methods inherited from class org.apache.wicket.request.Request
getOriginalUrl, getQueryParameters, getRequestParameters
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MultipartServletWebRequestImpl

public MultipartServletWebRequestImpl(javax.servlet.http.HttpServletRequest request,
                                      String filterPrefix,
                                      Bytes maxSize)
                               throws FileUploadException
Constructor. This constructor will use DiskFileItemFactory to store uploads.

Parameters:
maxSize - the maximum size allowed for this request
request - the servlet request
filterPrefix - prefix to wicket filter mapping
Throws:
FileUploadException - Thrown if something goes wrong with upload

MultipartServletWebRequestImpl

public MultipartServletWebRequestImpl(javax.servlet.http.HttpServletRequest request,
                                      String filterPrefix,
                                      Bytes maxSize,
                                      FileItemFactory factory)
                               throws FileUploadException
Constructor

Parameters:
maxSize - the maximum size allowed for this request
request - the servlet request
filterPrefix - prefix to wicket filter mapping
factory - DiskFileItemFactory to use when creating file items used to represent uploaded files
Throws:
FileUploadException - Thrown if something goes wrong with upload
Method Detail

getFiles

public Map<String,FileItem> getFiles()
Returns:
Returns the files.

getFile

public FileItem getFile(String fieldName)
Gets the file that was uploaded using the given field name.

Parameters:
fieldName - the field name that was used for the upload
Returns:
the upload with the given field name

generatePostParameters

protected Map<String,List<StringValue>> generatePostParameters()
Overrides:
generatePostParameters in class ServletWebRequest

wantUploadProgressUpdates

protected boolean wantUploadProgressUpdates()
Subclasses that want to receive upload notifications should return true

Returns:
true if upload status update event should be invoked

onUploadStarted

protected void onUploadStarted(int totalBytes)
Upload start callback

Parameters:
totalBytes -

onUploadUpdate

protected void onUploadUpdate(int bytesUploaded,
                              int total)
Upload status update callback

Parameters:
bytesUploaded -
total -

onUploadCompleted

protected void onUploadCompleted()
Upload completed callback


newMultipartWebRequest

public MultipartServletWebRequest newMultipartWebRequest(Bytes maxSize)
                                                  throws FileUploadException
Description copied from class: ServletWebRequest
Creates multipart web request from this request.

Overrides:
newMultipartWebRequest in class ServletWebRequest
Returns:
multipart request
Throws:
FileUploadException

newMultipartWebRequest

public MultipartServletWebRequest newMultipartWebRequest(Bytes maxSize,
                                                         FileItemFactory factory)
                                                  throws FileUploadException
Description copied from class: ServletWebRequest
Creates multipart web request from this request.

Overrides:
newMultipartWebRequest in class ServletWebRequest
Returns:
multipart request
Throws:
FileUploadException


Copyright © 2004-2011 Apache Software Foundation. All Rights Reserved.