パッケージ org.opengion.plugin.cloud

# クラス MailManager_DB_SendGridAPI

java.lang.Object
org.opengion.hayabusa.mail.DefaultMailManager
org.opengion.hayabusa.mail.MailManager_DB
org.opengion.plugin.cloud.MailManager_DB_SendGridAPI

public class MailManager_DB_SendGridAPI extends MailManager_DB
パッチによるメール送信の実装クラスです。 送信デーモンはパラメータテーブル(GE30)を監視して、新規のデータが登録されたら、 そのデータをパラメータとしてメール合成処理メソッドに渡して合成を行って送信します。 最後に、処理結果を受取って、パラメータテーブルの状況フラグを送信済/送信エラーに更新します。 エラーが発生した場合、エラーテーブルにエラーメッセージを書き込みます。 hayabusa.mailの標準クラスを継承して作成しています。 基本的な動作は同じですが、メール送信にSMTPではなくsendGridのAPIを利用します。 MAIL_SENDGRID_APIKEYをシステムリソースとして登録する必要があります。 一時的に利用できなくなる事を想定して、 一定時間の間（ハードコーディングで10分としている）はエラーが発生しても再送を試みるようにします。 このクラスをコンパイルするためにはsendgrid-java-4.1.1.jar,java-http-client-4.1.0.jarが必要です。 実行にはhamcrest-core-1.1.jar,httpclient-4.5.2.jar,httpcore-4.4.4.jar,mockito-core-1.10.19.jar,objenesis-2.1.jar ,jackson-annotations-2.5.3.jar,jackson-core-2.5.3.jar,jackson-databind-2.5.3.jarが必要です。

変更履歴:
  5.9.26.0 (2017/11/02) 新規作成
機能分類
  メールモジュール
導入されたバージョン:
  JDK1.7

- ## フィールドの概要

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

  `errMsgList, GE30_UNIQ, GE36_DYSET, GE36_ERRMSG, GE36_PARA_KEY, GE36_PGUPD, GE36_SYSTEM_ID, GE36_USRSET, INS_GE36, SEL_GE30, SNED_NG, SNED_OK`

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

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

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

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

- ## メソッドの概要

  修飾子とタイプ
  メソッド
  説明
  `void`
  `sendDBMail(String systemId)`
  バッチより呼出のメインメソッドです。

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

  `commitParamTable, makeParamMap`

  ### クラスから継承されたメソッド 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_DB_SendGridAPI

    public MailManager_DB_SendGridAPI()
    デフォルトコンストラクター
    変更履歴:
      6.9.7.0 (2018/05/14) PMD Each class should declare at least one constructor

- ## メソッドの詳細

  - ### sendDBMail

    public void sendDBMail(String systemId)
    バッチより呼出のメインメソッドです。 パラメータテーブル(GE30)を監視します。 新規のデータが登録されたら、メール文を合成して送信を行います。 エラーが発生した場合、エラーテーブルにエラーメッセージを書き込みます。
    オーバーライド:
      `sendDBMail` クラス内 `MailManager_DB`
    パラメータ:
      `systemId` - システムID
    変更履歴:
      6.8.5.0 (2018/01/09) PMD Variables that are final and static should be all capitals。selGE30DYSET → SQL_GE30, 7.2.9.4 (2020/11/20) PMD:Avoid if (x != y) ..; else ..;