/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include namespace Aws { namespace GameLift { namespace Model { /** */ class PutScalingPolicyRequest : public GameLiftRequest { public: AWS_GAMELIFT_API PutScalingPolicyRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "PutScalingPolicy"; } AWS_GAMELIFT_API Aws::String SerializePayload() const override; AWS_GAMELIFT_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

A descriptive label that is associated with a fleet's scaling policy. Policy * names do not need to be unique. A fleet can have only one scaling policy with * the same name.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

A descriptive label that is associated with a fleet's scaling policy. Policy * names do not need to be unique. A fleet can have only one scaling policy with * the same name.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

A descriptive label that is associated with a fleet's scaling policy. Policy * names do not need to be unique. A fleet can have only one scaling policy with * the same name.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

A descriptive label that is associated with a fleet's scaling policy. Policy * names do not need to be unique. A fleet can have only one scaling policy with * the same name.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

A descriptive label that is associated with a fleet's scaling policy. Policy * names do not need to be unique. A fleet can have only one scaling policy with * the same name.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

A descriptive label that is associated with a fleet's scaling policy. Policy * names do not need to be unique. A fleet can have only one scaling policy with * the same name.

*/ inline PutScalingPolicyRequest& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

A descriptive label that is associated with a fleet's scaling policy. Policy * names do not need to be unique. A fleet can have only one scaling policy with * the same name.

*/ inline PutScalingPolicyRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

A descriptive label that is associated with a fleet's scaling policy. Policy * names do not need to be unique. A fleet can have only one scaling policy with * the same name.

*/ inline PutScalingPolicyRequest& WithName(const char* value) { SetName(value); return *this;} /** *

A unique identifier for the fleet to apply this policy to. You can use either * the fleet ID or ARN value. The fleet cannot be in any of the following statuses: * ERROR or DELETING.

*/ inline const Aws::String& GetFleetId() const{ return m_fleetId; } /** *

A unique identifier for the fleet to apply this policy to. You can use either * the fleet ID or ARN value. The fleet cannot be in any of the following statuses: * ERROR or DELETING.

*/ inline bool FleetIdHasBeenSet() const { return m_fleetIdHasBeenSet; } /** *

A unique identifier for the fleet to apply this policy to. You can use either * the fleet ID or ARN value. The fleet cannot be in any of the following statuses: * ERROR or DELETING.

*/ inline void SetFleetId(const Aws::String& value) { m_fleetIdHasBeenSet = true; m_fleetId = value; } /** *

A unique identifier for the fleet to apply this policy to. You can use either * the fleet ID or ARN value. The fleet cannot be in any of the following statuses: * ERROR or DELETING.

*/ inline void SetFleetId(Aws::String&& value) { m_fleetIdHasBeenSet = true; m_fleetId = std::move(value); } /** *

A unique identifier for the fleet to apply this policy to. You can use either * the fleet ID or ARN value. The fleet cannot be in any of the following statuses: * ERROR or DELETING.

*/ inline void SetFleetId(const char* value) { m_fleetIdHasBeenSet = true; m_fleetId.assign(value); } /** *

A unique identifier for the fleet to apply this policy to. You can use either * the fleet ID or ARN value. The fleet cannot be in any of the following statuses: * ERROR or DELETING.

*/ inline PutScalingPolicyRequest& WithFleetId(const Aws::String& value) { SetFleetId(value); return *this;} /** *

A unique identifier for the fleet to apply this policy to. You can use either * the fleet ID or ARN value. The fleet cannot be in any of the following statuses: * ERROR or DELETING.

*/ inline PutScalingPolicyRequest& WithFleetId(Aws::String&& value) { SetFleetId(std::move(value)); return *this;} /** *

A unique identifier for the fleet to apply this policy to. You can use either * the fleet ID or ARN value. The fleet cannot be in any of the following statuses: * ERROR or DELETING.

*/ inline PutScalingPolicyRequest& WithFleetId(const char* value) { SetFleetId(value); return *this;} /** *

Amount of adjustment to make, based on the scaling adjustment type.

*/ inline int GetScalingAdjustment() const{ return m_scalingAdjustment; } /** *

Amount of adjustment to make, based on the scaling adjustment type.

*/ inline bool ScalingAdjustmentHasBeenSet() const { return m_scalingAdjustmentHasBeenSet; } /** *

Amount of adjustment to make, based on the scaling adjustment type.

*/ inline void SetScalingAdjustment(int value) { m_scalingAdjustmentHasBeenSet = true; m_scalingAdjustment = value; } /** *

Amount of adjustment to make, based on the scaling adjustment type.

*/ inline PutScalingPolicyRequest& WithScalingAdjustment(int value) { SetScalingAdjustment(value); return *this;} /** *

The type of adjustment to make to a fleet's instance count:

  • * ChangeInCapacity -- add (or subtract) the scaling adjustment value from * the current instance count. Positive values scale up while negative values scale * down.

  • ExactCapacity -- set the instance count to the * scaling adjustment value.

  • PercentChangeInCapacity -- * increase or reduce the current instance count by the scaling adjustment, read as * a percentage. Positive values scale up while negative values scale down; for * example, a value of "-10" scales the fleet down by 10%.

*/ inline const ScalingAdjustmentType& GetScalingAdjustmentType() const{ return m_scalingAdjustmentType; } /** *

The type of adjustment to make to a fleet's instance count:

  • * ChangeInCapacity -- add (or subtract) the scaling adjustment value from * the current instance count. Positive values scale up while negative values scale * down.

  • ExactCapacity -- set the instance count to the * scaling adjustment value.

  • PercentChangeInCapacity -- * increase or reduce the current instance count by the scaling adjustment, read as * a percentage. Positive values scale up while negative values scale down; for * example, a value of "-10" scales the fleet down by 10%.

*/ inline bool ScalingAdjustmentTypeHasBeenSet() const { return m_scalingAdjustmentTypeHasBeenSet; } /** *

The type of adjustment to make to a fleet's instance count:

  • * ChangeInCapacity -- add (or subtract) the scaling adjustment value from * the current instance count. Positive values scale up while negative values scale * down.

  • ExactCapacity -- set the instance count to the * scaling adjustment value.

  • PercentChangeInCapacity -- * increase or reduce the current instance count by the scaling adjustment, read as * a percentage. Positive values scale up while negative values scale down; for * example, a value of "-10" scales the fleet down by 10%.

*/ inline void SetScalingAdjustmentType(const ScalingAdjustmentType& value) { m_scalingAdjustmentTypeHasBeenSet = true; m_scalingAdjustmentType = value; } /** *

The type of adjustment to make to a fleet's instance count:

  • * ChangeInCapacity -- add (or subtract) the scaling adjustment value from * the current instance count. Positive values scale up while negative values scale * down.

  • ExactCapacity -- set the instance count to the * scaling adjustment value.

  • PercentChangeInCapacity -- * increase or reduce the current instance count by the scaling adjustment, read as * a percentage. Positive values scale up while negative values scale down; for * example, a value of "-10" scales the fleet down by 10%.

*/ inline void SetScalingAdjustmentType(ScalingAdjustmentType&& value) { m_scalingAdjustmentTypeHasBeenSet = true; m_scalingAdjustmentType = std::move(value); } /** *

The type of adjustment to make to a fleet's instance count:

  • * ChangeInCapacity -- add (or subtract) the scaling adjustment value from * the current instance count. Positive values scale up while negative values scale * down.

  • ExactCapacity -- set the instance count to the * scaling adjustment value.

  • PercentChangeInCapacity -- * increase or reduce the current instance count by the scaling adjustment, read as * a percentage. Positive values scale up while negative values scale down; for * example, a value of "-10" scales the fleet down by 10%.

*/ inline PutScalingPolicyRequest& WithScalingAdjustmentType(const ScalingAdjustmentType& value) { SetScalingAdjustmentType(value); return *this;} /** *

The type of adjustment to make to a fleet's instance count:

  • * ChangeInCapacity -- add (or subtract) the scaling adjustment value from * the current instance count. Positive values scale up while negative values scale * down.

  • ExactCapacity -- set the instance count to the * scaling adjustment value.

  • PercentChangeInCapacity -- * increase or reduce the current instance count by the scaling adjustment, read as * a percentage. Positive values scale up while negative values scale down; for * example, a value of "-10" scales the fleet down by 10%.

*/ inline PutScalingPolicyRequest& WithScalingAdjustmentType(ScalingAdjustmentType&& value) { SetScalingAdjustmentType(std::move(value)); return *this;} /** *

Metric value used to trigger a scaling event.

*/ inline double GetThreshold() const{ return m_threshold; } /** *

Metric value used to trigger a scaling event.

*/ inline bool ThresholdHasBeenSet() const { return m_thresholdHasBeenSet; } /** *

Metric value used to trigger a scaling event.

*/ inline void SetThreshold(double value) { m_thresholdHasBeenSet = true; m_threshold = value; } /** *

Metric value used to trigger a scaling event.

*/ inline PutScalingPolicyRequest& WithThreshold(double value) { SetThreshold(value); return *this;} /** *

Comparison operator to use when measuring the metric against the threshold * value.

*/ inline const ComparisonOperatorType& GetComparisonOperator() const{ return m_comparisonOperator; } /** *

Comparison operator to use when measuring the metric against the threshold * value.

*/ inline bool ComparisonOperatorHasBeenSet() const { return m_comparisonOperatorHasBeenSet; } /** *

Comparison operator to use when measuring the metric against the threshold * value.

*/ inline void SetComparisonOperator(const ComparisonOperatorType& value) { m_comparisonOperatorHasBeenSet = true; m_comparisonOperator = value; } /** *

Comparison operator to use when measuring the metric against the threshold * value.

*/ inline void SetComparisonOperator(ComparisonOperatorType&& value) { m_comparisonOperatorHasBeenSet = true; m_comparisonOperator = std::move(value); } /** *

Comparison operator to use when measuring the metric against the threshold * value.

*/ inline PutScalingPolicyRequest& WithComparisonOperator(const ComparisonOperatorType& value) { SetComparisonOperator(value); return *this;} /** *

Comparison operator to use when measuring the metric against the threshold * value.

*/ inline PutScalingPolicyRequest& WithComparisonOperator(ComparisonOperatorType&& value) { SetComparisonOperator(std::move(value)); return *this;} /** *

Length of time (in minutes) the metric must be at or beyond the threshold * before a scaling event is triggered.

*/ inline int GetEvaluationPeriods() const{ return m_evaluationPeriods; } /** *

Length of time (in minutes) the metric must be at or beyond the threshold * before a scaling event is triggered.

*/ inline bool EvaluationPeriodsHasBeenSet() const { return m_evaluationPeriodsHasBeenSet; } /** *

Length of time (in minutes) the metric must be at or beyond the threshold * before a scaling event is triggered.

*/ inline void SetEvaluationPeriods(int value) { m_evaluationPeriodsHasBeenSet = true; m_evaluationPeriods = value; } /** *

Length of time (in minutes) the metric must be at or beyond the threshold * before a scaling event is triggered.

*/ inline PutScalingPolicyRequest& WithEvaluationPeriods(int value) { SetEvaluationPeriods(value); return *this;} /** *

Name of the Amazon GameLift-defined metric that is used to trigger a scaling * adjustment. For detailed descriptions of fleet metrics, see Monitor * Amazon GameLift with Amazon CloudWatch.

  • * ActivatingGameSessions -- Game sessions in the process of being * created.

  • ActiveGameSessions -- Game sessions that are * currently running.

  • ActiveInstances -- Fleet instances * that are currently running at least one game session.

  • * AvailableGameSessions -- Additional game sessions that fleet could host * simultaneously, given current capacity.

  • * AvailablePlayerSessions -- Empty player slots in currently active game * sessions. This includes game sessions that are not currently accepting players. * Reserved player slots are not included.

  • * CurrentPlayerSessions -- Player slots in active game sessions that are * being used by a player or are reserved for a player.

  • * IdleInstances -- Active instances that are currently hosting zero game * sessions.

  • PercentAvailableGameSessions -- Unused * percentage of the total number of game sessions that a fleet could host * simultaneously, given current capacity. Use this metric for a target-based * scaling policy.

  • PercentIdleInstances -- Percentage of * the total number of active instances that are hosting zero game sessions.

    *
  • QueueDepth -- Pending game session placement requests, in * any queue, where the current fleet is the top-priority destination.

  • *
  • WaitTime -- Current wait time for pending game session placement * requests, in any queue, where the current fleet is the top-priority destination. *

*/ inline const MetricName& GetMetricName() const{ return m_metricName; } /** *

Name of the Amazon GameLift-defined metric that is used to trigger a scaling * adjustment. For detailed descriptions of fleet metrics, see Monitor * Amazon GameLift with Amazon CloudWatch.

  • * ActivatingGameSessions -- Game sessions in the process of being * created.

  • ActiveGameSessions -- Game sessions that are * currently running.

  • ActiveInstances -- Fleet instances * that are currently running at least one game session.

  • * AvailableGameSessions -- Additional game sessions that fleet could host * simultaneously, given current capacity.

  • * AvailablePlayerSessions -- Empty player slots in currently active game * sessions. This includes game sessions that are not currently accepting players. * Reserved player slots are not included.

  • * CurrentPlayerSessions -- Player slots in active game sessions that are * being used by a player or are reserved for a player.

  • * IdleInstances -- Active instances that are currently hosting zero game * sessions.

  • PercentAvailableGameSessions -- Unused * percentage of the total number of game sessions that a fleet could host * simultaneously, given current capacity. Use this metric for a target-based * scaling policy.

  • PercentIdleInstances -- Percentage of * the total number of active instances that are hosting zero game sessions.

    *
  • QueueDepth -- Pending game session placement requests, in * any queue, where the current fleet is the top-priority destination.

  • *
  • WaitTime -- Current wait time for pending game session placement * requests, in any queue, where the current fleet is the top-priority destination. *

*/ inline bool MetricNameHasBeenSet() const { return m_metricNameHasBeenSet; } /** *

Name of the Amazon GameLift-defined metric that is used to trigger a scaling * adjustment. For detailed descriptions of fleet metrics, see Monitor * Amazon GameLift with Amazon CloudWatch.

  • * ActivatingGameSessions -- Game sessions in the process of being * created.

  • ActiveGameSessions -- Game sessions that are * currently running.

  • ActiveInstances -- Fleet instances * that are currently running at least one game session.

  • * AvailableGameSessions -- Additional game sessions that fleet could host * simultaneously, given current capacity.

  • * AvailablePlayerSessions -- Empty player slots in currently active game * sessions. This includes game sessions that are not currently accepting players. * Reserved player slots are not included.

  • * CurrentPlayerSessions -- Player slots in active game sessions that are * being used by a player or are reserved for a player.

  • * IdleInstances -- Active instances that are currently hosting zero game * sessions.

  • PercentAvailableGameSessions -- Unused * percentage of the total number of game sessions that a fleet could host * simultaneously, given current capacity. Use this metric for a target-based * scaling policy.

  • PercentIdleInstances -- Percentage of * the total number of active instances that are hosting zero game sessions.

    *
  • QueueDepth -- Pending game session placement requests, in * any queue, where the current fleet is the top-priority destination.

  • *
  • WaitTime -- Current wait time for pending game session placement * requests, in any queue, where the current fleet is the top-priority destination. *

*/ inline void SetMetricName(const MetricName& value) { m_metricNameHasBeenSet = true; m_metricName = value; } /** *

Name of the Amazon GameLift-defined metric that is used to trigger a scaling * adjustment. For detailed descriptions of fleet metrics, see Monitor * Amazon GameLift with Amazon CloudWatch.

  • * ActivatingGameSessions -- Game sessions in the process of being * created.

  • ActiveGameSessions -- Game sessions that are * currently running.

  • ActiveInstances -- Fleet instances * that are currently running at least one game session.

  • * AvailableGameSessions -- Additional game sessions that fleet could host * simultaneously, given current capacity.

  • * AvailablePlayerSessions -- Empty player slots in currently active game * sessions. This includes game sessions that are not currently accepting players. * Reserved player slots are not included.

  • * CurrentPlayerSessions -- Player slots in active game sessions that are * being used by a player or are reserved for a player.

  • * IdleInstances -- Active instances that are currently hosting zero game * sessions.

  • PercentAvailableGameSessions -- Unused * percentage of the total number of game sessions that a fleet could host * simultaneously, given current capacity. Use this metric for a target-based * scaling policy.

  • PercentIdleInstances -- Percentage of * the total number of active instances that are hosting zero game sessions.

    *
  • QueueDepth -- Pending game session placement requests, in * any queue, where the current fleet is the top-priority destination.

  • *
  • WaitTime -- Current wait time for pending game session placement * requests, in any queue, where the current fleet is the top-priority destination. *

*/ inline void SetMetricName(MetricName&& value) { m_metricNameHasBeenSet = true; m_metricName = std::move(value); } /** *

Name of the Amazon GameLift-defined metric that is used to trigger a scaling * adjustment. For detailed descriptions of fleet metrics, see Monitor * Amazon GameLift with Amazon CloudWatch.

  • * ActivatingGameSessions -- Game sessions in the process of being * created.

  • ActiveGameSessions -- Game sessions that are * currently running.

  • ActiveInstances -- Fleet instances * that are currently running at least one game session.

  • * AvailableGameSessions -- Additional game sessions that fleet could host * simultaneously, given current capacity.

  • * AvailablePlayerSessions -- Empty player slots in currently active game * sessions. This includes game sessions that are not currently accepting players. * Reserved player slots are not included.

  • * CurrentPlayerSessions -- Player slots in active game sessions that are * being used by a player or are reserved for a player.

  • * IdleInstances -- Active instances that are currently hosting zero game * sessions.

  • PercentAvailableGameSessions -- Unused * percentage of the total number of game sessions that a fleet could host * simultaneously, given current capacity. Use this metric for a target-based * scaling policy.

  • PercentIdleInstances -- Percentage of * the total number of active instances that are hosting zero game sessions.

    *
  • QueueDepth -- Pending game session placement requests, in * any queue, where the current fleet is the top-priority destination.

  • *
  • WaitTime -- Current wait time for pending game session placement * requests, in any queue, where the current fleet is the top-priority destination. *

*/ inline PutScalingPolicyRequest& WithMetricName(const MetricName& value) { SetMetricName(value); return *this;} /** *

Name of the Amazon GameLift-defined metric that is used to trigger a scaling * adjustment. For detailed descriptions of fleet metrics, see Monitor * Amazon GameLift with Amazon CloudWatch.

  • * ActivatingGameSessions -- Game sessions in the process of being * created.

  • ActiveGameSessions -- Game sessions that are * currently running.

  • ActiveInstances -- Fleet instances * that are currently running at least one game session.

  • * AvailableGameSessions -- Additional game sessions that fleet could host * simultaneously, given current capacity.

  • * AvailablePlayerSessions -- Empty player slots in currently active game * sessions. This includes game sessions that are not currently accepting players. * Reserved player slots are not included.

  • * CurrentPlayerSessions -- Player slots in active game sessions that are * being used by a player or are reserved for a player.

  • * IdleInstances -- Active instances that are currently hosting zero game * sessions.

  • PercentAvailableGameSessions -- Unused * percentage of the total number of game sessions that a fleet could host * simultaneously, given current capacity. Use this metric for a target-based * scaling policy.

  • PercentIdleInstances -- Percentage of * the total number of active instances that are hosting zero game sessions.

    *
  • QueueDepth -- Pending game session placement requests, in * any queue, where the current fleet is the top-priority destination.

  • *
  • WaitTime -- Current wait time for pending game session placement * requests, in any queue, where the current fleet is the top-priority destination. *

*/ inline PutScalingPolicyRequest& WithMetricName(MetricName&& value) { SetMetricName(std::move(value)); return *this;} /** *

The type of scaling policy to create. For a target-based policy, set the * parameter MetricName to 'PercentAvailableGameSessions' and specify a * TargetConfiguration. For a rule-based policy set the following * parameters: MetricName, ComparisonOperator, Threshold, * EvaluationPeriods, ScalingAdjustmentType, and * ScalingAdjustment.

*/ inline const PolicyType& GetPolicyType() const{ return m_policyType; } /** *

The type of scaling policy to create. For a target-based policy, set the * parameter MetricName to 'PercentAvailableGameSessions' and specify a * TargetConfiguration. For a rule-based policy set the following * parameters: MetricName, ComparisonOperator, Threshold, * EvaluationPeriods, ScalingAdjustmentType, and * ScalingAdjustment.

*/ inline bool PolicyTypeHasBeenSet() const { return m_policyTypeHasBeenSet; } /** *

The type of scaling policy to create. For a target-based policy, set the * parameter MetricName to 'PercentAvailableGameSessions' and specify a * TargetConfiguration. For a rule-based policy set the following * parameters: MetricName, ComparisonOperator, Threshold, * EvaluationPeriods, ScalingAdjustmentType, and * ScalingAdjustment.

*/ inline void SetPolicyType(const PolicyType& value) { m_policyTypeHasBeenSet = true; m_policyType = value; } /** *

The type of scaling policy to create. For a target-based policy, set the * parameter MetricName to 'PercentAvailableGameSessions' and specify a * TargetConfiguration. For a rule-based policy set the following * parameters: MetricName, ComparisonOperator, Threshold, * EvaluationPeriods, ScalingAdjustmentType, and * ScalingAdjustment.

*/ inline void SetPolicyType(PolicyType&& value) { m_policyTypeHasBeenSet = true; m_policyType = std::move(value); } /** *

The type of scaling policy to create. For a target-based policy, set the * parameter MetricName to 'PercentAvailableGameSessions' and specify a * TargetConfiguration. For a rule-based policy set the following * parameters: MetricName, ComparisonOperator, Threshold, * EvaluationPeriods, ScalingAdjustmentType, and * ScalingAdjustment.

*/ inline PutScalingPolicyRequest& WithPolicyType(const PolicyType& value) { SetPolicyType(value); return *this;} /** *

The type of scaling policy to create. For a target-based policy, set the * parameter MetricName to 'PercentAvailableGameSessions' and specify a * TargetConfiguration. For a rule-based policy set the following * parameters: MetricName, ComparisonOperator, Threshold, * EvaluationPeriods, ScalingAdjustmentType, and * ScalingAdjustment.

*/ inline PutScalingPolicyRequest& WithPolicyType(PolicyType&& value) { SetPolicyType(std::move(value)); return *this;} /** *

An object that contains settings for a target-based scaling policy.

*/ inline const TargetConfiguration& GetTargetConfiguration() const{ return m_targetConfiguration; } /** *

An object that contains settings for a target-based scaling policy.

*/ inline bool TargetConfigurationHasBeenSet() const { return m_targetConfigurationHasBeenSet; } /** *

An object that contains settings for a target-based scaling policy.

*/ inline void SetTargetConfiguration(const TargetConfiguration& value) { m_targetConfigurationHasBeenSet = true; m_targetConfiguration = value; } /** *

An object that contains settings for a target-based scaling policy.

*/ inline void SetTargetConfiguration(TargetConfiguration&& value) { m_targetConfigurationHasBeenSet = true; m_targetConfiguration = std::move(value); } /** *

An object that contains settings for a target-based scaling policy.

*/ inline PutScalingPolicyRequest& WithTargetConfiguration(const TargetConfiguration& value) { SetTargetConfiguration(value); return *this;} /** *

An object that contains settings for a target-based scaling policy.

*/ inline PutScalingPolicyRequest& WithTargetConfiguration(TargetConfiguration&& value) { SetTargetConfiguration(std::move(value)); return *this;} private: Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_fleetId; bool m_fleetIdHasBeenSet = false; int m_scalingAdjustment; bool m_scalingAdjustmentHasBeenSet = false; ScalingAdjustmentType m_scalingAdjustmentType; bool m_scalingAdjustmentTypeHasBeenSet = false; double m_threshold; bool m_thresholdHasBeenSet = false; ComparisonOperatorType m_comparisonOperator; bool m_comparisonOperatorHasBeenSet = false; int m_evaluationPeriods; bool m_evaluationPeriodsHasBeenSet = false; MetricName m_metricName; bool m_metricNameHasBeenSet = false; PolicyType m_policyType; bool m_policyTypeHasBeenSet = false; TargetConfiguration m_targetConfiguration; bool m_targetConfigurationHasBeenSet = false; }; } // namespace Model } // namespace GameLift } // namespace Aws