From bcac08733e0a065deec6e6803277e09cd5078f0c Mon Sep 17 00:00:00 2001
From: dgelessus <dgelessus@users.noreply.github.com>
Date: Wed, 15 Jan 2025 18:00:14 +0100
Subject: [PATCH] Allow CodeGenerationException to have a cause

---
 .../java/de/hhu/stups/codegenerator/CodeGenerator.java |  6 ++----
 .../generators/CodeGenerationException.java            | 10 ++++++++--
 2 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/src/main/java/de/hhu/stups/codegenerator/CodeGenerator.java b/src/main/java/de/hhu/stups/codegenerator/CodeGenerator.java
index 9c6135faa..61fdd985b 100755
--- a/src/main/java/de/hhu/stups/codegenerator/CodeGenerator.java
+++ b/src/main/java/de/hhu/stups/codegenerator/CodeGenerator.java
@@ -344,8 +344,7 @@ public class CodeGenerator {
 		try {
 			project = Antlr4BParser.createBProjectFromMainMachineFile(path.toFile());
 		} catch (TypeErrorException | ScopeException e) {
-			e.printStackTrace();
-			throw new CodeGenerationException(e.getMessage());
+			throw new CodeGenerationException(e);
 		}
 		return project;
 	}
@@ -355,8 +354,7 @@ public class CodeGenerator {
 		try {
 			project = VisBProjectParser.createVisBProjectFromMainFile(path.toFile(), visualisation);
 		} catch (TypeErrorException | ScopeException e) {
-			e.printStackTrace();
-			throw new CodeGenerationException(e.getMessage());
+			throw new CodeGenerationException(e);
 		}
 		return project;
 	}
diff --git a/src/main/java/de/hhu/stups/codegenerator/generators/CodeGenerationException.java b/src/main/java/de/hhu/stups/codegenerator/generators/CodeGenerationException.java
index d092a9ad4..6ec0f0b9d 100644
--- a/src/main/java/de/hhu/stups/codegenerator/generators/CodeGenerationException.java
+++ b/src/main/java/de/hhu/stups/codegenerator/generators/CodeGenerationException.java
@@ -4,9 +4,15 @@ package de.hhu.stups.codegenerator.generators;
  * Created by fabian on 31.05.18.
  */
 public class CodeGenerationException extends RuntimeException {
+    public CodeGenerationException(String message, Throwable cause) {
+        super(message, cause);
+    }
 
-    public CodeGenerationException(String msg) {
-        super(msg);
+    public CodeGenerationException(String message) {
+        this(message, null);
     }
 
+    public CodeGenerationException(Throwable cause) {
+        this(cause.getMessage(), cause);
+    }
 }
-- 
GitLab