nautilus_sockets/plugins/
logging.rs1use std::io::{self, Write};
2
3use crate::{client::NautClient, server::NautServer};
4
5use super::SocketPlugin;
6
7pub struct LoggingPlugin;
9
10impl SocketPlugin<'_, NautServer> for LoggingPlugin {
11 fn register(&self, socket: &mut crate::prelude::NautSocket<'_, NautServer>) {
12 socket.on_poll(move |socket| {
13 let stdout = io::stdout();
14 let mut handle = stdout.lock();
15 for event in socket.server().iter_server_events() {
16 let _ = writeln!(handle, "[LOG][SERVER EVENT] {event:?}");
17 }
18 });
19
20 socket.on_poll(move |socket| {
21 let stdout = io::stdout();
22 let mut handle = stdout.lock();
23 for event in socket.socket_events.iter() {
24 let _ = writeln!(handle, "[LOG][SOCKET EVENT] {event:?}");
25 }
26 });
27 }
28}
29
30impl SocketPlugin<'_, NautClient> for LoggingPlugin {
31 fn register(&self, socket: &mut crate::prelude::NautSocket<'_, NautClient>) {
32 socket.on_poll(move |server| {
33 let stdout = io::stdout();
34 let mut handle = stdout.lock();
35 for event in server.socket_events.iter() {
36 let _ = writeln!(handle, "[LOG][SOCKET EVENT] {event:?}");
37 }
38 });
39 }
40}