1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
/*
 * Account API
 *
 * # Introduction  The Account API allows you to manage projects. Project is Scaleway’s resource management feature. Designed to help you organize your infrastructure and cloud services, the feature allows resources to be isolated and grouped into specific projects.
 *
 * The version of the OpenAPI document: v2
 *
 * Generated by: https://openapi-generator.tech
 */

#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
pub struct ScalewayPeriodDomainPeriodV2beta1PeriodRecord {
    #[serde(rename = "data", skip_serializing_if = "Option::is_none")]
    pub data: Option<String>,
    #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
    pub name: Option<String>,
    #[serde(rename = "priority", skip_serializing_if = "Option::is_none")]
    pub priority: Option<i32>,
    #[serde(rename = "ttl", skip_serializing_if = "Option::is_none")]
    pub ttl: Option<i32>,
    #[serde(rename = "type", skip_serializing_if = "Option::is_none")]
    pub r#type: Option<crate::models::ScalewayPeriodDomainPeriodV2beta1PeriodRecordPeriodType>,
    #[serde(
        rename = "comment",
        default,
        with = "::serde_with::rust::double_option",
        skip_serializing_if = "Option::is_none"
    )]
    pub comment: Option<Option<String>>,
    #[serde(rename = "geo_ip_config", skip_serializing_if = "Option::is_none")]
    pub geo_ip_config: Option<Box<crate::models::ScalewayDomainV2beta1RecordGeoIpConfig>>,
    #[serde(
        rename = "http_service_config",
        skip_serializing_if = "Option::is_none"
    )]
    pub http_service_config:
        Option<Box<crate::models::ScalewayDomainV2beta1RecordHttpServiceConfig>>,
    #[serde(rename = "weighted_config", skip_serializing_if = "Option::is_none")]
    pub weighted_config: Option<Box<crate::models::ScalewayDomainV2beta1RecordWeightedConfig>>,
    #[serde(rename = "view_config", skip_serializing_if = "Option::is_none")]
    pub view_config: Option<Box<crate::models::ScalewayDomainV2beta1RecordViewConfig>>,
    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
    pub id: Option<String>,
}

impl ScalewayPeriodDomainPeriodV2beta1PeriodRecord {
    pub fn new() -> ScalewayPeriodDomainPeriodV2beta1PeriodRecord {
        ScalewayPeriodDomainPeriodV2beta1PeriodRecord {
            data: None,
            name: None,
            priority: None,
            ttl: None,
            r#type: None,
            comment: None,
            geo_ip_config: None,
            http_service_config: None,
            weighted_config: None,
            view_config: None,
            id: None,
        }
    }
}