Kuba Petržílka
02/25/2021, 2:52 PMoverride fun deserialize(decoder: Decoder): NonEmptyString {
val decodedValue = decoder.decodeString()
when (val result = NonEmptyString.of(decodedValue)) {
is Success -> return result.value
is Failure -> throw SerializationException(
"Unable to deserialize '$decodedValue' of $FIELD_NAME into ${descriptor.serialName}: ${result.error.message}"
)
}
}
I need to see the context in the exception because there are many feilds of type NonEmptyString in the json document being deserializedDominaezzz
02/25/2021, 2:56 PMKuba Petržílka
02/25/2021, 3:01 PMDominaezzz
02/25/2021, 3:21 PMKuba Petržílka
02/25/2021, 5:17 PMchristophsturm
02/26/2021, 12:27 PMKuba Petržílka
02/27/2021, 10:42 AMkotlinx.serialization.SerializationException: Unable to deserialize NonEmptyString from '': Provided string value cannot be empty
at com.example.someapp.model.generic.NonEmptyStringSerializer.deserialize(GenericTypes.kt:48)
at com.example.someapp.model.generic.NonEmptyStringSerializer.deserialize(GenericTypes.kt:38)
at kotlinx.serialization.json.internal.PolymorphicKt.decodeSerializableValuePolymorphic(Polymorphic.kt:63)
at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:32)
at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
at kotlinx.serialization.encoding.AbstractDecoder.decodeNullableSerializableElement(AbstractDecoder.kt:79)
at com.example.someapp.model.SomeDomainObject$$serializer.deserialize(Domain.kt:56)
at com.example.someapp.model.SomeDomainObject$$serializer.deserialize(Domain.kt:56)
at kotlinx.serialization.json.internal.PolymorphicKt.decodeSerializableValuePolymorphic(Polymorphic.kt:63)
at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:32)
at kotlinx.serialization.json.Json.decodeFromString(Json.kt:85)
at com.example.someapp.function.request.ParsePayloadFunction.invoke-Ngtr28s(ParsePayloadFunction.kt:17)