// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`ModifyMigrationProject`](crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`migration_project_identifier(impl Into<String>)`](crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder::migration_project_identifier) / [`set_migration_project_identifier(Option<String>)`](crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder::set_migration_project_identifier):<br>required: **true**<br><p>The identifier of the migration project. Identifiers must begin with a letter and must contain only ASCII letters, digits, and hyphens. They can't end with a hyphen, or contain two consecutive hyphens.</p><br>
/// - [`migration_project_name(impl Into<String>)`](crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder::migration_project_name) / [`set_migration_project_name(Option<String>)`](crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder::set_migration_project_name):<br>required: **false**<br><p>A user-friendly name for the migration project.</p><br>
/// - [`source_data_provider_descriptors(DataProviderDescriptorDefinition)`](crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder::source_data_provider_descriptors) / [`set_source_data_provider_descriptors(Option<Vec::<DataProviderDescriptorDefinition>>)`](crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder::set_source_data_provider_descriptors):<br>required: **false**<br><p>Information about the source data provider, including the name, ARN, and Amazon Web Services Secrets Manager parameters.</p><br>
/// - [`target_data_provider_descriptors(DataProviderDescriptorDefinition)`](crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder::target_data_provider_descriptors) / [`set_target_data_provider_descriptors(Option<Vec::<DataProviderDescriptorDefinition>>)`](crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder::set_target_data_provider_descriptors):<br>required: **false**<br><p>Information about the target data provider, including the name, ARN, and Amazon Web Services Secrets Manager parameters.</p><br>
/// - [`instance_profile_identifier(impl Into<String>)`](crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder::instance_profile_identifier) / [`set_instance_profile_identifier(Option<String>)`](crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder::set_instance_profile_identifier):<br>required: **false**<br><p>The name or Amazon Resource Name (ARN) for the instance profile.</p><br>
/// - [`transformation_rules(impl Into<String>)`](crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder::transformation_rules) / [`set_transformation_rules(Option<String>)`](crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder::set_transformation_rules):<br>required: **false**<br><p>A JSON string that specifies the transformation rules for the migration project. Transformation rules let you customize how DMS Schema Conversion converts your source database objects, including renaming, adding prefixes or suffixes, and changing data types. For the transformation rule format and examples, see <a href="https://docs.aws.amazon.com/dms/latest/userguide/sc-transformation-rules.html">Transformation rules in DMS Schema Conversion</a>.</p><note> <p>Homogeneous data migrations do not support transformation rules.</p> </note><br>
/// - [`description(impl Into<String>)`](crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder::set_description):<br>required: **false**<br><p>A user-friendly description of the migration project.</p><br>
/// - [`schema_conversion_application_attributes(ScApplicationAttributes)`](crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder::schema_conversion_application_attributes) / [`set_schema_conversion_application_attributes(Option<ScApplicationAttributes>)`](crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder::set_schema_conversion_application_attributes):<br>required: **false**<br><p>The schema conversion application attributes, including the Amazon S3 bucket name and Amazon S3 role ARN.</p><br>
/// - On success, responds with [`ModifyMigrationProjectOutput`](crate::operation::modify_migration_project::ModifyMigrationProjectOutput) with field(s):
/// - [`migration_project(Option<MigrationProject>)`](crate::operation::modify_migration_project::ModifyMigrationProjectOutput::migration_project): <p>The migration project that was modified.</p>
/// - On failure, responds with [`SdkError<ModifyMigrationProjectError>`](crate::operation::modify_migration_project::ModifyMigrationProjectError)
pub fn modify_migration_project(&self) -> crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder {
crate::operation::modify_migration_project::builders::ModifyMigrationProjectFluentBuilder::new(self.handle.clone())
}
}