1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use serde::{Deserialize, Serialize};

use crate::models::network_resource::NetworkResource;
use crate::models::node_cpu_resources::NodeCpuResources;
use crate::models::node_device_resource::NodeDeviceResource;
use crate::models::node_disk_resources::NodeDiskResources;
use crate::models::node_memory_resources::NodeMemoryResources;

#[derive(Clone, Debug, Default, Deserialize, Serialize)]
#[serde(rename_all = "PascalCase")]
pub struct NodeResources {
    #[serde(rename = "CPU")]
    pub cpu: Option<NodeCpuResources>,
    pub memory: Option<NodeMemoryResources>,
    pub disk: Option<NodeDiskResources>,
    pub networks: Option<Vec<NetworkResource>>,
    pub devices: Option<Vec<NodeDeviceResource>>,
}