org.opengion.fukurou.mail

## クラス MailRX

- java.lang.Object
- - org.opengion.fukurou.mail.MailRX

-     public class MailRX
      extends java.lang.Object

       MailRX は、POP3/IMAPプロトコルによるメール受信プログラムです。

       メールへの接続条件(host,user,passwd など)と、選択条件(matchTermなど)を指定し、
       MailReceiveListener をセットして、start() メソッドを呼びます。
       実際のメール処理は、MailReceiveListener を介して、１メールずつ処理します。
       添付ファイルを処理する場合は、MailAttachFiles クラスを使用します。

              host          メールサーバー(必須)
              user          メールを取得するログインユーザー(必須)
              passwd        メールを取得するログインパスワード(必須)
              protocol      受信サーバーのプロトコル[imap/pop3]を指定(初期値:pop3)
              port          受信サーバーのポートを指定(初期値:-1)
              useSSL        SSL接続するかどうか[true:する/false:しない]を指定(初期値:false:しない)
              mbox          受信サーバーのメールボックスを指定(初期値:INBOX)
              maxRowCount   受信メールの最大取り込み件数(初期値:100)(0:[無制限])
              charset       メールのデフォルトエンコード(初期値:ISO-2022-JP)
              matchTerm     受信メールを選択する条件のMINEntryオブジェクト
              delete        検索後、メールをサーバーから削除するかどうかを、true/falseで指定(初期値:false)。

       ※ 6.3.8.0 (2015/09/11)
          useSSL属性は、protocolに、pop3s/imaps を指定した場合、
          自動的に、ture に設定するようにしています。

  バージョン
    4.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK5.0,

