From eb5d11329854fd478fa38d74216ea76acf30e5b5 Mon Sep 17 00:00:00 2001 From: Vitor Pamplona Date: Mon, 7 Jul 2025 13:48:39 -0400 Subject: [PATCH] new map of set api --- .../event/loaders/FilterMissingEvents.kt | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/service/relayClient/reqCommand/event/loaders/FilterMissingEvents.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/service/relayClient/reqCommand/event/loaders/FilterMissingEvents.kt index fb8cc330ac..ced79d5a0b 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/service/relayClient/reqCommand/event/loaders/FilterMissingEvents.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/service/relayClient/reqCommand/event/loaders/FilterMissingEvents.kt @@ -22,12 +22,12 @@ package com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.loaders import com.vitorpamplona.amethyst.model.AddressableNote import com.vitorpamplona.amethyst.model.LocalCache +import com.vitorpamplona.amethyst.model.LocalCache.relayHints import com.vitorpamplona.amethyst.service.relayClient.reqCommand.event.EventFinderQueryState import com.vitorpamplona.quartz.nip01Core.core.HexKey import com.vitorpamplona.quartz.nip01Core.relay.client.pool.RelayBasedFilter import com.vitorpamplona.quartz.nip01Core.relay.filters.Filter -import com.vitorpamplona.quartz.nip01Core.relay.normalizer.NormalizedRelayUrl -import com.vitorpamplona.quartz.utils.MapOfSetBuilder +import com.vitorpamplona.quartz.utils.mapOfSet fun filterMissingEvents(keys: List): List? { val missingEvents = mutableSetOf() @@ -51,15 +51,16 @@ fun filterMissingEvents(keys: List): List): List { if (missingEventIds.isEmpty()) return emptyList() - val relayHints = MapOfSetBuilder() - - missingEventIds.forEach { eventId -> - LocalCache.relayHints.hintsForEvent(eventId).forEach { relayUrl -> - relayHints.add(relayUrl, eventId) + val relayHints = + mapOfSet { + missingEventIds.forEach { eventId -> + LocalCache.relayHints.hintsForEvent(eventId).forEach { relayUrl -> + add(relayUrl, eventId) + } + } } - } - return relayHints.build().map { + return relayHints.map { RelayBasedFilter( relay = it.key, filter = Filter(ids = it.value.sorted()),