From b8a99a449119ba5cedd8ef9ec46ca8063b9e369d Mon Sep 17 00:00:00 2001 From: LamGC Date: Fri, 24 Jun 2022 19:51:27 +0800 Subject: [PATCH] =?UTF-8?q?fix(config):=20=E4=BF=AE=E6=AD=A3=20BotConfigSe?= =?UTF-8?q?rializer=20=E4=B8=AD=E4=BD=BF=E7=94=A8=E7=9A=84=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E9=BB=98=E8=AE=A4=E5=80=BC.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 由于默认值未及时变更, 导致出现默认值与预期不符的情况; 目前已调整了新的默认值获取方式, 以便于后续调整默认值. --- .../src/main/kotlin/serializer/Serializer.kt | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/scalabot-meta/src/main/kotlin/serializer/Serializer.kt b/scalabot-meta/src/main/kotlin/serializer/Serializer.kt index 1341272..2ff6a90 100644 --- a/scalabot-meta/src/main/kotlin/serializer/Serializer.kt +++ b/scalabot-meta/src/main/kotlin/serializer/Serializer.kt @@ -9,7 +9,6 @@ import org.eclipse.aether.artifact.DefaultArtifact import org.eclipse.aether.repository.Authentication import org.eclipse.aether.repository.Proxy import org.eclipse.aether.util.repository.AuthenticationBuilder -import org.telegram.telegrambots.meta.ApiConstants import java.lang.reflect.Type import java.net.MalformedURLException import java.net.URL @@ -222,6 +221,8 @@ object ProxyConfigSerializer : JsonSerializer, JsonDeserializer, JsonDeserializer { + private val defaultConfig = BotConfig(account = BotAccount("__Default__", "__Default__", 0)) + override fun serialize(src: BotConfig, typeOfSrc: Type, context: JsonSerializationContext): JsonElement { return JsonObject().apply { addProperty("enabled", src.enabled) @@ -247,14 +248,14 @@ object BotConfigSerializer : JsonSerializer, JsonDeserializer>() {}.type) - ?: emptySet(), - proxy = context.deserialize(json.get("proxy"), ProxyConfig::class.java) ?: ProxyConfig(), - baseApiUrl = json.get("baseApiUrl")?.asString ?: ApiConstants.BASE_URL + ?: defaultConfig.extensions, + proxy = context.deserialize(json.get("proxy"), ProxyConfig::class.java) ?: defaultConfig.proxy, + baseApiUrl = json.get("baseApiUrl")?.asString ?: defaultConfig.baseApiUrl ) } }