Compress impls

This commit is contained in:
Hugh Kaznowski
2026-09-07 02:04:36 +01:00
parent 55820982b1
commit f96de8f38d
3 changed files with 22 additions and 92 deletions
+6 -9
View File
@@ -7,7 +7,7 @@ use std::sync::Arc;
use crate::api::dto::{
BucketValuesParams, CreateAlertRuleRequest, CreateDashboardRequest, CreateProfileRequest,
DashboardDto, ErrorDto, MetricDeclarationDto,
ErrorDto, MetricDeclarationDto,
ParamDeclarationDto, LogsParams, ProfileSummaryDto, PromqlParams, SaveDashboardRequest,
SettingsDto, TestAlertNotificationRequest, TimelineParams, UpdateAlertRuleRequest, UpdateSettingsRequest,
};
@@ -773,10 +773,7 @@ async fn list_dashboards(
) -> impl IntoResponse {
let settings = state.settings.lock().unwrap();
match settings.list_dashboards(&name) {
Ok(dashboards) => {
let dtos: Vec<DashboardDto> = dashboards.iter().map(DashboardDto::from).collect();
Json(dtos).into_response()
}
Ok(dashboards) => Json(dashboards).into_response(),
Err(err) => err.into_response(),
}
}
@@ -788,7 +785,7 @@ async fn create_dashboard(
) -> impl IntoResponse {
let mut settings = state.settings.lock().unwrap();
match settings.create_dashboard(&state.settings_path, &name, body.name) {
Ok(dashboard) => (StatusCode::CREATED, Json(DashboardDto::from(&dashboard))).into_response(),
Ok(dashboard) => (StatusCode::CREATED, Json(dashboard)).into_response(),
Err(err) => err.into_response(),
}
}
@@ -800,7 +797,7 @@ async fn get_dashboard(
let settings = state.settings.lock().unwrap();
match settings.list_dashboards(&name) {
Ok(dashboards) => match dashboards.iter().find(|d| d.id == dashboard_id) {
Some(dashboard) => Json(DashboardDto::from(dashboard)).into_response(),
Some(dashboard) => Json(dashboard).into_response(),
None => ProfileError::NotFound.into_response(),
},
Err(err) => err.into_response(),
@@ -816,10 +813,10 @@ async fn save_dashboard(
let dashboard = Dashboard {
id: dashboard_id.clone(),
name: body.name,
panels: body.panels.iter().map(|p| p.into()).collect(),
panels: body.panels,
};
match settings.save_dashboard(&state.settings_path, &name, &dashboard_id, dashboard) {
Ok(dashboard) => Json(DashboardDto::from(&dashboard)).into_response(),
Ok(dashboard) => Json(dashboard).into_response(),
Err(err) => err.into_response(),
}
}