org.apache.commons.math3.util

## Class Incrementor

- java.lang.Object
- - org.apache.commons.math3.util.Incrementor

- Deprecated.
  Use `IntegerSequence.Incrementor` instead.

      @Deprecated
      public class Incrementor
      extends Object

  Utility that increments a counter until a maximum is reached, at which point, the instance will by default throw a `MaxCountExceededException`. However, the user is able to override this behaviour by defining a custom `callback`, in order to e.g. select which exception must be thrown.
  Since:
    3.0

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static interface` | `Incrementor.MaxCountExceededCallback` Deprecated. Defines a method to be called at counter exhaustion.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Incrementor()` Deprecated. Default constructor.
    `Incrementor(int max)` Deprecated. Defines a maximal count.
    `Incrementor(int max, Incrementor.MaxCountExceededCallback cb)` Deprecated. Defines a maximal count and a callback method to be triggered at counter exhaustion.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `canIncrement()` Deprecated. Checks whether a single increment is allowed.
    `int` | `getCount()` Deprecated. Gets the current count.
    `int` | `getMaximalCount()` Deprecated. Gets the upper limit of the counter.
    `void` | `incrementCount()` Deprecated. Adds one to the current iteration count.
    `void` | `incrementCount(int value)` Deprecated. Performs multiple increments.
    `void` | `resetCount()` Deprecated. Resets the counter to 0.
    `void` | `setMaximalCount(int max)` Deprecated. Sets the upper limit for the counter.
    `static Incrementor` | `wrap(IntegerSequence.Incrementor incrementor)` Deprecated. Create an instance that delegates everything to a `IntegerSequence.Incrementor`.

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

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

- - ### Constructor Detail

    - #### Incrementor

          public Incrementor()

      Deprecated.
      Default constructor. For the new instance to be useful, the maximal count must be set by calling `setMaximalCount`.

    - #### Incrementor

          public Incrementor(int max)

      Deprecated.
      Defines a maximal count.
      Parameters:
        `max` - Maximal count.

    - #### Incrementor

          public Incrementor(int max,
                     Incrementor.MaxCountExceededCallback cb)
                      throws NullArgumentException

      Deprecated.
      Defines a maximal count and a callback method to be triggered at counter exhaustion.
      Parameters:
        `max` - Maximal count.
        `cb` - Function to be called when the maximal count has been reached.
      Throws:
        `NullArgumentException` - if `cb` is `null`

  - ### Method Detail

    - #### setMaximalCount

          public void setMaximalCount(int max)

      Deprecated.
      Sets the upper limit for the counter. This does not automatically reset the current count to zero (see `resetCount()`).
      Parameters:
        `max` - Upper limit of the counter.

    - #### getMaximalCount

          public int getMaximalCount()

      Deprecated.
      Gets the upper limit of the counter.
      Returns:
        the counter upper limit.

    - #### getCount

          public int getCount()

      Deprecated.
      Gets the current count.
      Returns:
        the current count.

    - #### canIncrement

          public boolean canIncrement()

      Deprecated.
      Checks whether a single increment is allowed.
      Returns:
        `false` if the next call to `incrementCount` will trigger a `MaxCountExceededException`, `true` otherwise.

    - #### incrementCount

          public void incrementCount(int value)
                              throws MaxCountExceededException

      Deprecated.
      Performs multiple increments. See the other `incrementCount` method).
      Parameters:
        `value` - Number of increments.
      Throws:
        `MaxCountExceededException` - at counter exhaustion.

    - #### incrementCount

          public void incrementCount()
                              throws MaxCountExceededException

      Deprecated.
      Adds one to the current iteration count. At counter exhaustion, this method will call the `trigger` method of the callback object passed to the `constructor`. If not explictly set, a default callback is used that will throw a `MaxCountExceededException`.
      Throws:
        `MaxCountExceededException` - at counter exhaustion, unless a custom `callback` has been set at construction.

    - #### resetCount

          public void resetCount()

      Deprecated.
      Resets the counter to 0.

    - #### wrap

          public static Incrementor wrap(IntegerSequence.Incrementor incrementor)

      Deprecated.
      Create an instance that delegates everything to a `IntegerSequence.Incrementor`.

      This factory method is intended only as a temporary hack for internal use in Apache Commons Math 3.X series, when `Incrementor` is required in interface (as a return value or in protected fields). It should not be used in other cases. The `IntegerSequence.Incrementor` class should be used instead of `Incrementor`.

      All methods are mirrored to the underlying `IntegerSequence.Incrementor`, as long as neither `setMaximalCount(int)` nor `resetCount()` are called. If one of these two methods is called, the created instance becomes independent of the `IntegerSequence.Incrementor` used at creation. The rationale is that `IntegerSequence.Incrementor` cannot change their maximal count and cannot be reset.

      Parameters:
        `incrementor` - wrapped `IntegerSequence.Incrementor`
      Returns:
        an incrementor wrapping an `IntegerSequence.Incrementor`
      Since:
        3.6

Copyright © 2003–2016 The Apache Software Foundation. All rights reserved.