// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`UpdateApplication`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`application_name(impl Into<String>)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::application_name) / [`set_application_name(Option<String>)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::set_application_name):<br>required: **true**<br><p>The name of the application to update.</p><br>
/// - [`current_application_version_id(i64)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::current_application_version_id) / [`set_current_application_version_id(Option<i64>)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::set_current_application_version_id):<br>required: **false**<br><p>The current application version ID. You must provide the <code>CurrentApplicationVersionId</code> or the <code>ConditionalToken</code>.You can retrieve the application version ID using <code>DescribeApplication</code>. For better concurrency support, use the <code>ConditionalToken</code> parameter instead of <code>CurrentApplicationVersionId</code>.</p><br>
/// - [`application_configuration_update(ApplicationConfigurationUpdate)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::application_configuration_update) / [`set_application_configuration_update(Option<ApplicationConfigurationUpdate>)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::set_application_configuration_update):<br>required: **false**<br><p>Describes application configuration updates.</p><br>
/// - [`service_execution_role_update(impl Into<String>)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::service_execution_role_update) / [`set_service_execution_role_update(Option<String>)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::set_service_execution_role_update):<br>required: **false**<br><p>Describes updates to the service execution role.</p><br>
/// - [`run_configuration_update(RunConfigurationUpdate)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::run_configuration_update) / [`set_run_configuration_update(Option<RunConfigurationUpdate>)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::set_run_configuration_update):<br>required: **false**<br><p>Describes updates to the application's starting parameters.</p><br>
/// - [`cloud_watch_logging_option_updates(CloudWatchLoggingOptionUpdate)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::cloud_watch_logging_option_updates) / [`set_cloud_watch_logging_option_updates(Option<Vec::<CloudWatchLoggingOptionUpdate>>)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::set_cloud_watch_logging_option_updates):<br>required: **false**<br><p>Describes application Amazon CloudWatch logging option updates. You can only update existing CloudWatch logging options with this action. To add a new CloudWatch logging option, use <code>AddApplicationCloudWatchLoggingOption</code>.</p><br>
/// - [`conditional_token(impl Into<String>)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::conditional_token) / [`set_conditional_token(Option<String>)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::set_conditional_token):<br>required: **false**<br><p>A value you use to implement strong concurrency for application updates. You must provide the <code>CurrentApplicationVersionId</code> or the <code>ConditionalToken</code>. You get the application's current <code>ConditionalToken</code> using <code>DescribeApplication</code>. For better concurrency support, use the <code>ConditionalToken</code> parameter instead of <code>CurrentApplicationVersionId</code>.</p><br>
/// - On success, responds with [`UpdateApplicationOutput`](crate::operation::update_application::UpdateApplicationOutput) with field(s):
/// - [`application_detail(Option<ApplicationDetail>)`](crate::operation::update_application::UpdateApplicationOutput::application_detail): <p>Describes application updates.</p>
/// - On failure, responds with [`SdkError<UpdateApplicationError>`](crate::operation::update_application::UpdateApplicationError)
pub fn update_application(&self) -> crate::operation::update_application::builders::UpdateApplicationFluentBuilder {
crate::operation::update_application::builders::UpdateApplicationFluentBuilder::new(self.handle.clone())
}
}