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 and Description
    `PreencodedMimeBodyPart(String encoding)` Create a PreencodedMimeBodyPart that assumes the data is encoded using the specified encoding.

  - ### Method Summary

    Methods
    Modifier and Type | Method and 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 Detail

    - #### 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 Detail

    - #### 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

Copyright © 2016 Oracle. All rights reserved.