// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`UpdateFleetAttributes`](crate::operation::update_fleet_attributes::builders::UpdateFleetAttributesFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`fleet_id(impl ::std::convert::Into<String>)`](crate::operation::update_fleet_attributes::builders::UpdateFleetAttributesFluentBuilder::fleet_id) / [`set_fleet_id(Option<String>)`](crate::operation::update_fleet_attributes::builders::UpdateFleetAttributesFluentBuilder::set_fleet_id): <p>A unique identifier for the fleet to update attribute metadata for. You can use either the fleet ID or ARN value.</p>
/// - [`name(impl ::std::convert::Into<String>)`](crate::operation::update_fleet_attributes::builders::UpdateFleetAttributesFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::update_fleet_attributes::builders::UpdateFleetAttributesFluentBuilder::set_name): <p>A descriptive label that is associated with a fleet. Fleet names do not need to be unique.</p>
/// - [`description(impl ::std::convert::Into<String>)`](crate::operation::update_fleet_attributes::builders::UpdateFleetAttributesFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::update_fleet_attributes::builders::UpdateFleetAttributesFluentBuilder::set_description): <p>A human-readable description of a fleet.</p>
/// - [`new_game_session_protection_policy(ProtectionPolicy)`](crate::operation::update_fleet_attributes::builders::UpdateFleetAttributesFluentBuilder::new_game_session_protection_policy) / [`set_new_game_session_protection_policy(Option<ProtectionPolicy>)`](crate::operation::update_fleet_attributes::builders::UpdateFleetAttributesFluentBuilder::set_new_game_session_protection_policy): <p>The game session protection policy to apply to all new instances created in this fleet. Instances that already exist are not affected. You can set protection for individual instances using <a href="https://docs.aws.amazon.com/gamelift/latest/apireference/API_UpdateGameSession.html">UpdateGameSession</a> .</p> <ul> <li> <p> <b>NoProtection</b> -- The game session can be terminated during a scale-down event.</p> </li> <li> <p> <b>FullProtection</b> -- If the game session is in an <code>ACTIVE</code> status, it cannot be terminated during a scale-down event.</p> </li> </ul>
/// - [`resource_creation_limit_policy(ResourceCreationLimitPolicy)`](crate::operation::update_fleet_attributes::builders::UpdateFleetAttributesFluentBuilder::resource_creation_limit_policy) / [`set_resource_creation_limit_policy(Option<ResourceCreationLimitPolicy>)`](crate::operation::update_fleet_attributes::builders::UpdateFleetAttributesFluentBuilder::set_resource_creation_limit_policy): <p>Policy settings that limit the number of game sessions an individual player can create over a span of time. </p>
/// - [`metric_groups(Vec<String>)`](crate::operation::update_fleet_attributes::builders::UpdateFleetAttributesFluentBuilder::metric_groups) / [`set_metric_groups(Option<Vec<String>>)`](crate::operation::update_fleet_attributes::builders::UpdateFleetAttributesFluentBuilder::set_metric_groups): <p>The name of a metric group to add this fleet to. Use a metric group in Amazon CloudWatch to aggregate the metrics from multiple fleets. Provide an existing metric group name, or create a new metric group by providing a new name. A fleet can only be in one metric group at a time.</p>
/// - [`anywhere_configuration(AnywhereConfiguration)`](crate::operation::update_fleet_attributes::builders::UpdateFleetAttributesFluentBuilder::anywhere_configuration) / [`set_anywhere_configuration(Option<AnywhereConfiguration>)`](crate::operation::update_fleet_attributes::builders::UpdateFleetAttributesFluentBuilder::set_anywhere_configuration): <p>Amazon GameLift Anywhere configuration options.</p>
/// - On success, responds with [`UpdateFleetAttributesOutput`](crate::operation::update_fleet_attributes::UpdateFleetAttributesOutput) with field(s):
/// - [`fleet_id(Option<String>)`](crate::operation::update_fleet_attributes::UpdateFleetAttributesOutput::fleet_id): <p>A unique identifier for the fleet that was updated.</p>
/// - [`fleet_arn(Option<String>)`](crate::operation::update_fleet_attributes::UpdateFleetAttributesOutput::fleet_arn): <p>The Amazon Resource Name (<a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-arn-format.html">ARN</a>) that is assigned to a Amazon GameLift fleet resource and uniquely identifies it. ARNs are unique across all Regions. Format is <code>arn:aws:gamelift: <region> ::fleet/fleet-a1234567-b8c9-0d1e-2fa3-b45c6d7e8912 </region></code>.</p>
/// - On failure, responds with [`SdkError<UpdateFleetAttributesError>`](crate::operation::update_fleet_attributes::UpdateFleetAttributesError)
pub fn update_fleet_attributes(&self) -> crate::operation::update_fleet_attributes::builders::UpdateFleetAttributesFluentBuilder {
crate::operation::update_fleet_attributes::builders::UpdateFleetAttributesFluentBuilder::new(self.handle.clone())
}
}