receiving initial messages!

This commit is contained in:
William Casarin
2022-12-11 18:34:43 -08:00
parent 5619ae60ad
commit 98adb82e56
7 changed files with 117 additions and 22 deletions

View File

@@ -4,13 +4,13 @@ use crate::Result;
use tracing::error;
#[derive(Debug)]
pub struct PoolMessage<'a> {
relay: &'a str,
event: RelayEvent,
pub struct PoolEvent<'a> {
pub relay: &'a str,
pub event: RelayEvent,
}
pub struct RelayPool {
relays: Vec<Relay>,
pub relays: Vec<Relay>,
}
impl Default for RelayPool {
@@ -47,12 +47,12 @@ impl RelayPool {
Ok(())
}
pub fn try_recv(&self) -> Option<PoolMessage<'_>> {
pub fn try_recv(&self) -> Option<PoolEvent<'_>> {
for relay in &self.relays {
if let Some(msg) = relay.receiver.try_recv() {
match msg.try_into() {
Ok(event) => {
return Some(PoolMessage {
return Some(PoolEvent {
event,
relay: &relay.url,
});