CreateDBClusterResponse Alibabacloud_Polardb20170801::Client::createDBClusterWithOptions()

in polardb-20170801/src/polardb_20170801.cpp [645:837]


CreateDBClusterResponse Alibabacloud_Polardb20170801::Client::createDBClusterWithOptions(shared_ptr<CreateDBClusterRequest> request, shared_ptr<Darabonba_Util::RuntimeOptions> runtime) {
  Darabonba_Util::Client::validateModel(request);
  shared_ptr<map<string, boost::any>> query = make_shared<map<string, boost::any>>(map<string, boost::any>());
  if (!Darabonba_Util::Client::isUnset<string>(request->allowShutDown)) {
    query->insert(pair<string, string>("AllowShutDown", *request->allowShutDown));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->architecture)) {
    query->insert(pair<string, string>("Architecture", *request->architecture));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->autoRenew)) {
    query->insert(pair<string, bool>("AutoRenew", *request->autoRenew));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->backupRetentionPolicyOnClusterDeletion)) {
    query->insert(pair<string, string>("BackupRetentionPolicyOnClusterDeletion", *request->backupRetentionPolicyOnClusterDeletion));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->burstingEnabled)) {
    query->insert(pair<string, string>("BurstingEnabled", *request->burstingEnabled));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->clientToken)) {
    query->insert(pair<string, string>("ClientToken", *request->clientToken));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->cloneDataPoint)) {
    query->insert(pair<string, string>("CloneDataPoint", *request->cloneDataPoint));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->clusterNetworkType)) {
    query->insert(pair<string, string>("ClusterNetworkType", *request->clusterNetworkType));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->creationCategory)) {
    query->insert(pair<string, string>("CreationCategory", *request->creationCategory));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->creationOption)) {
    query->insert(pair<string, string>("CreationOption", *request->creationOption));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->DBClusterDescription)) {
    query->insert(pair<string, string>("DBClusterDescription", *request->DBClusterDescription));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->DBMinorVersion)) {
    query->insert(pair<string, string>("DBMinorVersion", *request->DBMinorVersion));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->DBNodeClass)) {
    query->insert(pair<string, string>("DBNodeClass", *request->DBNodeClass));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->DBNodeNum)) {
    query->insert(pair<string, long>("DBNodeNum", *request->DBNodeNum));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->DBType)) {
    query->insert(pair<string, string>("DBType", *request->DBType));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->DBVersion)) {
    query->insert(pair<string, string>("DBVersion", *request->DBVersion));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->defaultTimeZone)) {
    query->insert(pair<string, string>("DefaultTimeZone", *request->defaultTimeZone));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->GDNId)) {
    query->insert(pair<string, string>("GDNId", *request->GDNId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->hotStandbyCluster)) {
    query->insert(pair<string, string>("HotStandbyCluster", *request->hotStandbyCluster));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->loosePolarLogBin)) {
    query->insert(pair<string, string>("LoosePolarLogBin", *request->loosePolarLogBin));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->looseXEngine)) {
    query->insert(pair<string, string>("LooseXEngine", *request->looseXEngine));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->looseXEngineUseMemoryPct)) {
    query->insert(pair<string, string>("LooseXEngineUseMemoryPct", *request->looseXEngineUseMemoryPct));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->lowerCaseTableNames)) {
    query->insert(pair<string, string>("LowerCaseTableNames", *request->lowerCaseTableNames));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->ownerAccount)) {
    query->insert(pair<string, string>("OwnerAccount", *request->ownerAccount));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->ownerId)) {
    query->insert(pair<string, long>("OwnerId", *request->ownerId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->parameterGroupId)) {
    query->insert(pair<string, string>("ParameterGroupId", *request->parameterGroupId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->payType)) {
    query->insert(pair<string, string>("PayType", *request->payType));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->period)) {
    query->insert(pair<string, string>("Period", *request->period));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->provisionedIops)) {
    query->insert(pair<string, long>("ProvisionedIops", *request->provisionedIops));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->proxyClass)) {
    query->insert(pair<string, string>("ProxyClass", *request->proxyClass));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->proxyType)) {
    query->insert(pair<string, string>("ProxyType", *request->proxyType));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->regionId)) {
    query->insert(pair<string, string>("RegionId", *request->regionId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->resourceGroupId)) {
    query->insert(pair<string, string>("ResourceGroupId", *request->resourceGroupId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->resourceOwnerAccount)) {
    query->insert(pair<string, string>("ResourceOwnerAccount", *request->resourceOwnerAccount));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->resourceOwnerId)) {
    query->insert(pair<string, long>("ResourceOwnerId", *request->resourceOwnerId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->scaleMax)) {
    query->insert(pair<string, string>("ScaleMax", *request->scaleMax));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->scaleMin)) {
    query->insert(pair<string, string>("ScaleMin", *request->scaleMin));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->scaleRoNumMax)) {
    query->insert(pair<string, string>("ScaleRoNumMax", *request->scaleRoNumMax));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->scaleRoNumMin)) {
    query->insert(pair<string, string>("ScaleRoNumMin", *request->scaleRoNumMin));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->securityIPList)) {
    query->insert(pair<string, string>("SecurityIPList", *request->securityIPList));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->serverlessType)) {
    query->insert(pair<string, string>("ServerlessType", *request->serverlessType));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->sourceResourceId)) {
    query->insert(pair<string, string>("SourceResourceId", *request->sourceResourceId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->standbyAZ)) {
    query->insert(pair<string, string>("StandbyAZ", *request->standbyAZ));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->storageAutoScale)) {
    query->insert(pair<string, string>("StorageAutoScale", *request->storageAutoScale));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->storageEncryption)) {
    query->insert(pair<string, bool>("StorageEncryption", *request->storageEncryption));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->storageEncryptionKey)) {
    query->insert(pair<string, string>("StorageEncryptionKey", *request->storageEncryptionKey));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->storagePayType)) {
    query->insert(pair<string, string>("StoragePayType", *request->storagePayType));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->storageSpace)) {
    query->insert(pair<string, long>("StorageSpace", *request->storageSpace));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->storageType)) {
    query->insert(pair<string, string>("StorageType", *request->storageType));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->storageUpperBound)) {
    query->insert(pair<string, long>("StorageUpperBound", *request->storageUpperBound));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->strictConsistency)) {
    query->insert(pair<string, string>("StrictConsistency", *request->strictConsistency));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->TDEStatus)) {
    query->insert(pair<string, bool>("TDEStatus", *request->TDEStatus));
  }
  if (!Darabonba_Util::Client::isUnset<vector<CreateDBClusterRequestTag>>(request->tag)) {
    query->insert(pair<string, vector<CreateDBClusterRequestTag>>("Tag", *request->tag));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->targetMinorVersion)) {
    query->insert(pair<string, string>("TargetMinorVersion", *request->targetMinorVersion));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->usedTime)) {
    query->insert(pair<string, string>("UsedTime", *request->usedTime));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->VPCId)) {
    query->insert(pair<string, string>("VPCId", *request->VPCId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->vSwitchId)) {
    query->insert(pair<string, string>("VSwitchId", *request->vSwitchId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->zoneId)) {
    query->insert(pair<string, string>("ZoneId", *request->zoneId));
  }
  shared_ptr<Alibabacloud_OpenApi::OpenApiRequest> req = make_shared<Alibabacloud_OpenApi::OpenApiRequest>(map<string, boost::any>({
    {"query", boost::any(Alibabacloud_OpenApiUtil::Client::query(query))}
  }));
  shared_ptr<Alibabacloud_OpenApi::Params> params = make_shared<Alibabacloud_OpenApi::Params>(map<string, boost::any>({
    {"action", boost::any(string("CreateDBCluster"))},
    {"version", boost::any(string("2017-08-01"))},
    {"protocol", boost::any(string("HTTPS"))},
    {"pathname", boost::any(string("/"))},
    {"method", boost::any(string("POST"))},
    {"authType", boost::any(string("AK"))},
    {"style", boost::any(string("RPC"))},
    {"reqBodyType", boost::any(string("formData"))},
    {"bodyType", boost::any(string("json"))}
  }));
  return CreateDBClusterResponse(callApi(params, req, runtime));
}