use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct NodesCephGetpoolResponseData {
#[serde(rename = "application", skip_serializing_if = "Option::is_none")]
pub application: Option<models::PveApplicationEnum>,
#[serde(rename = "application_list", skip_serializing_if = "Option::is_none")]
pub application_list: Option<Vec<String>>,
#[serde(rename = "autoscale_status", skip_serializing_if = "Option::is_none")]
pub autoscale_status: Option<serde_json::Value>,
#[serde(rename = "crush_rule", skip_serializing_if = "Option::is_none")]
pub crush_rule: Option<String>,
#[serde(rename = "fast_read")]
pub fast_read: models::PveBoolean,
#[serde(rename = "hashpspool")]
pub hashpspool: models::PveBoolean,
#[serde(rename = "id")]
pub id: i64,
#[serde(rename = "min_size", skip_serializing_if = "Option::is_none")]
pub min_size: Option<i32>,
#[serde(rename = "name")]
pub name: String,
#[serde(rename = "nodeep-scrub")]
pub nodeep_scrub: models::PveBoolean,
#[serde(rename = "nodelete")]
pub nodelete: models::PveBoolean,
#[serde(rename = "nopgchange")]
pub nopgchange: models::PveBoolean,
#[serde(rename = "noscrub")]
pub noscrub: models::PveBoolean,
#[serde(rename = "nosizechange")]
pub nosizechange: models::PveBoolean,
#[serde(rename = "pg_autoscale_mode", skip_serializing_if = "Option::is_none")]
pub pg_autoscale_mode: Option<models::PvePgAutoscaleModeEnum>,
#[serde(rename = "pg_num", skip_serializing_if = "Option::is_none")]
pub pg_num: Option<i32>,
#[serde(rename = "pg_num_min", skip_serializing_if = "Option::is_none")]
pub pg_num_min: Option<i32>,
#[serde(rename = "pgp_num")]
pub pgp_num: i64,
#[serde(rename = "size", skip_serializing_if = "Option::is_none")]
pub size: Option<i32>,
#[serde(rename = "statistics", skip_serializing_if = "Option::is_none")]
pub statistics: Option<serde_json::Value>,
#[serde(rename = "target_size", skip_serializing_if = "Option::is_none")]
pub target_size: Option<String>,
#[serde(rename = "target_size_ratio", skip_serializing_if = "Option::is_none")]
pub target_size_ratio: Option<f64>,
#[serde(rename = "use_gmt_hitset")]
pub use_gmt_hitset: models::PveBoolean,
#[serde(rename = "write_fadvise_dontneed")]
pub write_fadvise_dontneed: models::PveBoolean,
}
impl NodesCephGetpoolResponseData {
pub fn new(fast_read: models::PveBoolean, hashpspool: models::PveBoolean, id: i64, name: String, nodeep_scrub: models::PveBoolean, nodelete: models::PveBoolean, nopgchange: models::PveBoolean, noscrub: models::PveBoolean, nosizechange: models::PveBoolean, pgp_num: i64, use_gmt_hitset: models::PveBoolean, write_fadvise_dontneed: models::PveBoolean) -> NodesCephGetpoolResponseData {
NodesCephGetpoolResponseData {
application: None,
application_list: None,
autoscale_status: None,
crush_rule: None,
fast_read,
hashpspool,
id,
min_size: None,
name,
nodeep_scrub,
nodelete,
nopgchange,
noscrub,
nosizechange,
pg_autoscale_mode: None,
pg_num: None,
pg_num_min: None,
pgp_num,
size: None,
statistics: None,
target_size: None,
target_size_ratio: None,
use_gmt_hitset,
write_fadvise_dontneed,
}
}
}