ripestat_common/resources/
looking_glass.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
4pub struct LookingGlassRequest {
5 pub resource: String,
6 pub look_back_limit: Option<String>,
7}
8
9#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
10pub struct LookingGlassResponse {
11 pub rrcs: Vec<LookingGlassRrc>,
12 pub query_time: String,
13 pub latest_time: String,
14 pub parameters: LookingGlassParameters,
15}
16
17#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
18pub struct LookingGlassRrc {
19 pub rrc: String,
20 pub location: String,
21 pub peers: Vec<LookingGlassPeer>,
22}
23
24#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
25pub struct LookingGlassPeer {
26 pub asn_origin: String,
27 pub as_path: String,
28 pub community: String,
29 pub large_community: String,
30 pub extended_community: String,
31 pub last_updated: String,
32 pub prefix: String,
33 pub peer: String,
34 pub origin: String,
35 pub next_hop: String,
36 pub latest_time: String,
37}
38
39#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
40pub struct LookingGlassParameters {
41 pub resource: String,
42 pub look_back_limit: i64,
43 pub cache: Option<bool>,
44}