use std::time::Duration;
use crate::DEFAULT_DISCOVERY_ADDRESSES;
pub const DEFAULT_READ_TIMEOUT: Duration = Duration::from_secs(1);
pub const DEFAULT_WRITE_TIMEOUT: Duration = Duration::from_secs(1);
pub const DEFAULT_MAX_READ_LENGTH: u16 = 125;
pub const DEFAULT_MAX_WRITE_LENGTH: u16 = 123;
#[derive(Debug, Clone)]
pub struct Config {
pub discovery_addresses: Vec<u16>,
pub read_timeout: Option<Duration>,
pub max_read_length: u16,
pub write_timeout: Option<Duration>,
pub max_write_length: u16,
}
impl Default for Config {
fn default() -> Self {
Self {
discovery_addresses: DEFAULT_DISCOVERY_ADDRESSES.into(),
read_timeout: Some(DEFAULT_READ_TIMEOUT),
write_timeout: Some(DEFAULT_WRITE_TIMEOUT),
max_read_length: DEFAULT_MAX_READ_LENGTH,
max_write_length: DEFAULT_MAX_WRITE_LENGTH,
}
}
}