Reduzing cloned items
This commit is contained in:
parent
0de1f9e083
commit
97171b89d5
4 changed files with 9 additions and 7 deletions
|
|
@ -30,13 +30,14 @@ pub fn unify_data(status_page: &StatusPageResponse, heartbeat: &HeartbeatRespons
|
||||||
.unwrap_or_default();
|
.unwrap_or_default();
|
||||||
|
|
||||||
monitors.push(UnifiedMonitorData {
|
monitors.push(UnifiedMonitorData {
|
||||||
monitor_info: monitor_info.clone(),
|
id: monitor_info.id,
|
||||||
|
name: monitor_info.name.clone(),
|
||||||
heartbeats,
|
heartbeats,
|
||||||
uptime_data,
|
uptime_data,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
monitors.sort_by(|a, b| a.monitor_info.name.cmp(&b.monitor_info.name));
|
monitors.sort_by_key(|m| m.id);
|
||||||
|
|
||||||
groups.push(UnifiedGroupData {
|
groups.push(UnifiedGroupData {
|
||||||
group_info: group.clone(),
|
group_info: group.clone(),
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,10 @@
|
||||||
use crate::data::heartbeat::model::{HeartbeatEntry, UptimeData};
|
use crate::data::heartbeat::model::{HeartbeatEntry, UptimeData};
|
||||||
use crate::data::status_page::model::{MonitorInfo, StatusPageGroup};
|
use crate::data::status_page::model::{StatusPageGroup};
|
||||||
|
|
||||||
#[derive(Debug, Clone)]
|
#[derive(Debug, Clone)]
|
||||||
pub struct UnifiedMonitorData {
|
pub struct UnifiedMonitorData {
|
||||||
pub monitor_info: MonitorInfo,
|
pub id: u64,
|
||||||
|
pub name: String,
|
||||||
pub heartbeats: Vec<HeartbeatEntry>,
|
pub heartbeats: Vec<HeartbeatEntry>,
|
||||||
pub uptime_data: Option<UptimeData>,
|
pub uptime_data: Option<UptimeData>,
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -29,9 +29,9 @@ pub struct StatusPageConfig {
|
||||||
pub struct MonitorInfo {
|
pub struct MonitorInfo {
|
||||||
pub id: u64,
|
pub id: u64,
|
||||||
pub name: String,
|
pub name: String,
|
||||||
#[serde(rename = "sendUrl")]
|
#[serde(skip_deserializing)]
|
||||||
pub send_url: u8,
|
pub send_url: u8,
|
||||||
#[serde(rename = "type")]
|
#[serde(skip_deserializing)]
|
||||||
pub monitor_type: String,
|
pub monitor_type: String,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -116,7 +116,7 @@ fn add_monitor_view_state(group: UnifiedGroupData) -> Vec<MonitorViewState> {
|
||||||
.unwrap_or_else(|| t("unknown").to_string());
|
.unwrap_or_else(|| t("unknown").to_string());
|
||||||
|
|
||||||
monitors.push(MonitorViewState {
|
monitors.push(MonitorViewState {
|
||||||
name: monitor.monitor_info.name,
|
name: monitor.name,
|
||||||
status,
|
status,
|
||||||
response_time,
|
response_time,
|
||||||
uptime_24h,
|
uptime_24h,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue