aws_sdk_sagemaker/protocol_serde/
shape_create_model_package_input.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub fn ser_create_model_package_input_input(
3    object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
4    input: &crate::operation::create_model_package::CreateModelPackageInput,
5) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
6    if let Some(var_1) = &input.model_package_name {
7        object.key("ModelPackageName").string(var_1.as_str());
8    }
9    if let Some(var_2) = &input.model_package_group_name {
10        object.key("ModelPackageGroupName").string(var_2.as_str());
11    }
12    if let Some(var_3) = &input.model_package_description {
13        object.key("ModelPackageDescription").string(var_3.as_str());
14    }
15    if let Some(var_4) = &input.inference_specification {
16        #[allow(unused_mut)]
17        let mut object_5 = object.key("InferenceSpecification").start_object();
18        crate::protocol_serde::shape_inference_specification::ser_inference_specification(&mut object_5, var_4)?;
19        object_5.finish();
20    }
21    if let Some(var_6) = &input.validation_specification {
22        #[allow(unused_mut)]
23        let mut object_7 = object.key("ValidationSpecification").start_object();
24        crate::protocol_serde::shape_model_package_validation_specification::ser_model_package_validation_specification(&mut object_7, var_6)?;
25        object_7.finish();
26    }
27    if let Some(var_8) = &input.source_algorithm_specification {
28        #[allow(unused_mut)]
29        let mut object_9 = object.key("SourceAlgorithmSpecification").start_object();
30        crate::protocol_serde::shape_source_algorithm_specification::ser_source_algorithm_specification(&mut object_9, var_8)?;
31        object_9.finish();
32    }
33    if let Some(var_10) = &input.certify_for_marketplace {
34        object.key("CertifyForMarketplace").boolean(*var_10);
35    }
36    if let Some(var_11) = &input.tags {
37        let mut array_12 = object.key("Tags").start_array();
38        for item_13 in var_11 {
39            {
40                #[allow(unused_mut)]
41                let mut object_14 = array_12.value().start_object();
42                crate::protocol_serde::shape_tag::ser_tag(&mut object_14, item_13)?;
43                object_14.finish();
44            }
45        }
46        array_12.finish();
47    }
48    if let Some(var_15) = &input.model_approval_status {
49        object.key("ModelApprovalStatus").string(var_15.as_str());
50    }
51    if let Some(var_16) = &input.metadata_properties {
52        #[allow(unused_mut)]
53        let mut object_17 = object.key("MetadataProperties").start_object();
54        crate::protocol_serde::shape_metadata_properties::ser_metadata_properties(&mut object_17, var_16)?;
55        object_17.finish();
56    }
57    if let Some(var_18) = &input.model_metrics {
58        #[allow(unused_mut)]
59        let mut object_19 = object.key("ModelMetrics").start_object();
60        crate::protocol_serde::shape_model_metrics::ser_model_metrics(&mut object_19, var_18)?;
61        object_19.finish();
62    }
63    if let Some(var_20) = &input.client_token {
64        object.key("ClientToken").string(var_20.as_str());
65    }
66    if let Some(var_21) = &input.domain {
67        object.key("Domain").string(var_21.as_str());
68    }
69    if let Some(var_22) = &input.task {
70        object.key("Task").string(var_22.as_str());
71    }
72    if let Some(var_23) = &input.sample_payload_url {
73        object.key("SamplePayloadUrl").string(var_23.as_str());
74    }
75    if let Some(var_24) = &input.customer_metadata_properties {
76        #[allow(unused_mut)]
77        let mut object_25 = object.key("CustomerMetadataProperties").start_object();
78        for (key_26, value_27) in var_24 {
79            {
80                object_25.key(key_26.as_str()).string(value_27.as_str());
81            }
82        }
83        object_25.finish();
84    }
85    if let Some(var_28) = &input.drift_check_baselines {
86        #[allow(unused_mut)]
87        let mut object_29 = object.key("DriftCheckBaselines").start_object();
88        crate::protocol_serde::shape_drift_check_baselines::ser_drift_check_baselines(&mut object_29, var_28)?;
89        object_29.finish();
90    }
91    if let Some(var_30) = &input.additional_inference_specifications {
92        let mut array_31 = object.key("AdditionalInferenceSpecifications").start_array();
93        for item_32 in var_30 {
94            {
95                #[allow(unused_mut)]
96                let mut object_33 = array_31.value().start_object();
97                crate::protocol_serde::shape_additional_inference_specification_definition::ser_additional_inference_specification_definition(
98                    &mut object_33,
99                    item_32,
100                )?;
101                object_33.finish();
102            }
103        }
104        array_31.finish();
105    }
106    if let Some(var_34) = &input.skip_model_validation {
107        object.key("SkipModelValidation").string(var_34.as_str());
108    }
109    if let Some(var_35) = &input.source_uri {
110        object.key("SourceUri").string(var_35.as_str());
111    }
112    if let Some(var_36) = &input.security_config {
113        #[allow(unused_mut)]
114        let mut object_37 = object.key("SecurityConfig").start_object();
115        crate::protocol_serde::shape_model_package_security_config::ser_model_package_security_config(&mut object_37, var_36)?;
116        object_37.finish();
117    }
118    if let Some(var_38) = &input.model_card {
119        #[allow(unused_mut)]
120        let mut object_39 = object.key("ModelCard").start_object();
121        crate::protocol_serde::shape_model_package_model_card::ser_model_package_model_card(&mut object_39, var_38)?;
122        object_39.finish();
123    }
124    if let Some(var_40) = &input.model_life_cycle {
125        #[allow(unused_mut)]
126        let mut object_41 = object.key("ModelLifeCycle").start_object();
127        crate::protocol_serde::shape_model_life_cycle::ser_model_life_cycle(&mut object_41, var_40)?;
128        object_41.finish();
129    }
130    Ok(())
131}