javax.mail.internet

Class MimePartDataSource

Implemented Interfaces:
DataSource, MessageAware

public class MimePartDataSource
extends java.lang.Object
implements DataSource, MessageAware

A utility class that implements a DataSource out of a MimePart. This class is primarily meant for service providers.

Constructor Summary

MimePartDataSource(MimePart part)
Constructor, that constructs a DataSource from a MimePart.

Method Summary

String
getContentType()
Returns the content-type of this DataSource.
InputStream
getInputStream()
Returns an input stream from this MimePart.
MessageContext
getMessageContext()
Return the MessageContext for the current part.
String
getName()
DataSource method to return a name.
OutputStream
getOutputStream()
DataSource method to return an output stream.

Constructor Details

MimePartDataSource

public MimePartDataSource(MimePart part)
Constructor, that constructs a DataSource from a MimePart.

Method Details

getContentType

public String getContentType()
Returns the content-type of this DataSource.

This implementation just invokes the getContentType method on the MimePart.


getInputStream

public InputStream getInputStream()
            throws IOException
Returns an input stream from this MimePart.

This method applies the appropriate transfer-decoding, based on the Content-Transfer-Encoding attribute of this MimePart. Thus the returned input stream is a decoded stream of bytes.

This implementation obtains the raw content from the Part using the getContentStream() method and decodes it using the MimeUtility.decode() method.

Returns:
decoded input stream


getMessageContext

public MessageContext getMessageContext()
Return the MessageContext for the current part.
Specified by:
getMessageContext in interface MessageAware


getName

public String getName()
DataSource method to return a name.

This implementation just returns an empty string.


getOutputStream

public OutputStream getOutputStream()
            throws IOException
DataSource method to return an output stream.

This implementation throws the UnknownServiceException.