zenkey_fleet/report/
service.rs1use serde::Serialize;
5
6#[derive(Debug, Clone, Serialize)]
7pub struct ServiceRow {
8 pub producer: String,
9 pub registry_version: String,
10 pub kind: String,
11 pub path: String,
12 #[serde(skip_serializing_if = "Option::is_none")]
13 pub request: Option<String>,
14 #[serde(skip_serializing_if = "Option::is_none")]
15 pub reply: Option<String>,
16}
17
18#[derive(Debug, Clone, Serialize)]
19pub struct ServiceList {
20 pub procedures: Vec<ServiceRow>,
21}
22
23#[derive(Debug, Clone, Serialize)]
26pub struct ServiceProcedure {
27 pub path: String,
28 pub kind: String,
29 pub key: String,
34 #[serde(skip_serializing_if = "Option::is_none")]
35 pub request: Option<String>,
36 #[serde(skip_serializing_if = "Option::is_none")]
37 pub reply: Option<String>,
38 #[serde(skip_serializing_if = "Option::is_none")]
41 pub fanout: Option<String>,
42 #[serde(skip_serializing_if = "Option::is_none")]
43 pub idempotent: Option<bool>,
44 #[serde(skip_serializing_if = "Option::is_none")]
45 pub encoding: Option<String>,
46 #[serde(skip_serializing_if = "Option::is_none")]
47 pub since: Option<String>,
48 #[serde(skip_serializing_if = "Option::is_none")]
49 pub description: Option<String>,
50}
51
52#[derive(Debug, Clone, Serialize)]
58pub struct ServiceInfo {
59 pub producer: String,
60 pub registry_version: String,
61 #[serde(skip_serializing_if = "Option::is_none")]
64 pub service_origin: Option<String>,
65 #[serde(skip_serializing_if = "Option::is_none")]
66 pub description: Option<String>,
67 pub procedures: Vec<ServiceProcedure>,
68}