tron_api_client/response/
node_info.rs

1use std::collections::HashMap;
2
3// generated with https://transform.tools/json-to-rust-serde
4//
5
6/// Node info data returned by [`Client::node_info`].
7///
8/// See [`Client::node_info`] for more info.
9///
10/// [`Client::node_info`]: ../client/struct.Client.html#method.node_info
11#[derive(Default, Debug, Clone, PartialEq, serde_derive::Serialize, serde_derive::Deserialize)]
12#[serde(rename_all = "camelCase")]
13pub struct NodeInfo {
14    pub active_connect_count: i64,
15    pub begin_sync_num: i64,
16    pub block: String,
17    pub cheat_witness_info_map: CheatWitnessInfoMap,
18    pub config_node_info: ConfigNodeInfo,
19    pub current_connect_count: i64,
20    pub machine_info: MachineInfo,
21    pub passive_connect_count: i64,
22    pub peer_list: Vec<PeerList>,
23    pub solidity_block: String,
24    pub total_flow: i64,
25}
26
27type CheatWitnessInfoMap = HashMap<String, String>;
28
29#[derive(Default, Debug, Clone, PartialEq, serde_derive::Serialize, serde_derive::Deserialize)]
30#[serde(rename_all = "camelCase")]
31pub struct ConfigNodeInfo {
32    pub active_node_size: i64,
33    pub allow_adaptive_energy: i64,
34    pub allow_creation_of_contracts: i64,
35    pub backup_listen_port: i64,
36    pub backup_member_size: i64,
37    pub backup_priority: i64,
38    pub code_version: String,
39    pub db_version: i64,
40    pub discover_enable: bool,
41    pub listen_port: i64,
42    pub max_connect_count: i64,
43    pub max_time_ratio: f64,
44    pub min_participation_rate: i64,
45    pub min_time_ratio: f64,
46    #[serde(rename = "p2pVersion")]
47    pub p2_p_version: String,
48    pub passive_node_size: i64,
49    pub same_ip_max_connect_count: i64,
50    pub send_node_size: i64,
51    pub support_constant: bool,
52    pub version_name: String,
53    pub version_num: String,
54}
55
56#[derive(Default, Debug, Clone, PartialEq, serde_derive::Serialize, serde_derive::Deserialize)]
57#[serde(rename_all = "camelCase")]
58pub struct MachineInfo {
59    pub cpu_count: i64,
60    pub cpu_rate: f64,
61    pub dead_lock_thread_count: i64,
62    pub dead_lock_thread_info_list: Vec<::serde_json::Value>,
63    pub free_memory: i64,
64    pub java_version: String,
65    pub jvm_free_memory: i64,
66    pub jvm_total_memoery: i64,
67    pub memory_desc_info_list: Vec<MemoryDescInfoList>,
68    pub os_name: String,
69    pub process_cpu_rate: f64,
70    pub thread_count: i64,
71    pub total_memory: i64,
72}
73
74#[derive(Default, Debug, Clone, PartialEq, serde_derive::Serialize, serde_derive::Deserialize)]
75#[serde(rename_all = "camelCase")]
76pub struct MemoryDescInfoList {
77    pub init_size: i64,
78    pub max_size: i64,
79    pub name: String,
80    pub use_rate: f64,
81    pub use_size: i64,
82}
83
84#[derive(Default, Debug, Clone, PartialEq, serde_derive::Serialize, serde_derive::Deserialize)]
85#[serde(rename_all = "camelCase")]
86pub struct PeerList {
87    pub active: bool,
88    pub avg_latency: f64,
89    pub block_in_porc_size: i64,
90    pub connect_time: i64,
91    pub disconnect_times: i64,
92    pub head_block_time_we_both_have: i64,
93    pub head_block_we_both_have: String,
94    pub host: String,
95    pub in_flow: i64,
96    pub last_block_update_time: i64,
97    pub last_sync_block: String,
98    pub local_disconnect_reason: String,
99    pub need_sync_from_peer: bool,
100    pub need_sync_from_us: bool,
101    pub node_count: i64,
102    pub node_id: String,
103    pub port: i64,
104    pub remain_num: i64,
105    pub remote_disconnect_reason: String,
106    pub score: i64,
107    pub sync_block_requested_size: i64,
108    pub sync_flag: bool,
109    pub sync_to_fetch_size: i64,
110    pub sync_to_fetch_size_peek_num: i64,
111    pub un_fetch_syn_num: i64,
112}