AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
UpdateAutoScalingGroupRequest.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 <utility>
15
16namespace Aws
17{
18namespace AutoScaling
19{
20namespace Model
21{
22
26 {
27 public:
28 AWS_AUTOSCALING_API UpdateAutoScalingGroupRequest();
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "UpdateAutoScalingGroup"; }
35
36 AWS_AUTOSCALING_API Aws::String SerializePayload() const override;
37
38 protected:
39 AWS_AUTOSCALING_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
40
41 public:
42
44
47 inline const Aws::String& GetAutoScalingGroupName() const{ return m_autoScalingGroupName; }
48 inline bool AutoScalingGroupNameHasBeenSet() const { return m_autoScalingGroupNameHasBeenSet; }
49 inline void SetAutoScalingGroupName(const Aws::String& value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName = value; }
50 inline void SetAutoScalingGroupName(Aws::String&& value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName = std::move(value); }
51 inline void SetAutoScalingGroupName(const char* value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName.assign(value); }
54 inline UpdateAutoScalingGroupRequest& WithAutoScalingGroupName(const char* value) { SetAutoScalingGroupName(value); return *this;}
56
58
63 inline const Aws::String& GetLaunchConfigurationName() const{ return m_launchConfigurationName; }
64 inline bool LaunchConfigurationNameHasBeenSet() const { return m_launchConfigurationNameHasBeenSet; }
65 inline void SetLaunchConfigurationName(const Aws::String& value) { m_launchConfigurationNameHasBeenSet = true; m_launchConfigurationName = value; }
66 inline void SetLaunchConfigurationName(Aws::String&& value) { m_launchConfigurationNameHasBeenSet = true; m_launchConfigurationName = std::move(value); }
67 inline void SetLaunchConfigurationName(const char* value) { m_launchConfigurationNameHasBeenSet = true; m_launchConfigurationName.assign(value); }
72
74
79 inline const LaunchTemplateSpecification& GetLaunchTemplate() const{ return m_launchTemplate; }
80 inline bool LaunchTemplateHasBeenSet() const { return m_launchTemplateHasBeenSet; }
81 inline void SetLaunchTemplate(const LaunchTemplateSpecification& value) { m_launchTemplateHasBeenSet = true; m_launchTemplate = value; }
82 inline void SetLaunchTemplate(LaunchTemplateSpecification&& value) { m_launchTemplateHasBeenSet = true; m_launchTemplate = std::move(value); }
86
88
94 inline const MixedInstancesPolicy& GetMixedInstancesPolicy() const{ return m_mixedInstancesPolicy; }
95 inline bool MixedInstancesPolicyHasBeenSet() const { return m_mixedInstancesPolicyHasBeenSet; }
96 inline void SetMixedInstancesPolicy(const MixedInstancesPolicy& value) { m_mixedInstancesPolicyHasBeenSet = true; m_mixedInstancesPolicy = value; }
97 inline void SetMixedInstancesPolicy(MixedInstancesPolicy&& value) { m_mixedInstancesPolicyHasBeenSet = true; m_mixedInstancesPolicy = std::move(value); }
101
103
106 inline int GetMinSize() const{ return m_minSize; }
107 inline bool MinSizeHasBeenSet() const { return m_minSizeHasBeenSet; }
108 inline void SetMinSize(int value) { m_minSizeHasBeenSet = true; m_minSize = value; }
109 inline UpdateAutoScalingGroupRequest& WithMinSize(int value) { SetMinSize(value); return *this;}
111
113
121 inline int GetMaxSize() const{ return m_maxSize; }
122 inline bool MaxSizeHasBeenSet() const { return m_maxSizeHasBeenSet; }
123 inline void SetMaxSize(int value) { m_maxSizeHasBeenSet = true; m_maxSize = value; }
124 inline UpdateAutoScalingGroupRequest& WithMaxSize(int value) { SetMaxSize(value); return *this;}
126
128
134 inline int GetDesiredCapacity() const{ return m_desiredCapacity; }
135 inline bool DesiredCapacityHasBeenSet() const { return m_desiredCapacityHasBeenSet; }
136 inline void SetDesiredCapacity(int value) { m_desiredCapacityHasBeenSet = true; m_desiredCapacity = value; }
137 inline UpdateAutoScalingGroupRequest& WithDesiredCapacity(int value) { SetDesiredCapacity(value); return *this;}
139
141
149 inline int GetDefaultCooldown() const{ return m_defaultCooldown; }
150 inline bool DefaultCooldownHasBeenSet() const { return m_defaultCooldownHasBeenSet; }
151 inline void SetDefaultCooldown(int value) { m_defaultCooldownHasBeenSet = true; m_defaultCooldown = value; }
152 inline UpdateAutoScalingGroupRequest& WithDefaultCooldown(int value) { SetDefaultCooldown(value); return *this;}
154
156
159 inline const Aws::Vector<Aws::String>& GetAvailabilityZones() const{ return m_availabilityZones; }
160 inline bool AvailabilityZonesHasBeenSet() const { return m_availabilityZonesHasBeenSet; }
161 inline void SetAvailabilityZones(const Aws::Vector<Aws::String>& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones = value; }
162 inline void SetAvailabilityZones(Aws::Vector<Aws::String>&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones = std::move(value); }
165 inline UpdateAutoScalingGroupRequest& AddAvailabilityZones(const Aws::String& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(value); return *this; }
166 inline UpdateAutoScalingGroupRequest& AddAvailabilityZones(Aws::String&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(std::move(value)); return *this; }
167 inline UpdateAutoScalingGroupRequest& AddAvailabilityZones(const char* value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(value); return *this; }
169
171
181 inline const Aws::String& GetHealthCheckType() const{ return m_healthCheckType; }
182 inline bool HealthCheckTypeHasBeenSet() const { return m_healthCheckTypeHasBeenSet; }
183 inline void SetHealthCheckType(const Aws::String& value) { m_healthCheckTypeHasBeenSet = true; m_healthCheckType = value; }
184 inline void SetHealthCheckType(Aws::String&& value) { m_healthCheckTypeHasBeenSet = true; m_healthCheckType = std::move(value); }
185 inline void SetHealthCheckType(const char* value) { m_healthCheckTypeHasBeenSet = true; m_healthCheckType.assign(value); }
187 inline UpdateAutoScalingGroupRequest& WithHealthCheckType(Aws::String&& value) { SetHealthCheckType(std::move(value)); return *this;}
188 inline UpdateAutoScalingGroupRequest& WithHealthCheckType(const char* value) { SetHealthCheckType(value); return *this;}
190
192
202 inline int GetHealthCheckGracePeriod() const{ return m_healthCheckGracePeriod; }
203 inline bool HealthCheckGracePeriodHasBeenSet() const { return m_healthCheckGracePeriodHasBeenSet; }
204 inline void SetHealthCheckGracePeriod(int value) { m_healthCheckGracePeriodHasBeenSet = true; m_healthCheckGracePeriod = value; }
207
209
220 inline const Aws::String& GetPlacementGroup() const{ return m_placementGroup; }
221 inline bool PlacementGroupHasBeenSet() const { return m_placementGroupHasBeenSet; }
222 inline void SetPlacementGroup(const Aws::String& value) { m_placementGroupHasBeenSet = true; m_placementGroup = value; }
223 inline void SetPlacementGroup(Aws::String&& value) { m_placementGroupHasBeenSet = true; m_placementGroup = std::move(value); }
224 inline void SetPlacementGroup(const char* value) { m_placementGroupHasBeenSet = true; m_placementGroup.assign(value); }
226 inline UpdateAutoScalingGroupRequest& WithPlacementGroup(Aws::String&& value) { SetPlacementGroup(std::move(value)); return *this;}
227 inline UpdateAutoScalingGroupRequest& WithPlacementGroup(const char* value) { SetPlacementGroup(value); return *this;}
229
231
236 inline const Aws::String& GetVPCZoneIdentifier() const{ return m_vPCZoneIdentifier; }
237 inline bool VPCZoneIdentifierHasBeenSet() const { return m_vPCZoneIdentifierHasBeenSet; }
238 inline void SetVPCZoneIdentifier(const Aws::String& value) { m_vPCZoneIdentifierHasBeenSet = true; m_vPCZoneIdentifier = value; }
239 inline void SetVPCZoneIdentifier(Aws::String&& value) { m_vPCZoneIdentifierHasBeenSet = true; m_vPCZoneIdentifier = std::move(value); }
240 inline void SetVPCZoneIdentifier(const char* value) { m_vPCZoneIdentifierHasBeenSet = true; m_vPCZoneIdentifier.assign(value); }
242 inline UpdateAutoScalingGroupRequest& WithVPCZoneIdentifier(Aws::String&& value) { SetVPCZoneIdentifier(std::move(value)); return *this;}
243 inline UpdateAutoScalingGroupRequest& WithVPCZoneIdentifier(const char* value) { SetVPCZoneIdentifier(value); return *this;}
245
247
259 inline const Aws::Vector<Aws::String>& GetTerminationPolicies() const{ return m_terminationPolicies; }
260 inline bool TerminationPoliciesHasBeenSet() const { return m_terminationPoliciesHasBeenSet; }
261 inline void SetTerminationPolicies(const Aws::Vector<Aws::String>& value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies = value; }
262 inline void SetTerminationPolicies(Aws::Vector<Aws::String>&& value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies = std::move(value); }
265 inline UpdateAutoScalingGroupRequest& AddTerminationPolicies(const Aws::String& value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies.push_back(value); return *this; }
266 inline UpdateAutoScalingGroupRequest& AddTerminationPolicies(Aws::String&& value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies.push_back(std::move(value)); return *this; }
267 inline UpdateAutoScalingGroupRequest& AddTerminationPolicies(const char* value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies.push_back(value); return *this; }
269
271
279 inline bool GetNewInstancesProtectedFromScaleIn() const{ return m_newInstancesProtectedFromScaleIn; }
280 inline bool NewInstancesProtectedFromScaleInHasBeenSet() const { return m_newInstancesProtectedFromScaleInHasBeenSet; }
281 inline void SetNewInstancesProtectedFromScaleIn(bool value) { m_newInstancesProtectedFromScaleInHasBeenSet = true; m_newInstancesProtectedFromScaleIn = value; }
284
286
293 inline const Aws::String& GetServiceLinkedRoleARN() const{ return m_serviceLinkedRoleARN; }
294 inline bool ServiceLinkedRoleARNHasBeenSet() const { return m_serviceLinkedRoleARNHasBeenSet; }
295 inline void SetServiceLinkedRoleARN(const Aws::String& value) { m_serviceLinkedRoleARNHasBeenSet = true; m_serviceLinkedRoleARN = value; }
296 inline void SetServiceLinkedRoleARN(Aws::String&& value) { m_serviceLinkedRoleARNHasBeenSet = true; m_serviceLinkedRoleARN = std::move(value); }
297 inline void SetServiceLinkedRoleARN(const char* value) { m_serviceLinkedRoleARNHasBeenSet = true; m_serviceLinkedRoleARN.assign(value); }
300 inline UpdateAutoScalingGroupRequest& WithServiceLinkedRoleARN(const char* value) { SetServiceLinkedRoleARN(value); return *this;}
302
304
313 inline int GetMaxInstanceLifetime() const{ return m_maxInstanceLifetime; }
314 inline bool MaxInstanceLifetimeHasBeenSet() const { return m_maxInstanceLifetimeHasBeenSet; }
315 inline void SetMaxInstanceLifetime(int value) { m_maxInstanceLifetimeHasBeenSet = true; m_maxInstanceLifetime = value; }
318
320
326 inline bool GetCapacityRebalance() const{ return m_capacityRebalance; }
327 inline bool CapacityRebalanceHasBeenSet() const { return m_capacityRebalanceHasBeenSet; }
328 inline void SetCapacityRebalance(bool value) { m_capacityRebalanceHasBeenSet = true; m_capacityRebalance = value; }
331
333
336 inline const Aws::String& GetContext() const{ return m_context; }
337 inline bool ContextHasBeenSet() const { return m_contextHasBeenSet; }
338 inline void SetContext(const Aws::String& value) { m_contextHasBeenSet = true; m_context = value; }
339 inline void SetContext(Aws::String&& value) { m_contextHasBeenSet = true; m_context = std::move(value); }
340 inline void SetContext(const char* value) { m_contextHasBeenSet = true; m_context.assign(value); }
341 inline UpdateAutoScalingGroupRequest& WithContext(const Aws::String& value) { SetContext(value); return *this;}
342 inline UpdateAutoScalingGroupRequest& WithContext(Aws::String&& value) { SetContext(std::move(value)); return *this;}
343 inline UpdateAutoScalingGroupRequest& WithContext(const char* value) { SetContext(value); return *this;}
345
347
358 inline const Aws::String& GetDesiredCapacityType() const{ return m_desiredCapacityType; }
359 inline bool DesiredCapacityTypeHasBeenSet() const { return m_desiredCapacityTypeHasBeenSet; }
360 inline void SetDesiredCapacityType(const Aws::String& value) { m_desiredCapacityTypeHasBeenSet = true; m_desiredCapacityType = value; }
361 inline void SetDesiredCapacityType(Aws::String&& value) { m_desiredCapacityTypeHasBeenSet = true; m_desiredCapacityType = std::move(value); }
362 inline void SetDesiredCapacityType(const char* value) { m_desiredCapacityTypeHasBeenSet = true; m_desiredCapacityType.assign(value); }
365 inline UpdateAutoScalingGroupRequest& WithDesiredCapacityType(const char* value) { SetDesiredCapacityType(value); return *this;}
367
369
387 inline int GetDefaultInstanceWarmup() const{ return m_defaultInstanceWarmup; }
388 inline bool DefaultInstanceWarmupHasBeenSet() const { return m_defaultInstanceWarmupHasBeenSet; }
389 inline void SetDefaultInstanceWarmup(int value) { m_defaultInstanceWarmupHasBeenSet = true; m_defaultInstanceWarmup = value; }
392
394
400 inline const InstanceMaintenancePolicy& GetInstanceMaintenancePolicy() const{ return m_instanceMaintenancePolicy; }
401 inline bool InstanceMaintenancePolicyHasBeenSet() const { return m_instanceMaintenancePolicyHasBeenSet; }
402 inline void SetInstanceMaintenancePolicy(const InstanceMaintenancePolicy& value) { m_instanceMaintenancePolicyHasBeenSet = true; m_instanceMaintenancePolicy = value; }
403 inline void SetInstanceMaintenancePolicy(InstanceMaintenancePolicy&& value) { m_instanceMaintenancePolicyHasBeenSet = true; m_instanceMaintenancePolicy = std::move(value); }
407 private:
408
409 Aws::String m_autoScalingGroupName;
410 bool m_autoScalingGroupNameHasBeenSet = false;
411
412 Aws::String m_launchConfigurationName;
413 bool m_launchConfigurationNameHasBeenSet = false;
414
415 LaunchTemplateSpecification m_launchTemplate;
416 bool m_launchTemplateHasBeenSet = false;
417
418 MixedInstancesPolicy m_mixedInstancesPolicy;
419 bool m_mixedInstancesPolicyHasBeenSet = false;
420
421 int m_minSize;
422 bool m_minSizeHasBeenSet = false;
423
424 int m_maxSize;
425 bool m_maxSizeHasBeenSet = false;
426
427 int m_desiredCapacity;
428 bool m_desiredCapacityHasBeenSet = false;
429
430 int m_defaultCooldown;
431 bool m_defaultCooldownHasBeenSet = false;
432
433 Aws::Vector<Aws::String> m_availabilityZones;
434 bool m_availabilityZonesHasBeenSet = false;
435
436 Aws::String m_healthCheckType;
437 bool m_healthCheckTypeHasBeenSet = false;
438
439 int m_healthCheckGracePeriod;
440 bool m_healthCheckGracePeriodHasBeenSet = false;
441
442 Aws::String m_placementGroup;
443 bool m_placementGroupHasBeenSet = false;
444
445 Aws::String m_vPCZoneIdentifier;
446 bool m_vPCZoneIdentifierHasBeenSet = false;
447
448 Aws::Vector<Aws::String> m_terminationPolicies;
449 bool m_terminationPoliciesHasBeenSet = false;
450
451 bool m_newInstancesProtectedFromScaleIn;
452 bool m_newInstancesProtectedFromScaleInHasBeenSet = false;
453
454 Aws::String m_serviceLinkedRoleARN;
455 bool m_serviceLinkedRoleARNHasBeenSet = false;
456
457 int m_maxInstanceLifetime;
458 bool m_maxInstanceLifetimeHasBeenSet = false;
459
460 bool m_capacityRebalance;
461 bool m_capacityRebalanceHasBeenSet = false;
462
463 Aws::String m_context;
464 bool m_contextHasBeenSet = false;
465
466 Aws::String m_desiredCapacityType;
467 bool m_desiredCapacityTypeHasBeenSet = false;
468
469 int m_defaultInstanceWarmup;
470 bool m_defaultInstanceWarmupHasBeenSet = false;
471
472 InstanceMaintenancePolicy m_instanceMaintenancePolicy;
473 bool m_instanceMaintenancePolicyHasBeenSet = false;
474 };
475
476} // namespace Model
477} // namespace AutoScaling
478} // namespace Aws
UpdateAutoScalingGroupRequest & WithHealthCheckType(Aws::String &&value)
UpdateAutoScalingGroupRequest & WithTerminationPolicies(const Aws::Vector< Aws::String > &value)
UpdateAutoScalingGroupRequest & WithLaunchConfigurationName(const char *value)
void SetInstanceMaintenancePolicy(const InstanceMaintenancePolicy &value)
const InstanceMaintenancePolicy & GetInstanceMaintenancePolicy() const
UpdateAutoScalingGroupRequest & WithAvailabilityZones(Aws::Vector< Aws::String > &&value)
UpdateAutoScalingGroupRequest & WithHealthCheckType(const char *value)
UpdateAutoScalingGroupRequest & WithDesiredCapacityType(const char *value)
UpdateAutoScalingGroupRequest & AddTerminationPolicies(Aws::String &&value)
UpdateAutoScalingGroupRequest & WithServiceLinkedRoleARN(const Aws::String &value)
UpdateAutoScalingGroupRequest & WithAutoScalingGroupName(const char *value)
UpdateAutoScalingGroupRequest & WithContext(Aws::String &&value)
UpdateAutoScalingGroupRequest & AddTerminationPolicies(const Aws::String &value)
UpdateAutoScalingGroupRequest & AddAvailabilityZones(const Aws::String &value)
UpdateAutoScalingGroupRequest & WithAvailabilityZones(const Aws::Vector< Aws::String > &value)
UpdateAutoScalingGroupRequest & WithLaunchConfigurationName(Aws::String &&value)
UpdateAutoScalingGroupRequest & WithTerminationPolicies(Aws::Vector< Aws::String > &&value)
UpdateAutoScalingGroupRequest & AddAvailabilityZones(const char *value)
UpdateAutoScalingGroupRequest & WithServiceLinkedRoleARN(Aws::String &&value)
UpdateAutoScalingGroupRequest & WithDesiredCapacityType(const Aws::String &value)
UpdateAutoScalingGroupRequest & WithInstanceMaintenancePolicy(InstanceMaintenancePolicy &&value)
const Aws::Vector< Aws::String > & GetTerminationPolicies() const
UpdateAutoScalingGroupRequest & WithCapacityRebalance(bool value)
UpdateAutoScalingGroupRequest & WithMixedInstancesPolicy(MixedInstancesPolicy &&value)
UpdateAutoScalingGroupRequest & WithPlacementGroup(const char *value)
UpdateAutoScalingGroupRequest & AddAvailabilityZones(Aws::String &&value)
UpdateAutoScalingGroupRequest & WithAutoScalingGroupName(Aws::String &&value)
UpdateAutoScalingGroupRequest & WithInstanceMaintenancePolicy(const InstanceMaintenancePolicy &value)
UpdateAutoScalingGroupRequest & WithLaunchTemplate(LaunchTemplateSpecification &&value)
UpdateAutoScalingGroupRequest & WithServiceLinkedRoleARN(const char *value)
UpdateAutoScalingGroupRequest & WithLaunchConfigurationName(const Aws::String &value)
UpdateAutoScalingGroupRequest & WithVPCZoneIdentifier(const Aws::String &value)
void SetTerminationPolicies(const Aws::Vector< Aws::String > &value)
UpdateAutoScalingGroupRequest & WithPlacementGroup(const Aws::String &value)
UpdateAutoScalingGroupRequest & AddTerminationPolicies(const char *value)
UpdateAutoScalingGroupRequest & WithPlacementGroup(Aws::String &&value)
const Aws::Vector< Aws::String > & GetAvailabilityZones() const
UpdateAutoScalingGroupRequest & WithMaxInstanceLifetime(int value)
UpdateAutoScalingGroupRequest & WithVPCZoneIdentifier(const char *value)
UpdateAutoScalingGroupRequest & WithNewInstancesProtectedFromScaleIn(bool value)
UpdateAutoScalingGroupRequest & WithDefaultInstanceWarmup(int value)
AWS_AUTOSCALING_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
UpdateAutoScalingGroupRequest & WithHealthCheckType(const Aws::String &value)
UpdateAutoScalingGroupRequest & WithLaunchTemplate(const LaunchTemplateSpecification &value)
void SetLaunchTemplate(const LaunchTemplateSpecification &value)
UpdateAutoScalingGroupRequest & WithMixedInstancesPolicy(const MixedInstancesPolicy &value)
UpdateAutoScalingGroupRequest & WithContext(const char *value)
UpdateAutoScalingGroupRequest & WithDesiredCapacityType(Aws::String &&value)
UpdateAutoScalingGroupRequest & WithHealthCheckGracePeriod(int value)
const LaunchTemplateSpecification & GetLaunchTemplate() const
UpdateAutoScalingGroupRequest & WithVPCZoneIdentifier(Aws::String &&value)
UpdateAutoScalingGroupRequest & WithAutoScalingGroupName(const Aws::String &value)
UpdateAutoScalingGroupRequest & WithContext(const Aws::String &value)
AWS_AUTOSCALING_API Aws::String SerializePayload() const override
void SetAvailabilityZones(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