AWS SDK for C++  0.14.3
AWS SDK for C++
AutoScalingGroup.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
25 
26 namespace Aws
27 {
28 namespace Utils
29 {
30 namespace Xml
31 {
32  class XmlNode;
33 } // namespace Xml
34 } // namespace Utils
35 namespace AutoScaling
36 {
37 namespace Model
38 {
39 
44  {
45  public:
48  AutoScalingGroup& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
49 
50  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
51  void OutputToStream(Aws::OStream& oStream, const char* location) const;
52 
56  inline const Aws::String& GetAutoScalingGroupName() const{ return m_autoScalingGroupName; }
57 
61  inline void SetAutoScalingGroupName(const Aws::String& value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName = value; }
62 
66  inline void SetAutoScalingGroupName(Aws::String&& value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName = value; }
67 
71  inline void SetAutoScalingGroupName(const char* value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName.assign(value); }
72 
76  inline AutoScalingGroup& WithAutoScalingGroupName(const Aws::String& value) { SetAutoScalingGroupName(value); return *this;}
77 
81  inline AutoScalingGroup& WithAutoScalingGroupName(Aws::String&& value) { SetAutoScalingGroupName(value); return *this;}
82 
86  inline AutoScalingGroup& WithAutoScalingGroupName(const char* value) { SetAutoScalingGroupName(value); return *this;}
87 
91  inline const Aws::String& GetAutoScalingGroupARN() const{ return m_autoScalingGroupARN; }
92 
96  inline void SetAutoScalingGroupARN(const Aws::String& value) { m_autoScalingGroupARNHasBeenSet = true; m_autoScalingGroupARN = value; }
97 
101  inline void SetAutoScalingGroupARN(Aws::String&& value) { m_autoScalingGroupARNHasBeenSet = true; m_autoScalingGroupARN = value; }
102 
106  inline void SetAutoScalingGroupARN(const char* value) { m_autoScalingGroupARNHasBeenSet = true; m_autoScalingGroupARN.assign(value); }
107 
111  inline AutoScalingGroup& WithAutoScalingGroupARN(const Aws::String& value) { SetAutoScalingGroupARN(value); return *this;}
112 
116  inline AutoScalingGroup& WithAutoScalingGroupARN(Aws::String&& value) { SetAutoScalingGroupARN(value); return *this;}
117 
121  inline AutoScalingGroup& WithAutoScalingGroupARN(const char* value) { SetAutoScalingGroupARN(value); return *this;}
122 
126  inline const Aws::String& GetLaunchConfigurationName() const{ return m_launchConfigurationName; }
127 
131  inline void SetLaunchConfigurationName(const Aws::String& value) { m_launchConfigurationNameHasBeenSet = true; m_launchConfigurationName = value; }
132 
136  inline void SetLaunchConfigurationName(Aws::String&& value) { m_launchConfigurationNameHasBeenSet = true; m_launchConfigurationName = value; }
137 
141  inline void SetLaunchConfigurationName(const char* value) { m_launchConfigurationNameHasBeenSet = true; m_launchConfigurationName.assign(value); }
142 
146  inline AutoScalingGroup& WithLaunchConfigurationName(const Aws::String& value) { SetLaunchConfigurationName(value); return *this;}
147 
151  inline AutoScalingGroup& WithLaunchConfigurationName(Aws::String&& value) { SetLaunchConfigurationName(value); return *this;}
152 
156  inline AutoScalingGroup& WithLaunchConfigurationName(const char* value) { SetLaunchConfigurationName(value); return *this;}
157 
161  inline int GetMinSize() const{ return m_minSize; }
162 
166  inline void SetMinSize(int value) { m_minSizeHasBeenSet = true; m_minSize = value; }
167 
171  inline AutoScalingGroup& WithMinSize(int value) { SetMinSize(value); return *this;}
172 
176  inline int GetMaxSize() const{ return m_maxSize; }
177 
181  inline void SetMaxSize(int value) { m_maxSizeHasBeenSet = true; m_maxSize = value; }
182 
186  inline AutoScalingGroup& WithMaxSize(int value) { SetMaxSize(value); return *this;}
187 
191  inline int GetDesiredCapacity() const{ return m_desiredCapacity; }
192 
196  inline void SetDesiredCapacity(int value) { m_desiredCapacityHasBeenSet = true; m_desiredCapacity = value; }
197 
201  inline AutoScalingGroup& WithDesiredCapacity(int value) { SetDesiredCapacity(value); return *this;}
202 
207  inline int GetDefaultCooldown() const{ return m_defaultCooldown; }
208 
213  inline void SetDefaultCooldown(int value) { m_defaultCooldownHasBeenSet = true; m_defaultCooldown = value; }
214 
219  inline AutoScalingGroup& WithDefaultCooldown(int value) { SetDefaultCooldown(value); return *this;}
220 
224  inline const Aws::Vector<Aws::String>& GetAvailabilityZones() const{ return m_availabilityZones; }
225 
229  inline void SetAvailabilityZones(const Aws::Vector<Aws::String>& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones = value; }
230 
234  inline void SetAvailabilityZones(Aws::Vector<Aws::String>&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones = value; }
235 
239  inline AutoScalingGroup& WithAvailabilityZones(const Aws::Vector<Aws::String>& value) { SetAvailabilityZones(value); return *this;}
240 
244  inline AutoScalingGroup& WithAvailabilityZones(Aws::Vector<Aws::String>&& value) { SetAvailabilityZones(value); return *this;}
245 
249  inline AutoScalingGroup& AddAvailabilityZones(const Aws::String& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(value); return *this; }
250 
254  inline AutoScalingGroup& AddAvailabilityZones(Aws::String&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(value); return *this; }
255 
259  inline AutoScalingGroup& AddAvailabilityZones(const char* value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.push_back(value); return *this; }
260 
264  inline const Aws::Vector<Aws::String>& GetLoadBalancerNames() const{ return m_loadBalancerNames; }
265 
269  inline void SetLoadBalancerNames(const Aws::Vector<Aws::String>& value) { m_loadBalancerNamesHasBeenSet = true; m_loadBalancerNames = value; }
270 
274  inline void SetLoadBalancerNames(Aws::Vector<Aws::String>&& value) { m_loadBalancerNamesHasBeenSet = true; m_loadBalancerNames = value; }
275 
279  inline AutoScalingGroup& WithLoadBalancerNames(const Aws::Vector<Aws::String>& value) { SetLoadBalancerNames(value); return *this;}
280 
284  inline AutoScalingGroup& WithLoadBalancerNames(Aws::Vector<Aws::String>&& value) { SetLoadBalancerNames(value); return *this;}
285 
289  inline AutoScalingGroup& AddLoadBalancerNames(const Aws::String& value) { m_loadBalancerNamesHasBeenSet = true; m_loadBalancerNames.push_back(value); return *this; }
290 
294  inline AutoScalingGroup& AddLoadBalancerNames(Aws::String&& value) { m_loadBalancerNamesHasBeenSet = true; m_loadBalancerNames.push_back(value); return *this; }
295 
299  inline AutoScalingGroup& AddLoadBalancerNames(const char* value) { m_loadBalancerNamesHasBeenSet = true; m_loadBalancerNames.push_back(value); return *this; }
300 
305  inline const Aws::Vector<Aws::String>& GetTargetGroupARNs() const{ return m_targetGroupARNs; }
306 
311  inline void SetTargetGroupARNs(const Aws::Vector<Aws::String>& value) { m_targetGroupARNsHasBeenSet = true; m_targetGroupARNs = value; }
312 
317  inline void SetTargetGroupARNs(Aws::Vector<Aws::String>&& value) { m_targetGroupARNsHasBeenSet = true; m_targetGroupARNs = value; }
318 
323  inline AutoScalingGroup& WithTargetGroupARNs(const Aws::Vector<Aws::String>& value) { SetTargetGroupARNs(value); return *this;}
324 
329  inline AutoScalingGroup& WithTargetGroupARNs(Aws::Vector<Aws::String>&& value) { SetTargetGroupARNs(value); return *this;}
330 
335  inline AutoScalingGroup& AddTargetGroupARNs(const Aws::String& value) { m_targetGroupARNsHasBeenSet = true; m_targetGroupARNs.push_back(value); return *this; }
336 
341  inline AutoScalingGroup& AddTargetGroupARNs(Aws::String&& value) { m_targetGroupARNsHasBeenSet = true; m_targetGroupARNs.push_back(value); return *this; }
342 
347  inline AutoScalingGroup& AddTargetGroupARNs(const char* value) { m_targetGroupARNsHasBeenSet = true; m_targetGroupARNs.push_back(value); return *this; }
348 
353  inline const Aws::String& GetHealthCheckType() const{ return m_healthCheckType; }
354 
359  inline void SetHealthCheckType(const Aws::String& value) { m_healthCheckTypeHasBeenSet = true; m_healthCheckType = value; }
360 
365  inline void SetHealthCheckType(Aws::String&& value) { m_healthCheckTypeHasBeenSet = true; m_healthCheckType = value; }
366 
371  inline void SetHealthCheckType(const char* value) { m_healthCheckTypeHasBeenSet = true; m_healthCheckType.assign(value); }
372 
377  inline AutoScalingGroup& WithHealthCheckType(const Aws::String& value) { SetHealthCheckType(value); return *this;}
378 
383  inline AutoScalingGroup& WithHealthCheckType(Aws::String&& value) { SetHealthCheckType(value); return *this;}
384 
389  inline AutoScalingGroup& WithHealthCheckType(const char* value) { SetHealthCheckType(value); return *this;}
390 
395  inline int GetHealthCheckGracePeriod() const{ return m_healthCheckGracePeriod; }
396 
401  inline void SetHealthCheckGracePeriod(int value) { m_healthCheckGracePeriodHasBeenSet = true; m_healthCheckGracePeriod = value; }
402 
407  inline AutoScalingGroup& WithHealthCheckGracePeriod(int value) { SetHealthCheckGracePeriod(value); return *this;}
408 
412  inline const Aws::Vector<Instance>& GetInstances() const{ return m_instances; }
413 
417  inline void SetInstances(const Aws::Vector<Instance>& value) { m_instancesHasBeenSet = true; m_instances = value; }
418 
422  inline void SetInstances(Aws::Vector<Instance>&& value) { m_instancesHasBeenSet = true; m_instances = value; }
423 
427  inline AutoScalingGroup& WithInstances(const Aws::Vector<Instance>& value) { SetInstances(value); return *this;}
428 
432  inline AutoScalingGroup& WithInstances(Aws::Vector<Instance>&& value) { SetInstances(value); return *this;}
433 
437  inline AutoScalingGroup& AddInstances(const Instance& value) { m_instancesHasBeenSet = true; m_instances.push_back(value); return *this; }
438 
442  inline AutoScalingGroup& AddInstances(Instance&& value) { m_instancesHasBeenSet = true; m_instances.push_back(value); return *this; }
443 
447  inline const Aws::Utils::DateTime& GetCreatedTime() const{ return m_createdTime; }
448 
452  inline void SetCreatedTime(const Aws::Utils::DateTime& value) { m_createdTimeHasBeenSet = true; m_createdTime = value; }
453 
457  inline void SetCreatedTime(Aws::Utils::DateTime&& value) { m_createdTimeHasBeenSet = true; m_createdTime = value; }
458 
462  inline AutoScalingGroup& WithCreatedTime(const Aws::Utils::DateTime& value) { SetCreatedTime(value); return *this;}
463 
467  inline AutoScalingGroup& WithCreatedTime(Aws::Utils::DateTime&& value) { SetCreatedTime(value); return *this;}
468 
472  inline const Aws::Vector<SuspendedProcess>& GetSuspendedProcesses() const{ return m_suspendedProcesses; }
473 
477  inline void SetSuspendedProcesses(const Aws::Vector<SuspendedProcess>& value) { m_suspendedProcessesHasBeenSet = true; m_suspendedProcesses = value; }
478 
482  inline void SetSuspendedProcesses(Aws::Vector<SuspendedProcess>&& value) { m_suspendedProcessesHasBeenSet = true; m_suspendedProcesses = value; }
483 
487  inline AutoScalingGroup& WithSuspendedProcesses(const Aws::Vector<SuspendedProcess>& value) { SetSuspendedProcesses(value); return *this;}
488 
492  inline AutoScalingGroup& WithSuspendedProcesses(Aws::Vector<SuspendedProcess>&& value) { SetSuspendedProcesses(value); return *this;}
493 
497  inline AutoScalingGroup& AddSuspendedProcesses(const SuspendedProcess& value) { m_suspendedProcessesHasBeenSet = true; m_suspendedProcesses.push_back(value); return *this; }
498 
502  inline AutoScalingGroup& AddSuspendedProcesses(SuspendedProcess&& value) { m_suspendedProcessesHasBeenSet = true; m_suspendedProcesses.push_back(value); return *this; }
503 
510  inline const Aws::String& GetPlacementGroup() const{ return m_placementGroup; }
511 
518  inline void SetPlacementGroup(const Aws::String& value) { m_placementGroupHasBeenSet = true; m_placementGroup = value; }
519 
526  inline void SetPlacementGroup(Aws::String&& value) { m_placementGroupHasBeenSet = true; m_placementGroup = value; }
527 
534  inline void SetPlacementGroup(const char* value) { m_placementGroupHasBeenSet = true; m_placementGroup.assign(value); }
535 
542  inline AutoScalingGroup& WithPlacementGroup(const Aws::String& value) { SetPlacementGroup(value); return *this;}
543 
550  inline AutoScalingGroup& WithPlacementGroup(Aws::String&& value) { SetPlacementGroup(value); return *this;}
551 
558  inline AutoScalingGroup& WithPlacementGroup(const char* value) { SetPlacementGroup(value); return *this;}
559 
566  inline const Aws::String& GetVPCZoneIdentifier() const{ return m_vPCZoneIdentifier; }
567 
574  inline void SetVPCZoneIdentifier(const Aws::String& value) { m_vPCZoneIdentifierHasBeenSet = true; m_vPCZoneIdentifier = value; }
575 
582  inline void SetVPCZoneIdentifier(Aws::String&& value) { m_vPCZoneIdentifierHasBeenSet = true; m_vPCZoneIdentifier = value; }
583 
590  inline void SetVPCZoneIdentifier(const char* value) { m_vPCZoneIdentifierHasBeenSet = true; m_vPCZoneIdentifier.assign(value); }
591 
598  inline AutoScalingGroup& WithVPCZoneIdentifier(const Aws::String& value) { SetVPCZoneIdentifier(value); return *this;}
599 
606  inline AutoScalingGroup& WithVPCZoneIdentifier(Aws::String&& value) { SetVPCZoneIdentifier(value); return *this;}
607 
614  inline AutoScalingGroup& WithVPCZoneIdentifier(const char* value) { SetVPCZoneIdentifier(value); return *this;}
615 
619  inline const Aws::Vector<EnabledMetric>& GetEnabledMetrics() const{ return m_enabledMetrics; }
620 
624  inline void SetEnabledMetrics(const Aws::Vector<EnabledMetric>& value) { m_enabledMetricsHasBeenSet = true; m_enabledMetrics = value; }
625 
629  inline void SetEnabledMetrics(Aws::Vector<EnabledMetric>&& value) { m_enabledMetricsHasBeenSet = true; m_enabledMetrics = value; }
630 
634  inline AutoScalingGroup& WithEnabledMetrics(const Aws::Vector<EnabledMetric>& value) { SetEnabledMetrics(value); return *this;}
635 
639  inline AutoScalingGroup& WithEnabledMetrics(Aws::Vector<EnabledMetric>&& value) { SetEnabledMetrics(value); return *this;}
640 
644  inline AutoScalingGroup& AddEnabledMetrics(const EnabledMetric& value) { m_enabledMetricsHasBeenSet = true; m_enabledMetrics.push_back(value); return *this; }
645 
649  inline AutoScalingGroup& AddEnabledMetrics(EnabledMetric&& value) { m_enabledMetricsHasBeenSet = true; m_enabledMetrics.push_back(value); return *this; }
650 
655  inline const Aws::String& GetStatus() const{ return m_status; }
656 
661  inline void SetStatus(const Aws::String& value) { m_statusHasBeenSet = true; m_status = value; }
662 
667  inline void SetStatus(Aws::String&& value) { m_statusHasBeenSet = true; m_status = value; }
668 
673  inline void SetStatus(const char* value) { m_statusHasBeenSet = true; m_status.assign(value); }
674 
679  inline AutoScalingGroup& WithStatus(const Aws::String& value) { SetStatus(value); return *this;}
680 
685  inline AutoScalingGroup& WithStatus(Aws::String&& value) { SetStatus(value); return *this;}
686 
691  inline AutoScalingGroup& WithStatus(const char* value) { SetStatus(value); return *this;}
692 
696  inline const Aws::Vector<TagDescription>& GetTags() const{ return m_tags; }
697 
701  inline void SetTags(const Aws::Vector<TagDescription>& value) { m_tagsHasBeenSet = true; m_tags = value; }
702 
706  inline void SetTags(Aws::Vector<TagDescription>&& value) { m_tagsHasBeenSet = true; m_tags = value; }
707 
711  inline AutoScalingGroup& WithTags(const Aws::Vector<TagDescription>& value) { SetTags(value); return *this;}
712 
716  inline AutoScalingGroup& WithTags(Aws::Vector<TagDescription>&& value) { SetTags(value); return *this;}
717 
721  inline AutoScalingGroup& AddTags(const TagDescription& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
722 
726  inline AutoScalingGroup& AddTags(TagDescription&& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
727 
731  inline const Aws::Vector<Aws::String>& GetTerminationPolicies() const{ return m_terminationPolicies; }
732 
736  inline void SetTerminationPolicies(const Aws::Vector<Aws::String>& value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies = value; }
737 
741  inline void SetTerminationPolicies(Aws::Vector<Aws::String>&& value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies = value; }
742 
746  inline AutoScalingGroup& WithTerminationPolicies(const Aws::Vector<Aws::String>& value) { SetTerminationPolicies(value); return *this;}
747 
751  inline AutoScalingGroup& WithTerminationPolicies(Aws::Vector<Aws::String>&& value) { SetTerminationPolicies(value); return *this;}
752 
756  inline AutoScalingGroup& AddTerminationPolicies(const Aws::String& value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies.push_back(value); return *this; }
757 
761  inline AutoScalingGroup& AddTerminationPolicies(Aws::String&& value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies.push_back(value); return *this; }
762 
766  inline AutoScalingGroup& AddTerminationPolicies(const char* value) { m_terminationPoliciesHasBeenSet = true; m_terminationPolicies.push_back(value); return *this; }
767 
772  inline bool GetNewInstancesProtectedFromScaleIn() const{ return m_newInstancesProtectedFromScaleIn; }
773 
778  inline void SetNewInstancesProtectedFromScaleIn(bool value) { m_newInstancesProtectedFromScaleInHasBeenSet = true; m_newInstancesProtectedFromScaleIn = value; }
779 
784  inline AutoScalingGroup& WithNewInstancesProtectedFromScaleIn(bool value) { SetNewInstancesProtectedFromScaleIn(value); return *this;}
785 
786  private:
787  Aws::String m_autoScalingGroupName;
788  bool m_autoScalingGroupNameHasBeenSet;
789  Aws::String m_autoScalingGroupARN;
790  bool m_autoScalingGroupARNHasBeenSet;
791  Aws::String m_launchConfigurationName;
792  bool m_launchConfigurationNameHasBeenSet;
793  int m_minSize;
794  bool m_minSizeHasBeenSet;
795  int m_maxSize;
796  bool m_maxSizeHasBeenSet;
797  int m_desiredCapacity;
798  bool m_desiredCapacityHasBeenSet;
799  int m_defaultCooldown;
800  bool m_defaultCooldownHasBeenSet;
801  Aws::Vector<Aws::String> m_availabilityZones;
802  bool m_availabilityZonesHasBeenSet;
803  Aws::Vector<Aws::String> m_loadBalancerNames;
804  bool m_loadBalancerNamesHasBeenSet;
805  Aws::Vector<Aws::String> m_targetGroupARNs;
806  bool m_targetGroupARNsHasBeenSet;
807  Aws::String m_healthCheckType;
808  bool m_healthCheckTypeHasBeenSet;
809  int m_healthCheckGracePeriod;
810  bool m_healthCheckGracePeriodHasBeenSet;
811  Aws::Vector<Instance> m_instances;
812  bool m_instancesHasBeenSet;
813  Aws::Utils::DateTime m_createdTime;
814  bool m_createdTimeHasBeenSet;
815  Aws::Vector<SuspendedProcess> m_suspendedProcesses;
816  bool m_suspendedProcessesHasBeenSet;
817  Aws::String m_placementGroup;
818  bool m_placementGroupHasBeenSet;
819  Aws::String m_vPCZoneIdentifier;
820  bool m_vPCZoneIdentifierHasBeenSet;
821  Aws::Vector<EnabledMetric> m_enabledMetrics;
822  bool m_enabledMetricsHasBeenSet;
823  Aws::String m_status;
824  bool m_statusHasBeenSet;
826  bool m_tagsHasBeenSet;
827  Aws::Vector<Aws::String> m_terminationPolicies;
828  bool m_terminationPoliciesHasBeenSet;
829  bool m_newInstancesProtectedFromScaleIn;
830  bool m_newInstancesProtectedFromScaleInHasBeenSet;
831  };
832 
833 } // namespace Model
834 } // namespace AutoScaling
835 } // namespace Aws
const Aws::String & GetLaunchConfigurationName() const
AutoScalingGroup & WithAvailabilityZones(const Aws::Vector< Aws::String > &value)
AutoScalingGroup & AddTargetGroupARNs(const char *value)
AutoScalingGroup & AddInstances(const Instance &value)
const Aws::String & GetAutoScalingGroupARN() const
void SetInstances(Aws::Vector< Instance > &&value)
AutoScalingGroup & WithTerminationPolicies(Aws::Vector< Aws::String > &&value)
AutoScalingGroup & WithInstances(Aws::Vector< Instance > &&value)
AutoScalingGroup & WithAutoScalingGroupName(Aws::String &&value)
const Aws::String & GetVPCZoneIdentifier() const
const Aws::Vector< Aws::String > & GetAvailabilityZones() const
AutoScalingGroup & AddAvailabilityZones(Aws::String &&value)
AutoScalingGroup & WithEnabledMetrics(const Aws::Vector< EnabledMetric > &value)
AutoScalingGroup & AddEnabledMetrics(EnabledMetric &&value)
void SetPlacementGroup(const Aws::String &value)
AutoScalingGroup & WithLoadBalancerNames(const Aws::Vector< Aws::String > &value)
AutoScalingGroup & WithDesiredCapacity(int value)
AutoScalingGroup & WithTerminationPolicies(const Aws::Vector< Aws::String > &value)
void SetAutoScalingGroupName(const char *value)
void SetTerminationPolicies(const Aws::Vector< Aws::String > &value)
void SetAutoScalingGroupName(const Aws::String &value)
void SetCreatedTime(Aws::Utils::DateTime &&value)
AutoScalingGroup & WithAutoScalingGroupARN(const char *value)
AutoScalingGroup & WithInstances(const Aws::Vector< Instance > &value)
AutoScalingGroup & WithHealthCheckGracePeriod(int value)
void SetHealthCheckType(Aws::String &&value)
AutoScalingGroup & WithVPCZoneIdentifier(const Aws::String &value)
AutoScalingGroup & WithPlacementGroup(const Aws::String &value)
AutoScalingGroup & AddTerminationPolicies(const Aws::String &value)
AutoScalingGroup & WithTags(Aws::Vector< TagDescription > &&value)
void SetLaunchConfigurationName(const Aws::String &value)
AutoScalingGroup & AddTerminationPolicies(Aws::String &&value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
AutoScalingGroup & AddTags(const TagDescription &value)
const Aws::String & GetStatus() const
void SetEnabledMetrics(Aws::Vector< EnabledMetric > &&value)
AutoScalingGroup & WithSuspendedProcesses(const Aws::Vector< SuspendedProcess > &value)
AutoScalingGroup & WithHealthCheckType(const Aws::String &value)
AutoScalingGroup & WithLaunchConfigurationName(const Aws::String &value)
void SetAvailabilityZones(const Aws::Vector< Aws::String > &value)
const Aws::String & GetAutoScalingGroupName() const
void SetTags(Aws::Vector< TagDescription > &&value)
const Aws::Vector< TagDescription > & GetTags() const
AutoScalingGroup & WithEnabledMetrics(Aws::Vector< EnabledMetric > &&value)
AutoScalingGroup & AddEnabledMetrics(const EnabledMetric &value)
AutoScalingGroup & WithLaunchConfigurationName(Aws::String &&value)
AutoScalingGroup & WithStatus(const Aws::String &value)
AutoScalingGroup & AddLoadBalancerNames(Aws::String &&value)
void SetLoadBalancerNames(const Aws::Vector< Aws::String > &value)
void SetAutoScalingGroupName(Aws::String &&value)
const Aws::Vector< Aws::String > & GetLoadBalancerNames() const
void SetTargetGroupARNs(const Aws::Vector< Aws::String > &value)
void SetSuspendedProcesses(const Aws::Vector< SuspendedProcess > &value)
const Aws::Vector< SuspendedProcess > & GetSuspendedProcesses() const
AutoScalingGroup & WithPlacementGroup(Aws::String &&value)
void SetVPCZoneIdentifier(const Aws::String &value)
AutoScalingGroup & WithTags(const Aws::Vector< TagDescription > &value)
AutoScalingGroup & AddSuspendedProcesses(const SuspendedProcess &value)
AutoScalingGroup & WithAutoScalingGroupName(const char *value)
AutoScalingGroup & AddTags(TagDescription &&value)
AutoScalingGroup & WithLaunchConfigurationName(const char *value)
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:31
AutoScalingGroup & AddLoadBalancerNames(const char *value)
AutoScalingGroup & WithHealthCheckType(const char *value)
AutoScalingGroup & WithAutoScalingGroupARN(Aws::String &&value)
void SetTags(const Aws::Vector< TagDescription > &value)
const Aws::Vector< Instance > & GetInstances() const
AutoScalingGroup & WithCreatedTime(const Aws::Utils::DateTime &value)
const Aws::Utils::DateTime & GetCreatedTime() const
void SetPlacementGroup(Aws::String &&value)
const Aws::Vector< Aws::String > & GetTargetGroupARNs() const
AutoScalingGroup & AddTerminationPolicies(const char *value)
void SetSuspendedProcesses(Aws::Vector< SuspendedProcess > &&value)
AutoScalingGroup & WithCreatedTime(Aws::Utils::DateTime &&value)
void SetTerminationPolicies(Aws::Vector< Aws::String > &&value)
void SetLoadBalancerNames(Aws::Vector< Aws::String > &&value)
AutoScalingGroup & AddAvailabilityZones(const char *value)
void SetAvailabilityZones(Aws::Vector< Aws::String > &&value)
AutoScalingGroup & WithStatus(Aws::String &&value)
AutoScalingGroup & WithDefaultCooldown(int value)
const Aws::String & GetPlacementGroup() const
void SetStatus(const Aws::String &value)
AutoScalingGroup & AddTargetGroupARNs(Aws::String &&value)
AutoScalingGroup & AddInstances(Instance &&value)
AutoScalingGroup & WithStatus(const char *value)
const Aws::Vector< Aws::String > & GetTerminationPolicies() const
void SetAutoScalingGroupARN(const Aws::String &value)
AutoScalingGroup & AddAvailabilityZones(const Aws::String &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
AutoScalingGroup & WithMaxSize(int value)
AutoScalingGroup & AddSuspendedProcesses(SuspendedProcess &&value)
AutoScalingGroup & WithLoadBalancerNames(Aws::Vector< Aws::String > &&value)
AutoScalingGroup & WithVPCZoneIdentifier(Aws::String &&value)
AutoScalingGroup & WithHealthCheckType(Aws::String &&value)
void SetVPCZoneIdentifier(Aws::String &&value)
AutoScalingGroup & WithNewInstancesProtectedFromScaleIn(bool value)
void SetLaunchConfigurationName(Aws::String &&value)
void SetAutoScalingGroupARN(Aws::String &&value)
AutoScalingGroup & WithTargetGroupARNs(const Aws::Vector< Aws::String > &value)
const Aws::String & GetHealthCheckType() const
void SetInstances(const Aws::Vector< Instance > &value)
AutoScalingGroup & WithAvailabilityZones(Aws::Vector< Aws::String > &&value)
void SetCreatedTime(const Aws::Utils::DateTime &value)
AutoScalingGroup & AddTargetGroupARNs(const Aws::String &value)
void SetAutoScalingGroupARN(const char *value)
#define AWS_AUTOSCALING_API
AutoScalingGroup & AddLoadBalancerNames(const Aws::String &value)
AutoScalingGroup & WithPlacementGroup(const char *value)
void SetLaunchConfigurationName(const char *value)
void SetTargetGroupARNs(Aws::Vector< Aws::String > &&value)
AutoScalingGroup & WithMinSize(int value)
AutoScalingGroup & WithAutoScalingGroupARN(const Aws::String &value)
void SetHealthCheckType(const Aws::String &value)
AutoScalingGroup & WithSuspendedProcesses(Aws::Vector< SuspendedProcess > &&value)
void SetEnabledMetrics(const Aws::Vector< EnabledMetric > &value)
const Aws::Vector< EnabledMetric > & GetEnabledMetrics() const
JSON (JavaScript Object Notation).
AutoScalingGroup & WithTargetGroupARNs(Aws::Vector< Aws::String > &&value)
AutoScalingGroup & WithAutoScalingGroupName(const Aws::String &value)
AutoScalingGroup & WithVPCZoneIdentifier(const char *value)