use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ClusterNodeCount {
#[serde(
rename = "data_content",
default,
skip_serializing_if = "Option::is_none"
)]
pub data_content: Option<u32>,
#[serde(rename = "transform", default, skip_serializing_if = "Option::is_none")]
pub transform: Option<u32>,
#[serde(rename = "master")]
pub master: u32,
#[serde(rename = "ml", default, skip_serializing_if = "Option::is_none")]
pub ml: Option<u32>,
#[serde(rename = "data_cold", default, skip_serializing_if = "Option::is_none")]
pub data_cold: Option<u32>,
#[serde(rename = "ingest")]
pub ingest: u32,
#[serde(rename = "remote_cluster_client")]
pub remote_cluster_client: u32,
#[serde(rename = "data_warm", default, skip_serializing_if = "Option::is_none")]
pub data_warm: Option<u32>,
#[serde(
rename = "voting_only",
default,
skip_serializing_if = "Option::is_none"
)]
pub voting_only: Option<u32>,
#[serde(
rename = "data_frozen",
default,
skip_serializing_if = "Option::is_none"
)]
pub data_frozen: Option<u32>,
#[serde(rename = "data")]
pub data: u32,
#[serde(rename = "coordinating_only")]
pub coordinating_only: u32,
#[serde(rename = "total")]
pub total: u32,
#[serde(
rename = "cluster_manager",
default,
skip_serializing_if = "Option::is_none"
)]
pub cluster_manager: Option<u32>,
#[serde(rename = "data_hot", default, skip_serializing_if = "Option::is_none")]
pub data_hot: Option<u32>,
}
impl ClusterNodeCount {
pub fn new(
master: u32,
ingest: u32,
remote_cluster_client: u32,
data: u32,
coordinating_only: u32,
total: u32,
) -> ClusterNodeCount {
ClusterNodeCount {
data_content: None,
transform: None,
master,
ml: None,
data_cold: None,
ingest,
remote_cluster_client,
data_warm: None,
voting_only: None,
data_frozen: None,
data,
coordinating_only,
total,
cluster_manager: None,
data_hot: None,
}
}
}