Pushpendra Parmar
04/05/2023, 1:31 AMMap<RealmUUID, Long>
I created this serializer but don't know how to use
@OptIn(ExperimentalSerializationApi::class)
@Serializer(forClass = RealmUUID::class)
object RealmUUIDSerializer : KSerializer<RealmUUID> {
override val descriptor: SerialDescriptor = PrimitiveSerialDescriptor("RealmUUID", PrimitiveKind.STRING)
override fun serialize(encoder: Encoder, value: RealmUUID) {
val string = value.toString()
encoder.encodeString(string)
}
override fun deserialize(decoder: Decoder): RealmUUID {
val string = decoder.decodeString()
return RealmUUID.from(string)
}
}
Emil Kantis
04/05/2023, 7:26 AMMap<@Serializable(with = RealmUUIDSerializer::class) RealmUUID, Long>
Pushpendra Parmar
04/05/2023, 3:57 PMcan't be used in JSON as a key in the map. It should have either primitive or enum kind
but found another way using
json.encodeToString(MapSerializer(RealmUUIDSerializer, Long.serializer()), objectMetadataList)