use super::logger::{LogLevel, LoggerConfig};
#[derive(Clone, Debug, serde::Serialize, serde::Deserialize)]
pub struct StreamingConfig {
#[serde(default)]
pub logger: LoggerConfig<StreamingLogLevel>,
#[serde(default = "default_max_streams")]
pub max_streams: u8,
}
impl Default for StreamingConfig {
fn default() -> Self {
Self {
logger: Default::default(),
max_streams: default_max_streams(),
}
}
}
fn default_max_streams() -> u8 {
1
}
#[derive(Default, Clone, Copy, Debug, serde::Serialize, serde::Deserialize)]
pub enum StreamingLogLevel {
#[default]
#[serde(rename = "disabled")]
Disabled,
#[serde(rename = "basic")]
Basic,
#[serde(rename = "full")]
Full,
}
impl LogLevel for StreamingLogLevel {}