public class Incrementor extends Object implements Serializable
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.Modifier and Type | Class and Description |
---|---|
static interface |
Incrementor.MaxCountExceededCallback
Defines a method to be called at counter exhaustion.
|
Constructor and Description |
---|
Incrementor()
Default constructor.
|
Incrementor(int max)
Defines a maximal count.
|
Incrementor(int max,
Incrementor.MaxCountExceededCallback cb)
Defines a maximal count and a callback method to be triggered at
counter exhaustion.
|
Modifier and Type | Method and Description |
---|---|
boolean |
canIncrement()
Checks whether a single increment is allowed.
|
int |
getCount()
Gets the current count.
|
int |
getMaximalCount()
Gets the upper limit of the counter.
|
void |
incrementCount()
Adds one to the current iteration count.
|
void |
incrementCount(int value)
Performs multiple increments.
|
void |
resetCount()
Resets the counter to 0.
|
void |
setMaximalCount(int max)
Sets the upper limit for the counter.
|
public Incrementor()
setMaximalCount
.public Incrementor(int max)
max
- Maximal count.public Incrementor(int max, Incrementor.MaxCountExceededCallback cb)
max
- Maximal count.cb
- Function to be called when the maximal count has been reached.NullArgumentException
- if cb
is null
public void setMaximalCount(int max)
resetCount()
).max
- Upper limit of the counter.public int getMaximalCount()
public int getCount()
public boolean canIncrement()
false
if the next call to incrementCount
will trigger a MaxCountExceededException
, true
otherwise.public void incrementCount(int value)
incrementCount
method).value
- Number of increments.MaxCountExceededException
- at counter exhaustion.public void incrementCount()
trigger
method of
the
callback object passed to the constructor
.
If not explictly set, a default callback is used that will throw
a MaxCountExceededException
.MaxCountExceededException
- at counter exhaustion, unless a
custom callback
has been set at
construction.public void resetCount()
Copyright © 2020 CNES. All rights reserved.