The Spring Framework

## org.springframework.mock.web
Class MockMultipartFile

    java.lang.Object
      org.springframework.mock.web.MockMultipartFile

All Implemented Interfaces:
  MultipartFile

    public class MockMultipartFile

extends Object
implements MultipartFile

Mock implementation of the `MultipartFile` interface.

Useful in conjunction with a `MockMultipartHttpServletRequest` for testing application controllers that access multipart uploads.

Since:
  2.0
Author:
  Juergen Hoeller, Eric Crampton
See Also:
  `MockMultipartHttpServletRequest`

Constructor Summary
`MockMultipartFile(String name, byte[] content)` Create a new MockMultipartFile with the given content.
`MockMultipartFile(String name, InputStream contentStream)` Create a new MockMultipartFile with the given content.
`MockMultipartFile(String name, String originalFilename, String contentType, byte[] content)` Create a new MockMultipartFile with the given content.
`MockMultipartFile(String name, String originalFilename, String contentType, InputStream contentStream)` Create a new MockMultipartFile with the given content.

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, that is, either no file has been chosen in the multipart form or the chosen file has no content.
`void` `transferTo(File dest)` Transfer the received file to the given destination file.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### MockMultipartFile

    public MockMultipartFile(String name,
                             byte[] content)

  Create a new MockMultipartFile with the given content.

  Parameters:
    `name` - the name of the file
    `content` - the content of the file

### MockMultipartFile

    public MockMultipartFile(String name,
                             InputStream contentStream)
                      throws IOException

  Create a new MockMultipartFile with the given content.

  Parameters:
    `name` - the name of the file
    `contentStream` - the content of the file as stream
  Throws:
    `IOException` - if reading from the stream failed

### MockMultipartFile

    public MockMultipartFile(String name,
                             String originalFilename,
                             String contentType,
                             byte[] content)

  Create a new MockMultipartFile with the given content.

  Parameters:
    `name` - the name of the file
    `originalFilename` - the original filename (as on the client's machine)
    `contentType` - the content type (if known)
    `content` - the content of the file

### MockMultipartFile

    public MockMultipartFile(String name,
                             String originalFilename,
                             String contentType,
                             InputStream contentStream)
                      throws IOException

  Create a new MockMultipartFile with the given content.

  Parameters:
    `name` - the name of the file
    `originalFilename` - the original filename (as on the client's machine)
    `contentType` - the content type (if known)
    `contentStream` - the content of the file as stream
  Throws:
    `IOException` - if reading from the stream failed

Method Detail

### getName

    public String getName()

  Description copied from interface: `MultipartFile`
  Return the name of the parameter in the multipart form.

  Specified by:
    `getName` in interface `MultipartFile`
  Returns:
    the name of the parameter (never `null` or empty)

### getOriginalFilename

    public String getOriginalFilename()

  Description copied from interface: `MultipartFile`
  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.

  Specified by:
    `getOriginalFilename` in interface `MultipartFile`
  Returns:
    the original filename, or the empty String if no file has been chosen in the multipart form

### getContentType

    public String getContentType()

  Description copied from interface: `MultipartFile`
  Return the content type of the file.

  Specified by:
    `getContentType` in interface `MultipartFile`
  Returns:
    the content type, or `null` if not defined (or no file has been chosen in the multipart form)

### isEmpty

    public boolean isEmpty()

  Description copied from interface: `MultipartFile`
  Return whether the uploaded file is empty, that is, either no file has been chosen in the multipart form or the chosen file has no content.

  Specified by:
    `isEmpty` in interface `MultipartFile`

### getSize

    public long getSize()

  Description copied from interface: `MultipartFile`
  Return the size of the file in bytes.

  Specified by:
    `getSize` in interface `MultipartFile`
  Returns:
    the size of the file, or 0 if empty

### getBytes

    public byte[] getBytes()
                    throws IOException

  Description copied from interface: `MultipartFile`
  Return the contents of the file as an array of bytes.

  Specified by:
    `getBytes` in interface `MultipartFile`
  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

  Description copied from interface: `MultipartFile`
  Return an InputStream to read the contents of the file from. The user is responsible for closing the stream.

  Specified by:
    `getInputStream` in interface `MultipartFile`
  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

  Description copied from interface: `MultipartFile`
  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.

  Specified by:
    `transferTo` in interface `MultipartFile`
  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 and is not available anymore for another transfer

The Spring Framework

Copyright © 2002-2008 The Spring Framework.