Class JobScope
java.lang.Object
org.springframework.batch.core.scope.BatchScopeSupport
org.springframework.batch.core.scope.JobScope
- All Implemented Interfaces:
org.springframework.beans.factory.config.BeanFactoryPostProcessor
,org.springframework.beans.factory.config.Scope
,org.springframework.core.Ordered
Scope for job context. Objects in this scope use the Spring container as an
object factory, so there is only one instance of such a bean per executing
job. All objects in this scope are <aop:scoped-proxy/> (no need to
decorate the bean definitions).
In addition, support is provided for late binding of references accessible from the
In addition, support is provided for late binding of references accessible from the
JobContext
using #{..} placeholders. Using this feature,
bean properties can be pulled from the job or job execution context and the
job parameters. E.g.
<bean id="..." class="..." scope="job"> <property name="name" value="#{jobParameters[input]}" /> </bean> <bean id="..." class="..." scope="job"> <property name="name" value="#{jobExecutionContext['input.stem']}.txt" /> </bean>The
JobContext
is referenced using standard bean property paths (as
per BeanWrapper
). The examples above all show the use of the Map
accessors provided as a convenience for job attributes.- Since:
- 3.0
- Author:
- Dave Syer, Jimmy Praet (create JobScope based on
StepScope
), Michael Minella
-
Nested Class Summary
Nested classes/interfaces inherited from class org.springframework.batch.core.scope.BatchScopeSupport
BatchScopeSupport.Scopifier
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
Context key for clients to use for conversation identifier.Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
registerDestructionCallback
(String name, Runnable callback) This will be used to resolve expressions in job-scoped beans.Methods inherited from class org.springframework.batch.core.scope.BatchScopeSupport
createScopedProxy, getName, getOrder, postProcessBeanFactory, setAutoProxy, setName, setOrder, setProxyTargetClass
-
Field Details
-
ID_KEY
Context key for clients to use for conversation identifier.- See Also:
-
-
Constructor Details
-
JobScope
public JobScope()
-
-
Method Details
-
resolveContextualObject
This will be used to resolve expressions in job-scoped beans. -
get
- See Also:
-
Scope.get(String, ObjectFactory)
-
getConversationId
- See Also:
-
Scope.getConversationId()
-
registerDestructionCallback
- See Also:
-
Scope.registerDestructionCallback(String, Runnable)
-
remove
- See Also:
-
Scope.remove(String)
-
getTargetNamePrefix
- Specified by:
getTargetNamePrefix
in classBatchScopeSupport
-