From 8820e3ba3f62ddba406500591e71875b091f5f07 Mon Sep 17 00:00:00 2001 From: lionarius Date: Thu, 28 Nov 2024 08:31:18 +0300 Subject: [PATCH] add mineskin api key to config --- .../config/provider/MineskinProviderConfig.java | 10 ++++++++++ .../skin/provider/MineskinSkinProvider.java | 6 +++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/common/src/main/java/net/lionarius/skinrestorer/config/provider/MineskinProviderConfig.java b/common/src/main/java/net/lionarius/skinrestorer/config/provider/MineskinProviderConfig.java index e3b796d..3dff272 100644 --- a/common/src/main/java/net/lionarius/skinrestorer/config/provider/MineskinProviderConfig.java +++ b/common/src/main/java/net/lionarius/skinrestorer/config/provider/MineskinProviderConfig.java @@ -10,6 +10,7 @@ public class MineskinProviderConfig implements BuiltInProviderConfig, GsonPostPr private boolean enabled; private String name; private CacheConfig cache; + private String apiKey; public MineskinProviderConfig() { this.enabled = true; @@ -29,6 +30,10 @@ public class MineskinProviderConfig implements BuiltInProviderConfig, GsonPostPr return cache; } + public String apiKey() { + return apiKey; + } + @Override public void gsonPostProcess() { if (this.name == null || this.name.isEmpty()) { @@ -42,5 +47,10 @@ public class MineskinProviderConfig implements BuiltInProviderConfig, GsonPostPr } else { this.cache.validate(DEFAULT_CACHE_VALUE); } + + if (this.apiKey == null) { + SkinRestorer.LOGGER.warn("Mineskin API key is null, defaulting to an empty string"); + this.apiKey = ""; + } } } diff --git a/common/src/main/java/net/lionarius/skinrestorer/skin/provider/MineskinSkinProvider.java b/common/src/main/java/net/lionarius/skinrestorer/skin/provider/MineskinSkinProvider.java index bdb53d0..5e79fc5 100644 --- a/common/src/main/java/net/lionarius/skinrestorer/skin/provider/MineskinSkinProvider.java +++ b/common/src/main/java/net/lionarius/skinrestorer/skin/provider/MineskinSkinProvider.java @@ -45,11 +45,14 @@ public final class MineskinSkinProvider implements SkinProvider { } public static void reload() { + var config = SkinRestorer.getConfig(); + var configApiKey = config.providersConfig().mineskin().apiKey(); + MINESKIN_CLIENT = MineSkinClient .builder() .userAgent(WebUtils.USER_AGENT) .gson(JsonUtils.GSON) - .timeout((int) Duration.ofSeconds(SkinRestorer.getConfig().requestTimeout()).toMillis()) + .timeout((int) Duration.ofSeconds(config.requestTimeout()).toMillis()) .requestHandler((userAgent, apiKey, timeout, gson) -> new Java11RequestHandler( userAgent, apiKey, @@ -57,6 +60,7 @@ public final class MineskinSkinProvider implements SkinProvider { gson, SkinRestorer.getConfig().proxy().map(proxy -> new InetSocketAddress(proxy.host(), proxy.port())).orElse(null) )) + .apiKey(configApiKey.isEmpty() ? null : configApiKey) .build(); createCache();