use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ConfigDatastoreCreateDatastoreRequest {
#[serde(rename = "backend", skip_serializing_if = "Option::is_none")]
pub backend: Option<String>,
#[serde(rename = "backing-device", skip_serializing_if = "Option::is_none")]
pub backing_device: Option<String>,
#[serde(rename = "comment", skip_serializing_if = "Option::is_none")]
pub comment: Option<String>,
#[serde(rename = "counter-reset-schedule", skip_serializing_if = "Option::is_none")]
pub counter_reset_schedule: Option<String>,
#[serde(rename = "gc-on-unmount", skip_serializing_if = "Option::is_none")]
pub gc_on_unmount: Option<bool>,
#[serde(rename = "gc-schedule", skip_serializing_if = "Option::is_none")]
pub gc_schedule: Option<String>,
#[serde(rename = "keep-daily", skip_serializing_if = "Option::is_none")]
pub keep_daily: Option<i64>,
#[serde(rename = "keep-hourly", skip_serializing_if = "Option::is_none")]
pub keep_hourly: Option<i64>,
#[serde(rename = "keep-last", skip_serializing_if = "Option::is_none")]
pub keep_last: Option<i64>,
#[serde(rename = "keep-monthly", skip_serializing_if = "Option::is_none")]
pub keep_monthly: Option<i64>,
#[serde(rename = "keep-weekly", skip_serializing_if = "Option::is_none")]
pub keep_weekly: Option<i64>,
#[serde(rename = "keep-yearly", skip_serializing_if = "Option::is_none")]
pub keep_yearly: Option<i64>,
#[serde(rename = "maintenance-mode", skip_serializing_if = "Option::is_none")]
pub maintenance_mode: Option<Box<models::PbsMaintenanceField>>,
#[serde(rename = "name")]
pub name: String,
#[serde(rename = "notification-mode", skip_serializing_if = "Option::is_none")]
pub notification_mode: Option<models::PbsNotificationModeEnum>,
#[serde(rename = "notification-thresholds", skip_serializing_if = "Option::is_none")]
pub notification_thresholds: Option<Box<models::PbsNotificationThresholdsField>>,
#[serde(rename = "notify", skip_serializing_if = "Option::is_none")]
pub notify: Option<Box<models::PbsNotifyField>>,
#[serde(rename = "notify-user", skip_serializing_if = "Option::is_none")]
pub notify_user: Option<String>,
#[serde(rename = "overwrite-in-use", skip_serializing_if = "Option::is_none")]
pub overwrite_in_use: Option<bool>,
#[serde(rename = "path")]
pub path: String,
#[serde(rename = "prune-schedule", skip_serializing_if = "Option::is_none")]
pub prune_schedule: Option<String>,
#[serde(rename = "reuse-datastore", skip_serializing_if = "Option::is_none")]
pub reuse_datastore: Option<bool>,
#[serde(rename = "tuning", skip_serializing_if = "Option::is_none")]
pub tuning: Option<Box<models::PbsTuningField>>,
#[serde(rename = "verify-new", skip_serializing_if = "Option::is_none")]
pub verify_new: Option<bool>,
}
impl ConfigDatastoreCreateDatastoreRequest {
pub fn new(name: String, path: String) -> ConfigDatastoreCreateDatastoreRequest {
ConfigDatastoreCreateDatastoreRequest {
backend: None,
backing_device: None,
comment: None,
counter_reset_schedule: None,
gc_on_unmount: None,
gc_schedule: None,
keep_daily: None,
keep_hourly: None,
keep_last: None,
keep_monthly: None,
keep_weekly: None,
keep_yearly: None,
maintenance_mode: None,
name,
notification_mode: None,
notification_thresholds: None,
notify: None,
notify_user: None,
overwrite_in_use: None,
path,
prune_schedule: None,
reuse_datastore: None,
tuning: None,
verify_new: None,
}
}
}