summaryrefslogtreecommitdiff
path: root/src/main/java/exceptions/VSParseIntegerVectorException.java
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2025-06-20 18:47:45 +0300
committerPaul Buetow <paul@buetow.org>2025-06-20 18:47:45 +0300
commit70fc0505b223f7bf17d3671d0532773359cf7858 (patch)
tree1c244371e6a4e89e7694d5691db6a14b0ba2da06 /src/main/java/exceptions/VSParseIntegerVectorException.java
parentf6d2a6bbbc37c552accf91a13ccd6ea45ecf8e73 (diff)
Implement proper exception hierarchy and consistent error handling
- Create base exception classes: - VSSimulatorException: Base checked exception for all simulator errors - VSSimulatorRuntimeException: Base unchecked exception for unrecoverable errors - Refactor existing exceptions to extend from base class: - VSEventNotCopyableException: Now includes better error messages - VSParseIntegerVectorException: Added constructors with cause support - VSNegativeNumberException: Added field name and value parameters - Add new specific exception types: - VSConfigurationException: For configuration errors - VSSerializationException: For save/load operations - VSProcessException: For process-related errors - VSProtocolException: For protocol execution errors - Create VSErrorHandler utility class: - Centralized error logging and user notification - Consistent error handling patterns - Helper methods for warning and error dialogs - Update exception handling in code: - VSClassLoader: Better error messages and specific exception handling - Timestamp events: Catch RuntimeException for custom actions - All 132 unit tests pass 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
Diffstat (limited to 'src/main/java/exceptions/VSParseIntegerVectorException.java')
-rw-r--r--src/main/java/exceptions/VSParseIntegerVectorException.java33
1 files changed, 29 insertions, 4 deletions
diff --git a/src/main/java/exceptions/VSParseIntegerVectorException.java b/src/main/java/exceptions/VSParseIntegerVectorException.java
index 19c2b82..639b77e 100644
--- a/src/main/java/exceptions/VSParseIntegerVectorException.java
+++ b/src/main/java/exceptions/VSParseIntegerVectorException.java
@@ -1,13 +1,38 @@
package exceptions;
/**
- * The Interface VSParseIntegerVectorException, this exception is thrown if
- * the VSAbstractEditor is not able to parse the vector fields input of the
- * user.
+ * Exception thrown when the VSAbstractEditor cannot parse vector field input.
+ * This typically occurs when user input for vector values is malformed.
*
* @author Paul C. Buetow
*/
-public class VSParseIntegerVectorException extends Exception {
+public class VSParseIntegerVectorException extends VSSimulatorException {
/** The serial version uid */
private static final long serialVersionUID = 1L;
+
+ /**
+ * Constructs a new parse integer vector exception.
+ */
+ public VSParseIntegerVectorException() {
+ super("Failed to parse integer vector from input");
+ }
+
+ /**
+ * Constructs a new parse integer vector exception with the specified input string.
+ *
+ * @param input the input string that could not be parsed
+ */
+ public VSParseIntegerVectorException(String input) {
+ super("Failed to parse integer vector from input: " + input);
+ }
+
+ /**
+ * Constructs a new parse integer vector exception with the specified input and cause.
+ *
+ * @param input the input string that could not be parsed
+ * @param cause the underlying cause of the parse failure
+ */
+ public VSParseIntegerVectorException(String input, Throwable cause) {
+ super("Failed to parse integer vector from input: " + input, cause);
+ }
}