diff options
author | Devtools Arcadia <arcadia-devtools@yandex-team.ru> | 2022-02-07 18:08:42 +0300 |
---|---|---|
committer | Devtools Arcadia <arcadia-devtools@mous.vla.yp-c.yandex.net> | 2022-02-07 18:08:42 +0300 |
commit | 1110808a9d39d4b808aef724c861a2e1a38d2a69 (patch) | |
tree | e26c9fed0de5d9873cce7e00bc214573dc2195b7 /contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartCopyResult.cpp | |
download | ydb-1110808a9d39d4b808aef724c861a2e1a38d2a69.tar.gz |
intermediate changes
ref:cde9a383711a11544ce7e107a78147fb96cc4029
Diffstat (limited to 'contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartCopyResult.cpp')
-rw-r--r-- | contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartCopyResult.cpp | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartCopyResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartCopyResult.cpp new file mode 100644 index 0000000000..22cd2cf4d7 --- /dev/null +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartCopyResult.cpp @@ -0,0 +1,88 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include <aws/s3/model/UploadPartCopyResult.h> +#include <aws/core/utils/xml/XmlSerializer.h> +#include <aws/core/AmazonWebServiceResult.h> +#include <aws/core/utils/StringUtils.h> +#include <aws/core/utils/memory/stl/AWSStringStream.h> + +#include <utility> + +using namespace Aws::S3::Model; +using namespace Aws::Utils::Xml; +using namespace Aws::Utils; +using namespace Aws; + +UploadPartCopyResult::UploadPartCopyResult() : + m_serverSideEncryption(ServerSideEncryption::NOT_SET), + m_bucketKeyEnabled(false), + m_requestCharged(RequestCharged::NOT_SET) +{ +} + +UploadPartCopyResult::UploadPartCopyResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) : + m_serverSideEncryption(ServerSideEncryption::NOT_SET), + m_bucketKeyEnabled(false), + m_requestCharged(RequestCharged::NOT_SET) +{ + *this = result; +} + +UploadPartCopyResult& UploadPartCopyResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result) +{ + const XmlDocument& xmlDocument = result.GetPayload(); + XmlNode resultNode = xmlDocument.GetRootElement(); + + if(!resultNode.IsNull()) + { + m_copyPartResult = resultNode; + } + + const auto& headers = result.GetHeaderValueCollection(); + const auto& copySourceVersionIdIter = headers.find("x-amz-copy-source-version-id"); + if(copySourceVersionIdIter != headers.end()) + { + m_copySourceVersionId = copySourceVersionIdIter->second; + } + + const auto& serverSideEncryptionIter = headers.find("x-amz-server-side-encryption"); + if(serverSideEncryptionIter != headers.end()) + { + m_serverSideEncryption = ServerSideEncryptionMapper::GetServerSideEncryptionForName(serverSideEncryptionIter->second); + } + + const auto& sSECustomerAlgorithmIter = headers.find("x-amz-server-side-encryption-customer-algorithm"); + if(sSECustomerAlgorithmIter != headers.end()) + { + m_sSECustomerAlgorithm = sSECustomerAlgorithmIter->second; + } + + const auto& sSECustomerKeyMD5Iter = headers.find("x-amz-server-side-encryption-customer-key-md5"); + if(sSECustomerKeyMD5Iter != headers.end()) + { + m_sSECustomerKeyMD5 = sSECustomerKeyMD5Iter->second; + } + + const auto& sSEKMSKeyIdIter = headers.find("x-amz-server-side-encryption-aws-kms-key-id"); + if(sSEKMSKeyIdIter != headers.end()) + { + m_sSEKMSKeyId = sSEKMSKeyIdIter->second; + } + + const auto& bucketKeyEnabledIter = headers.find("x-amz-server-side-encryption-bucket-key-enabled"); + if(bucketKeyEnabledIter != headers.end()) + { + m_bucketKeyEnabled = StringUtils::ConvertToBool(bucketKeyEnabledIter->second.c_str()); + } + + const auto& requestChargedIter = headers.find("x-amz-request-charged"); + if(requestChargedIter != headers.end()) + { + m_requestCharged = RequestChargedMapper::GetRequestChargedForName(requestChargedIter->second); + } + + return *this; +} |