/** * 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 ApplicationAutoScaling { namespace Model { /** */ class PutScalingPolicyRequest : public ApplicationAutoScalingRequest { public: AWS_APPLICATIONAUTOSCALING_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_APPLICATIONAUTOSCALING_API Aws::String SerializePayload() const override; AWS_APPLICATIONAUTOSCALING_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The name of the scaling policy.

You cannot change the name of a * scaling policy, but you can delete the original scaling policy and create a new * scaling policy with the same settings and a different name.

*/ inline const Aws::String& GetPolicyName() const{ return m_policyName; } /** *

The name of the scaling policy.

You cannot change the name of a * scaling policy, but you can delete the original scaling policy and create a new * scaling policy with the same settings and a different name.

*/ inline bool PolicyNameHasBeenSet() const { return m_policyNameHasBeenSet; } /** *

The name of the scaling policy.

You cannot change the name of a * scaling policy, but you can delete the original scaling policy and create a new * scaling policy with the same settings and a different name.

*/ inline void SetPolicyName(const Aws::String& value) { m_policyNameHasBeenSet = true; m_policyName = value; } /** *

The name of the scaling policy.

You cannot change the name of a * scaling policy, but you can delete the original scaling policy and create a new * scaling policy with the same settings and a different name.

*/ inline void SetPolicyName(Aws::String&& value) { m_policyNameHasBeenSet = true; m_policyName = std::move(value); } /** *

The name of the scaling policy.

You cannot change the name of a * scaling policy, but you can delete the original scaling policy and create a new * scaling policy with the same settings and a different name.

*/ inline void SetPolicyName(const char* value) { m_policyNameHasBeenSet = true; m_policyName.assign(value); } /** *

The name of the scaling policy.

You cannot change the name of a * scaling policy, but you can delete the original scaling policy and create a new * scaling policy with the same settings and a different name.

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

The name of the scaling policy.

You cannot change the name of a * scaling policy, but you can delete the original scaling policy and create a new * scaling policy with the same settings and a different name.

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

The name of the scaling policy.

You cannot change the name of a * scaling policy, but you can delete the original scaling policy and create a new * scaling policy with the same settings and a different name.

*/ inline PutScalingPolicyRequest& WithPolicyName(const char* value) { SetPolicyName(value); return *this;} /** *

The namespace of the Amazon Web Services service that provides the resource. * For a resource provided by your own application or service, use * custom-resource instead.

*/ inline const ServiceNamespace& GetServiceNamespace() const{ return m_serviceNamespace; } /** *

The namespace of the Amazon Web Services service that provides the resource. * For a resource provided by your own application or service, use * custom-resource instead.

*/ inline bool ServiceNamespaceHasBeenSet() const { return m_serviceNamespaceHasBeenSet; } /** *

The namespace of the Amazon Web Services service that provides the resource. * For a resource provided by your own application or service, use * custom-resource instead.

*/ inline void SetServiceNamespace(const ServiceNamespace& value) { m_serviceNamespaceHasBeenSet = true; m_serviceNamespace = value; } /** *

The namespace of the Amazon Web Services service that provides the resource. * For a resource provided by your own application or service, use * custom-resource instead.

*/ inline void SetServiceNamespace(ServiceNamespace&& value) { m_serviceNamespaceHasBeenSet = true; m_serviceNamespace = std::move(value); } /** *

The namespace of the Amazon Web Services service that provides the resource. * For a resource provided by your own application or service, use * custom-resource instead.

*/ inline PutScalingPolicyRequest& WithServiceNamespace(const ServiceNamespace& value) { SetServiceNamespace(value); return *this;} /** *

The namespace of the Amazon Web Services service that provides the resource. * For a resource provided by your own application or service, use * custom-resource instead.

*/ inline PutScalingPolicyRequest& WithServiceNamespace(ServiceNamespace&& value) { SetServiceNamespace(std::move(value)); return *this;} /** *

The identifier of the resource associated with the scaling policy. This * string consists of the resource type and unique identifier.

  • ECS * service - The resource type is service and the unique identifier is * the cluster name and service name. Example: * service/default/sample-webapp.

  • Spot Fleet - The * resource type is spot-fleet-request and the unique identifier is * the Spot Fleet request ID. Example: * spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

    *
  • EMR cluster - The resource type is instancegroup and * the unique identifier is the cluster ID and instance group ID. Example: * instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • *

    AppStream 2.0 fleet - The resource type is fleet and the unique * identifier is the fleet name. Example: fleet/sample-fleet.

    *
  • DynamoDB table - The resource type is table and the * unique identifier is the table name. Example: table/my-table.

    *
  • DynamoDB global secondary index - The resource type is * index and the unique identifier is the index name. Example: * table/my-table/index/my-table-index.

  • Aurora DB * cluster - The resource type is cluster and the unique identifier is * the cluster name. Example: cluster:my-db-cluster.

  • *

    SageMaker endpoint variant - The resource type is variant and * the unique identifier is the resource ID. Example: * endpoint/my-end-point/variant/KMeansClustering.

  • *

    Custom resources are not supported with a resource type. This parameter must * specify the OutputValue from the CloudFormation template stack used * to access the resources. The unique identifier is defined by the service * provider. More information is available in our GitHub * repository.

  • Amazon Comprehend document classification * endpoint - The resource type and unique identifier are specified using the * endpoint ARN. Example: * arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

    *
  • Amazon Comprehend entity recognizer endpoint - The resource type * and unique identifier are specified using the endpoint ARN. Example: * arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

    *
  • Lambda provisioned concurrency - The resource type is * function and the unique identifier is the function name with a * function version or alias name suffix that is not $LATEST. Example: * function:my-function:prod or * function:my-function:1.

  • Amazon Keyspaces table - * The resource type is table and the unique identifier is the table * name. Example: keyspace/mykeyspace/table/mytable.

  • *

    Amazon MSK cluster - The resource type and unique identifier are specified * using the cluster ARN. Example: * arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

    *
  • Amazon ElastiCache replication group - The resource type is * replication-group and the unique identifier is the replication * group name. Example: replication-group/mycluster.

  • *

    Neptune cluster - The resource type is cluster and the unique * identifier is the cluster name. Example: cluster:mycluster.

    *
  • SageMaker Serverless endpoint - The resource type is * variant and the unique identifier is the resource ID. Example: * endpoint/my-end-point/variant/KMeansClustering.

*/ inline const Aws::String& GetResourceId() const{ return m_resourceId; } /** *

The identifier of the resource associated with the scaling policy. This * string consists of the resource type and unique identifier.

  • ECS * service - The resource type is service and the unique identifier is * the cluster name and service name. Example: * service/default/sample-webapp.

  • Spot Fleet - The * resource type is spot-fleet-request and the unique identifier is * the Spot Fleet request ID. Example: * spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

    *
  • EMR cluster - The resource type is instancegroup and * the unique identifier is the cluster ID and instance group ID. Example: * instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • *

    AppStream 2.0 fleet - The resource type is fleet and the unique * identifier is the fleet name. Example: fleet/sample-fleet.

    *
  • DynamoDB table - The resource type is table and the * unique identifier is the table name. Example: table/my-table.

    *
  • DynamoDB global secondary index - The resource type is * index and the unique identifier is the index name. Example: * table/my-table/index/my-table-index.

  • Aurora DB * cluster - The resource type is cluster and the unique identifier is * the cluster name. Example: cluster:my-db-cluster.

  • *

    SageMaker endpoint variant - The resource type is variant and * the unique identifier is the resource ID. Example: * endpoint/my-end-point/variant/KMeansClustering.

  • *

    Custom resources are not supported with a resource type. This parameter must * specify the OutputValue from the CloudFormation template stack used * to access the resources. The unique identifier is defined by the service * provider. More information is available in our GitHub * repository.

  • Amazon Comprehend document classification * endpoint - The resource type and unique identifier are specified using the * endpoint ARN. Example: * arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

    *
  • Amazon Comprehend entity recognizer endpoint - The resource type * and unique identifier are specified using the endpoint ARN. Example: * arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

    *
  • Lambda provisioned concurrency - The resource type is * function and the unique identifier is the function name with a * function version or alias name suffix that is not $LATEST. Example: * function:my-function:prod or * function:my-function:1.

  • Amazon Keyspaces table - * The resource type is table and the unique identifier is the table * name. Example: keyspace/mykeyspace/table/mytable.

  • *

    Amazon MSK cluster - The resource type and unique identifier are specified * using the cluster ARN. Example: * arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

    *
  • Amazon ElastiCache replication group - The resource type is * replication-group and the unique identifier is the replication * group name. Example: replication-group/mycluster.

  • *

    Neptune cluster - The resource type is cluster and the unique * identifier is the cluster name. Example: cluster:mycluster.

    *
  • SageMaker Serverless endpoint - The resource type is * variant and the unique identifier is the resource ID. Example: * endpoint/my-end-point/variant/KMeansClustering.

*/ inline bool ResourceIdHasBeenSet() const { return m_resourceIdHasBeenSet; } /** *

The identifier of the resource associated with the scaling policy. This * string consists of the resource type and unique identifier.

  • ECS * service - The resource type is service and the unique identifier is * the cluster name and service name. Example: * service/default/sample-webapp.

  • Spot Fleet - The * resource type is spot-fleet-request and the unique identifier is * the Spot Fleet request ID. Example: * spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

    *
  • EMR cluster - The resource type is instancegroup and * the unique identifier is the cluster ID and instance group ID. Example: * instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • *

    AppStream 2.0 fleet - The resource type is fleet and the unique * identifier is the fleet name. Example: fleet/sample-fleet.

    *
  • DynamoDB table - The resource type is table and the * unique identifier is the table name. Example: table/my-table.

    *
  • DynamoDB global secondary index - The resource type is * index and the unique identifier is the index name. Example: * table/my-table/index/my-table-index.

  • Aurora DB * cluster - The resource type is cluster and the unique identifier is * the cluster name. Example: cluster:my-db-cluster.

  • *

    SageMaker endpoint variant - The resource type is variant and * the unique identifier is the resource ID. Example: * endpoint/my-end-point/variant/KMeansClustering.

  • *

    Custom resources are not supported with a resource type. This parameter must * specify the OutputValue from the CloudFormation template stack used * to access the resources. The unique identifier is defined by the service * provider. More information is available in our GitHub * repository.

  • Amazon Comprehend document classification * endpoint - The resource type and unique identifier are specified using the * endpoint ARN. Example: * arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

    *
  • Amazon Comprehend entity recognizer endpoint - The resource type * and unique identifier are specified using the endpoint ARN. Example: * arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

    *
  • Lambda provisioned concurrency - The resource type is * function and the unique identifier is the function name with a * function version or alias name suffix that is not $LATEST. Example: * function:my-function:prod or * function:my-function:1.

  • Amazon Keyspaces table - * The resource type is table and the unique identifier is the table * name. Example: keyspace/mykeyspace/table/mytable.

  • *

    Amazon MSK cluster - The resource type and unique identifier are specified * using the cluster ARN. Example: * arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

    *
  • Amazon ElastiCache replication group - The resource type is * replication-group and the unique identifier is the replication * group name. Example: replication-group/mycluster.

  • *

    Neptune cluster - The resource type is cluster and the unique * identifier is the cluster name. Example: cluster:mycluster.

    *
  • SageMaker Serverless endpoint - The resource type is * variant and the unique identifier is the resource ID. Example: * endpoint/my-end-point/variant/KMeansClustering.

*/ inline void SetResourceId(const Aws::String& value) { m_resourceIdHasBeenSet = true; m_resourceId = value; } /** *

The identifier of the resource associated with the scaling policy. This * string consists of the resource type and unique identifier.

  • ECS * service - The resource type is service and the unique identifier is * the cluster name and service name. Example: * service/default/sample-webapp.

  • Spot Fleet - The * resource type is spot-fleet-request and the unique identifier is * the Spot Fleet request ID. Example: * spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

    *
  • EMR cluster - The resource type is instancegroup and * the unique identifier is the cluster ID and instance group ID. Example: * instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • *

    AppStream 2.0 fleet - The resource type is fleet and the unique * identifier is the fleet name. Example: fleet/sample-fleet.

    *
  • DynamoDB table - The resource type is table and the * unique identifier is the table name. Example: table/my-table.

    *
  • DynamoDB global secondary index - The resource type is * index and the unique identifier is the index name. Example: * table/my-table/index/my-table-index.

  • Aurora DB * cluster - The resource type is cluster and the unique identifier is * the cluster name. Example: cluster:my-db-cluster.

  • *

    SageMaker endpoint variant - The resource type is variant and * the unique identifier is the resource ID. Example: * endpoint/my-end-point/variant/KMeansClustering.

  • *

    Custom resources are not supported with a resource type. This parameter must * specify the OutputValue from the CloudFormation template stack used * to access the resources. The unique identifier is defined by the service * provider. More information is available in our GitHub * repository.

  • Amazon Comprehend document classification * endpoint - The resource type and unique identifier are specified using the * endpoint ARN. Example: * arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

    *
  • Amazon Comprehend entity recognizer endpoint - The resource type * and unique identifier are specified using the endpoint ARN. Example: * arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

    *
  • Lambda provisioned concurrency - The resource type is * function and the unique identifier is the function name with a * function version or alias name suffix that is not $LATEST. Example: * function:my-function:prod or * function:my-function:1.

  • Amazon Keyspaces table - * The resource type is table and the unique identifier is the table * name. Example: keyspace/mykeyspace/table/mytable.

  • *

    Amazon MSK cluster - The resource type and unique identifier are specified * using the cluster ARN. Example: * arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

    *
  • Amazon ElastiCache replication group - The resource type is * replication-group and the unique identifier is the replication * group name. Example: replication-group/mycluster.

  • *

    Neptune cluster - The resource type is cluster and the unique * identifier is the cluster name. Example: cluster:mycluster.

    *
  • SageMaker Serverless endpoint - The resource type is * variant and the unique identifier is the resource ID. Example: * endpoint/my-end-point/variant/KMeansClustering.

*/ inline void SetResourceId(Aws::String&& value) { m_resourceIdHasBeenSet = true; m_resourceId = std::move(value); } /** *

The identifier of the resource associated with the scaling policy. This * string consists of the resource type and unique identifier.

  • ECS * service - The resource type is service and the unique identifier is * the cluster name and service name. Example: * service/default/sample-webapp.

  • Spot Fleet - The * resource type is spot-fleet-request and the unique identifier is * the Spot Fleet request ID. Example: * spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

    *
  • EMR cluster - The resource type is instancegroup and * the unique identifier is the cluster ID and instance group ID. Example: * instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • *

    AppStream 2.0 fleet - The resource type is fleet and the unique * identifier is the fleet name. Example: fleet/sample-fleet.

    *
  • DynamoDB table - The resource type is table and the * unique identifier is the table name. Example: table/my-table.

    *
  • DynamoDB global secondary index - The resource type is * index and the unique identifier is the index name. Example: * table/my-table/index/my-table-index.

  • Aurora DB * cluster - The resource type is cluster and the unique identifier is * the cluster name. Example: cluster:my-db-cluster.

  • *

    SageMaker endpoint variant - The resource type is variant and * the unique identifier is the resource ID. Example: * endpoint/my-end-point/variant/KMeansClustering.

  • *

    Custom resources are not supported with a resource type. This parameter must * specify the OutputValue from the CloudFormation template stack used * to access the resources. The unique identifier is defined by the service * provider. More information is available in our GitHub * repository.

  • Amazon Comprehend document classification * endpoint - The resource type and unique identifier are specified using the * endpoint ARN. Example: * arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

    *
  • Amazon Comprehend entity recognizer endpoint - The resource type * and unique identifier are specified using the endpoint ARN. Example: * arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

    *
  • Lambda provisioned concurrency - The resource type is * function and the unique identifier is the function name with a * function version or alias name suffix that is not $LATEST. Example: * function:my-function:prod or * function:my-function:1.

  • Amazon Keyspaces table - * The resource type is table and the unique identifier is the table * name. Example: keyspace/mykeyspace/table/mytable.

  • *

    Amazon MSK cluster - The resource type and unique identifier are specified * using the cluster ARN. Example: * arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

    *
  • Amazon ElastiCache replication group - The resource type is * replication-group and the unique identifier is the replication * group name. Example: replication-group/mycluster.

  • *

    Neptune cluster - The resource type is cluster and the unique * identifier is the cluster name. Example: cluster:mycluster.

    *
  • SageMaker Serverless endpoint - The resource type is * variant and the unique identifier is the resource ID. Example: * endpoint/my-end-point/variant/KMeansClustering.

*/ inline void SetResourceId(const char* value) { m_resourceIdHasBeenSet = true; m_resourceId.assign(value); } /** *

The identifier of the resource associated with the scaling policy. This * string consists of the resource type and unique identifier.

  • ECS * service - The resource type is service and the unique identifier is * the cluster name and service name. Example: * service/default/sample-webapp.

  • Spot Fleet - The * resource type is spot-fleet-request and the unique identifier is * the Spot Fleet request ID. Example: * spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

    *
  • EMR cluster - The resource type is instancegroup and * the unique identifier is the cluster ID and instance group ID. Example: * instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • *

    AppStream 2.0 fleet - The resource type is fleet and the unique * identifier is the fleet name. Example: fleet/sample-fleet.

    *
  • DynamoDB table - The resource type is table and the * unique identifier is the table name. Example: table/my-table.

    *
  • DynamoDB global secondary index - The resource type is * index and the unique identifier is the index name. Example: * table/my-table/index/my-table-index.

  • Aurora DB * cluster - The resource type is cluster and the unique identifier is * the cluster name. Example: cluster:my-db-cluster.

  • *

    SageMaker endpoint variant - The resource type is variant and * the unique identifier is the resource ID. Example: * endpoint/my-end-point/variant/KMeansClustering.

  • *

    Custom resources are not supported with a resource type. This parameter must * specify the OutputValue from the CloudFormation template stack used * to access the resources. The unique identifier is defined by the service * provider. More information is available in our GitHub * repository.

  • Amazon Comprehend document classification * endpoint - The resource type and unique identifier are specified using the * endpoint ARN. Example: * arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

    *
  • Amazon Comprehend entity recognizer endpoint - The resource type * and unique identifier are specified using the endpoint ARN. Example: * arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

    *
  • Lambda provisioned concurrency - The resource type is * function and the unique identifier is the function name with a * function version or alias name suffix that is not $LATEST. Example: * function:my-function:prod or * function:my-function:1.

  • Amazon Keyspaces table - * The resource type is table and the unique identifier is the table * name. Example: keyspace/mykeyspace/table/mytable.

  • *

    Amazon MSK cluster - The resource type and unique identifier are specified * using the cluster ARN. Example: * arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

    *
  • Amazon ElastiCache replication group - The resource type is * replication-group and the unique identifier is the replication * group name. Example: replication-group/mycluster.

  • *

    Neptune cluster - The resource type is cluster and the unique * identifier is the cluster name. Example: cluster:mycluster.

    *
  • SageMaker Serverless endpoint - The resource type is * variant and the unique identifier is the resource ID. Example: * endpoint/my-end-point/variant/KMeansClustering.

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

The identifier of the resource associated with the scaling policy. This * string consists of the resource type and unique identifier.

  • ECS * service - The resource type is service and the unique identifier is * the cluster name and service name. Example: * service/default/sample-webapp.

  • Spot Fleet - The * resource type is spot-fleet-request and the unique identifier is * the Spot Fleet request ID. Example: * spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

    *
  • EMR cluster - The resource type is instancegroup and * the unique identifier is the cluster ID and instance group ID. Example: * instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • *

    AppStream 2.0 fleet - The resource type is fleet and the unique * identifier is the fleet name. Example: fleet/sample-fleet.

    *
  • DynamoDB table - The resource type is table and the * unique identifier is the table name. Example: table/my-table.

    *
  • DynamoDB global secondary index - The resource type is * index and the unique identifier is the index name. Example: * table/my-table/index/my-table-index.

  • Aurora DB * cluster - The resource type is cluster and the unique identifier is * the cluster name. Example: cluster:my-db-cluster.

  • *

    SageMaker endpoint variant - The resource type is variant and * the unique identifier is the resource ID. Example: * endpoint/my-end-point/variant/KMeansClustering.

  • *

    Custom resources are not supported with a resource type. This parameter must * specify the OutputValue from the CloudFormation template stack used * to access the resources. The unique identifier is defined by the service * provider. More information is available in our GitHub * repository.

  • Amazon Comprehend document classification * endpoint - The resource type and unique identifier are specified using the * endpoint ARN. Example: * arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

    *
  • Amazon Comprehend entity recognizer endpoint - The resource type * and unique identifier are specified using the endpoint ARN. Example: * arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

    *
  • Lambda provisioned concurrency - The resource type is * function and the unique identifier is the function name with a * function version or alias name suffix that is not $LATEST. Example: * function:my-function:prod or * function:my-function:1.

  • Amazon Keyspaces table - * The resource type is table and the unique identifier is the table * name. Example: keyspace/mykeyspace/table/mytable.

  • *

    Amazon MSK cluster - The resource type and unique identifier are specified * using the cluster ARN. Example: * arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

    *
  • Amazon ElastiCache replication group - The resource type is * replication-group and the unique identifier is the replication * group name. Example: replication-group/mycluster.

  • *

    Neptune cluster - The resource type is cluster and the unique * identifier is the cluster name. Example: cluster:mycluster.

    *
  • SageMaker Serverless endpoint - The resource type is * variant and the unique identifier is the resource ID. Example: * endpoint/my-end-point/variant/KMeansClustering.

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

The identifier of the resource associated with the scaling policy. This * string consists of the resource type and unique identifier.

  • ECS * service - The resource type is service and the unique identifier is * the cluster name and service name. Example: * service/default/sample-webapp.

  • Spot Fleet - The * resource type is spot-fleet-request and the unique identifier is * the Spot Fleet request ID. Example: * spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

    *
  • EMR cluster - The resource type is instancegroup and * the unique identifier is the cluster ID and instance group ID. Example: * instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0.

  • *

    AppStream 2.0 fleet - The resource type is fleet and the unique * identifier is the fleet name. Example: fleet/sample-fleet.

    *
  • DynamoDB table - The resource type is table and the * unique identifier is the table name. Example: table/my-table.

    *
  • DynamoDB global secondary index - The resource type is * index and the unique identifier is the index name. Example: * table/my-table/index/my-table-index.

  • Aurora DB * cluster - The resource type is cluster and the unique identifier is * the cluster name. Example: cluster:my-db-cluster.

  • *

    SageMaker endpoint variant - The resource type is variant and * the unique identifier is the resource ID. Example: * endpoint/my-end-point/variant/KMeansClustering.

  • *

    Custom resources are not supported with a resource type. This parameter must * specify the OutputValue from the CloudFormation template stack used * to access the resources. The unique identifier is defined by the service * provider. More information is available in our GitHub * repository.

  • Amazon Comprehend document classification * endpoint - The resource type and unique identifier are specified using the * endpoint ARN. Example: * arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE.

    *
  • Amazon Comprehend entity recognizer endpoint - The resource type * and unique identifier are specified using the endpoint ARN. Example: * arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE.

    *
  • Lambda provisioned concurrency - The resource type is * function and the unique identifier is the function name with a * function version or alias name suffix that is not $LATEST. Example: * function:my-function:prod or * function:my-function:1.

  • Amazon Keyspaces table - * The resource type is table and the unique identifier is the table * name. Example: keyspace/mykeyspace/table/mytable.

  • *

    Amazon MSK cluster - The resource type and unique identifier are specified * using the cluster ARN. Example: * arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5.

    *
  • Amazon ElastiCache replication group - The resource type is * replication-group and the unique identifier is the replication * group name. Example: replication-group/mycluster.

  • *

    Neptune cluster - The resource type is cluster and the unique * identifier is the cluster name. Example: cluster:mycluster.

    *
  • SageMaker Serverless endpoint - The resource type is * variant and the unique identifier is the resource ID. Example: * endpoint/my-end-point/variant/KMeansClustering.

*/ inline PutScalingPolicyRequest& WithResourceId(const char* value) { SetResourceId(value); return *this;} /** *

The scalable dimension. This string consists of the service namespace, * resource type, and scaling property.

  • * ecs:service:DesiredCount - The desired task count of an ECS * service.

  • * elasticmapreduce:instancegroup:InstanceCount - The instance count * of an EMR Instance Group.

  • * ec2:spot-fleet-request:TargetCapacity - The target capacity of a * Spot Fleet.

  • appstream:fleet:DesiredCapacity - * The desired capacity of an AppStream 2.0 fleet.

  • * dynamodb:table:ReadCapacityUnits - The provisioned read capacity * for a DynamoDB table.

  • * dynamodb:table:WriteCapacityUnits - The provisioned write capacity * for a DynamoDB table.

  • * dynamodb:index:ReadCapacityUnits - The provisioned read capacity * for a DynamoDB global secondary index.

  • * dynamodb:index:WriteCapacityUnits - The provisioned write capacity * for a DynamoDB global secondary index.

  • * rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an * Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora * PostgreSQL-compatible edition.

  • * sagemaker:variant:DesiredInstanceCount - The number of EC2 * instances for a SageMaker model endpoint variant.

  • * custom-resource:ResourceType:Property - The scalable dimension for * a custom resource provided by your own application or service.

  • *

    comprehend:document-classifier-endpoint:DesiredInferenceUnits - * The number of inference units for an Amazon Comprehend document classification * endpoint.

  • * comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The * number of inference units for an Amazon Comprehend entity recognizer * endpoint.

  • lambda:function:ProvisionedConcurrency * - The provisioned concurrency for a Lambda function.

  • * cassandra:table:ReadCapacityUnits - The provisioned read capacity * for an Amazon Keyspaces table.

  • * cassandra:table:WriteCapacityUnits - The provisioned write capacity * for an Amazon Keyspaces table.

  • * kafka:broker-storage:VolumeSize - The provisioned volume size (in * GiB) for brokers in an Amazon MSK cluster.

  • * elasticache:replication-group:NodeGroups - The number of node * groups for an Amazon ElastiCache replication group.

  • * elasticache:replication-group:Replicas - The number of replicas per * node group for an Amazon ElastiCache replication group.

  • * neptune:cluster:ReadReplicaCount - The count of read replicas in an * Amazon Neptune DB cluster.

  • * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned * concurrency for a SageMaker Serverless endpoint.

*/ inline const ScalableDimension& GetScalableDimension() const{ return m_scalableDimension; } /** *

The scalable dimension. This string consists of the service namespace, * resource type, and scaling property.

  • * ecs:service:DesiredCount - The desired task count of an ECS * service.

  • * elasticmapreduce:instancegroup:InstanceCount - The instance count * of an EMR Instance Group.

  • * ec2:spot-fleet-request:TargetCapacity - The target capacity of a * Spot Fleet.

  • appstream:fleet:DesiredCapacity - * The desired capacity of an AppStream 2.0 fleet.

  • * dynamodb:table:ReadCapacityUnits - The provisioned read capacity * for a DynamoDB table.

  • * dynamodb:table:WriteCapacityUnits - The provisioned write capacity * for a DynamoDB table.

  • * dynamodb:index:ReadCapacityUnits - The provisioned read capacity * for a DynamoDB global secondary index.

  • * dynamodb:index:WriteCapacityUnits - The provisioned write capacity * for a DynamoDB global secondary index.

  • * rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an * Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora * PostgreSQL-compatible edition.

  • * sagemaker:variant:DesiredInstanceCount - The number of EC2 * instances for a SageMaker model endpoint variant.

  • * custom-resource:ResourceType:Property - The scalable dimension for * a custom resource provided by your own application or service.

  • *

    comprehend:document-classifier-endpoint:DesiredInferenceUnits - * The number of inference units for an Amazon Comprehend document classification * endpoint.

  • * comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The * number of inference units for an Amazon Comprehend entity recognizer * endpoint.

  • lambda:function:ProvisionedConcurrency * - The provisioned concurrency for a Lambda function.

  • * cassandra:table:ReadCapacityUnits - The provisioned read capacity * for an Amazon Keyspaces table.

  • * cassandra:table:WriteCapacityUnits - The provisioned write capacity * for an Amazon Keyspaces table.

  • * kafka:broker-storage:VolumeSize - The provisioned volume size (in * GiB) for brokers in an Amazon MSK cluster.

  • * elasticache:replication-group:NodeGroups - The number of node * groups for an Amazon ElastiCache replication group.

  • * elasticache:replication-group:Replicas - The number of replicas per * node group for an Amazon ElastiCache replication group.

  • * neptune:cluster:ReadReplicaCount - The count of read replicas in an * Amazon Neptune DB cluster.

  • * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned * concurrency for a SageMaker Serverless endpoint.

*/ inline bool ScalableDimensionHasBeenSet() const { return m_scalableDimensionHasBeenSet; } /** *

The scalable dimension. This string consists of the service namespace, * resource type, and scaling property.

  • * ecs:service:DesiredCount - The desired task count of an ECS * service.

  • * elasticmapreduce:instancegroup:InstanceCount - The instance count * of an EMR Instance Group.

  • * ec2:spot-fleet-request:TargetCapacity - The target capacity of a * Spot Fleet.

  • appstream:fleet:DesiredCapacity - * The desired capacity of an AppStream 2.0 fleet.

  • * dynamodb:table:ReadCapacityUnits - The provisioned read capacity * for a DynamoDB table.

  • * dynamodb:table:WriteCapacityUnits - The provisioned write capacity * for a DynamoDB table.

  • * dynamodb:index:ReadCapacityUnits - The provisioned read capacity * for a DynamoDB global secondary index.

  • * dynamodb:index:WriteCapacityUnits - The provisioned write capacity * for a DynamoDB global secondary index.

  • * rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an * Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora * PostgreSQL-compatible edition.

  • * sagemaker:variant:DesiredInstanceCount - The number of EC2 * instances for a SageMaker model endpoint variant.

  • * custom-resource:ResourceType:Property - The scalable dimension for * a custom resource provided by your own application or service.

  • *

    comprehend:document-classifier-endpoint:DesiredInferenceUnits - * The number of inference units for an Amazon Comprehend document classification * endpoint.

  • * comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The * number of inference units for an Amazon Comprehend entity recognizer * endpoint.

  • lambda:function:ProvisionedConcurrency * - The provisioned concurrency for a Lambda function.

  • * cassandra:table:ReadCapacityUnits - The provisioned read capacity * for an Amazon Keyspaces table.

  • * cassandra:table:WriteCapacityUnits - The provisioned write capacity * for an Amazon Keyspaces table.

  • * kafka:broker-storage:VolumeSize - The provisioned volume size (in * GiB) for brokers in an Amazon MSK cluster.

  • * elasticache:replication-group:NodeGroups - The number of node * groups for an Amazon ElastiCache replication group.

  • * elasticache:replication-group:Replicas - The number of replicas per * node group for an Amazon ElastiCache replication group.

  • * neptune:cluster:ReadReplicaCount - The count of read replicas in an * Amazon Neptune DB cluster.

  • * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned * concurrency for a SageMaker Serverless endpoint.

*/ inline void SetScalableDimension(const ScalableDimension& value) { m_scalableDimensionHasBeenSet = true; m_scalableDimension = value; } /** *

The scalable dimension. This string consists of the service namespace, * resource type, and scaling property.

  • * ecs:service:DesiredCount - The desired task count of an ECS * service.

  • * elasticmapreduce:instancegroup:InstanceCount - The instance count * of an EMR Instance Group.

  • * ec2:spot-fleet-request:TargetCapacity - The target capacity of a * Spot Fleet.

  • appstream:fleet:DesiredCapacity - * The desired capacity of an AppStream 2.0 fleet.

  • * dynamodb:table:ReadCapacityUnits - The provisioned read capacity * for a DynamoDB table.

  • * dynamodb:table:WriteCapacityUnits - The provisioned write capacity * for a DynamoDB table.

  • * dynamodb:index:ReadCapacityUnits - The provisioned read capacity * for a DynamoDB global secondary index.

  • * dynamodb:index:WriteCapacityUnits - The provisioned write capacity * for a DynamoDB global secondary index.

  • * rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an * Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora * PostgreSQL-compatible edition.

  • * sagemaker:variant:DesiredInstanceCount - The number of EC2 * instances for a SageMaker model endpoint variant.

  • * custom-resource:ResourceType:Property - The scalable dimension for * a custom resource provided by your own application or service.

  • *

    comprehend:document-classifier-endpoint:DesiredInferenceUnits - * The number of inference units for an Amazon Comprehend document classification * endpoint.

  • * comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The * number of inference units for an Amazon Comprehend entity recognizer * endpoint.

  • lambda:function:ProvisionedConcurrency * - The provisioned concurrency for a Lambda function.

  • * cassandra:table:ReadCapacityUnits - The provisioned read capacity * for an Amazon Keyspaces table.

  • * cassandra:table:WriteCapacityUnits - The provisioned write capacity * for an Amazon Keyspaces table.

  • * kafka:broker-storage:VolumeSize - The provisioned volume size (in * GiB) for brokers in an Amazon MSK cluster.

  • * elasticache:replication-group:NodeGroups - The number of node * groups for an Amazon ElastiCache replication group.

  • * elasticache:replication-group:Replicas - The number of replicas per * node group for an Amazon ElastiCache replication group.

  • * neptune:cluster:ReadReplicaCount - The count of read replicas in an * Amazon Neptune DB cluster.

  • * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned * concurrency for a SageMaker Serverless endpoint.

*/ inline void SetScalableDimension(ScalableDimension&& value) { m_scalableDimensionHasBeenSet = true; m_scalableDimension = std::move(value); } /** *

The scalable dimension. This string consists of the service namespace, * resource type, and scaling property.

  • * ecs:service:DesiredCount - The desired task count of an ECS * service.

  • * elasticmapreduce:instancegroup:InstanceCount - The instance count * of an EMR Instance Group.

  • * ec2:spot-fleet-request:TargetCapacity - The target capacity of a * Spot Fleet.

  • appstream:fleet:DesiredCapacity - * The desired capacity of an AppStream 2.0 fleet.

  • * dynamodb:table:ReadCapacityUnits - The provisioned read capacity * for a DynamoDB table.

  • * dynamodb:table:WriteCapacityUnits - The provisioned write capacity * for a DynamoDB table.

  • * dynamodb:index:ReadCapacityUnits - The provisioned read capacity * for a DynamoDB global secondary index.

  • * dynamodb:index:WriteCapacityUnits - The provisioned write capacity * for a DynamoDB global secondary index.

  • * rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an * Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora * PostgreSQL-compatible edition.

  • * sagemaker:variant:DesiredInstanceCount - The number of EC2 * instances for a SageMaker model endpoint variant.

  • * custom-resource:ResourceType:Property - The scalable dimension for * a custom resource provided by your own application or service.

  • *

    comprehend:document-classifier-endpoint:DesiredInferenceUnits - * The number of inference units for an Amazon Comprehend document classification * endpoint.

  • * comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The * number of inference units for an Amazon Comprehend entity recognizer * endpoint.

  • lambda:function:ProvisionedConcurrency * - The provisioned concurrency for a Lambda function.

  • * cassandra:table:ReadCapacityUnits - The provisioned read capacity * for an Amazon Keyspaces table.

  • * cassandra:table:WriteCapacityUnits - The provisioned write capacity * for an Amazon Keyspaces table.

  • * kafka:broker-storage:VolumeSize - The provisioned volume size (in * GiB) for brokers in an Amazon MSK cluster.

  • * elasticache:replication-group:NodeGroups - The number of node * groups for an Amazon ElastiCache replication group.

  • * elasticache:replication-group:Replicas - The number of replicas per * node group for an Amazon ElastiCache replication group.

  • * neptune:cluster:ReadReplicaCount - The count of read replicas in an * Amazon Neptune DB cluster.

  • * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned * concurrency for a SageMaker Serverless endpoint.

*/ inline PutScalingPolicyRequest& WithScalableDimension(const ScalableDimension& value) { SetScalableDimension(value); return *this;} /** *

The scalable dimension. This string consists of the service namespace, * resource type, and scaling property.

  • * ecs:service:DesiredCount - The desired task count of an ECS * service.

  • * elasticmapreduce:instancegroup:InstanceCount - The instance count * of an EMR Instance Group.

  • * ec2:spot-fleet-request:TargetCapacity - The target capacity of a * Spot Fleet.

  • appstream:fleet:DesiredCapacity - * The desired capacity of an AppStream 2.0 fleet.

  • * dynamodb:table:ReadCapacityUnits - The provisioned read capacity * for a DynamoDB table.

  • * dynamodb:table:WriteCapacityUnits - The provisioned write capacity * for a DynamoDB table.

  • * dynamodb:index:ReadCapacityUnits - The provisioned read capacity * for a DynamoDB global secondary index.

  • * dynamodb:index:WriteCapacityUnits - The provisioned write capacity * for a DynamoDB global secondary index.

  • * rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an * Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora * PostgreSQL-compatible edition.

  • * sagemaker:variant:DesiredInstanceCount - The number of EC2 * instances for a SageMaker model endpoint variant.

  • * custom-resource:ResourceType:Property - The scalable dimension for * a custom resource provided by your own application or service.

  • *

    comprehend:document-classifier-endpoint:DesiredInferenceUnits - * The number of inference units for an Amazon Comprehend document classification * endpoint.

  • * comprehend:entity-recognizer-endpoint:DesiredInferenceUnits - The * number of inference units for an Amazon Comprehend entity recognizer * endpoint.

  • lambda:function:ProvisionedConcurrency * - The provisioned concurrency for a Lambda function.

  • * cassandra:table:ReadCapacityUnits - The provisioned read capacity * for an Amazon Keyspaces table.

  • * cassandra:table:WriteCapacityUnits - The provisioned write capacity * for an Amazon Keyspaces table.

  • * kafka:broker-storage:VolumeSize - The provisioned volume size (in * GiB) for brokers in an Amazon MSK cluster.

  • * elasticache:replication-group:NodeGroups - The number of node * groups for an Amazon ElastiCache replication group.

  • * elasticache:replication-group:Replicas - The number of replicas per * node group for an Amazon ElastiCache replication group.

  • * neptune:cluster:ReadReplicaCount - The count of read replicas in an * Amazon Neptune DB cluster.

  • * sagemaker:variant:DesiredProvisionedConcurrency - The provisioned * concurrency for a SageMaker Serverless endpoint.

*/ inline PutScalingPolicyRequest& WithScalableDimension(ScalableDimension&& value) { SetScalableDimension(std::move(value)); return *this;} /** *

The scaling policy type. This parameter is required if you are creating a * scaling policy.

The following policy types are supported:

* TargetTrackingScaling—Not supported for Amazon EMR

* StepScaling—Not supported for DynamoDB, Amazon Comprehend, Lambda, * Amazon Keyspaces, Amazon MSK, Amazon ElastiCache, or Neptune.

For more * information, see Target * tracking scaling policies and Step * scaling policies in the Application Auto Scaling User Guide.

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

The scaling policy type. This parameter is required if you are creating a * scaling policy.

The following policy types are supported:

* TargetTrackingScaling—Not supported for Amazon EMR

* StepScaling—Not supported for DynamoDB, Amazon Comprehend, Lambda, * Amazon Keyspaces, Amazon MSK, Amazon ElastiCache, or Neptune.

For more * information, see Target * tracking scaling policies and Step * scaling policies in the Application Auto Scaling User Guide.

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

The scaling policy type. This parameter is required if you are creating a * scaling policy.

The following policy types are supported:

* TargetTrackingScaling—Not supported for Amazon EMR

* StepScaling—Not supported for DynamoDB, Amazon Comprehend, Lambda, * Amazon Keyspaces, Amazon MSK, Amazon ElastiCache, or Neptune.

For more * information, see Target * tracking scaling policies and Step * scaling policies in the Application Auto Scaling User Guide.

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

The scaling policy type. This parameter is required if you are creating a * scaling policy.

The following policy types are supported:

* TargetTrackingScaling—Not supported for Amazon EMR

* StepScaling—Not supported for DynamoDB, Amazon Comprehend, Lambda, * Amazon Keyspaces, Amazon MSK, Amazon ElastiCache, or Neptune.

For more * information, see Target * tracking scaling policies and Step * scaling policies in the Application Auto Scaling User Guide.

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

The scaling policy type. This parameter is required if you are creating a * scaling policy.

The following policy types are supported:

* TargetTrackingScaling—Not supported for Amazon EMR

* StepScaling—Not supported for DynamoDB, Amazon Comprehend, Lambda, * Amazon Keyspaces, Amazon MSK, Amazon ElastiCache, or Neptune.

For more * information, see Target * tracking scaling policies and Step * scaling policies in the Application Auto Scaling User Guide.

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

The scaling policy type. This parameter is required if you are creating a * scaling policy.

The following policy types are supported:

* TargetTrackingScaling—Not supported for Amazon EMR

* StepScaling—Not supported for DynamoDB, Amazon Comprehend, Lambda, * Amazon Keyspaces, Amazon MSK, Amazon ElastiCache, or Neptune.

For more * information, see Target * tracking scaling policies and Step * scaling policies in the Application Auto Scaling User Guide.

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

A step scaling policy.

This parameter is required if you are creating * a policy and the policy type is StepScaling.

*/ inline const StepScalingPolicyConfiguration& GetStepScalingPolicyConfiguration() const{ return m_stepScalingPolicyConfiguration; } /** *

A step scaling policy.

This parameter is required if you are creating * a policy and the policy type is StepScaling.

*/ inline bool StepScalingPolicyConfigurationHasBeenSet() const { return m_stepScalingPolicyConfigurationHasBeenSet; } /** *

A step scaling policy.

This parameter is required if you are creating * a policy and the policy type is StepScaling.

*/ inline void SetStepScalingPolicyConfiguration(const StepScalingPolicyConfiguration& value) { m_stepScalingPolicyConfigurationHasBeenSet = true; m_stepScalingPolicyConfiguration = value; } /** *

A step scaling policy.

This parameter is required if you are creating * a policy and the policy type is StepScaling.

*/ inline void SetStepScalingPolicyConfiguration(StepScalingPolicyConfiguration&& value) { m_stepScalingPolicyConfigurationHasBeenSet = true; m_stepScalingPolicyConfiguration = std::move(value); } /** *

A step scaling policy.

This parameter is required if you are creating * a policy and the policy type is StepScaling.

*/ inline PutScalingPolicyRequest& WithStepScalingPolicyConfiguration(const StepScalingPolicyConfiguration& value) { SetStepScalingPolicyConfiguration(value); return *this;} /** *

A step scaling policy.

This parameter is required if you are creating * a policy and the policy type is StepScaling.

*/ inline PutScalingPolicyRequest& WithStepScalingPolicyConfiguration(StepScalingPolicyConfiguration&& value) { SetStepScalingPolicyConfiguration(std::move(value)); return *this;} /** *

A target tracking scaling policy. Includes support for predefined or * customized metrics.

This parameter is required if you are creating a * policy and the policy type is TargetTrackingScaling.

*/ inline const TargetTrackingScalingPolicyConfiguration& GetTargetTrackingScalingPolicyConfiguration() const{ return m_targetTrackingScalingPolicyConfiguration; } /** *

A target tracking scaling policy. Includes support for predefined or * customized metrics.

This parameter is required if you are creating a * policy and the policy type is TargetTrackingScaling.

*/ inline bool TargetTrackingScalingPolicyConfigurationHasBeenSet() const { return m_targetTrackingScalingPolicyConfigurationHasBeenSet; } /** *

A target tracking scaling policy. Includes support for predefined or * customized metrics.

This parameter is required if you are creating a * policy and the policy type is TargetTrackingScaling.

*/ inline void SetTargetTrackingScalingPolicyConfiguration(const TargetTrackingScalingPolicyConfiguration& value) { m_targetTrackingScalingPolicyConfigurationHasBeenSet = true; m_targetTrackingScalingPolicyConfiguration = value; } /** *

A target tracking scaling policy. Includes support for predefined or * customized metrics.

This parameter is required if you are creating a * policy and the policy type is TargetTrackingScaling.

*/ inline void SetTargetTrackingScalingPolicyConfiguration(TargetTrackingScalingPolicyConfiguration&& value) { m_targetTrackingScalingPolicyConfigurationHasBeenSet = true; m_targetTrackingScalingPolicyConfiguration = std::move(value); } /** *

A target tracking scaling policy. Includes support for predefined or * customized metrics.

This parameter is required if you are creating a * policy and the policy type is TargetTrackingScaling.

*/ inline PutScalingPolicyRequest& WithTargetTrackingScalingPolicyConfiguration(const TargetTrackingScalingPolicyConfiguration& value) { SetTargetTrackingScalingPolicyConfiguration(value); return *this;} /** *

A target tracking scaling policy. Includes support for predefined or * customized metrics.

This parameter is required if you are creating a * policy and the policy type is TargetTrackingScaling.

*/ inline PutScalingPolicyRequest& WithTargetTrackingScalingPolicyConfiguration(TargetTrackingScalingPolicyConfiguration&& value) { SetTargetTrackingScalingPolicyConfiguration(std::move(value)); return *this;} private: Aws::String m_policyName; bool m_policyNameHasBeenSet = false; ServiceNamespace m_serviceNamespace; bool m_serviceNamespaceHasBeenSet = false; Aws::String m_resourceId; bool m_resourceIdHasBeenSet = false; ScalableDimension m_scalableDimension; bool m_scalableDimensionHasBeenSet = false; PolicyType m_policyType; bool m_policyTypeHasBeenSet = false; StepScalingPolicyConfiguration m_stepScalingPolicyConfiguration; bool m_stepScalingPolicyConfigurationHasBeenSet = false; TargetTrackingScalingPolicyConfiguration m_targetTrackingScalingPolicyConfiguration; bool m_targetTrackingScalingPolicyConfigurationHasBeenSet = false; }; } // namespace Model } // namespace ApplicationAutoScaling } // namespace Aws