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 presence;
|
||||||
pub mod ping;
|
pub mod ping;
|
||||||
pub mod stanza;
|
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