概要 | パッケージ | クラス | 使用 | 階層ツリー | 非推奨 API | 索引 | ヘルプ
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

## javax.mail
インタフェース Part

既知のサブインタフェースの一覧:
  MimePart

既知の実装クラスの一覧:
  BodyPart, IMAPBodyPart, IMAPMessage, IMAPNestedMessage, Message, MimeBodyPart, MimeMessage, POP3Message, PreencodedMimeBodyPart, SMTPMessage

    public interface Part

`Part` インタフェースは、Message 及び BodyPart の共通基本インタフェースです。

Part は一連の属性と "コンテンツ" で構成されます。

属性:

JavaMail API は、既存の殆どのメールシステムに共通すると考えられる一連の標準的な Part 属性を定義します。 これらの属性は、固有の設定メソッド及び取得メソッドを持っています。 メールシステムは他の Part 属性をサポートする事も可能で、 これらは String である名前及び値の対で表されます。

コンテンツ:

"コンテンツ" の data type は、`getContentType()` メソッドにより返されます。 MIME 型付けシステムを使用して、データ型の名前を設定します。

Part の "コンテンツ" は以下の様に様々な形式で使用可能です。

- DataHandler として - `getDataHandler()` メソッドを使用。 Part の "content" は `javax.activation.DataHandler` オブジェクト経由でも使用可能です。 DataHandler オブジェクトにより、クライアントはコンテンツ上で使用可能な操作を見つけ、 適切なコンポーネントをインスタンス化してそれらの操作を実行できます。
- 入力ストリームとして - `getInputStream()` メソッドを使用。 このストリームが返される前に、全てのメール固有のエンコーディングがデコードされます。
- Java オブジェクトとして - `getContent()` メソッドを使用。 このメソッドは "コンテンツ" を Java オブジェクトとして返します。 返されるオブジェクトはもちろんコンテンツ自身により異なります。 特に、"マルチパート" Part のコンテンツは常に Multipart 又はそのサブクラスです。 つまり、"マルチパート" 型の Part 上の `getContent()` は 常に Multipart (又はサブクラス) オブジェクトを返します。

Part は、バイトストリームを伝送に適したメール安全形式で出力する `writeTo()` メソッドを提供します。 このバイトストリームは一般に Part 属性とそのコンテンツのバイトストリームの集合です。

Message 及び BodyPart は Part インタフェースを実装します。 MIME 用語では、Part は Entity をモデル化します (RFC 2045、Section 2.4)。

フィールドの概要
`static String` | `ATTACHMENT` この Part は添付として表示されなければなりません。
`static String` | `INLINE` この Part はインラインで表示されなければなりません。

メソッドの概要
`void` | `addHeader(String header_name, String header_value)` この値をこの header_name の既存値に追加します。
`Enumeration` | `getAllHeaders()` この Part の全てのヘッダを Header オブジェクトの Enumeration として返します。
`Object` | `getContent()` コンテンツを java オブジェクトとして返します。
`String` | `getContentType()` この Part のコンテンツの Content-Type を返します。
`DataHandler` | `getDataHandler()` この Part に含まれるコンテンツの DataHandler を返します。
`String` | `getDescription()` この Part の説明 String を返します。
`String` | `getDisposition()` この Part の処置を返します。
`String` | `getFileName()` 可能な場合、この Part に関連付けられたファイル名を取得します。
`String[]` | `getHeader(String header_name)` このヘッダ名の全てのヘッダを取得します。
`InputStream` | `getInputStream()` この Part の "content" の入力ストリームを返します。
`int` | `getLineCount()` この Part のコンテンツに含まれる行数を返します。
`Enumeration` | `getMatchingHeaders(String[] header_names)` この Part の一致するヘッダを Header オブジェクトの Enumeration として返します。
`Enumeration` | `getNonMatchingHeaders(String[] header_names)` このエンベロープの一致しないヘッダを Header オブジェクトの Enumeration として返します。
`int` | `getSize()` この Part のコンテンツサイズをバイト単位で返します。
`boolean` | `isMimeType(String mimeType)` 指定された MIME タイプの Part かどうかを判定します。
`void` | `removeHeader(String header_name)` この名前を持つ全てのヘッダを削除します。
`void` | `setContent(Multipart mp)` このメソッドは、指定された Multipart オブジェクトをこのメッセージのコンテンツとして設定します。
`void` | `setContent(Object obj, String type)` この Part のコンテンツを設定する為の簡易メソッドです。
`void` | `setDataHandler(DataHandler dh)` このメソッドはこの Part の内容を設定する為の仕組みを提供します。
`void` | `setDescription(String description)` この Part の説明 String を設定します。
`void` | `setDisposition(String disposition)` この Part の処置を設定します。
`void` | `setFileName(String filename)` 可能な場合、この Part に関連付けられたファイル名を設定します。
`void` | `setHeader(String header_name, String header_value)` この header_name の値を設定します。
`void` | `setText(String text)` MIME タイプ "text/plain" を使用して、 指定された String をこの Part のコンテンツとして設定する簡易メソッドです。
`void` | `writeTo(OutputStream os)` この Part のバイトストリームを出力します。

フィールドの詳細

### ATTACHMENT

    static final String ATTACHMENT

  この Part は添付として表示されなければなりません。

  関連項目:
    `getDisposition()`, `setDisposition(java.lang.String)`, 定数フィールド値

### INLINE

    static final String INLINE

  この Part はインラインで表示されなければなりません。

  関連項目:
    `getDisposition()`, `setDisposition(java.lang.String)`, 定数フィールド値

メソッドの詳細

### getSize

    int getSize()
                throws MessagingException

  この Part のコンテンツサイズをバイト単位で返します。 サイズが不明の場合は -1 を返します。

  このサイズはコンテンツサイズの正確な測定値でない場合があり、 コンテンツの任意の転送エンコーディングを示す場合も示さない場合もあります。 このサイズは、ユーザに対してこの Part のサイズに関する概要を知らせる為に、 ユーザインタフェースで表示するのに適しています。

  戻り値:
    コンテンツのサイズ (バイト)
  例外:
    `MessagingException`

### getLineCount

    int getLineCount()
                     throws MessagingException

  この Part のコンテンツに含まれる行数を返します。 数が不明の場合は -1 を返します。

  この数はコンテンツ長の正確な測定値でない場合があり、 コンテンツの転送エンコーディングを示す場合も示さない場合もあります。

  戻り値:
    コンテンツ内の行数
  例外:
    `MessagingException`

### getContentType

    String getContentType()
                          throws MessagingException

  この Part のコンテンツの Content-Type を返します。 Content-Type が不明の場合は null を返します。

  MIME 型付けシステムを使用して、Content-type の名前を設定します。

  戻り値:
    この Part の ContentType
  例外:
    `MessagingException`
  関連項目:
    `DataHandler`

### isMimeType

    boolean isMimeType(String mimeType)
                       throws MessagingException

  指定された MIME タイプの Part かどうかを判定します。 このメソッドは、`primaryType` と `subType` のみを比較します。 コンテンツ形式のパラメータは無視されます。

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

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

  例外:
    `MessagingException`

### getDisposition

    String getDisposition()
                          throws MessagingException

  この Part の処置を返します。処置はこの Part がユーザに どの様に提示されるかを説明します (RFC 2183 を参照)。 戻り値は大文字と小文字を区別しません。以下に例を示します。

  >      String disp = part.getDisposition();
  >      if (disp == null || disp.equalsIgnoreCase(Part.ATTACHMENT))
  >             // treat as attachment if not first part

  戻り値:
    この Part の処置、又は不明の場合は null
  例外:
    `MessagingException`
  関連項目:
    `ATTACHMENT`, `INLINE`, `getFileName()`

### setDisposition

    void setDisposition(String disposition)
                        throws MessagingException

  この Part の処置を設定します。

  パラメータ:
    `disposition` - この Part の処置
  例外:
    `MessagingException`
    `IllegalWriteException` - 実装がこのヘッダの変更をサポートしない場合
    `IllegalStateException` - この Part が READ_ONLY フォルダから取得された場合
  関連項目:
    `ATTACHMENT`, `INLINE`, `setFileName(java.lang.String)`

### getDescription

    String getDescription()
                          throws MessagingException

  この Part の説明 String を返します。 これは一般に説明的な情報をこの Part に関連付けます。 使用可能な物がない場合は null を返します。

  戻り値:
    この Part の説明
  例外:
    `MessagingException`

### setDescription

    void setDescription(String description)
                        throws MessagingException

  この Part の説明 String を設定します。 これは一般に説明的な情報をこの Part に関連付けます。

  パラメータ:
    `description` - この Part の説明
  例外:
    `MessagingException`
    `IllegalWriteException` - 実装がこのヘッダの変更をサポートしない場合
    `IllegalStateException` - この Part が READ_ONLY フォルダから取得された場合

### getFileName

    String getFileName()
                       throws MessagingException

  可能な場合、この Part に関連付けられたファイル名を取得します。 この Part がファイルから読み込まれた "添付" を表す場合に役立ちます。 このファイル名は通常、ディレクトリを含まない単純な名前です。

  戻り値:
    この Part に関連付けるファイル名
  例外:
    `MessagingException`

### setFileName

    void setFileName(String filename)
                     throws MessagingException

  可能な場合、この Part に関連付けられたファイル名を設定します。 この Part がファイルから読み込まれた "添付" を表す場合に役立ちます。 このファイル名は通常、ディレクトリを含まない単純な名前です。

  パラメータ:
    `filename` - この Part に関連付けるファイル名
  例外:
    `IllegalWriteException` - 実装がこのヘッダの変更をサポートしない場合
    `IllegalStateException` - この Part が READ_ONLY フォルダから取得された場合
    `MessagingException`

### getInputStream

    InputStream getInputStream()
                               throws IOException,
                                      MessagingException

  この Part の "content" の入力ストリームを返します。 入力ストリームが提供される前に、全てのメール固有の転送エンコーディングはデコードされます。

  これは一般に DataHandler の `getInputStream()` メソッドを呼び出すだけの簡易メソッドです。

  戻り値:
    InputStream
  例外:
    `IOException` - これは通常 DataHandler によりスローされます。 詳細については javax.activation.DataHandler の説明を参照して下さい。
    `MessagingException`
  関連項目:
    `getDataHandler()`, `DataHandler`

### getDataHandler

    DataHandler getDataHandler()
                               throws MessagingException

  この Part に含まれるコンテンツの DataHandler を返します。 DataHandler により、クライアントはコンテンツの取得と操作ができます。

  戻り値:
    コンテンツの DataHandler
  例外:
    `MessagingException`

### getContent

    Object getContent()
                      throws IOException,
                             MessagingException

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

  これは DataHandler の getContent() メソッドを呼び出すだけの簡易メソッドです。

  戻り値:
    オブジェクト
  例外:
    `MessagingException`
    `IOException` - これは通常 DataHandler によりスローされます。 詳細については javax.activation.DataHandler の説明を参照して下さい。
  関連項目:
    `DataHandler`

### setDataHandler

    void setDataHandler(DataHandler dh)
                        throws MessagingException

  このメソッドはこの Part の内容を設定する為の仕組みを提供します。 DataHandler は実際のコンテンツをラップします。

  パラメータ:
    `dh` - コンテンツの DataHandler
  例外:
    `MessagingException`
    `IllegalWriteException` - 実装がこのヘッダの変更をサポートしない場合
    `IllegalStateException` - この Part が READ_ONLY フォルダから取得された場合

### setContent

    void setContent(Object obj,
                    String type)
                    throws MessagingException

  この Part のコンテンツを設定する為の簡易メソッドです。 この Part は内部的に DataHandler 中のコンテンツをラップします。

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

  パラメータ:
    `obj` - Java オブジェクト
    `type` - このオブジェクトの MIME タイプ
  例外:
    `IllegalWriteException` - 実装がこのヘッダの変更をサポートしない場合
    `IllegalStateException` - この Part が READ_ONLY フォルダから取得された場合
    `MessagingException`

