diff options
author | TheKodeToad <TheKodeToad@proton.me> | 2022-11-03 17:50:54 +0000 |
---|---|---|
committer | TheKodeToad <TheKodeToad@proton.me> | 2022-11-08 16:37:00 +0000 |
commit | 1da834f6507a8c494d38159208471afd5c9a877e (patch) | |
tree | c5527ba1e5e4e37c60cc580542a53c3c9bd7af7b /libraries/launcher/org/prismlauncher/EntryPoint.java | |
parent | fb677a7489201163de7d8ad1960ba8404a8f8a10 (diff) | |
download | PrismLauncher-1da834f6507a8c494d38159208471afd5c9a877e.tar.gz PrismLauncher-1da834f6507a8c494d38159208471afd5c9a877e.tar.bz2 PrismLauncher-1da834f6507a8c494d38159208471afd5c9a877e.zip |
*opinionated change* Remove LauncherFactory
Factories in OOP are a classic example of over-enginneering. When you only have two launchers I personally think that it's not very useful.
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
Diffstat (limited to 'libraries/launcher/org/prismlauncher/EntryPoint.java')
-rw-r--r-- | libraries/launcher/org/prismlauncher/EntryPoint.java | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/libraries/launcher/org/prismlauncher/EntryPoint.java b/libraries/launcher/org/prismlauncher/EntryPoint.java index 88d5d8be..c33ab983 100644 --- a/libraries/launcher/org/prismlauncher/EntryPoint.java +++ b/libraries/launcher/org/prismlauncher/EntryPoint.java @@ -57,7 +57,8 @@ package org.prismlauncher; import org.prismlauncher.exception.ParseException; import org.prismlauncher.launcher.Launcher; -import org.prismlauncher.launcher.LauncherFactory; +import org.prismlauncher.launcher.impl.StandardLauncher; +import org.prismlauncher.launcher.impl.legacy.LegacyLauncher; import org.prismlauncher.utils.Parameters; import org.prismlauncher.utils.StringUtils; @@ -137,7 +138,19 @@ public final class EntryPoint { } try { - Launcher launcher = LauncherFactory.createLauncher(parameters); + Launcher launcher; + String type = parameters.getString("launcher"); + + switch (type) { + case "standard": + launcher = new StandardLauncher(parameters); + break; + case "legacy": + launcher = new LegacyLauncher(parameters); + break; + default: + throw new IllegalArgumentException("Invalid launcher type: " + type); + } launcher.launch(); |