public class StepSynchronizationManager
extends java.lang.Object
Step
の実装でのみ使用されます。N.B. プールからのワーカースレッドを含む、ステップ実行に関与する可能性のあるすべてのスレッドで StepContext
が使用可能であることを確認するのは、すべての Step
実装の責任です。コンストラクターと説明 |
---|
StepSynchronizationManager() |
修飾子と型 | メソッドと説明 |
---|---|
static void | close() 現在のコンテキストの登録を解除する方法 - getContext() が常に正しい値を返すように、一致する register(StepExecution) と組み合わせて使用する必要があります。 |
static StepContext | getContext() 現在のコンテキストの Getter(存在する場合)、それ以外の場合は null を返します。 |
static StepContext | register(StepExecution stepExecution) コンテキストを現在のスレッドに登録します。常に一致する close() 呼び出しを finally ブロックに入れて、囲んでいるブロックで正しいコンテキストが使用できるようにします。 |
static StepContext | register(StepExecution stepExecution, BatchPropertyContext propertyContext) コンテキストを現在のスレッドに登録します。常に一致する close() 呼び出しを finally ブロックに入れて、囲んでいるブロックで正しいコンテキストが使用できるようにします。 |
static void | release() 便利な「ディープ」クローズ操作。 |
@Nullable public static StepContext getContext()
null
を返します。StepContext
または null
がない場合(このスレッドに登録されていない場合)。public static StepContext register(StepExecution stepExecution)
close()
呼び出しを finally ブロックに入れて、囲んでいるブロックで正しいコンテキストが使用できるようにします。stepExecution
- 登録するステップコンテキスト StepContext
、または同じ StepExecution
がある場合は現在の StepContext
public static StepContext register(StepExecution stepExecution, BatchPropertyContext propertyContext)
close()
呼び出しを finally ブロックに入れて、囲んでいるブロックで正しいコンテキストが使用できるようにします。stepExecution
- 登録するステップコンテキスト propertyContext
- StepSynchronizationManager によって使用される BatchPropertyContext
のインスタンス。StepContext
、または同じ StepExecution
がある場合は現在の StepContext
public static void close()
getContext()
が常に正しい値を返すように、一致する register(StepExecution)
と組み合わせて使用する必要があります。StepContext.close()
を呼び出さない - コンテキストへの参照があり(登録済み)、ステップが実際にいつ終了したかを知っているのは呼び出し元だけであるため、呼び出し元に任されています。public static void release()
close()
の代わりにこれを呼び出します。StepContext.close()
にデリゲートしてから、最終ブロックで close()
も呼び出されるようにします。