From 5aefa7ea22b9ebc285b1441dc319516e5983dbce Mon Sep 17 00:00:00 2001 From: a10zn8 Date: Fri, 18 Nov 2022 19:47:35 +0400 Subject: [PATCH] describe should return all chains with upstream, not only available --- .../emeraldpay/dshackle/upstream/CurrentMultistreamHolder.kt | 2 +- src/main/kotlin/io/emeraldpay/dshackle/upstream/Multistream.kt | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/kotlin/io/emeraldpay/dshackle/upstream/CurrentMultistreamHolder.kt b/src/main/kotlin/io/emeraldpay/dshackle/upstream/CurrentMultistreamHolder.kt index e4f6029d..54a152b3 100644 --- a/src/main/kotlin/io/emeraldpay/dshackle/upstream/CurrentMultistreamHolder.kt +++ b/src/main/kotlin/io/emeraldpay/dshackle/upstream/CurrentMultistreamHolder.kt @@ -36,7 +36,7 @@ open class CurrentMultistreamHolder( override fun getAvailable(): List { return chainMapping.values.asSequence() - .filter { it.isAvailable() } + .filter { it.haveUpstreams() } .map { it.chain } .toList() } diff --git a/src/main/kotlin/io/emeraldpay/dshackle/upstream/Multistream.kt b/src/main/kotlin/io/emeraldpay/dshackle/upstream/Multistream.kt index 30fa4f24..b6de244c 100644 --- a/src/main/kotlin/io/emeraldpay/dshackle/upstream/Multistream.kt +++ b/src/main/kotlin/io/emeraldpay/dshackle/upstream/Multistream.kt @@ -349,6 +349,9 @@ abstract class Multistream( } } + fun haveUpstreams(): Boolean = + upstreams.isNotEmpty() + // -------------------------------------------------------------------------------------------------------- class UpstreamStatus(val upstream: Upstream, val status: UpstreamAvailability, val ts: Instant = Instant.now())