diff options
author | Jonas Smedegaard <dr@jones.dk> | 2025-04-27 16:43:17 +0200 |
---|---|---|
committer | Jonas Smedegaard <dr@jones.dk> | 2025-04-27 16:43:22 +0200 |
commit | 8535a9ca92539bf12ec00cac7a4e47be604f0283 (patch) | |
tree | 7a1fb082d5218e18a0186d97a8ed1f7dd87fd41f /src/main/java/dk.biks.bachelorizer/dk/biks/bachelorizer/Main.java | |
parent | d104247b8bcdb2a38b680ac54e7ceb2bba155c0e (diff) |
simplify path structure
Diffstat (limited to 'src/main/java/dk.biks.bachelorizer/dk/biks/bachelorizer/Main.java')
-rw-r--r-- | src/main/java/dk.biks.bachelorizer/dk/biks/bachelorizer/Main.java | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/src/main/java/dk.biks.bachelorizer/dk/biks/bachelorizer/Main.java b/src/main/java/dk.biks.bachelorizer/dk/biks/bachelorizer/Main.java deleted file mode 100644 index 2efd5b8..0000000 --- a/src/main/java/dk.biks.bachelorizer/dk/biks/bachelorizer/Main.java +++ /dev/null @@ -1,90 +0,0 @@ -// SPDX-FileCopyrightText: 2025 Jonas Smedegaard <dr@jones.dk> -// SPDX-License-Identifier: GPL-3.0-or-later - -package dk.biks.bachelorizer; - -import java.lang.UnsupportedOperationException; -import java.util.Arrays; - -/* TODO -import dk.biks.bachelorizer.view.Oneshot; -import dk.biks.bachelorizer.view.Prompt; -import dk.biks.bachelorizer.view.Pipe; -import dk.biks.bachelorizer.view.Screen; -*/ -import dk.biks.bachelorizer.view.Window; - -/// Bachelorizer - bachelor programme registrar -/// -/// Tool for registering students -/// for activities in their bachelor programme. -/// -/// Runner class spawning an interactive or non-interactive application -/// based on passed arguments -/// -/// Multi-framework MVC structure inspired by project Криптоанализатор -/// written by Александр Хмелев <akhmelev@gmail.com>. -/// -/// * v0.0.1-draft -/// * initial release, as part of delivery "Portfolio 1" -/// -/// @version 0.0.1-draft -/// @see <https://moodle.ruc.dk/mod/assign/view.php?id=523186> -/// @see <https://github.com/demologin/CryptoAnalyzerLed> -public class Main { - - /// Default constructor - /// - /// @param args command-line arguments or default demo data - public Main(final String[] args) { - - switch (uiFromArgs(args)) { - case "gui" -> { Window.main(args); } -// TODO case "tui" -> { Screen.main(args); } -// TODO case "cli" -> { Line.main(args); } - default -> { - throw new UnsupportedOperationException( - "Not yet implemented."); - } - } - } - - /// JVM entry point - /// - /// @param args command-line arguments - public static void main(String[] args) { - - // inject initial sample data unless passed as arguments - if ((args.length == 0) - || (!Arrays.stream(args).anyMatch( - s -> s != null && !s.startsWith("-"))) - ) { - args = new String[] { - "Jonas Smedegaard", - "CS-SMC2", - "CS-SMC3", - }; - } - - new Main(args); - } - - /// minimal argument parser to detect explicit UI choice - /// - /// @param args command-line arguments - /// @return choice of UI as String - public static String uiFromArgs(String[] args) { - // TODO: make "cli" the default when implemented - String defaultUI = "gui"; - - for (String arg : args) { - if (arg.matches("--(gui|tui|cli)")) { - return (arg.length() == 2) - ? defaultUI - : arg.substring(2); - } - } - - return defaultUI; - } -} |