nullnet-wallguard-server 0.2.3

A centralized management system for network firewalls
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
use nullnet_libdatastore::ResponseData;
use nullnet_liberror::{location, Error, ErrorHandler, Location};

pub fn parse_configuraion_id(response: &ResponseData) -> Result<String, Error> {
    let json: serde_json::Value = serde_json::from_str(&response.data).handle_err(location!())?;

    json.as_array()
        .and_then(|arr| arr.first())
        .and_then(|obj| obj.as_object())
        .and_then(|map| map.get("id"))
        .and_then(|v| v.as_str())
        .map(std::string::ToString::to_string)
        .ok_or(String::from("Failed to parse"))
        .handle_err(location!())
}