aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfiguration.cpp
diff options
context:
space:
mode:
authorDevtools Arcadia <arcadia-devtools@yandex-team.ru>2022-02-07 18:08:42 +0300
committerDevtools Arcadia <arcadia-devtools@mous.vla.yp-c.yandex.net>2022-02-07 18:08:42 +0300
commit1110808a9d39d4b808aef724c861a2e1a38d2a69 (patch)
treee26c9fed0de5d9873cce7e00bc214573dc2195b7 /contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfiguration.cpp
downloadydb-1110808a9d39d4b808aef724c861a2e1a38d2a69.tar.gz
intermediate changes
ref:cde9a383711a11544ce7e107a78147fb96cc4029
Diffstat (limited to 'contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfiguration.cpp')
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfiguration.cpp119
1 files changed, 119 insertions, 0 deletions
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfiguration.cpp
new file mode 100644
index 0000000000..bb62ecb84d
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfiguration.cpp
@@ -0,0 +1,119 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/NotificationConfiguration.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
+{
+
+NotificationConfiguration::NotificationConfiguration() :
+ m_topicConfigurationsHasBeenSet(false),
+ m_queueConfigurationsHasBeenSet(false),
+ m_lambdaFunctionConfigurationsHasBeenSet(false)
+{
+}
+
+NotificationConfiguration::NotificationConfiguration(const XmlNode& xmlNode) :
+ m_topicConfigurationsHasBeenSet(false),
+ m_queueConfigurationsHasBeenSet(false),
+ m_lambdaFunctionConfigurationsHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+NotificationConfiguration& NotificationConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode topicConfigurationsNode = resultNode.FirstChild("TopicConfiguration");
+ if(!topicConfigurationsNode.IsNull())
+ {
+ XmlNode topicConfigurationMember = topicConfigurationsNode;
+ while(!topicConfigurationMember.IsNull())
+ {
+ m_topicConfigurations.push_back(topicConfigurationMember);
+ topicConfigurationMember = topicConfigurationMember.NextNode("TopicConfiguration");
+ }
+
+ m_topicConfigurationsHasBeenSet = true;
+ }
+ XmlNode queueConfigurationsNode = resultNode.FirstChild("QueueConfiguration");
+ if(!queueConfigurationsNode.IsNull())
+ {
+ XmlNode queueConfigurationMember = queueConfigurationsNode;
+ while(!queueConfigurationMember.IsNull())
+ {
+ m_queueConfigurations.push_back(queueConfigurationMember);
+ queueConfigurationMember = queueConfigurationMember.NextNode("QueueConfiguration");
+ }
+
+ m_queueConfigurationsHasBeenSet = true;
+ }
+ XmlNode lambdaFunctionConfigurationsNode = resultNode.FirstChild("CloudFunctionConfiguration");
+ if(!lambdaFunctionConfigurationsNode.IsNull())
+ {
+ XmlNode cloudFunctionConfigurationMember = lambdaFunctionConfigurationsNode;
+ while(!cloudFunctionConfigurationMember.IsNull())
+ {
+ m_lambdaFunctionConfigurations.push_back(cloudFunctionConfigurationMember);
+ cloudFunctionConfigurationMember = cloudFunctionConfigurationMember.NextNode("CloudFunctionConfiguration");
+ }
+
+ m_lambdaFunctionConfigurationsHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void NotificationConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_topicConfigurationsHasBeenSet)
+ {
+ for(const auto& item : m_topicConfigurations)
+ {
+ XmlNode topicConfigurationsNode = parentNode.CreateChildElement("TopicConfiguration");
+ item.AddToNode(topicConfigurationsNode);
+ }
+ }
+
+ if(m_queueConfigurationsHasBeenSet)
+ {
+ for(const auto& item : m_queueConfigurations)
+ {
+ XmlNode queueConfigurationsNode = parentNode.CreateChildElement("QueueConfiguration");
+ item.AddToNode(queueConfigurationsNode);
+ }
+ }
+
+ if(m_lambdaFunctionConfigurationsHasBeenSet)
+ {
+ for(const auto& item : m_lambdaFunctionConfigurations)
+ {
+ XmlNode lambdaFunctionConfigurationsNode = parentNode.CreateChildElement("CloudFunctionConfiguration");
+ item.AddToNode(lambdaFunctionConfigurationsNode);
+ }
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws