From 1bacf534b962ed9f3bc6cde2eae1469ebab63f65 Mon Sep 17 00:00:00 2001 From: server_main Date: Tue, 18 Aug 2026 10:40:18 +0000 Subject: [PATCH] refactor: better SerializersModule structure --- .../club/itstudio/itmanager/config/SerializationConfig.kt | 8 ++++++-- .../club/itstudio/itmanager/utils/BigDecimalSerializer.kt | 6 ------ 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/src/backend/src/main/kotlin/club/itstudio/itmanager/config/SerializationConfig.kt b/src/backend/src/main/kotlin/club/itstudio/itmanager/config/SerializationConfig.kt index bd3a8cc..2e99c14 100644 --- a/src/backend/src/main/kotlin/club/itstudio/itmanager/config/SerializationConfig.kt +++ b/src/backend/src/main/kotlin/club/itstudio/itmanager/config/SerializationConfig.kt @@ -1,7 +1,9 @@ package club.itstudio.itmanager.config -import club.itstudio.itmanager.utils.customSerializersModule +import club.itstudio.itmanager.utils.BigDecimalSerializer import kotlinx.serialization.json.Json +import kotlinx.serialization.modules.SerializersModule +import kotlinx.serialization.modules.contextual import org.springframework.context.annotation.Bean import org.springframework.context.annotation.Configuration @@ -10,7 +12,9 @@ class SerializationConfig { @Bean fun kotlinxSerializationJson(): Json = Json { - serializersModule = customSerializersModule + serializersModule = SerializersModule { + contextual(BigDecimalSerializer) + } ignoreUnknownKeys = true isLenient = true encodeDefaults = false diff --git a/src/backend/src/main/kotlin/club/itstudio/itmanager/utils/BigDecimalSerializer.kt b/src/backend/src/main/kotlin/club/itstudio/itmanager/utils/BigDecimalSerializer.kt index ab3c152..3999e2d 100644 --- a/src/backend/src/main/kotlin/club/itstudio/itmanager/utils/BigDecimalSerializer.kt +++ b/src/backend/src/main/kotlin/club/itstudio/itmanager/utils/BigDecimalSerializer.kt @@ -9,8 +9,6 @@ import kotlinx.serialization.encoding.Decoder import kotlinx.serialization.encoding.Encoder import kotlinx.serialization.json.JsonDecoder import kotlinx.serialization.json.JsonPrimitive -import kotlinx.serialization.modules.SerializersModule -import kotlinx.serialization.modules.contextual import java.math.BigDecimal object BigDecimalSerializer : KSerializer { @@ -28,8 +26,4 @@ object BigDecimalSerializer : KSerializer { } return element.content.toBigDecimal() } -} - -val customSerializersModule = SerializersModule { - contextual(BigDecimalSerializer) } \ No newline at end of file