| 
 | ||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjp.terasoluna.fw.batch.controlbreak.ControlBreakChunker
public class ControlBreakChunker
コントロールブレイク単位に、チャンクを作成する CollectedDataHandler
 の実装クラス。
 
 
1つのジョブに対して、複数のコントロールブレイクを定義することができる。 またコントロールブレイクのうちの1つは、トランザクション境界と一致するように 定義する必要があり、そのようなコントロールブレイクを "トランザクショナルコントロールブレイク"と呼ぶ。
Collector から、handle()メソッドで収集したデータの処理を依頼
 された際に、transactionalBreakKey
controlBreakHandlerMap に設定されているコントロールブレイクの
 定義に基づいて、handle()メソッドに渡されたビジネスロジック入力データでコント
 ロールブレイクが発生しているかどうをチェックする。コントロールブレイクが発生
 していた場合には、ブレイクキーとそれぞれのブレイクキーの値を設定する。
作成したチャンクは、コンストラクタで渡された WorkQueue に設定
 する。
| フィールドの概要 | |
|---|---|
| private  boolean | chunkControlFlgチャンクコントロールブレイクの設定有無。 | 
| private  int | chunkSizeチャンクサイズ。 | 
| private  ControlBreakDef | controlBreakDefコントロールブレイクの定義情報。 | 
| private  ControlBreakChunk | currentChunk処理中のチャンク。 | 
| private  JobContext | jobContextジョブコンテクスト。 | 
| private  ControlBreakRowObject | newRow次の処理データ | 
| private  WorkQueue | queue作成したチャンクをキューイングする WorkQueueインスタンス。 | 
| コンストラクタの概要 | |
|---|---|
| ControlBreakChunker(WorkQueue queue,
                    JobContext jobContext,
                    ControlBreakDef controlBreakDef,
                    int chunkSize)コンストラクタ。 | |
| メソッドの概要 | |
|---|---|
|  void | close()終了処理を行う。 | 
|  void | handle(java.lang.Object row,
       int collected)コレクタで収集したデータを処理する。 | 
| クラス java.lang.Object から継承されたメソッド | 
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| フィールドの詳細 | 
|---|
private WorkQueue queue
WorkQueue インスタンス。
private final ControlBreakDef controlBreakDef
private ControlBreakChunk currentChunk
private JobContext jobContext
private int chunkSize
private boolean chunkControlFlg
private ControlBreakRowObject newRow
| コンストラクタの詳細 | 
|---|
public ControlBreakChunker(WorkQueue queue,
                           JobContext jobContext,
                           ControlBreakDef controlBreakDef,
                           int chunkSize)
queue - 作成したチャンクをキューイングする WorkQueue 
 インスタンスjobContext - ジョブコンテクストcontrolBreakDef - コントロールブレイクの定義情報chunkSize - チャンクサイズ| メソッドの詳細 | 
|---|
public void handle(java.lang.Object row,
                   int collected)
コントロールブレイクが発生しているかどうかを判定し、トランザクショナルコ ントロールブレイクが発生している場合には、前データまでをチャンクとしてキ ューイングする。
CollectedDataHandler 内の handlerow - コレクタで収集したデータcollected - row が、収集したデータで何番目のデータであるかを
            示すインデックスpublic void close()
処理中のチャンクをキューイングし、WorkQueue インスタンス
 のクローズ処理を行う。
CollectedDataHandler 内の close| 
 | ||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||