/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace GameLift { namespace Model { /** */ class DescribeScalingPoliciesRequest : public GameLiftRequest { public: AWS_GAMELIFT_API DescribeScalingPoliciesRequest(); // 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 "DescribeScalingPolicies"; } AWS_GAMELIFT_API Aws::String SerializePayload() const override; AWS_GAMELIFT_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

A unique identifier for the fleet for which to retrieve scaling policies. You * can use either the fleet ID or ARN value.

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

A unique identifier for the fleet for which to retrieve scaling policies. You * can use either the fleet ID or ARN value.

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

A unique identifier for the fleet for which to retrieve scaling policies. You * can use either the fleet ID or ARN value.

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

A unique identifier for the fleet for which to retrieve scaling policies. You * can use either the fleet ID or ARN value.

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

A unique identifier for the fleet for which to retrieve scaling policies. You * can use either the fleet ID or ARN value.

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

A unique identifier for the fleet for which to retrieve scaling policies. You * can use either the fleet ID or ARN value.

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

A unique identifier for the fleet for which to retrieve scaling policies. You * can use either the fleet ID or ARN value.

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

A unique identifier for the fleet for which to retrieve scaling policies. You * can use either the fleet ID or ARN value.

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

Scaling policy status to filter results on. A scaling policy is only in force * when in an ACTIVE status.

  • ACTIVE -- The * scaling policy is currently in force.

  • UPDATEREQUESTED * -- A request to update the scaling policy has been received.

  • * UPDATING -- A change is being made to the scaling policy.

  • *

    DELETEREQUESTED -- A request to delete the scaling policy has been * received.

  • DELETING -- The scaling policy is being * deleted.

  • DELETED -- The scaling policy has been * deleted.

  • ERROR -- An error occurred in creating the * policy. It should be removed and recreated.

*/ inline const ScalingStatusType& GetStatusFilter() const{ return m_statusFilter; } /** *

Scaling policy status to filter results on. A scaling policy is only in force * when in an ACTIVE status.

  • ACTIVE -- The * scaling policy is currently in force.

  • UPDATEREQUESTED * -- A request to update the scaling policy has been received.

  • * UPDATING -- A change is being made to the scaling policy.

  • *

    DELETEREQUESTED -- A request to delete the scaling policy has been * received.

  • DELETING -- The scaling policy is being * deleted.

  • DELETED -- The scaling policy has been * deleted.

  • ERROR -- An error occurred in creating the * policy. It should be removed and recreated.

*/ inline bool StatusFilterHasBeenSet() const { return m_statusFilterHasBeenSet; } /** *

Scaling policy status to filter results on. A scaling policy is only in force * when in an ACTIVE status.

  • ACTIVE -- The * scaling policy is currently in force.

  • UPDATEREQUESTED * -- A request to update the scaling policy has been received.

  • * UPDATING -- A change is being made to the scaling policy.

  • *

    DELETEREQUESTED -- A request to delete the scaling policy has been * received.

  • DELETING -- The scaling policy is being * deleted.

  • DELETED -- The scaling policy has been * deleted.

  • ERROR -- An error occurred in creating the * policy. It should be removed and recreated.

*/ inline void SetStatusFilter(const ScalingStatusType& value) { m_statusFilterHasBeenSet = true; m_statusFilter = value; } /** *

Scaling policy status to filter results on. A scaling policy is only in force * when in an ACTIVE status.

  • ACTIVE -- The * scaling policy is currently in force.

  • UPDATEREQUESTED * -- A request to update the scaling policy has been received.

  • * UPDATING -- A change is being made to the scaling policy.

  • *

    DELETEREQUESTED -- A request to delete the scaling policy has been * received.

  • DELETING -- The scaling policy is being * deleted.

  • DELETED -- The scaling policy has been * deleted.

  • ERROR -- An error occurred in creating the * policy. It should be removed and recreated.

*/ inline void SetStatusFilter(ScalingStatusType&& value) { m_statusFilterHasBeenSet = true; m_statusFilter = std::move(value); } /** *

Scaling policy status to filter results on. A scaling policy is only in force * when in an ACTIVE status.

  • ACTIVE -- The * scaling policy is currently in force.

  • UPDATEREQUESTED * -- A request to update the scaling policy has been received.

  • * UPDATING -- A change is being made to the scaling policy.

  • *

    DELETEREQUESTED -- A request to delete the scaling policy has been * received.

  • DELETING -- The scaling policy is being * deleted.

  • DELETED -- The scaling policy has been * deleted.

  • ERROR -- An error occurred in creating the * policy. It should be removed and recreated.

*/ inline DescribeScalingPoliciesRequest& WithStatusFilter(const ScalingStatusType& value) { SetStatusFilter(value); return *this;} /** *

Scaling policy status to filter results on. A scaling policy is only in force * when in an ACTIVE status.

  • ACTIVE -- The * scaling policy is currently in force.

  • UPDATEREQUESTED * -- A request to update the scaling policy has been received.

  • * UPDATING -- A change is being made to the scaling policy.

  • *

    DELETEREQUESTED -- A request to delete the scaling policy has been * received.

  • DELETING -- The scaling policy is being * deleted.

  • DELETED -- The scaling policy has been * deleted.

  • ERROR -- An error occurred in creating the * policy. It should be removed and recreated.

*/ inline DescribeScalingPoliciesRequest& WithStatusFilter(ScalingStatusType&& value) { SetStatusFilter(std::move(value)); return *this;} /** *

The maximum number of results to return. Use this parameter with * NextToken to get results as a set of sequential pages.

*/ inline int GetLimit() const{ return m_limit; } /** *

The maximum number of results to return. Use this parameter with * NextToken to get results as a set of sequential pages.

*/ inline bool LimitHasBeenSet() const { return m_limitHasBeenSet; } /** *

The maximum number of results to return. Use this parameter with * NextToken to get results as a set of sequential pages.

*/ inline void SetLimit(int value) { m_limitHasBeenSet = true; m_limit = value; } /** *

The maximum number of results to return. Use this parameter with * NextToken to get results as a set of sequential pages.

*/ inline DescribeScalingPoliciesRequest& WithLimit(int value) { SetLimit(value); return *this;} /** *

A token that indicates the start of the next sequential page of results. Use * the token that is returned with a previous call to this operation. To start at * the beginning of the result set, do not specify a value.

*/ inline const Aws::String& GetNextToken() const{ return m_nextToken; } /** *

A token that indicates the start of the next sequential page of results. Use * the token that is returned with a previous call to this operation. To start at * the beginning of the result set, do not specify a value.

*/ inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; } /** *

A token that indicates the start of the next sequential page of results. Use * the token that is returned with a previous call to this operation. To start at * the beginning of the result set, do not specify a value.

*/ inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; } /** *

A token that indicates the start of the next sequential page of results. Use * the token that is returned with a previous call to this operation. To start at * the beginning of the result set, do not specify a value.

*/ inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); } /** *

A token that indicates the start of the next sequential page of results. Use * the token that is returned with a previous call to this operation. To start at * the beginning of the result set, do not specify a value.

*/ inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); } /** *

A token that indicates the start of the next sequential page of results. Use * the token that is returned with a previous call to this operation. To start at * the beginning of the result set, do not specify a value.

*/ inline DescribeScalingPoliciesRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} /** *

A token that indicates the start of the next sequential page of results. Use * the token that is returned with a previous call to this operation. To start at * the beginning of the result set, do not specify a value.

*/ inline DescribeScalingPoliciesRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} /** *

A token that indicates the start of the next sequential page of results. Use * the token that is returned with a previous call to this operation. To start at * the beginning of the result set, do not specify a value.

*/ inline DescribeScalingPoliciesRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;} /** *

The fleet location. If you don't specify this value, the response contains * the scaling policies of every location in the fleet.

*/ inline const Aws::String& GetLocation() const{ return m_location; } /** *

The fleet location. If you don't specify this value, the response contains * the scaling policies of every location in the fleet.

*/ inline bool LocationHasBeenSet() const { return m_locationHasBeenSet; } /** *

The fleet location. If you don't specify this value, the response contains * the scaling policies of every location in the fleet.

*/ inline void SetLocation(const Aws::String& value) { m_locationHasBeenSet = true; m_location = value; } /** *

The fleet location. If you don't specify this value, the response contains * the scaling policies of every location in the fleet.

*/ inline void SetLocation(Aws::String&& value) { m_locationHasBeenSet = true; m_location = std::move(value); } /** *

The fleet location. If you don't specify this value, the response contains * the scaling policies of every location in the fleet.

*/ inline void SetLocation(const char* value) { m_locationHasBeenSet = true; m_location.assign(value); } /** *

The fleet location. If you don't specify this value, the response contains * the scaling policies of every location in the fleet.

*/ inline DescribeScalingPoliciesRequest& WithLocation(const Aws::String& value) { SetLocation(value); return *this;} /** *

The fleet location. If you don't specify this value, the response contains * the scaling policies of every location in the fleet.

*/ inline DescribeScalingPoliciesRequest& WithLocation(Aws::String&& value) { SetLocation(std::move(value)); return *this;} /** *

The fleet location. If you don't specify this value, the response contains * the scaling policies of every location in the fleet.

*/ inline DescribeScalingPoliciesRequest& WithLocation(const char* value) { SetLocation(value); return *this;} private: Aws::String m_fleetId; bool m_fleetIdHasBeenSet = false; ScalingStatusType m_statusFilter; bool m_statusFilterHasBeenSet = false; int m_limit; bool m_limitHasBeenSet = false; Aws::String m_nextToken; bool m_nextTokenHasBeenSet = false; Aws::String m_location; bool m_locationHasBeenSet = false; }; } // namespace Model } // namespace GameLift } // namespace Aws