* Basic partitioning support per JSR-352
* Parameter injection at the partition level
* PartitionCollector/PartitionAnalyzer functionality
* PartitionReducer functionality
* Move pre-context init of JobParameters support out of ThreadLocalClassloaderBeanPostProcessor
* General cleanup in BatchPropertyBeanPostProcessor, move artifact type checking into classifer class, minor naming updates
* Refactor BatchPropertyContext to use different data structures for different types of properties and provide named accessors
* Remove path based artifact scoping support
* Make sure expressions are parsed when resolving properties directly from XML
* Update property tests
* Move registration of jobProperties bean into the JsrNamespaceUtils
* On restart if a previous JobExecution has a status of ABANDONED, throw a JobRestartException
* Ensure any previous JobParameters are merged with new parameters when creating a new job execution on restart
* Added a BeanFactoryPostProcessor to add bean definitions for batch artifacts referenced only by class name
* Updated the BatchPropertyBeanPostProcessor to address scope targets
* Moved the registration of the various post processors to a new JsrNamespaceUtils (similar to how they are handled with the core namespace)
* Added the JsrChunkProvider implementation - a no-op ChunkProvider implementation to be used by the ChunkOrientedTasklet
* Added the JsrChunkProcessor - A simple implementation of a ChunkProcessor that handles the JSR-352 chunking pattern (read and process loop with a single write per chunk).
* Added the JsrFaultTolerantChunkProcessor - A ChunkProcessor that implements chunking the way JSR-352 requires as well as adding skip/retry functionality.
* Added builders to support the above functionality.
* Implemented the interfaces per the JSR-352 spec
* Added a ne StepContextFactoryBean used to add the StepContext (one per step) into the step scope to be available for injection by batch artifacts.
* Updated the StepParser to utilize the new StepContextFactoryBean.
* Spring Batch's native JobInstance now implements the JSR's JobInstance interface.
* SB's JobExecution can be wrapped by a JSR's JobExecution.
* SB's StepExecution can be wrappedy by a JSR's StepExecution.
* A new JsrFlowJob and JsrFlowExecutor have been introduced to correctly handle the promotion of ExitStatuses during step execution.
* The JsrJobOperator has been fixed to correctly retrieve StepExecutions (previously was not returning fully hydrated verions).
* Added the StoppableTasklet interface (an extension of the Tasklet interface).
* Updated JobOperator#stop(long executionId) to call StoppableTasklet#stop() on any currently running tasklets (local executions only).
* Updated the SystemCommandTasklet to implement StoppableTasklet
* Added JsrJobOperator
* Added a ParametersConverter (and JSR-352 implementation) that converts parameters as specified by the JSR to JobParameters and back
* Added a method to the JobRepository to allow the direct creation of a JobInstance (since the JSR requires a new instance for each call to JobOperator#start
* Added a base context to be bootstrapped when the JobOperator is first referenced. It provides things like a JobRepository, etc.