1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #include <aws/cloudformation/model/CreateStackResult.h>
7 #include <aws/core/utils/xml/XmlSerializer.h>
8 #include <aws/core/AmazonWebServiceResult.h>
9 #include <aws/core/utils/StringUtils.h>
10 #include <aws/core/utils/logging/LogMacros.h>
11 
12 #include <utility>
13 
14 using namespace Aws::CloudFormation::Model;
15 using namespace Aws::Utils::Xml;
16 using namespace Aws::Utils::Logging;
17 using namespace Aws::Utils;
18 using namespace Aws;
19 
CreateStackResult()20 CreateStackResult::CreateStackResult()
21 {
22 }
23 
CreateStackResult(const Aws::AmazonWebServiceResult<XmlDocument> & result)24 CreateStackResult::CreateStackResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
25 {
26   *this = result;
27 }
28 
operator =(const Aws::AmazonWebServiceResult<XmlDocument> & result)29 CreateStackResult& CreateStackResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
30 {
31   const XmlDocument& xmlDocument = result.GetPayload();
32   XmlNode rootNode = xmlDocument.GetRootElement();
33   XmlNode resultNode = rootNode;
34   if (!rootNode.IsNull() && (rootNode.GetName() != "CreateStackResult"))
35   {
36     resultNode = rootNode.FirstChild("CreateStackResult");
37   }
38 
39   if(!resultNode.IsNull())
40   {
41     XmlNode stackIdNode = resultNode.FirstChild("StackId");
42     if(!stackIdNode.IsNull())
43     {
44       m_stackId = Aws::Utils::Xml::DecodeEscapedXmlText(stackIdNode.GetText());
45     }
46   }
47 
48   if (!rootNode.IsNull()) {
49     XmlNode responseMetadataNode = rootNode.FirstChild("ResponseMetadata");
50     m_responseMetadata = responseMetadataNode;
51     AWS_LOGSTREAM_DEBUG("Aws::CloudFormation::Model::CreateStackResult", "x-amzn-request-id: " << m_responseMetadata.GetRequestId() );
52   }
53   return *this;
54 }
55