Various tweaks to the Java component of the launcher

Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
This commit is contained in:
TheKodeToad
2022-10-24 18:21:26 +01:00
parent e4e0c27e1c
commit e68dcea6bc
13 changed files with 316 additions and 237 deletions

View File

@@ -35,7 +35,8 @@
package org.prismlauncher;
import org.prismlauncher.impl.OneSixLauncher;
import org.prismlauncher.impl.LegacyLauncher;
import org.prismlauncher.impl.StandardLauncher;
import org.prismlauncher.utils.Parameters;
import java.util.HashMap;
@@ -43,15 +44,21 @@ import java.util.Map;
public final class LauncherFactory {
private static final LauncherFactory INSTANCE = new LauncherFactory();
public static final LauncherFactory INSTANCE = new LauncherFactory();
private final Map<String, LauncherProvider> launcherRegistry = new HashMap<>();
private LauncherFactory() {
launcherRegistry.put("onesix", new LauncherProvider() {
launcherRegistry.put("standard", new LauncherProvider() {
@Override
public Launcher provide(Parameters parameters) {
return new OneSixLauncher(parameters);
return new StandardLauncher(parameters);
}
});
launcherRegistry.put("legacy", new LauncherProvider() {
@Override
public Launcher provide(Parameters parameters) {
return new LegacyLauncher(parameters);
}
});
}
@@ -67,10 +74,6 @@ public final class LauncherFactory {
return launcherProvider.provide(parameters);
}
public static LauncherFactory getInstance() {
return INSTANCE;
}
public interface LauncherProvider {
Launcher provide(Parameters parameters);