// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`ExecutePolicy`](crate::operation::execute_policy::builders::ExecutePolicyFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`auto_scaling_group_name(impl Into<String>)`](crate::operation::execute_policy::builders::ExecutePolicyFluentBuilder::auto_scaling_group_name) / [`set_auto_scaling_group_name(Option<String>)`](crate::operation::execute_policy::builders::ExecutePolicyFluentBuilder::set_auto_scaling_group_name):<br>required: **false**<br><p>The name of the Auto Scaling group.</p><br>
/// - [`policy_name(impl Into<String>)`](crate::operation::execute_policy::builders::ExecutePolicyFluentBuilder::policy_name) / [`set_policy_name(Option<String>)`](crate::operation::execute_policy::builders::ExecutePolicyFluentBuilder::set_policy_name):<br>required: **true**<br><p>The name or ARN of the policy.</p><br>
/// - [`honor_cooldown(bool)`](crate::operation::execute_policy::builders::ExecutePolicyFluentBuilder::honor_cooldown) / [`set_honor_cooldown(Option<bool>)`](crate::operation::execute_policy::builders::ExecutePolicyFluentBuilder::set_honor_cooldown):<br>required: **false**<br><p>Indicates whether Amazon EC2 Auto Scaling waits for the cooldown period to complete before executing the policy.</p> <p>Valid only if the policy type is <code>SimpleScaling</code>. For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/Cooldown.html">Scaling cooldowns for Amazon EC2 Auto Scaling</a> in the <i>Amazon EC2 Auto Scaling User Guide</i>.</p><br>
/// - [`metric_value(f64)`](crate::operation::execute_policy::builders::ExecutePolicyFluentBuilder::metric_value) / [`set_metric_value(Option<f64>)`](crate::operation::execute_policy::builders::ExecutePolicyFluentBuilder::set_metric_value):<br>required: **false**<br><p>The metric value to compare to <code>BreachThreshold</code>. This enables you to execute a policy of type <code>StepScaling</code> and determine which step adjustment to use. For example, if the breach threshold is 50 and you want to use a step adjustment with a lower bound of 0 and an upper bound of 10, you can set the metric value to 59.</p> <p>If you specify a metric value that doesn't correspond to a step adjustment for the policy, the call returns an error.</p> <p>Required if the policy type is <code>StepScaling</code> and not supported otherwise.</p><br>
/// - [`breach_threshold(f64)`](crate::operation::execute_policy::builders::ExecutePolicyFluentBuilder::breach_threshold) / [`set_breach_threshold(Option<f64>)`](crate::operation::execute_policy::builders::ExecutePolicyFluentBuilder::set_breach_threshold):<br>required: **false**<br><p>The breach threshold for the alarm.</p> <p>Required if the policy type is <code>StepScaling</code> and not supported otherwise.</p><br>
/// - On success, responds with [`ExecutePolicyOutput`](crate::operation::execute_policy::ExecutePolicyOutput)
/// - On failure, responds with [`SdkError<ExecutePolicyError>`](crate::operation::execute_policy::ExecutePolicyError)
pub fn execute_policy(&self) -> crate::operation::execute_policy::builders::ExecutePolicyFluentBuilder {
crate::operation::execute_policy::builders::ExecutePolicyFluentBuilder::new(self.handle.clone())
}
}