removes mutable list in Client.

This commit is contained in:
Vitor Pamplona
2023-02-04 13:30:15 -05:00
parent 3e08256347
commit ea59568b6f

View File

@@ -25,7 +25,7 @@ object Client: RelayPool.Listener {
var lenient: Boolean = false var lenient: Boolean = false
private var listeners = setOf<Listener>() private var listeners = setOf<Listener>()
private var relays = Constants.defaultRelays private var relays = Constants.defaultRelays
private val subscriptions = mutableMapOf<String, List<JsonFilter>>() private var subscriptions = mapOf<String, List<JsonFilter>>()
fun connect(relays: Array<Relay> = Constants.defaultRelays) { fun connect(relays: Array<Relay> = Constants.defaultRelays) {
RelayPool.register(this) RelayPool.register(this)
@@ -38,7 +38,7 @@ object Client: RelayPool.Listener {
subscriptionId: String = UUID.randomUUID().toString().substring(0..10), subscriptionId: String = UUID.randomUUID().toString().substring(0..10),
filters: List<JsonFilter> = listOf(JsonFilter()) filters: List<JsonFilter> = listOf(JsonFilter())
) { ) {
subscriptions[subscriptionId] = filters subscriptions = subscriptions + Pair(subscriptionId, filters)
RelayPool.sendFilter(subscriptionId) RelayPool.sendFilter(subscriptionId)
} }
@@ -46,7 +46,7 @@ object Client: RelayPool.Listener {
subscriptionId: String = UUID.randomUUID().toString().substring(0..10), subscriptionId: String = UUID.randomUUID().toString().substring(0..10),
filters: List<JsonFilter> = listOf(JsonFilter()) filters: List<JsonFilter> = listOf(JsonFilter())
) { ) {
subscriptions[subscriptionId] = filters subscriptions = subscriptions + Pair(subscriptionId, filters)
RelayPool.sendFilterOnlyIfDisconnected() RelayPool.sendFilterOnlyIfDisconnected()
} }
@@ -89,9 +89,7 @@ object Client: RelayPool.Listener {
} }
fun allSubscriptions(): List<String> { fun allSubscriptions(): List<String> {
return synchronized(subscriptions) { return subscriptions.keys.toList()
subscriptions.keys.toList()
}
} }
fun getSubscriptionFilters(subId: String): List<JsonFilter> { fun getSubscriptionFilters(subId: String): List<JsonFilter> {