#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
pub struct CreatePrimaryIpRequest {
#[serde(rename = "assignee_id", skip_serializing_if = "Option::is_none")]
pub assignee_id: Option<i32>,
#[serde(rename = "assignee_type")]
pub assignee_type: AssigneeType,
#[serde(rename = "auto_delete", skip_serializing_if = "Option::is_none")]
pub auto_delete: Option<bool>,
#[serde(rename = "datacenter", skip_serializing_if = "Option::is_none")]
pub datacenter: Option<String>,
#[serde(rename = "labels", skip_serializing_if = "Option::is_none")]
pub labels: Option<::std::collections::HashMap<String, String>>,
#[serde(rename = "name")]
pub name: String,
#[serde(rename = "type")]
pub r#type: crate::models::IpType,
}
impl CreatePrimaryIpRequest {
#![allow(clippy::too_many_arguments)]
pub fn new(
assignee_type: AssigneeType,
name: String,
r#type: crate::models::IpType,
) -> CreatePrimaryIpRequest {
CreatePrimaryIpRequest {
assignee_id: None,
assignee_type,
auto_delete: None,
datacenter: None,
labels: None,
name,
r#type,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum AssigneeType {
#[serde(rename = "server")]
Server,
}
impl Default for AssigneeType {
fn default() -> AssigneeType {
Self::Server
}
}