org.springframework.batch.repeat.listener

## Class CompositeRepeatListener

- java.lang.Object
- - org.springframework.batch.repeat.listener.CompositeRepeatListener

- All Implemented Interfaces:
    RepeatListener

      public class CompositeRepeatListener
      extends java.lang.Object
      implements RepeatListener

  Allows a user to register one or more RepeatListeners to be notified on batch events.
  Author:
    Dave Syer

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `CompositeRepeatListener()`

  - ### Method Summary

    All Methods Instance Methods Concrete 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.
    `void` | `register(RepeatListener listener)` Register additional listener.
    `void` | `setListeners(RepeatListener[] listeners)` Public setter for the listeners.

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

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

- - ### Constructor Detail

    - #### CompositeRepeatListener

          public CompositeRepeatListener()

  - ### Method Detail

    - #### setListeners

          public void setListeners(RepeatListener[] listeners)

      Public setter for the listeners.
      Parameters:
        `listeners` - array of RepeatListeners to be used by the CompositeRepeatListener.

    - #### register

          public void register(RepeatListener listener)

      Register additional listener.
      Parameters:
        `listener` - the RepeatListener to be added to the list of listeners to be notified.

    - #### after

          public void after(RepeatContext context,
                            RepeatStatus result)

      Description copied from interface: `RepeatListener`
      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.
      Specified by:
        `after` in interface `RepeatListener`
      Parameters:
        `context` - the current batch context
        `result` - the result of the callback

    - #### before

          public void before(RepeatContext context)

      Description copied from interface: `RepeatListener`
      Called by the framework before each batch item. Implementers can halt a batch by setting the complete flag on the context.
      Specified by:
        `before` in interface `RepeatListener`
      Parameters:
        `context` - the current batch context.

    - #### close

          public void close(RepeatContext context)

      Description copied from interface: `RepeatListener`
      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.
      Specified by:
        `close` in interface `RepeatListener`
      Parameters:
        `context` - the current batch context.

    - #### onError

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

      Description copied from interface: `RepeatListener`
      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.
      Specified by:
        `onError` in interface `RepeatListener`
      Parameters:
        `context` - the current batch context
        `e` - the error that was encountered in an item callback.

    - #### open

          public void open(RepeatContext context)

      Description copied from interface: `RepeatListener`
      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).
      Specified by:
        `open` in interface `RepeatListener`
      Parameters:
        `context` - the current batch context