クラス ImapMailReceiver

実装されたすべてのインターフェース:
AwareBeanFactoryAwareBeanNameAwareDisposableBeanInitializingBeanApplicationContextAwareExpressionCapableMailReceiverNamedComponent

public class ImapMailReceiver extends AbstractMailReceiver
IMAP プロトコルをサポートするメールサーバーからメールメッセージを受信するための MailReceiver 実装。ポーリング可能な AbstractMailReceiver.receive() メソッドに加えて、waitForNewMessages() メソッドは、AbstractMailReceiver.receive() を呼び出す前に新しいメッセージが利用可能になるまでブロックするオプションを提供します。このオプションは、サーバーが idle コマンドをサポートしている場合にのみ使用できます。
作成者:
Arjen Poutsma, Mark Fisher, Oleg Zhurakousky, Gary Russell, Artem Bilan, Alexander Pinske
  • コンストラクターの詳細

    • ImapMailReceiver

      public ImapMailReceiver()
    • ImapMailReceiver

      public ImapMailReceiver(StringSE url)
  • メソッドの詳細

    • isShouldMarkMessagesAsRead

      public BooleanSE isShouldMarkMessagesAsRead()
      メッセージを既読にする必要があるかどうかを確認します。
      戻り値:
      メッセージを既読にする必要がある場合は true。
    • setSearchTermStrategy

      public void setSearchTermStrategy(SearchTermStrategy searchTermStrategy)
      カスタム SearchTermStrategy を設定して、メールの取得時に適用される SearchTermEE をコンパイルする方法を提供します。
      パラメーター:
      searchTermStrategy - 検索用語戦略の実装。
    • setShouldMarkMessagesAsRead

      public void setShouldMarkMessagesAsRead(BooleanSE shouldMarkMessagesAsRead)
      メッセージを既読にするかどうかを指定します。
      パラメーター:
      shouldMarkMessagesAsRead - メッセージを既読にする必要がある場合は true。
    • setCancelIdleInterval

      public void setCancelIdleInterval(long cancelIdleInterval)
      IDLE コマンドはこの間隔の後で終了します。接続が通知なしでドロップされる場合に役立ちます。新しい IDLE は通常すぐに処理されます。秒単位で指定。デフォルトの 120 (2 分)。RFC 2177 では、29 分以下の間隔を推奨しています。
      パラメーター:
      cancelIdleInterval - 設定する cancelIdleInterval
      導入:
      3.0.5
    • onInit

      protected void onInit()
      クラスからコピーされた説明: IntegrationObjectSupport
      サブクラスは、初期化ロジック用にこれを実装できます。
      オーバーライド:
      クラス AbstractMailReceiveronInit 
    • destroy

      public void destroy()
      次で指定:
      インターフェース DisposableBeandestroy 
      オーバーライド:
      クラス AbstractMailReceiverdestroy 
    • cancelPing

      public void cancelPing()
      現在の ping タスクをキャンセルしてメールフォルダーを閉じる必要があるときに呼び出されるフック。つまり、何らかの理由で IMAP アイドルを停止する必要がある場合。次の waitForNewMessages() 呼び出しは、フォルダーを再度開き、新しい ping タスクを開始します。
      導入:
      5.2
    • waitForNewMessages

      public void waitForNewMessages() throws MessagingExceptionEE
      この方法は IMAP レシーバーに固有であり、IMAP IDLE がサポートされている場合にのみ機能します(詳細については、RFC 2177 を参照してください)。
      例外:
      MessagingExceptionEE - MessagingException。
    • searchForNewMessages

      protected MessageEE[] searchForNewMessages() throws MessagingExceptionEE
      この受信者のフォルダーから新しいメッセージを取得します。この実装では、ANSWEREDEE ではなく DELETEDEE ではなく、RECENTEE であるフォルダー内のすべてのメッセージを検索する SearchTermEE を作成します。検索語は、searchEE で新しいメッセージに使用されます。
      次で指定:
      クラス AbstractMailReceiversearchForNewMessages 
      戻り値:
      新しいメッセージ
      例外:
      MessagingExceptionEE - JavaMail エラーの場合
    • setAdditionalFlags

      protected void setAdditionalFlags(MessageEE message) throws MessagingExceptionEE
      クラスからコピーされた説明: AbstractMailReceiver
      追加のフラグを設定できるオプションのメソッド。現在、IMapMailReceiver でのみ実装されています。
      オーバーライド:
      クラス AbstractMailReceiversetAdditionalFlags 
      パラメーター:
      message - メッセージ。
      例外:
      MessagingExceptionEE - MessagingException。