This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
pxz-hos-client-cpp-module/support/aws-sdk-cpp-master/aws-cpp-sdk-autoscaling/source/model/AutoScalingGroup.cpp

646 lines
23 KiB
C++

/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#include <aws/autoscaling/model/AutoScalingGroup.h>
#include <aws/core/utils/xml/XmlSerializer.h>
#include <aws/core/utils/StringUtils.h>
#include <aws/core/utils/memory/stl/AWSStringStream.h>
#include <utility>
using namespace Aws::Utils::Xml;
using namespace Aws::Utils;
namespace Aws
{
namespace AutoScaling
{
namespace Model
{
AutoScalingGroup::AutoScalingGroup() :
m_autoScalingGroupNameHasBeenSet(false),
m_autoScalingGroupARNHasBeenSet(false),
m_launchConfigurationNameHasBeenSet(false),
m_launchTemplateHasBeenSet(false),
m_mixedInstancesPolicyHasBeenSet(false),
m_minSize(0),
m_minSizeHasBeenSet(false),
m_maxSize(0),
m_maxSizeHasBeenSet(false),
m_desiredCapacity(0),
m_desiredCapacityHasBeenSet(false),
m_defaultCooldown(0),
m_defaultCooldownHasBeenSet(false),
m_availabilityZonesHasBeenSet(false),
m_loadBalancerNamesHasBeenSet(false),
m_targetGroupARNsHasBeenSet(false),
m_healthCheckTypeHasBeenSet(false),
m_healthCheckGracePeriod(0),
m_healthCheckGracePeriodHasBeenSet(false),
m_instancesHasBeenSet(false),
m_createdTimeHasBeenSet(false),
m_suspendedProcessesHasBeenSet(false),
m_placementGroupHasBeenSet(false),
m_vPCZoneIdentifierHasBeenSet(false),
m_enabledMetricsHasBeenSet(false),
m_statusHasBeenSet(false),
m_tagsHasBeenSet(false),
m_terminationPoliciesHasBeenSet(false),
m_newInstancesProtectedFromScaleIn(false),
m_newInstancesProtectedFromScaleInHasBeenSet(false),
m_serviceLinkedRoleARNHasBeenSet(false),
m_maxInstanceLifetime(0),
m_maxInstanceLifetimeHasBeenSet(false)
{
}
AutoScalingGroup::AutoScalingGroup(const XmlNode& xmlNode) :
m_autoScalingGroupNameHasBeenSet(false),
m_autoScalingGroupARNHasBeenSet(false),
m_launchConfigurationNameHasBeenSet(false),
m_launchTemplateHasBeenSet(false),
m_mixedInstancesPolicyHasBeenSet(false),
m_minSize(0),
m_minSizeHasBeenSet(false),
m_maxSize(0),
m_maxSizeHasBeenSet(false),
m_desiredCapacity(0),
m_desiredCapacityHasBeenSet(false),
m_defaultCooldown(0),
m_defaultCooldownHasBeenSet(false),
m_availabilityZonesHasBeenSet(false),
m_loadBalancerNamesHasBeenSet(false),
m_targetGroupARNsHasBeenSet(false),
m_healthCheckTypeHasBeenSet(false),
m_healthCheckGracePeriod(0),
m_healthCheckGracePeriodHasBeenSet(false),
m_instancesHasBeenSet(false),
m_createdTimeHasBeenSet(false),
m_suspendedProcessesHasBeenSet(false),
m_placementGroupHasBeenSet(false),
m_vPCZoneIdentifierHasBeenSet(false),
m_enabledMetricsHasBeenSet(false),
m_statusHasBeenSet(false),
m_tagsHasBeenSet(false),
m_terminationPoliciesHasBeenSet(false),
m_newInstancesProtectedFromScaleIn(false),
m_newInstancesProtectedFromScaleInHasBeenSet(false),
m_serviceLinkedRoleARNHasBeenSet(false),
m_maxInstanceLifetime(0),
m_maxInstanceLifetimeHasBeenSet(false)
{
*this = xmlNode;
}
AutoScalingGroup& AutoScalingGroup::operator =(const XmlNode& xmlNode)
{
XmlNode resultNode = xmlNode;
if(!resultNode.IsNull())
{
XmlNode autoScalingGroupNameNode = resultNode.FirstChild("AutoScalingGroupName");
if(!autoScalingGroupNameNode.IsNull())
{
m_autoScalingGroupName = Aws::Utils::Xml::DecodeEscapedXmlText(autoScalingGroupNameNode.GetText());
m_autoScalingGroupNameHasBeenSet = true;
}
XmlNode autoScalingGroupARNNode = resultNode.FirstChild("AutoScalingGroupARN");
if(!autoScalingGroupARNNode.IsNull())
{
m_autoScalingGroupARN = Aws::Utils::Xml::DecodeEscapedXmlText(autoScalingGroupARNNode.GetText());
m_autoScalingGroupARNHasBeenSet = true;
}
XmlNode launchConfigurationNameNode = resultNode.FirstChild("LaunchConfigurationName");
if(!launchConfigurationNameNode.IsNull())
{
m_launchConfigurationName = Aws::Utils::Xml::DecodeEscapedXmlText(launchConfigurationNameNode.GetText());
m_launchConfigurationNameHasBeenSet = true;
}
XmlNode launchTemplateNode = resultNode.FirstChild("LaunchTemplate");
if(!launchTemplateNode.IsNull())
{
m_launchTemplate = launchTemplateNode;
m_launchTemplateHasBeenSet = true;
}
XmlNode mixedInstancesPolicyNode = resultNode.FirstChild("MixedInstancesPolicy");
if(!mixedInstancesPolicyNode.IsNull())
{
m_mixedInstancesPolicy = mixedInstancesPolicyNode;
m_mixedInstancesPolicyHasBeenSet = true;
}
XmlNode minSizeNode = resultNode.FirstChild("MinSize");
if(!minSizeNode.IsNull())
{
m_minSize = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(minSizeNode.GetText()).c_str()).c_str());
m_minSizeHasBeenSet = true;
}
XmlNode maxSizeNode = resultNode.FirstChild("MaxSize");
if(!maxSizeNode.IsNull())
{
m_maxSize = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(maxSizeNode.GetText()).c_str()).c_str());
m_maxSizeHasBeenSet = true;
}
XmlNode desiredCapacityNode = resultNode.FirstChild("DesiredCapacity");
if(!desiredCapacityNode.IsNull())
{
m_desiredCapacity = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(desiredCapacityNode.GetText()).c_str()).c_str());
m_desiredCapacityHasBeenSet = true;
}
XmlNode defaultCooldownNode = resultNode.FirstChild("DefaultCooldown");
if(!defaultCooldownNode.IsNull())
{
m_defaultCooldown = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(defaultCooldownNode.GetText()).c_str()).c_str());
m_defaultCooldownHasBeenSet = true;
}
XmlNode availabilityZonesNode = resultNode.FirstChild("AvailabilityZones");
if(!availabilityZonesNode.IsNull())
{
XmlNode availabilityZonesMember = availabilityZonesNode.FirstChild("member");
while(!availabilityZonesMember.IsNull())
{
m_availabilityZones.push_back(availabilityZonesMember.GetText());
availabilityZonesMember = availabilityZonesMember.NextNode("member");
}
m_availabilityZonesHasBeenSet = true;
}
XmlNode loadBalancerNamesNode = resultNode.FirstChild("LoadBalancerNames");
if(!loadBalancerNamesNode.IsNull())
{
XmlNode loadBalancerNamesMember = loadBalancerNamesNode.FirstChild("member");
while(!loadBalancerNamesMember.IsNull())
{
m_loadBalancerNames.push_back(loadBalancerNamesMember.GetText());
loadBalancerNamesMember = loadBalancerNamesMember.NextNode("member");
}
m_loadBalancerNamesHasBeenSet = true;
}
XmlNode targetGroupARNsNode = resultNode.FirstChild("TargetGroupARNs");
if(!targetGroupARNsNode.IsNull())
{
XmlNode targetGroupARNsMember = targetGroupARNsNode.FirstChild("member");
while(!targetGroupARNsMember.IsNull())
{
m_targetGroupARNs.push_back(targetGroupARNsMember.GetText());
targetGroupARNsMember = targetGroupARNsMember.NextNode("member");
}
m_targetGroupARNsHasBeenSet = true;
}
XmlNode healthCheckTypeNode = resultNode.FirstChild("HealthCheckType");
if(!healthCheckTypeNode.IsNull())
{
m_healthCheckType = Aws::Utils::Xml::DecodeEscapedXmlText(healthCheckTypeNode.GetText());
m_healthCheckTypeHasBeenSet = true;
}
XmlNode healthCheckGracePeriodNode = resultNode.FirstChild("HealthCheckGracePeriod");
if(!healthCheckGracePeriodNode.IsNull())
{
m_healthCheckGracePeriod = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(healthCheckGracePeriodNode.GetText()).c_str()).c_str());
m_healthCheckGracePeriodHasBeenSet = true;
}
XmlNode instancesNode = resultNode.FirstChild("Instances");
if(!instancesNode.IsNull())
{
XmlNode instancesMember = instancesNode.FirstChild("member");
while(!instancesMember.IsNull())
{
m_instances.push_back(instancesMember);
instancesMember = instancesMember.NextNode("member");
}
m_instancesHasBeenSet = true;
}
XmlNode createdTimeNode = resultNode.FirstChild("CreatedTime");
if(!createdTimeNode.IsNull())
{
m_createdTime = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(createdTimeNode.GetText()).c_str()).c_str(), DateFormat::ISO_8601);
m_createdTimeHasBeenSet = true;
}
XmlNode suspendedProcessesNode = resultNode.FirstChild("SuspendedProcesses");
if(!suspendedProcessesNode.IsNull())
{
XmlNode suspendedProcessesMember = suspendedProcessesNode.FirstChild("member");
while(!suspendedProcessesMember.IsNull())
{
m_suspendedProcesses.push_back(suspendedProcessesMember);
suspendedProcessesMember = suspendedProcessesMember.NextNode("member");
}
m_suspendedProcessesHasBeenSet = true;
}
XmlNode placementGroupNode = resultNode.FirstChild("PlacementGroup");
if(!placementGroupNode.IsNull())
{
m_placementGroup = Aws::Utils::Xml::DecodeEscapedXmlText(placementGroupNode.GetText());
m_placementGroupHasBeenSet = true;
}
XmlNode vPCZoneIdentifierNode = resultNode.FirstChild("VPCZoneIdentifier");
if(!vPCZoneIdentifierNode.IsNull())
{
m_vPCZoneIdentifier = Aws::Utils::Xml::DecodeEscapedXmlText(vPCZoneIdentifierNode.GetText());
m_vPCZoneIdentifierHasBeenSet = true;
}
XmlNode enabledMetricsNode = resultNode.FirstChild("EnabledMetrics");
if(!enabledMetricsNode.IsNull())
{
XmlNode enabledMetricsMember = enabledMetricsNode.FirstChild("member");
while(!enabledMetricsMember.IsNull())
{
m_enabledMetrics.push_back(enabledMetricsMember);
enabledMetricsMember = enabledMetricsMember.NextNode("member");
}
m_enabledMetricsHasBeenSet = true;
}
XmlNode statusNode = resultNode.FirstChild("Status");
if(!statusNode.IsNull())
{
m_status = Aws::Utils::Xml::DecodeEscapedXmlText(statusNode.GetText());
m_statusHasBeenSet = true;
}
XmlNode tagsNode = resultNode.FirstChild("Tags");
if(!tagsNode.IsNull())
{
XmlNode tagsMember = tagsNode.FirstChild("member");
while(!tagsMember.IsNull())
{
m_tags.push_back(tagsMember);
tagsMember = tagsMember.NextNode("member");
}
m_tagsHasBeenSet = true;
}
XmlNode terminationPoliciesNode = resultNode.FirstChild("TerminationPolicies");
if(!terminationPoliciesNode.IsNull())
{
XmlNode terminationPoliciesMember = terminationPoliciesNode.FirstChild("member");
while(!terminationPoliciesMember.IsNull())
{
m_terminationPolicies.push_back(terminationPoliciesMember.GetText());
terminationPoliciesMember = terminationPoliciesMember.NextNode("member");
}
m_terminationPoliciesHasBeenSet = true;
}
XmlNode newInstancesProtectedFromScaleInNode = resultNode.FirstChild("NewInstancesProtectedFromScaleIn");
if(!newInstancesProtectedFromScaleInNode.IsNull())
{
m_newInstancesProtectedFromScaleIn = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(newInstancesProtectedFromScaleInNode.GetText()).c_str()).c_str());
m_newInstancesProtectedFromScaleInHasBeenSet = true;
}
XmlNode serviceLinkedRoleARNNode = resultNode.FirstChild("ServiceLinkedRoleARN");
if(!serviceLinkedRoleARNNode.IsNull())
{
m_serviceLinkedRoleARN = Aws::Utils::Xml::DecodeEscapedXmlText(serviceLinkedRoleARNNode.GetText());
m_serviceLinkedRoleARNHasBeenSet = true;
}
XmlNode maxInstanceLifetimeNode = resultNode.FirstChild("MaxInstanceLifetime");
if(!maxInstanceLifetimeNode.IsNull())
{
m_maxInstanceLifetime = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(maxInstanceLifetimeNode.GetText()).c_str()).c_str());
m_maxInstanceLifetimeHasBeenSet = true;
}
}
return *this;
}
void AutoScalingGroup::OutputToStream(Aws::OStream& oStream, const char* location, unsigned index, const char* locationValue) const
{
if(m_autoScalingGroupNameHasBeenSet)
{
oStream << location << index << locationValue << ".AutoScalingGroupName=" << StringUtils::URLEncode(m_autoScalingGroupName.c_str()) << "&";
}
if(m_autoScalingGroupARNHasBeenSet)
{
oStream << location << index << locationValue << ".AutoScalingGroupARN=" << StringUtils::URLEncode(m_autoScalingGroupARN.c_str()) << "&";
}
if(m_launchConfigurationNameHasBeenSet)
{
oStream << location << index << locationValue << ".LaunchConfigurationName=" << StringUtils::URLEncode(m_launchConfigurationName.c_str()) << "&";
}
if(m_launchTemplateHasBeenSet)
{
Aws::StringStream launchTemplateLocationAndMemberSs;
launchTemplateLocationAndMemberSs << location << index << locationValue << ".LaunchTemplate";
m_launchTemplate.OutputToStream(oStream, launchTemplateLocationAndMemberSs.str().c_str());
}
if(m_mixedInstancesPolicyHasBeenSet)
{
Aws::StringStream mixedInstancesPolicyLocationAndMemberSs;
mixedInstancesPolicyLocationAndMemberSs << location << index << locationValue << ".MixedInstancesPolicy";
m_mixedInstancesPolicy.OutputToStream(oStream, mixedInstancesPolicyLocationAndMemberSs.str().c_str());
}
if(m_minSizeHasBeenSet)
{
oStream << location << index << locationValue << ".MinSize=" << m_minSize << "&";
}
if(m_maxSizeHasBeenSet)
{
oStream << location << index << locationValue << ".MaxSize=" << m_maxSize << "&";
}
if(m_desiredCapacityHasBeenSet)
{
oStream << location << index << locationValue << ".DesiredCapacity=" << m_desiredCapacity << "&";
}
if(m_defaultCooldownHasBeenSet)
{
oStream << location << index << locationValue << ".DefaultCooldown=" << m_defaultCooldown << "&";
}
if(m_availabilityZonesHasBeenSet)
{
unsigned availabilityZonesIdx = 1;
for(auto& item : m_availabilityZones)
{
oStream << location << index << locationValue << ".AvailabilityZones.member." << availabilityZonesIdx++ << "=" << StringUtils::URLEncode(item.c_str()) << "&";
}
}
if(m_loadBalancerNamesHasBeenSet)
{
unsigned loadBalancerNamesIdx = 1;
for(auto& item : m_loadBalancerNames)
{
oStream << location << index << locationValue << ".LoadBalancerNames.member." << loadBalancerNamesIdx++ << "=" << StringUtils::URLEncode(item.c_str()) << "&";
}
}
if(m_targetGroupARNsHasBeenSet)
{
unsigned targetGroupARNsIdx = 1;
for(auto& item : m_targetGroupARNs)
{
oStream << location << index << locationValue << ".TargetGroupARNs.member." << targetGroupARNsIdx++ << "=" << StringUtils::URLEncode(item.c_str()) << "&";
}
}
if(m_healthCheckTypeHasBeenSet)
{
oStream << location << index << locationValue << ".HealthCheckType=" << StringUtils::URLEncode(m_healthCheckType.c_str()) << "&";
}
if(m_healthCheckGracePeriodHasBeenSet)
{
oStream << location << index << locationValue << ".HealthCheckGracePeriod=" << m_healthCheckGracePeriod << "&";
}
if(m_instancesHasBeenSet)
{
unsigned instancesIdx = 1;
for(auto& item : m_instances)
{
Aws::StringStream instancesSs;
instancesSs << location << index << locationValue << ".Instances.member." << instancesIdx++;
item.OutputToStream(oStream, instancesSs.str().c_str());
}
}
if(m_createdTimeHasBeenSet)
{
oStream << location << index << locationValue << ".CreatedTime=" << StringUtils::URLEncode(m_createdTime.ToGmtString(DateFormat::ISO_8601).c_str()) << "&";
}
if(m_suspendedProcessesHasBeenSet)
{
unsigned suspendedProcessesIdx = 1;
for(auto& item : m_suspendedProcesses)
{
Aws::StringStream suspendedProcessesSs;
suspendedProcessesSs << location << index << locationValue << ".SuspendedProcesses.member." << suspendedProcessesIdx++;
item.OutputToStream(oStream, suspendedProcessesSs.str().c_str());
}
}
if(m_placementGroupHasBeenSet)
{
oStream << location << index << locationValue << ".PlacementGroup=" << StringUtils::URLEncode(m_placementGroup.c_str()) << "&";
}
if(m_vPCZoneIdentifierHasBeenSet)
{
oStream << location << index << locationValue << ".VPCZoneIdentifier=" << StringUtils::URLEncode(m_vPCZoneIdentifier.c_str()) << "&";
}
if(m_enabledMetricsHasBeenSet)
{
unsigned enabledMetricsIdx = 1;
for(auto& item : m_enabledMetrics)
{
Aws::StringStream enabledMetricsSs;
enabledMetricsSs << location << index << locationValue << ".EnabledMetrics.member." << enabledMetricsIdx++;
item.OutputToStream(oStream, enabledMetricsSs.str().c_str());
}
}
if(m_statusHasBeenSet)
{
oStream << location << index << locationValue << ".Status=" << StringUtils::URLEncode(m_status.c_str()) << "&";
}
if(m_tagsHasBeenSet)
{
unsigned tagsIdx = 1;
for(auto& item : m_tags)
{
Aws::StringStream tagsSs;
tagsSs << location << index << locationValue << ".Tags.member." << tagsIdx++;
item.OutputToStream(oStream, tagsSs.str().c_str());
}
}
if(m_terminationPoliciesHasBeenSet)
{
unsigned terminationPoliciesIdx = 1;
for(auto& item : m_terminationPolicies)
{
oStream << location << index << locationValue << ".TerminationPolicies.member." << terminationPoliciesIdx++ << "=" << StringUtils::URLEncode(item.c_str()) << "&";
}
}
if(m_newInstancesProtectedFromScaleInHasBeenSet)
{
oStream << location << index << locationValue << ".NewInstancesProtectedFromScaleIn=" << std::boolalpha << m_newInstancesProtectedFromScaleIn << "&";
}
if(m_serviceLinkedRoleARNHasBeenSet)
{
oStream << location << index << locationValue << ".ServiceLinkedRoleARN=" << StringUtils::URLEncode(m_serviceLinkedRoleARN.c_str()) << "&";
}
if(m_maxInstanceLifetimeHasBeenSet)
{
oStream << location << index << locationValue << ".MaxInstanceLifetime=" << m_maxInstanceLifetime << "&";
}
}
void AutoScalingGroup::OutputToStream(Aws::OStream& oStream, const char* location) const
{
if(m_autoScalingGroupNameHasBeenSet)
{
oStream << location << ".AutoScalingGroupName=" << StringUtils::URLEncode(m_autoScalingGroupName.c_str()) << "&";
}
if(m_autoScalingGroupARNHasBeenSet)
{
oStream << location << ".AutoScalingGroupARN=" << StringUtils::URLEncode(m_autoScalingGroupARN.c_str()) << "&";
}
if(m_launchConfigurationNameHasBeenSet)
{
oStream << location << ".LaunchConfigurationName=" << StringUtils::URLEncode(m_launchConfigurationName.c_str()) << "&";
}
if(m_launchTemplateHasBeenSet)
{
Aws::String launchTemplateLocationAndMember(location);
launchTemplateLocationAndMember += ".LaunchTemplate";
m_launchTemplate.OutputToStream(oStream, launchTemplateLocationAndMember.c_str());
}
if(m_mixedInstancesPolicyHasBeenSet)
{
Aws::String mixedInstancesPolicyLocationAndMember(location);
mixedInstancesPolicyLocationAndMember += ".MixedInstancesPolicy";
m_mixedInstancesPolicy.OutputToStream(oStream, mixedInstancesPolicyLocationAndMember.c_str());
}
if(m_minSizeHasBeenSet)
{
oStream << location << ".MinSize=" << m_minSize << "&";
}
if(m_maxSizeHasBeenSet)
{
oStream << location << ".MaxSize=" << m_maxSize << "&";
}
if(m_desiredCapacityHasBeenSet)
{
oStream << location << ".DesiredCapacity=" << m_desiredCapacity << "&";
}
if(m_defaultCooldownHasBeenSet)
{
oStream << location << ".DefaultCooldown=" << m_defaultCooldown << "&";
}
if(m_availabilityZonesHasBeenSet)
{
unsigned availabilityZonesIdx = 1;
for(auto& item : m_availabilityZones)
{
oStream << location << ".AvailabilityZones.member." << availabilityZonesIdx++ << "=" << StringUtils::URLEncode(item.c_str()) << "&";
}
}
if(m_loadBalancerNamesHasBeenSet)
{
unsigned loadBalancerNamesIdx = 1;
for(auto& item : m_loadBalancerNames)
{
oStream << location << ".LoadBalancerNames.member." << loadBalancerNamesIdx++ << "=" << StringUtils::URLEncode(item.c_str()) << "&";
}
}
if(m_targetGroupARNsHasBeenSet)
{
unsigned targetGroupARNsIdx = 1;
for(auto& item : m_targetGroupARNs)
{
oStream << location << ".TargetGroupARNs.member." << targetGroupARNsIdx++ << "=" << StringUtils::URLEncode(item.c_str()) << "&";
}
}
if(m_healthCheckTypeHasBeenSet)
{
oStream << location << ".HealthCheckType=" << StringUtils::URLEncode(m_healthCheckType.c_str()) << "&";
}
if(m_healthCheckGracePeriodHasBeenSet)
{
oStream << location << ".HealthCheckGracePeriod=" << m_healthCheckGracePeriod << "&";
}
if(m_instancesHasBeenSet)
{
unsigned instancesIdx = 1;
for(auto& item : m_instances)
{
Aws::StringStream instancesSs;
instancesSs << location << ".Instances.member." << instancesIdx++;
item.OutputToStream(oStream, instancesSs.str().c_str());
}
}
if(m_createdTimeHasBeenSet)
{
oStream << location << ".CreatedTime=" << StringUtils::URLEncode(m_createdTime.ToGmtString(DateFormat::ISO_8601).c_str()) << "&";
}
if(m_suspendedProcessesHasBeenSet)
{
unsigned suspendedProcessesIdx = 1;
for(auto& item : m_suspendedProcesses)
{
Aws::StringStream suspendedProcessesSs;
suspendedProcessesSs << location << ".SuspendedProcesses.member." << suspendedProcessesIdx++;
item.OutputToStream(oStream, suspendedProcessesSs.str().c_str());
}
}
if(m_placementGroupHasBeenSet)
{
oStream << location << ".PlacementGroup=" << StringUtils::URLEncode(m_placementGroup.c_str()) << "&";
}
if(m_vPCZoneIdentifierHasBeenSet)
{
oStream << location << ".VPCZoneIdentifier=" << StringUtils::URLEncode(m_vPCZoneIdentifier.c_str()) << "&";
}
if(m_enabledMetricsHasBeenSet)
{
unsigned enabledMetricsIdx = 1;
for(auto& item : m_enabledMetrics)
{
Aws::StringStream enabledMetricsSs;
enabledMetricsSs << location << ".EnabledMetrics.member." << enabledMetricsIdx++;
item.OutputToStream(oStream, enabledMetricsSs.str().c_str());
}
}
if(m_statusHasBeenSet)
{
oStream << location << ".Status=" << StringUtils::URLEncode(m_status.c_str()) << "&";
}
if(m_tagsHasBeenSet)
{
unsigned tagsIdx = 1;
for(auto& item : m_tags)
{
Aws::StringStream tagsSs;
tagsSs << location << ".Tags.member." << tagsIdx++;
item.OutputToStream(oStream, tagsSs.str().c_str());
}
}
if(m_terminationPoliciesHasBeenSet)
{
unsigned terminationPoliciesIdx = 1;
for(auto& item : m_terminationPolicies)
{
oStream << location << ".TerminationPolicies.member." << terminationPoliciesIdx++ << "=" << StringUtils::URLEncode(item.c_str()) << "&";
}
}
if(m_newInstancesProtectedFromScaleInHasBeenSet)
{
oStream << location << ".NewInstancesProtectedFromScaleIn=" << std::boolalpha << m_newInstancesProtectedFromScaleIn << "&";
}
if(m_serviceLinkedRoleARNHasBeenSet)
{
oStream << location << ".ServiceLinkedRoleARN=" << StringUtils::URLEncode(m_serviceLinkedRoleARN.c_str()) << "&";
}
if(m_maxInstanceLifetimeHasBeenSet)
{
oStream << location << ".MaxInstanceLifetime=" << m_maxInstanceLifetime << "&";
}
}
} // namespace Model
} // namespace AutoScaling
} // namespace Aws