aws-sdk-rdsdata 0.0.24-alpha

AWS SDK for AWS RDS DataService
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub fn serialize_structure_crate_input_batch_execute_statement_input(
    object: &mut aws_smithy_json::serialize::JsonObjectWriter,
    input: &crate::input::BatchExecuteStatementInput,
) -> Result<(), aws_smithy_http::operation::SerializationError> {
    if let Some(var_1) = &input.database {
        object.key("database").string(var_1);
    }
    if let Some(var_2) = &input.parameter_sets {
        let mut array_3 = object.key("parameterSets").start_array();
        for item_4 in var_2 {
            {
                let mut array_5 = array_3.value().start_array();
                for item_6 in item_4 {
                    {
                        let mut object_7 = array_5.value().start_object();
                        crate::json_ser::serialize_structure_crate_model_sql_parameter(
                            &mut object_7,
                            item_6,
                        )?;
                        object_7.finish();
                    }
                }
                array_5.finish();
            }
        }
        array_3.finish();
    }
    if let Some(var_8) = &input.resource_arn {
        object.key("resourceArn").string(var_8);
    }
    if let Some(var_9) = &input.schema {
        object.key("schema").string(var_9);
    }
    if let Some(var_10) = &input.secret_arn {
        object.key("secretArn").string(var_10);
    }
    if let Some(var_11) = &input.sql {
        object.key("sql").string(var_11);
    }
    if let Some(var_12) = &input.transaction_id {
        object.key("transactionId").string(var_12);
    }
    Ok(())
}

pub fn serialize_structure_crate_input_begin_transaction_input(
    object: &mut aws_smithy_json::serialize::JsonObjectWriter,
    input: &crate::input::BeginTransactionInput,
) -> Result<(), aws_smithy_http::operation::SerializationError> {
    if let Some(var_13) = &input.database {
        object.key("database").string(var_13);
    }
    if let Some(var_14) = &input.resource_arn {
        object.key("resourceArn").string(var_14);
    }
    if let Some(var_15) = &input.schema {
        object.key("schema").string(var_15);
    }
    if let Some(var_16) = &input.secret_arn {
        object.key("secretArn").string(var_16);
    }
    Ok(())
}

pub fn serialize_structure_crate_input_commit_transaction_input(
    object: &mut aws_smithy_json::serialize::JsonObjectWriter,
    input: &crate::input::CommitTransactionInput,
) -> Result<(), aws_smithy_http::operation::SerializationError> {
    if let Some(var_17) = &input.resource_arn {
        object.key("resourceArn").string(var_17);
    }
    if let Some(var_18) = &input.secret_arn {
        object.key("secretArn").string(var_18);
    }
    if let Some(var_19) = &input.transaction_id {
        object.key("transactionId").string(var_19);
    }
    Ok(())
}

pub fn serialize_structure_crate_input_execute_sql_input(
    object: &mut aws_smithy_json::serialize::JsonObjectWriter,
    input: &crate::input::ExecuteSqlInput,
) -> Result<(), aws_smithy_http::operation::SerializationError> {
    if let Some(var_20) = &input.aws_secret_store_arn {
        object.key("awsSecretStoreArn").string(var_20);
    }
    if let Some(var_21) = &input.database {
        object.key("database").string(var_21);
    }
    if let Some(var_22) = &input.db_cluster_or_instance_arn {
        object.key("dbClusterOrInstanceArn").string(var_22);
    }
    if let Some(var_23) = &input.schema {
        object.key("schema").string(var_23);
    }
    if let Some(var_24) = &input.sql_statements {
        object.key("sqlStatements").string(var_24);
    }
    Ok(())
}

pub fn serialize_structure_crate_input_execute_statement_input(
    object: &mut aws_smithy_json::serialize::JsonObjectWriter,
    input: &crate::input::ExecuteStatementInput,
) -> Result<(), aws_smithy_http::operation::SerializationError> {
    if input.continue_after_timeout {
        object
            .key("continueAfterTimeout")
            .boolean(input.continue_after_timeout);
    }
    if let Some(var_25) = &input.database {
        object.key("database").string(var_25);
    }
    if input.include_result_metadata {
        object
            .key("includeResultMetadata")
            .boolean(input.include_result_metadata);
    }
    if let Some(var_26) = &input.parameters {
        let mut array_27 = object.key("parameters").start_array();
        for item_28 in var_26 {
            {
                let mut object_29 = array_27.value().start_object();
                crate::json_ser::serialize_structure_crate_model_sql_parameter(
                    &mut object_29,
                    item_28,
                )?;
                object_29.finish();
            }
        }
        array_27.finish();
    }
    if let Some(var_30) = &input.resource_arn {
        object.key("resourceArn").string(var_30);
    }
    if let Some(var_31) = &input.result_set_options {
        let mut object_32 = object.key("resultSetOptions").start_object();
        crate::json_ser::serialize_structure_crate_model_result_set_options(
            &mut object_32,
            var_31,
        )?;
        object_32.finish();
    }
    if let Some(var_33) = &input.schema {
        object.key("schema").string(var_33);
    }
    if let Some(var_34) = &input.secret_arn {
        object.key("secretArn").string(var_34);
    }
    if let Some(var_35) = &input.sql {
        object.key("sql").string(var_35);
    }
    if let Some(var_36) = &input.transaction_id {
        object.key("transactionId").string(var_36);
    }
    Ok(())
}

