Module replace

Module replace 

Source
Expand description

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

§Example

use streamson_lib::{handler, matcher, strategy::{self, 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), 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!("{:?}", converted_data);
    }
}

Structs§

Replace
Replace handler which converts matched data to fixed output