apisix_admin_client/models/
ctrl_responses.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
use serde::{Deserialize, Serialize};
use serde_json::Value;

// region: ctrl_schema
#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct CtrlSchemaResponse {
    pub main: Value,
    pub plugins: Value,
    #[serde(rename = "stream_plugins")]
    pub stream_plugins: Value,
}
// endregion: ctrl_schema

// region: ctrl_health_check
#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde_with::skip_serializing_none]
#[serde(rename_all = "camelCase")]
pub struct CtrlHealthCheckResponse {
    pub nodes: Option<Vec<Node>>,
    pub name: Option<String>,
    #[serde(rename = "type")]
    pub type_field: Option<String>,
}

#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde_with::skip_serializing_none]
#[serde(rename_all = "camelCase")]
pub struct Node {
    pub ip: Option<String>,
    pub counter: Option<Counter>,
    pub port: Option<i64>,
    pub status: Option<String>,
}

#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde_with::skip_serializing_none]
#[serde(rename_all = "camelCase")]
pub struct Counter {
    #[serde(rename = "http_failure")]
    pub http_failure: Option<i64>,
    pub success: Option<i64>,
    #[serde(rename = "timeout_failure")]
    pub timeout_failure: Option<i64>,
    #[serde(rename = "tcp_failure")]
    pub tcp_failure: Option<i64>,
}
// endregion: ctrl_health_check