javax.mail.internet
クラス MimeBodyPart

java.lang.Object
  上位を拡張 javax.mail.BodyPart
      上位を拡張 javax.mail.internet.MimeBodyPart
すべての実装されたインタフェース:
MimePart, Part
直系の既知のサブクラス:
IMAPBodyPart, PreencodedMimeBodyPart

public class MimeBodyPart
extends BodyPart
implements MimePart

このクラスは MIME 本文部分を表します。 これは BodyPart 抽象クラスと MimePart インタフェースを実装します。 MimeBodyParts は MimeMultipart オブジェクトに含まれます。

MimeBodyPart は InternetHeaders クラスを使用し、 本文部分のヘッダを構文解析し、格納します。


RFC822 及び MIME ヘッダに関するメモ

RFC822 ヘッダフィールドは US-ASCII 文字だけを含まなければなりません。 MIME では ASCII 以外の文字をエンコーディングする事により、 特定のヘッダの特定の部分に設定可能です。RFC 2047 はこの処理の規則を指定します。 このパッケージで提供される MimeUtility クラスを用いて、この処理を行うことができます。 setHeaderaddHeader、及び addHeaderLine メソッドの 呼び出し側は指定されたヘッダが MIME 要件に従う事を保証しなければなりません。 又、これらのヘッダフィールドが転送における行の長さ制限 (SMTP の場合は 1000バイト) を超える場合は、 送信の前に折りたたむ (ラップする) 必要があります。受信ヘッダは折りたたまれている可能性があります。 アプリケーションはヘッダを適切に折りたたみ、展開する責任があります。

関連項目:
Part, MimePart, MimeUtility

フィールドの概要
protected  byte[] content
          この Part の内容のバイトを保持するバイト配列です。
protected  InputStream contentStream
          この本文部分のデータが SharedInputStream インタフェースを実装する InputStream により供給された場合、 contentStream がこの本文部分の内容を表すもう 1 つのストリームです。
protected  DataHandler dh
          この Part の内容を表す DataHandler オブジェクトです。
protected  InternetHeaders headers
          この本文部分の全てのヘッダを格納する InternetHeaders オブジェクトです。
 
クラス javax.mail.BodyPart から継承されたフィールド
parent
 
インタフェース javax.mail.Part から継承されたフィールド
ATTACHMENT, INLINE
 
コンストラクタの概要
MimeBodyPart()
          空の MimeBodyPart オブジェクトが作成されます。
MimeBodyPart(InputStream is)
          指定された入力ストリームからのデータを読み取り、 構文解析することにより、MimeBodyPart を構築します。
MimeBodyPart(InternetHeaders headers, byte[] content)
          指定されたヘッダと内容バイトを使用して MimeBodyPart を構築します。
 
メソッドの概要
 void addHeader(String name, String value)
          この値をこの header_name の既存値に追加します。
 void addHeaderLine(String line)
          ヘッダ行をこの本文部分に追加します。
 void attachFile(File file)
          Use the specified file to provide the data for this part.
 void attachFile(String file)
          Use the specified file to provide the data for this part.
 Enumeration getAllHeaderLines()
          全てのヘッダ行を String の列挙型として取得します。
 Enumeration getAllHeaders()
          この Message の全てのヘッダを Header オブジェクトの列挙型として返します。
 Object getContent()
          内容を java オブジェクトとして返します。
 String getContentID()
          "Content-ID" ヘッダフィールドの値を返します。
 String[] getContentLanguage()
          この MimePart の Content-Language ヘッダで指定される言語を取得します。
 String getContentMD5()
          "Content-MD5" ヘッダフィールドの値を返します。
