|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
public interface Part
Part
インタフェースは、Message 及び BodyPart の共通基本インタフェースです。
Part は一連の属性と "コンテンツ" で構成されます。
属性:
JavaMail API は、既存の殆どのメールシステムに共通すると考えられる一連の標準的な Part 属性を定義します。 これらの属性は、固有の設定メソッド及び取得メソッドを持っています。 メールシステムは他の Part 属性をサポートする事も可能で、 これらは String である名前及び値の対で表されます。
コンテンツ:
"コンテンツ" の data type は、getContentType()
メソッドにより返されます。
MIME 型付けシステムを使用して、データ型の名前を設定します。
Part の "コンテンツ" は以下の様に様々な形式で使用可能です。
getDataHandler()
メソッドを使用。
Part の "content" は javax.activation.DataHandler
オブジェクト経由でも使用可能です。
DataHandler オブジェクトにより、クライアントはコンテンツ上で使用可能な操作を見つけ、
適切なコンポーネントをインスタンス化してそれらの操作を実行できます。
getInputStream()
メソッドを使用。
このストリームが返される前に、全てのメール固有のエンコーディングがデコードされます。
getContent()
メソッドを使用。
このメソッドは "コンテンツ" を Java オブジェクトとして返します。
返されるオブジェクトはもちろんコンテンツ自身により異なります。
特に、"マルチパート" Part のコンテンツは常に Multipart 又はそのサブクラスです。
つまり、"マルチパート" 型の Part 上の getContent()
は
常に Multipart (又はサブクラス) オブジェクトを返します。
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 のバイトストリームを出力します。 |
フィールドの詳細 |
---|
static final String ATTACHMENT
getDisposition()
,
setDisposition(java.lang.String)
,
定数フィールド値static final String INLINE
getDisposition()
,
setDisposition(java.lang.String)
,
定数フィールド値メソッドの詳細 |
---|
int getSize() throws MessagingException
このサイズはコンテンツサイズの正確な測定値でない場合があり、 コンテンツの任意の転送エンコーディングを示す場合も示さない場合もあります。 このサイズは、ユーザに対してこの Part のサイズに関する概要を知らせる為に、 ユーザインタフェースで表示するのに適しています。
MessagingException
int getLineCount() throws MessagingException
この数はコンテンツ長の正確な測定値でない場合があり、 コンテンツの転送エンコーディングを示す場合も示さない場合もあります。
MessagingException
String getContentType() throws MessagingException
MIME 型付けシステムを使用して、Content-type の名前を設定します。
MessagingException
DataHandler
boolean isMimeType(String mimeType) throws MessagingException
primaryType
と subType
のみを比較します。
コンテンツ形式のパラメータは無視されます。
例えば、コンテンツ形式 "text/plain" と "text/plain; charset=Shift_JIS" を比較すると、
このメソッドは true
を返します。
mimeType
の subType
が特殊文字 '*' の場合、
比較時にサブタイプは無視されます。
MessagingException
String getDisposition() throws MessagingException
String disp = part.getDisposition(); if (disp == null || disp.equalsIgnoreCase(Part.ATTACHMENT)) // treat as attachment if not first part
MessagingException
ATTACHMENT
,
INLINE
,
getFileName()
void setDisposition(String disposition) throws MessagingException
disposition
- この Part の処置
MessagingException
IllegalWriteException
- 実装がこのヘッダの変更をサポートしない場合
IllegalStateException
- この Part が READ_ONLY フォルダから取得された場合ATTACHMENT
,
INLINE
,
setFileName(java.lang.String)
String getDescription() throws MessagingException
MessagingException
void setDescription(String description) throws MessagingException
description
- この Part の説明
MessagingException
IllegalWriteException
- 実装がこのヘッダの変更をサポートしない場合
IllegalStateException
- この Part が READ_ONLY フォルダから取得された場合String getFileName() throws MessagingException
MessagingException
void setFileName(String filename) throws MessagingException
filename
- この Part に関連付けるファイル名
IllegalWriteException
- 実装がこのヘッダの変更をサポートしない場合
IllegalStateException
- この Part が READ_ONLY フォルダから取得された場合
MessagingException
InputStream getInputStream() throws IOException, MessagingException
これは一般に DataHandler の getInputStream()
メソッドを呼び出すだけの簡易メソッドです。
IOException
- これは通常 DataHandler によりスローされます。
詳細については javax.activation.DataHandler の説明を参照して下さい。
MessagingException
getDataHandler()
,
DataHandler
DataHandler getDataHandler() throws MessagingException
MessagingException
Object getContent() throws IOException, MessagingException
これは DataHandler の getContent() メソッドを呼び出すだけの簡易メソッドです。
MessagingException
IOException
- これは通常 DataHandler によりスローされます。
詳細については javax.activation.DataHandler の説明を参照して下さい。DataHandler
void setDataHandler(DataHandler dh) throws MessagingException
dh
- コンテンツの DataHandler
MessagingException
IllegalWriteException
- 実装がこのヘッダの変更をサポートしない場合
IllegalStateException
- この Part が READ_ONLY フォルダから取得された場合void setContent(Object obj, String type) throws MessagingException
これが正しく機能する為に、指定されたタイプの DataContentHandler クラスは、
JavaMail 実装に対して使用可能でなければなりません。
つまり、setContent(foobar, "application/x-foobar")
を実行する為には、
"application/x-foobar" の DataContentHandler がインストールされている必要があります。
詳細については Java Activation Framework を参照して下さい。
obj
- Java オブジェクトtype
- このオブジェクトの MIME タイプ
IllegalWriteException
- 実装がこのヘッダの変更をサポートしない場合
IllegalStateException
- この Part が READ_ONLY フォルダから取得された場合
MessagingException
void setText(String text) throws MessagingException
text
- Message のコンテンツであるテキスト
IllegalWriteException
- 実装がこのヘッダの変更をサポートしない場合
IllegalStateException
- この Part が READ_ONLY フォルダから取得された場合
MessagingException
void setContent(Multipart mp) throws MessagingException
mp
- Message のコンテンツにする multipart オブジェクト
IllegalWriteException
- 実装がこのヘッダの変更をサポートしない場合
IllegalStateException
- この Part が READ_ONLY フォルダから取得された場合
MessagingException
void writeTo(OutputStream os) throws IOException, MessagingException
Part インタフェースを実装するクラスは、 使用される適切なエンコーディングアルゴリズムを決定します。
このバイトストリームは一般に送信の為に使用されます。
IOException
- ストリームへの書き込み中にエラーが発生する場合、
又は javax.activation レイヤによりエラーが生成される場合
MessagingException
- 書き込まれるデータを取り出す時にエラーが発生した場合DataHandler
String[] getHeader(String header_name) throws MessagingException
null
を返します。
header_name
- このヘッダの名前
MessagingException
void setHeader(String header_name, String header_value) throws MessagingException
header_name
- このヘッダの名前header_value
- このヘッダの値
MessagingException
IllegalWriteException
- 実装がこのヘッダの変更をサポートしない場合
IllegalStateException
- この Part が READ_ONLY フォルダから取得された場合void addHeader(String header_name, String header_value) throws MessagingException
header_name
- このヘッダの名前header_value
- このヘッダの値
MessagingException
IllegalWriteException
- 実装がこのヘッダの変更をサポートしない場合
IllegalStateException
- この Part が READ_ONLY フォルダから取得された場合void removeHeader(String header_name) throws MessagingException
header_name
- このヘッダの名前
MessagingException
IllegalWriteException
- 実装がこのヘッダの変更をサポートしない場合
IllegalStateException
- この Part が READ_ONLY フォルダから取得された場合Enumeration getAllHeaders() throws MessagingException
MessagingException
Enumeration getMatchingHeaders(String[] header_names) throws MessagingException
MessagingException
Enumeration getNonMatchingHeaders(String[] header_names) throws MessagingException
MessagingException
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |