AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
CreateAutoScalingGroupRequest.h
1
6#pragma once
7#include <aws/autoscaling/AutoScaling_EXPORTS.h>
8#include <aws/autoscaling/AutoScalingRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/autoscaling/model/LaunchTemplateSpecification.h>
11#include <aws/autoscaling/model/MixedInstancesPolicy.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/autoscaling/model/InstanceMaintenancePolicy.h>
14#include <aws/autoscaling/model/LifecycleHookSpecification.h>
15#include <aws/autoscaling/model/Tag.h>
16#include <aws/autoscaling/model/TrafficSourceIdentifier.h>
17#include <utility>
18
19namespace Aws
20{
21namespace AutoScaling
22{
23namespace Model
24{
25
29 {
30 public:
31 AWS_AUTOSCALING_API CreateAutoScalingGroupRequest();
32
33 // Service request name is the Operation name which will send this request out,
34 // each operation should has unique request name, so that we can get operation's name from this request.
35 // Note: this is not true for response, multiple operations may have the same response name,
36 // so we can not get operation's name from response.
37 inline virtual const char* GetServiceRequestName() const override { return "CreateAutoScalingGroup"; }
38
39 AWS_AUTOSCALING_API Aws::String SerializePayload() const override;
40
41 protected:
42 AWS_AUTOSCALING_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
43
44 public:
45
47
53 inline const Aws::String& GetAutoScalingGroupName() const{ return m_autoScalingGroupName; }
54 inline bool AutoScalingGroupNameHasBeenSet() const { return m_autoScalingGroupNameHasBeenSet; }
55 inline void SetAutoScalingGroupName(const Aws::String& value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName = value; }
56 inline void SetAutoScalingGroupName(Aws::String&& value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName = std::move(value); }
57 inline void SetAutoScalingGroupName(const char* value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName.assign(value); }
60 inline CreateAutoScalingGroupRequest& WithAutoScalingGroupName(const char* value) { SetAutoScalingGroupName(value); return *this;}
62
64
71 inline const Aws::String& GetLaunchConfigurationName() const{ return m_launchConfigurationName; }
72 inline bool LaunchConfigurationNameHasBeenSet() const { return m_launchConfigurationNameHasBeenSet; }
73 inline void SetLaunchConfigurationName(const Aws::String& value) { m_launchConfigurationNameHasBeenSet = true; m_launchConfigurationName = value; }
74 inline void SetLaunchConfigurationName(Aws::String&& value) { m_launchConfigurationNameHasBeenSet = true; m_launchConfigurationName = std::move(value); }
75 inline void SetLaunchConfigurationName(const char* value) { m_launchConfigurationNameHasBeenSet = true; m_launchConfigurationName.assign(value); }
80
82
94 inline const LaunchTemplateSpecification& GetLaunchTemplate() const{ return m_launchTemplate; }
95 inline bool LaunchTemplateHasBeenSet() const { return m_launchTemplateHasBeenSet; }
96 inline void SetLaunchTemplate(const LaunchTemplateSpecification& value) { m_launchTemplateHasBeenSet = true; m_launchTemplate = value; }
97 inline void SetLaunchTemplate(LaunchTemplateSpecification&& value) { m_launchTemplateHasBeenSet = true; m_launchTemplate = std::move(value); }
101
103
109 inline const MixedInstancesPolicy& GetMixedInstancesPolicy() const{ return m_mixedInstancesPolicy; }
110 inline bool MixedInstancesPolicyHasBeenSet() const { return m_mixedInstancesPolicyHasBeenSet; }
111 inline void SetMixedInstancesPolicy(const MixedInstancesPolicy& value) { m_mixedInstancesPolicyHasBeenSet = true; m_mixedInstancesPolicy = value; }
112 inline void SetMixedInstancesPolicy(MixedInstancesPolicy&& value) { m_mixedInstancesPolicyHasBeenSet = true; m_mixedInstancesPolicy = std::move(value); }
116
118
129 inline const Aws::String& GetInstanceId() const{ return m_instanceId; }
130 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
131 inline void SetInstanceId(const Aws::String& value) { m_instanceIdHasBeenSet = true; m_instanceId = value; }
132 inline void SetInstanceId(Aws::String&& value) { m_instanceIdHasBeenSet = true; m_instanceId = std::move(value); }
133 inline void SetInstanceId(const char* value) { m_instanceIdHasBeenSet = true; m_instanceId.assign(value); }
134 inline CreateAutoScalingGroupRequest& WithInstanceId(const Aws::String& value) { SetInstanceId(value); return *this;}
135 inline CreateAutoScalingGroupRequest& WithInstanceId(Aws::String&& value) { SetInstanceId(std::move(value)); return *this;}
136 inline CreateAutoScalingGroupRequest& WithInstanceId(const char* value) { SetInstanceId(value); return *this;}
138
140
143 inline int GetMinSize() const{ return m_minSize; }
144 inline bool MinSizeHasBeenSet() const { return m_minSizeHasBeenSet; }
145 inline void SetMinSize(int value) { m_minSizeHasBeenSet = true; m_minSize = value; }
146 inline CreateAutoScalingGroupRequest& WithMinSize(int value) { SetMinSize(value); return *this;}
148
150
158 inline int GetMaxSize() const{ return m_maxSize; }
159 inline bool MaxSizeHasBeenSet() const { return m_maxSizeHasBeenSet; }
160 inline void SetMaxSize(int value) { m_maxSizeHasBeenSet = true; m_maxSize = value; }
161 inline CreateAutoScalingGroupRequest& WithMaxSize(int value) { SetMaxSize(value); return *this;}
163
165
173 inline int GetDesiredCapacity() const{ return m_desiredCapacity; }
174 inline bool DesiredCapacityHasBeenSet() const { return m_desiredCapacityHasBeenSet; }
175 inline void SetDesiredCapacity(int value) { m_desiredCapacityHasBeenSet = true; m_desiredCapacity = value; }
176 inline CreateAutoScalingGroupRequest& WithDesiredCapacity(int value) { SetDesiredCapacity(value); return *this;}
178
180
188 inline int GetDefaultCooldown() const{ return m_defaultCooldown; }
189 inline bool DefaultCooldownHasBeenSet() const { return m_defaultCooldownHasBeenSet; }
190 inline void SetDefaultCooldown(int value) { m_defaultCooldownHasBeenSet = true; m_defaultCooldown = value; }
191 inline CreateAutoScalingGroupRequest& WithDefaultCooldown(int value) { SetDefaultCooldown(value); return *this;}
193
195
202 inline const Aws::Vector<Aws::String>& GetAvailabilityZones() const{ return m_availabilityZones; }
203 inline bool AvailabilityZonesHasBeenSet() const { return m_availabilityZonesHasBeenSet; }
204 inline void SetAvailabilityZones(const Aws::Vector<Aws::String>& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones = value; }
205 inline void SetAvailabilityZones(Aws::Vector<Aws::String>&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones = std::move(value); }
208 inline CreateAutoScalingGroupRequest& AddAvailabilityZones(const Aws::String& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(value); return *this; }
209 inline CreateAutoScalingGroupRequest& AddAvailabilityZones(Aws::String&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(std::move(value)); return *this; }
210 inline CreateAutoScalingGroupRequest& AddAvailabilityZones(const char* value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(value); return *this; }
212
214
219 inline const Aws::Vector<Aws::String>& GetLoadBalancerNames() const{ return m_loadBalancerNames; }
220 inline bool LoadBalancerNamesHasBeenSet() const { return m_loadBalancerNamesHasBeenSet; }
221 inline void SetLoadBalancerNames(const Aws::Vector<Aws::String>& value) { m_loadBalancerNamesHasBeenSet = true; m_loadBalancerNames = value; }
222 inline void SetLoadBalancerNames(Aws::Vector<Aws::String>&& value) { m_loadBalancerNamesHasBeenSet = true; m_loadBalancerNames = std::move(value); }
225 inline CreateAutoScalingGroupRequest& AddLoadBalancerNames(const Aws::String& value) { m_loadBalancerNamesHasBeenSet = true; m_loadBalancerNames.push_back(value); return *this; }
226 inline CreateAutoScalingGroupRequest& AddLoadBalancerNames(Aws::String&& value) { m_loadBalancerNamesHasBeenSet = true; m_loadBalancerNames.push_back(std::move(value)); return *this; }
227 inline CreateAutoScalingGroupRequest& AddLoadBalancerNames(const char* value) { m_loadBalancerNamesHasBeenSet = true; m_loadBalancerNames.push_back(value); return *this; }
229
231
240 inline const Aws::Vector<Aws::String>& GetTargetGroupARNs() const{ return m_targetGroupARNs; }
241 inline bool TargetGroupARNsHasBeenSet() const { return m_targetGroupARNsHasBeenSet; }
242 inline void SetTargetGroupARNs(const Aws::Vector<Aws::String>& value) { m_targetGroupARNsHasBeenSet = true; m_targetGroupARNs = value; }
243 inline void SetTargetGroupARNs(Aws::Vector<Aws::String>&& value) { m_targetGroupARNsHasBeenSet = true; m_targetGroupARNs = std::move(value); }
246 inline CreateAutoScalingGroupRequest& AddTargetGroupARNs(const Aws::String& value) { m_targetGroupARNsHasBeenSet = true; m_targetGroupARNs.push_back(value); return *this; }
247 inline CreateAutoScalingGroupRequest& AddTargetGroupARNs(Aws::String&& value) { m_targetGroupARNsHasBeenSet = true; m_targetGroupARNs.push_back(std::move(value)); return *this; }
248 inline CreateAutoScalingGroupRequest& AddTargetGroupARNs(const char* value) { m_targetGroupARNsHasBeenSet = true; m_targetGroupARNs.push_back(value); return *this; }
250
252
262 inline const Aws::String& GetHealthCheckType() const{ return m_healthCheckType; }
263 inline bool HealthCheckTypeHasBeenSet() const { return m_healthCheckTypeHasBeenSet; }
264 inline void SetHealthCheckType(const Aws::String& value) { m_healthCheckTypeHasBeenSet = true; m_healthCheckType = value; }
265 inline void SetHealthCheckType(Aws::String&& value) { m_healthCheckTypeHasBeenSet = true; m_healthCheckType = std::move(value); }
266 inline void SetHealthCheckType(const char* value) { m_healthCheckTypeHasBeenSet = true; m_healthCheckType.assign(value); }
268 inline CreateAutoScalingGroupRequest& WithHealthCheckType(Aws::String&& value) { SetHealthCheckType(std::move(value)); return *this;}
269 inline CreateAutoScalingGroupRequest& WithHealthCheckType(const char* value) { SetHealthCheckType(value); return *this;}
271
273
283 inline int GetHealthCheckGracePeriod() const{ return m_healthCheckGracePeriod; }
284 inline bool HealthCheckGracePeriodHasBeenSet() const { return m_healthCheckGracePeriodHasBeenSet; }
285 inline void SetHealthCheckGracePeriod(int value) { m_healthCheckGracePeriodHasBeenSet = true; m_healthCheckGracePeriod = value; }
288
290
299 inline const Aws::String& GetPlacementGroup() const{ return m_placementGroup; }
300 inline bool PlacementGroupHasBeenSet() const { return m_placementGroupHasBeenSet; }
301 inline void SetPlacementGroup(const Aws::String& value) { m_placementGroupHasBeenSet = true; m_placementGroup = value; }
302 inline void SetPlacementGroup(Aws::String&& value) { m_placementGroupHasBeenSet = true; m_placementGroup = std::move(value); }
303 inline void SetPlacementGroup(const char* value) { m_placementGroupHasBeenSet = true; m_placementGroup.assign(value); }
305 inline CreateAutoScalingGroupRequest& WithPlacementGroup(Aws::String&& value) { SetPlacementGroup(std::move(value)); return *this;}
306 inline CreateAutoScalingGroupRequest& WithPlacementGroup(const char* value) { SetPlacementGroup(value); return *this;}
308
310
316 inline const Aws::String& GetVPCZoneIdentifier() const{ return m_vPCZoneIdentifier; }
317 inline bool VPCZoneIdentifierHasBeenSet() const { return m_vPCZoneIdentifierHasBeenSet; }
318 inline void SetVPCZoneIdentifier(const Aws::String& value) { m_vPCZoneIdentifierHasBeenSet = true; m_vPCZoneIdentifier = value; }
319 inline void SetVPCZoneIdentifier(Aws::String&& value) { m_vPCZoneIdentifierHasBeenSet = true; m_vPCZoneIdentifier = std::move(value); }
320 inline void SetVPCZoneIdentifier(const char* value) { m_vPCZoneIdentifierHasBeenSet = true; m_vPCZoneIdentifier.assign(value); }
322 inline CreateAutoScalingGroupRequest& WithVPCZoneIdentifier(Aws::String&& value) { SetVPCZoneIdentifier(std::move(value)); return *this;}
323 inline CreateAutoScalingGroupRequest& WithVPCZoneIdentifier(const char* value) { SetVPCZoneIdentifier(value); return *this;}
325
327
339 inline const Aws::Vector<Aws::String>& GetTerminationPolicies() const{ return m_terminationPolicies; }
340 inline bool TerminationPoliciesHasBeenSet() const { return m_terminationPoliciesHasBeenSet; }
341 inline void SetTerminationPolicies(const Aws::Vector<Aws::String>& value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies = value; }
342 inline void SetTerminationPolicies(Aws::Vector<Aws::String>&& value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies = std::move(value); }
345 inline CreateAutoScalingGroupRequest& AddTerminationPolicies(const Aws::String& value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies.push_back(value); return *this; }
346 inline CreateAutoScalingGroupRequest& AddTerminationPolicies(Aws::String&& value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies.push_back(std::move(value)); return *this; }
347 inline CreateAutoScalingGroupRequest& AddTerminationPolicies(const char* value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies.push_back(value); return *this; }
349
351
359 inline bool GetNewInstancesProtectedFromScaleIn() const{ return m_newInstancesProtectedFromScaleIn; }
360 inline bool NewInstancesProtectedFromScaleInHasBeenSet() const { return m_newInstancesProtectedFromScaleInHasBeenSet; }
361 inline void SetNewInstancesProtectedFromScaleIn(bool value) { m_newInstancesProtectedFromScaleInHasBeenSet = true; m_newInstancesProtectedFromScaleIn = value; }
364
366
376 inline bool GetCapacityRebalance() const{ return m_capacityRebalance; }
377 inline bool CapacityRebalanceHasBeenSet() const { return m_capacityRebalanceHasBeenSet; }
378 inline void SetCapacityRebalance(bool value) { m_capacityRebalanceHasBeenSet = true; m_capacityRebalance = value; }
381
383
387 inline const Aws::Vector<LifecycleHookSpecification>& GetLifecycleHookSpecificationList() const{ return m_lifecycleHookSpecificationList; }
388 inline bool LifecycleHookSpecificationListHasBeenSet() const { return m_lifecycleHookSpecificationListHasBeenSet; }
389 inline void SetLifecycleHookSpecificationList(const Aws::Vector<LifecycleHookSpecification>& value) { m_lifecycleHookSpecificationListHasBeenSet = true; m_lifecycleHookSpecificationList = value; }
390 inline void SetLifecycleHookSpecificationList(Aws::Vector<LifecycleHookSpecification>&& value) { m_lifecycleHookSpecificationListHasBeenSet = true; m_lifecycleHookSpecificationList = std::move(value); }
393 inline CreateAutoScalingGroupRequest& AddLifecycleHookSpecificationList(const LifecycleHookSpecification& value) { m_lifecycleHookSpecificationListHasBeenSet = true; m_lifecycleHookSpecificationList.push_back(value); return *this; }
394 inline CreateAutoScalingGroupRequest& AddLifecycleHookSpecificationList(LifecycleHookSpecification&& value) { m_lifecycleHookSpecificationListHasBeenSet = true; m_lifecycleHookSpecificationList.push_back(std::move(value)); return *this; }
396
398
410 inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
411 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
412 inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
413 inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
414 inline CreateAutoScalingGroupRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
415 inline CreateAutoScalingGroupRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
416 inline CreateAutoScalingGroupRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
417 inline CreateAutoScalingGroupRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
419
421
430 inline const Aws::String& GetServiceLinkedRoleARN() const{ return m_serviceLinkedRoleARN; }
431 inline bool ServiceLinkedRoleARNHasBeenSet() const { return m_serviceLinkedRoleARNHasBeenSet; }
432 inline void SetServiceLinkedRoleARN(const Aws::String& value) { m_serviceLinkedRoleARNHasBeenSet = true; m_serviceLinkedRoleARN = value; }
433 inline void SetServiceLinkedRoleARN(Aws::String&& value) { m_serviceLinkedRoleARNHasBeenSet = true; m_serviceLinkedRoleARN = std::move(value); }
434 inline void SetServiceLinkedRoleARN(const char* value) { m_serviceLinkedRoleARNHasBeenSet = true; m_serviceLinkedRoleARN.assign(value); }
437 inline CreateAutoScalingGroupRequest& WithServiceLinkedRoleARN(const char* value) { SetServiceLinkedRoleARN(value); return *this;}
439
441
449 inline int GetMaxInstanceLifetime() const{ return m_maxInstanceLifetime; }
450 inline bool MaxInstanceLifetimeHasBeenSet() const { return m_maxInstanceLifetimeHasBeenSet; }
451 inline void SetMaxInstanceLifetime(int value) { m_maxInstanceLifetimeHasBeenSet = true; m_maxInstanceLifetime = value; }
454
456
459 inline const Aws::String& GetContext() const{ return m_context; }
460 inline bool ContextHasBeenSet() const { return m_contextHasBeenSet; }
461 inline void SetContext(const Aws::String& value) { m_contextHasBeenSet = true; m_context = value; }
462 inline void SetContext(Aws::String&& value) { m_contextHasBeenSet = true; m_context = std::move(value); }
463 inline void SetContext(const char* value) { m_contextHasBeenSet = true; m_context.assign(value); }
464 inline CreateAutoScalingGroupRequest& WithContext(const Aws::String& value) { SetContext(value); return *this;}
465 inline CreateAutoScalingGroupRequest& WithContext(Aws::String&& value) { SetContext(std::move(value)); return *this;}
466 inline CreateAutoScalingGroupRequest& WithContext(const char* value) { SetContext(value); return *this;}
468
470
481 inline const Aws::String& GetDesiredCapacityType() const{ return m_desiredCapacityType; }
482 inline bool DesiredCapacityTypeHasBeenSet() const { return m_desiredCapacityTypeHasBeenSet; }
483 inline void SetDesiredCapacityType(const Aws::String& value) { m_desiredCapacityTypeHasBeenSet = true; m_desiredCapacityType = value; }
484 inline void SetDesiredCapacityType(Aws::String&& value) { m_desiredCapacityTypeHasBeenSet = true; m_desiredCapacityType = std::move(value); }
485 inline void SetDesiredCapacityType(const char* value) { m_desiredCapacityTypeHasBeenSet = true; m_desiredCapacityType.assign(value); }
488 inline CreateAutoScalingGroupRequest& WithDesiredCapacityType(const char* value) { SetDesiredCapacityType(value); return *this;}
490
492
511 inline int GetDefaultInstanceWarmup() const{ return m_defaultInstanceWarmup; }
512 inline bool DefaultInstanceWarmupHasBeenSet() const { return m_defaultInstanceWarmupHasBeenSet; }
513 inline void SetDefaultInstanceWarmup(int value) { m_defaultInstanceWarmupHasBeenSet = true; m_defaultInstanceWarmup = value; }
516
518
524 inline const Aws::Vector<TrafficSourceIdentifier>& GetTrafficSources() const{ return m_trafficSources; }
525 inline bool TrafficSourcesHasBeenSet() const { return m_trafficSourcesHasBeenSet; }
526 inline void SetTrafficSources(const Aws::Vector<TrafficSourceIdentifier>& value) { m_trafficSourcesHasBeenSet = true; m_trafficSources = value; }
527 inline void SetTrafficSources(Aws::Vector<TrafficSourceIdentifier>&& value) { m_trafficSourcesHasBeenSet = true; m_trafficSources = std::move(value); }
530 inline CreateAutoScalingGroupRequest& AddTrafficSources(const TrafficSourceIdentifier& value) { m_trafficSourcesHasBeenSet = true; m_trafficSources.push_back(value); return *this; }
531 inline CreateAutoScalingGroupRequest& AddTrafficSources(TrafficSourceIdentifier&& value) { m_trafficSourcesHasBeenSet = true; m_trafficSources.push_back(std::move(value)); return *this; }
533
535
541 inline const InstanceMaintenancePolicy& GetInstanceMaintenancePolicy() const{ return m_instanceMaintenancePolicy; }
542 inline bool InstanceMaintenancePolicyHasBeenSet() const { return m_instanceMaintenancePolicyHasBeenSet; }
543 inline void SetInstanceMaintenancePolicy(const InstanceMaintenancePolicy& value) { m_instanceMaintenancePolicyHasBeenSet = true; m_instanceMaintenancePolicy = value; }
544 inline void SetInstanceMaintenancePolicy(InstanceMaintenancePolicy&& value) { m_instanceMaintenancePolicyHasBeenSet = true; m_instanceMaintenancePolicy = std::move(value); }
548 private:
549
550 Aws::String m_autoScalingGroupName;
551 bool m_autoScalingGroupNameHasBeenSet = false;
552
553 Aws::String m_launchConfigurationName;
554 bool m_launchConfigurationNameHasBeenSet = false;
555
556 LaunchTemplateSpecification m_launchTemplate;
557 bool m_launchTemplateHasBeenSet = false;
558
559 MixedInstancesPolicy m_mixedInstancesPolicy;
560 bool m_mixedInstancesPolicyHasBeenSet = false;
561
562 Aws::String m_instanceId;
563 bool m_instanceIdHasBeenSet = false;
564
565 int m_minSize;
566 bool m_minSizeHasBeenSet = false;
567
568 int m_maxSize;
569 bool m_maxSizeHasBeenSet = false;
570
571 int m_desiredCapacity;
572 bool m_desiredCapacityHasBeenSet = false;
573
574 int m_defaultCooldown;
575 bool m_defaultCooldownHasBeenSet = false;
576
577 Aws::Vector<Aws::String> m_availabilityZones;
578 bool m_availabilityZonesHasBeenSet = false;
579
580 Aws::Vector<Aws::String> m_loadBalancerNames;
581 bool m_loadBalancerNamesHasBeenSet = false;
582
583 Aws::Vector<Aws::String> m_targetGroupARNs;
584 bool m_targetGroupARNsHasBeenSet = false;
585
586 Aws::String m_healthCheckType;
587 bool m_healthCheckTypeHasBeenSet = false;
588
589 int m_healthCheckGracePeriod;
590 bool m_healthCheckGracePeriodHasBeenSet = false;
591
592 Aws::String m_placementGroup;
593 bool m_placementGroupHasBeenSet = false;
594
595 Aws::String m_vPCZoneIdentifier;
596 bool m_vPCZoneIdentifierHasBeenSet = false;
597
598 Aws::Vector<Aws::String> m_terminationPolicies;
599 bool m_terminationPoliciesHasBeenSet = false;
600
601 bool m_newInstancesProtectedFromScaleIn;
602 bool m_newInstancesProtectedFromScaleInHasBeenSet = false;
603
604 bool m_capacityRebalance;
605 bool m_capacityRebalanceHasBeenSet = false;
606
607 Aws::Vector<LifecycleHookSpecification> m_lifecycleHookSpecificationList;
608 bool m_lifecycleHookSpecificationListHasBeenSet = false;
609
610 Aws::Vector<Tag> m_tags;
611 bool m_tagsHasBeenSet = false;
612
613 Aws::String m_serviceLinkedRoleARN;
614 bool m_serviceLinkedRoleARNHasBeenSet = false;
615
616 int m_maxInstanceLifetime;
617 bool m_maxInstanceLifetimeHasBeenSet = false;
618
619 Aws::String m_context;
620 bool m_contextHasBeenSet = false;
621
622 Aws::String m_desiredCapacityType;
623 bool m_desiredCapacityTypeHasBeenSet = false;
624
625 int m_defaultInstanceWarmup;
626 bool m_defaultInstanceWarmupHasBeenSet = false;
627
629 bool m_trafficSourcesHasBeenSet = false;
630
631 InstanceMaintenancePolicy m_instanceMaintenancePolicy;
632 bool m_instanceMaintenancePolicyHasBeenSet = false;
633 };
634
635} // namespace Model
636} // namespace AutoScaling
637} // namespace Aws
CreateAutoScalingGroupRequest & WithTags(const Aws::Vector< Tag > &value)
CreateAutoScalingGroupRequest & WithInstanceId(Aws::String &&value)
CreateAutoScalingGroupRequest & WithDesiredCapacityType(Aws::String &&value)
CreateAutoScalingGroupRequest & WithTrafficSources(Aws::Vector< TrafficSourceIdentifier > &&value)
void SetLifecycleHookSpecificationList(Aws::Vector< LifecycleHookSpecification > &&value)
CreateAutoScalingGroupRequest & WithDesiredCapacityType(const char *value)
CreateAutoScalingGroupRequest & WithContext(const char *value)
CreateAutoScalingGroupRequest & AddTerminationPolicies(const Aws::String &value)
CreateAutoScalingGroupRequest & AddTargetGroupARNs(const char *value)
CreateAutoScalingGroupRequest & AddAvailabilityZones(const char *value)
CreateAutoScalingGroupRequest & WithLoadBalancerNames(Aws::Vector< Aws::String > &&value)
CreateAutoScalingGroupRequest & WithLaunchConfigurationName(Aws::String &&value)
CreateAutoScalingGroupRequest & WithLoadBalancerNames(const Aws::Vector< Aws::String > &value)
const LaunchTemplateSpecification & GetLaunchTemplate() const
const Aws::Vector< Aws::String > & GetLoadBalancerNames() const
CreateAutoScalingGroupRequest & AddTags(const Tag &value)
CreateAutoScalingGroupRequest & WithLaunchTemplate(const LaunchTemplateSpecification &value)
void SetTerminationPolicies(const Aws::Vector< Aws::String > &value)
CreateAutoScalingGroupRequest & AddTargetGroupARNs(const Aws::String &value)
CreateAutoScalingGroupRequest & WithServiceLinkedRoleARN(const char *value)
CreateAutoScalingGroupRequest & WithHealthCheckType(Aws::String &&value)
CreateAutoScalingGroupRequest & WithHealthCheckGracePeriod(int value)
CreateAutoScalingGroupRequest & WithInstanceId(const Aws::String &value)
void SetTrafficSources(Aws::Vector< TrafficSourceIdentifier > &&value)
CreateAutoScalingGroupRequest & WithInstanceMaintenancePolicy(InstanceMaintenancePolicy &&value)
CreateAutoScalingGroupRequest & WithLifecycleHookSpecificationList(const Aws::Vector< LifecycleHookSpecification > &value)
CreateAutoScalingGroupRequest & WithInstanceId(const char *value)
CreateAutoScalingGroupRequest & WithMixedInstancesPolicy(const MixedInstancesPolicy &value)
CreateAutoScalingGroupRequest & AddTerminationPolicies(const char *value)
CreateAutoScalingGroupRequest & AddLoadBalancerNames(const char *value)
const InstanceMaintenancePolicy & GetInstanceMaintenancePolicy() const
CreateAutoScalingGroupRequest & WithLaunchConfigurationName(const Aws::String &value)
CreateAutoScalingGroupRequest & WithAutoScalingGroupName(const Aws::String &value)
CreateAutoScalingGroupRequest & WithMixedInstancesPolicy(MixedInstancesPolicy &&value)
CreateAutoScalingGroupRequest & AddLoadBalancerNames(Aws::String &&value)
CreateAutoScalingGroupRequest & WithContext(const Aws::String &value)
CreateAutoScalingGroupRequest & WithTerminationPolicies(Aws::Vector< Aws::String > &&value)
CreateAutoScalingGroupRequest & WithCapacityRebalance(bool value)
CreateAutoScalingGroupRequest & WithNewInstancesProtectedFromScaleIn(bool value)
void SetTrafficSources(const Aws::Vector< TrafficSourceIdentifier > &value)
void SetLaunchTemplate(const LaunchTemplateSpecification &value)
CreateAutoScalingGroupRequest & WithTargetGroupARNs(const Aws::Vector< Aws::String > &value)
CreateAutoScalingGroupRequest & WithDefaultInstanceWarmup(int value)
CreateAutoScalingGroupRequest & AddLifecycleHookSpecificationList(LifecycleHookSpecification &&value)
CreateAutoScalingGroupRequest & WithVPCZoneIdentifier(const char *value)
void SetLifecycleHookSpecificationList(const Aws::Vector< LifecycleHookSpecification > &value)
AWS_AUTOSCALING_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
void SetAvailabilityZones(const Aws::Vector< Aws::String > &value)
CreateAutoScalingGroupRequest & WithHealthCheckType(const Aws::String &value)
CreateAutoScalingGroupRequest & WithAutoScalingGroupName(Aws::String &&value)
CreateAutoScalingGroupRequest & WithServiceLinkedRoleARN(Aws::String &&value)
CreateAutoScalingGroupRequest & WithTags(Aws::Vector< Tag > &&value)
CreateAutoScalingGroupRequest & WithContext(Aws::String &&value)
CreateAutoScalingGroupRequest & AddTargetGroupARNs(Aws::String &&value)
CreateAutoScalingGroupRequest & WithLifecycleHookSpecificationList(Aws::Vector< LifecycleHookSpecification > &&value)
CreateAutoScalingGroupRequest & WithInstanceMaintenancePolicy(const InstanceMaintenancePolicy &value)
CreateAutoScalingGroupRequest & WithHealthCheckType(const char *value)
CreateAutoScalingGroupRequest & AddAvailabilityZones(const Aws::String &value)
CreateAutoScalingGroupRequest & WithServiceLinkedRoleARN(const Aws::String &value)
CreateAutoScalingGroupRequest & WithAvailabilityZones(Aws::Vector< Aws::String > &&value)
CreateAutoScalingGroupRequest & AddLoadBalancerNames(const Aws::String &value)
void SetInstanceMaintenancePolicy(const InstanceMaintenancePolicy &value)
CreateAutoScalingGroupRequest & WithLaunchTemplate(LaunchTemplateSpecification &&value)
CreateAutoScalingGroupRequest & AddTrafficSources(const TrafficSourceIdentifier &value)
const Aws::Vector< TrafficSourceIdentifier > & GetTrafficSources() const
CreateAutoScalingGroupRequest & WithMaxInstanceLifetime(int value)
CreateAutoScalingGroupRequest & WithAutoScalingGroupName(const char *value)
CreateAutoScalingGroupRequest & AddTerminationPolicies(Aws::String &&value)
void SetLoadBalancerNames(const Aws::Vector< Aws::String > &value)
CreateAutoScalingGroupRequest & AddAvailabilityZones(Aws::String &&value)
CreateAutoScalingGroupRequest & WithPlacementGroup(const char *value)
const Aws::Vector< Aws::String > & GetAvailabilityZones() const
const Aws::Vector< Aws::String > & GetTerminationPolicies() const
CreateAutoScalingGroupRequest & WithAvailabilityZones(const Aws::Vector< Aws::String > &value)
CreateAutoScalingGroupRequest & WithVPCZoneIdentifier(Aws::String &&value)
AWS_AUTOSCALING_API Aws::String SerializePayload() const override
CreateAutoScalingGroupRequest & AddLifecycleHookSpecificationList(const LifecycleHookSpecification &value)
CreateAutoScalingGroupRequest & WithVPCZoneIdentifier(const Aws::String &value)
CreateAutoScalingGroupRequest & WithTerminationPolicies(const Aws::Vector< Aws::String > &value)
CreateAutoScalingGroupRequest & WithPlacementGroup(Aws::String &&value)
CreateAutoScalingGroupRequest & WithTargetGroupARNs(Aws::Vector< Aws::String > &&value)
CreateAutoScalingGroupRequest & WithPlacementGroup(const Aws::String &value)
CreateAutoScalingGroupRequest & WithTrafficSources(const Aws::Vector< TrafficSourceIdentifier > &value)
const Aws::Vector< LifecycleHookSpecification > & GetLifecycleHookSpecificationList() const
CreateAutoScalingGroupRequest & WithLaunchConfigurationName(const char *value)
CreateAutoScalingGroupRequest & WithDesiredCapacityType(const Aws::String &value)
CreateAutoScalingGroupRequest & AddTrafficSources(TrafficSourceIdentifier &&value)
void SetTargetGroupARNs(const Aws::Vector< Aws::String > &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector