18 lines
549 B
Rust
18 lines
549 B
Rust
pub mod dhcp_leases;
|
|
pub mod dummy_sender;
|
|
pub mod wifi_availability;
|
|
|
|
use crate::monitor::*;
|
|
|
|
pub fn factory(
|
|
name: &str,
|
|
config: serde_yaml::Value,
|
|
) -> Result<Box<Monitor>, Box<dyn std::error::Error>> {
|
|
match name {
|
|
"dummy_sender" => Ok(Box::new(dummy_sender::DummySender::new(config)?)),
|
|
"wifi_availability" => Ok(Box::new(wifi_availability::WifiAvailability::new(config)?)),
|
|
"dhcp_leases" => Ok(Box::new(dhcp_leases::DHCPLeases::new(config)?)),
|
|
_ => panic!("Unknown monitor name: {}", name),
|
|
}
|
|
}
|