CreateEciScalingConfigurationResponse Alibabacloud_Ess20220222::Client::createEciScalingConfigurationWithOptions()

in ess-20220222/src/ess_20220222.cpp [700:868]


CreateEciScalingConfigurationResponse Alibabacloud_Ess20220222::Client::createEciScalingConfigurationWithOptions(shared_ptr<CreateEciScalingConfigurationRequest> 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<vector<CreateEciScalingConfigurationRequestAcrRegistryInfos>>(request->acrRegistryInfos)) {
    query->insert(pair<string, vector<CreateEciScalingConfigurationRequestAcrRegistryInfos>>("AcrRegistryInfos", *request->acrRegistryInfos));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->activeDeadlineSeconds)) {
    query->insert(pair<string, long>("ActiveDeadlineSeconds", *request->activeDeadlineSeconds));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->autoCreateEip)) {
    query->insert(pair<string, bool>("AutoCreateEip", *request->autoCreateEip));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->autoMatchImageCache)) {
    query->insert(pair<string, bool>("AutoMatchImageCache", *request->autoMatchImageCache));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->containerGroupName)) {
    query->insert(pair<string, string>("ContainerGroupName", *request->containerGroupName));
  }
  if (!Darabonba_Util::Client::isUnset<vector<CreateEciScalingConfigurationRequestContainers>>(request->containers)) {
    query->insert(pair<string, vector<CreateEciScalingConfigurationRequestContainers>>("Containers", *request->containers));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->costOptimization)) {
    query->insert(pair<string, bool>("CostOptimization", *request->costOptimization));
  }
  if (!Darabonba_Util::Client::isUnset<double>(request->cpu)) {
    query->insert(pair<string, double>("Cpu", *request->cpu));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->cpuOptionsCore)) {
    query->insert(pair<string, long>("CpuOptionsCore", *request->cpuOptionsCore));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->cpuOptionsThreadsPerCore)) {
    query->insert(pair<string, long>("CpuOptionsThreadsPerCore", *request->cpuOptionsThreadsPerCore));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->dataCacheBucket)) {
    query->insert(pair<string, string>("DataCacheBucket", *request->dataCacheBucket));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->dataCacheBurstingEnabled)) {
    query->insert(pair<string, bool>("DataCacheBurstingEnabled", *request->dataCacheBurstingEnabled));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->dataCachePL)) {
    query->insert(pair<string, string>("DataCachePL", *request->dataCachePL));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->dataCacheProvisionedIops)) {
    query->insert(pair<string, long>("DataCacheProvisionedIops", *request->dataCacheProvisionedIops));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->description)) {
    query->insert(pair<string, string>("Description", *request->description));
  }
  if (!Darabonba_Util::Client::isUnset<vector<string>>(request->dnsConfigNameServers)) {
    query->insert(pair<string, vector<string>>("DnsConfigNameServers", *request->dnsConfigNameServers));
  }
  if (!Darabonba_Util::Client::isUnset<vector<CreateEciScalingConfigurationRequestDnsConfigOptions>>(request->dnsConfigOptions)) {
    query->insert(pair<string, vector<CreateEciScalingConfigurationRequestDnsConfigOptions>>("DnsConfigOptions", *request->dnsConfigOptions));
  }
  if (!Darabonba_Util::Client::isUnset<vector<string>>(request->dnsConfigSearchs)) {
    query->insert(pair<string, vector<string>>("DnsConfigSearchs", *request->dnsConfigSearchs));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->dnsPolicy)) {
    query->insert(pair<string, string>("DnsPolicy", *request->dnsPolicy));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->egressBandwidth)) {
    query->insert(pair<string, long>("EgressBandwidth", *request->egressBandwidth));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->eipBandwidth)) {
    query->insert(pair<string, long>("EipBandwidth", *request->eipBandwidth));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->enableSls)) {
    query->insert(pair<string, bool>("EnableSls", *request->enableSls));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->ephemeralStorage)) {
    query->insert(pair<string, long>("EphemeralStorage", *request->ephemeralStorage));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->gpuDriverVersion)) {
    query->insert(pair<string, string>("GpuDriverVersion", *request->gpuDriverVersion));
  }
  if (!Darabonba_Util::Client::isUnset<vector<CreateEciScalingConfigurationRequestHostAliases>>(request->hostAliases)) {
    query->insert(pair<string, vector<CreateEciScalingConfigurationRequestHostAliases>>("HostAliases", *request->hostAliases));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->hostName)) {
    query->insert(pair<string, string>("HostName", *request->hostName));
  }
  if (!Darabonba_Util::Client::isUnset<vector<CreateEciScalingConfigurationRequestImageRegistryCredentials>>(request->imageRegistryCredentials)) {
    query->insert(pair<string, vector<CreateEciScalingConfigurationRequestImageRegistryCredentials>>("ImageRegistryCredentials", *request->imageRegistryCredentials));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->imageSnapshotId)) {
    query->insert(pair<string, string>("ImageSnapshotId", *request->imageSnapshotId));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->ingressBandwidth)) {
    query->insert(pair<string, long>("IngressBandwidth", *request->ingressBandwidth));
  }
  if (!Darabonba_Util::Client::isUnset<vector<CreateEciScalingConfigurationRequestInitContainers>>(request->initContainers)) {
    query->insert(pair<string, vector<CreateEciScalingConfigurationRequestInitContainers>>("InitContainers", *request->initContainers));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->instanceFamilyLevel)) {
    query->insert(pair<string, string>("InstanceFamilyLevel", *request->instanceFamilyLevel));
  }
  if (!Darabonba_Util::Client::isUnset<vector<string>>(request->instanceTypes)) {
    query->insert(pair<string, vector<string>>("InstanceTypes", *request->instanceTypes));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->ipv6AddressCount)) {
    query->insert(pair<string, long>("Ipv6AddressCount", *request->ipv6AddressCount));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->loadBalancerWeight)) {
    query->insert(pair<string, long>("LoadBalancerWeight", *request->loadBalancerWeight));
  }
  if (!Darabonba_Util::Client::isUnset<double>(request->memory)) {
    query->insert(pair<string, double>("Memory", *request->memory));
  }
  if (!Darabonba_Util::Client::isUnset<vector<string>>(request->ntpServers)) {
    query->insert(pair<string, vector<string>>("NtpServers", *request->ntpServers));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->ownerId)) {
    query->insert(pair<string, long>("OwnerId", *request->ownerId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->ramRoleName)) {
    query->insert(pair<string, string>("RamRoleName", *request->ramRoleName));
  }
  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<string>(request->restartPolicy)) {
    query->insert(pair<string, string>("RestartPolicy", *request->restartPolicy));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->scalingConfigurationName)) {
    query->insert(pair<string, string>("ScalingConfigurationName", *request->scalingConfigurationName));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->scalingGroupId)) {
    query->insert(pair<string, string>("ScalingGroupId", *request->scalingGroupId));
  }
  if (!Darabonba_Util::Client::isUnset<vector<CreateEciScalingConfigurationRequestSecurityContextSysctls>>(request->securityContextSysctls)) {
    query->insert(pair<string, vector<CreateEciScalingConfigurationRequestSecurityContextSysctls>>("SecurityContextSysctls", *request->securityContextSysctls));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->securityGroupId)) {
    query->insert(pair<string, string>("SecurityGroupId", *request->securityGroupId));
  }
  if (!Darabonba_Util::Client::isUnset<double>(request->spotPriceLimit)) {
    query->insert(pair<string, double>("SpotPriceLimit", *request->spotPriceLimit));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->spotStrategy)) {
    query->insert(pair<string, string>("SpotStrategy", *request->spotStrategy));
  }
  if (!Darabonba_Util::Client::isUnset<vector<CreateEciScalingConfigurationRequestTags>>(request->tags)) {
    query->insert(pair<string, vector<CreateEciScalingConfigurationRequestTags>>("Tags", *request->tags));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->terminationGracePeriodSeconds)) {
    query->insert(pair<string, long>("TerminationGracePeriodSeconds", *request->terminationGracePeriodSeconds));
  }
  if (!Darabonba_Util::Client::isUnset<vector<CreateEciScalingConfigurationRequestVolumes>>(request->volumes)) {
    query->insert(pair<string, vector<CreateEciScalingConfigurationRequestVolumes>>("Volumes", *request->volumes));
  }
  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("CreateEciScalingConfiguration"))},
    {"version", boost::any(string("2022-02-22"))},
    {"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 CreateEciScalingConfigurationResponse(callApi(params, req, runtime));
}