From 7fae159c99b282b33a610a38d0ff4ce5cccd8131 Mon Sep 17 00:00:00 2001 From: Gravita <12893402+gravit0@users.noreply.github.com> Date: Wed, 13 Aug 2025 21:05:29 +0700 Subject: [PATCH] [FIX] Fix problems with log-in to server --- .../runtime/client/ClientLauncherProcess.java | 4 +++ .../gravit/launcher/server/ServerWrapper.java | 26 +++++++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/Launcher/src/main/java/pro/gravit/launcher/runtime/client/ClientLauncherProcess.java b/Launcher/src/main/java/pro/gravit/launcher/runtime/client/ClientLauncherProcess.java index 1e00a069..c85019d4 100644 --- a/Launcher/src/main/java/pro/gravit/launcher/runtime/client/ClientLauncherProcess.java +++ b/Launcher/src/main/java/pro/gravit/launcher/runtime/client/ClientLauncherProcess.java @@ -130,8 +130,12 @@ private void applyClientProfile() { } if (this.params.oauth == null) { this.params.oauth = Request.getOAuth(); + } + if(this.params.authId == null) { this.params.authId = Request.getAuthId(); this.params.oauthExpiredTime = Request.getTokenExpiredTime(); + } + if(this.params.extendedTokens == null) { this.params.extendedTokens = Request.getExtendedTokens(); } LauncherEngine.modulesManager.invokeEvent(new ClientProcessBuilderCreateEvent(this)); diff --git a/ServerWrapper/src/main/java/pro/gravit/launcher/server/ServerWrapper.java b/ServerWrapper/src/main/java/pro/gravit/launcher/server/ServerWrapper.java index b97787a3..10133090 100644 --- a/ServerWrapper/src/main/java/pro/gravit/launcher/server/ServerWrapper.java +++ b/ServerWrapper/src/main/java/pro/gravit/launcher/server/ServerWrapper.java @@ -13,10 +13,15 @@ import pro.gravit.launcher.base.profiles.optional.actions.OptionalAction; import pro.gravit.launcher.base.profiles.optional.triggers.OptionalTrigger; import pro.gravit.launcher.base.request.Request; +import pro.gravit.launcher.base.request.RequestCoreFeatureAPIImpl; +import pro.gravit.launcher.base.request.RequestFeatureAPIImpl; import pro.gravit.launcher.base.request.auth.AuthRequest; import pro.gravit.launcher.base.request.auth.GetAvailabilityAuthRequest; import pro.gravit.launcher.base.request.update.ProfilesRequest; import pro.gravit.launcher.base.request.websockets.StdWebSocketService; +import pro.gravit.launcher.core.api.LauncherAPI; +import pro.gravit.launcher.core.api.LauncherAPIHolder; +import pro.gravit.launcher.core.api.features.*; import pro.gravit.launcher.server.authlib.InstallAuthlib; import pro.gravit.launcher.server.setup.ServerWrapperSetup; import pro.gravit.utils.helper.IOHelper; @@ -129,6 +134,27 @@ public void connect() throws Exception { } }; Request.setRequestService(service); + LauncherAPIHolder.setCoreAPI(new RequestCoreFeatureAPIImpl(Request.getRequestService())); + LauncherAPIHolder.setCreateApiFactory((authId) -> { + var impl = new RequestFeatureAPIImpl(Request.getRequestService(), authId); + return new LauncherAPI(Map.of( + AuthFeatureAPI.class, impl, + UserFeatureAPI.class, impl, + ProfileFeatureAPI.class, impl, + TextureUploadFeatureAPI.class, impl, + HardwareVerificationFeatureAPI.class, impl)); + }); + if(config.authId != null) { + LauncherAPIHolder.changeAuthId(config.authId); + } else { + var impl = new RequestFeatureAPIImpl(Request.getRequestService(), null); + LauncherAPIHolder.setApi(new LauncherAPI(Map.of( + AuthFeatureAPI.class, impl, + UserFeatureAPI.class, impl, + ProfileFeatureAPI.class, impl, + TextureUploadFeatureAPI.class, impl, + HardwareVerificationFeatureAPI.class, impl))); + } if (config.logFile != null) LogHelper.addOutput(IOHelper.newWriter(Paths.get(config.logFile), true)); { restore();