Package org.springframework.batch.repeat.context

# Class RepeatContextCounter

java.lang.Object
org.springframework.batch.repeat.context.RepeatContextCounter

public class RepeatContextCounter extends Object
Helper class for policies that need to count the number of occurrences of some event (e.g. an exception type in the context) in the scope of a batch. The value of the counter can be stored between batches in a nested context, so that the termination decision is based on the aggregate of a number of sibling batches.

Author:
  Dave Syer

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `RepeatContextCounter(RepeatContext context, String countKey)`
  Convenience constructor with useParent=false.
  `RepeatContextCounter(RepeatContext context, String countKey, boolean useParent)`
  Construct a new `RepeatContextCounter`.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `getCount()`
  `final void`
  `increment()`
  Increment by 1.
  `final void`
  `increment(int delta)`
  Increment the counter.

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

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

- ## Constructor Details

  - ### RepeatContextCounter

    public RepeatContextCounter(RepeatContext context, String countKey)
    Convenience constructor with useParent=false.
    Parameters:
      `context` - the current context.
      `countKey` - the key to use to store the counter in the context.

  - ### RepeatContextCounter

    public RepeatContextCounter(RepeatContext context, String countKey, boolean useParent)
    Construct a new `RepeatContextCounter`.
    Parameters:
      `context` - the current context.
      `countKey` - the key to use to store the counter in the context.
      `useParent` - true if the counter is to be shared between siblings. The state will be stored in the parent of the context (if it exists) instead of the context itself.

- ## Method Details

  - ### increment

    public final void increment(int delta)
    Increment the counter.
    Parameters:
      `delta` - the amount by which to increment the counter.

  - ### increment

    public final void increment()
    Increment by 1.

  - ### getCount

    public int getCount()
    Returns:
      the current value of the counter