aws_sdk_sagemaker/protocol_serde/
shape_create_notebook_instance_input.rs1pub fn ser_create_notebook_instance_input_input(
3 object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
4 input: &crate::operation::create_notebook_instance::CreateNotebookInstanceInput,
5) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
6 if let Some(var_1) = &input.notebook_instance_name {
7 object.key("NotebookInstanceName").string(var_1.as_str());
8 }
9 if let Some(var_2) = &input.instance_type {
10 object.key("InstanceType").string(var_2.as_str());
11 }
12 if let Some(var_3) = &input.subnet_id {
13 object.key("SubnetId").string(var_3.as_str());
14 }
15 if let Some(var_4) = &input.security_group_ids {
16 let mut array_5 = object.key("SecurityGroupIds").start_array();
17 for item_6 in var_4 {
18 {
19 array_5.value().string(item_6.as_str());
20 }
21 }
22 array_5.finish();
23 }
24 if let Some(var_7) = &input.ip_address_type {
25 object.key("IpAddressType").string(var_7.as_str());
26 }
27 if let Some(var_8) = &input.role_arn {
28 object.key("RoleArn").string(var_8.as_str());
29 }
30 if let Some(var_9) = &input.kms_key_id {
31 object.key("KmsKeyId").string(var_9.as_str());
32 }
33 if let Some(var_10) = &input.tags {
34 let mut array_11 = object.key("Tags").start_array();
35 for item_12 in var_10 {
36 {
37 #[allow(unused_mut)]
38 let mut object_13 = array_11.value().start_object();
39 crate::protocol_serde::shape_tag::ser_tag(&mut object_13, item_12)?;
40 object_13.finish();
41 }
42 }
43 array_11.finish();
44 }
45 if let Some(var_14) = &input.lifecycle_config_name {
46 object.key("LifecycleConfigName").string(var_14.as_str());
47 }
48 if let Some(var_15) = &input.direct_internet_access {
49 object.key("DirectInternetAccess").string(var_15.as_str());
50 }
51 if let Some(var_16) = &input.volume_size_in_gb {
52 object.key("VolumeSizeInGB").number(
53 #[allow(clippy::useless_conversion)]
54 ::aws_smithy_types::Number::NegInt((*var_16).into()),
55 );
56 }
57 if let Some(var_17) = &input.accelerator_types {
58 let mut array_18 = object.key("AcceleratorTypes").start_array();
59 for item_19 in var_17 {
60 {
61 array_18.value().string(item_19.as_str());
62 }
63 }
64 array_18.finish();
65 }
66 if let Some(var_20) = &input.default_code_repository {
67 object.key("DefaultCodeRepository").string(var_20.as_str());
68 }
69 if let Some(var_21) = &input.additional_code_repositories {
70 let mut array_22 = object.key("AdditionalCodeRepositories").start_array();
71 for item_23 in var_21 {
72 {
73 array_22.value().string(item_23.as_str());
74 }
75 }
76 array_22.finish();
77 }
78 if let Some(var_24) = &input.root_access {
79 object.key("RootAccess").string(var_24.as_str());
80 }
81 if let Some(var_25) = &input.platform_identifier {
82 object.key("PlatformIdentifier").string(var_25.as_str());
83 }
84 if let Some(var_26) = &input.instance_metadata_service_configuration {
85 #[allow(unused_mut)]
86 let mut object_27 = object.key("InstanceMetadataServiceConfiguration").start_object();
87 crate::protocol_serde::shape_instance_metadata_service_configuration::ser_instance_metadata_service_configuration(&mut object_27, var_26)?;
88 object_27.finish();
89 }
90 Ok(())
91}