7#include <aws/autoscaling/AutoScaling_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.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/core/utils/DateTime.h>
14#include <aws/autoscaling/model/WarmPoolConfiguration.h>
15#include <aws/autoscaling/model/InstanceMaintenancePolicy.h>
16#include <aws/autoscaling/model/Instance.h>
17#include <aws/autoscaling/model/SuspendedProcess.h>
18#include <aws/autoscaling/model/EnabledMetric.h>
19#include <aws/autoscaling/model/TagDescription.h>
20#include <aws/autoscaling/model/TrafficSourceIdentifier.h>
61 inline void SetAutoScalingGroupName(
const char* value) { m_autoScalingGroupNameHasBeenSet =
true; m_autoScalingGroupName.assign(value); }
75 inline void SetAutoScalingGroupARN(
const char* value) { m_autoScalingGroupARNHasBeenSet =
true; m_autoScalingGroupARN.assign(value); }
89 inline void SetLaunchConfigurationName(
const char* value) { m_launchConfigurationNameHasBeenSet =
true; m_launchConfigurationName.assign(value); }
125 inline void SetMinSize(
int value) { m_minSizeHasBeenSet =
true; m_minSize = value; }
135 inline void SetMaxSize(
int value) { m_maxSizeHasBeenSet =
true; m_maxSize = value; }
145 inline void SetDesiredCapacity(
int value) { m_desiredCapacityHasBeenSet =
true; m_desiredCapacity = value; }
156 inline void SetPredictedCapacity(
int value) { m_predictedCapacityHasBeenSet =
true; m_predictedCapacity = value; }
166 inline void SetDefaultCooldown(
int value) { m_defaultCooldownHasBeenSet =
true; m_defaultCooldown = value; }
224 inline void SetHealthCheckType(
const char* value) { m_healthCheckTypeHasBeenSet =
true; m_healthCheckType.assign(value); }
289 inline void SetPlacementGroup(
const char* value) { m_placementGroupHasBeenSet =
true; m_placementGroup.assign(value); }
303 inline void SetVPCZoneIdentifier(
const char* value) { m_vPCZoneIdentifierHasBeenSet =
true; m_vPCZoneIdentifier.assign(value); }
333 inline void SetStatus(
const char* value) { m_statusHasBeenSet =
true; m_status.assign(value); }
388 inline void SetServiceLinkedRoleARN(
const char* value) { m_serviceLinkedRoleARNHasBeenSet =
true; m_serviceLinkedRoleARN.assign(value); }
411 inline void SetCapacityRebalance(
bool value) { m_capacityRebalanceHasBeenSet =
true; m_capacityRebalance = value; }
433 inline void SetWarmPoolSize(
int value) { m_warmPoolSizeHasBeenSet =
true; m_warmPoolSize = value; }
445 inline void SetContext(
const char* value) { m_contextHasBeenSet =
true; m_context.assign(value); }
461 inline void SetDesiredCapacityType(
const char* value) { m_desiredCapacityTypeHasBeenSet =
true; m_desiredCapacityType.assign(value); }
505 bool m_autoScalingGroupNameHasBeenSet =
false;
508 bool m_autoScalingGroupARNHasBeenSet =
false;
511 bool m_launchConfigurationNameHasBeenSet =
false;
514 bool m_launchTemplateHasBeenSet =
false;
517 bool m_mixedInstancesPolicyHasBeenSet =
false;
520 bool m_minSizeHasBeenSet =
false;
523 bool m_maxSizeHasBeenSet =
false;
525 int m_desiredCapacity;
526 bool m_desiredCapacityHasBeenSet =
false;
528 int m_predictedCapacity;
529 bool m_predictedCapacityHasBeenSet =
false;
531 int m_defaultCooldown;
532 bool m_defaultCooldownHasBeenSet =
false;
535 bool m_availabilityZonesHasBeenSet =
false;
538 bool m_loadBalancerNamesHasBeenSet =
false;
541 bool m_targetGroupARNsHasBeenSet =
false;
544 bool m_healthCheckTypeHasBeenSet =
false;
546 int m_healthCheckGracePeriod;
547 bool m_healthCheckGracePeriodHasBeenSet =
false;
550 bool m_instancesHasBeenSet =
false;
553 bool m_createdTimeHasBeenSet =
false;
556 bool m_suspendedProcessesHasBeenSet =
false;
559 bool m_placementGroupHasBeenSet =
false;
562 bool m_vPCZoneIdentifierHasBeenSet =
false;
565 bool m_enabledMetricsHasBeenSet =
false;
568 bool m_statusHasBeenSet =
false;
571 bool m_tagsHasBeenSet =
false;
574 bool m_terminationPoliciesHasBeenSet =
false;
576 bool m_newInstancesProtectedFromScaleIn;
577 bool m_newInstancesProtectedFromScaleInHasBeenSet =
false;
580 bool m_serviceLinkedRoleARNHasBeenSet =
false;
582 int m_maxInstanceLifetime;
583 bool m_maxInstanceLifetimeHasBeenSet =
false;
585 bool m_capacityRebalance;
586 bool m_capacityRebalanceHasBeenSet =
false;
589 bool m_warmPoolConfigurationHasBeenSet =
false;
592 bool m_warmPoolSizeHasBeenSet =
false;
595 bool m_contextHasBeenSet =
false;
598 bool m_desiredCapacityTypeHasBeenSet =
false;
600 int m_defaultInstanceWarmup;
601 bool m_defaultInstanceWarmupHasBeenSet =
false;
604 bool m_trafficSourcesHasBeenSet =
false;
607 bool m_instanceMaintenancePolicyHasBeenSet =
false;
const Aws::String & GetDesiredCapacityType() const
void SetPlacementGroup(const char *value)
void SetContext(Aws::String &&value)
AutoScalingGroup & WithTags(Aws::Vector< TagDescription > &&value)
int GetDefaultCooldown() const
AutoScalingGroup & WithAutoScalingGroupARN(const char *value)
AutoScalingGroup & WithTargetGroupARNs(Aws::Vector< Aws::String > &&value)
AutoScalingGroup & WithWarmPoolConfiguration(WarmPoolConfiguration &&value)
AutoScalingGroup & WithCapacityRebalance(bool value)
AutoScalingGroup & AddAvailabilityZones(const char *value)
void SetInstances(Aws::Vector< Instance > &&value)
void SetCreatedTime(Aws::Utils::DateTime &&value)
AutoScalingGroup & WithPlacementGroup(Aws::String &&value)
bool DesiredCapacityTypeHasBeenSet() const
AutoScalingGroup & AddTerminationPolicies(Aws::String &&value)
bool DesiredCapacityHasBeenSet() const
AutoScalingGroup & WithAutoScalingGroupName(Aws::String &&value)
void SetTags(const Aws::Vector< TagDescription > &value)
AutoScalingGroup & AddEnabledMetrics(const EnabledMetric &value)
bool GetCapacityRebalance() const
int GetMaxInstanceLifetime() const
bool MinSizeHasBeenSet() const
AutoScalingGroup & WithInstanceMaintenancePolicy(const InstanceMaintenancePolicy &value)
void SetAutoScalingGroupName(Aws::String &&value)
AutoScalingGroup & WithStatus(const Aws::String &value)
bool TagsHasBeenSet() const
AutoScalingGroup & WithServiceLinkedRoleARN(Aws::String &&value)
void SetContext(const char *value)
AutoScalingGroup & WithInstances(Aws::Vector< Instance > &&value)
AutoScalingGroup & WithAutoScalingGroupName(const char *value)
AutoScalingGroup & AddLoadBalancerNames(Aws::String &&value)
AutoScalingGroup & WithDesiredCapacityType(const char *value)
AutoScalingGroup & WithTerminationPolicies(Aws::Vector< Aws::String > &&value)
bool DefaultInstanceWarmupHasBeenSet() const
const Aws::String & GetPlacementGroup() const
AutoScalingGroup & AddTags(TagDescription &&value)
AutoScalingGroup & AddSuspendedProcesses(SuspendedProcess &&value)
void SetWarmPoolConfiguration(const WarmPoolConfiguration &value)
void SetDesiredCapacity(int value)
AutoScalingGroup & WithContext(const char *value)
void SetServiceLinkedRoleARN(Aws::String &&value)
void SetContext(const Aws::String &value)
bool MixedInstancesPolicyHasBeenSet() const
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AutoScalingGroup & WithLoadBalancerNames(const Aws::Vector< Aws::String > &value)
void SetStatus(Aws::String &&value)
void SetWarmPoolSize(int value)
void SetMaxSize(int value)
AutoScalingGroup & WithMinSize(int value)
void SetAutoScalingGroupName(const Aws::String &value)
AutoScalingGroup & WithPlacementGroup(const char *value)
void SetNewInstancesProtectedFromScaleIn(bool value)
void SetEnabledMetrics(Aws::Vector< EnabledMetric > &&value)
const InstanceMaintenancePolicy & GetInstanceMaintenancePolicy() const
AutoScalingGroup & WithContext(const Aws::String &value)
void SetEnabledMetrics(const Aws::Vector< EnabledMetric > &value)
void SetVPCZoneIdentifier(const Aws::String &value)
bool GetNewInstancesProtectedFromScaleIn() const
AutoScalingGroup & WithTerminationPolicies(const Aws::Vector< Aws::String > &value)
void SetHealthCheckType(const Aws::String &value)
void SetLaunchConfigurationName(Aws::String &&value)
AutoScalingGroup & WithAvailabilityZones(Aws::Vector< Aws::String > &&value)
AutoScalingGroup & WithDefaultInstanceWarmup(int value)
AutoScalingGroup & WithVPCZoneIdentifier(const char *value)
AutoScalingGroup & WithWarmPoolSize(int value)
AutoScalingGroup & AddLoadBalancerNames(const char *value)
void SetServiceLinkedRoleARN(const Aws::String &value)
const LaunchTemplateSpecification & GetLaunchTemplate() const
void SetTerminationPolicies(Aws::Vector< Aws::String > &&value)
int GetWarmPoolSize() const
AutoScalingGroup & WithAutoScalingGroupName(const Aws::String &value)
void SetDesiredCapacityType(Aws::String &&value)
void SetTargetGroupARNs(const Aws::Vector< Aws::String > &value)
void SetMixedInstancesPolicy(MixedInstancesPolicy &&value)
AutoScalingGroup & AddTargetGroupARNs(const char *value)
void SetPlacementGroup(Aws::String &&value)
void SetLaunchTemplate(LaunchTemplateSpecification &&value)
AutoScalingGroup & WithInstanceMaintenancePolicy(InstanceMaintenancePolicy &&value)
void SetWarmPoolConfiguration(WarmPoolConfiguration &&value)
void SetDesiredCapacityType(const Aws::String &value)
AWS_AUTOSCALING_API AutoScalingGroup(const Aws::Utils::Xml::XmlNode &xmlNode)
AutoScalingGroup & WithDesiredCapacityType(const Aws::String &value)
AutoScalingGroup & WithPredictedCapacity(int value)
AutoScalingGroup & WithCreatedTime(const Aws::Utils::DateTime &value)
AutoScalingGroup & WithMixedInstancesPolicy(MixedInstancesPolicy &&value)
const Aws::Vector< TagDescription > & GetTags() const
void SetAutoScalingGroupName(const char *value)
bool SuspendedProcessesHasBeenSet() const
AutoScalingGroup & AddSuspendedProcesses(const SuspendedProcess &value)
void SetDefaultInstanceWarmup(int value)
bool PredictedCapacityHasBeenSet() const
void SetStatus(const Aws::String &value)
void SetServiceLinkedRoleARN(const char *value)
AutoScalingGroup & WithMaxSize(int value)
const Aws::Vector< Aws::String > & GetTerminationPolicies() const
bool AvailabilityZonesHasBeenSet() const
AutoScalingGroup & AddTrafficSources(TrafficSourceIdentifier &&value)
bool AutoScalingGroupNameHasBeenSet() const
AutoScalingGroup & WithWarmPoolConfiguration(const WarmPoolConfiguration &value)
void SetAutoScalingGroupARN(Aws::String &&value)
void SetHealthCheckGracePeriod(int value)
bool NewInstancesProtectedFromScaleInHasBeenSet() const
void SetLaunchTemplate(const LaunchTemplateSpecification &value)
AutoScalingGroup & WithSuspendedProcesses(const Aws::Vector< SuspendedProcess > &value)
AutoScalingGroup & WithMaxInstanceLifetime(int value)
void SetLaunchConfigurationName(const Aws::String &value)
const Aws::Utils::DateTime & GetCreatedTime() const
void SetVPCZoneIdentifier(Aws::String &&value)
void SetInstances(const Aws::Vector< Instance > &value)
AWS_AUTOSCALING_API AutoScalingGroup & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
bool ContextHasBeenSet() const
AutoScalingGroup & WithDesiredCapacityType(Aws::String &&value)
bool PlacementGroupHasBeenSet() const
const Aws::String & GetAutoScalingGroupName() const
AutoScalingGroup & AddTerminationPolicies(const Aws::String &value)
const WarmPoolConfiguration & GetWarmPoolConfiguration() const
bool WarmPoolConfigurationHasBeenSet() const
AutoScalingGroup & AddTrafficSources(const TrafficSourceIdentifier &value)
AutoScalingGroup & WithHealthCheckType(Aws::String &&value)
AutoScalingGroup & WithContext(Aws::String &&value)
AutoScalingGroup & WithHealthCheckType(const char *value)
AutoScalingGroup & WithVPCZoneIdentifier(Aws::String &&value)
AutoScalingGroup & WithHealthCheckGracePeriod(int value)
void SetInstanceMaintenancePolicy(const InstanceMaintenancePolicy &value)
const Aws::Vector< Aws::String > & GetLoadBalancerNames() const
AutoScalingGroup & WithLaunchConfigurationName(const Aws::String &value)
bool MaxInstanceLifetimeHasBeenSet() const
void SetPlacementGroup(const Aws::String &value)
void SetCreatedTime(const Aws::Utils::DateTime &value)
void SetMixedInstancesPolicy(const MixedInstancesPolicy &value)
AutoScalingGroup & WithVPCZoneIdentifier(const Aws::String &value)
AutoScalingGroup & AddLoadBalancerNames(const Aws::String &value)
int GetDefaultInstanceWarmup() const
void SetInstanceMaintenancePolicy(InstanceMaintenancePolicy &&value)
void SetAutoScalingGroupARN(const Aws::String &value)
bool LaunchConfigurationNameHasBeenSet() const
const Aws::String & GetContext() const
const Aws::String & GetHealthCheckType() const
AutoScalingGroup & AddInstances(Instance &&value)
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &oStream, const char *location) const
AutoScalingGroup & WithEnabledMetrics(Aws::Vector< EnabledMetric > &&value)
AutoScalingGroup & WithNewInstancesProtectedFromScaleIn(bool value)
bool TargetGroupARNsHasBeenSet() const
AutoScalingGroup & WithEnabledMetrics(const Aws::Vector< EnabledMetric > &value)
void SetTrafficSources(const Aws::Vector< TrafficSourceIdentifier > &value)
bool TrafficSourcesHasBeenSet() const
const MixedInstancesPolicy & GetMixedInstancesPolicy() const
AutoScalingGroup & WithDefaultCooldown(int value)
int GetHealthCheckGracePeriod() const
void SetTrafficSources(Aws::Vector< TrafficSourceIdentifier > &&value)
AutoScalingGroup & AddEnabledMetrics(EnabledMetric &&value)
bool WarmPoolSizeHasBeenSet() const
AutoScalingGroup & WithAutoScalingGroupARN(Aws::String &&value)
int GetDesiredCapacity() const
bool MaxSizeHasBeenSet() const
AutoScalingGroup & AddAvailabilityZones(const Aws::String &value)
AutoScalingGroup & WithStatus(Aws::String &&value)
void SetCapacityRebalance(bool value)
AutoScalingGroup & WithLoadBalancerNames(Aws::Vector< Aws::String > &&value)
AutoScalingGroup & WithMixedInstancesPolicy(const MixedInstancesPolicy &value)
const Aws::Vector< SuspendedProcess > & GetSuspendedProcesses() const
bool DefaultCooldownHasBeenSet() const
AutoScalingGroup & AddTargetGroupARNs(Aws::String &&value)
AutoScalingGroup & WithSuspendedProcesses(Aws::Vector< SuspendedProcess > &&value)
AutoScalingGroup & AddTargetGroupARNs(const Aws::String &value)
const Aws::Vector< Instance > & GetInstances() const
void SetAvailabilityZones(const Aws::Vector< Aws::String > &value)
AutoScalingGroup & WithAutoScalingGroupARN(const Aws::String &value)
const Aws::String & GetServiceLinkedRoleARN() const
bool LaunchTemplateHasBeenSet() const
bool StatusHasBeenSet() const
AutoScalingGroup & WithDesiredCapacity(int value)
AutoScalingGroup & AddInstances(const Instance &value)
AutoScalingGroup & WithLaunchConfigurationName(const char *value)
const Aws::String & GetLaunchConfigurationName() const
bool CreatedTimeHasBeenSet() const
bool EnabledMetricsHasBeenSet() const
AutoScalingGroup & WithLaunchTemplate(const LaunchTemplateSpecification &value)
void SetLaunchConfigurationName(const char *value)
AutoScalingGroup & WithStatus(const char *value)
const Aws::Vector< TrafficSourceIdentifier > & GetTrafficSources() const
void SetAutoScalingGroupARN(const char *value)
void SetMaxInstanceLifetime(int value)
void SetDefaultCooldown(int value)
void SetDesiredCapacityType(const char *value)
bool AutoScalingGroupARNHasBeenSet() const
void SetVPCZoneIdentifier(const char *value)
AutoScalingGroup & WithHealthCheckType(const Aws::String &value)
void SetMinSize(int value)
void SetHealthCheckType(Aws::String &&value)
const Aws::Vector< EnabledMetric > & GetEnabledMetrics() const
bool TerminationPoliciesHasBeenSet() const
AutoScalingGroup & WithTags(const Aws::Vector< TagDescription > &value)
AutoScalingGroup & WithInstances(const Aws::Vector< Instance > &value)
AutoScalingGroup & WithTargetGroupARNs(const Aws::Vector< Aws::String > &value)
void SetLoadBalancerNames(Aws::Vector< Aws::String > &&value)
AutoScalingGroup & WithTrafficSources(Aws::Vector< TrafficSourceIdentifier > &&value)
AutoScalingGroup & WithLaunchTemplate(LaunchTemplateSpecification &&value)
const Aws::String & GetVPCZoneIdentifier() const
const Aws::String & GetStatus() const
void SetTargetGroupARNs(Aws::Vector< Aws::String > &&value)
AutoScalingGroup & WithLaunchConfigurationName(Aws::String &&value)
bool HealthCheckGracePeriodHasBeenSet() const
bool VPCZoneIdentifierHasBeenSet() const
AutoScalingGroup & WithAvailabilityZones(const Aws::Vector< Aws::String > &value)
bool ServiceLinkedRoleARNHasBeenSet() const
void SetPredictedCapacity(int value)
AutoScalingGroup & WithCreatedTime(Aws::Utils::DateTime &&value)
void SetAvailabilityZones(Aws::Vector< Aws::String > &&value)
int GetPredictedCapacity() const
bool InstanceMaintenancePolicyHasBeenSet() const
AutoScalingGroup & WithServiceLinkedRoleARN(const char *value)
AutoScalingGroup & WithPlacementGroup(const Aws::String &value)
void SetSuspendedProcesses(const Aws::Vector< SuspendedProcess > &value)
bool LoadBalancerNamesHasBeenSet() const
AutoScalingGroup & WithTrafficSources(const Aws::Vector< TrafficSourceIdentifier > &value)
bool CapacityRebalanceHasBeenSet() const
void SetSuspendedProcesses(Aws::Vector< SuspendedProcess > &&value)
const Aws::Vector< Aws::String > & GetAvailabilityZones() const
void SetStatus(const char *value)
bool HealthCheckTypeHasBeenSet() const
AutoScalingGroup & WithServiceLinkedRoleARN(const Aws::String &value)
void SetTags(Aws::Vector< TagDescription > &&value)
void SetLoadBalancerNames(const Aws::Vector< Aws::String > &value)
const Aws::String & GetAutoScalingGroupARN() const
void SetHealthCheckType(const char *value)
bool InstancesHasBeenSet() const
AutoScalingGroup & AddAvailabilityZones(Aws::String &&value)
const Aws::Vector< Aws::String > & GetTargetGroupARNs() const
AutoScalingGroup & AddTerminationPolicies(const char *value)
AWS_AUTOSCALING_API AutoScalingGroup()
void SetTerminationPolicies(const Aws::Vector< Aws::String > &value)
AutoScalingGroup & AddTags(const TagDescription &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream