[][src]Module streamson_lib::handler::replace

Handler which replaces output by fixed data it can be used a.g. to clear the sensitive data e.g. "secred_password" -> `"***"

Example

use streamson_lib::{handler, matcher, strategy};
use std::sync::{Arc, Mutex};

let handler = Arc::new(Mutex::new(handler::Replace::new(br#"***"#.to_vec())));
let matcher = matcher::Simple::new(r#"{"users"}[]{"password"}"#).unwrap();

let mut convert = strategy::Convert::new();

// Set the matcher for convert strategy
convert.add_matcher(Box::new(matcher), vec![handler]);

for input in vec![
    br#"{"users": [{"password": "1234", "name": "first"}, {"#.to_vec(),
    br#""password": "0000", "name": "second}]}"#.to_vec(),
] {
    for converted_data in convert.process(&input).unwrap() {
        println!("{:?} (len {})", converted_data, converted_data.len());
    }
}

Structs

Replace

Replace handler which converts matched data to fixed output