aws-sdk-kinesisanalyticsv2 1.93.0

AWS SDK for Amazon Kinesis Analytics
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub fn ser_application_configuration(
    object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
    input: &crate::types::ApplicationConfiguration,
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
    if let Some(var_1) = &input.sql_application_configuration {
        #[allow(unused_mut)]
        let mut object_2 = object.key("SqlApplicationConfiguration").start_object();
        crate::protocol_serde::shape_sql_application_configuration::ser_sql_application_configuration(&mut object_2, var_1)?;
        object_2.finish();
    }
    if let Some(var_3) = &input.flink_application_configuration {
        #[allow(unused_mut)]
        let mut object_4 = object.key("FlinkApplicationConfiguration").start_object();
        crate::protocol_serde::shape_flink_application_configuration::ser_flink_application_configuration(&mut object_4, var_3)?;
        object_4.finish();
    }
    if let Some(var_5) = &input.environment_properties {
        #[allow(unused_mut)]
        let mut object_6 = object.key("EnvironmentProperties").start_object();
        crate::protocol_serde::shape_environment_properties::ser_environment_properties(&mut object_6, var_5)?;
        object_6.finish();
    }
    if let Some(var_7) = &input.application_code_configuration {
        #[allow(unused_mut)]
        let mut object_8 = object.key("ApplicationCodeConfiguration").start_object();
        crate::protocol_serde::shape_application_code_configuration::ser_application_code_configuration(&mut object_8, var_7)?;
        object_8.finish();
    }
    if let Some(var_9) = &input.application_snapshot_configuration {
        #[allow(unused_mut)]
        let mut object_10 = object.key("ApplicationSnapshotConfiguration").start_object();
        crate::protocol_serde::shape_application_snapshot_configuration::ser_application_snapshot_configuration(&mut object_10, var_9)?;
        object_10.finish();
    }
    if let Some(var_11) = &input.application_system_rollback_configuration {
        #[allow(unused_mut)]
        let mut object_12 = object.key("ApplicationSystemRollbackConfiguration").start_object();
        crate::protocol_serde::shape_application_system_rollback_configuration::ser_application_system_rollback_configuration(
            &mut object_12,
            var_11,
        )?;
        object_12.finish();
    }
    if let Some(var_13) = &input.vpc_configurations {
        let mut array_14 = object.key("VpcConfigurations").start_array();
        for item_15 in var_13 {
            {
                #[allow(unused_mut)]
                let mut object_16 = array_14.value().start_object();
                crate::protocol_serde::shape_vpc_configuration::ser_vpc_configuration(&mut object_16, item_15)?;
                object_16.finish();
            }
        }
        array_14.finish();
    }
    if let Some(var_17) = &input.zeppelin_application_configuration {
        #[allow(unused_mut)]
        let mut object_18 = object.key("ZeppelinApplicationConfiguration").start_object();
        crate::protocol_serde::shape_zeppelin_application_configuration::ser_zeppelin_application_configuration(&mut object_18, var_17)?;
        object_18.finish();
    }
    if let Some(var_19) = &input.application_encryption_configuration {
        #[allow(unused_mut)]
        let mut object_20 = object.key("ApplicationEncryptionConfiguration").start_object();
        crate::protocol_serde::shape_application_encryption_configuration::ser_application_encryption_configuration(&mut object_20, var_19)?;
        object_20.finish();
    }
    Ok(())
}