protected  InputStream getContentStream()
          内容の生バイトを生成します。
 String getContentType()
          RFC 822 "Content-Type" ヘッダフィールドの値を返します。
 DataHandler getDataHandler()
          この本文部分の内容の DataHandler を返します。
 String getDescription()
          この本文部分の "Content-Description" ヘッダフィールドを返します。
 String getDisposition()
          "Content-Disposition" ヘッダフィールドの値を返します。
 String getEncoding()
          "Content-Transfer-Encoding" ヘッダフィールドからの内容転送エンコーディングを返します。
 String getFileName()
          この本文部分に関連付けられたファイル名を取得します。
 String[] getHeader(String name)
          この header_name の全てのヘッダを取得します。
 String getHeader(String name, String delimiter)
          このヘッダ名の全てのヘッダを取得し、区切り文字で区切られたヘッダが単一の String として返されます、 区切り文字が null の場合は、最初のヘッダだけが返されます。
 InputStream getInputStream()
          この本文部分の "content" に対するデコードされた入力ストリームを返します。
 int getLineCount()
          この Part の内容の行数を返します。
 Enumeration getMatchingHeaderLines(String[] names)
          一致するヘッダ行を String の列挙型として取得します。
 Enumeration getMatchingHeaders(String[] names)
          この Message の一致するヘッダを Header オブジェクトの列挙型として返します。
 Enumeration getNonMatchingHeaderLines(String[] names)
          一致しないヘッダ行を String の列挙型として取得します。
 Enumeration getNonMatchingHeaders(String[] names)
          この Message の一致しないヘッダを Header オブジェクトの列挙型として返します。
 InputStream getRawInputStream()
          任意の Content-Transfer-Encoding をそのままにして、生データへの InputStream を返します。
 int getSize()
          この本文部分の内容サイズをバイト単位で返します。
 boolean isMimeType(String mimeType)
          指定された MIME タイプの Part かどうかを識別します。
 void removeHeader(String name)
          この名前を持つ全てのヘッダを削除します。
 void saveFile(File file)
          Save the contents of this part in the specified file.
 void saveFile(String file)
          Save the contents of this part in the specified file.
 void setContent(Multipart mp)
          このメソッドは本文部分の内容を Multipart オブジェクトに設定します。
 void setContent(Object o, String type)
          この本文部分の内容を設定する為の簡易メソッドです。
 void setContentID(String cid)
          Set the "Content-ID" header field of this body part.
 void setContentLanguage(String[] languages)
          この MimePart の Content-Language ヘッダを設定します。
 void setContentMD5(String md5)
          この本文部分の "Content-MD5" ヘッダフィールドを設定します。
 void setDataHandler(DataHandler dh)
          このメソッドは、この本文部分の内容を設定する為の仕組みを提供します。
 void setDescription(String description)
          この本文部分の "Content-Description" ヘッダフィールドを設定します。
 void setDescription(String description, String charset)
          この本文部分の "Content-Description" ヘッダを設定します。
 void setDisposition(String disposition)
          この本文部分の "Content-Disposition" ヘッダフィールドを設定します。
 void setFileName(String filename)
          可能であれば、この本文部分に関連付けられたファイル名を設定します。
 void setHeader(String name, String value)
          この header_name の値を設定します。
 void setText(String text)
          指定された String をこの部分のコンテンツとして、 "text/plain" の MIME タイプで設定する簡易メソッドです。
 void setText(String text, String charset)
          "text/plain" の MIME タイプ及び指定された文字セットを使用し、 指定された String をこの部分のコンテンツとして設定する簡易メソッドです。
 void setText(String text, String charset, String subtype)
          "text" の MIME タイプ及び指定された MIME サブタイプを使用し、 指定された String をこの部分のコンテンツとして設定する簡易メソッドです。
protected  void updateHeaders()
          この本文部分の内容を検査し、適切な MIME ヘッダを更新します。
 void writeTo(OutputStream os)
          本文部分を RFC 822 形式のストリームとして出力します。
 
クラス javax.mail.BodyPart から継承されたメソッド
getParent
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

dh

protected DataHandler dh
この Part の内容を表す DataHandler オブジェクトです。


content

protected byte[] content
この Part の内容のバイトを保持するバイト配列です。


contentStream

protected InputStream contentStream
この本文部分のデータが SharedInputStream インタフェースを実装する InputStream により供給された場合、 contentStream がこの本文部分の内容を表すもう 1 つのストリームです。 この場合、content は null です。

導入されたバージョン:
JavaMail 1.2

headers

protected InternetHeaders headers
この本文部分の全てのヘッダを格納する InternetHeaders オブジェクトです。

コンストラクタの詳細

MimeBodyPart

public MimeBodyPart()
空の MimeBodyPart オブジェクトが作成されます。 この本文部分は multipart メッセージを構築するクライアントにより記入される場合があります。


