diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/setting/Settings.java b/HMCL/src/main/java/org/jackhuang/hmcl/setting/Settings.java index a375a8ee6..c5d73164c 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/setting/Settings.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/setting/Settings.java @@ -79,7 +79,7 @@ public class Settings { Account account; try { - account = factory.fromStorage(settings, ProxyManager.getProxy()); + account = factory.fromStorage(settings); } catch (Exception e) { LOG.log(Level.WARNING, "Malformed account storage, removing: " + settings, e); iterator.remove(); diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/AddAccountPane.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/AddAccountPane.java index 92bf69814..50eba5f29 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/AddAccountPane.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/AddAccountPane.java @@ -152,7 +152,7 @@ public class AddAccountPane extends StackPane { lblCreationWarning.setText(""); setDisable(true); - Task.ofResult("create_account", () -> factory.create(new Selector(), username, password, addtionalData, ProxyManager.getProxy())) + Task.ofResult("create_account", () -> factory.create(new Selector(), username, password, addtionalData)) .finalized(Schedulers.javafx(), variables -> { Settings.INSTANCE.addAccount(variables.get("create_account")); acceptPane.hideSpinner(); diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/AccountBuilder.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/AccountBuilder.java index c9dbf3450..2e2ecfd93 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/AccountBuilder.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/AccountBuilder.java @@ -17,7 +17,6 @@ */ package org.jackhuang.hmcl.auth; -import java.net.Proxy; import java.util.Objects; public final class AccountBuilder { @@ -25,7 +24,6 @@ public final class AccountBuilder { private String username; private String password = null; private Object additionalData = null; - private Proxy proxy = Proxy.NO_PROXY; public AccountBuilder() { } @@ -50,12 +48,7 @@ public final class AccountBuilder { return this; } - public AccountBuilder setProxy(Proxy proxy) { - this.proxy = Objects.requireNonNull(proxy); - return this; - } - public T create(AccountFactory factory) throws AuthenticationException { - return factory.create(selector, Objects.requireNonNull(username), password, additionalData, proxy); + return factory.create(selector, Objects.requireNonNull(username), password, additionalData); } } diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/AccountFactory.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/AccountFactory.java index 62f5fab78..65c4c0f27 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/AccountFactory.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/AccountFactory.java @@ -17,7 +17,6 @@ */ package org.jackhuang.hmcl.auth; -import java.net.Proxy; import java.util.Map; /** @@ -26,7 +25,7 @@ import java.util.Map; */ public abstract class AccountFactory { - public abstract T create(CharacterSelector selector, String username, String password, Object additionalData, Proxy proxy) throws AuthenticationException; + public abstract T create(CharacterSelector selector, String username, String password, Object additionalData) throws AuthenticationException; - public abstract T fromStorage(Map storage, Proxy proxy); + public abstract T fromStorage(Map storage); } diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/authlibinjector/AuthlibInjectorAccountFactory.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/authlibinjector/AuthlibInjectorAccountFactory.java index 94b7587c0..d664d861b 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/authlibinjector/AuthlibInjectorAccountFactory.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/authlibinjector/AuthlibInjectorAccountFactory.java @@ -25,7 +25,6 @@ import org.jackhuang.hmcl.auth.yggdrasil.YggdrasilSession; import org.jackhuang.hmcl.util.ExceptionalSupplier; import java.io.IOException; -import java.net.Proxy; import java.util.Map; import java.util.Objects; import java.util.function.Function; @@ -45,24 +44,22 @@ public class AuthlibInjectorAccountFactory extends AccountFactory storage, Proxy proxy) { + public AuthlibInjectorAccount fromStorage(Map storage) { Objects.requireNonNull(storage); - Objects.requireNonNull(proxy); YggdrasilSession session = YggdrasilSession.fromStorage(storage); @@ -73,7 +70,7 @@ public class AuthlibInjectorAccountFactory extends AccountFactory { } @Override - public OfflineAccount create(CharacterSelector selector, String username, String password, Object additionalData, Proxy proxy) { + public OfflineAccount create(CharacterSelector selector, String username, String password, Object additionalData) { return new OfflineAccount(username, getUUIDFromUserName(username)); } @Override - public OfflineAccount fromStorage(Map storage, Proxy proxy) { + public OfflineAccount fromStorage(Map storage) { String username = tryCast(storage.get("username"), String.class) .orElseThrow(() -> new IllegalStateException("Offline account configuration malformed.")); UUID uuid = tryCast(storage.get("uuid"), String.class) diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/yggdrasil/YggdrasilAccountFactory.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/yggdrasil/YggdrasilAccountFactory.java index 3fb044793..77c557670 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/yggdrasil/YggdrasilAccountFactory.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/yggdrasil/YggdrasilAccountFactory.java @@ -22,7 +22,6 @@ import org.jackhuang.hmcl.auth.AuthenticationException; import org.jackhuang.hmcl.auth.CharacterSelector; import org.jackhuang.hmcl.util.UUIDTypeAdapter; -import java.net.Proxy; import java.util.Map; import java.util.Objects; import java.util.UUID; @@ -42,28 +41,26 @@ public class YggdrasilAccountFactory extends AccountFactory { } @Override - public YggdrasilAccount create(CharacterSelector selector, String username, String password, Object additionalData, Proxy proxy) throws AuthenticationException { + public YggdrasilAccount create(CharacterSelector selector, String username, String password, Object additionalData) throws AuthenticationException { Objects.requireNonNull(selector); Objects.requireNonNull(username); Objects.requireNonNull(password); - Objects.requireNonNull(proxy); - YggdrasilAccount account = new YggdrasilAccount(new YggdrasilService(provider, proxy), username, null, null); + YggdrasilAccount account = new YggdrasilAccount(new YggdrasilService(provider), username, null, null); account.logInWithPassword(password, selector); return account; } @Override - public YggdrasilAccount fromStorage(Map storage, Proxy proxy) { + public YggdrasilAccount fromStorage(Map storage) { Objects.requireNonNull(storage); - Objects.requireNonNull(proxy); YggdrasilSession session = YggdrasilSession.fromStorage(storage); String username = tryCast(storage.get("username"), String.class) .orElseThrow(() -> new IllegalArgumentException("storage does not have username")); - return new YggdrasilAccount(new YggdrasilService(provider, proxy), username, session.getSelectedProfile().getId(), session); + return new YggdrasilAccount(new YggdrasilService(provider), username, session.getSelectedProfile().getId(), session); } public static String randomToken() { diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/yggdrasil/YggdrasilService.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/yggdrasil/YggdrasilService.java index 1f1c8cacd..a56483e46 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/yggdrasil/YggdrasilService.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/auth/yggdrasil/YggdrasilService.java @@ -9,7 +9,6 @@ import org.jackhuang.hmcl.util.StringUtils; import org.jackhuang.hmcl.util.UUIDTypeAdapter; import java.io.IOException; -import java.net.Proxy; import java.net.URL; import java.util.*; @@ -21,15 +20,9 @@ import static org.jackhuang.hmcl.util.Pair.pair; public class YggdrasilService { private final YggdrasilProvider provider; - private final Proxy proxy; public YggdrasilService(YggdrasilProvider provider) { - this(provider, Proxy.NO_PROXY); - } - - public YggdrasilService(YggdrasilProvider provider, Proxy proxy) { this.provider = provider; - this.proxy = proxy; } public YggdrasilSession authenticate(String username, String password, String clientToken) throws AuthenticationException { @@ -155,7 +148,7 @@ public class YggdrasilService { private String request(URL url, Object payload) throws AuthenticationException { try { if (payload == null) - return NetworkUtils.doGet(url, proxy); + return NetworkUtils.doGet(url); else return NetworkUtils.doPost(url, payload instanceof String ? (String) payload : GSON.toJson(payload), "application/json"); } catch (IOException e) {