use crate::common;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ClusterDetails {
#[serde(rename = "_shards", default, skip_serializing_if = "Option::is_none")]
pub shards: Option<common::ShardStatistics>,
#[serde(rename = "status")]
pub status: String,
#[serde(rename = "timed_out")]
pub timed_out: bool,
#[serde(rename = "took", default, skip_serializing_if = "Option::is_none")]
pub took: Option<String>,
#[serde(rename = "failures", default, skip_serializing_if = "Option::is_none")]
pub failures: Option<Vec<common::ShardFailure>>,
#[serde(rename = "indices")]
pub indices: String,
}
impl ClusterDetails {
pub fn new(status: String, timed_out: bool, indices: String) -> ClusterDetails {
ClusterDetails {
shards: None,
status,
timed_out,
took: None,
failures: None,
indices,
}
}
}