This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
pxz-hos-client-cpp-module/support/aws-sdk-cpp-master/aws-cpp-sdk-elasticbeanstalk/source/model/ConfigurationOptionDescription.cpp

269 lines
8.6 KiB
C++

/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#include <aws/elasticbeanstalk/model/ConfigurationOptionDescription.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 ElasticBeanstalk
{
namespace Model
{
ConfigurationOptionDescription::ConfigurationOptionDescription() :
m_namespaceHasBeenSet(false),
m_nameHasBeenSet(false),
m_defaultValueHasBeenSet(false),
m_changeSeverityHasBeenSet(false),
m_userDefined(false),
m_userDefinedHasBeenSet(false),
m_valueType(ConfigurationOptionValueType::NOT_SET),
m_valueTypeHasBeenSet(false),
m_valueOptionsHasBeenSet(false),
m_minValue(0),
m_minValueHasBeenSet(false),
m_maxValue(0),
m_maxValueHasBeenSet(false),
m_maxLength(0),
m_maxLengthHasBeenSet(false),
m_regexHasBeenSet(false)
{
}
ConfigurationOptionDescription::ConfigurationOptionDescription(const XmlNode& xmlNode) :
m_namespaceHasBeenSet(false),
m_nameHasBeenSet(false),
m_defaultValueHasBeenSet(false),
m_changeSeverityHasBeenSet(false),
m_userDefined(false),
m_userDefinedHasBeenSet(false),
m_valueType(ConfigurationOptionValueType::NOT_SET),
m_valueTypeHasBeenSet(false),
m_valueOptionsHasBeenSet(false),
m_minValue(0),
m_minValueHasBeenSet(false),
m_maxValue(0),
m_maxValueHasBeenSet(false),
m_maxLength(0),
m_maxLengthHasBeenSet(false),
m_regexHasBeenSet(false)
{
*this = xmlNode;
}
ConfigurationOptionDescription& ConfigurationOptionDescription::operator =(const XmlNode& xmlNode)
{
XmlNode resultNode = xmlNode;
if(!resultNode.IsNull())
{
XmlNode namespaceNode = resultNode.FirstChild("Namespace");
if(!namespaceNode.IsNull())
{
m_namespace = Aws::Utils::Xml::DecodeEscapedXmlText(namespaceNode.GetText());
m_namespaceHasBeenSet = true;
}
XmlNode nameNode = resultNode.FirstChild("Name");
if(!nameNode.IsNull())
{
m_name = Aws::Utils::Xml::DecodeEscapedXmlText(nameNode.GetText());
m_nameHasBeenSet = true;
}
XmlNode defaultValueNode = resultNode.FirstChild("DefaultValue");
if(!defaultValueNode.IsNull())
{
m_defaultValue = Aws::Utils::Xml::DecodeEscapedXmlText(defaultValueNode.GetText());
m_defaultValueHasBeenSet = true;
}
XmlNode changeSeverityNode = resultNode.FirstChild("ChangeSeverity");
if(!changeSeverityNode.IsNull())
{
m_changeSeverity = Aws::Utils::Xml::DecodeEscapedXmlText(changeSeverityNode.GetText());
m_changeSeverityHasBeenSet = true;
}
XmlNode userDefinedNode = resultNode.FirstChild("UserDefined");
if(!userDefinedNode.IsNull())
{
m_userDefined = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(userDefinedNode.GetText()).c_str()).c_str());
m_userDefinedHasBeenSet = true;
}
XmlNode valueTypeNode = resultNode.FirstChild("ValueType");
if(!valueTypeNode.IsNull())
{
m_valueType = ConfigurationOptionValueTypeMapper::GetConfigurationOptionValueTypeForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(valueTypeNode.GetText()).c_str()).c_str());
m_valueTypeHasBeenSet = true;
}
XmlNode valueOptionsNode = resultNode.FirstChild("ValueOptions");
if(!valueOptionsNode.IsNull())
{
XmlNode valueOptionsMember = valueOptionsNode.FirstChild("member");
while(!valueOptionsMember.IsNull())
{
m_valueOptions.push_back(valueOptionsMember.GetText());
valueOptionsMember = valueOptionsMember.NextNode("member");
}
m_valueOptionsHasBeenSet = true;
}
XmlNode minValueNode = resultNode.FirstChild("MinValue");
if(!minValueNode.IsNull())
{
m_minValue = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(minValueNode.GetText()).c_str()).c_str());
m_minValueHasBeenSet = true;
}
XmlNode maxValueNode = resultNode.FirstChild("MaxValue");
if(!maxValueNode.IsNull())
{
m_maxValue = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(maxValueNode.GetText()).c_str()).c_str());
m_maxValueHasBeenSet = true;
}
XmlNode maxLengthNode = resultNode.FirstChild("MaxLength");
if(!maxLengthNode.IsNull())
{
m_maxLength = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(maxLengthNode.GetText()).c_str()).c_str());
m_maxLengthHasBeenSet = true;
}
XmlNode regexNode = resultNode.FirstChild("Regex");
if(!regexNode.IsNull())
{
m_regex = regexNode;
m_regexHasBeenSet = true;
}
}
return *this;
}
void ConfigurationOptionDescription::OutputToStream(Aws::OStream& oStream, const char* location, unsigned index, const char* locationValue) const
{
if(m_namespaceHasBeenSet)
{
oStream << location << index << locationValue << ".Namespace=" << StringUtils::URLEncode(m_namespace.c_str()) << "&";
}
if(m_nameHasBeenSet)
{
oStream << location << index << locationValue << ".Name=" << StringUtils::URLEncode(m_name.c_str()) << "&";
}
if(m_defaultValueHasBeenSet)
{
oStream << location << index << locationValue << ".DefaultValue=" << StringUtils::URLEncode(m_defaultValue.c_str()) << "&";
}
if(m_changeSeverityHasBeenSet)
{
oStream << location << index << locationValue << ".ChangeSeverity=" << StringUtils::URLEncode(m_changeSeverity.c_str()) << "&";
}
if(m_userDefinedHasBeenSet)
{
oStream << location << index << locationValue << ".UserDefined=" << std::boolalpha << m_userDefined << "&";
}
if(m_valueTypeHasBeenSet)
{
oStream << location << index << locationValue << ".ValueType=" << ConfigurationOptionValueTypeMapper::GetNameForConfigurationOptionValueType(m_valueType) << "&";
}
if(m_valueOptionsHasBeenSet)
{
unsigned valueOptionsIdx = 1;
for(auto& item : m_valueOptions)
{
oStream << location << index << locationValue << ".ValueOptions.member." << valueOptionsIdx++ << "=" << StringUtils::URLEncode(item.c_str()) << "&";
}
}
if(m_minValueHasBeenSet)
{
oStream << location << index << locationValue << ".MinValue=" << m_minValue << "&";
}
if(m_maxValueHasBeenSet)
{
oStream << location << index << locationValue << ".MaxValue=" << m_maxValue << "&";
}
if(m_maxLengthHasBeenSet)
{
oStream << location << index << locationValue << ".MaxLength=" << m_maxLength << "&";
}
if(m_regexHasBeenSet)
{
Aws::StringStream regexLocationAndMemberSs;
regexLocationAndMemberSs << location << index << locationValue << ".Regex";
m_regex.OutputToStream(oStream, regexLocationAndMemberSs.str().c_str());
}
}
void ConfigurationOptionDescription::OutputToStream(Aws::OStream& oStream, const char* location) const
{
if(m_namespaceHasBeenSet)
{
oStream << location << ".Namespace=" << StringUtils::URLEncode(m_namespace.c_str()) << "&";
}
if(m_nameHasBeenSet)
{
oStream << location << ".Name=" << StringUtils::URLEncode(m_name.c_str()) << "&";
}
if(m_defaultValueHasBeenSet)
{
oStream << location << ".DefaultValue=" << StringUtils::URLEncode(m_defaultValue.c_str()) << "&";
}
if(m_changeSeverityHasBeenSet)
{
oStream << location << ".ChangeSeverity=" << StringUtils::URLEncode(m_changeSeverity.c_str()) << "&";
}
if(m_userDefinedHasBeenSet)
{
oStream << location << ".UserDefined=" << std::boolalpha << m_userDefined << "&";
}
if(m_valueTypeHasBeenSet)
{
oStream << location << ".ValueType=" << ConfigurationOptionValueTypeMapper::GetNameForConfigurationOptionValueType(m_valueType) << "&";
}
if(m_valueOptionsHasBeenSet)
{
unsigned valueOptionsIdx = 1;
for(auto& item : m_valueOptions)
{
oStream << location << ".ValueOptions.member." << valueOptionsIdx++ << "=" << StringUtils::URLEncode(item.c_str()) << "&";
}
}
if(m_minValueHasBeenSet)
{
oStream << location << ".MinValue=" << m_minValue << "&";
}
if(m_maxValueHasBeenSet)
{
oStream << location << ".MaxValue=" << m_maxValue << "&";
}
if(m_maxLengthHasBeenSet)
{
oStream << location << ".MaxLength=" << m_maxLength << "&";
}
if(m_regexHasBeenSet)
{
Aws::String regexLocationAndMember(location);
regexLocationAndMember += ".Regex";
m_regex.OutputToStream(oStream, regexLocationAndMember.c_str());
}
}
} // namespace Model
} // namespace ElasticBeanstalk
} // namespace Aws