# Class FileUpload

java.lang.Object
org.apache.tomcat.util.http.fileupload.FileUploadBase
org.apache.tomcat.util.http.fileupload.FileUpload

public class FileUpload extends FileUploadBase

High level API for processing file uploads.

This class handles multiple files per single HTML widget, sent using `multipart/mixed` encoding type, as specified by RFC 1867. Use `FileUploadBase.parseRequest(RequestContext)` to acquire a list of `FileItems` associated with a given HTML widget.

How the data for individual parts is stored is determined by the factory used to create them; a given part may be in memory, on disk, or somewhere else.

## Field Summary

### Fields inherited from class FileUploadBase

`ATTACHMENT, CONTENT_DISPOSITION, CONTENT_LENGTH, CONTENT_TYPE, DEFAULT_PART_HEADER_SIZE_MAX, FORM_DATA, MULTIPART, MULTIPART_FORM_DATA, MULTIPART_MIXED`

## Constructor Summary

Constructors
Constructor
Description
`FileUpload()`
Constructs an uninitialized instance of this class.

## Method Summary

Modifier and Type
Method
Description
`FileItemFactory`
`getFileItemFactory()`
Returns the factory class used when creating file items.
`void`
`setFileItemFactory(FileItemFactory fileItemFactory)`
Sets the factory class to use when creating file items.

### Methods inherited from class FileUploadBase

`getBoundary, getFieldName, getFileCountMax, getFileName, getFileSizeMax, getHeaderEncoding, getItemIterator, getParsedHeaders, getPartHeaderSizeMax, getProgressListener, getSizeMax, newFileItemHeaders, parseRequest, setFileCountMax, setFileSizeMax, setHeaderEncoding, setPartHeaderSizeMax, setProgressListener, setSizeMax`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### FileUpload

public FileUpload()
Constructs an uninitialized instance of this class. A factory must be configured, using `setFileItemFactory()`, before attempting to parse requests.

## Method Details

### getFileItemFactory

public FileItemFactory getFileItemFactory()
Returns the factory class used when creating file items.

Specified by:
  `getFileItemFactory` in class `FileUploadBase`
Returns:
  The factory class for new file items.

### setFileItemFactory

public void setFileItemFactory(FileItemFactory fileItemFactory)
Sets the factory class to use when creating file items.

Specified by:
  `setFileItemFactory` in class `FileUploadBase`
Parameters:
  `fileItemFactory` - The factory class for new file items.