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/Grantee.cpp | |
download | ydb-1110808a9d39d4b808aef724c861a2e1a38d2a69.tar.gz |
intermediate changes
ref:cde9a383711a11544ce7e107a78147fb96cc4029
Diffstat (limited to 'contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Grantee.cpp')
-rw-r--r-- | contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Grantee.cpp | 122 |
1 files changed, 122 insertions, 0 deletions
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Grantee.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Grantee.cpp new file mode 100644 index 0000000000..31a95234cf --- /dev/null +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Grantee.cpp @@ -0,0 +1,122 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include <aws/s3/model/Grantee.h> +#include <aws/core/utils/xml/XmlSerializer.h> +#include <aws/core/utils/StringUtils.h> +#include <aws/core/utils/memory/stl/AWSStringStream.h> + +#include <utility> + +using namespace Aws::Utils::Xml; +using namespace Aws::Utils; + +namespace Aws +{ +namespace S3 +{ +namespace Model +{ + +Grantee::Grantee() : + m_displayNameHasBeenSet(false), + m_emailAddressHasBeenSet(false), + m_iDHasBeenSet(false), + m_type(Type::NOT_SET), + m_typeHasBeenSet(false), + m_uRIHasBeenSet(false) +{ +} + +Grantee::Grantee(const XmlNode& xmlNode) : + m_displayNameHasBeenSet(false), + m_emailAddressHasBeenSet(false), + m_iDHasBeenSet(false), + m_type(Type::NOT_SET), + m_typeHasBeenSet(false), + m_uRIHasBeenSet(false) +{ + *this = xmlNode; +} + +Grantee& Grantee::operator =(const XmlNode& xmlNode) +{ + XmlNode resultNode = xmlNode; + + if(!resultNode.IsNull()) + { + XmlNode displayNameNode = resultNode.FirstChild("DisplayName"); + if(!displayNameNode.IsNull()) + { + m_displayName = Aws::Utils::Xml::DecodeEscapedXmlText(displayNameNode.GetText()); + m_displayNameHasBeenSet = true; + } + XmlNode emailAddressNode = resultNode.FirstChild("EmailAddress"); + if(!emailAddressNode.IsNull()) + { + m_emailAddress = Aws::Utils::Xml::DecodeEscapedXmlText(emailAddressNode.GetText()); + m_emailAddressHasBeenSet = true; + } + XmlNode iDNode = resultNode.FirstChild("ID"); + if(!iDNode.IsNull()) + { + m_iD = Aws::Utils::Xml::DecodeEscapedXmlText(iDNode.GetText()); + m_iDHasBeenSet = true; + } + auto type = resultNode.GetAttributeValue("xsi:type"); + if(!type.empty()) + { + m_type = TypeMapper::GetTypeForName(StringUtils::Trim(type.c_str()).c_str()); + m_typeHasBeenSet = true; + } + XmlNode uRINode = resultNode.FirstChild("URI"); + if(!uRINode.IsNull()) + { + m_uRI = Aws::Utils::Xml::DecodeEscapedXmlText(uRINode.GetText()); + m_uRIHasBeenSet = true; + } + } + + return *this; +} + +void Grantee::AddToNode(XmlNode& parentNode) const +{ + Aws::StringStream ss; + parentNode.SetAttributeValue("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance"); + if(m_displayNameHasBeenSet) + { + XmlNode displayNameNode = parentNode.CreateChildElement("DisplayName"); + displayNameNode.SetText(m_displayName); + } + + if(m_emailAddressHasBeenSet) + { + XmlNode emailAddressNode = parentNode.CreateChildElement("EmailAddress"); + emailAddressNode.SetText(m_emailAddress); + } + + if(m_iDHasBeenSet) + { + XmlNode iDNode = parentNode.CreateChildElement("ID"); + iDNode.SetText(m_iD); + } + + if(m_typeHasBeenSet) + { + parentNode.SetAttributeValue("xsi:type", TypeMapper::GetNameForType(m_type)); + } + + if(m_uRIHasBeenSet) + { + XmlNode uRINode = parentNode.CreateChildElement("URI"); + uRINode.SetText(m_uRI); + } + +} + +} // namespace Model +} // namespace S3 +} // namespace Aws |