ripestat_common/resources/
atlas_targets.rs

1use serde::{Deserialize, Serialize};
2
3#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
4pub struct AtlasTargetsRequest {
5    pub resource: String,
6}
7
8#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
9pub struct AtlasTargetsResponse {
10    pub measurements: Vec<AtlasMeasurement>,
11    pub stats: AtlasTargetsStats,
12    pub resource: String,
13    pub authenticated: bool,
14    pub cache: Option<bool>,
15}
16
17#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
18pub struct AtlasMeasurement {
19    pub af: i64,
20    pub msm_id: i64,
21    pub stop_time: Option<i64>,
22    pub start_time: i64,
23    pub dst_name: String,
24    pub dst_addr: String,
25    pub dst_asn: Option<i64>,
26    pub status: Status,
27    pub type_field: Type,
28    pub creation_time: i64,
29    pub description: String,
30    pub result: String,
31    pub size: Option<i64>,
32    pub is_public: bool,
33    pub participant_count: Option<i64>,
34}
35
36#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
37pub struct Status {
38    pub name: String,
39    pub id: i64,
40    pub when: Option<i64>,
41}
42
43#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
44pub struct Type {
45    pub name: String,
46}
47
48#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
49pub struct AtlasTargetsStats {
50    pub total: i64,
51}