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/WebsiteConfiguration.cpp | |
download | ydb-1110808a9d39d4b808aef724c861a2e1a38d2a69.tar.gz |
intermediate changes
ref:cde9a383711a11544ce7e107a78147fb96cc4029
Diffstat (limited to 'contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WebsiteConfiguration.cpp')
-rw-r--r-- | contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WebsiteConfiguration.cpp | 116 |
1 files changed, 116 insertions, 0 deletions
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WebsiteConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WebsiteConfiguration.cpp new file mode 100644 index 0000000000..c911eae838 --- /dev/null +++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WebsiteConfiguration.cpp @@ -0,0 +1,116 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#include <aws/s3/model/WebsiteConfiguration.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 +{ + +WebsiteConfiguration::WebsiteConfiguration() : + m_errorDocumentHasBeenSet(false), + m_indexDocumentHasBeenSet(false), + m_redirectAllRequestsToHasBeenSet(false), + m_routingRulesHasBeenSet(false) +{ +} + +WebsiteConfiguration::WebsiteConfiguration(const XmlNode& xmlNode) : + m_errorDocumentHasBeenSet(false), + m_indexDocumentHasBeenSet(false), + m_redirectAllRequestsToHasBeenSet(false), + m_routingRulesHasBeenSet(false) +{ + *this = xmlNode; +} + +WebsiteConfiguration& WebsiteConfiguration::operator =(const XmlNode& xmlNode) +{ + XmlNode resultNode = xmlNode; + + if(!resultNode.IsNull()) + { + XmlNode errorDocumentNode = resultNode.FirstChild("ErrorDocument"); + if(!errorDocumentNode.IsNull()) + { + m_errorDocument = errorDocumentNode; + m_errorDocumentHasBeenSet = true; + } + XmlNode indexDocumentNode = resultNode.FirstChild("IndexDocument"); + if(!indexDocumentNode.IsNull()) + { + m_indexDocument = indexDocumentNode; + m_indexDocumentHasBeenSet = true; + } + XmlNode redirectAllRequestsToNode = resultNode.FirstChild("RedirectAllRequestsTo"); + if(!redirectAllRequestsToNode.IsNull()) + { + m_redirectAllRequestsTo = redirectAllRequestsToNode; + m_redirectAllRequestsToHasBeenSet = true; + } + XmlNode routingRulesNode = resultNode.FirstChild("RoutingRules"); + if(!routingRulesNode.IsNull()) + { + XmlNode routingRulesMember = routingRulesNode.FirstChild("RoutingRule"); + while(!routingRulesMember.IsNull()) + { + m_routingRules.push_back(routingRulesMember); + routingRulesMember = routingRulesMember.NextNode("RoutingRule"); + } + + m_routingRulesHasBeenSet = true; + } + } + + return *this; +} + +void WebsiteConfiguration::AddToNode(XmlNode& parentNode) const +{ + Aws::StringStream ss; + if(m_errorDocumentHasBeenSet) + { + XmlNode errorDocumentNode = parentNode.CreateChildElement("ErrorDocument"); + m_errorDocument.AddToNode(errorDocumentNode); + } + + if(m_indexDocumentHasBeenSet) + { + XmlNode indexDocumentNode = parentNode.CreateChildElement("IndexDocument"); + m_indexDocument.AddToNode(indexDocumentNode); + } + + if(m_redirectAllRequestsToHasBeenSet) + { + XmlNode redirectAllRequestsToNode = parentNode.CreateChildElement("RedirectAllRequestsTo"); + m_redirectAllRequestsTo.AddToNode(redirectAllRequestsToNode); + } + + if(m_routingRulesHasBeenSet) + { + XmlNode routingRulesParentNode = parentNode.CreateChildElement("RoutingRules"); + for(const auto& item : m_routingRules) + { + XmlNode routingRulesNode = routingRulesParentNode.CreateChildElement("RoutingRule"); + item.AddToNode(routingRulesNode); + } + } + +} + +} // namespace Model +} // namespace S3 +} // namespace Aws |