/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #include #include #include #include #include #include using namespace Aws::S3::Model; using namespace Aws::Utils::Xml; using namespace Aws::Utils; using namespace Aws; ListBucketsResult::ListBucketsResult() { } ListBucketsResult::ListBucketsResult(const Aws::AmazonWebServiceResult& result) { *this = result; } ListBucketsResult& ListBucketsResult::operator =(const Aws::AmazonWebServiceResult& result) { const XmlDocument& xmlDocument = result.GetPayload(); XmlNode resultNode = xmlDocument.GetRootElement(); if(!resultNode.IsNull()) { XmlNode bucketsNode = resultNode.FirstChild("Buckets"); if(!bucketsNode.IsNull()) { XmlNode bucketsMember = bucketsNode.FirstChild("Bucket"); while(!bucketsMember.IsNull()) { m_buckets.push_back(bucketsMember); bucketsMember = bucketsMember.NextNode("Bucket"); } } XmlNode ownerNode = resultNode.FirstChild("Owner"); if(!ownerNode.IsNull()) { m_owner = ownerNode; } } const auto& headers = result.GetHeaderValueCollection(); const auto& requestIdIter = headers.find("x-amz-request-id"); if(requestIdIter != headers.end()) { m_requestId = requestIdIter->second; } return *this; }