* Refactored iBatis based readers and writers to not utilize
SqlMapClientTemplate.
* Depricated all iBatis based readers and writers in favor of MyBatis's
native Spring support.
* Updated XStream support to 1.4.4 and Jettison to 1.2 to be in
alignment with Spring 4.
* Added the PooledEmbeddedDataSource to address the issue outlined in
SPR-11372.
evaluation and then evaluating each state. This update addresses the
flagging of the point the current job restarted from so that the
evaluation of restart can occur in subsequent states.
* Added a JSR-352 specific StepHandler implementation
(DefaultStepHandler)
* Added logic to DefaultFlow to correctly lookup where to restart a job
that was previously stopped.
* StepState now implements StepLocator so that the step it wraps can return slave steps in the case of a partitioned step
* FlowJob and SimpleJob now look for a StepLocator as they look for steps
* The JSR-352 version of PartitionStep implements StepLocator
* Updated parsers to address the allowStartIfComplete flag on
partitioned steps
* Updated factory beans to address the above flag and injecting a
JobRepository reference where needed
* Updated how state is restored for a JSR-352 partitioned step
* Fixed the synchronization around the queue used for a
PartitionCollecotr and PartitionAnalyzer works
* Move addition of state transition for elements with a next transition to be last
* Move restartable check into run method on restart to avoid NPE in factory bean due to null JobExecution.
* Add tests
Transition shuffle fixes TCK test testInvokeJobWithUncaughtExceptionFailAndRestart, NPE fix contributes to other tests but does not fix completely.
state transition comparator in FlowParser, ensure custom exit code is set at
job level.
Fixes TCK test testDeciderExitStatusIsSetOnJobContext, contributes but does
not fix decider transition tests that include restart.
* Updated Job and Step scopes to use common class introduced by jpraet
* Updated Job and Step Synchronization Managers to use common class
introduced by jpraet
* Updated JobScope related code to not be concerned with Spring 2.5
(which is what batch was on when the PR was opened).
occur during XML pre-processing. JSR-352 allows for property replacement and expressions to be present
on any element and the preprocessing provides the ability to load a well formed XML document into the
context with the intended values already present.
related artifacts
* Added BeanFactoryPostProcessor
* Fixed StepContext creation (now creates one per thread)
* Fixed StepContext exit status processing (now keeps track of being set
manualy or not
* Created new Flow implementation to handle JSR-352 state transitions
* Updated flow parsing to not default to completed if no other
transitions are provided
by default.
* Refactored the JsrJobOperator to use SimpleAsyncTaskExecutor by
default
* Introduced a JobContextFactory to provide a JobContext per thread.
* Updated stop logic to correctly handle stopping jobs running on
another thread.
* Added a call for a completionPolicy when creating FaultTolerantStep
* Added an assertion for the chunkCompletionPolicy in the unit test.
JIRA: https://jira.springsource.org/browse/BATCH-2096
Tests blocked by TCK issues: testOneArtifactIsJobAndStepListener, testStartLimitVariation1
* Expose job level properties to step artifacts and update tests
* Make JobParameterResolvingBeanFactoryPostProcessor HIGHEST_PRECEDENCE to avoid other BFPP's creating bean defs first
* General cleanup and renaming
* Register a bean definition for the JobContext prior to refreshing the beanfactory so it becomes injectable. Set properties and the jobExecution on the JobContext bean after they are initalized.
* Only step scope non-step scoped listeners
* Parse flow elements and transitions