javax.mail

## Interface MultipartDataSource

- All Superinterfaces:
    DataSource
  All Known Implementing Classes:
    IMAPMultipartDataSource

      public interface MultipartDataSource
      extends DataSource

  MultipartDataSource is a `DataSource` that contains body parts. This allows "mail aware" `DataContentHandlers` to be implemented more efficiently by being aware of such `DataSources` and using the appropriate methods to access `BodyParts`.

  Note that the data of a MultipartDataSource is also available as an input stream.

  This interface will typically be implemented by providers that preparse multipart bodies, for example an IMAP provider.

  Author:
    John Mani
  See Also:
    `DataSource`

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `BodyPart` | `getBodyPart(int index)` Get the specified Part.
    `int` | `getCount()` Return the number of enclosed BodyPart objects.

    - ### Methods inherited from interface javax.activation.DataSource

      `getContentType, getInputStream, getName, getOutputStream`

- - ### Method Detail

    - #### getCount

          int getCount()

      Return the number of enclosed BodyPart objects.
      Returns:
        number of parts

    - #### getBodyPart

          BodyPart getBodyPart(int index)
                               throws MessagingException

      Get the specified Part. Parts are numbered starting at 0.
      Parameters:
        `index` - the index of the desired Part
      Returns:
        the Part
      Throws:
        `IndexOutOfBoundsException` - if the given index is out of range.
        `MessagingException` - for other failures

Copyright © 2016 Oracle. All rights reserved.