MimeBodyPart

public MimeBodyPart(InputStream is)
             throws MessagingException
指定された入力ストリームからのデータを読み取り、 構文解析することにより、MimeBodyPart を構築します。 パーサは、指定された入力ストリームの終わりまでデータを消費します。 入力ストリームは有効な MIME 本文部分の先頭から始まり、 その本文部分の終わりで終了しなければなりません。

本文部分を区切る "境界" 文字列は入力ストリームに含まれていてはなりません。 MimeMultipart パーサは maultipart ストリームから各本文部分のバイトを抽出し、 区切り文字列なしでこのコンストラクタに与えます。

パラメータ:
is - 本文部分の入力ストリーム
例外:
MessagingException

MimeBodyPart

public MimeBodyPart(InternetHeaders headers,
                    byte[] content)
指定されたヘッダと内容バイトを使用して MimeBodyPart を構築します。

プロバイダが使用します。

パラメータ:
headers - この部分のヘッダ
content - この部分の本文を表すバイト
メソッドの詳細

getSize

public int getSize()
            throws MessagingException
この本文部分の内容サイズをバイト単位で返します。 サイズが識別できない場合は -1 を返します。

この数値は内容サイズの正確な測定値でない可能性があり、 内容の転送エンコーディングを示す事もそうでない事もある点に注意して下さい。

この実装は、content 配列 のサイズ (null でない場合)、 又は contentStream が null でなく、 available メソッドが正の数を返す場合、 その数をサイズとして返します。それ以外の場合は -1 を返します。

定義:
インタフェース Part 内の getSize
戻り値:
バイト単位のサイズ、又は不明の場合 -1
例外:
MessagingException

getLineCount

public int getLineCount()
                 throws MessagingException
この Part の内容の行数を返します。 この数値が識別できない場合は -1 を返します。

この数値は内容の長さの正確な測定値でない可能性があり、 内容の転送エンコーディングを示す事もそうでない事もある点に注意して下さい。

この実装は -1 を返します。

定義:
インタフェース Part 内の getLineCount
戻り値:
行数、又は不明の場合 -1
例外:
MessagingException

getContentType

public String getContentType()
                      throws MessagingException
RFC 822 "Content-Type" ヘッダフィールドの値を返します。 これは、この本文部分の内容のコンテンツ形式を表します。 この値は null であってはなりません。 このフィールドが使用可能でない場合、"text/plain" が返されます。

この実装は getHeader(name) を使用し、 必要なヘッダフィールドを取得します。

定義:
インタフェース Part 内の getContentType
戻り値:
この本文部分の Content-Type
例外:
MessagingException
関連項目:
DataHandler

isMimeType

public final boolean isMimeType(String mimeType)
                         throws MessagingException
指定された MIME タイプの Part かどうかを識別します。このメソッドは、 primaryTypesubType のみを比較します。 コンテンツ形式のパラメータは無視されます。

例えば、コンテンツ形式 "text/plain""text/plain; charset=Shift_JIS" の Part を比較すると、 このメソッドは true を返します。

mimeTypesubType が特殊文字 '*' の場合、 比較時にサブタイプは無視されます。

定義:
インタフェース Part 内の isMimeType
例外:
MessagingException

getDisposition

public String getDisposition()
                      throws MessagingException
"Content-Disposition" ヘッダフィールドの値を返します。これはこの部分の処置を表します。 この部分がどの様にユーザに提示されるかを示します。

Content-Disposition フィールドが使用できない場合は null が返されます。

この実装は getHeader(name) を使用し、必要なヘッダフィールドを取得します。

定義:
インタフェース Part 内の getDisposition
戻り値:
この Part の処置、又は不明の場合は null
例外:
MessagingException
関連項目:
headers

setDisposition

public void setDisposition(String disposition)
                    throws MessagingException
この本文部分の "Content-Disposition" ヘッダフィールドを設定します。 処置が null の場合は、既存の全ての "Content-Disposition" ヘッダフィールドが削除されます。

定義:
インタフェース Part 内の setDisposition
パラメータ:
disposition - この Part の処置
例外:
IllegalWriteException - 実装が変更をサポートしない場合
IllegalStateException - この本文部分が READ_ONLY フォルダから取得された場合
MessagingException
関連項目:
Part.ATTACHMENT, Part.INLINE, Part.setFileName(java.lang.String)

getEncoding

public String getEncoding()
                   throws MessagingException
"Content-Transfer-Encoding" ヘッダフィールドからの内容転送エンコーディングを返します。 ヘッダが使用できない場合、又はその値が存在しない場合は null を返します。

この実装は getHeader(name) を使用し、必要なヘッダフィールドを取得します。

定義:
インタフェース MimePart 内の getEncoding
戻り値:
内容転送エンコーディング
例外:
MessagingException
関連項目:
headers

getContentID

public String getContentID()
                    throws MessagingException
"Content-ID" ヘッダフィールドの値を返します。フィールドが使用できない場合、 又はその値が存在しない場合は null を返します。

この実装は getHeader(name) を使用し、必要なヘッダフィールドを取得します。

定義:
インタフェース MimePart 内の getContentID
戻り値:
コンテンツ ID
例外:
MessagingException

setContentID

public final void setContentID(String cid)
                        throws MessagingException
Set the "Content-ID" header field of this body part. If the cid parameter is null, any existing "Content-ID" is removed.

例外:
IllegalWriteException - 実装が変更をサポートしない場合
IllegalStateException - この本文部分が READ_ONLY フォルダから取得された場合
MessagingException
導入されたバージョン:
JavaMail 1.3

getContentMD5

public String getContentMD5()
                     throws MessagingException
"Content-MD5" ヘッダフィールドの値を返します。フィールドが使用できない場合、 又はその値が存在しない場合は null を返します。

この実装は getHeader(name) を使用し、必要なヘッダフィールドを取得します。

定義:
インタフェース MimePart 内の getContentMD5
戻り値:
コンテンツ MD5
例外:
MessagingException

setContentMD5

public void setContentMD5(String md5)
                   throws MessagingException
この本文部分の "Content-MD5" ヘッダフィールドを設定します。

定義:
インタフェース MimePart 内の setContentMD5
パラメータ:
md5 - コンテンツ ID
例外:
IllegalWriteException - 実装が変更をサポートしない場合
IllegalStateException - この本文部分が READ_ONLY フォルダから取得された場合
MessagingException

getContentLanguage

public final String[] getContentLanguage()
                                  throws MessagingException
この MimePart の Content-Language ヘッダで指定される言語を取得します。 Content-Language ヘッダは RFC 1766 により定義されます。 ヘッダが使用できない場合、又はその値が存在しない場合は null を返します。

この実装は getHeader(name) を使用し、必要なヘッダフィールドを取得します。

定義:
インタフェース MimePart 内の getContentLanguage
例外:
MessagingException

setContentLanguage

public final void setContentLanguage(String[] languages)
                              throws MessagingException
この MimePart の Content-Language ヘッダを設定します。 Content-Language ヘッダは RFC 1766 により定義されます。

定義:
インタフェース MimePart 内の setContentLanguage
パラメータ:
languages - 言語タグの配列
例外:
MessagingException

getDescription

public String getDescription()
                      throws MessagingException
この本文部分の "Content-Description" ヘッダフィールドを返します。 これは通常一部の情報をこの部分に関連付けます。このフィールドが使用できない場合、 又はその値が存在しない場合は null を返します。

Content-Description フィールドが RFC 2047 に従ってエンコーディングされている場合、 デコードされ、Unicode に変換されます。デコーディングまたは変換が失敗した場合、 生データがそのまま返されます。

この実装は getHeader(name) を使用し、必要なヘッダフィールドを取得します。

定義:
インタフェース Part 内の getDescription
戻り値:
内容の説明
例外:
MessagingException

setDescription

public final void setDescription(String description)
                          throws MessagingException
この本文部分の "Content-Description" ヘッダフィールドを設定します。 description パラメータが null の場合は、 既存の全ての "Content-Description" フィールドが削除されます。

description に US-ASCII 以外の文字が含まれる場合は、 プラットフォームのデフォルト文字セットを使用してエンコードされます。 description に US-ASCII 文字だけが含まれる場合は、 エンコーディングは行われず、そのまま使用されます。

