diff options
Diffstat (limited to 'src/main/java/exceptions/VSNegativeNumberException.java')
| -rw-r--r-- | src/main/java/exceptions/VSNegativeNumberException.java | 32 |
1 files changed, 29 insertions, 3 deletions
diff --git a/src/main/java/exceptions/VSNegativeNumberException.java b/src/main/java/exceptions/VSNegativeNumberException.java index edf2049..a2f5bf6 100644 --- a/src/main/java/exceptions/VSNegativeNumberException.java +++ b/src/main/java/exceptions/VSNegativeNumberException.java @@ -1,12 +1,38 @@ package exceptions; /** - * The Interface VSNegativeNumberException, this exception is thrown if - * a negative number has returned if a positive number has been expected. + * Exception thrown when a negative number is encountered where a positive number is expected. + * This is typically used for validation of numeric inputs that must be non-negative. * * @author Paul C. Buetow */ -public class VSNegativeNumberException extends Exception { +public class VSNegativeNumberException extends VSSimulatorException { /** The serial version uid */ private static final long serialVersionUID = 1L; + + /** + * Constructs a new negative number exception. + */ + public VSNegativeNumberException() { + super("Negative number not allowed"); + } + + /** + * Constructs a new negative number exception with the specified field name. + * + * @param fieldName the name of the field that contained the negative number + */ + public VSNegativeNumberException(String fieldName) { + super("Negative number not allowed for field: " + fieldName); + } + + /** + * Constructs a new negative number exception with the specified field name and value. + * + * @param fieldName the name of the field that contained the negative number + * @param value the negative value that was encountered + */ + public VSNegativeNumberException(String fieldName, long value) { + super(String.format("Negative number not allowed for field '%s': %d", fieldName, value)); + } } |
