/** * 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 CloudFront { namespace Model { KeyGroupConfig::KeyGroupConfig() : m_nameHasBeenSet(false), m_itemsHasBeenSet(false), m_commentHasBeenSet(false) { } KeyGroupConfig::KeyGroupConfig(const XmlNode& xmlNode) : m_nameHasBeenSet(false), m_itemsHasBeenSet(false), m_commentHasBeenSet(false) { *this = xmlNode; } KeyGroupConfig& KeyGroupConfig::operator =(const XmlNode& xmlNode) { XmlNode resultNode = xmlNode; if(!resultNode.IsNull()) { XmlNode nameNode = resultNode.FirstChild("Name"); if(!nameNode.IsNull()) { m_name = Aws::Utils::Xml::DecodeEscapedXmlText(nameNode.GetText()); m_nameHasBeenSet = true; } XmlNode itemsNode = resultNode.FirstChild("Items"); if(!itemsNode.IsNull()) { XmlNode itemsMember = itemsNode.FirstChild("PublicKey"); while(!itemsMember.IsNull()) { m_items.push_back(itemsMember.GetText()); itemsMember = itemsMember.NextNode("PublicKey"); } m_itemsHasBeenSet = true; } XmlNode commentNode = resultNode.FirstChild("Comment"); if(!commentNode.IsNull()) { m_comment = Aws::Utils::Xml::DecodeEscapedXmlText(commentNode.GetText()); m_commentHasBeenSet = true; } } return *this; } void KeyGroupConfig::AddToNode(XmlNode& parentNode) const { Aws::StringStream ss; if(m_nameHasBeenSet) { XmlNode nameNode = parentNode.CreateChildElement("Name"); nameNode.SetText(m_name); } if(m_itemsHasBeenSet) { XmlNode itemsParentNode = parentNode.CreateChildElement("Items"); for(const auto& item : m_items) { XmlNode itemsNode = itemsParentNode.CreateChildElement("PublicKey"); itemsNode.SetText(item); } } if(m_commentHasBeenSet) { XmlNode commentNode = parentNode.CreateChildElement("Comment"); commentNode.SetText(m_comment); } } } // namespace Model } // namespace CloudFront } // namespace Aws