Jorge Bo
04/06/2022, 4:16 PMjson {
serializersModule = SerializersModule {
contextual(Map::class) { MarketMapSerializer }
}
}
object MarketMapSerializer :
JsonTransformingSerializer<Map<String, Market>>(MapSerializer(String.serializer(), Market.serializer())) {
override fun transformDeserialize(element: JsonElement): JsonElement {
return JsonObject(element.jsonObject.filterNot { (k, _) ->
k == "token"
})
}
}
Aleksei Tirman [JB]
04/07/2022, 9:41 AMJorge Bo
04/08/2022, 12:09 PMjson {
serializersModule = SerializersModule {
contextual(Map::class) { MarketMapSerializer }
contextual(Map::class) { StationMapSerializer }}
}
object MarketMapSerializer :
JsonTransformingSerializer<Map<String, Market>>(MapSerializer(String.serializer(), Market.serializer())) {
override fun transformDeserialize(element: JsonElement): JsonElement {
return JsonObject(element.jsonObject.filterNot { (k, _) ->
k == "token"
})
}
}
object StationMapSerializer :
JsonTransformingSerializer<Map<String, Station>>(MapSerializer(String.serializer(), Station.serializer())) {
override fun transformDeserialize(element: JsonElement): JsonElement {
return JsonObject(element.jsonObject.filterNot { (k, _) ->
k == "token"
})
}
}
Exception in thread "main" kotlinx.serialization.modules.SerializerAlreadyRegisteredException: Contextual serializer or serializer provider for class kotlin.collections.Map already registered in this moduleAleksei Tirman [JB]
04/08/2022, 3:00 PM