use super::{config::Config, logger};
use crate::{component, Application, Component, FrameworkError, Version};
#[derive(Debug, Default)]
pub struct LoggingComponent {
config: Config,
}
impl LoggingComponent {
pub fn new(config: Config) -> Result<Self, FrameworkError> {
logger::init(&config);
Ok(Self { config })
}
}
impl<A> Component<A> for LoggingComponent
where
A: Application,
{
fn name(&self) -> component::Name {
component::Name("abscissa_core::logging")
}
fn version(&self) -> Version {
Version::new(0, 0, 0)
}
fn after_config(&mut self, _config: &A::Cfg) -> Result<(), FrameworkError> {
Ok(())
}
}