Skip to main content

middleware_core/
discovery.rs

1use std::collections::{HashMap, HashSet};
2
3use transport_core::Endpoint;
4
5mod lease_health;
6mod query;
7mod registration;
8mod state_helpers;
9mod static_io;
10mod types;
11
12pub use self::types::{DiscoveryEndpoint, DiscoveryEntry, DiscoveryPruneReport, DiscoverySnapshot};
13
14use self::types::DiscoveryState;
15
16#[derive(Default)]
17pub struct SimpleDiscovery {
18    topics: HashSet<String>,
19    services: HashSet<String>,
20    missions: HashSet<String>,
21    labels: HashMap<String, Vec<String>>,
22    endpoints: HashMap<String, Endpoint>,
23    topic_state: HashMap<String, DiscoveryState>,
24    service_state: HashMap<String, DiscoveryState>,
25    mission_state: HashMap<String, DiscoveryState>,
26    endpoint_state: HashMap<String, DiscoveryState>,
27}
28
29impl SimpleDiscovery {}