use crate::models;
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct OutpostRequest {
#[serde(rename = "name")]
pub name: String,
#[serde(rename = "type")]
pub r#type: models::OutpostTypeEnum,
#[serde(rename = "providers")]
pub providers: Vec<i32>,
#[serde(rename = "service_connection", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub service_connection: Option<Option<uuid::Uuid>>,
#[serde(rename = "config")]
pub config: std::collections::HashMap<String, serde_json::Value>,
#[serde(rename = "managed", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub managed: Option<Option<String>>,
}
impl OutpostRequest {
pub fn new(name: String, r#type: models::OutpostTypeEnum, providers: Vec<i32>, config: std::collections::HashMap<String, serde_json::Value>) -> OutpostRequest {
OutpostRequest {
name,
r#type,
providers,
service_connection: None,
config,
managed: None,
}
}
}