### setText

    void setText(String text)
                 throws MessagingException

  MIME タイプ "text/plain" を使用して、 指定された String をこの Part のコンテンツとして設定する簡易メソッドです。

  パラメータ:
    `text` - Message のコンテンツであるテキスト
  例外:
    `IllegalWriteException` - 実装がこのヘッダの変更をサポートしない場合
    `IllegalStateException` - この Part が READ_ONLY フォルダから取得された場合
    `MessagingException`

### setContent

    void setContent(Multipart mp)
                    throws MessagingException

  このメソッドは、指定された Multipart オブジェクトをこのメッセージのコンテンツとして設定します。

  パラメータ:
    `mp` - Message のコンテンツにする multipart オブジェクト
  例外:
    `IllegalWriteException` - 実装がこのヘッダの変更をサポートしない場合
    `IllegalStateException` - この Part が READ_ONLY フォルダから取得された場合
    `MessagingException`

### writeTo

    void writeTo(OutputStream os)
                 throws IOException,
                        MessagingException

  この Part のバイトストリームを出力します。 このバイトストリームは一般に Part 属性と 'コンテンツ' から 適切にエンコードされたバイトストリームの集合です。

  Part インタフェースを実装するクラスは、 使用される適切なエンコーディングアルゴリズムを決定します。

  このバイトストリームは一般に送信の為に使用されます。

  例外:
    `IOException` - ストリームへの書き込み中にエラーが発生する場合、 又は javax.activation レイヤによりエラーが生成される場合
    `MessagingException` - 書き込まれるデータを取り出す時にエラーが発生した場合
  関連項目:
    `DataHandler`

### getHeader

    String[] getHeader(String header_name)
                       throws MessagingException

  このヘッダ名の全てのヘッダを取得します。 このヘッダ名で使用可能なヘッダがない場合は `null` を返します。

  パラメータ:
    `header_name` - このヘッダの名前
  戻り値:
    この名前を持つすべてのヘッダに対する値フィールド
  例外:
    `MessagingException`

### setHeader

    void setHeader(String header_name,
                   String header_value)
                   throws MessagingException

  この header_name の値を設定します。既存の全てのヘッダ値をこの値で置き換えます。

  パラメータ:
    `header_name` - このヘッダの名前
    `header_value` - このヘッダの値
  例外:
    `MessagingException`
    `IllegalWriteException` - 実装がこのヘッダの変更をサポートしない場合
    `IllegalStateException` - この Part が READ_ONLY フォルダから取得された場合

### addHeader

    void addHeader(String header_name,
                   String header_value)
                   throws MessagingException

  この値をこの header_name の既存値に追加します。

  パラメータ:
    `header_name` - このヘッダの名前
    `header_value` - このヘッダの値
  例外:
    `MessagingException`
    `IllegalWriteException` - 実装がこのヘッダの変更をサポートしない場合
    `IllegalStateException` - この Part が READ_ONLY フォルダから取得された場合

### removeHeader

    void removeHeader(String header_name)
                      throws MessagingException

  この名前を持つ全てのヘッダを削除します。

  パラメータ:
    `header_name` - このヘッダの名前
  例外:
    `MessagingException`
    `IllegalWriteException` - 実装がこのヘッダの変更をサポートしない場合
    `IllegalStateException` - この Part が READ_ONLY フォルダから取得された場合

### getAllHeaders

    Enumeration getAllHeaders()
                              throws MessagingException

  この Part の全てのヘッダを Header オブジェクトの Enumeration として返します。

  戻り値:
    Header オブジェクトの配列
  例外:
    `MessagingException`

### getMatchingHeaders

    Enumeration getMatchingHeaders(String[] header_names)
                                   throws MessagingException

  この Part の一致するヘッダを Header オブジェクトの Enumeration として返します。

  戻り値:
    Header オブジェクトの配列
  例外:
    `MessagingException`

### getNonMatchingHeaders

    Enumeration getNonMatchingHeaders(String[] header_names)
                                      throws MessagingException

  このエンベロープの一致しないヘッダを Header オブジェクトの Enumeration として返します。

  戻り値:
    Header オブジェクトの配列
  例外:
    `MessagingException`

概要 | パッケージ | クラス | 使用 | 階層ツリー | 非推奨 API | 索引 | ヘルプ
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド