feat(hos_client_create, hos_client_destory): 多次调用destory不会导致重复释放

This commit is contained in:
彭宣正
2020-12-14 17:24:58 +08:00
parent 505d529c32
commit 10b370e486
55976 changed files with 8544395 additions and 2 deletions

View File

@@ -0,0 +1,81 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#include <aws/redshift/model/CreateUsageLimitRequest.h>
#include <aws/core/utils/StringUtils.h>
#include <aws/core/utils/memory/stl/AWSStringStream.h>
using namespace Aws::Redshift::Model;
using namespace Aws::Utils;
CreateUsageLimitRequest::CreateUsageLimitRequest() :
m_clusterIdentifierHasBeenSet(false),
m_featureType(UsageLimitFeatureType::NOT_SET),
m_featureTypeHasBeenSet(false),
m_limitType(UsageLimitLimitType::NOT_SET),
m_limitTypeHasBeenSet(false),
m_amount(0),
m_amountHasBeenSet(false),
m_period(UsageLimitPeriod::NOT_SET),
m_periodHasBeenSet(false),
m_breachAction(UsageLimitBreachAction::NOT_SET),
m_breachActionHasBeenSet(false),
m_tagsHasBeenSet(false)
{
}
Aws::String CreateUsageLimitRequest::SerializePayload() const
{
Aws::StringStream ss;
ss << "Action=CreateUsageLimit&";
if(m_clusterIdentifierHasBeenSet)
{
ss << "ClusterIdentifier=" << StringUtils::URLEncode(m_clusterIdentifier.c_str()) << "&";
}
if(m_featureTypeHasBeenSet)
{
ss << "FeatureType=" << UsageLimitFeatureTypeMapper::GetNameForUsageLimitFeatureType(m_featureType) << "&";
}
if(m_limitTypeHasBeenSet)
{
ss << "LimitType=" << UsageLimitLimitTypeMapper::GetNameForUsageLimitLimitType(m_limitType) << "&";
}
if(m_amountHasBeenSet)
{
ss << "Amount=" << m_amount << "&";
}
if(m_periodHasBeenSet)
{
ss << "Period=" << UsageLimitPeriodMapper::GetNameForUsageLimitPeriod(m_period) << "&";
}
if(m_breachActionHasBeenSet)
{
ss << "BreachAction=" << UsageLimitBreachActionMapper::GetNameForUsageLimitBreachAction(m_breachAction) << "&";
}
if(m_tagsHasBeenSet)
{
unsigned tagsCount = 1;
for(auto& item : m_tags)
{
item.OutputToStream(ss, "Tags.member.", tagsCount, "");
tagsCount++;
}
}
ss << "Version=2012-12-01";
return ss.str();
}
void CreateUsageLimitRequest::DumpBodyToUrl(Aws::Http::URI& uri ) const
{
uri.SetQueryString(SerializePayload());
}