文字セットエンコーディング処理が失敗する場合、MessagingException がスローされ、 UnsupportedEncodingException が MessagingException 内の 入れ子にされた例外のチェーンに含まれる事に注意して下さい。

定義:
インタフェース Part 内の setDescription
パラメータ:
description - 内容の説明
例外:
IllegalWriteException - 実装が変更をサポートしない場合
IllegalStateException - この本文部分が READ_ONLY フォルダから取得された場合
MessagingException - 文字セット変換が失敗すると、 UnsupportedEncodingException が例外チェーンに含まれる場合があります。

setDescription

public void setDescription(String description,
                           String charset)
                    throws MessagingException
この本文部分の "Content-Description" ヘッダを設定します。 description パラメータが null の場合は、 既存の全ての "Content-Description" フィールドが削除されます。

description に US-ASCII 以外の文字が含まれる場合は、 指定された文字セットを使用してエンコードされます。 description に US-ASCII 文字だけが含まれる場合は、 エンコーディングは行われず、そのまま使用されます。

文字セットエンコーディング処理が失敗する場合、MessagingException がスローされ、 UnsupportedEncodingException が MessagingException 内の入れ子にされた 例外のチェーンに含まれる事に注意して下さい。

パラメータ:
description - 説明
charset - エンコーディングのための文字セット
例外:
IllegalWriteException - 実装が変更をサポートしない場合
IllegalStateException - この本文部分が READ_ONLY フォルダから取得された場合
MessagingException - 文字セット変換が失敗すると、 UnsupportedEncodingException が例外チェーンに含まれる場合があります。

getFileName

public String getFileName()
                   throws MessagingException
この本文部分に関連付けられたファイル名を取得します。

この本文部分の "Content-Disposition" ヘッダフィールドにおける "filename" パラメータの値を返します。 このパラメータが使用できない場合は、この 本文部分の "Content-Type" ヘッダフィールドにおける "name" パラメータの値を返します。 両方とも存在しない場合は null を返します。

定義:
インタフェース Part 内の getFileName
戻り値:
ファイル名
例外:
MessagingException

setFileName

public void setFileName(String filename)
                 throws MessagingException
可能であれば、この本文部分に関連付けられたファイル名を設定します。

この本文部分の "Content-Disposition" ヘッダフィールドにおける "filename" パラメータを設定します。

定義:
インタフェース Part 内の setFileName
パラメータ:
filename - この Part に関連付けるファイル名
例外:
IllegalWriteException - 実装が変更をサポートしない場合
IllegalStateException - この本文部分が READ_ONLY フォルダから取得された場合
MessagingException

getInputStream

public final InputStream getInputStream()
                                 throws IOException,
                                        MessagingException
この本文部分の "content" に対するデコードされた入力ストリームを返します。

この実装は DataHandler から入力ストリームを取得します。 つまり、getDataHandler().getInputStream(); を呼び出します。

定義:
インタフェース Part 内の getInputStream
戻り値:
InputStream
例外:
MessagingException
IOException - これは通常 DataHandler によりスローされます。 詳細については javax.activation.DataHandler のマニュアルを参照して下さい。
関連項目:
getContentStream(), DataHandler

getContentStream

protected InputStream getContentStream()
                                throws MessagingException
内容の生バイトを生成します。 このメソッドは内容の DataHandler オブジェクトを作成する時に使用されます。 Part 内容だけの別個の入力ストリームを提供可能な サブクラスはこのメソッドをオーバーライドする場合があります。

例外:
MessagingException
関連項目:
content, MimeMessage.getContentStream()

getRawInputStream

public final InputStream getRawInputStream()
                                    throws MessagingException
任意の Content-Transfer-Encoding をそのままにして、生データへの InputStream を返します。 このメソッドは "Content-Transfer-Encoding" ヘッダが正しくなかったり壊れていたりする場合に役立ちます。 この場合、getInputStream メソッド又は getContent メソッドは、 正しいデータを返すことができません。 アプリケーションはこのメソッドを使用し、生データそのもののデコードを試みる事ができます。

この実装は単に getContentStream メソッドを呼び出します。

例外:
MessagingException
導入されたバージョン:
JavaMail 1.2
関連項目:
getInputStream(), getContentStream()

getDataHandler

public DataHandler getDataHandler()
                           throws MessagingException
この本文部分の内容の DataHandler を返します。

ここで提供される実装は、丁度 MimeMessage の実装の様に機能します。

定義:
インタフェース Part 内の getDataHandler
戻り値:
コンテンツの DataHandler
例外:
MessagingException
関連項目:
MimeMessage.getDataHandler()

getContent

public final Object getContent()
                        throws IOException,
                               MessagingException
内容を java オブジェクトとして返します。 返されるオブジェクトのタイプはもちろん内容その物に依存します。 例えば、text/plain コンテンツの固有形式は普通 String オブジェクトです。 "multipart" コンテンツの固有形式は常に Multipart サブクラスです。 DataHandler システムに不明なコンテンツ型の場合、 入力ストリームがコンテンツとして返されます。

この実装は DataHandler からコンテンツを取得します。 つまり、getDataHandler().getContent(); を呼び出します。

定義:
インタフェース Part 内の getContent
戻り値:
オブジェクト
例外:
MessagingException
IOException - これは通常 DataHandler によりスローされます。 詳細については javax.activation.DataHandler のマニュアルを参照して下さい。
関連項目:
DataHandler

setDataHandler

public void setDataHandler(DataHandler dh)
                    throws MessagingException
このメソッドは、この本文部分の内容を設定する為の仕組みを提供します。 指定された DataHandler オブジェクトは、実際の内容をラップしなければなりません。

定義:
インタフェース Part 内の setDataHandler
パラメータ:
dh - コンテンツの DataHandler
例外:
IllegalWriteException - 実装が変更をサポートしない場合
IllegalStateException - この本文部分が READ_ONLY フォルダから取得される場合
MessagingException

setContent

public void setContent(Object o,
                       String type)
                throws MessagingException
この本文部分の内容を設定する為の簡易メソッドです。

コンテンツは DataHandler オブジェクト内にラップされます。これが正しく機能する為に、 指定されたタイプの DataContentHandler クラスが JavaMail 実装に対して使用可能でなければならない事に注意して下さい。 つまり、setContent(foobar, "application/x-foobar") を実行する為に、 "application/x-foobar" の DataContentHandler がインストールされている必要があります。 詳細については Java Activation Framework を参照して下さい。

定義:
インタフェース Part 内の setContent
パラメータ:
o - コンテンツオブジェクト
type - オブジェクトの MIME タイプ
例外:
IllegalWriteException - 実装が既存値の変更をサポートしない場合
IllegalStateException - この本文部分が READ_ONLY フォルダから取得された場合
MessagingException

setText

public final void setText(String text)
                   throws MessagingException
指定された String をこの部分のコンテンツとして、 "text/plain" の MIME タイプで設定する簡易メソッドです。 文字列に US-ASCII 以外の文字が含まれる場合、 プラットフォームのデフォルトの文字セットを使用してエンコードされます。 この文字セットは "charset" パラメータを設定する為にも使用されます。

このメソッドは使用する文字セットを決める為に全ての文字を走査しなければならない場合があるので、 text が大きい場合は、性能が低下する可能性がある事に注意して下さい。

文字セットが既知の場合、文字セットパラメータを受け取る setText() バージョンを使用して下さい。

定義:
インタフェース MimePart 内の setText
定義:
インタフェース Part 内の setText
パラメータ:
text - Message のコンテンツであるテキスト
例外:
IllegalWriteException - 実装がこのヘッダの変更をサポートしない場合
MessagingException
関連項目:
setText(String text, String charset)

setText

public final void setText(String text,
                          String charset)
                   throws MessagingException
"text/plain" の MIME タイプ及び指定された文字セットを使用し、 指定された String をこの部分のコンテンツとして設定する簡易メソッドです。 指定された Unicode 文字列は、指定された文字セットを使用して文字セットエンコードされます。 この文字セットは "charset" パラメータを設定する為にも使用されます。

定義:
インタフェース MimePart 内の setText
パラメータ:
text - the text content to set
charset - the charset to use for the text
例外:
MessagingException - if an error occurs

setText

public void setText(String text,
                    String charset,
                    String subtype)
             throws MessagingException
"text" の MIME タイプ及び指定された MIME サブタイプを使用し、 指定された String をこの部分のコンテンツとして設定する簡易メソッドです。 指定された Unicode 文字列は、指定された文字セットを使用して文字セットエンコードされます。 この文字セットは "charset" パラメータを設定する為にも使用されます。

定義:
インタフェース MimePart 内の setText
パラメータ:
text - the text content to set
charset - the charset to use for the text
subtype - the MIME subtype to use (e.g., "html")
例外:
MessagingException - if an error occurs

setContent

public void setContent(Multipart mp)
                throws MessagingException
このメソッドは本文部分の内容を Multipart オブジェクトに設定します。

定義:
インタフェース Part 内の setContent
パラメータ:
mp - Message のコンテンツである multipart オブジェクト
例外:
IllegalWriteException - 実装が既存値の変更をサポートしない場合
IllegalStateException - この本文部分が READ_ONLY フォルダから取得された場合
MessagingException

attachFile

public final void attachFile(File file)
                      throws IOException,
                             MessagingException
Use the specified file to provide the data for this part. The simple file name is used as the file name for this part and the data in the file is used as the data for this part. The encoding will be chosen appropriately for the file data.

パラメータ:
file - the File object to attach
例外:
IOException - errors related to accessing the file
MessagingException - message related errors
導入されたバージョン:
JavaMail 1.4

attachFile

public final void attachFile(String file)
                      throws IOException,
                             MessagingException
Use the specified file to provide the data for this part. The simple file name is used as the file name for this part and the data in the file is used as the data for this part. The encoding will be chosen appropriately for the file data.

パラメータ:
file - the name of the file to attach
例外:
IOException - errors related to accessing the file
MessagingException - message related errors
導入されたバージョン:
JavaMail 1.4

saveFile

public final void saveFile(File file)
                    throws IOException,
                           MessagingException
Save the contents of this part in the specified file. The content is decoded and saved, without any of the MIME headers.

パラメータ:
file - the File object to write to
例外:
IOException - errors related to accessing the file
MessagingException - message related errors
導入されたバージョン:
JavaMail 1.4

saveFile

public final void saveFile(String file)
                    throws IOException,
                           MessagingException
Save the contents of this part in the specified file. The content is decoded and saved, without any of the MIME headers.

パラメータ:
file - the name of the file to write to
例外:
IOException - errors related to accessing the file
MessagingException - message related errors
導入されたバージョン:
JavaMail 1.4

writeTo

public void writeTo(OutputStream os)
             throws IOException,
                    MessagingException
本文部分を RFC 822 形式のストリームとして出力します。

定義:
インタフェース Part 内の writeTo
例外:
MessagingException
IOException - ストリームへの書き込み中にエラーが発生する場合、 又は javax.activation レイヤによりエラーが生成される場合
関連項目:
DataHandler

getHeader

public String[] getHeader(String name)
                   throws MessagingException
この header_name の全てのヘッダを取得します。 ヘッダが US-ASCII 以外の文字を含む場合、RFC 2047 に基づきエンコードされる事があり、 デコードが必要となる事に注意して下さい。

定義:
インタフェース Part 内の getHeader
パラメータ:
name - ヘッダの名前
戻り値:
ヘッダの配列
例外:
MessagingException
関連項目:
MimeUtility

getHeader

public final String getHeader(String name,
                              String delimiter)
                       throws MessagingException
このヘッダ名の全てのヘッダを取得し、区切り文字で区切られたヘッダが単一の String として返されます、 区切り文字が null の場合は、最初のヘッダだけが返されます。

定義:
インタフェース MimePart 内の getHeader
パラメータ:
name - このヘッダの名前
delimiter - delimiter between fields in returned string
戻り値:
この名前を持つ全てのヘッダに対する値フィールド
例外:
MessagingException

setHeader

public void setHeader(String name,
                      String value)
               throws MessagingException
この header_name の値を設定します。既存の全てのヘッダ値をこの新しい値で置き換えます。 RFC 822 ヘッダは US-ASCII 文字のみを含まなければならない為、 US-ASCII 以外の文字を含むヘッダは RFC 2047 の規則に従ってエンコードされなければならない事に注意して下さい。

定義:
インタフェース Part 内の setHeader
パラメータ:
name - ヘッダ名
value - ヘッダ値
例外:
MessagingException
IllegalWriteException - 実装がこのヘッダの変更をサポートしない場合
関連項目:
MimeUtility

addHeader

public void addHeader(String name,
                      String value)
               throws MessagingException
この値をこの header_name の既存値に追加します。 RFC 822 ヘッダは US-ASCII 文字のみを含まなければならない為、 US-ASCII 以外の文字を含むヘッダは RFC 2047 の規則に従ってエンコードされなければならない事に注意して下さい。

定義:
インタフェース Part 内の addHeader
パラメータ:
name - ヘッダ名
value - ヘッダ値
例外:
MessagingException
IllegalWriteException - 実装がこのヘッダの変更をサポートしない場合
関連項目:
MimeUtility

removeHeader

public void removeHeader(String name)
                  throws MessagingException
この名前を持つ全てのヘッダを削除します。

定義:
インタフェース Part 内の removeHeader
パラメータ:
name - このヘッダの名前
例外:
MessagingException
IllegalWriteException - 実装がこのヘッダの変更をサポートしない場合

getAllHeaders

public Enumeration getAllHeaders()
                          throws MessagingException
この Message の全てのヘッダを Header オブジェクトの列挙型として返します。

定義:
インタフェース Part 内の getAllHeaders
戻り値:
Header オブジェクトの配列
例外:
MessagingException

getMatchingHeaders

public Enumeration getMatchingHeaders(String[] names)
                               throws MessagingException
この Message の一致するヘッダを Header オブジェクトの列挙型として返します。

定義:
インタフェース Part 内の getMatchingHeaders
戻り値:
Header オブジェクトの配列
例外:
MessagingException

getNonMatchingHeaders

public Enumeration getNonMatchingHeaders(String[] names)
                                  throws MessagingException
この Message の一致しないヘッダを Header オブジェクトの列挙型として返します。

定義:
インタフェース Part 内の getNonMatchingHeaders
戻り値:
Header オブジェクトの配列
例外:
MessagingException

addHeaderLine

public void addHeaderLine(String line)
                   throws MessagingException
ヘッダ行をこの本文部分に追加します。

定義:
インタフェース MimePart 内の addHeaderLine
例外:
MessagingException

getAllHeaderLines

public Enumeration getAllHeaderLines()
                              throws MessagingException
全てのヘッダ行を String の列挙型として取得します。 Header 行は生の RFC 822 ヘッダ行であり、"name" 及び "value" の両フィールドを含みます。

定義:
インタフェース MimePart 内の getAllHeaderLines
例外:
MessagingException

getMatchingHeaderLines

public Enumeration getMatchingHeaderLines(String[] names)
                                   throws MessagingException
一致するヘッダ行を String の列挙型として取得します。 Header 行は生の RFC 822 ヘッダ行であり、"name" 及び "value" の両フィールドを含みます。

定義:
インタフェース MimePart 内の getMatchingHeaderLines
例外:
MessagingException

getNonMatchingHeaderLines

public Enumeration getNonMatchingHeaderLines(String[] names)
                                      throws MessagingException
一致しないヘッダ行を String の列挙型として取得します。 Header 行は生の RFC 822 ヘッダ行であり、"name" 及び "value" の両フィールドを含みます。

定義:
インタフェース MimePart 内の getNonMatchingHeaderLines
例外:
MessagingException

updateHeaders

protected void updateHeaders()
                      throws MessagingException
この本文部分の内容を検査し、適切な MIME ヘッダを更新します。 ここで設定される一般的なヘッダは Content-TypeContent-Transfer-Encoding です。 ヘッダの更新は次の 2 つの場合に必要になります。
- メールアプリケーションにより作成されるメッセージは、内部ヘッダを満たす為に、 ある時点でこのメソッドをアクティブにする必要があります。
- Store から読み込まれるメッセージは全てのヘッダを格納場所から取得するので、これは必要ではありません。 但し、メッセージが編集可能で内容又はメッセージ構造に編集が行われた場合、 ヘッダの再同期が必要となる場合があります。
どちらの場合も、このメソッドは通常 Message.saveChanges メソッドにより呼び出されます。

例外:
MessagingException