improve parsing

pull/860/head
Believethehype 2024-05-16 14:07:11 +02:00
rodzic 51335e06f1
commit 7f2b8519f3
1 zmienionych plików z 9 dodań i 18 usunięć

Wyświetl plik

@ -25,7 +25,6 @@ import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper
import com.vitorpamplona.amethyst.model.Account
import com.vitorpamplona.amethyst.model.LocalCache
import com.vitorpamplona.amethyst.model.Note
import com.vitorpamplona.quartz.encoders.toHexKey
import com.vitorpamplona.quartz.events.MuteListEvent
import com.vitorpamplona.quartz.events.NIP90ContentDiscoveryResponseEvent
import com.vitorpamplona.quartz.events.PeopleListEvent
@ -66,14 +65,10 @@ open class NIP90ContentDiscoveryFilter(
var collection: MutableSet<Note> = mutableSetOf()
val mapper = jacksonObjectMapper().configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false)
var json = mapper.readValue(eventContent, Array::class.java)
for (element in json) {
// var test = mapper.readValue(element.toString(), Array::class.java)
// TODO. This is ugly. how to Kotlin?
var id = element.toString().trimStart('[').trimStart('e').trimStart(',').trimEnd(']').trimStart().trimEnd()
var note = LocalCache.checkGetOrCreateNote(id)
var etags = mapper.readValue(eventContent, List::class.java)
for (element in etags) {
var tag = mapper.readValue(mapper.writeValueAsString(element), Array::class.java)
val note = LocalCache.checkGetOrCreateNote(tag[1].toString())
if (note != null) {
collection.add(note)
}
@ -113,19 +108,15 @@ open class NIP90ContentDiscoveryFilter(
var note = sorted.first()
var eventContent = note.event?.content()
println(eventContent)
// println(eventContent)
val collection: MutableSet<Note> = mutableSetOf()
val mapper = jacksonObjectMapper().configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false)
var json = mapper.readValue(eventContent, Array::class.java)
for (element in json) {
// var test = mapper.readValue(element.toString(), Array::class.java)
// TODO. This is ugly. how to Kotlin?
var id = element.toString().trimStart('[').trimStart('e').trimStart(',').trimEnd(']').trimStart().trimEnd()
val note = LocalCache.checkGetOrCreateNote(id)
var etags = mapper.readValue(eventContent, Array::class.java)
for (element in etags) {
var tag = mapper.readValue(mapper.writeValueAsString(element), Array::class.java)
val note = LocalCache.checkGetOrCreateNote(tag[1].toString())
if (note != null) {
println(note.id().toHexKey())
collection.add(note)
}
}