javax.mail.internet
Interface MimePart
- Part
- IMAPBodyPart, IMAPMessage, MaildirMessage, MboxMessage, MimeBodyPart, MimeMessage, NNTPMessage, POP3Message
public interface MimePart
The MimePart interface models an Entity as defined by MIME
(RFC2045, Section 2.4).
MimePart extends the Part interface to add additional RFC822 and MIME
specific semantics and attributes. It provides the base interface for
the MimeMessage and MimeBodyPart classes
A note on RFC822 and MIME headers
RFC822 and MIME header fields must contain only US-ASCII characters. If a
header contains non US-ASCII characters, it must be encoded as per the
rules in RFC 2047. The MimeUtility class provided in this package can be
used to to achieve this. Callers of the
setHeader
,
addHeader
, and
addHeaderLine
methods are
responsible for enforcing the MIME requirements for the specified headers.
In addition, these header fields must be folded(wrapped) before being
sent if they exceed the line length limitation for the transport
(1000 bytes for SMTP). Received headers may have been folded.
The application is responsible for folding and unfolding headers as
appropriate.
void | addHeaderLine(String line) - Add a raw RFC822 header-line.
|
Enumeration | getAllHeaderLines() - Get all header lines as an Enumeration of Strings.
|
String | getContentID() - Get the Content-ID of this part.
|
String[] | getContentLanguage() - Get the language tags specified in the Content-Language header of this
MimePart.
|
String | getContentMD5() - Get the Content-MD5 digest of this part.
|
String | getEncoding() - Get the transfer encoding of this part.
|
String | getHeader(String header_name, String delimiter) - Get the values of all header fields available for this header,
returned as a single String, with the values separated by the delimiter.
|
Enumeration | getMatchingHeaderLines(String[] names) - Get matching header lines as an Enumeration of Strings.
|
Enumeration | getNonMatchingHeaderLines(String[] names) - Get non-matching header lines as an Enumeration of Strings.
|
void | setContentLanguage(String[] languages) - Set the Content-Language header of this MimePart.
|
void | setContentMD5(String md5) - Set the Content-MD5 of this part.
|
void | setText(String text) - Convenience method that sets the given String as this part's content, with
a MIME type of "text/plain".
|
void | setText(String text, String charset) - Convenience method that sets the given String as this part's content, with
a MIME type of "text/plain" and the specified charset.
|
addHeader , getAllHeaders , getContent , getContentType , getDataHandler , getDescription , getDisposition , getFileName , getHeader , getInputStream , getLineCount , getMatchingHeaders , getNonMatchingHeaders , getSize , isMimeType , removeHeader , setContent , setContent , setDataHandler , setDescription , setDisposition , setFileName , setHeader , setText , writeTo |
addHeaderLine
public void addHeaderLine(String line)
throws MessagingException
Add a raw RFC822 header-line.
getAllHeaderLines
public Enumeration getAllHeaderLines()
throws MessagingException
Get all header lines as an Enumeration of Strings.
A Header line is a raw RFC822 header-line,
containing both the "name" and "value" field.
getContentID
public String getContentID()
throws MessagingException
Get the Content-ID of this part.
Returns null if none present.
- content-ID
getContentLanguage
public String[] getContentLanguage()
throws MessagingException
Get the language tags specified in the Content-Language header of this
MimePart. The Content-Language header is defined by RFC 1766.
Returns null if this header is not available.
getContentMD5
public String getContentMD5()
throws MessagingException
Get the Content-MD5 digest of this part.
Returns null if none present.
- content-MD5
getEncoding
public String getEncoding()
throws MessagingException
Get the transfer encoding of this part.
- content-transfer-encoding
getHeader
public String getHeader(String header_name,
String delimiter)
throws MessagingException
Get the values of all header fields available for this header,
returned as a single String, with the values separated by the delimiter.
If the delimiter is null, only the first value is returned.
header_name
- the name of this header
- the value fields for all headers with this name
getMatchingHeaderLines
public Enumeration getMatchingHeaderLines(String[] names)
throws MessagingException
Get matching header lines as an Enumeration of Strings.
A Header line is a raw RFC822 header-line,
containing both the "name" and "value" field.
getNonMatchingHeaderLines
public Enumeration getNonMatchingHeaderLines(String[] names)
throws MessagingException
Get non-matching header lines as an Enumeration of Strings.
A Header line is a raw RFC822 header-line,
containing both the "name" and "value" field.
setContentLanguage
public void setContentLanguage(String[] languages)
throws MessagingException
Set the Content-Language header of this MimePart. The Content-Language
header is defined by RFC1766.
languages
- array of language tags
setContentMD5
public void setContentMD5(String md5)
throws MessagingException
Set the Content-MD5 of this part.
setText
public void setText(String text)
throws MessagingException
Convenience method that sets the given String as this part's content, with
a MIME type of "text/plain". If the string contains non US-ASCII
characters. it will be encoded using the platform's default charset. The
charset is also used to set the "charset" parameter.
Note that there may be a performance penalty if text is large, since this
method may have to scan all the characters to determine what charset to
use.
If the charset is already known, use the
setText()
version
that takes the
charset
parameter.
- setText in interface Part
setText
public void setText(String text,
String charset)
throws MessagingException
Convenience method that sets the given String as this part's content, with
a MIME type of "text/plain" and the specified charset. The given Unicode
string will be charset-encoded using the specified charset. The charset is
also used to set "charset" parameter.