2017-05-09 23:39:21 -05:00

35 lines
890 B
Rust

use modules::{Module, EventLoop};
use toml::Table;
use std::sync::Arc;
use std::sync::mpsc::Receiver;
use transformable_channels::mpsc::ExtSender;
use helpers::command::split_command;
use event::{Event, Envelope};
pub struct LoggerModule {}
impl LoggerModule {
pub fn new (_: &Table, configuration: &Table) -> Module {
Module {
module_type: String::from("logger"),
event_loop: Box::new(LoggerModule {}),
config: configuration.clone()
}
}
}
impl EventLoop for LoggerModule {
fn run(&self, _: Box<ExtSender<Envelope>>, receiver: Receiver<Arc<Envelope>>) {
loop {
match receiver.recv() {
Ok(envelope) => {
info!("Received event envelope: {:?}", envelope);
}
Err(error) => { error!("Error {:?}", error) }
}
}
}
}