1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
/*
* Hanzo Cloud API
*
* The Hanzo Cloud API as a customer calls it: every operation under /v1/ except the operator's admin product, relay routes, legacy spellings and capabilities still reached by flag. Tagged by product: the first path segment after /v1/.
*
* The version of the OpenAPI document: v1
*
* Generated by: https://openapi-generator.tech
*/
use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct RiskCatalog {
/// Gap says why a lens could not be measured, when that is the case. Each reason names its own lens, because \"the surface is unreadable\" and \"the network baseline is unreadable\" are different facts.
#[serde(rename = "gap", skip_serializing_if = "Option::is_none")]
pub gap: Option<String>,
/// Model is the governed inventory: one entry per dimension of the model space, each carrying the typology it serves and the published standard that asks for it. It is the same for every organisation, because it is the model's shape.
#[serde(rename = "model", skip_serializing_if = "Option::is_none")]
pub model: Option<Vec<models::RiskModelFeature>>,
/// Network is the published cross-organisation baseline over the same window, so the surface above has something to be read AGAINST. It is the same for every caller and it names nobody. It carries no tenant and cannot be made to: the table it reads has no org column, every figure is a quantile over at least kAnonOrgs organisations weighted one vote each, and a band that does not meet that floor is dropped on the way out.
#[serde(rename = "network", skip_serializing_if = "Option::is_none")]
pub network: Option<Vec<models::RiskBand>>,
/// Surface is what this organisation's own event surface carries, per dimension, measured over the window. A dimension present in no bucket is blind here — the model reads its neutral value and a reviewer has to be able to see that.
#[serde(rename = "surface", skip_serializing_if = "Option::is_none")]
pub surface: Option<Vec<models::RiskOrgFeature>>,
/// Tenant is whose surface was measured.
#[serde(rename = "tenant", skip_serializing_if = "Option::is_none")]
pub tenant: Option<String>,
}
impl RiskCatalog {
pub fn new() -> RiskCatalog {
RiskCatalog {
gap: None,
model: None,
network: None,
surface: None,
tenant: None,
}
}
}