// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`PutAccountSetting`](crate::operation::put_account_setting::builders::PutAccountSettingFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`name(SettingName)`](crate::operation::put_account_setting::builders::PutAccountSettingFluentBuilder::name) / [`set_name(Option<SettingName>)`](crate::operation::put_account_setting::builders::PutAccountSettingFluentBuilder::set_name): <p>The Amazon ECS resource name for which to modify the account setting. If <code>serviceLongArnFormat</code> is specified, the ARN for your Amazon ECS services is affected. If <code>taskLongArnFormat</code> is specified, the ARN and resource ID for your Amazon ECS tasks is affected. If <code>containerInstanceLongArnFormat</code> is specified, the ARN and resource ID for your Amazon ECS container instances is affected. If <code>awsvpcTrunking</code> is specified, the elastic network interface (ENI) limit for your Amazon ECS container instances is affected. If <code>containerInsights</code> is specified, the default setting for Amazon Web Services CloudWatch Container Insights for your clusters is affected. If <code>fargateFIPSMode</code> is specified, Fargate FIPS 140 compliance is affected. If <code>tagResourceAuthorization</code> is specified, the opt-in option for tagging resources on creation is affected. For information about the opt-in timeline, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#tag-resources">Tagging authorization timeline</a> in the <i>Amazon ECS Developer Guide</i>.</p>
/// - [`value(impl ::std::convert::Into<String>)`](crate::operation::put_account_setting::builders::PutAccountSettingFluentBuilder::value) / [`set_value(Option<String>)`](crate::operation::put_account_setting::builders::PutAccountSettingFluentBuilder::set_value): <p>The account setting value for the specified principal ARN. Accepted values are <code>enabled</code>, <code>disabled</code>, <code>on</code>, and <code>off</code>.</p>
/// - [`principal_arn(impl ::std::convert::Into<String>)`](crate::operation::put_account_setting::builders::PutAccountSettingFluentBuilder::principal_arn) / [`set_principal_arn(Option<String>)`](crate::operation::put_account_setting::builders::PutAccountSettingFluentBuilder::set_principal_arn): <p>The ARN of the principal, which can be a user, role, or the root user. If you specify the root user, it modifies the account setting for all users, roles, and the root user of the account unless a user or role explicitly overrides these settings. If this field is omitted, the setting is changed only for the authenticated user.</p> <note> <p>Federated users assume the account setting of the root user and can't have explicit account settings set for them.</p> </note>
/// - On success, responds with [`PutAccountSettingOutput`](crate::operation::put_account_setting::PutAccountSettingOutput) with field(s):
/// - [`setting(Option<Setting>)`](crate::operation::put_account_setting::PutAccountSettingOutput::setting): <p>The current account setting for a resource.</p>
/// - On failure, responds with [`SdkError<PutAccountSettingError>`](crate::operation::put_account_setting::PutAccountSettingError)
pub fn put_account_setting(&self) -> crate::operation::put_account_setting::builders::PutAccountSettingFluentBuilder {
crate::operation::put_account_setting::builders::PutAccountSettingFluentBuilder::new(self.handle.clone())
}
}