public class FetchProfile extends ObjectSE
フォルダーから取得したメッセージは軽量のオブジェクトであり、通常、実際のメッセージへの空の参照として始まります。そのようなメッセージオブジェクトは、その特定のメッセージで適切な get *() メソッドが呼び出されると、「オンデマンド」で入力されます。特定のサーバーベースのメッセージアクセスプロトコル(例: IMAP)では、1 回のリクエストでさまざまなメッセージのメッセージ属性をバッチフェッチできます。ある範囲のメッセージにメッセージ属性を使用したいクライアント(例: ヘッダーリストにトップレベルのヘッダーを表示するため)は、そのようなサーバーによって提供される最適化を使用したい場合があります。FetchProfile
を使用すると、クライアントはこの要望をサーバーに示すことができます。
バックエンドサービスがそのようなプロファイルの簡単で効率的なフェッチを許可しない場合があるため、実装は FetchProfiles をサポートする義務を負わないことに注意してください。
FetchProfile の使用箇所を示すサンプルコードを以下に示します。
Message[] msgs = folder.getMessages(); FetchProfile fp = new FetchProfile(); fp.add(FetchProfile.Item.ENVELOPE); fp.add("X-mailer"); folder.fetch(msgs, fp);
Folder.fetch(javax.mail.Message[], javax.mail.FetchProfile)
修飾子と型 | クラスと説明 |
---|---|
static class | FetchProfile.Item この内部クラスは、FetchProfile でリクエストできるすべてのアイテムの基本クラスです。 |
コンストラクターと説明 |
---|
FetchProfile() 空の FetchProfile を作成します。 |
修飾子と型 | メソッドと説明 |
---|---|
void | add(FetchProfile.Item item) 指定された特別なアイテムを、プリフェッチする属性の 1 つとして追加します。 |
void | add(StringSE headerName) 指定したヘッダーフィールドを、プリフェッチする属性のリストに追加します。 |
boolean | contains(FetchProfile.Item item) フェッチプロファイルに指定された特別なアイテムが含まれている場合は true を返します。 |
boolean | contains(StringSE headerName) フェッチプロファイルに指定されたヘッダー名が含まれている場合は true を返します。 |
StringSE[] | getHeaderNames() このプロファイルで設定されているヘッダーフィールドの名前を取得します。 |
FetchProfile.Item[] | getItems() このプロファイルで設定されたアイテムを取得します。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public void add(FetchProfile.Item item)
item
- フェッチする特別なアイテム FetchProfile.Item.ENVELOPE
, FetchProfile.Item.CONTENT_INFO
, FetchProfile.Item.FLAGS
public void add(StringSE headerName)
headerName
- プリフェッチされるヘッダー public boolean contains(FetchProfile.Item item)
item
- テストするアイテム public boolean contains(StringSE headerName)
headerName
- テストするヘッダー public FetchProfile.Item[] getItems()
public StringSE[] getHeaderNames()
Copyright © 2019 Eclipse Foundation.
Use is subject to license terms.