add a stanza_debug plugin, printing every stanza on stdout
This commit is contained in:
parent
ac7c907e9f
commit
66bf10b941
2 changed files with 30 additions and 0 deletions
|
@ -2,3 +2,4 @@ pub mod messaging;
|
|||
pub mod presence;
|
||||
pub mod ping;
|
||||
pub mod stanza;
|
||||
pub mod stanza_debug;
|
||||
|
|
29
src/plugins/stanza_debug.rs
Normal file
29
src/plugins/stanza_debug.rs
Normal file
|
@ -0,0 +1,29 @@
|
|||
use plugin::PluginProxy;
|
||||
use event::{SendElement, ReceiveElement, Propagation, Priority};
|
||||
|
||||
pub struct StanzaDebugPlugin {
|
||||
proxy: PluginProxy,
|
||||
}
|
||||
|
||||
impl StanzaDebugPlugin {
|
||||
pub fn new() -> StanzaDebugPlugin {
|
||||
StanzaDebugPlugin {
|
||||
proxy: PluginProxy::new(),
|
||||
}
|
||||
}
|
||||
|
||||
fn handle_send_element(&self, evt: &SendElement) -> Propagation {
|
||||
println!("[36;1mSEND[0m: {:?}", evt.0);
|
||||
Propagation::Continue
|
||||
}
|
||||
|
||||
fn handle_receive_element(&self, evt: &ReceiveElement) -> Propagation {
|
||||
println!("[33;1mRECV[0m: {:?}", evt.0);
|
||||
Propagation::Continue
|
||||
}
|
||||
}
|
||||
|
||||
impl_plugin!(StanzaDebugPlugin, proxy, [
|
||||
(SendElement, Priority::Min) => handle_send_element,
|
||||
(ReceiveElement, Priority::Max) => handle_receive_element,
|
||||
]);
|
Loading…
Reference in a new issue