Package org.apache.commons.math3.util
Class Incrementor
- java.lang.Object
-
- org.apache.commons.math3.util.Incrementor
-
@Deprecated public class Incrementor extends Object
Deprecated.UseIntegerSequence.Incrementor
instead.Utility that increments a counter until a maximum is reached, at which point, the instance will by default throw aMaxCountExceededException
. However, the user is able to override this behaviour by defining a customcallback
, in order to e.g. select which exception must be thrown.- Since:
- 3.0
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
Incrementor.MaxCountExceededCallback
Deprecated.Defines a method to be called at counter exhaustion.
-
Constructor Summary
Constructors Constructor 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
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method 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 aIntegerSequence.Incrementor
.
-
-
-
Constructor Detail
-
Incrementor
public Incrementor()
Deprecated.Default constructor. For the new instance to be useful, the maximal count must be set by callingsetMaximalCount
.
-
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
- ifcb
isnull
-
-
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 (seeresetCount()
).- 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 toincrementCount
will trigger aMaxCountExceededException
,true
otherwise.
-
incrementCount
public void incrementCount(int value) throws MaxCountExceededException
Deprecated.Performs multiple increments. See the otherincrementCount
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 thetrigger
method of the callback object passed to theconstructor
. If not explictly set, a default callback is used that will throw aMaxCountExceededException
.- Throws:
MaxCountExceededException
- at counter exhaustion, unless a customcallback
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 aIntegerSequence.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. TheIntegerSequence.Incrementor
class should be used instead ofIncrementor
.All methods are mirrored to the underlying
IntegerSequence.Incrementor
, as long as neithersetMaximalCount(int)
norresetCount()
are called. If one of these two methods is called, the created instance becomes independent of theIntegerSequence.Incrementor
used at creation. The rationale is thatIntegerSequence.Incrementor
cannot change their maximal count and cannot be reset.- Parameters:
incrementor
- wrappedIntegerSequence.Incrementor
- Returns:
- an incrementor wrapping an
IntegerSequence.Incrementor
- Since:
- 3.6
-
-