| 
 | ||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjp.terasoluna.fw.batch.restart.JobRestartTableHandler
public class JobRestartTableHandler
リスタート情報取得・更新用クラス。
jobRestart-sqlMap.xmlに定義された以下のSQL文を実行する。
         <!-- リスタート情報更新(更新) -->
         <update id="UPDATE_JOB_RESTART_POINT" parameterClass="jobRestartInfo">
             UPDATE RESTART_CONTROL SET 
                 RESTART_POINT = #restartPoint# , 
                 JOB_CONTEXT   = #jobContext#, 
                 STATE         = #state#, 
                 UPDATE_TIME   = current_timestamp 
             WHERE REQUEST_NO  = #requestNo# 
             AND  JOB_ID       = #jobId#  
             AND  PARTITION_NO = #partitionNo#
         </update>
     
         <!-- リスタート情報更新(新規追加) -->
         <insert id="INSERT_JOB_RESTART_POINT" parameterClass="jobRestartInfo">
             INSERT INTO RESTART_CONTROL 
                   (REQUEST_NO   , JOB_ID   , PARTITION_NO   , PARTITION_KEY   , RESTART_POINT   , JOB_CONTEXT   , STATE , UPDATE_TIME       , REGISTER_TIME) 
             VALUES(#requestNo# , #jobId# , #partitionNo# , #partitionKey# , #restartPoint# , #jobContext# , #state#   , current_timestamp , current_timestamp) 
         </insert>
     
      ※リスタート情報クリア用SQLは以下の二つから選択することが出来る。
      ※デフォルトSQLは対象データ削除である。
         <!-- リスタート情報クリア(処理完了後対象データの状態更新) -->
         <update id="UPDATE_JOB_RESTART_CLEAR" parameterClass="jobRestartInfo">
             UPDATE RESTART_CONTROL SET 
                 STATE       = #state# , 
                 UPDATE_TIME = current_timestamp 
             WHERE REQUEST_NO   = #requestNo# 
             AND   JOB_ID       = #jobId#  
             AND   PARTITION_NO = #partitionNo#
         </update>
         <!-- リスタート情報クリア(処理完了後対象データ削除) -->
         <delete id="UPDATE_JOB_RESTART_CLEAR" parameterClass="jobRestartInfo">
             DELETE FROM RESTART_CONTROL 
             WHERE REQUEST_NO   = #requestNo# 
             AND   JOB_ID       = #jobId#  
             AND   PARTITION_NO = #partitionNo#
         </delete>
     
         <!-- リスタート依頼情報取得 -->
         <select id="SELECT_JOB_RESTART_INFO" parameterClass="jobRestartInfo" resultClass="jobRestartInfo">
             SELECT REQUEST_NO AS requestNo, 
                    JOB_ID as jobId, 
                    PARTITION_KEY as partitionKey, 
                    RESTART_POINT as restartPoint, 
                    JOB_CONTEXT as jobContext, 
                    STATE as state, 
                    UPDATE_TIME,
                    REGISTER_TIME as registerTime 
             FROM RESTART_CONTROL 
             WHERE REQUEST_NO    = #requestNo# 
             AND   JOB_ID        = #jobId#  
             AND   PARTITION_NO  = #partitionNo#
             AND   STATE         = #state#
         </select>
 
| フィールドの概要 | |
|---|---|
| private static java.lang.String | INSERT_JOB_RESTART_POINTリスタート情報更新(新規追加)用SQLキー。 | 
| private static java.lang.String | JOB_END_STATEリスタート処理状況:処理完了。 | 
| private static java.lang.String | JOB_START_STATEリスタート処理状況:起動中。 | 
| private  JobRestartInfoFactory | jobRestartInfoFactoryジョブリスタート情報格納用Object。 | 
| private  QueryDAO | queryDAOSELECT用DAO。 | 
| private static java.lang.String | UPDATE_JOB_RESTART_POINTリスタート情報更新(更新)用SQLキー。 | 
| private  UpdateDAO | updateDAOUPDATE用DAO。 | 
| コンストラクタの概要 | |
|---|---|
| JobRestartTableHandler() | |
| メソッドの概要 | |
|---|---|
| protected  JobContext | changeByteToJobContext(byte[] obj)byte配列をジョブコンテキストオブジェクトに変換する。 | 
| protected  byte[] | changeJobContextToByte(JobContext jobContext)ジョブコンテキストオブジェクトを byte配列に変換する。 | 
|  JobContext | getRestartJobContext(JobContext jobContext,
                     JobStatus jobStatus)ジョブコンテキスト復元処理。 | 
| protected  void | initJobRestartInfo(JobRestartInfo jobRestartInfo,
                   JobContext jobContext,
                   JobStatus jobStatus)ジョブ処理状況、ジョブコンテキストのデータを更新対象のリスタート情報へ 設定する。 | 
| private  int | insertRestartPoint(JobRestartInfo jobRestartInfo)リスタート情報の「起動状況」更新用メソッド。 | 
|  void | registerRestartPoint(JobContext jobContext,
                     JobStatus jobStatus)リスタートポイント更新処理。 | 
|  int | restartPointClear(JobStatus jobStatus,
                  java.lang.String sqlkey)リスタート情報のクリア処理用メソッド(レコード更新)。 | 
|  void | setJobRestartInfoFactory(JobRestartInfoFactory jobRestartInfoFactory)ジョブリスタート情報格納用実装クラスのファクトリを設定する。 | 
|  void | setQueryDAO(QueryDAO queryDAO)SELECT用DAOのセッター。 | 
|  void | setUpdateDAO(UpdateDAO updateDAO)更新用DAOのセッター。 | 
| private  int | updateRestartPoint(JobRestartInfo jobRestartInfo)リスタート情報の「起動状況」更新用メソッド。 | 
| クラス java.lang.Object から継承されたメソッド | 
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| フィールドの詳細 | 
|---|
private static final java.lang.String JOB_END_STATE
private static final java.lang.String JOB_START_STATE
private static final java.lang.String INSERT_JOB_RESTART_POINT
private static final java.lang.String UPDATE_JOB_RESTART_POINT
private JobRestartInfoFactory jobRestartInfoFactory
private QueryDAO queryDAO
private UpdateDAO updateDAO
| コンストラクタの詳細 | 
|---|
public JobRestartTableHandler()
| メソッドの詳細 | 
|---|
public JobContext getRestartJobContext(JobContext jobContext,
                                       JobStatus jobStatus)
jobContext - ジョブコンテキストjobStatus - ジョブステータス
public void registerRestartPoint(JobContext jobContext,
                                 JobStatus jobStatus)
jobStatus - ジョブの状況jobContext - ジョブコンテキストpublic void setJobRestartInfoFactory(JobRestartInfoFactory jobRestartInfoFactory)
jobRestartInfoFactory - ジョブリスタート情報格納用クラスのファクトリpublic void setQueryDAO(QueryDAO queryDAO)
queryDAO - SELECT用DAOpublic void setUpdateDAO(UpdateDAO updateDAO)
updateDAO - 更新用DAO
public int restartPointClear(JobStatus jobStatus,
                             java.lang.String sqlkey)
jobStatus - ジョブ処理状況sqlkey - リスタート情報のクリア用SQLキー
protected void initJobRestartInfo(JobRestartInfo jobRestartInfo,
                                  JobContext jobContext,
                                  JobStatus jobStatus)
jobRestartInfo - 更新対象のリスタート情報jobContext - ジョブコンテキストjobStatus - ジョブ処理状況protected byte[] changeJobContextToByte(JobContext jobContext)
byte配列に変換する。
jobContext - ジョブコンテキスト
protected JobContext changeByteToJobContext(byte[] obj)
byte配列をジョブコンテキストオブジェクトに変換する。
obj - 変換対象のObject
private int insertRestartPoint(JobRestartInfo jobRestartInfo)
jobRestartInfo - 更新対象のリスタート情報
private int updateRestartPoint(JobRestartInfo jobRestartInfo)
jobRestartInfo - 更新対象のリスタート情報
| 
 | ||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||