mirror of
https://github.com/comit-network/xmr-btc-swap.git
synced 2025-01-24 14:22:35 -05:00
Merge #617
617: Sort seller list inside of `list_sellers` r=thomaseizinger a=da-kami By sorting the list inside we have a more deterministic output that makes processing in JSON easier. Co-authored-by: Daniel Karzel <daniel@comit.network>
This commit is contained in:
commit
41982e0ff9
@ -285,7 +285,7 @@ async fn main() -> Result<()> {
|
||||
.context("Failed to read in seed file")?;
|
||||
let identity = seed.derive_libp2p_identity();
|
||||
|
||||
let mut sellers = list_sellers(
|
||||
let sellers = list_sellers(
|
||||
rendezvous_node_peer_id,
|
||||
rendezvous_point,
|
||||
namespace,
|
||||
@ -293,7 +293,6 @@ async fn main() -> Result<()> {
|
||||
identity,
|
||||
)
|
||||
.await?;
|
||||
sellers.sort();
|
||||
|
||||
if json {
|
||||
for seller in sellers {
|
||||
|
@ -15,6 +15,12 @@ use std::collections::hash_map::Entry;
|
||||
use std::collections::HashMap;
|
||||
use std::time::Duration;
|
||||
|
||||
/// Returns sorted list of sellers, with [Online](Status::Online) listed first.
|
||||
///
|
||||
/// First uses the rendezvous node to discover peers in the given namespace,
|
||||
/// then fetches a quote from each peer that was discovered. If fetching a quote
|
||||
/// from a discovered peer fails the seller's status will be
|
||||
/// [Unreachable](Status::Unreachable).
|
||||
pub async fn list_sellers(
|
||||
rendezvous_node_peer_id: PeerId,
|
||||
rendezvous_node_addr: Multiaddr,
|
||||
@ -289,7 +295,10 @@ impl EventLoop {
|
||||
.collect::<Result<Vec<_>, _>>();
|
||||
|
||||
match all_quotes_fetched {
|
||||
Ok(sellers) => break sellers,
|
||||
Ok(mut sellers) => {
|
||||
sellers.sort();
|
||||
break sellers;
|
||||
}
|
||||
Err(StillPending {}) => continue,
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user