org.springframework.web.multipart
Interface MultipartFile

All Known Implementing Classes:
CommonsMultipartFile

public interface MultipartFile

Interface which represents an uploaded file received in a multipart request.

The file contents are either stored in memory or temporarily on disk. In either case, the user is responsible for copying file contents to a session-level or persistent store if desired. The temporary storages will be cleared at the end of request processing.

Since:
29-Sep-2003
Author:
Juergen Hoeller, Trevor D. Cook
See Also:
MultipartHttpServletRequest, MultipartResolver

Method Summary
 byte[] getBytes()
          Return the contents of the file as an array of bytes.
 String getContentType()
          Return the content type of the file.
 InputStream getInputStream()
          Return an InputStream to read the contents of the file from.
 String getName()
          Return the name of the parameter in the multipart form.
 String getOriginalFilename()
          Return the original filename in the client's filesystem.
 long getSize()
          Return the size of the file in bytes.
 boolean isEmpty()
          Return whether the uploaded file is empty in the sense that no file has been chosen in the multipart form.
 void transferTo(File dest)
          Transfer the received file to the given destination file.
 

Method Detail

getName

public String getName()
Return the name of the parameter in the multipart form.

Returns:
the name of the parameter

isEmpty

public boolean isEmpty()
Return whether the uploaded file is empty in the sense that no file has been chosen in the multipart form.

Returns:
whether the uploaded file is empty

getOriginalFilename

public String getOriginalFilename()
Return the original filename in the client's filesystem. This may contain path information depending on the browser used, but it typically will not with any other than Opera.

Returns:
the original filename, or null if empty

getContentType

public String getContentType()
Return the content type of the file.

Returns:
the content type, or null if empty or not defined

getSize

public long getSize()
Return the size of the file in bytes.

Returns:
the size of the file, or 0 if empty

getBytes

public byte[] getBytes()
                throws IOException
Return the contents of the file as an array of bytes.

Returns:
the contents of the file as bytes, or an empty byte array if empty
Throws:
IOException - in case of access errors (if the temporary store fails)

getInputStream

public InputStream getInputStream()
                           throws IOException
Return an InputStream to read the contents of the file from. The user is responsible for closing the stream.

Returns:
the contents of the file as stream, or an empty stream if empty
Throws:
IOException - in case of access errors (if the temporary store fails)

transferTo

public void transferTo(File dest)
                throws IOException,
                       IllegalStateException
Transfer the received file to the given destination file.

This may either move the file in the filesystem, copy the file in the filesystem, or save memory-held contents to the destination file. If the destination file already exists, it will be deleted first.

If the file has been moved in the filesystem, this operation cannot be invoked again. Therefore, call this method just once to be able to work with any storage mechanism.

Parameters:
dest - the destination file
Throws:
IOException - in case of reading or writing errors
IllegalStateException - if the file has already been moved in the filesystem as is not available anymore for another transfer


Copyright (C) 2003-2004 The Spring Framework Project.