From 1df5ebcd8706277ca147e1e8746e6e370bd905fe Mon Sep 17 00:00:00 2001
From: dgelessus <dgelessus@users.noreply.github.com>
Date: Mon, 24 Oct 2022 16:37:05 +0200
Subject: [PATCH] Refactor CliStarter.getOsInfo

---
 de.prob.core/src/de/prob/cli/CliStarter.java | 26 +++++++++++---------
 1 file changed, 14 insertions(+), 12 deletions(-)

diff --git a/de.prob.core/src/de/prob/cli/CliStarter.java b/de.prob.core/src/de/prob/cli/CliStarter.java
index c4e8a0a9..6515932d 100644
--- a/de.prob.core/src/de/prob/cli/CliStarter.java
+++ b/de.prob.core/src/de/prob/cli/CliStarter.java
@@ -136,23 +136,25 @@ public final class CliStarter {
 
 	private OsSpecificInfo getOsInfo(final String os)
 			throws CliException {
-		if (os.equals(Platform.OS_MACOSX)) {
-			return new OsSpecificInfo("macos", "probcli.sh", "sh",
-					"lib/send_user_interrupt");
-		}
 		if (os.equals(Platform.OS_WIN32)) {
 			return new OsSpecificInfo("windows", "probcli.exe", null,
 					"lib\\send_user_interrupt.exe");
-		}
+		} else {
+			final String subdir;
+			if (os.equals(Platform.OS_MACOSX)) {
+				subdir = "macos";
+			} else if (os.equals(Platform.OS_LINUX)) {
+				subdir = "linux64";
+			} else {
+				final CliException cliException = new CliException(
+						"ProB does not support the plattform: " + os);
+				cliException.notifyUserOnce();
+				throw cliException;
+			}
 
-		if (os.equals(Platform.OS_LINUX)) {
-			return new OsSpecificInfo("linux64", "probcli.sh", "sh",
-					"lib/send_user_interrupt");
+			return new OsSpecificInfo(subdir, "probcli.sh", "sh",
+				"lib/send_user_interrupt");
 		}
-		final CliException cliException = new CliException(
-				"ProB does not support the plattform: " + os);
-		cliException.notifyUserOnce();
-		throw cliException;
 	}
 
 	@SuppressWarnings("unchecked")
-- 
GitLab