aws_sdk_sagemaker/protocol_serde/
shape_update_model_package_input.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub fn ser_update_model_package_input_input(
3    object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
4    input: &crate::operation::update_model_package::UpdateModelPackageInput,
5) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
6    if let Some(var_1) = &input.model_package_arn {
7        object.key("ModelPackageArn").string(var_1.as_str());
8    }
9    if let Some(var_2) = &input.model_approval_status {
10        object.key("ModelApprovalStatus").string(var_2.as_str());
11    }
12    if let Some(var_3) = &input.approval_description {
13        object.key("ApprovalDescription").string(var_3.as_str());
14    }
15    if let Some(var_4) = &input.customer_metadata_properties {
16        #[allow(unused_mut)]
17        let mut object_5 = object.key("CustomerMetadataProperties").start_object();
18        for (key_6, value_7) in var_4 {
19            {
20                object_5.key(key_6.as_str()).string(value_7.as_str());
21            }
22        }
23        object_5.finish();
24    }
25    if let Some(var_8) = &input.customer_metadata_properties_to_remove {
26        let mut array_9 = object.key("CustomerMetadataPropertiesToRemove").start_array();
27        for item_10 in var_8 {
28            {
29                array_9.value().string(item_10.as_str());
30            }
31        }
32        array_9.finish();
33    }
34    if let Some(var_11) = &input.additional_inference_specifications_to_add {
35        let mut array_12 = object.key("AdditionalInferenceSpecificationsToAdd").start_array();
36        for item_13 in var_11 {
37            {
38                #[allow(unused_mut)]
39                let mut object_14 = array_12.value().start_object();
40                crate::protocol_serde::shape_additional_inference_specification_definition::ser_additional_inference_specification_definition(
41                    &mut object_14,
42                    item_13,
43                )?;
44                object_14.finish();
45            }
46        }
47        array_12.finish();
48    }
49    if let Some(var_15) = &input.inference_specification {
50        #[allow(unused_mut)]
51        let mut object_16 = object.key("InferenceSpecification").start_object();
52        crate::protocol_serde::shape_inference_specification::ser_inference_specification(&mut object_16, var_15)?;
53        object_16.finish();
54    }
55    if let Some(var_17) = &input.source_uri {
56        object.key("SourceUri").string(var_17.as_str());
57    }
58    if let Some(var_18) = &input.model_card {
59        #[allow(unused_mut)]
60        let mut object_19 = object.key("ModelCard").start_object();
61        crate::protocol_serde::shape_model_package_model_card::ser_model_package_model_card(&mut object_19, var_18)?;
62        object_19.finish();
63    }
64    if let Some(var_20) = &input.model_life_cycle {
65        #[allow(unused_mut)]
66        let mut object_21 = object.key("ModelLifeCycle").start_object();
67        crate::protocol_serde::shape_model_life_cycle::ser_model_life_cycle(&mut object_21, var_20)?;
68        object_21.finish();
69    }
70    if let Some(var_22) = &input.client_token {
71        object.key("ClientToken").string(var_22.as_str());
72    }
73    Ok(())
74}