クラス JobSynchronizationManager
java.lang.ObjectSE
org.springframework.batch.core.scope.context.JobSynchronizationManager
ジョブスコープコンテキストの管理でフレームワークを使用するための主要コンビニエンスクラス。通常、
Job
の実装でのみ使用されます。N.B. プールからのワーカースレッドを含む、ジョブの実行に関与する可能性のあるすべてのスレッドで JobContext
が使用可能であることを確認するのは、すべての Job
実装の責任です。- 導入:
- 3.0
- 作成者:
- Dave Syer, Jimmy Praet, Mahmoud Ben Hassine
コンストラクターのサマリー
メソッドのサマリー
修飾子と型メソッド説明static void
close()
現在のコンテキストの登録を解除する方法 -getContext()
が常に正しい値を返すように、一致するregister(JobExecution)
と組み合わせて使用する必要があります。static JobContext
現在のコンテキストの Getter(存在する場合)、それ以外の場合はnull
を返します。static JobContext
register
(JobExecution JobExecution) コンテキストを現在のスレッドに登録します。常に一致するclose()
呼び出しを finally ブロックに入れて、囲んでいるブロックで正しいコンテキストが使用できるようにします。static void
release()
便利な「ディープ」クローズ操作。
コンストラクターの詳細
JobSynchronizationManager
public JobSynchronizationManager()
メソッドの詳細
getContext
現在のコンテキストの Getter(存在する場合)、それ以外の場合はnull
を返します。- 戻り値:
- 現在の
JobContext
またはnull
がない場合(このスレッドに登録されていない場合)。
register
コンテキストを現在のスレッドに登録します。常に一致するclose()
呼び出しを finally ブロックに入れて、囲んでいるブロックで正しいコンテキストが使用できるようにします。- パラメーター:
JobExecution
- 登録するステップコンテキスト- 戻り値:
- 新しい
JobContext
、または同じJobExecution
がある場合は現在のJobContext
close
public static void close()現在のコンテキストの登録を解除する方法 -getContext()
が常に正しい値を返すように、一致するregister(JobExecution)
と組み合わせて使用する必要があります。JobContext.close()
を呼び出さない - コンテキストへの参照があり(登録済み)、ステップが実際にいつ終了したかを知っているのは呼び出し元だけであるため、呼び出し元に任されています。release
public static void release()便利な「ディープ」クローズ操作。現在のコンテキストのステップ実行が終了している場合は、close()
の代わりにこれを呼び出します。JobContext.close()
にデリゲートしてから、最終ブロックでclose()
も呼び出されるようにします。