forked from ITStudio_OUC/itstudio_manager
refactor: better SerializersModule structure
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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<BigDecimal> {
|
||||
@@ -29,7 +27,3 @@ object BigDecimalSerializer : KSerializer<BigDecimal> {
|
||||
return element.content.toBigDecimal()
|
||||
}
|
||||
}
|
||||
|
||||
val customSerializersModule = SerializersModule {
|
||||
contextual(BigDecimalSerializer)
|
||||
}
|
||||
Reference in New Issue
Block a user