pub type ZoeClientMessageManager = MultiRelayMessageManager<ZoeClientStorage>;Aliased Type§
pub struct ZoeClientMessageManager {
relay_connections: Arc<RwLock<BTreeMap<KeyId, RelayConnection>>>,
storage: Arc<SqliteMessageStorage>,
global_events_tx: Sender<MessageEvent>,
global_messages_tx: Sender<StreamMessage>,
global_catchup_tx: Sender<CatchUpResponse>,
catch_up_tasks: Arc<RwLock<BTreeMap<KeyId, JoinHandle<()>>>>,
}Fields§
§relay_connections: Arc<RwLock<BTreeMap<KeyId, RelayConnection>>>Map of relay ID to relay connection info
storage: Arc<SqliteMessageStorage>Storage for message persistence and offline queuing
global_events_tx: Sender<MessageEvent>Global message event broadcaster (aggregates from all relays)
global_messages_tx: Sender<StreamMessage>Global message broadcaster (aggregates from all relays)
global_catchup_tx: Sender<CatchUpResponse>Global catch-up response broadcaster
catch_up_tasks: Arc<RwLock<BTreeMap<KeyId, JoinHandle<()>>>>Map of active catch-up tasks by relay ID