From e7be1cc8e73458b537b8163494b62aef89f20142 Mon Sep 17 00:00:00 2001 From: Vitor Pamplona Date: Sat, 4 Mar 2023 08:04:14 -0500 Subject: [PATCH] Speeding up findCitations algorithm --- .../amethyst/model/LocalCache.kt | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/vitorpamplona/amethyst/model/LocalCache.kt b/app/src/main/java/com/vitorpamplona/amethyst/model/LocalCache.kt index ae3f07104..039c6635c 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/model/LocalCache.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/model/LocalCache.kt @@ -75,6 +75,9 @@ object LocalCache { } fun checkGetOrCreateNote(key: String): Note? { + if (key.startsWith("naddr1")) { + return checkGetOrCreateAddressableNote(key) + } return try { val checkHex = Hex.decode(key).toNote() // Checks if this is a valid Hex getOrCreateNote(key) @@ -268,15 +271,29 @@ object LocalCache { } private fun replyToWithoutCitations(event: TextNoteEvent): List { + val repliesTo = event.replyTos() + if (repliesTo.isEmpty()) return repliesTo + val citations = findCitations(event) - return event.replyTos().filter { it !in citations } + return if (citations.isEmpty()) { + repliesTo + } else { + repliesTo.filter { it !in citations } + } } private fun replyToWithoutCitations(event: LongTextNoteEvent): List { + val repliesTo = event.replyTos() + if (repliesTo.isEmpty()) return repliesTo + val citations = findCitations(event) - return event.replyTos().filter { it !in citations } + return if (citations.isEmpty()) { + repliesTo + } else { + repliesTo.filter { it !in citations } + } } fun consume(event: RecommendRelayEvent) {