org.springframework.batch.repeat

## Interface RepeatListener

- All Known Implementing Classes:
    CompositeRepeatListener, HibernateCreditDao, RepeatListenerSupport

      public interface RepeatListener

  Interface for listeners to the batch process. Implementers can provide enhance the behaviour of a batch in small cross-cutting modules. The framework provides callbacks at key points in the processing.
  Author:
    Dave Syer

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `after(RepeatContext context, RepeatStatus result)` Called by the framework after each item has been processed, unless the item processing results in an exception.
    `void` | `before(RepeatContext context)` Called by the framework before each batch item.
    `void` | `close(RepeatContext context)` Called once at the end of a complete batch, after normal or abnormal completion (i.e.
    `void` | `onError(RepeatContext context, java.lang.Throwable e)` Called when a repeat callback fails by throwing an exception.
    `void` | `open(RepeatContext context)` Called once at the start of a complete batch, before any items are processed.

- - ### Method Detail

    - #### before

          void before(RepeatContext context)

      Called by the framework before each batch item. Implementers can halt a batch by setting the complete flag on the context.
      Parameters:
        `context` - the current batch context.

    - #### after

          void after(RepeatContext context,
                     RepeatStatus result)

      Called by the framework after each item has been processed, unless the item processing results in an exception. This method is called as soon as the result is known.
      Parameters:
        `context` - the current batch context
        `result` - the result of the callback

    - #### open

          void open(RepeatContext context)

      Called once at the start of a complete batch, before any items are processed. Implementers can use this method to acquire any resources that might be needed during processing. Implementers can halt the current operation by setting the complete flag on the context. To halt all enclosing batches (the whole job), the would need to use the parent context (recursively).
      Parameters:
        `context` - the current batch context

    - #### onError

          void onError(RepeatContext context,
                       java.lang.Throwable e)

      Called when a repeat callback fails by throwing an exception. There will be one call to this method for each exception thrown during a repeat operation (e.g. a chunk).
      There is no need to re-throw the exception here - that will be done by the enclosing framework.
      Parameters:
        `context` - the current batch context
        `e` - the error that was encountered in an item callback.

    - #### close

          void close(RepeatContext context)

      Called once at the end of a complete batch, after normal or abnormal completion (i.e. even after an exception). Implementers can use this method to clean up any resources.
      Parameters:
        `context` - the current batch context.