#![allow(dead_code)]
use std::fmt;
use flogging::*;
#[derive(Debug, Clone, Hash, PartialEq, Eq)]
pub(crate) struct CustomFormatter {
dt_fmt: String,
fmt_string: String,
}
impl CustomFormatter {
pub fn new() -> Self {
Self {
dt_fmt: "".to_string(),
fmt_string: "CustomFormatter [{level:7}] {message}".to_string(),
}
}
pub fn dt_fmt(&self)-> String{
self.dt_fmt.clone()
}
pub fn fmt_string(&self)-> String{
self.fmt_string.clone()
}
}
impl Default for CustomFormatter {
fn default() -> Self {
Self::new()
}
}
impl fmt::Display for CustomFormatter {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
write!(
f,
"dt_fmt: \"{}\" - fmt_string: \"{}\"",
self.dt_fmt, self.fmt_string
)
}
}
impl FormatTrait for CustomFormatter {
fn format(&self, log_entry: &LogEntry) -> String {
self.ft_fmt(self.dt_fmt(), self.fmt_string(), log_entry)
}
}