Improve error messages to state which bounds are exceeded
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1730463 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
b01efb6855
commit
528a64dc76
@ -54,8 +54,7 @@ public class IdentifierManager {
|
|||||||
*/
|
*/
|
||||||
public IdentifierManager(long lowerbound, long upperbound) {
|
public IdentifierManager(long lowerbound, long upperbound) {
|
||||||
if (lowerbound > upperbound) {
|
if (lowerbound > upperbound) {
|
||||||
String message = "lowerbound must not be greater than upperbound";
|
throw new IllegalArgumentException("lowerbound must not be greater than upperbound, had " + lowerbound + " and " + upperbound);
|
||||||
throw new IllegalArgumentException(message);
|
|
||||||
}
|
}
|
||||||
else if (lowerbound < MIN_ID) {
|
else if (lowerbound < MIN_ID) {
|
||||||
String message = "lowerbound must be greater than or equal to " + Long.toString(MIN_ID);
|
String message = "lowerbound must be greater than or equal to " + Long.toString(MIN_ID);
|
||||||
@ -64,10 +63,9 @@ public class IdentifierManager {
|
|||||||
else if (upperbound > MAX_ID) {
|
else if (upperbound > MAX_ID) {
|
||||||
/*
|
/*
|
||||||
* while MAX_ID is Long.MAX_VALUE, this check is pointless. But if
|
* while MAX_ID is Long.MAX_VALUE, this check is pointless. But if
|
||||||
* someone subclasses / tweaks the limits, this check if fine.
|
* someone subclasses / tweaks the limits, this check is fine.
|
||||||
*/
|
*/
|
||||||
String message = "upperbound must be less thean or equal " + Long.toString(MAX_ID);
|
throw new IllegalArgumentException("upperbound must be less than or equal to " + Long.toString(MAX_ID) + " but had " + upperbound);
|
||||||
throw new IllegalArgumentException(message);
|
|
||||||
}
|
}
|
||||||
this.lowerbound = lowerbound;
|
this.lowerbound = lowerbound;
|
||||||
this.upperbound = upperbound;
|
this.upperbound = upperbound;
|
||||||
@ -77,7 +75,7 @@ public class IdentifierManager {
|
|||||||
|
|
||||||
public long reserve(long id) {
|
public long reserve(long id) {
|
||||||
if (id < lowerbound || id > upperbound) {
|
if (id < lowerbound || id > upperbound) {
|
||||||
throw new IllegalArgumentException("Value for parameter 'id' was out of bounds");
|
throw new IllegalArgumentException("Value for parameter 'id' was out of bounds, had " + id + ", but should be within [" + lowerbound + ":" + upperbound + "]");
|
||||||
}
|
}
|
||||||
verifyIdentifiersLeft();
|
verifyIdentifiersLeft();
|
||||||
|
|
||||||
@ -161,7 +159,7 @@ public class IdentifierManager {
|
|||||||
*/
|
*/
|
||||||
public boolean release(long id) {
|
public boolean release(long id) {
|
||||||
if (id < lowerbound || id > upperbound) {
|
if (id < lowerbound || id > upperbound) {
|
||||||
throw new IllegalArgumentException("Value for parameter 'id' was out of bounds");
|
throw new IllegalArgumentException("Value for parameter 'id' was out of bounds, had " + id + ", but should be within [" + lowerbound + ":" + upperbound + "]");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (id == upperbound) {
|
if (id == upperbound) {
|
||||||
|
Loading…
Reference in New Issue
Block a user