/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #include #include #include #include #include using namespace Aws::Utils::Xml; using namespace Aws::Utils; namespace Aws { namespace EC2 { namespace Model { InstanceMonitoring::InstanceMonitoring() : m_instanceIdHasBeenSet(false), m_monitoringHasBeenSet(false) { } InstanceMonitoring::InstanceMonitoring(const XmlNode& xmlNode) : m_instanceIdHasBeenSet(false), m_monitoringHasBeenSet(false) { *this = xmlNode; } InstanceMonitoring& InstanceMonitoring::operator =(const XmlNode& xmlNode) { XmlNode resultNode = xmlNode; if(!resultNode.IsNull()) { XmlNode instanceIdNode = resultNode.FirstChild("instanceId"); if(!instanceIdNode.IsNull()) { m_instanceId = Aws::Utils::Xml::DecodeEscapedXmlText(instanceIdNode.GetText()); m_instanceIdHasBeenSet = true; } XmlNode monitoringNode = resultNode.FirstChild("monitoring"); if(!monitoringNode.IsNull()) { m_monitoring = monitoringNode; m_monitoringHasBeenSet = true; } } return *this; } void InstanceMonitoring::OutputToStream(Aws::OStream& oStream, const char* location, unsigned index, const char* locationValue) const { if(m_instanceIdHasBeenSet) { oStream << location << index << locationValue << ".InstanceId=" << StringUtils::URLEncode(m_instanceId.c_str()) << "&"; } if(m_monitoringHasBeenSet) { Aws::StringStream monitoringLocationAndMemberSs; monitoringLocationAndMemberSs << location << index << locationValue << ".Monitoring"; m_monitoring.OutputToStream(oStream, monitoringLocationAndMemberSs.str().c_str()); } } void InstanceMonitoring::OutputToStream(Aws::OStream& oStream, const char* location) const { if(m_instanceIdHasBeenSet) { oStream << location << ".InstanceId=" << StringUtils::URLEncode(m_instanceId.c_str()) << "&"; } if(m_monitoringHasBeenSet) { Aws::String monitoringLocationAndMember(location); monitoringLocationAndMember += ".Monitoring"; m_monitoring.OutputToStream(oStream, monitoringLocationAndMember.c_str()); } } } // namespace Model } // namespace EC2 } // namespace Aws