pub fn serialize_structure_crate_input_rollback_transaction_input(
    object: &mut aws_smithy_json::serialize::JsonObjectWriter,
    input: &crate::input::RollbackTransactionInput,
) -> Result<(), aws_smithy_http::operation::SerializationError> {
    if let Some(var_37) = &input.resource_arn {
        object.key("resourceArn").string(var_37);
    }
    if let Some(var_38) = &input.secret_arn {
        object.key("secretArn").string(var_38);
    }
    if let Some(var_39) = &input.transaction_id {
        object.key("transactionId").string(var_39);
    }
    Ok(())
}

pub fn serialize_structure_crate_model_sql_parameter(
    object: &mut aws_smithy_json::serialize::JsonObjectWriter,
    input: &crate::model::SqlParameter,
) -> Result<(), aws_smithy_http::operation::SerializationError> {
    if let Some(var_40) = &input.name {
        object.key("name").string(var_40);
    }
    if let Some(var_41) = &input.value {
        let mut object_42 = object.key("value").start_object();
        crate::json_ser::serialize_union_crate_model_field(&mut object_42, var_41)?;
        object_42.finish();
    }
    if let Some(var_43) = &input.type_hint {
        object.key("typeHint").string(var_43.as_str());
    }
    Ok(())
}

pub fn serialize_structure_crate_model_result_set_options(
    object: &mut aws_smithy_json::serialize::JsonObjectWriter,
    input: &crate::model::ResultSetOptions,
) -> Result<(), aws_smithy_http::operation::SerializationError> {
    if let Some(var_44) = &input.decimal_return_type {
        object.key("decimalReturnType").string(var_44.as_str());
    }
    Ok(())
}

pub fn serialize_union_crate_model_field(
    object_42: &mut aws_smithy_json::serialize::JsonObjectWriter,
    input: &crate::model::Field,
) -> Result<(), aws_smithy_http::operation::SerializationError> {
    match input {
        crate::model::Field::IsNull(inner) => {
            object_42.key("isNull").boolean(*inner);
        }
        crate::model::Field::BooleanValue(inner) => {
            object_42.key("booleanValue").boolean(*inner);
        }
        crate::model::Field::LongValue(inner) => {
            object_42.key("longValue").number(
                #[allow(clippy::useless_conversion)]
                aws_smithy_types::Number::NegInt((*inner).into()),
            );
        }
        crate::model::Field::DoubleValue(inner) => {
            object_42.key("doubleValue").number(
                #[allow(clippy::useless_conversion)]
                aws_smithy_types::Number::Float((*inner).into()),
            );
        }
        crate::model::Field::StringValue(inner) => {
            object_42.key("stringValue").string(inner);
        }
        crate::model::Field::BlobValue(inner) => {
            object_42
                .key("blobValue")
                .string_unchecked(&aws_smithy_types::base64::encode(inner));
        }
        crate::model::Field::ArrayValue(inner) => {
            let mut object_45 = object_42.key("arrayValue").start_object();
            crate::json_ser::serialize_union_crate_model_array_value(&mut object_45, inner)?;
            object_45.finish();
        }
        crate::model::Field::Unknown => {
            return Err(aws_smithy_http::operation::SerializationError::unknown_variant("Field"))
        }
    }
    Ok(())
}

pub fn serialize_union_crate_model_array_value(
    object_45: &mut aws_smithy_json::serialize::JsonObjectWriter,
    input: &crate::model::ArrayValue,
) -> Result<(), aws_smithy_http::operation::SerializationError> {
    match input {
        crate::model::ArrayValue::BooleanValues(inner) => {
            let mut array_46 = object_45.key("booleanValues").start_array();
            for item_47 in inner {
                {
                    array_46.value().boolean(*item_47);
                }
            }
            array_46.finish();
        }
        crate::model::ArrayValue::LongValues(inner) => {
            let mut array_48 = object_45.key("longValues").start_array();
            for item_49 in inner {
                {
                    array_48.value().number(
                        #[allow(clippy::useless_conversion)]
                        aws_smithy_types::Number::NegInt((*item_49).into()),
                    );
                }
            }
            array_48.finish();
        }
        crate::model::ArrayValue::DoubleValues(inner) => {
            let mut array_50 = object_45.key("doubleValues").start_array();
            for item_51 in inner {
                {
                    array_50.value().number(
                        #[allow(clippy::useless_conversion)]
                        aws_smithy_types::Number::Float((*item_51).into()),
                    );
                }
            }
            array_50.finish();
        }
        crate::model::ArrayValue::StringValues(inner) => {
            let mut array_52 = object_45.key("stringValues").start_array();
            for item_53 in inner {
                {
                    array_52.value().string(item_53);
                }
            }
            array_52.finish();
        }
        crate::model::ArrayValue::ArrayValues(inner) => {
            let mut array_54 = object_45.key("arrayValues").start_array();
            for item_55 in inner {
                {
                    let mut object_56 = array_54.value().start_object();
                    crate::json_ser::serialize_union_crate_model_array_value(
                        &mut object_56,
                        item_55,
                    )?;
                    object_56.finish();
                }
            }
            array_54.finish();
        }
        crate::model::ArrayValue::Unknown => {
            return Err(
                aws_smithy_http::operation::SerializationError::unknown_variant("ArrayValue"),
            )
        }
    }
    Ok(())
}