Skip to main content

ripestat_common/resources/
prefix_overview.rs

1use serde::{Deserialize, Serialize};
2use serde_json::Value;
3
4#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
5pub struct PrefixOverviewRequest {
6    pub resource: String,
7    pub min_peers_seeing: Option<i64>,
8    pub max_related: Option<i64>,
9    pub query_time: Option<String>,
10}
11
12#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
13pub struct PrefixOverviewResponse {
14    pub is_less_specific: bool,
15    pub announced: bool,
16    pub asns: Vec<Asn>,
17    pub related_prefixes: Vec<Value>,
18    pub resource: String,
19    #[serde(rename = "type")]
20    pub prefix_overview_type: String,
21    pub block: Block,
22    pub actual_num_related: i64,
23    pub query_time: String,
24    pub num_filtered_out: i64,
25}
26
27#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
28pub struct Asn {
29    pub asn: i64,
30    pub holder: String,
31}
32
33#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
34pub struct Block {
35    pub resource: String,
36    pub desc: String,
37    pub name: String,
38}