Skip to main content

ripestat_common/resources/
ris_prefixes.rs

1use serde::{Deserialize, Serialize};
2
3#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
4pub struct RisPrefixesRequest {
5    pub resource: String,
6    pub query_time: Option<String>,
7    pub list_prefixes: Option<bool>,
8    pub types: Option<String>,
9    pub af: Option<String>,
10    pub noise: Option<String>,
11}
12
13#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
14pub struct RisPrefixesResponse {
15    pub counts: PrefixCounts,
16    pub resource: String,
17    pub query_time: String,
18    pub list_prefixes: bool,
19    pub af: Vec<String>,
20    pub types: Vec<String>,
21    pub noise: Vec<String>,
22    pub cache: Option<bool>,
23    pub latest_time: String,
24    pub earliest_time: String,
25}
26
27#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
28pub struct PrefixCounts {
29    pub v4: V4Prefixes,
30    pub v6: V6Prefixes,
31}
32
33#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
34pub struct V4Prefixes {
35    pub originating: i64,
36    pub transiting: i64,
37}
38
39#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
40pub struct V6Prefixes {
41    pub originating: i64,
42    pub transiting: i64,
43}