パッケージ org.opengion.fukurou.mail

# クラス MailRX

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

public class MailRX extends Object
MailRX は、POP3/IMAPプロトコルによるメール受信プログラムです。 メールへの接続条件(host,user,passwd など)と、選択条件(matchTermなど)を指定し、 MailReceiveListener をセットして、start() メソッドを呼びます。 実際のメール処理は、MailReceiveListener を介して、１メールずつ処理します。 添付ファイルを処理する場合は、MailAttachFiles クラスを使用します。 host メールサーバー(必須) user メールを取得するログインユーザー(必須) passwd メールを取得するログインパスワード(必須) protocol 受信サーバーのプロトコル[imap/pop3]を指定(初期値:) port 受信サーバーのポートを指定(初期値:) useSSL SSL接続するかどうか[true:する/false:しない]を指定(初期値:false:しない) mbox 受信サーバーのメールボックスを指定(初期値:) maxRowCount 受信メールの最大取り込み件数(初期値:)(0:[無制限]) charset メールのデフォルトエンコード(初期値:) matchTerm 受信メールを選択する条件のMINEntryオブジェクト delete 検索後、メールをサーバーから削除するかどうかを、true/falseで指定(初期値:)。 ※ 6.3.8.0 (2015/09/11) useSSL属性は、protocolに、pop3s/imaps を指定した場合、 自動的に、ture に設定するようにしています。

導入されたバージョン:
  JDK5.0,

- ## フィールドの概要

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

- ## コンストラクタの概要

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

- ## メソッドの概要

  修飾子とタイプ
  メソッド
  説明
  `void`
  `addMatchTerm(HybsEntry matchTerm)`
  メール検索する場合のマッチ条件のキーと値の HybsEntry をセットします。
  `static void`
  `main(String[] args)`
  コマンドから実行できる、テスト用の main メソッドです。
  `void`
  `setCharset(String charset)`
  文字エンコーディングをセットします(初期値:)。
  `void`
  `setDebug(boolean debug)`
  デバッグ情報の表示を行うかどうかをセットします。
  `void`
  `setDelete(boolean deleteFlag)`
  メッセージをメールサーバーから削除するかどうかをセットします(初期値:)。
  `void`
  `setHost(String host)`
  メールサーバーをセットします(必須)。
  `void`
  `setMailReceiveListener(MailReceiveListener listener)`
  メール受信毎に発生するイベントを伝えるリスナーをセットします。
  `void`
  `setMaxRowCount(int maxCount)`
  最大取り込み件数をセットします(初期値:)(0:[無制限])。
  `void`
  `setMbox(String mbox)`
  受信メイルボックスをセットします(初期値:)。
  `void`
  `setPasswd(String passwd)`
  パスワードをセットします(必須)。
  `void`
  `setPort(int port)`
  ポート番号をセットします(初期値:)。
  `void`
  `setProtocol(String prtcol)`
  受信プロトコル(pop3/imap等)をセットします(初期値:)。
  `void`
  `setUser(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 String PROTOCOL
    メールサーバーのデフォルトプロトコル 「="pop3"」
    関連項目:
      - 定数フィールド値

  - ### PORT

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

  - ### MBOX

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

  - ### CHARSET

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

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

  - ### MailRX

    public MailRX()

- ## メソッドの詳細

  - ### start

    public void start() throws jakarta.mail.MessagingException, jakarta.mail.NoSuchProviderException
    レシーバーを開始します。
    例外:
      `jakarta.mail.MessagingException` - レシーバー処理中に、なんらかのエラーが発生した場合。
      `jakarta.mail.NoSuchProviderException` - なんらかのエラーが発生した場合。
    変更履歴:
      6.3.8.0 (2015/09/11) SSL接続するかどうかを指定するパラメータを追加します。

  - ### setHost

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

  - ### setUser

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

  - ### setPasswd

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

  - ### setProtocol

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

  - ### setPort

    public void setPort(int port)
    ポート番号をセットします(初期値:)。 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(String mbox)
    受信メイルボックスをセットします(初期値:)。
    パラメータ:
      `mbox` - 受信メイルボックス名
    例外:
      `IllegalArgumentException` - 引数が null の場合。
    関連項目:
      - `MBOX`

  - ### setMailReceiveListener

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

  - ### setDelete

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

  - ### setCharset

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

  - ### setMaxRowCount

    public void setMaxRowCount(int maxCount)
    最大取り込み件数をセットします(初期値:)(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(String[] args) throws jakarta.mail.MessagingException
    コマンドから実行できる、テスト用の main メソッドです。 Usage: java org.opengion.fukurou.mail.MailTX MailRX host user passwd [saveDir] で、複数の添付ファイルを送付することができます。
    パラメータ:
      `args` - 引数配列
    例外:
      `jakarta.mail.MessagingException` - なんらかのエラーが発生した場合。
    変更履歴:
      6.3.9.1 (2015/11/27) A method/constructor shouldnt explicitly throw java.lang.Exception(PMD)。