クラス Store
- java.lang.ObjectSE
-
- jakarta.mail.Service
-
- jakarta.mail.Store
- 実装されたすべてのインターフェース:
AutoCloseableSE
public abstract class Store extends Service
メッセージを格納および取得するための、メッセージストアとそのアクセスプロトコルをモデル化する抽象クラス。サブクラスは実際の実装を提供します。Store
はService
クラスを継承することに注意してください。これは、ストアの命名、ストアへの接続、接続イベントのリスニングのための多くの一般的なメソッドを提供します。- 作成者:
- John Mani, Bill Shannon
- 関連事項:
Service
,ConnectionEvent
,StoreEvent
メソッドのサマリー
すべてのメソッド インスタンスメソッド 抽象メソッド 具象メソッド 修飾子と型 メソッド 説明 void
addFolderListener(FolderListener l)
このストアから取得した任意の Folder オブジェクトに Folder イベントのリスナーを追加します。void
addStoreListener(StoreListener l)
このストアに StoreEvents のリスナーを追加します。abstract Folder
getDefaultFolder()
ストアによってユーザーに提示されるデフォルト名前空間の「ルート」を表す Folder オブジェクトを返します。abstract Folder
getFolder(URLName url)
指定された URLName に対応する閉じた Folder オブジェクトを返します。abstract Folder
getFolder(StringSE name)
指定された名前に対応する Folder オブジェクトを返します。Folder[]
getPersonalNamespaces()
現在のユーザーの個人的な名前空間を表す一連のフォルダーを返します。Folder[]
getSharedNamespaces()
共有名前空間を表す一連のフォルダーを返します。Folder[]
getUserNamespaces(StringSE user)
user
の名前空間を表す一連のフォルダーを返します。protected void
notifyFolderListeners(int type, Folder folder)
すべての FolderListeners に通知します。protected void
notifyFolderRenamedListeners(Folder oldF, Folder newF)
すべての FolderListeners にフォルダーの名前変更について通知します。protected void
notifyStoreListeners(int type, StringSE message)
すべての StoreListeners に通知します。void
removeFolderListener(FolderListener l)
Folder イベントのリスナーを削除します。void
removeStoreListener(StoreListener l)
Store イベントのリスナーを削除します。クラス jakarta.mail.Service から継承されたメソッド
addConnectionListener, close, connect, connect, connect, connect, finalize, getURLName, isConnected, notifyConnectionListeners, protocolConnect, queueEvent, removeConnectionListener, setConnected, setURLName, toString
メソッドの詳細
getDefaultFolder
public abstract Folder getDefaultFolder() throws MessagingException
ストアによってユーザーに提示されるデフォルト名前空間の「ルート」を表す Folder オブジェクトを返します。- 戻り値:
- ルートフォルダー
- 例外:
IllegalStateExceptionSE
- このストアが接続されていない場合。MessagingException
- その他の障害の場合
getFolder
public abstract Folder getFolder(StringSE name) throws MessagingException
指定された名前に対応する Folder オブジェクトを返します。指定されたフォルダーが物理的にストアに存在しない場合でも、Folder オブジェクトが返されることに注意してください。フォルダーオブジェクトのexists()
メソッドは、このフォルダーが実際に存在するかどうかを示します。Folder オブジェクトは Store によってキャッシュされないため、同じ名前でこのメソッドを複数回呼び出すと、その多くの異なる Folder オブジェクトが返されます。
- パラメーター:
name
- フォルダーの名前。一部のストアでは、階層区切り文字で始まる場合、名前は絶対パスにすることができます。それ以外の場合は、この名前空間の「ルート」に関連して解釈されます。- 戻り値:
- フォルダーオブジェクト
- 例外:
IllegalStateExceptionSE
- このストアが接続されていない場合。MessagingException
- その他の障害の場合- 関連事項:
Folder.exists()
,Folder.create(int)
getFolder
public abstract Folder getFolder(URLName url) throws MessagingException
指定された URLName に対応する閉じた Folder オブジェクトを返します。指定された URLName で指定されたストアは、この Store オブジェクトを参照する必要があります。このメソッドの実装は、URLName の
getFile()
メソッドを使用して実際のフォルダーの名前を取得し、その名前を使用してフォルダーを作成します。- パラメーター:
url
- フォルダーを示す URLName- 戻り値:
- フォルダーオブジェクト
- 例外:
IllegalStateExceptionSE
- このストアが接続されていない場合。MessagingException
- その他の障害の場合- 関連事項:
URLName
getPersonalNamespaces
public Folder[] getPersonalNamespaces() throws MessagingException
現在のユーザーの個人用名前空間を表す一連のフォルダーを返します。個人の名前空間は、認証されたユーザーの個人の範囲内と見なされる名前のセットです。通常、認証されたユーザーのみが個人の名前空間のメールフォルダーにアクセスできます。ユーザーの INBOX が存在する場合は、ユーザーの個人の名前空間内に表示される必要があります。一般的なケースでは、各ストアの各ユーザーに対して 1 つの個人用ネームスペースのみが存在する必要があります。この実装は、
getDefaultFolder
メソッドの戻り値を含む単一のエントリを持つ配列を返します。サブクラスは、このメソッドをオーバーライドして適切な情報を返す必要があります。- 戻り値:
- Folder オブジェクトの配列
- 例外:
IllegalStateExceptionSE
- このストアが接続されていない場合。MessagingException
- その他の障害の場合- 導入:
- JavaMail 1.2
getUserNamespaces
public Folder[] getUserNamespaces(StringSE user) throws MessagingException
user
の名前空間を表す一連のフォルダーを返します。返される名前空間は、ユーザーの個人の名前空間を表します。他のユーザーのネームスペースにあるメールフォルダーにアクセスするには、現在認証されているユーザーにアクセス権を明示的に付与する必要があります。例: 管理者が秘書にメールフォルダーへのアクセス権を付与することは一般的です。この実装は空の配列を返します。サブクラスは、このメソッドをオーバーライドして適切な情報を返す必要があります。
- パラメーター:
user
- ユーザー名- 戻り値:
- Folder オブジェクトの配列
- 例外:
IllegalStateExceptionSE
- このストアが接続されていない場合。MessagingException
- その他の障害の場合- 導入:
- JavaMail 1.2
getSharedNamespaces
public Folder[] getSharedNamespaces() throws MessagingException
共有名前空間を表す一連のフォルダーを返します。共有名前空間は、ユーザー間で共有することを目的としたメールフォルダーで構成される名前空間であり、ユーザーの個人用名前空間内には存在しません。この実装は空の配列を返します。サブクラスは、このメソッドをオーバーライドして適切な情報を返す必要があります。
- 戻り値:
- Folder オブジェクトの配列
- 例外:
IllegalStateExceptionSE
- このストアが接続されていない場合。MessagingException
- その他の障害の場合- 導入:
- JavaMail 1.2
addStoreListener
public void addStoreListener(StoreListener l)
このストアに StoreEvents のリスナーを追加します。ここで提供されるデフォルトの実装は、このリスナーを StoreListeners の内部リストに追加します。
- パラメーター:
l
- Store イベントのリスナー- 関連事項:
StoreEvent
removeStoreListener
public void removeStoreListener(StoreListener l)
Store イベントのリスナーを削除します。ここで提供されるデフォルトの実装は、このリスナーを StoreListeners の内部リストから削除します。
- パラメーター:
l
- リスナー- 関連事項:
addStoreListener(jakarta.mail.event.StoreListener)
notifyStoreListeners
protected void notifyStoreListeners(int type, StringSE message)
すべての StoreListeners に通知します。ストアの実装では、このメソッドを使用して StoreEvents をブロードキャストする必要があります。提供されているデフォルトの実装は、イベントを内部イベントキューに入れます。イベントディスパッチャースレッドは、イベントをキューからデキューし、登録された StoreListeners にディスパッチします。イベントのディスパッチは別のスレッドで行われるため、潜在的なデッドロックの問題を回避できることに注意してください。
- パラメーター:
type
- StoreEvent 型message
- StoreEvent へのメッセージ
addFolderListener
public void addFolderListener(FolderListener l)
このストアから取得した任意の Folder オブジェクトの Folder イベントのリスナーを追加します。FolderEvents は、影響を受けるフォルダーの FolderListeners と、含まれているストアの FolderListeners に配信されます。ここで提供されるデフォルトの実装は、このリスナーを FolderListeners の内部リストに追加します。
- パラメーター:
l
- Folder イベントのリスナー- 関連事項:
FolderEvent
removeFolderListener
public void removeFolderListener(FolderListener l)
Folder イベントのリスナーを削除します。ここで提供されるデフォルトの実装は、このリスナーを FolderListeners の内部リストから削除します。
- パラメーター:
l
- リスナー- 関連事項:
addFolderListener(jakarta.mail.event.FolderListener)
notifyFolderListeners
protected void notifyFolderListeners(int type, Folder folder)
すべての FolderListeners に通知します。Store 実装は、このメソッドを使用して Folder イベントをブロードキャストすることが期待されています。提供されているデフォルトの実装は、イベントを内部イベントキューに入れます。イベントディスパッチャースレッドは、イベントをキューからデキューし、登録された FolderListeners にディスパッチします。イベントのディスパッチは別のスレッドで行われるため、潜在的なデッドロックの問題を回避できることに注意してください。
- パラメーター:
type
- FolderEvent の型folder
- 影響を受けるフォルダー- 関連事項:
notifyFolderRenamedListeners(jakarta.mail.Folder, jakarta.mail.Folder)
notifyFolderRenamedListeners
protected void notifyFolderRenamedListeners(Folder oldF, Folder newF)
フォルダーの名前変更についてすべての FolderListeners に通知します。Store 実装は、このメソッドを使用して、フォルダーの名前の変更を示す Folder イベントをブロードキャストする必要があります。提供されているデフォルトの実装は、イベントを内部イベントキューに入れます。イベントディスパッチャースレッドは、イベントをキューからデキューし、登録された FolderListeners にディスパッチします。イベントのディスパッチは別のスレッドで行われるため、潜在的なデッドロックの問題を回避できることに注意してください。
- パラメーター:
oldF
- 名前を変更するフォルダーnewF
- 新しい名前を表すフォルダー。- 導入:
- JavaMail 1.1