1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #include <aws/route53/model/ListResourceRecordSetsResult.h> 7 #include <aws/core/utils/xml/XmlSerializer.h> 8 #include <aws/core/AmazonWebServiceResult.h> 9 #include <aws/core/utils/StringUtils.h> 10 11 #include <utility> 12 13 using namespace Aws::Route53::Model; 14 using namespace Aws::Utils::Xml; 15 using namespace Aws::Utils; 16 using namespace Aws; 17 ListResourceRecordSetsResult()18ListResourceRecordSetsResult::ListResourceRecordSetsResult() : 19 m_isTruncated(false), 20 m_nextRecordType(RRType::NOT_SET) 21 { 22 } 23 ListResourceRecordSetsResult(const Aws::AmazonWebServiceResult<XmlDocument> & result)24ListResourceRecordSetsResult::ListResourceRecordSetsResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) : 25 m_isTruncated(false), 26 m_nextRecordType(RRType::NOT_SET) 27 { 28 *this = result; 29 } 30 operator =(const Aws::AmazonWebServiceResult<XmlDocument> & result)31ListResourceRecordSetsResult& ListResourceRecordSetsResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result) 32 { 33 const XmlDocument& xmlDocument = result.GetPayload(); 34 XmlNode resultNode = xmlDocument.GetRootElement(); 35 36 if(!resultNode.IsNull()) 37 { 38 XmlNode resourceRecordSetsNode = resultNode.FirstChild("ResourceRecordSets"); 39 if(!resourceRecordSetsNode.IsNull()) 40 { 41 XmlNode resourceRecordSetsMember = resourceRecordSetsNode.FirstChild("ResourceRecordSet"); 42 while(!resourceRecordSetsMember.IsNull()) 43 { 44 m_resourceRecordSets.push_back(resourceRecordSetsMember); 45 resourceRecordSetsMember = resourceRecordSetsMember.NextNode("ResourceRecordSet"); 46 } 47 48 } 49 XmlNode isTruncatedNode = resultNode.FirstChild("IsTruncated"); 50 if(!isTruncatedNode.IsNull()) 51 { 52 m_isTruncated = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(isTruncatedNode.GetText()).c_str()).c_str()); 53 } 54 XmlNode nextRecordNameNode = resultNode.FirstChild("NextRecordName"); 55 if(!nextRecordNameNode.IsNull()) 56 { 57 m_nextRecordName = Aws::Utils::Xml::DecodeEscapedXmlText(nextRecordNameNode.GetText()); 58 } 59 XmlNode nextRecordTypeNode = resultNode.FirstChild("NextRecordType"); 60 if(!nextRecordTypeNode.IsNull()) 61 { 62 m_nextRecordType = RRTypeMapper::GetRRTypeForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(nextRecordTypeNode.GetText()).c_str()).c_str()); 63 } 64 XmlNode nextRecordIdentifierNode = resultNode.FirstChild("NextRecordIdentifier"); 65 if(!nextRecordIdentifierNode.IsNull()) 66 { 67 m_nextRecordIdentifier = Aws::Utils::Xml::DecodeEscapedXmlText(nextRecordIdentifierNode.GetText()); 68 } 69 XmlNode maxItemsNode = resultNode.FirstChild("MaxItems"); 70 if(!maxItemsNode.IsNull()) 71 { 72 m_maxItems = Aws::Utils::Xml::DecodeEscapedXmlText(maxItemsNode.GetText()); 73 } 74 } 75 76 return *this; 77 } 78