org.springframework.batch.core.jsr.step.builder

## Class JsrFaultTolerantStepBuilder<I,O>

- java.lang.Object
- - org.springframework.batch.core.step.builder.StepBuilderHelper<AbstractTaskletStepBuilder<B>>
  - - org.springframework.batch.core.step.builder.AbstractTaskletStepBuilder<SimpleStepBuilder<I,O>>
    - - org.springframework.batch.core.step.builder.SimpleStepBuilder<I,O>
      - - org.springframework.batch.core.step.builder.FaultTolerantStepBuilder<I,O>
        - - org.springframework.batch.core.jsr.step.builder.JsrFaultTolerantStepBuilder<I,O>

- Type Parameters:
    `I` - The input type for the step
    `O` - The output type for the step

      public class JsrFaultTolerantStepBuilder<I,O>
      extends FaultTolerantStepBuilder<I,O>

  A step builder that extends the `FaultTolerantStepBuilder` to create JSR-352 specific `ChunkProvider` and `ChunkProcessor` supporting both the chunking pattern defined by the spec as well as skip/retry logic.
  Author:
    Michael Minella, Chris Schaefer

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.springframework.batch.core.step.builder.StepBuilderHelper

      `StepBuilderHelper.CommonStepProperties`

  - ### Field Summary

    - ### Fields inherited from class org.springframework.batch.core.step.builder.AbstractTaskletStepBuilder

      `chunkListeners`

    - ### Fields inherited from class org.springframework.batch.core.step.builder.StepBuilderHelper

      `logger, properties`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `JsrFaultTolerantStepBuilder(StepBuilder parent)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `TaskletStep` | `build()` Build the step from the components collected by the fluent setters.
    `protected ChunkProcessor<I>` | `createChunkProcessor()` Provides a JSR-352 specific implementation of a `ChunkProcessor` for use within the `ChunkOrientedTasklet`
    `protected ChunkProvider<I>` | `createChunkProvider()`
    `FaultTolerantStepBuilder<I,O>` | `faultTolerant()` Override parent method to prevent creation of a new FaultTolerantStepBuilder
    `void` | `setBatchPropertyContext(BatchPropertyContext batchPropertyContext)`

    - ### Methods inherited from class org.springframework.batch.core.step.builder.FaultTolerantStepBuilder

      `backOffPolicy, createRetryOperations, createSkipPolicy, createTasklet, detectStreamInReader, getChunkMonitor, getFatalExceptionAwareProxy, getJsrRetryListeners, getRollbackClassifier, getSkipListeners, keyGenerator, listener, listener, listener, listener, listener, noRetry, noRollback, noSkip, processorNonTransactional, registerStepListenerAsSkipListener, retry, retryContextCache, retryLimit, retryPolicy, skip, skipLimit, skipPolicy, stream, transactionAttribute`

    - ### Methods inherited from class org.springframework.batch.core.step.builder.SimpleStepBuilder

      `chunk, chunk, chunkOperations, createChunkOperations, getChunkCompletionPolicy, getChunkSize, getItemListeners, getProcessor, getReader, getWriter, isReaderTransactionalQueue, listener, listener, listener, processor, processor, reader, readerIsTransactionalQueue, registerAsStreamsAndListeners, registerStepListenerAsItemListener, writer`

    - ### Methods inherited from class org.springframework.batch.core.step.builder.AbstractTaskletStepBuilder

      `concurrent, exceptionHandler, getExceptionHandler, getStepOperations, getStreams, getTaskExecutor, getThrottleLimit, getTransactionAttribute, registerStepListenerAsChunkListener, stepOperations, taskExecutor, throttleLimit`

    - ### Methods inherited from class org.springframework.batch.core.step.builder.StepBuilderHelper

      `allowStartIfComplete, enhance, getJobRepository, getName, getTransactionManager, isAllowStartIfComplete, listener, repository, startLimit, transactionManager`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### JsrFaultTolerantStepBuilder

          public JsrFaultTolerantStepBuilder(StepBuilder parent)

  - ### Method Detail

    - #### setBatchPropertyContext

          public void setBatchPropertyContext(BatchPropertyContext batchPropertyContext)

    - #### faultTolerant

          public FaultTolerantStepBuilder<I,O> faultTolerant()

      Description copied from class: `FaultTolerantStepBuilder`
      Override parent method to prevent creation of a new FaultTolerantStepBuilder
      Overrides:
        `faultTolerant` in class `FaultTolerantStepBuilder<I,O>`

    - #### build

          public TaskletStep build()

      Build the step from the components collected by the fluent setters. Delegates first to `StepBuilderHelper.enhance(Step)` and then to `FaultTolerantStepBuilder.createTasklet()` in subclasses to create the actual tasklet.
      Overrides:
        `build` in class `FaultTolerantStepBuilder<I,O>`
      Returns:
        a tasklet step fully configured and read to execute
      See Also:
        `AbstractTaskletStepBuilder.build()`

    - #### createChunkProvider

          protected ChunkProvider<I> createChunkProvider()

      Overrides:
        `createChunkProvider` in class `FaultTolerantStepBuilder<I,O>`

    - #### createChunkProcessor

          protected ChunkProcessor<I> createChunkProcessor()

      Provides a JSR-352 specific implementation of a `ChunkProcessor` for use within the `ChunkOrientedTasklet`
      Overrides:
        `createChunkProcessor` in class `FaultTolerantStepBuilder<I,O>`
      Returns:
        a JSR-352 implementation of the `ChunkProcessor`
      See Also:
        `JsrFaultTolerantChunkProcessor`