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

## クラス MailManager_DIRECT

- java.lang.Object
- - org.opengion.hayabusa.mail.DefaultMailManager
  - - org.opengion.hayabusa.mail.MailManager_DIRECT

-     public class MailManager_DIRECT
      extends DefaultMailManager

  タグ mailSender2 による送信を行う際に利用するメール送信マネージャの処理クラスです。 タグ mailSender2 よりパラメータマップを受取って、メール文の合成、送信を行います。 バッチ送信する場合と共通する部分はスーパークラス DefaultMailManager に実装していますが、 タグ独自ロジックの部分は本クラスより実装を行っています。 独自ロジックはセッションから取得した宛先テーブルにより宛先マップを作成、セッションから取得したメール 文により送信を行うロジックとあります。
  機能分類
    メールモジュール
  バージョン
    4.0
  作成者
    Sen.Li
  導入されたバージョン:
    JDK1.6

- - ### フィールドの概要

    - ### クラスから継承されたフィールド org.opengion.hayabusa.mail.DefaultMailManager

      `APP_INFO, DBID, FGJ_ACNT_ERR, FGJ_ADDR_ERR, FGJ_SEND_OVER, FGJ_SEND_WAIT`

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

    コンストラクタ
    コンストラクタ | 説明
    --- | ---
    `MailManager_DIRECT()` | デフォルトコンストラクター

  - ### メソッドの概要

    すべてのメソッド インスタンス・メソッド concreteメソッド
    修飾子とタイプ | メソッド | 説明
    --- | --- | ---
    `void` | `create​(java.util.concurrent.ConcurrentMap<java.lang.String,​java.lang.String> params, DBTableModel table)` | action="SEND"の時にこのメソッドが呼ばれます。
    `DBTableModel` | `makeDstTable()` | 画面に各宛先の送信状況を表示するために、送信の宛先マップに基づいてテーブルモデルを作成します。
    `void` | `setResourceManager​(ResourceManager res)` | リソースマネージャーをセットします。
    `protected void` | `setTableDBColumn​(DBTableModel table, java.lang.String... names)` | DBColumn オブジェクトをテーブルモデルに設定します。

    - ### クラスから継承されたメソッド org.opengion.hayabusa.mail.DefaultMailManager

      `commitMailDB, create, getContent, getErrList, getFromAddr, getMailDstMap, getTitle, send, setAttachFiles, setAuthPass, setAuthType, setAuthUser, setContent, setDebug, setFromAddr, setHost, setInitParams, setMailDstMap, setPort, setTitle, setUseTLS, trim`

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

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

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

    - #### MailManager_DIRECT

          public MailManager_DIRECT()

      デフォルトコンストラクター
      変更履歴:
        6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor.

  - ### メソッドの詳細

    - #### create

          public void create​(java.util.concurrent.ConcurrentMap<java.lang.String,​java.lang.String> params,
                             DBTableModel table)

      action="SEND"の時にこのメソッドが呼ばれます。 セッションから取得した宛先テーブルにより宛先マップを作成します。 まだ、action="CHECK"の時に、確認画面から添付ファイルを追加するケースがあるため、 パラメータを再読込を行います。そして、action="SEND"の時に添付ファイルを送信します。
      パラメータ:
        `params` - パラメータのマップ
        `table` - DBTableModelオブジェクト
      変更履歴:
        6.0.3.0 (2014/11/13) Ver6用キーワード変更, 6.4.3.3 (2016/03/04) ConcurrentHashMap を受け取ることを明確にするため、I/FをConcurrentMapに変更します。

    - #### makeDstTable

          public DBTableModel makeDstTable()

      画面に各宛先の送信状況を表示するために、送信の宛先マップに基づいてテーブルモデルを作成します。 作成されたテーブルモデルを指定されるスコープに入れます。
      戻り値:
        宛先マップに基づいたテーブルモデル
      変更履歴:
        5.1.9.0 (2010/08/01) keySet() → entrySet() に変更, 6.4.3.3 (2016/03/04) ConcurrentHashMap を受け取ることを明確にするため、I/FをConcurrentMapに変更します。, 6.4.3.4 (2016/03/11) forループを、forEach メソッドに置き換えます。

    - #### setResourceManager

          public void setResourceManager​(ResourceManager res)

      リソースマネージャーをセットします。 これは、言語(ロケール)に応じた DBColumn をあらかじめ設定しておく為に 必要です。 リソースマネージャーが設定されていない、または、所定のキーの DBColumn が リソースに存在しない場合は、内部で DBColumn オブジェクトを作成します。
      パラメータ:
        `res` - リソースマネージャー

    - #### setTableDBColumn

          protected void setTableDBColumn​(DBTableModel table,
                                          java.lang.String... names)

      DBColumn オブジェクトをテーブルモデルに設定します。
      パラメータ:
        `table` - DBTableModelオブジェクト
        `names` - カラム名配列(可変長引数)
      変更履歴:
        6.3.9.0 (2015/11/06) コンストラクタで初期化されていないフィールドを null チェックなしで利用している(findbugs)