enhanced SequenceNumber class

pull/19/head
Stefan Feuerhahn 5 years ago
parent 05d75db9db
commit 1f01fcac02

@ -28,20 +28,25 @@ public class SequenceNumber {
public static int getIncrement(int value, int minValue, int maxValue) { public static int getIncrement(int value, int minValue, int maxValue) {
assert (value >= minValue) && (value <= maxValue); assert (value >= minValue) && (value <= maxValue);
if (value == maxValue) { return (value == maxValue) ? minValue : value + 1;
return minValue;
} else {
return ++value;
}
} }
public int getAndIncrement() { public int getAndIncrement() {
int oldValue = value; int oldValue = value;
if (value == maxValue) { value = (value == maxValue) ? minValue : value + 1;
value = minValue;
} else {
++value;
}
return oldValue; return oldValue;
} }
public int get() {
return value;
}
public void increment() {
value = (value == maxValue) ? minValue : value + 1;
}
public int incrementAndGet() {
value = (value == maxValue) ? minValue : value + 1;
return value;
}
} }

Loading…
Cancel
Save