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/LifecycleState.h>
11#include <aws/autoscaling/model/LaunchTemplateSpecification.h>
50 template<
typename InstanceIdT = Aws::String>
51 void SetInstanceId(InstanceIdT&& value) { m_instanceIdHasBeenSet =
true; m_instanceId = std::forward<InstanceIdT>(value); }
52 template<
typename InstanceIdT = Aws::String>
62 template<
typename InstanceTypeT = Aws::String>
63 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet =
true; m_instanceType = std::forward<InstanceTypeT>(value); }
64 template<
typename InstanceTypeT = Aws::String>
74 template<
typename AvailabilityZoneT = Aws::String>
75 void SetAvailabilityZone(AvailabilityZoneT&& value) { m_availabilityZoneHasBeenSet =
true; m_availabilityZone = std::forward<AvailabilityZoneT>(value); }
76 template<
typename AvailabilityZoneT = Aws::String>
103 template<
typename HealthStatusT = Aws::String>
104 void SetHealthStatus(HealthStatusT&& value) { m_healthStatusHasBeenSet =
true; m_healthStatus = std::forward<HealthStatusT>(value); }
105 template<
typename HealthStatusT = Aws::String>
115 template<
typename LaunchConfigurationNameT = Aws::String>
116 void SetLaunchConfigurationName(LaunchConfigurationNameT&& value) { m_launchConfigurationNameHasBeenSet =
true; m_launchConfigurationName = std::forward<LaunchConfigurationNameT>(value); }
117 template<
typename LaunchConfigurationNameT = Aws::String>
127 template<
typename LaunchTemplateT = LaunchTemplateSpecification>
128 void SetLaunchTemplate(LaunchTemplateT&& value) { m_launchTemplateHasBeenSet =
true; m_launchTemplate = std::forward<LaunchTemplateT>(value); }
129 template<
typename LaunchTemplateT = LaunchTemplateSpecification>
151 template<
typename WeightedCapacityT = Aws::String>
152 void SetWeightedCapacity(WeightedCapacityT&& value) { m_weightedCapacityHasBeenSet =
true; m_weightedCapacity = std::forward<WeightedCapacityT>(value); }
153 template<
typename WeightedCapacityT = Aws::String>
159 bool m_instanceIdHasBeenSet =
false;
162 bool m_instanceTypeHasBeenSet =
false;
165 bool m_availabilityZoneHasBeenSet =
false;
168 bool m_lifecycleStateHasBeenSet =
false;
171 bool m_healthStatusHasBeenSet =
false;
174 bool m_launchConfigurationNameHasBeenSet =
false;
176 LaunchTemplateSpecification m_launchTemplate;
177 bool m_launchTemplateHasBeenSet =
false;
179 bool m_protectedFromScaleIn{
false};
180 bool m_protectedFromScaleInHasBeenSet =
false;
183 bool m_weightedCapacityHasBeenSet =
false;
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetAvailabilityZone(AvailabilityZoneT &&value)
const Aws::String & GetLaunchConfigurationName() const
Instance & WithAvailabilityZone(AvailabilityZoneT &&value)
void SetProtectedFromScaleIn(bool value)
void SetWeightedCapacity(WeightedCapacityT &&value)
void SetInstanceId(InstanceIdT &&value)
bool InstanceIdHasBeenSet() const
const Aws::String & GetInstanceType() const
bool LifecycleStateHasBeenSet() const
const Aws::String & GetWeightedCapacity() const
Instance & WithProtectedFromScaleIn(bool value)
Instance & WithLifecycleState(LifecycleState value)
Instance & WithInstanceType(InstanceTypeT &&value)
AWS_AUTOSCALING_API Instance & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetInstanceId() const
bool LaunchTemplateHasBeenSet() const
bool AvailabilityZoneHasBeenSet() const
bool HealthStatusHasBeenSet() const
Instance & WithLaunchConfigurationName(LaunchConfigurationNameT &&value)
LifecycleState GetLifecycleState() const
bool LaunchConfigurationNameHasBeenSet() const
void SetLifecycleState(LifecycleState value)
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetInstanceType(InstanceTypeT &&value)
bool GetProtectedFromScaleIn() const
const Aws::String & GetAvailabilityZone() const
Instance & WithLaunchTemplate(LaunchTemplateT &&value)
void SetLaunchTemplate(LaunchTemplateT &&value)
bool InstanceTypeHasBeenSet() const
AWS_AUTOSCALING_API Instance()=default
Instance & WithInstanceId(InstanceIdT &&value)
Instance & WithWeightedCapacity(WeightedCapacityT &&value)
void SetHealthStatus(HealthStatusT &&value)
void SetLaunchConfigurationName(LaunchConfigurationNameT &&value)
const LaunchTemplateSpecification & GetLaunchTemplate() const
AWS_AUTOSCALING_API Instance(const Aws::Utils::Xml::XmlNode &xmlNode)
bool ProtectedFromScaleInHasBeenSet() const
const Aws::String & GetHealthStatus() const
Instance & WithHealthStatus(HealthStatusT &&value)
bool WeightedCapacityHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream