インターフェース Part
- すべての既知のサブインターフェース:
MimePart
- すべての既知の実装クラス:
BodyPart
、Message
、MimeBodyPart
、MimeMessage
、PreencodedMimeBodyPart
public interface Part
Part
インターフェースは、メッセージと BodyParts の共通の基本インターフェースです。パーツは、一連の属性と「コンテンツ」で構成されます。
属性:
Jakarta Mail API は、ほとんどの既存のメールシステムに共通であると見なされる一連の標準部品属性を定義します。これらの属性には、独自の settor メソッドと gettor メソッドがあります。メールシステムは他のパート属性もサポートする場合があります。これらは、名前と値の両方が文字列である名前と値のペアとして表されます。
コンテンツ:
「コンテンツ」のデータ型は、
getContentType()
メソッドによって返されます。データ型の命名には MIME タイピングシステムが使用されます。パーツの「コンテンツ」は、さまざまな形式で利用できます。
- DataHandler として -
getDataHandler()
メソッドを使用します。パーツの「コンテンツ」は、jakarta.activation.DataHandler
オブジェクトを通じても利用できます。DataHandler オブジェクトを使用すると、クライアントはコンテンツで使用可能な操作を検出し、適切なコンポーネントをインスタンス化してそれらの操作を実行できます。 - 入力ストリームとして -
getInputStream()
メソッドを使用します。このストリームが返される前に、メール固有のエンコーディングがデコードされます。 - Java オブジェクトとして -
getContent()
メソッドを使用します。このメソッドは、「コンテンツ」を Java オブジェクトとして返します。返されるオブジェクトは、もちろんコンテンツ自体に依存しています。特に、「マルチパート」パートのコンテンツは常にマルチパートまたはそのサブクラスです。つまり、「マルチパート」型のパートのgetContent()
は、常にマルチパート(またはサブクラス)オブジェクトを返します。
writeTo()
メソッドを提供します。このバイトストリームは通常、Part 属性とそのコンテンツのバイトストリームの集約です。Message と BodyPart は Part インターフェースを実装しています。MIME 用語では、Part はエンティティ(RFC 2045、セクション 2.4)をモデル化することに注意してください。
- 作成者:
- John Mani
フィールドのサマリー
フィールド 修飾子と型 フィールド 説明 static StringSE
ATTACHMENT
このパートは添付ファイルとして提示する必要があります。static StringSE
INLINE
このパートはインラインで表示する必要があります。
メソッドのサマリー
すべてのメソッド インスタンスメソッド 抽象メソッド 修飾子と型 メソッド 説明 void
addHeader(StringSE header_name, StringSE header_value)
この値をこの header_name の既存の値に追加します。EnumerationSE<Header>
getAllHeaders()
このパートのすべてのヘッダーを、Header オブジェクトの列挙として返します。ObjectSE
getContent()
コンテンツを Java オブジェクトとして返します。StringSE
getContentType()
このパーツのコンテンツの Content-Type を返します。DataHandler
getDataHandler()
このパーツ内のコンテンツの DataHandler を返します。StringSE
getDescription()
このパーツの説明文字列を返します。StringSE
getDisposition()
このパートの処置を返します。StringSE
getFileName()
可能であれば、このパーツに関連付けられているファイル名を取得します。StringSE[]
getHeader(StringSE header_name)
このヘッダー名のすべてのヘッダーを取得します。InputStreamSE
getInputStream()
このパートの「コンテンツ」の入力ストリームを返します。int
getLineCount()
このパートのコンテンツの行数を返します。EnumerationSE<Header>
getMatchingHeaders(StringSE[] header_names)
このパートから一致するヘッダーを Header オブジェクトの列挙として返します。EnumerationSE<Header>
getNonMatchingHeaders(StringSE[] header_names)
このエンベロープから一致しないヘッダーを、Header オブジェクトの列挙として返します。int
getSize()
このパートのコンテンツのサイズをバイト単位で返します。boolean
isMimeType(StringSE mimeType)
これは指定された MIME 型の一部ですか? このメソッドは、primaryType
とsubType
のみを比較します。void
removeHeader(StringSE header_name)
この名前のすべてのヘッダーを削除します。void
setContent(Multipart mp)
このメソッドは、指定された Multipart オブジェクトをこのメッセージのコンテンツとして設定します。void
setContent(ObjectSE obj, StringSE type)
このパートのコンテンツを設定するための便利なメソッド。void
setDataHandler(DataHandler dh)
このメソッドは、このパーツのコンテンツを設定するメカニズムを提供します。void
setDescription(StringSE description)
このパーツの説明文字列を設定します。void
setDisposition(StringSE disposition)
このパーツの配置を設定します。void
setFileName(StringSE filename)
可能であれば、このパーツに関連付けられたファイル名を設定します。void
setHeader(StringSE header_name, StringSE header_value)
この header_name の値を設定します。void
setText(StringSE text)
指定された文字列を、MIME 型 "text/plain" のこのパーツのコンテンツとして設定する便利なメソッド。void
writeTo(OutputStreamSE os)
このパートのバイトストリームを出力します。
メソッドの詳細
getSize
int getSize() throws MessagingException
このパートのコンテンツのサイズをバイト単位で返します。サイズを判別できない場合は -1 を返します。サイズはコンテンツサイズの正確な測定値ではない場合があり、コンテンツの転送エンコードを考慮に入れる場合と考慮しない場合があることに注意してください。このサイズは、ユーザーインターフェースでの表示に適しており、ユーザーにこのパーツのサイズのおおよその目安を提供します。
- 戻り値:
- コンテンツのサイズ(バイト)
- 例外:
MessagingException
- 失敗
getLineCount
int getLineCount() throws MessagingException
このパートのコンテンツの行数を返します。数が決定できない場合は -1 を返します。この数値は、コンテンツの長さの正確な測定値ではない場合があり、コンテンツの転送エンコードを考慮に入れる場合と考慮しない場合があることに注意してください。- 戻り値:
- コンテンツの行数。
- 例外:
MessagingException
- 失敗
getContentType
StringSE getContentType() throws MessagingException
このパーツのコンテンツの Content-Type を返します。Content-Type を特定できなかった場合は null を返します。MIME タイピングシステムは、コンテンツ型の命名に使用されます。
- 戻り値:
- このパートの ContentType
- 例外:
MessagingException
- 失敗- 関連事項:
DataHandler
isMimeType
boolean isMimeType(StringSE mimeType) throws MessagingException
これは指定された MIME 型の一部ですか? このメソッドは、primaryType
とsubType
のみを比較します。コンテンツ型のパラメーターは無視されます。例: このメソッドは、コンテンツ型 "text/plain" のパーツを "text/plain; charset=foobar" と比較するときに
true
を返します。mimeType
のsubType
が特殊文字 "*" の場合、サブ型は比較中に無視されます。- パラメーター:
mimeType
- テストする MIME 型- 戻り値:
- このパーツが指定された型である場合は true
- 例外:
MessagingException
- 失敗
getDisposition
StringSE getDisposition() throws MessagingException
この部品の処分を返却してください。配置は、パーツをユーザーに提示する方法を説明します。(RFC 2183 を参照してください)戻り値は、大文字と小文字を区別せずに考慮する必要があります。例:String disp = part.getDisposition(); if (disp == null || disp.equalsIgnoreCase(Part.ATTACHMENT)) // treat as attachment if not first part
- 戻り値:
- このパートの後処理。不明の場合は null
- 例外:
MessagingException
- 失敗- 関連事項:
ATTACHMENT
,INLINE
,getFileName()
setDisposition
void setDisposition(StringSE disposition) throws MessagingException
このパーツの配置を設定します。- パラメーター:
disposition
- このパートの処分- 例外:
IllegalWriteException
- 基本となる実装がこのヘッダーの変更をサポートしていない場合IllegalStateExceptionSE
- このパーツが READ_ONLY フォルダーから取得された場合MessagingException
- その他の障害の場合- 関連事項:
ATTACHMENT
,INLINE
,setFileName(java.lang.String)
getDescription
StringSE getDescription() throws MessagingException
このパーツの説明文字列を返します。これは通常、このパーツにいくつかの説明情報を関連付けます。何も利用できない場合は null を返します。- 戻り値:
- このパートの説明
- 例外:
MessagingException
- 失敗
setDescription
void setDescription(StringSE description) throws MessagingException
このパーツの説明文字列を設定します。これは通常、このパーツにいくつかの説明情報を関連付けます。- パラメーター:
description
- このパートの説明- 例外:
IllegalWriteException
- 基本となる実装がこのヘッダーの変更をサポートしていない場合IllegalStateExceptionSE
- このパーツが READ_ONLY フォルダーから取得された場合MessagingException
- その他の障害の場合
getFileName
StringSE getFileName() throws MessagingException
可能であれば、このパーツに関連付けられているファイル名を取得します。このパートがファイルからロードされた「添付ファイル」を表す場合に役立ちます。ファイル名は通常、ディレクトリコンポーネントを含まない単純な名前になります。- 戻り値:
- このパーツに関連付けるファイル名
- 例外:
MessagingException
- 失敗
setFileName
void setFileName(StringSE filename) throws MessagingException
可能であれば、このパーツに関連付けられたファイル名を設定します。このパートがファイルからロードされた「添付ファイル」を表す場合に役立ちます。ファイル名は通常、ディレクトリコンポーネントを含まない単純な名前になります。- パラメーター:
filename
- このパーツに関連付けるファイル名- 例外:
IllegalWriteException
- 基本となる実装がこのヘッダーの変更をサポートしていない場合IllegalStateExceptionSE
- このパーツが READ_ONLY フォルダーから取得された場合MessagingException
- その他の障害の場合
getInputStream
InputStreamSE getInputStream() throws IOExceptionSE, MessagingException
このパートの「コンテンツ」の入力ストリームを返します。メール固有の転送エンコーディングは、入力ストリームが提供される前にデコードされます。これは通常、DataHandler の
getInputStream()
メソッドを呼び出すだけの便利なメソッドです。- 戻り値:
- InputStream
- 例外:
IOExceptionSE
- これは通常、DataHandler によってスローされます。詳細については、jakarta.activation.DataHandler のドキュメントを参照してください。MessagingException
- その他の障害の場合- 関連事項:
getDataHandler()
,DataHandler.getInputStream()
getDataHandler
DataHandler getDataHandler() throws MessagingException
このパーツ内のコンテンツの DataHandler を返します。DataHandler を使用すると、クライアントはコンテンツを操作するだけでなく、コンテンツを取得できます。- 戻り値:
- コンテンツの DataHandler
- 例外:
MessagingException
- 失敗
getContent
ObjectSE getContent() throws IOExceptionSE, MessagingException
コンテンツを Java オブジェクトとして返します。もちろん、返されるオブジェクトの型はコンテンツ自体に依存します。例: "text/plain" コンテンツに対して返されるオブジェクトは、通常、String オブジェクトです。「マルチパート」コンテンツに対して返されるオブジェクトは、常にマルチパートサブクラスです。DataHandler システムに認識されていないコンテンツ型の場合、入力ストリームがコンテンツとして返されますこれは、DataHandler の getContent() メソッドを呼び出すだけの便利なメソッドです。
- 戻り値:
- オブジェクト
- 例外:
IOExceptionSE
- これは通常、DataHandler によってスローされます。詳細については、jakarta.activation.DataHandler のドキュメントを参照してください。MessagingException
- その他の障害の場合- 関連事項:
DataHandler.getContent()
setDataHandler
void setDataHandler(DataHandler dh) throws MessagingException
このメソッドは、このパーツのコンテンツを設定するメカニズムを提供します。DataHandler は実際のコンテンツを囲みます。- パラメーター:
dh
- コンテンツの DataHandler。- 例外:
IllegalWriteException
- 基本となる実装が既存の値の変更をサポートしていない場合IllegalStateExceptionSE
- このパーツが READ_ONLY フォルダーから取得された場合MessagingException
- その他の障害の場合
setContent
void setContent(ObjectSE obj, StringSE type) throws MessagingException
このパートのコンテンツを設定するための便利なメソッド。パーツはコンテンツを DataHandler で内部的にラップします。これが正しく機能するためには、指定された型の DataContentHandler クラスが Jakarta Mail 実装で使用可能である必要があることに注意してください。つまり、
setContent(foobar, "application/x-foobar")
を実行するには、"application/x-foobar" 用の DataContentHandler をインストールする必要があります。詳細については、Java Activation フレームワークを参照してください。- パラメーター:
obj
- java オブジェクト。type
- このオブジェクトの MIME 型。- 例外:
IllegalWriteException
- 基本となる実装が既存の値の変更をサポートしていない場合IllegalStateExceptionSE
- このパーツが READ_ONLY フォルダーから取得された場合MessagingException
- その他の障害の場合
setText
void setText(StringSE text) throws MessagingException
指定された文字列を、MIME 型 "text/plain" のこのパーツのコンテンツとして設定する便利なメソッド。- パラメーター:
text
- メッセージのコンテンツであるテキスト。- 例外:
IllegalWriteException
- 基本となる実装が既存の値の変更をサポートしていない場合IllegalStateExceptionSE
- このパーツが READ_ONLY フォルダーから取得された場合MessagingException
- その他の障害の場合
setContent
void setContent(Multipart mp) throws MessagingException
このメソッドは、指定された Multipart オブジェクトをこのメッセージのコンテンツとして設定します。- パラメーター:
mp
- メッセージのコンテンツであるマルチパートオブジェクト- 例外:
IllegalWriteException
- 基本となる実装が既存の値の変更をサポートしていない場合IllegalStateExceptionSE
- このパーツが READ_ONLY フォルダーから取得された場合MessagingException
- その他の障害の場合
writeTo
void writeTo(OutputStreamSE os) throws IOExceptionSE, MessagingException
このパートのバイトストリームを出力します。このバイトストリームは通常、Part 属性の集合であり、「コンテンツ」から適切にエンコードされたバイトストリームです。Part インターフェースを実装するクラスは、使用する適切なエンコーディングアルゴリズムを決定します。
バイトストリームは通常、送信に使用されます。
- パラメーター:
os
- 書き込むストリーム- 例外:
IOExceptionSE
- ストリームへの書き込みでエラーが発生した場合、または jakarta.activation レイヤーによってエラーが生成された場合。MessagingException
- 書き込むデータのフェッチ中にエラーが発生した場合- 関連事項:
DataHandler.writeTo(java.io.OutputStream)
getHeader
StringSE[] getHeader(StringSE header_name) throws MessagingException
このヘッダー名のすべてのヘッダーを取得します。このヘッダー名のヘッダーが使用できない場合、null
を返します。- パラメーター:
header_name
- このヘッダーの名前- 戻り値:
- この名前のすべてのヘッダーの値フィールド
- 例外:
MessagingException
- 失敗
setHeader
void setHeader(StringSE header_name, StringSE header_value) throws MessagingException
この header_name の値を設定します。既存のすべてのヘッダー値をこの新しい値で置き換えます。- パラメーター:
header_name
- このヘッダーの名前header_value
- このヘッダーの値- 例外:
IllegalWriteException
- 基本となる実装が既存の値の変更をサポートしていない場合IllegalStateExceptionSE
- このパーツが READ_ONLY フォルダーから取得された場合MessagingException
- その他の障害の場合
addHeader
void addHeader(StringSE header_name, StringSE header_value) throws MessagingException
この値をこの header_name の既存の値に追加します。- パラメーター:
header_name
- このヘッダーの名前header_value
- このヘッダーの値- 例外:
IllegalWriteException
- 基本となる実装が既存の値の変更をサポートしていない場合IllegalStateExceptionSE
- このパーツが READ_ONLY フォルダーから取得された場合MessagingException
- その他の障害の場合
removeHeader
void removeHeader(StringSE header_name) throws MessagingException
この名前のすべてのヘッダーを削除します。- パラメーター:
header_name
- このヘッダーの名前- 例外:
IllegalWriteException
- 基本となる実装が既存の値の変更をサポートしていない場合IllegalStateExceptionSE
- このパーツが READ_ONLY フォルダーから取得された場合MessagingException
- その他の障害の場合
getAllHeaders
EnumerationSE<Header> getAllHeaders() throws MessagingException
このパートのすべてのヘッダーを、Header オブジェクトの列挙として返します。- 戻り値:
- Header オブジェクトの列挙
- 例外:
MessagingException
- 失敗
getMatchingHeaders
EnumerationSE<Header> getMatchingHeaders(StringSE[] header_names) throws MessagingException
このパートから一致するヘッダーを Header オブジェクトの列挙として返します。- パラメーター:
header_names
- 一致するヘッダー- 戻り値:
- Header オブジェクトの列挙
- 例外:
MessagingException
- 失敗
getNonMatchingHeaders
EnumerationSE<Header> getNonMatchingHeaders(StringSE[] header_names) throws MessagingException
このエンベロープから一致しないヘッダーを、Header オブジェクトの列挙として返します。- パラメーター:
header_names
- 一致しないヘッダー- 戻り値:
- Header オブジェクトの列挙
- 例外:
MessagingException
- 失敗