public class StepSynchronizationManager extends Object
Step
. N.B.
it is the responsibility of every Step
implementation to ensure that
a StepContext
is available on every thread that might be involved in
a step execution, including worker threads from a pool.Constructor and Description |
---|
StepSynchronizationManager() |
Modifier and Type | Method and Description |
---|---|
static void |
close()
Method for de-registering the current context - should always and only be
used by in conjunction with a matching
register(StepExecution)
to ensure that getContext() always returns the correct value. |
static StepContext |
getContext()
Getter for the current context if there is one, otherwise returns null.
|
static StepContext |
register(StepExecution stepExecution)
Register a context with the current thread - always put a matching
close() call in a finally block to ensure that the correct
context is available in the enclosing block. |
static void |
release()
A convenient "deep" close operation.
|
public static StepContext getContext()
StepContext
or null if there is none (if one
has not been registered for this thread).public static StepContext register(StepExecution stepExecution)
close()
call in a finally block to ensure that the correct
context is available in the enclosing block.stepExecution
- the step context to registerStepContext
or the current one if it has the same
StepExecution
public static void close()
register(StepExecution)
to ensure that getContext()
always returns the correct value.
Does not call StepContext.close()
- that is left up to the caller
because he has a reference to the context (having registered it) and only
he has knowledge of when the step actually ended.public static void release()
close()
if the step execution for the current context is ending.
Delegates to StepContext.close()
and then ensures that
close()
is also called in a finally block.Copyright © 2014 Pivotal. All rights reserved.