|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectjp.terasoluna.fw.batch.controlbreak.ControlBreakChunker
public class ControlBreakChunker
コントロールブレイク単位に、チャンクを作成する CollectedDataHandler
の実装クラス。
1つのジョブに対して、複数のコントロールブレイクを定義することができる。 またコントロールブレイクのうちの1つは、トランザクション境界と一致するように 定義する必要があり、そのようなコントロールブレイクを "トランザクショナルコントロールブレイク"と呼ぶ。
Collector
から、handle()メソッドで収集したデータの処理を依頼
された際に、transactinalBreakKey
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
内の handle
row
- コレクタで収集したデータcollected
- row
が、収集したデータで何番目のデータであるかを
示すインデックスpublic void close()
処理中のチャンクをキューイングし、WorkQueue
インスタンス
のクローズ処理を行う。
CollectedDataHandler
内の close
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |