Package javax.mail.internet

# Class PreencodedMimeBodyPart

java.lang.Object
javax.mail.BodyPart
javax.mail.internet.MimeBodyPart
javax.mail.internet.PreencodedMimeBodyPart

All Implemented Interfaces:
  `MimePart`, `Part`

public class PreencodedMimeBodyPart extends MimeBodyPart
A MimeBodyPart that handles data that has already been encoded. This class is useful when constructing a message and attaching data that has already been encoded (for example, using base64 encoding). The data may have been encoded by the application, or may have been stored in a file or database in encoded form. The encoding is supplied when this object is created. The data is attached to this object in the usual fashion, by using the `setText`, `setContent`, or `setDataHandler` methods.

Since:
  JavaMail 1.4

## Field Summary

### Fields inherited from class javax.mail.internet.MimeBodyPart

`cachedContent, content, contentStream, dh, headers`

### Fields inherited from class javax.mail.BodyPart

`parent`

### Fields inherited from interface javax.mail.Part

`ATTACHMENT, INLINE`

## Constructor Summary

Constructors
Constructor
Description
`PreencodedMimeBodyPart(String encoding)`
Create a PreencodedMimeBodyPart that assumes the data is encoded using the specified encoding.

## Method Summary

Modifier and Type
Method
Description
`String`
`getEncoding()`
Returns the content transfer encoding specified when this object was created.
`protected void`
`updateHeaders()`
Force the `Content-Transfer-Encoding` header to use the encoding that was specified when this object was created.
`void`
`writeTo(OutputStream os)`
Output the body part as an RFC 822 format stream.

### Methods inherited from class javax.mail.internet.MimeBodyPart

`addHeader, addHeaderLine, attachFile, attachFile, attachFile, attachFile, getAllHeaderLines, getAllHeaders, getContent, getContentID, getContentLanguage, getContentMD5, getContentStream, getContentType, getDataHandler, getDescription, getDisposition, getFileName, getHeader, getHeader, getInputStream, getLineCount, getMatchingHeaderLines, getMatchingHeaders, getNonMatchingHeaderLines, getNonMatchingHeaders, getRawInputStream, getSize, isMimeType, removeHeader, saveFile, saveFile, setContent, setContent, setContentID, setContentLanguage, setContentMD5, setDataHandler, setDescription, setDescription, setDisposition, setFileName, setHeader, setText, setText, setText`

### Methods inherited from class javax.mail.BodyPart

`getParent`

### Methods inherited from class java.lang.Object

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

## Constructor Details

### PreencodedMimeBodyPart

public PreencodedMimeBodyPart(String encoding)
Create a PreencodedMimeBodyPart that assumes the data is encoded using the specified encoding. The encoding must be a MIME supported Content-Transfer-Encoding.

Parameters:
  `encoding` - the Content-Transfer-Encoding

## Method Details

### getEncoding

public String getEncoding() throws MessagingException
Returns the content transfer encoding specified when this object was created.

Specified by:
  `getEncoding` in interface `MimePart`
Overrides:
  `getEncoding` in class `MimeBodyPart`
Returns:
  content-transfer-encoding
Throws:
  `MessagingException` - for failures
See Also:
  - `MimeBodyPart.headers`

### writeTo

public void writeTo(OutputStream os) throws IOException, MessagingException
Output the body part as an RFC 822 format stream.

Specified by:
  `writeTo` in interface `Part`
Overrides:
  `writeTo` in class `MimeBodyPart`
Parameters:
  `os` - the stream to write to
Throws:
  `IOException` - if an error occurs writing to the stream or if an error is generated by the javax.activation layer.
  `MessagingException` - for other failures
See Also:
  - `DataHandler.writeTo(java.io.OutputStream)`

### updateHeaders

protected void updateHeaders() throws MessagingException
Force the `Content-Transfer-Encoding` header to use the encoding that was specified when this object was created.

Overrides:
  `updateHeaders` in class `MimeBodyPart`
Throws:
  `MessagingException` - for failures