1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/application-autoscaling/ApplicationAutoScaling_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <aws/application-autoscaling/model/ServiceNamespace.h> 10 #include <aws/application-autoscaling/model/ScalableDimension.h> 11 #include <aws/core/utils/DateTime.h> 12 #include <aws/application-autoscaling/model/ScalableTargetAction.h> 13 #include <utility> 14 15 namespace Aws 16 { 17 namespace Utils 18 { 19 namespace Json 20 { 21 class JsonValue; 22 class JsonView; 23 } // namespace Json 24 } // namespace Utils 25 namespace ApplicationAutoScaling 26 { 27 namespace Model 28 { 29 30 /** 31 * <p>Represents a scheduled action.</p><p><h3>See Also:</h3> <a 32 * href="http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/ScheduledAction">AWS 33 * API Reference</a></p> 34 */ 35 class AWS_APPLICATIONAUTOSCALING_API ScheduledAction 36 { 37 public: 38 ScheduledAction(); 39 ScheduledAction(Aws::Utils::Json::JsonView jsonValue); 40 ScheduledAction& operator=(Aws::Utils::Json::JsonView jsonValue); 41 Aws::Utils::Json::JsonValue Jsonize() const; 42 43 44 /** 45 * <p>The name of the scheduled action.</p> 46 */ GetScheduledActionName()47 inline const Aws::String& GetScheduledActionName() const{ return m_scheduledActionName; } 48 49 /** 50 * <p>The name of the scheduled action.</p> 51 */ ScheduledActionNameHasBeenSet()52 inline bool ScheduledActionNameHasBeenSet() const { return m_scheduledActionNameHasBeenSet; } 53 54 /** 55 * <p>The name of the scheduled action.</p> 56 */ SetScheduledActionName(const Aws::String & value)57 inline void SetScheduledActionName(const Aws::String& value) { m_scheduledActionNameHasBeenSet = true; m_scheduledActionName = value; } 58 59 /** 60 * <p>The name of the scheduled action.</p> 61 */ SetScheduledActionName(Aws::String && value)62 inline void SetScheduledActionName(Aws::String&& value) { m_scheduledActionNameHasBeenSet = true; m_scheduledActionName = std::move(value); } 63 64 /** 65 * <p>The name of the scheduled action.</p> 66 */ SetScheduledActionName(const char * value)67 inline void SetScheduledActionName(const char* value) { m_scheduledActionNameHasBeenSet = true; m_scheduledActionName.assign(value); } 68 69 /** 70 * <p>The name of the scheduled action.</p> 71 */ WithScheduledActionName(const Aws::String & value)72 inline ScheduledAction& WithScheduledActionName(const Aws::String& value) { SetScheduledActionName(value); return *this;} 73 74 /** 75 * <p>The name of the scheduled action.</p> 76 */ WithScheduledActionName(Aws::String && value)77 inline ScheduledAction& WithScheduledActionName(Aws::String&& value) { SetScheduledActionName(std::move(value)); return *this;} 78 79 /** 80 * <p>The name of the scheduled action.</p> 81 */ WithScheduledActionName(const char * value)82 inline ScheduledAction& WithScheduledActionName(const char* value) { SetScheduledActionName(value); return *this;} 83 84 85 /** 86 * <p>The Amazon Resource Name (ARN) of the scheduled action.</p> 87 */ GetScheduledActionARN()88 inline const Aws::String& GetScheduledActionARN() const{ return m_scheduledActionARN; } 89 90 /** 91 * <p>The Amazon Resource Name (ARN) of the scheduled action.</p> 92 */ ScheduledActionARNHasBeenSet()93 inline bool ScheduledActionARNHasBeenSet() const { return m_scheduledActionARNHasBeenSet; } 94 95 /** 96 * <p>The Amazon Resource Name (ARN) of the scheduled action.</p> 97 */ SetScheduledActionARN(const Aws::String & value)98 inline void SetScheduledActionARN(const Aws::String& value) { m_scheduledActionARNHasBeenSet = true; m_scheduledActionARN = value; } 99 100 /** 101 * <p>The Amazon Resource Name (ARN) of the scheduled action.</p> 102 */ SetScheduledActionARN(Aws::String && value)103 inline void SetScheduledActionARN(Aws::String&& value) { m_scheduledActionARNHasBeenSet = true; m_scheduledActionARN = std::move(value); } 104 105 /** 106 * <p>The Amazon Resource Name (ARN) of the scheduled action.</p> 107 */ SetScheduledActionARN(const char * value)108 inline void SetScheduledActionARN(const char* value) { m_scheduledActionARNHasBeenSet = true; m_scheduledActionARN.assign(value); } 109 110 /** 111 * <p>The Amazon Resource Name (ARN) of the scheduled action.</p> 112 */ WithScheduledActionARN(const Aws::String & value)113 inline ScheduledAction& WithScheduledActionARN(const Aws::String& value) { SetScheduledActionARN(value); return *this;} 114 115 /** 116 * <p>The Amazon Resource Name (ARN) of the scheduled action.</p> 117 */ WithScheduledActionARN(Aws::String && value)118 inline ScheduledAction& WithScheduledActionARN(Aws::String&& value) { SetScheduledActionARN(std::move(value)); return *this;} 119 120 /** 121 * <p>The Amazon Resource Name (ARN) of the scheduled action.</p> 122 */ WithScheduledActionARN(const char * value)123 inline ScheduledAction& WithScheduledActionARN(const char* value) { SetScheduledActionARN(value); return *this;} 124 125 126 /** 127 * <p>The namespace of the Amazon Web Services service that provides the resource, 128 * or a <code>custom-resource</code>.</p> 129 */ GetServiceNamespace()130 inline const ServiceNamespace& GetServiceNamespace() const{ return m_serviceNamespace; } 131 132 /** 133 * <p>The namespace of the Amazon Web Services service that provides the resource, 134 * or a <code>custom-resource</code>.</p> 135 */ ServiceNamespaceHasBeenSet()136 inline bool ServiceNamespaceHasBeenSet() const { return m_serviceNamespaceHasBeenSet; } 137 138 /** 139 * <p>The namespace of the Amazon Web Services service that provides the resource, 140 * or a <code>custom-resource</code>.</p> 141 */ SetServiceNamespace(const ServiceNamespace & value)142 inline void SetServiceNamespace(const ServiceNamespace& value) { m_serviceNamespaceHasBeenSet = true; m_serviceNamespace = value; } 143 144 /** 145 * <p>The namespace of the Amazon Web Services service that provides the resource, 146 * or a <code>custom-resource</code>.</p> 147 */ SetServiceNamespace(ServiceNamespace && value)148 inline void SetServiceNamespace(ServiceNamespace&& value) { m_serviceNamespaceHasBeenSet = true; m_serviceNamespace = std::move(value); } 149 150 /** 151 * <p>The namespace of the Amazon Web Services service that provides the resource, 152 * or a <code>custom-resource</code>.</p> 153 */ WithServiceNamespace(const ServiceNamespace & value)154 inline ScheduledAction& WithServiceNamespace(const ServiceNamespace& value) { SetServiceNamespace(value); return *this;} 155 156 /** 157 * <p>The namespace of the Amazon Web Services service that provides the resource, 158 * or a <code>custom-resource</code>.</p> 159 */ WithServiceNamespace(ServiceNamespace && value)160 inline ScheduledAction& WithServiceNamespace(ServiceNamespace&& value) { SetServiceNamespace(std::move(value)); return *this;} 161 162 163 /** 164 * <p>The schedule for this action. The following formats are supported:</p> <ul> 165 * <li> <p>At expressions - 166 * "<code>at(<i>yyyy</i>-<i>mm</i>-<i>dd</i>T<i>hh</i>:<i>mm</i>:<i>ss</i>)</code>"</p> 167 * </li> <li> <p>Rate expressions - "<code>rate(<i>value</i> 168 * <i>unit</i>)</code>"</p> </li> <li> <p>Cron expressions - 169 * "<code>cron(<i>fields</i>)</code>"</p> </li> </ul> <p>At expressions are useful 170 * for one-time schedules. Cron expressions are useful for scheduled actions that 171 * run periodically at a specified date and time, and rate expressions are useful 172 * for scheduled actions that run at a regular interval.</p> <p>At and cron 173 * expressions use Universal Coordinated Time (UTC) by default.</p> <p>The cron 174 * format consists of six fields separated by white spaces: [Minutes] [Hours] 175 * [Day_of_Month] [Month] [Day_of_Week] [Year].</p> <p>For rate expressions, 176 * <i>value</i> is a positive integer and <i>unit</i> is <code>minute</code> | 177 * <code>minutes</code> | <code>hour</code> | <code>hours</code> | <code>day</code> 178 * | <code>days</code>.</p> <p>For more information and examples, see <a 179 * href="https://docs.aws.amazon.com/autoscaling/application/userguide/examples-scheduled-actions.html">Example 180 * scheduled actions for Application Auto Scaling</a> in the <i>Application Auto 181 * Scaling User Guide</i>.</p> 182 */ GetSchedule()183 inline const Aws::String& GetSchedule() const{ return m_schedule; } 184 185 /** 186 * <p>The schedule for this action. The following formats are supported:</p> <ul> 187 * <li> <p>At expressions - 188 * "<code>at(<i>yyyy</i>-<i>mm</i>-<i>dd</i>T<i>hh</i>:<i>mm</i>:<i>ss</i>)</code>"</p> 189 * </li> <li> <p>Rate expressions - "<code>rate(<i>value</i> 190 * <i>unit</i>)</code>"</p> </li> <li> <p>Cron expressions - 191 * "<code>cron(<i>fields</i>)</code>"</p> </li> </ul> <p>At expressions are useful 192 * for one-time schedules. Cron expressions are useful for scheduled actions that 193 * run periodically at a specified date and time, and rate expressions are useful 194 * for scheduled actions that run at a regular interval.</p> <p>At and cron 195 * expressions use Universal Coordinated Time (UTC) by default.</p> <p>The cron 196 * format consists of six fields separated by white spaces: [Minutes] [Hours] 197 * [Day_of_Month] [Month] [Day_of_Week] [Year].</p> <p>For rate expressions, 198 * <i>value</i> is a positive integer and <i>unit</i> is <code>minute</code> | 199 * <code>minutes</code> | <code>hour</code> | <code>hours</code> | <code>day</code> 200 * | <code>days</code>.</p> <p>For more information and examples, see <a 201 * href="https://docs.aws.amazon.com/autoscaling/application/userguide/examples-scheduled-actions.html">Example 202 * scheduled actions for Application Auto Scaling</a> in the <i>Application Auto 203 * Scaling User Guide</i>.</p> 204 */ ScheduleHasBeenSet()205 inline bool ScheduleHasBeenSet() const { return m_scheduleHasBeenSet; } 206 207 /** 208 * <p>The schedule for this action. The following formats are supported:</p> <ul> 209 * <li> <p>At expressions - 210 * "<code>at(<i>yyyy</i>-<i>mm</i>-<i>dd</i>T<i>hh</i>:<i>mm</i>:<i>ss</i>)</code>"</p> 211 * </li> <li> <p>Rate expressions - "<code>rate(<i>value</i> 212 * <i>unit</i>)</code>"</p> </li> <li> <p>Cron expressions - 213 * "<code>cron(<i>fields</i>)</code>"</p> </li> </ul> <p>At expressions are useful 214 * for one-time schedules. Cron expressions are useful for scheduled actions that 215 * run periodically at a specified date and time, and rate expressions are useful 216 * for scheduled actions that run at a regular interval.</p> <p>At and cron 217 * expressions use Universal Coordinated Time (UTC) by default.</p> <p>The cron 218 * format consists of six fields separated by white spaces: [Minutes] [Hours] 219 * [Day_of_Month] [Month] [Day_of_Week] [Year].</p> <p>For rate expressions, 220 * <i>value</i> is a positive integer and <i>unit</i> is <code>minute</code> | 221 * <code>minutes</code> | <code>hour</code> | <code>hours</code> | <code>day</code> 222 * | <code>days</code>.</p> <p>For more information and examples, see <a 223 * href="https://docs.aws.amazon.com/autoscaling/application/userguide/examples-scheduled-actions.html">Example 224 * scheduled actions for Application Auto Scaling</a> in the <i>Application Auto 225 * Scaling User Guide</i>.</p> 226 */ SetSchedule(const Aws::String & value)227 inline void SetSchedule(const Aws::String& value) { m_scheduleHasBeenSet = true; m_schedule = value; } 228 229 /** 230 * <p>The schedule for this action. The following formats are supported:</p> <ul> 231 * <li> <p>At expressions - 232 * "<code>at(<i>yyyy</i>-<i>mm</i>-<i>dd</i>T<i>hh</i>:<i>mm</i>:<i>ss</i>)</code>"</p> 233 * </li> <li> <p>Rate expressions - "<code>rate(<i>value</i> 234 * <i>unit</i>)</code>"</p> </li> <li> <p>Cron expressions - 235 * "<code>cron(<i>fields</i>)</code>"</p> </li> </ul> <p>At expressions are useful 236 * for one-time schedules. Cron expressions are useful for scheduled actions that 237 * run periodically at a specified date and time, and rate expressions are useful 238 * for scheduled actions that run at a regular interval.</p> <p>At and cron 239 * expressions use Universal Coordinated Time (UTC) by default.</p> <p>The cron 240 * format consists of six fields separated by white spaces: [Minutes] [Hours] 241 * [Day_of_Month] [Month] [Day_of_Week] [Year].</p> <p>For rate expressions, 242 * <i>value</i> is a positive integer and <i>unit</i> is <code>minute</code> | 243 * <code>minutes</code> | <code>hour</code> | <code>hours</code> | <code>day</code> 244 * | <code>days</code>.</p> <p>For more information and examples, see <a 245 * href="https://docs.aws.amazon.com/autoscaling/application/userguide/examples-scheduled-actions.html">Example 246 * scheduled actions for Application Auto Scaling</a> in the <i>Application Auto 247 * Scaling User Guide</i>.</p> 248 */ SetSchedule(Aws::String && value)249 inline void SetSchedule(Aws::String&& value) { m_scheduleHasBeenSet = true; m_schedule = std::move(value); } 250 251 /** 252 * <p>The schedule for this action. The following formats are supported:</p> <ul> 253 * <li> <p>At expressions - 254 * "<code>at(<i>yyyy</i>-<i>mm</i>-<i>dd</i>T<i>hh</i>:<i>mm</i>:<i>ss</i>)</code>"</p> 255 * </li> <li> <p>Rate expressions - "<code>rate(<i>value</i> 256 * <i>unit</i>)</code>"</p> </li> <li> <p>Cron expressions - 257 * "<code>cron(<i>fields</i>)</code>"</p> </li> </ul> <p>At expressions are useful 258 * for one-time schedules. Cron expressions are useful for scheduled actions that 259 * run periodically at a specified date and time, and rate expressions are useful 260 * for scheduled actions that run at a regular interval.</p> <p>At and cron 261 * expressions use Universal Coordinated Time (UTC) by default.</p> <p>The cron 262 * format consists of six fields separated by white spaces: [Minutes] [Hours] 263 * [Day_of_Month] [Month] [Day_of_Week] [Year].</p> <p>For rate expressions, 264 * <i>value</i> is a positive integer and <i>unit</i> is <code>minute</code> | 265 * <code>minutes</code> | <code>hour</code> | <code>hours</code> | <code>day</code> 266 * | <code>days</code>.</p> <p>For more information and examples, see <a 267 * href="https://docs.aws.amazon.com/autoscaling/application/userguide/examples-scheduled-actions.html">Example 268 * scheduled actions for Application Auto Scaling</a> in the <i>Application Auto 269 * Scaling User Guide</i>.</p> 270 */ SetSchedule(const char * value)271 inline void SetSchedule(const char* value) { m_scheduleHasBeenSet = true; m_schedule.assign(value); } 272 273 /** 274 * <p>The schedule for this action. The following formats are supported:</p> <ul> 275 * <li> <p>At expressions - 276 * "<code>at(<i>yyyy</i>-<i>mm</i>-<i>dd</i>T<i>hh</i>:<i>mm</i>:<i>ss</i>)</code>"</p> 277 * </li> <li> <p>Rate expressions - "<code>rate(<i>value</i> 278 * <i>unit</i>)</code>"</p> </li> <li> <p>Cron expressions - 279 * "<code>cron(<i>fields</i>)</code>"</p> </li> </ul> <p>At expressions are useful 280 * for one-time schedules. Cron expressions are useful for scheduled actions that 281 * run periodically at a specified date and time, and rate expressions are useful 282 * for scheduled actions that run at a regular interval.</p> <p>At and cron 283 * expressions use Universal Coordinated Time (UTC) by default.</p> <p>The cron 284 * format consists of six fields separated by white spaces: [Minutes] [Hours] 285 * [Day_of_Month] [Month] [Day_of_Week] [Year].</p> <p>For rate expressions, 286 * <i>value</i> is a positive integer and <i>unit</i> is <code>minute</code> | 287 * <code>minutes</code> | <code>hour</code> | <code>hours</code> | <code>day</code> 288 * | <code>days</code>.</p> <p>For more information and examples, see <a 289 * href="https://docs.aws.amazon.com/autoscaling/application/userguide/examples-scheduled-actions.html">Example 290 * scheduled actions for Application Auto Scaling</a> in the <i>Application Auto 291 * Scaling User Guide</i>.</p> 292 */ WithSchedule(const Aws::String & value)293 inline ScheduledAction& WithSchedule(const Aws::String& value) { SetSchedule(value); return *this;} 294 295 /** 296 * <p>The schedule for this action. The following formats are supported:</p> <ul> 297 * <li> <p>At expressions - 298 * "<code>at(<i>yyyy</i>-<i>mm</i>-<i>dd</i>T<i>hh</i>:<i>mm</i>:<i>ss</i>)</code>"</p> 299 * </li> <li> <p>Rate expressions - "<code>rate(<i>value</i> 300 * <i>unit</i>)</code>"</p> </li> <li> <p>Cron expressions - 301 * "<code>cron(<i>fields</i>)</code>"</p> </li> </ul> <p>At expressions are useful 302 * for one-time schedules. Cron expressions are useful for scheduled actions that 303 * run periodically at a specified date and time, and rate expressions are useful 304 * for scheduled actions that run at a regular interval.</p> <p>At and cron 305 * expressions use Universal Coordinated Time (UTC) by default.</p> <p>The cron 306 * format consists of six fields separated by white spaces: [Minutes] [Hours] 307 * [Day_of_Month] [Month] [Day_of_Week] [Year].</p> <p>For rate expressions, 308 * <i>value</i> is a positive integer and <i>unit</i> is <code>minute</code> | 309 * <code>minutes</code> | <code>hour</code> | <code>hours</code> | <code>day</code> 310 * | <code>days</code>.</p> <p>For more information and examples, see <a 311 * href="https://docs.aws.amazon.com/autoscaling/application/userguide/examples-scheduled-actions.html">Example 312 * scheduled actions for Application Auto Scaling</a> in the <i>Application Auto 313 * Scaling User Guide</i>.</p> 314 */ WithSchedule(Aws::String && value)315 inline ScheduledAction& WithSchedule(Aws::String&& value) { SetSchedule(std::move(value)); return *this;} 316 317 /** 318 * <p>The schedule for this action. The following formats are supported:</p> <ul> 319 * <li> <p>At expressions - 320 * "<code>at(<i>yyyy</i>-<i>mm</i>-<i>dd</i>T<i>hh</i>:<i>mm</i>:<i>ss</i>)</code>"</p> 321 * </li> <li> <p>Rate expressions - "<code>rate(<i>value</i> 322 * <i>unit</i>)</code>"</p> </li> <li> <p>Cron expressions - 323 * "<code>cron(<i>fields</i>)</code>"</p> </li> </ul> <p>At expressions are useful 324 * for one-time schedules. Cron expressions are useful for scheduled actions that 325 * run periodically at a specified date and time, and rate expressions are useful 326 * for scheduled actions that run at a regular interval.</p> <p>At and cron 327 * expressions use Universal Coordinated Time (UTC) by default.</p> <p>The cron 328 * format consists of six fields separated by white spaces: [Minutes] [Hours] 329 * [Day_of_Month] [Month] [Day_of_Week] [Year].</p> <p>For rate expressions, 330 * <i>value</i> is a positive integer and <i>unit</i> is <code>minute</code> | 331 * <code>minutes</code> | <code>hour</code> | <code>hours</code> | <code>day</code> 332 * | <code>days</code>.</p> <p>For more information and examples, see <a 333 * href="https://docs.aws.amazon.com/autoscaling/application/userguide/examples-scheduled-actions.html">Example 334 * scheduled actions for Application Auto Scaling</a> in the <i>Application Auto 335 * Scaling User Guide</i>.</p> 336 */ WithSchedule(const char * value)337 inline ScheduledAction& WithSchedule(const char* value) { SetSchedule(value); return *this;} 338 339 340 /** 341 * <p>The time zone used when referring to the date and time of a scheduled action, 342 * when the scheduled action uses an at or cron expression.</p> 343 */ GetTimezone()344 inline const Aws::String& GetTimezone() const{ return m_timezone; } 345 346 /** 347 * <p>The time zone used when referring to the date and time of a scheduled action, 348 * when the scheduled action uses an at or cron expression.</p> 349 */ TimezoneHasBeenSet()350 inline bool TimezoneHasBeenSet() const { return m_timezoneHasBeenSet; } 351 352 /** 353 * <p>The time zone used when referring to the date and time of a scheduled action, 354 * when the scheduled action uses an at or cron expression.</p> 355 */ SetTimezone(const Aws::String & value)356 inline void SetTimezone(const Aws::String& value) { m_timezoneHasBeenSet = true; m_timezone = value; } 357 358 /** 359 * <p>The time zone used when referring to the date and time of a scheduled action, 360 * when the scheduled action uses an at or cron expression.</p> 361 */ SetTimezone(Aws::String && value)362 inline void SetTimezone(Aws::String&& value) { m_timezoneHasBeenSet = true; m_timezone = std::move(value); } 363 364 /** 365 * <p>The time zone used when referring to the date and time of a scheduled action, 366 * when the scheduled action uses an at or cron expression.</p> 367 */ SetTimezone(const char * value)368 inline void SetTimezone(const char* value) { m_timezoneHasBeenSet = true; m_timezone.assign(value); } 369 370 /** 371 * <p>The time zone used when referring to the date and time of a scheduled action, 372 * when the scheduled action uses an at or cron expression.</p> 373 */ WithTimezone(const Aws::String & value)374 inline ScheduledAction& WithTimezone(const Aws::String& value) { SetTimezone(value); return *this;} 375 376 /** 377 * <p>The time zone used when referring to the date and time of a scheduled action, 378 * when the scheduled action uses an at or cron expression.</p> 379 */ WithTimezone(Aws::String && value)380 inline ScheduledAction& WithTimezone(Aws::String&& value) { SetTimezone(std::move(value)); return *this;} 381 382 /** 383 * <p>The time zone used when referring to the date and time of a scheduled action, 384 * when the scheduled action uses an at or cron expression.</p> 385 */ WithTimezone(const char * value)386 inline ScheduledAction& WithTimezone(const char* value) { SetTimezone(value); return *this;} 387 388 389 /** 390 * <p>The identifier of the resource associated with the scaling policy. This 391 * string consists of the resource type and unique identifier.</p> <ul> <li> <p>ECS 392 * service - The resource type is <code>service</code> and the unique identifier is 393 * the cluster name and service name. Example: 394 * <code>service/default/sample-webapp</code>.</p> </li> <li> <p>Spot Fleet - The 395 * resource type is <code>spot-fleet-request</code> and the unique identifier is 396 * the Spot Fleet request ID. Example: 397 * <code>spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE</code>.</p> 398 * </li> <li> <p>EMR cluster - The resource type is <code>instancegroup</code> and 399 * the unique identifier is the cluster ID and instance group ID. Example: 400 * <code>instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0</code>.</p> </li> <li> 401 * <p>AppStream 2.0 fleet - The resource type is <code>fleet</code> and the unique 402 * identifier is the fleet name. Example: <code>fleet/sample-fleet</code>.</p> 403 * </li> <li> <p>DynamoDB table - The resource type is <code>table</code> and the 404 * unique identifier is the table name. Example: <code>table/my-table</code>.</p> 405 * </li> <li> <p>DynamoDB global secondary index - The resource type is 406 * <code>index</code> and the unique identifier is the index name. Example: 407 * <code>table/my-table/index/my-table-index</code>.</p> </li> <li> <p>Aurora DB 408 * cluster - The resource type is <code>cluster</code> and the unique identifier is 409 * the cluster name. Example: <code>cluster:my-db-cluster</code>.</p> </li> <li> 410 * <p>SageMaker endpoint variant - The resource type is <code>variant</code> and 411 * the unique identifier is the resource ID. Example: 412 * <code>endpoint/my-end-point/variant/KMeansClustering</code>.</p> </li> <li> 413 * <p>Custom resources are not supported with a resource type. This parameter must 414 * specify the <code>OutputValue</code> from the CloudFormation template stack used 415 * to access the resources. The unique identifier is defined by the service 416 * provider. More information is available in our <a 417 * href="https://github.com/aws/aws-auto-scaling-custom-resource">GitHub 418 * repository</a>.</p> </li> <li> <p>Amazon Comprehend document classification 419 * endpoint - The resource type and unique identifier are specified using the 420 * endpoint ARN. Example: 421 * <code>arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE</code>.</p> 422 * </li> <li> <p>Amazon Comprehend entity recognizer endpoint - The resource type 423 * and unique identifier are specified using the endpoint ARN. Example: 424 * <code>arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE</code>.</p> 425 * </li> <li> <p>Lambda provisioned concurrency - The resource type is 426 * <code>function</code> and the unique identifier is the function name with a 427 * function version or alias name suffix that is not <code>$LATEST</code>. Example: 428 * <code>function:my-function:prod</code> or 429 * <code>function:my-function:1</code>.</p> </li> <li> <p>Amazon Keyspaces table - 430 * The resource type is <code>table</code> and the unique identifier is the table 431 * name. Example: <code>keyspace/mykeyspace/table/mytable</code>.</p> </li> <li> 432 * <p>Amazon MSK cluster - The resource type and unique identifier are specified 433 * using the cluster ARN. Example: 434 * <code>arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5</code>.</p> 435 * </li> <li> <p>Amazon ElastiCache replication group - The resource type is 436 * <code>replication-group</code> and the unique identifier is the replication 437 * group name. Example: <code>replication-group/mycluster</code>.</p> </li> <li> 438 * <p>Neptune cluster - The resource type is <code>cluster</code> and the unique 439 * identifier is the cluster name. Example: <code>cluster:mycluster</code>.</p> 440 * </li> </ul> 441 */ GetResourceId()442 inline const Aws::String& GetResourceId() const{ return m_resourceId; } 443 444 /** 445 * <p>The identifier of the resource associated with the scaling policy. This 446 * string consists of the resource type and unique identifier.</p> <ul> <li> <p>ECS 447 * service - The resource type is <code>service</code> and the unique identifier is 448 * the cluster name and service name. Example: 449 * <code>service/default/sample-webapp</code>.</p> </li> <li> <p>Spot Fleet - The 450 * resource type is <code>spot-fleet-request</code> and the unique identifier is 451 * the Spot Fleet request ID. Example: 452 * <code>spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE</code>.</p> 453 * </li> <li> <p>EMR cluster - The resource type is <code>instancegroup</code> and 454 * the unique identifier is the cluster ID and instance group ID. Example: 455 * <code>instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0</code>.</p> </li> <li> 456 * <p>AppStream 2.0 fleet - The resource type is <code>fleet</code> and the unique 457 * identifier is the fleet name. Example: <code>fleet/sample-fleet</code>.</p> 458 * </li> <li> <p>DynamoDB table - The resource type is <code>table</code> and the 459 * unique identifier is the table name. Example: <code>table/my-table</code>.</p> 460 * </li> <li> <p>DynamoDB global secondary index - The resource type is 461 * <code>index</code> and the unique identifier is the index name. Example: 462 * <code>table/my-table/index/my-table-index</code>.</p> </li> <li> <p>Aurora DB 463 * cluster - The resource type is <code>cluster</code> and the unique identifier is 464 * the cluster name. Example: <code>cluster:my-db-cluster</code>.</p> </li> <li> 465 * <p>SageMaker endpoint variant - The resource type is <code>variant</code> and 466 * the unique identifier is the resource ID. Example: 467 * <code>endpoint/my-end-point/variant/KMeansClustering</code>.</p> </li> <li> 468 * <p>Custom resources are not supported with a resource type. This parameter must 469 * specify the <code>OutputValue</code> from the CloudFormation template stack used 470 * to access the resources. The unique identifier is defined by the service 471 * provider. More information is available in our <a 472 * href="https://github.com/aws/aws-auto-scaling-custom-resource">GitHub 473 * repository</a>.</p> </li> <li> <p>Amazon Comprehend document classification 474 * endpoint - The resource type and unique identifier are specified using the 475 * endpoint ARN. Example: 476 * <code>arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE</code>.</p> 477 * </li> <li> <p>Amazon Comprehend entity recognizer endpoint - The resource type 478 * and unique identifier are specified using the endpoint ARN. Example: 479 * <code>arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE</code>.</p> 480 * </li> <li> <p>Lambda provisioned concurrency - The resource type is 481 * <code>function</code> and the unique identifier is the function name with a 482 * function version or alias name suffix that is not <code>$LATEST</code>. Example: 483 * <code>function:my-function:prod</code> or 484 * <code>function:my-function:1</code>.</p> </li> <li> <p>Amazon Keyspaces table - 485 * The resource type is <code>table</code> and the unique identifier is the table 486 * name. Example: <code>keyspace/mykeyspace/table/mytable</code>.</p> </li> <li> 487 * <p>Amazon MSK cluster - The resource type and unique identifier are specified 488 * using the cluster ARN. Example: 489 * <code>arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5</code>.</p> 490 * </li> <li> <p>Amazon ElastiCache replication group - The resource type is 491 * <code>replication-group</code> and the unique identifier is the replication 492 * group name. Example: <code>replication-group/mycluster</code>.</p> </li> <li> 493 * <p>Neptune cluster - The resource type is <code>cluster</code> and the unique 494 * identifier is the cluster name. Example: <code>cluster:mycluster</code>.</p> 495 * </li> </ul> 496 */ ResourceIdHasBeenSet()497 inline bool ResourceIdHasBeenSet() const { return m_resourceIdHasBeenSet; } 498 499 /** 500 * <p>The identifier of the resource associated with the scaling policy. This 501 * string consists of the resource type and unique identifier.</p> <ul> <li> <p>ECS 502 * service - The resource type is <code>service</code> and the unique identifier is 503 * the cluster name and service name. Example: 504 * <code>service/default/sample-webapp</code>.</p> </li> <li> <p>Spot Fleet - The 505 * resource type is <code>spot-fleet-request</code> and the unique identifier is 506 * the Spot Fleet request ID. Example: 507 * <code>spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE</code>.</p> 508 * </li> <li> <p>EMR cluster - The resource type is <code>instancegroup</code> and 509 * the unique identifier is the cluster ID and instance group ID. Example: 510 * <code>instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0</code>.</p> </li> <li> 511 * <p>AppStream 2.0 fleet - The resource type is <code>fleet</code> and the unique 512 * identifier is the fleet name. Example: <code>fleet/sample-fleet</code>.</p> 513 * </li> <li> <p>DynamoDB table - The resource type is <code>table</code> and the 514 * unique identifier is the table name. Example: <code>table/my-table</code>.</p> 515 * </li> <li> <p>DynamoDB global secondary index - The resource type is 516 * <code>index</code> and the unique identifier is the index name. Example: 517 * <code>table/my-table/index/my-table-index</code>.</p> </li> <li> <p>Aurora DB 518 * cluster - The resource type is <code>cluster</code> and the unique identifier is 519 * the cluster name. Example: <code>cluster:my-db-cluster</code>.</p> </li> <li> 520 * <p>SageMaker endpoint variant - The resource type is <code>variant</code> and 521 * the unique identifier is the resource ID. Example: 522 * <code>endpoint/my-end-point/variant/KMeansClustering</code>.</p> </li> <li> 523 * <p>Custom resources are not supported with a resource type. This parameter must 524 * specify the <code>OutputValue</code> from the CloudFormation template stack used 525 * to access the resources. The unique identifier is defined by the service 526 * provider. More information is available in our <a 527 * href="https://github.com/aws/aws-auto-scaling-custom-resource">GitHub 528 * repository</a>.</p> </li> <li> <p>Amazon Comprehend document classification 529 * endpoint - The resource type and unique identifier are specified using the 530 * endpoint ARN. Example: 531 * <code>arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE</code>.</p> 532 * </li> <li> <p>Amazon Comprehend entity recognizer endpoint - The resource type 533 * and unique identifier are specified using the endpoint ARN. Example: 534 * <code>arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE</code>.</p> 535 * </li> <li> <p>Lambda provisioned concurrency - The resource type is 536 * <code>function</code> and the unique identifier is the function name with a 537 * function version or alias name suffix that is not <code>$LATEST</code>. Example: 538 * <code>function:my-function:prod</code> or 539 * <code>function:my-function:1</code>.</p> </li> <li> <p>Amazon Keyspaces table - 540 * The resource type is <code>table</code> and the unique identifier is the table 541 * name. Example: <code>keyspace/mykeyspace/table/mytable</code>.</p> </li> <li> 542 * <p>Amazon MSK cluster - The resource type and unique identifier are specified 543 * using the cluster ARN. Example: 544 * <code>arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5</code>.</p> 545 * </li> <li> <p>Amazon ElastiCache replication group - The resource type is 546 * <code>replication-group</code> and the unique identifier is the replication 547 * group name. Example: <code>replication-group/mycluster</code>.</p> </li> <li> 548 * <p>Neptune cluster - The resource type is <code>cluster</code> and the unique 549 * identifier is the cluster name. Example: <code>cluster:mycluster</code>.</p> 550 * </li> </ul> 551 */ SetResourceId(const Aws::String & value)552 inline void SetResourceId(const Aws::String& value) { m_resourceIdHasBeenSet = true; m_resourceId = value; } 553 554 /** 555 * <p>The identifier of the resource associated with the scaling policy. This 556 * string consists of the resource type and unique identifier.</p> <ul> <li> <p>ECS 557 * service - The resource type is <code>service</code> and the unique identifier is 558 * the cluster name and service name. Example: 559 * <code>service/default/sample-webapp</code>.</p> </li> <li> <p>Spot Fleet - The 560 * resource type is <code>spot-fleet-request</code> and the unique identifier is 561 * the Spot Fleet request ID. Example: 562 * <code>spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE</code>.</p> 563 * </li> <li> <p>EMR cluster - The resource type is <code>instancegroup</code> and 564 * the unique identifier is the cluster ID and instance group ID. Example: 565 * <code>instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0</code>.</p> </li> <li> 566 * <p>AppStream 2.0 fleet - The resource type is <code>fleet</code> and the unique 567 * identifier is the fleet name. Example: <code>fleet/sample-fleet</code>.</p> 568 * </li> <li> <p>DynamoDB table - The resource type is <code>table</code> and the 569 * unique identifier is the table name. Example: <code>table/my-table</code>.</p> 570 * </li> <li> <p>DynamoDB global secondary index - The resource type is 571 * <code>index</code> and the unique identifier is the index name. Example: 572 * <code>table/my-table/index/my-table-index</code>.</p> </li> <li> <p>Aurora DB 573 * cluster - The resource type is <code>cluster</code> and the unique identifier is 574 * the cluster name. Example: <code>cluster:my-db-cluster</code>.</p> </li> <li> 575 * <p>SageMaker endpoint variant - The resource type is <code>variant</code> and 576 * the unique identifier is the resource ID. Example: 577 * <code>endpoint/my-end-point/variant/KMeansClustering</code>.</p> </li> <li> 578 * <p>Custom resources are not supported with a resource type. This parameter must 579 * specify the <code>OutputValue</code> from the CloudFormation template stack used 580 * to access the resources. The unique identifier is defined by the service 581 * provider. More information is available in our <a 582 * href="https://github.com/aws/aws-auto-scaling-custom-resource">GitHub 583 * repository</a>.</p> </li> <li> <p>Amazon Comprehend document classification 584 * endpoint - The resource type and unique identifier are specified using the 585 * endpoint ARN. Example: 586 * <code>arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE</code>.</p> 587 * </li> <li> <p>Amazon Comprehend entity recognizer endpoint - The resource type 588 * and unique identifier are specified using the endpoint ARN. Example: 589 * <code>arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE</code>.</p> 590 * </li> <li> <p>Lambda provisioned concurrency - The resource type is 591 * <code>function</code> and the unique identifier is the function name with a 592 * function version or alias name suffix that is not <code>$LATEST</code>. Example: 593 * <code>function:my-function:prod</code> or 594 * <code>function:my-function:1</code>.</p> </li> <li> <p>Amazon Keyspaces table - 595 * The resource type is <code>table</code> and the unique identifier is the table 596 * name. Example: <code>keyspace/mykeyspace/table/mytable</code>.</p> </li> <li> 597 * <p>Amazon MSK cluster - The resource type and unique identifier are specified 598 * using the cluster ARN. Example: 599 * <code>arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5</code>.</p> 600 * </li> <li> <p>Amazon ElastiCache replication group - The resource type is 601 * <code>replication-group</code> and the unique identifier is the replication 602 * group name. Example: <code>replication-group/mycluster</code>.</p> </li> <li> 603 * <p>Neptune cluster - The resource type is <code>cluster</code> and the unique 604 * identifier is the cluster name. Example: <code>cluster:mycluster</code>.</p> 605 * </li> </ul> 606 */ SetResourceId(Aws::String && value)607 inline void SetResourceId(Aws::String&& value) { m_resourceIdHasBeenSet = true; m_resourceId = std::move(value); } 608 609 /** 610 * <p>The identifier of the resource associated with the scaling policy. This 611 * string consists of the resource type and unique identifier.</p> <ul> <li> <p>ECS 612 * service - The resource type is <code>service</code> and the unique identifier is 613 * the cluster name and service name. Example: 614 * <code>service/default/sample-webapp</code>.</p> </li> <li> <p>Spot Fleet - The 615 * resource type is <code>spot-fleet-request</code> and the unique identifier is 616 * the Spot Fleet request ID. Example: 617 * <code>spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE</code>.</p> 618 * </li> <li> <p>EMR cluster - The resource type is <code>instancegroup</code> and 619 * the unique identifier is the cluster ID and instance group ID. Example: 620 * <code>instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0</code>.</p> </li> <li> 621 * <p>AppStream 2.0 fleet - The resource type is <code>fleet</code> and the unique 622 * identifier is the fleet name. Example: <code>fleet/sample-fleet</code>.</p> 623 * </li> <li> <p>DynamoDB table - The resource type is <code>table</code> and the 624 * unique identifier is the table name. Example: <code>table/my-table</code>.</p> 625 * </li> <li> <p>DynamoDB global secondary index - The resource type is 626 * <code>index</code> and the unique identifier is the index name. Example: 627 * <code>table/my-table/index/my-table-index</code>.</p> </li> <li> <p>Aurora DB 628 * cluster - The resource type is <code>cluster</code> and the unique identifier is 629 * the cluster name. Example: <code>cluster:my-db-cluster</code>.</p> </li> <li> 630 * <p>SageMaker endpoint variant - The resource type is <code>variant</code> and 631 * the unique identifier is the resource ID. Example: 632 * <code>endpoint/my-end-point/variant/KMeansClustering</code>.</p> </li> <li> 633 * <p>Custom resources are not supported with a resource type. This parameter must 634 * specify the <code>OutputValue</code> from the CloudFormation template stack used 635 * to access the resources. The unique identifier is defined by the service 636 * provider. More information is available in our <a 637 * href="https://github.com/aws/aws-auto-scaling-custom-resource">GitHub 638 * repository</a>.</p> </li> <li> <p>Amazon Comprehend document classification 639 * endpoint - The resource type and unique identifier are specified using the 640 * endpoint ARN. Example: 641 * <code>arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE</code>.</p> 642 * </li> <li> <p>Amazon Comprehend entity recognizer endpoint - The resource type 643 * and unique identifier are specified using the endpoint ARN. Example: 644 * <code>arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE</code>.</p> 645 * </li> <li> <p>Lambda provisioned concurrency - The resource type is 646 * <code>function</code> and the unique identifier is the function name with a 647 * function version or alias name suffix that is not <code>$LATEST</code>. Example: 648 * <code>function:my-function:prod</code> or 649 * <code>function:my-function:1</code>.</p> </li> <li> <p>Amazon Keyspaces table - 650 * The resource type is <code>table</code> and the unique identifier is the table 651 * name. Example: <code>keyspace/mykeyspace/table/mytable</code>.</p> </li> <li> 652 * <p>Amazon MSK cluster - The resource type and unique identifier are specified 653 * using the cluster ARN. Example: 654 * <code>arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5</code>.</p> 655 * </li> <li> <p>Amazon ElastiCache replication group - The resource type is 656 * <code>replication-group</code> and the unique identifier is the replication 657 * group name. Example: <code>replication-group/mycluster</code>.</p> </li> <li> 658 * <p>Neptune cluster - The resource type is <code>cluster</code> and the unique 659 * identifier is the cluster name. Example: <code>cluster:mycluster</code>.</p> 660 * </li> </ul> 661 */ SetResourceId(const char * value)662 inline void SetResourceId(const char* value) { m_resourceIdHasBeenSet = true; m_resourceId.assign(value); } 663 664 /** 665 * <p>The identifier of the resource associated with the scaling policy. This 666 * string consists of the resource type and unique identifier.</p> <ul> <li> <p>ECS 667 * service - The resource type is <code>service</code> and the unique identifier is 668 * the cluster name and service name. Example: 669 * <code>service/default/sample-webapp</code>.</p> </li> <li> <p>Spot Fleet - The 670 * resource type is <code>spot-fleet-request</code> and the unique identifier is 671 * the Spot Fleet request ID. Example: 672 * <code>spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE</code>.</p> 673 * </li> <li> <p>EMR cluster - The resource type is <code>instancegroup</code> and 674 * the unique identifier is the cluster ID and instance group ID. Example: 675 * <code>instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0</code>.</p> </li> <li> 676 * <p>AppStream 2.0 fleet - The resource type is <code>fleet</code> and the unique 677 * identifier is the fleet name. Example: <code>fleet/sample-fleet</code>.</p> 678 * </li> <li> <p>DynamoDB table - The resource type is <code>table</code> and the 679 * unique identifier is the table name. Example: <code>table/my-table</code>.</p> 680 * </li> <li> <p>DynamoDB global secondary index - The resource type is 681 * <code>index</code> and the unique identifier is the index name. Example: 682 * <code>table/my-table/index/my-table-index</code>.</p> </li> <li> <p>Aurora DB 683 * cluster - The resource type is <code>cluster</code> and the unique identifier is 684 * the cluster name. Example: <code>cluster:my-db-cluster</code>.</p> </li> <li> 685 * <p>SageMaker endpoint variant - The resource type is <code>variant</code> and 686 * the unique identifier is the resource ID. Example: 687 * <code>endpoint/my-end-point/variant/KMeansClustering</code>.</p> </li> <li> 688 * <p>Custom resources are not supported with a resource type. This parameter must 689 * specify the <code>OutputValue</code> from the CloudFormation template stack used 690 * to access the resources. The unique identifier is defined by the service 691 * provider. More information is available in our <a 692 * href="https://github.com/aws/aws-auto-scaling-custom-resource">GitHub 693 * repository</a>.</p> </li> <li> <p>Amazon Comprehend document classification 694 * endpoint - The resource type and unique identifier are specified using the 695 * endpoint ARN. Example: 696 * <code>arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE</code>.</p> 697 * </li> <li> <p>Amazon Comprehend entity recognizer endpoint - The resource type 698 * and unique identifier are specified using the endpoint ARN. Example: 699 * <code>arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE</code>.</p> 700 * </li> <li> <p>Lambda provisioned concurrency - The resource type is 701 * <code>function</code> and the unique identifier is the function name with a 702 * function version or alias name suffix that is not <code>$LATEST</code>. Example: 703 * <code>function:my-function:prod</code> or 704 * <code>function:my-function:1</code>.</p> </li> <li> <p>Amazon Keyspaces table - 705 * The resource type is <code>table</code> and the unique identifier is the table 706 * name. Example: <code>keyspace/mykeyspace/table/mytable</code>.</p> </li> <li> 707 * <p>Amazon MSK cluster - The resource type and unique identifier are specified 708 * using the cluster ARN. Example: 709 * <code>arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5</code>.</p> 710 * </li> <li> <p>Amazon ElastiCache replication group - The resource type is 711 * <code>replication-group</code> and the unique identifier is the replication 712 * group name. Example: <code>replication-group/mycluster</code>.</p> </li> <li> 713 * <p>Neptune cluster - The resource type is <code>cluster</code> and the unique 714 * identifier is the cluster name. Example: <code>cluster:mycluster</code>.</p> 715 * </li> </ul> 716 */ WithResourceId(const Aws::String & value)717 inline ScheduledAction& WithResourceId(const Aws::String& value) { SetResourceId(value); return *this;} 718 719 /** 720 * <p>The identifier of the resource associated with the scaling policy. This 721 * string consists of the resource type and unique identifier.</p> <ul> <li> <p>ECS 722 * service - The resource type is <code>service</code> and the unique identifier is 723 * the cluster name and service name. Example: 724 * <code>service/default/sample-webapp</code>.</p> </li> <li> <p>Spot Fleet - The 725 * resource type is <code>spot-fleet-request</code> and the unique identifier is 726 * the Spot Fleet request ID. Example: 727 * <code>spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE</code>.</p> 728 * </li> <li> <p>EMR cluster - The resource type is <code>instancegroup</code> and 729 * the unique identifier is the cluster ID and instance group ID. Example: 730 * <code>instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0</code>.</p> </li> <li> 731 * <p>AppStream 2.0 fleet - The resource type is <code>fleet</code> and the unique 732 * identifier is the fleet name. Example: <code>fleet/sample-fleet</code>.</p> 733 * </li> <li> <p>DynamoDB table - The resource type is <code>table</code> and the 734 * unique identifier is the table name. Example: <code>table/my-table</code>.</p> 735 * </li> <li> <p>DynamoDB global secondary index - The resource type is 736 * <code>index</code> and the unique identifier is the index name. Example: 737 * <code>table/my-table/index/my-table-index</code>.</p> </li> <li> <p>Aurora DB 738 * cluster - The resource type is <code>cluster</code> and the unique identifier is 739 * the cluster name. Example: <code>cluster:my-db-cluster</code>.</p> </li> <li> 740 * <p>SageMaker endpoint variant - The resource type is <code>variant</code> and 741 * the unique identifier is the resource ID. Example: 742 * <code>endpoint/my-end-point/variant/KMeansClustering</code>.</p> </li> <li> 743 * <p>Custom resources are not supported with a resource type. This parameter must 744 * specify the <code>OutputValue</code> from the CloudFormation template stack used 745 * to access the resources. The unique identifier is defined by the service 746 * provider. More information is available in our <a 747 * href="https://github.com/aws/aws-auto-scaling-custom-resource">GitHub 748 * repository</a>.</p> </li> <li> <p>Amazon Comprehend document classification 749 * endpoint - The resource type and unique identifier are specified using the 750 * endpoint ARN. Example: 751 * <code>arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE</code>.</p> 752 * </li> <li> <p>Amazon Comprehend entity recognizer endpoint - The resource type 753 * and unique identifier are specified using the endpoint ARN. Example: 754 * <code>arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE</code>.</p> 755 * </li> <li> <p>Lambda provisioned concurrency - The resource type is 756 * <code>function</code> and the unique identifier is the function name with a 757 * function version or alias name suffix that is not <code>$LATEST</code>. Example: 758 * <code>function:my-function:prod</code> or 759 * <code>function:my-function:1</code>.</p> </li> <li> <p>Amazon Keyspaces table - 760 * The resource type is <code>table</code> and the unique identifier is the table 761 * name. Example: <code>keyspace/mykeyspace/table/mytable</code>.</p> </li> <li> 762 * <p>Amazon MSK cluster - The resource type and unique identifier are specified 763 * using the cluster ARN. Example: 764 * <code>arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5</code>.</p> 765 * </li> <li> <p>Amazon ElastiCache replication group - The resource type is 766 * <code>replication-group</code> and the unique identifier is the replication 767 * group name. Example: <code>replication-group/mycluster</code>.</p> </li> <li> 768 * <p>Neptune cluster - The resource type is <code>cluster</code> and the unique 769 * identifier is the cluster name. Example: <code>cluster:mycluster</code>.</p> 770 * </li> </ul> 771 */ WithResourceId(Aws::String && value)772 inline ScheduledAction& WithResourceId(Aws::String&& value) { SetResourceId(std::move(value)); return *this;} 773 774 /** 775 * <p>The identifier of the resource associated with the scaling policy. This 776 * string consists of the resource type and unique identifier.</p> <ul> <li> <p>ECS 777 * service - The resource type is <code>service</code> and the unique identifier is 778 * the cluster name and service name. Example: 779 * <code>service/default/sample-webapp</code>.</p> </li> <li> <p>Spot Fleet - The 780 * resource type is <code>spot-fleet-request</code> and the unique identifier is 781 * the Spot Fleet request ID. Example: 782 * <code>spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE</code>.</p> 783 * </li> <li> <p>EMR cluster - The resource type is <code>instancegroup</code> and 784 * the unique identifier is the cluster ID and instance group ID. Example: 785 * <code>instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0</code>.</p> </li> <li> 786 * <p>AppStream 2.0 fleet - The resource type is <code>fleet</code> and the unique 787 * identifier is the fleet name. Example: <code>fleet/sample-fleet</code>.</p> 788 * </li> <li> <p>DynamoDB table - The resource type is <code>table</code> and the 789 * unique identifier is the table name. Example: <code>table/my-table</code>.</p> 790 * </li> <li> <p>DynamoDB global secondary index - The resource type is 791 * <code>index</code> and the unique identifier is the index name. Example: 792 * <code>table/my-table/index/my-table-index</code>.</p> </li> <li> <p>Aurora DB 793 * cluster - The resource type is <code>cluster</code> and the unique identifier is 794 * the cluster name. Example: <code>cluster:my-db-cluster</code>.</p> </li> <li> 795 * <p>SageMaker endpoint variant - The resource type is <code>variant</code> and 796 * the unique identifier is the resource ID. Example: 797 * <code>endpoint/my-end-point/variant/KMeansClustering</code>.</p> </li> <li> 798 * <p>Custom resources are not supported with a resource type. This parameter must 799 * specify the <code>OutputValue</code> from the CloudFormation template stack used 800 * to access the resources. The unique identifier is defined by the service 801 * provider. More information is available in our <a 802 * href="https://github.com/aws/aws-auto-scaling-custom-resource">GitHub 803 * repository</a>.</p> </li> <li> <p>Amazon Comprehend document classification 804 * endpoint - The resource type and unique identifier are specified using the 805 * endpoint ARN. Example: 806 * <code>arn:aws:comprehend:us-west-2:123456789012:document-classifier-endpoint/EXAMPLE</code>.</p> 807 * </li> <li> <p>Amazon Comprehend entity recognizer endpoint - The resource type 808 * and unique identifier are specified using the endpoint ARN. Example: 809 * <code>arn:aws:comprehend:us-west-2:123456789012:entity-recognizer-endpoint/EXAMPLE</code>.</p> 810 * </li> <li> <p>Lambda provisioned concurrency - The resource type is 811 * <code>function</code> and the unique identifier is the function name with a 812 * function version or alias name suffix that is not <code>$LATEST</code>. Example: 813 * <code>function:my-function:prod</code> or 814 * <code>function:my-function:1</code>.</p> </li> <li> <p>Amazon Keyspaces table - 815 * The resource type is <code>table</code> and the unique identifier is the table 816 * name. Example: <code>keyspace/mykeyspace/table/mytable</code>.</p> </li> <li> 817 * <p>Amazon MSK cluster - The resource type and unique identifier are specified 818 * using the cluster ARN. Example: 819 * <code>arn:aws:kafka:us-east-1:123456789012:cluster/demo-cluster-1/6357e0b2-0e6a-4b86-a0b4-70df934c2e31-5</code>.</p> 820 * </li> <li> <p>Amazon ElastiCache replication group - The resource type is 821 * <code>replication-group</code> and the unique identifier is the replication 822 * group name. Example: <code>replication-group/mycluster</code>.</p> </li> <li> 823 * <p>Neptune cluster - The resource type is <code>cluster</code> and the unique 824 * identifier is the cluster name. Example: <code>cluster:mycluster</code>.</p> 825 * </li> </ul> 826 */ WithResourceId(const char * value)827 inline ScheduledAction& WithResourceId(const char* value) { SetResourceId(value); return *this;} 828 829 830 /** 831 * <p>The scalable dimension. This string consists of the service namespace, 832 * resource type, and scaling property.</p> <ul> <li> <p> 833 * <code>ecs:service:DesiredCount</code> - The desired task count of an ECS 834 * service.</p> </li> <li> <p> 835 * <code>elasticmapreduce:instancegroup:InstanceCount</code> - The instance count 836 * of an EMR Instance Group.</p> </li> <li> <p> 837 * <code>ec2:spot-fleet-request:TargetCapacity</code> - The target capacity of a 838 * Spot Fleet.</p> </li> <li> <p> <code>appstream:fleet:DesiredCapacity</code> - 839 * The desired capacity of an AppStream 2.0 fleet.</p> </li> <li> <p> 840 * <code>dynamodb:table:ReadCapacityUnits</code> - The provisioned read capacity 841 * for a DynamoDB table.</p> </li> <li> <p> 842 * <code>dynamodb:table:WriteCapacityUnits</code> - The provisioned write capacity 843 * for a DynamoDB table.</p> </li> <li> <p> 844 * <code>dynamodb:index:ReadCapacityUnits</code> - The provisioned read capacity 845 * for a DynamoDB global secondary index.</p> </li> <li> <p> 846 * <code>dynamodb:index:WriteCapacityUnits</code> - The provisioned write capacity 847 * for a DynamoDB global secondary index.</p> </li> <li> <p> 848 * <code>rds:cluster:ReadReplicaCount</code> - The count of Aurora Replicas in an 849 * Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora 850 * PostgreSQL-compatible edition.</p> </li> <li> <p> 851 * <code>sagemaker:variant:DesiredInstanceCount</code> - The number of EC2 852 * instances for an SageMaker model endpoint variant.</p> </li> <li> <p> 853 * <code>custom-resource:ResourceType:Property</code> - The scalable dimension for 854 * a custom resource provided by your own application or service.</p> </li> <li> 855 * <p> <code>comprehend:document-classifier-endpoint:DesiredInferenceUnits</code> - 856 * The number of inference units for an Amazon Comprehend document classification 857 * endpoint.</p> </li> <li> <p> 858 * <code>comprehend:entity-recognizer-endpoint:DesiredInferenceUnits</code> - The 859 * number of inference units for an Amazon Comprehend entity recognizer 860 * endpoint.</p> </li> <li> <p> <code>lambda:function:ProvisionedConcurrency</code> 861 * - The provisioned concurrency for a Lambda function.</p> </li> <li> <p> 862 * <code>cassandra:table:ReadCapacityUnits</code> - The provisioned read capacity 863 * for an Amazon Keyspaces table.</p> </li> <li> <p> 864 * <code>cassandra:table:WriteCapacityUnits</code> - The provisioned write capacity 865 * for an Amazon Keyspaces table.</p> </li> <li> <p> 866 * <code>kafka:broker-storage:VolumeSize</code> - The provisioned volume size (in 867 * GiB) for brokers in an Amazon MSK cluster.</p> </li> <li> <p> 868 * <code>elasticache:replication-group:NodeGroups</code> - The number of node 869 * groups for an Amazon ElastiCache replication group.</p> </li> <li> <p> 870 * <code>elasticache:replication-group:Replicas</code> - The number of replicas per 871 * node group for an Amazon ElastiCache replication group.</p> </li> <li> <p> 872 * <code>neptune:cluster:ReadReplicaCount</code> - The count of read replicas in an 873 * Amazon Neptune DB cluster.</p> </li> </ul> 874 */ GetScalableDimension()875 inline const ScalableDimension& GetScalableDimension() const{ return m_scalableDimension; } 876 877 /** 878 * <p>The scalable dimension. This string consists of the service namespace, 879 * resource type, and scaling property.</p> <ul> <li> <p> 880 * <code>ecs:service:DesiredCount</code> - The desired task count of an ECS 881 * service.</p> </li> <li> <p> 882 * <code>elasticmapreduce:instancegroup:InstanceCount</code> - The instance count 883 * of an EMR Instance Group.</p> </li> <li> <p> 884 * <code>ec2:spot-fleet-request:TargetCapacity</code> - The target capacity of a 885 * Spot Fleet.</p> </li> <li> <p> <code>appstream:fleet:DesiredCapacity</code> - 886 * The desired capacity of an AppStream 2.0 fleet.</p> </li> <li> <p> 887 * <code>dynamodb:table:ReadCapacityUnits</code> - The provisioned read capacity 888 * for a DynamoDB table.</p> </li> <li> <p> 889 * <code>dynamodb:table:WriteCapacityUnits</code> - The provisioned write capacity 890 * for a DynamoDB table.</p> </li> <li> <p> 891 * <code>dynamodb:index:ReadCapacityUnits</code> - The provisioned read capacity 892 * for a DynamoDB global secondary index.</p> </li> <li> <p> 893 * <code>dynamodb:index:WriteCapacityUnits</code> - The provisioned write capacity 894 * for a DynamoDB global secondary index.</p> </li> <li> <p> 895 * <code>rds:cluster:ReadReplicaCount</code> - The count of Aurora Replicas in an 896 * Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora 897 * PostgreSQL-compatible edition.</p> </li> <li> <p> 898 * <code>sagemaker:variant:DesiredInstanceCount</code> - The number of EC2 899 * instances for an SageMaker model endpoint variant.</p> </li> <li> <p> 900 * <code>custom-resource:ResourceType:Property</code> - The scalable dimension for 901 * a custom resource provided by your own application or service.</p> </li> <li> 902 * <p> <code>comprehend:document-classifier-endpoint:DesiredInferenceUnits</code> - 903 * The number of inference units for an Amazon Comprehend document classification 904 * endpoint.</p> </li> <li> <p> 905 * <code>comprehend:entity-recognizer-endpoint:DesiredInferenceUnits</code> - The 906 * number of inference units for an Amazon Comprehend entity recognizer 907 * endpoint.</p> </li> <li> <p> <code>lambda:function:ProvisionedConcurrency</code> 908 * - The provisioned concurrency for a Lambda function.</p> </li> <li> <p> 909 * <code>cassandra:table:ReadCapacityUnits</code> - The provisioned read capacity 910 * for an Amazon Keyspaces table.</p> </li> <li> <p> 911 * <code>cassandra:table:WriteCapacityUnits</code> - The provisioned write capacity 912 * for an Amazon Keyspaces table.</p> </li> <li> <p> 913 * <code>kafka:broker-storage:VolumeSize</code> - The provisioned volume size (in 914 * GiB) for brokers in an Amazon MSK cluster.</p> </li> <li> <p> 915 * <code>elasticache:replication-group:NodeGroups</code> - The number of node 916 * groups for an Amazon ElastiCache replication group.</p> </li> <li> <p> 917 * <code>elasticache:replication-group:Replicas</code> - The number of replicas per 918 * node group for an Amazon ElastiCache replication group.</p> </li> <li> <p> 919 * <code>neptune:cluster:ReadReplicaCount</code> - The count of read replicas in an 920 * Amazon Neptune DB cluster.</p> </li> </ul> 921 */ ScalableDimensionHasBeenSet()922 inline bool ScalableDimensionHasBeenSet() const { return m_scalableDimensionHasBeenSet; } 923 924 /** 925 * <p>The scalable dimension. This string consists of the service namespace, 926 * resource type, and scaling property.</p> <ul> <li> <p> 927 * <code>ecs:service:DesiredCount</code> - The desired task count of an ECS 928 * service.</p> </li> <li> <p> 929 * <code>elasticmapreduce:instancegroup:InstanceCount</code> - The instance count 930 * of an EMR Instance Group.</p> </li> <li> <p> 931 * <code>ec2:spot-fleet-request:TargetCapacity</code> - The target capacity of a 932 * Spot Fleet.</p> </li> <li> <p> <code>appstream:fleet:DesiredCapacity</code> - 933 * The desired capacity of an AppStream 2.0 fleet.</p> </li> <li> <p> 934 * <code>dynamodb:table:ReadCapacityUnits</code> - The provisioned read capacity 935 * for a DynamoDB table.</p> </li> <li> <p> 936 * <code>dynamodb:table:WriteCapacityUnits</code> - The provisioned write capacity 937 * for a DynamoDB table.</p> </li> <li> <p> 938 * <code>dynamodb:index:ReadCapacityUnits</code> - The provisioned read capacity 939 * for a DynamoDB global secondary index.</p> </li> <li> <p> 940 * <code>dynamodb:index:WriteCapacityUnits</code> - The provisioned write capacity 941 * for a DynamoDB global secondary index.</p> </li> <li> <p> 942 * <code>rds:cluster:ReadReplicaCount</code> - The count of Aurora Replicas in an 943 * Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora 944 * PostgreSQL-compatible edition.</p> </li> <li> <p> 945 * <code>sagemaker:variant:DesiredInstanceCount</code> - The number of EC2 946 * instances for an SageMaker model endpoint variant.</p> </li> <li> <p> 947 * <code>custom-resource:ResourceType:Property</code> - The scalable dimension for 948 * a custom resource provided by your own application or service.</p> </li> <li> 949 * <p> <code>comprehend:document-classifier-endpoint:DesiredInferenceUnits</code> - 950 * The number of inference units for an Amazon Comprehend document classification 951 * endpoint.</p> </li> <li> <p> 952 * <code>comprehend:entity-recognizer-endpoint:DesiredInferenceUnits</code> - The 953 * number of inference units for an Amazon Comprehend entity recognizer 954 * endpoint.</p> </li> <li> <p> <code>lambda:function:ProvisionedConcurrency</code> 955 * - The provisioned concurrency for a Lambda function.</p> </li> <li> <p> 956 * <code>cassandra:table:ReadCapacityUnits</code> - The provisioned read capacity 957 * for an Amazon Keyspaces table.</p> </li> <li> <p> 958 * <code>cassandra:table:WriteCapacityUnits</code> - The provisioned write capacity 959 * for an Amazon Keyspaces table.</p> </li> <li> <p> 960 * <code>kafka:broker-storage:VolumeSize</code> - The provisioned volume size (in 961 * GiB) for brokers in an Amazon MSK cluster.</p> </li> <li> <p> 962 * <code>elasticache:replication-group:NodeGroups</code> - The number of node 963 * groups for an Amazon ElastiCache replication group.</p> </li> <li> <p> 964 * <code>elasticache:replication-group:Replicas</code> - The number of replicas per 965 * node group for an Amazon ElastiCache replication group.</p> </li> <li> <p> 966 * <code>neptune:cluster:ReadReplicaCount</code> - The count of read replicas in an 967 * Amazon Neptune DB cluster.</p> </li> </ul> 968 */ SetScalableDimension(const ScalableDimension & value)969 inline void SetScalableDimension(const ScalableDimension& value) { m_scalableDimensionHasBeenSet = true; m_scalableDimension = value; } 970 971 /** 972 * <p>The scalable dimension. This string consists of the service namespace, 973 * resource type, and scaling property.</p> <ul> <li> <p> 974 * <code>ecs:service:DesiredCount</code> - The desired task count of an ECS 975 * service.</p> </li> <li> <p> 976 * <code>elasticmapreduce:instancegroup:InstanceCount</code> - The instance count 977 * of an EMR Instance Group.</p> </li> <li> <p> 978 * <code>ec2:spot-fleet-request:TargetCapacity</code> - The target capacity of a 979 * Spot Fleet.</p> </li> <li> <p> <code>appstream:fleet:DesiredCapacity</code> - 980 * The desired capacity of an AppStream 2.0 fleet.</p> </li> <li> <p> 981 * <code>dynamodb:table:ReadCapacityUnits</code> - The provisioned read capacity 982 * for a DynamoDB table.</p> </li> <li> <p> 983 * <code>dynamodb:table:WriteCapacityUnits</code> - The provisioned write capacity 984 * for a DynamoDB table.</p> </li> <li> <p> 985 * <code>dynamodb:index:ReadCapacityUnits</code> - The provisioned read capacity 986 * for a DynamoDB global secondary index.</p> </li> <li> <p> 987 * <code>dynamodb:index:WriteCapacityUnits</code> - The provisioned write capacity 988 * for a DynamoDB global secondary index.</p> </li> <li> <p> 989 * <code>rds:cluster:ReadReplicaCount</code> - The count of Aurora Replicas in an 990 * Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora 991 * PostgreSQL-compatible edition.</p> </li> <li> <p> 992 * <code>sagemaker:variant:DesiredInstanceCount</code> - The number of EC2 993 * instances for an SageMaker model endpoint variant.</p> </li> <li> <p> 994 * <code>custom-resource:ResourceType:Property</code> - The scalable dimension for 995 * a custom resource provided by your own application or service.</p> </li> <li> 996 * <p> <code>comprehend:document-classifier-endpoint:DesiredInferenceUnits</code> - 997 * The number of inference units for an Amazon Comprehend document classification 998 * endpoint.</p> </li> <li> <p> 999 * <code>comprehend:entity-recognizer-endpoint:DesiredInferenceUnits</code> - The 1000 * number of inference units for an Amazon Comprehend entity recognizer 1001 * endpoint.</p> </li> <li> <p> <code>lambda:function:ProvisionedConcurrency</code> 1002 * - The provisioned concurrency for a Lambda function.</p> </li> <li> <p> 1003 * <code>cassandra:table:ReadCapacityUnits</code> - The provisioned read capacity 1004 * for an Amazon Keyspaces table.</p> </li> <li> <p> 1005 * <code>cassandra:table:WriteCapacityUnits</code> - The provisioned write capacity 1006 * for an Amazon Keyspaces table.</p> </li> <li> <p> 1007 * <code>kafka:broker-storage:VolumeSize</code> - The provisioned volume size (in 1008 * GiB) for brokers in an Amazon MSK cluster.</p> </li> <li> <p> 1009 * <code>elasticache:replication-group:NodeGroups</code> - The number of node 1010 * groups for an Amazon ElastiCache replication group.</p> </li> <li> <p> 1011 * <code>elasticache:replication-group:Replicas</code> - The number of replicas per 1012 * node group for an Amazon ElastiCache replication group.</p> </li> <li> <p> 1013 * <code>neptune:cluster:ReadReplicaCount</code> - The count of read replicas in an 1014 * Amazon Neptune DB cluster.</p> </li> </ul> 1015 */ SetScalableDimension(ScalableDimension && value)1016 inline void SetScalableDimension(ScalableDimension&& value) { m_scalableDimensionHasBeenSet = true; m_scalableDimension = std::move(value); } 1017 1018 /** 1019 * <p>The scalable dimension. This string consists of the service namespace, 1020 * resource type, and scaling property.</p> <ul> <li> <p> 1021 * <code>ecs:service:DesiredCount</code> - The desired task count of an ECS 1022 * service.</p> </li> <li> <p> 1023 * <code>elasticmapreduce:instancegroup:InstanceCount</code> - The instance count 1024 * of an EMR Instance Group.</p> </li> <li> <p> 1025 * <code>ec2:spot-fleet-request:TargetCapacity</code> - The target capacity of a 1026 * Spot Fleet.</p> </li> <li> <p> <code>appstream:fleet:DesiredCapacity</code> - 1027 * The desired capacity of an AppStream 2.0 fleet.</p> </li> <li> <p> 1028 * <code>dynamodb:table:ReadCapacityUnits</code> - The provisioned read capacity 1029 * for a DynamoDB table.</p> </li> <li> <p> 1030 * <code>dynamodb:table:WriteCapacityUnits</code> - The provisioned write capacity 1031 * for a DynamoDB table.</p> </li> <li> <p> 1032 * <code>dynamodb:index:ReadCapacityUnits</code> - The provisioned read capacity 1033 * for a DynamoDB global secondary index.</p> </li> <li> <p> 1034 * <code>dynamodb:index:WriteCapacityUnits</code> - The provisioned write capacity 1035 * for a DynamoDB global secondary index.</p> </li> <li> <p> 1036 * <code>rds:cluster:ReadReplicaCount</code> - The count of Aurora Replicas in an 1037 * Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora 1038 * PostgreSQL-compatible edition.</p> </li> <li> <p> 1039 * <code>sagemaker:variant:DesiredInstanceCount</code> - The number of EC2 1040 * instances for an SageMaker model endpoint variant.</p> </li> <li> <p> 1041 * <code>custom-resource:ResourceType:Property</code> - The scalable dimension for 1042 * a custom resource provided by your own application or service.</p> </li> <li> 1043 * <p> <code>comprehend:document-classifier-endpoint:DesiredInferenceUnits</code> - 1044 * The number of inference units for an Amazon Comprehend document classification 1045 * endpoint.</p> </li> <li> <p> 1046 * <code>comprehend:entity-recognizer-endpoint:DesiredInferenceUnits</code> - The 1047 * number of inference units for an Amazon Comprehend entity recognizer 1048 * endpoint.</p> </li> <li> <p> <code>lambda:function:ProvisionedConcurrency</code> 1049 * - The provisioned concurrency for a Lambda function.</p> </li> <li> <p> 1050 * <code>cassandra:table:ReadCapacityUnits</code> - The provisioned read capacity 1051 * for an Amazon Keyspaces table.</p> </li> <li> <p> 1052 * <code>cassandra:table:WriteCapacityUnits</code> - The provisioned write capacity 1053 * for an Amazon Keyspaces table.</p> </li> <li> <p> 1054 * <code>kafka:broker-storage:VolumeSize</code> - The provisioned volume size (in 1055 * GiB) for brokers in an Amazon MSK cluster.</p> </li> <li> <p> 1056 * <code>elasticache:replication-group:NodeGroups</code> - The number of node 1057 * groups for an Amazon ElastiCache replication group.</p> </li> <li> <p> 1058 * <code>elasticache:replication-group:Replicas</code> - The number of replicas per 1059 * node group for an Amazon ElastiCache replication group.</p> </li> <li> <p> 1060 * <code>neptune:cluster:ReadReplicaCount</code> - The count of read replicas in an 1061 * Amazon Neptune DB cluster.</p> </li> </ul> 1062 */ WithScalableDimension(const ScalableDimension & value)1063 inline ScheduledAction& WithScalableDimension(const ScalableDimension& value) { SetScalableDimension(value); return *this;} 1064 1065 /** 1066 * <p>The scalable dimension. This string consists of the service namespace, 1067 * resource type, and scaling property.</p> <ul> <li> <p> 1068 * <code>ecs:service:DesiredCount</code> - The desired task count of an ECS 1069 * service.</p> </li> <li> <p> 1070 * <code>elasticmapreduce:instancegroup:InstanceCount</code> - The instance count 1071 * of an EMR Instance Group.</p> </li> <li> <p> 1072 * <code>ec2:spot-fleet-request:TargetCapacity</code> - The target capacity of a 1073 * Spot Fleet.</p> </li> <li> <p> <code>appstream:fleet:DesiredCapacity</code> - 1074 * The desired capacity of an AppStream 2.0 fleet.</p> </li> <li> <p> 1075 * <code>dynamodb:table:ReadCapacityUnits</code> - The provisioned read capacity 1076 * for a DynamoDB table.</p> </li> <li> <p> 1077 * <code>dynamodb:table:WriteCapacityUnits</code> - The provisioned write capacity 1078 * for a DynamoDB table.</p> </li> <li> <p> 1079 * <code>dynamodb:index:ReadCapacityUnits</code> - The provisioned read capacity 1080 * for a DynamoDB global secondary index.</p> </li> <li> <p> 1081 * <code>dynamodb:index:WriteCapacityUnits</code> - The provisioned write capacity 1082 * for a DynamoDB global secondary index.</p> </li> <li> <p> 1083 * <code>rds:cluster:ReadReplicaCount</code> - The count of Aurora Replicas in an 1084 * Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora 1085 * PostgreSQL-compatible edition.</p> </li> <li> <p> 1086 * <code>sagemaker:variant:DesiredInstanceCount</code> - The number of EC2 1087 * instances for an SageMaker model endpoint variant.</p> </li> <li> <p> 1088 * <code>custom-resource:ResourceType:Property</code> - The scalable dimension for 1089 * a custom resource provided by your own application or service.</p> </li> <li> 1090 * <p> <code>comprehend:document-classifier-endpoint:DesiredInferenceUnits</code> - 1091 * The number of inference units for an Amazon Comprehend document classification 1092 * endpoint.</p> </li> <li> <p> 1093 * <code>comprehend:entity-recognizer-endpoint:DesiredInferenceUnits</code> - The 1094 * number of inference units for an Amazon Comprehend entity recognizer 1095 * endpoint.</p> </li> <li> <p> <code>lambda:function:ProvisionedConcurrency</code> 1096 * - The provisioned concurrency for a Lambda function.</p> </li> <li> <p> 1097 * <code>cassandra:table:ReadCapacityUnits</code> - The provisioned read capacity 1098 * for an Amazon Keyspaces table.</p> </li> <li> <p> 1099 * <code>cassandra:table:WriteCapacityUnits</code> - The provisioned write capacity 1100 * for an Amazon Keyspaces table.</p> </li> <li> <p> 1101 * <code>kafka:broker-storage:VolumeSize</code> - The provisioned volume size (in 1102 * GiB) for brokers in an Amazon MSK cluster.</p> </li> <li> <p> 1103 * <code>elasticache:replication-group:NodeGroups</code> - The number of node 1104 * groups for an Amazon ElastiCache replication group.</p> </li> <li> <p> 1105 * <code>elasticache:replication-group:Replicas</code> - The number of replicas per 1106 * node group for an Amazon ElastiCache replication group.</p> </li> <li> <p> 1107 * <code>neptune:cluster:ReadReplicaCount</code> - The count of read replicas in an 1108 * Amazon Neptune DB cluster.</p> </li> </ul> 1109 */ WithScalableDimension(ScalableDimension && value)1110 inline ScheduledAction& WithScalableDimension(ScalableDimension&& value) { SetScalableDimension(std::move(value)); return *this;} 1111 1112 1113 /** 1114 * <p>The date and time that the action is scheduled to begin, in UTC.</p> 1115 */ GetStartTime()1116 inline const Aws::Utils::DateTime& GetStartTime() const{ return m_startTime; } 1117 1118 /** 1119 * <p>The date and time that the action is scheduled to begin, in UTC.</p> 1120 */ StartTimeHasBeenSet()1121 inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; } 1122 1123 /** 1124 * <p>The date and time that the action is scheduled to begin, in UTC.</p> 1125 */ SetStartTime(const Aws::Utils::DateTime & value)1126 inline void SetStartTime(const Aws::Utils::DateTime& value) { m_startTimeHasBeenSet = true; m_startTime = value; } 1127 1128 /** 1129 * <p>The date and time that the action is scheduled to begin, in UTC.</p> 1130 */ SetStartTime(Aws::Utils::DateTime && value)1131 inline void SetStartTime(Aws::Utils::DateTime&& value) { m_startTimeHasBeenSet = true; m_startTime = std::move(value); } 1132 1133 /** 1134 * <p>The date and time that the action is scheduled to begin, in UTC.</p> 1135 */ WithStartTime(const Aws::Utils::DateTime & value)1136 inline ScheduledAction& WithStartTime(const Aws::Utils::DateTime& value) { SetStartTime(value); return *this;} 1137 1138 /** 1139 * <p>The date and time that the action is scheduled to begin, in UTC.</p> 1140 */ WithStartTime(Aws::Utils::DateTime && value)1141 inline ScheduledAction& WithStartTime(Aws::Utils::DateTime&& value) { SetStartTime(std::move(value)); return *this;} 1142 1143 1144 /** 1145 * <p>The date and time that the action is scheduled to end, in UTC.</p> 1146 */ GetEndTime()1147 inline const Aws::Utils::DateTime& GetEndTime() const{ return m_endTime; } 1148 1149 /** 1150 * <p>The date and time that the action is scheduled to end, in UTC.</p> 1151 */ EndTimeHasBeenSet()1152 inline bool EndTimeHasBeenSet() const { return m_endTimeHasBeenSet; } 1153 1154 /** 1155 * <p>The date and time that the action is scheduled to end, in UTC.</p> 1156 */ SetEndTime(const Aws::Utils::DateTime & value)1157 inline void SetEndTime(const Aws::Utils::DateTime& value) { m_endTimeHasBeenSet = true; m_endTime = value; } 1158 1159 /** 1160 * <p>The date and time that the action is scheduled to end, in UTC.</p> 1161 */ SetEndTime(Aws::Utils::DateTime && value)1162 inline void SetEndTime(Aws::Utils::DateTime&& value) { m_endTimeHasBeenSet = true; m_endTime = std::move(value); } 1163 1164 /** 1165 * <p>The date and time that the action is scheduled to end, in UTC.</p> 1166 */ WithEndTime(const Aws::Utils::DateTime & value)1167 inline ScheduledAction& WithEndTime(const Aws::Utils::DateTime& value) { SetEndTime(value); return *this;} 1168 1169 /** 1170 * <p>The date and time that the action is scheduled to end, in UTC.</p> 1171 */ WithEndTime(Aws::Utils::DateTime && value)1172 inline ScheduledAction& WithEndTime(Aws::Utils::DateTime&& value) { SetEndTime(std::move(value)); return *this;} 1173 1174 1175 /** 1176 * <p>The new minimum and maximum capacity. You can set both values or just one. At 1177 * the scheduled time, if the current capacity is below the minimum capacity, 1178 * Application Auto Scaling scales out to the minimum capacity. If the current 1179 * capacity is above the maximum capacity, Application Auto Scaling scales in to 1180 * the maximum capacity.</p> 1181 */ GetScalableTargetAction()1182 inline const ScalableTargetAction& GetScalableTargetAction() const{ return m_scalableTargetAction; } 1183 1184 /** 1185 * <p>The new minimum and maximum capacity. You can set both values or just one. At 1186 * the scheduled time, if the current capacity is below the minimum capacity, 1187 * Application Auto Scaling scales out to the minimum capacity. If the current 1188 * capacity is above the maximum capacity, Application Auto Scaling scales in to 1189 * the maximum capacity.</p> 1190 */ ScalableTargetActionHasBeenSet()1191 inline bool ScalableTargetActionHasBeenSet() const { return m_scalableTargetActionHasBeenSet; } 1192 1193 /** 1194 * <p>The new minimum and maximum capacity. You can set both values or just one. At 1195 * the scheduled time, if the current capacity is below the minimum capacity, 1196 * Application Auto Scaling scales out to the minimum capacity. If the current 1197 * capacity is above the maximum capacity, Application Auto Scaling scales in to 1198 * the maximum capacity.</p> 1199 */ SetScalableTargetAction(const ScalableTargetAction & value)1200 inline void SetScalableTargetAction(const ScalableTargetAction& value) { m_scalableTargetActionHasBeenSet = true; m_scalableTargetAction = value; } 1201 1202 /** 1203 * <p>The new minimum and maximum capacity. You can set both values or just one. At 1204 * the scheduled time, if the current capacity is below the minimum capacity, 1205 * Application Auto Scaling scales out to the minimum capacity. If the current 1206 * capacity is above the maximum capacity, Application Auto Scaling scales in to 1207 * the maximum capacity.</p> 1208 */ SetScalableTargetAction(ScalableTargetAction && value)1209 inline void SetScalableTargetAction(ScalableTargetAction&& value) { m_scalableTargetActionHasBeenSet = true; m_scalableTargetAction = std::move(value); } 1210 1211 /** 1212 * <p>The new minimum and maximum capacity. You can set both values or just one. At 1213 * the scheduled time, if the current capacity is below the minimum capacity, 1214 * Application Auto Scaling scales out to the minimum capacity. If the current 1215 * capacity is above the maximum capacity, Application Auto Scaling scales in to 1216 * the maximum capacity.</p> 1217 */ WithScalableTargetAction(const ScalableTargetAction & value)1218 inline ScheduledAction& WithScalableTargetAction(const ScalableTargetAction& value) { SetScalableTargetAction(value); return *this;} 1219 1220 /** 1221 * <p>The new minimum and maximum capacity. You can set both values or just one. At 1222 * the scheduled time, if the current capacity is below the minimum capacity, 1223 * Application Auto Scaling scales out to the minimum capacity. If the current 1224 * capacity is above the maximum capacity, Application Auto Scaling scales in to 1225 * the maximum capacity.</p> 1226 */ WithScalableTargetAction(ScalableTargetAction && value)1227 inline ScheduledAction& WithScalableTargetAction(ScalableTargetAction&& value) { SetScalableTargetAction(std::move(value)); return *this;} 1228 1229 1230 /** 1231 * <p>The date and time that the scheduled action was created.</p> 1232 */ GetCreationTime()1233 inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } 1234 1235 /** 1236 * <p>The date and time that the scheduled action was created.</p> 1237 */ CreationTimeHasBeenSet()1238 inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } 1239 1240 /** 1241 * <p>The date and time that the scheduled action was created.</p> 1242 */ SetCreationTime(const Aws::Utils::DateTime & value)1243 inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; } 1244 1245 /** 1246 * <p>The date and time that the scheduled action was created.</p> 1247 */ SetCreationTime(Aws::Utils::DateTime && value)1248 inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); } 1249 1250 /** 1251 * <p>The date and time that the scheduled action was created.</p> 1252 */ WithCreationTime(const Aws::Utils::DateTime & value)1253 inline ScheduledAction& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} 1254 1255 /** 1256 * <p>The date and time that the scheduled action was created.</p> 1257 */ WithCreationTime(Aws::Utils::DateTime && value)1258 inline ScheduledAction& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} 1259 1260 private: 1261 1262 Aws::String m_scheduledActionName; 1263 bool m_scheduledActionNameHasBeenSet; 1264 1265 Aws::String m_scheduledActionARN; 1266 bool m_scheduledActionARNHasBeenSet; 1267 1268 ServiceNamespace m_serviceNamespace; 1269 bool m_serviceNamespaceHasBeenSet; 1270 1271 Aws::String m_schedule; 1272 bool m_scheduleHasBeenSet; 1273 1274 Aws::String m_timezone; 1275 bool m_timezoneHasBeenSet; 1276 1277 Aws::String m_resourceId; 1278 bool m_resourceIdHasBeenSet; 1279 1280 ScalableDimension m_scalableDimension; 1281 bool m_scalableDimensionHasBeenSet; 1282 1283 Aws::Utils::DateTime m_startTime; 1284 bool m_startTimeHasBeenSet; 1285 1286 Aws::Utils::DateTime m_endTime; 1287 bool m_endTimeHasBeenSet; 1288 1289 ScalableTargetAction m_scalableTargetAction; 1290 bool m_scalableTargetActionHasBeenSet; 1291 1292 Aws::Utils::DateTime m_creationTime; 1293 bool m_creationTimeHasBeenSet; 1294 }; 1295 1296 } // namespace Model 1297 } // namespace ApplicationAutoScaling 1298 } // namespace Aws 1299