- - ### フィールドのサマリー

    フィールド
    修飾子とタイプ | フィールドと説明
    --- | ---
    `static java.lang.String` | `CHARSET` メールのデフォルトエンコード 「="ISO-2022-JP"」 Windwos-31J , MS932 , UTF-8 , ISO-2022-JP を指定します。
    `static boolean` | `DELETE_MESSAGE` 検索後、メールをサーバーから削除するかどうかを、true/falseで指定します 「=false」
    `static int` | `MAX_ROW_COUNT` 受信メールの最大取り込み件数を指定します 「=100」
    `static java.lang.String` | `MBOX` メールサーバーのデフォルトメールボックス 「="INBOX"」。
    `static int` | `PORT` メールサーバーのデフォルトポート番号 「=-1」
    `static java.lang.String` | `PROTOCOL` メールサーバーのデフォルトプロトコル 「="pop3"」

  - ### コンストラクタのサマリー

    コンストラクタ
    コンストラクタと説明
    `MailRX()`

  - ### メソッドのサマリー

    すべてのメソッド staticメソッド インスタンス・メソッド concreteメソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `void` | `addMatchTerm(HybsEntry matchTerm)` メール検索する場合のマッチ条件のキーと値の HybsEntry をセットします。
    `static void` | `main(java.lang.String[] args)` コマンドから実行できる、テスト用の main メソッドです。
    `void` | `setCharset(java.lang.String charset)` 文字エンコーディングをセットします(初期値:ISO-2022-JP)。
    `void` | `setDebug(boolean debug)` デバッグ情報の表示を行うかどうかをセットします。
    `void` | `setDelete(boolean deleteFlag)` メッセージをメールサーバーから削除するかどうかをセットします(初期値:false)。
    `void` | `setHost(java.lang.String host)` メールサーバーをセットします(必須)。
    `void` | `setMailReceiveListener(MailReceiveListener listener)` メール受信毎に発生するイベントを伝えるリスナーをセットします。
    `void` | `setMaxRowCount(int maxCount)` 最大取り込み件数をセットします(初期値:100)(0:[無制限])。
    `void` | `setMbox(java.lang.String mbox)` 受信メイルボックスをセットします(初期値:INBOX)。
    `void` | `setPasswd(java.lang.String passwd)` パスワードをセットします(必須)。
    `void` | `setPort(int port)` ポート番号をセットします(初期値:-1)。
    `void` | `setProtocol(java.lang.String prtcol)` 受信プロトコル(pop3/imap等)をセットします(初期値:pop3)。
    `void` | `setUser(java.lang.String user)` 受信ユーザーをセットします(必須)。
    `void` | `start()` レシーバーを開始します。
    `void` | `useSSL(boolean isSSL)` SSL接続するかどうかをセットします(初期値:false:しない)。

    - ### クラスから継承されたメソッド java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### フィールドの詳細

    - #### MAX_ROW_COUNT

          public static final int MAX_ROW_COUNT

      受信メールの最大取り込み件数を指定します 「=100」
      関連項目:
        定数フィールド値

    - #### DELETE_MESSAGE

          public static final boolean DELETE_MESSAGE

      検索後、メールをサーバーから削除するかどうかを、true/falseで指定します 「=false」
      関連項目:
        定数フィールド値

    - #### PROTOCOL

          public static final java.lang.String PROTOCOL

      メールサーバーのデフォルトプロトコル 「="pop3"」
      関連項目:
        定数フィールド値

    - #### PORT

          public static final int PORT

      メールサーバーのデフォルトポート番号 「=-1」
      関連項目:
        定数フィールド値

    - #### MBOX

          public static final java.lang.String MBOX

      メールサーバーのデフォルトメールボックス 「="INBOX"」。
      関連項目:
        定数フィールド値

    - #### CHARSET

          public static final java.lang.String CHARSET

      メールのデフォルトエンコード 「="ISO-2022-JP"」 Windwos-31J , MS932 , UTF-8 , ISO-2022-JP を指定します。
      関連項目:
        定数フィールド値

  - ### コンストラクタの詳細

    - #### MailRX

          public MailRX()

  - ### メソッドの詳細

    - #### start

          public void start()
                     throws javax.mail.MessagingException,
                            javax.mail.NoSuchProviderException

      レシーバーを開始します。
      例外:
        `javax.mail.MessagingException` - レシーバー処理中に、なんらかのエラーが発生した場合。
        `javax.mail.NoSuchProviderException` - なんらかのエラーが発生した場合。
      変更履歴:

        6.3.8.0 (2015/09/11) SSL接続するかどうかを指定するパラメータを追加します。

    - #### setHost

          public void setHost(java.lang.String host)

      メールサーバーをセットします(必須)。
      パラメータ:
        `host` - メールサーバー
      例外:
        `java.lang.IllegalArgumentException` - 引数が null の場合。

    - #### setUser

          public void setUser(java.lang.String user)

      受信ユーザーをセットします(必須)。
      パラメータ:
        `user` - 受信ユーザー
      例外:
        `java.lang.IllegalArgumentException` - 引数が null の場合。

    - #### setPasswd

          public void setPasswd(java.lang.String passwd)

      パスワードをセットします(必須)。
      パラメータ:
        `passwd` - パスワード
      例外:
        `java.lang.IllegalArgumentException` - 引数が null の場合。

    - #### setProtocol

          public void setProtocol(java.lang.String prtcol)

      受信プロトコル(pop3/imap等)をセットします(初期値:pop3)。 protocolに、pop3s/imaps を指定した場合、 useSSL属性は、自動的に、ture に設定されます。
      パラメータ:
        `prtcol` - 受信プロトコル名
      例外:
        `java.lang.IllegalArgumentException` - 引数が null の場合。
      関連項目:
        `PROTOCOL`

    - #### setPort

          public void setPort(int port)

      ポート番号をセットします(初期値:-1)。 portが、-1 の場合は、protocol に応じたポートが使用されます。 pop3:110 , imap:143 , pop3s:995 , imaps:993
      パラメータ:
        `port` - ポート番号
      関連項目:
        `PORT`

    - #### useSSL

          public void useSSL(boolean isSSL)

      SSL接続するかどうかをセットします(初期値:false:しない)。 protocolに、pop3s/imaps を指定した場合、 useSSL属性は、自動的に、ture に設定されます。
      パラメータ:
        `isSSL` - SSL接続するかどうか[true:する/false:しない]を指定
      変更履歴:

        6.3.8.0 (2015/09/11) SSL接続するかどうかを指定するパラメータを追加します。

    - #### setMbox

          public void setMbox(java.lang.String mbox)

      受信メイルボックスをセットします(初期値:INBOX)。
      パラメータ:
        `mbox` - 受信メイルボックス名
      例外:
        `java.lang.IllegalArgumentException` - 引数が null の場合。
      関連項目:
        `MBOX`

    - #### setMailReceiveListener

          public void setMailReceiveListener(MailReceiveListener listener)

      メール受信毎に発生するイベントを伝えるリスナーをセットします。
      パラメータ:
        `listener` - MailReceiveリスナー

    - #### setDelete

          public void setDelete(boolean deleteFlag)

      メッセージをメールサーバーから削除するかどうかをセットします(初期値:false)。
      パラメータ:
        `deleteFlag` - 削除するかどうか[true:行う/false:行わない]
      関連項目:
        `DELETE_MESSAGE`

    - #### setCharset

          public void setCharset(java.lang.String charset)

      文字エンコーディングをセットします(初期値:ISO-2022-JP)。 文字エンコーディングには、Windwos-31J , MS932 , ISO-2022-JP を指定できます。 初期値は、SystemResource.properties ファイルの MAIL_DEFAULT_CHARSET 属性で 設定できます。
      パラメータ:
        `charset` - 文字エンコーディング
      例外:
        `java.lang.IllegalArgumentException` - 引数が null の場合。
      関連項目:
        `CHARSET`

    - #### setMaxRowCount

          public void setMaxRowCount(int maxCount)

      最大取り込み件数をセットします(初期値:100)(0:[無制限])。
      パラメータ:
        `maxCount` - 最大取り込み件数
      関連項目:
        `MAX_ROW_COUNT`
      変更履歴:

        5.5.8.5 (2012/11/27) 0を無制限として処理します。

    - #### addMatchTerm

          public void addMatchTerm(HybsEntry matchTerm)

      メール検索する場合のマッチ条件のキーと値の HybsEntry をセットします。 Subject,From,Body,それ以外は、Header 文字列をキーにします。
      パラメータ:
        `matchTerm` - HybsEntryオブジェクト

    - #### setDebug

          public void setDebug(boolean debug)

      デバッグ情報の表示を行うかどうかをセットします。
      パラメータ:
        `debug` - 有無[true/false]

    - #### main

          public static void main(java.lang.String[] args)
                           throws javax.mail.MessagingException

      コマンドから実行できる、テスト用の main メソッドです。 Usage: java org.opengion.fukurou.mail.MailTX MailRX host user passwd [saveDir] で、複数の添付ファイルを送付することができます。
      パラメータ:
        `args` - 引数配列
      例外:
        `javax.mail.MessagingException` - なんらかのエラーが発生した場合。
      変更履歴:

        6.3.9.1 (2015/11/27) A method/constructor shouldnt explicitly throw java.lang.Exception(PMD)。

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.