ModifyScalingConfigurationResponse Alibabacloud_Ess20220222::Client::modifyScalingConfigurationWithOptions()

in ess-20220222/src/ess_20220222.cpp [4132:4332]


ModifyScalingConfigurationResponse Alibabacloud_Ess20220222::Client::modifyScalingConfigurationWithOptions(shared_ptr<ModifyScalingConfigurationRequest> tmpReq, shared_ptr<Darabonba_Util::RuntimeOptions> runtime) {
  Darabonba_Util::Client::validateModel(tmpReq);
  shared_ptr<ModifyScalingConfigurationShrinkRequest> request = make_shared<ModifyScalingConfigurationShrinkRequest>();
  Alibabacloud_OpenApiUtil::Client::convert(tmpReq, request);
  if (!Darabonba_Util::Client::isUnset<map<string, boost::any>>(tmpReq->schedulerOptions)) {
    request->schedulerOptionsShrink = make_shared<string>(Alibabacloud_OpenApiUtil::Client::arrayToStringWithSpecifiedStyle(tmpReq->schedulerOptions, make_shared<string>("SchedulerOptions"), make_shared<string>("json")));
  }
  shared_ptr<map<string, boost::any>> query = make_shared<map<string, boost::any>>(map<string, boost::any>());
  if (!Darabonba_Util::Client::isUnset<string>(request->affinity)) {
    query->insert(pair<string, string>("Affinity", *request->affinity));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->cpu)) {
    query->insert(pair<string, long>("Cpu", *request->cpu));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->creditSpecification)) {
    query->insert(pair<string, string>("CreditSpecification", *request->creditSpecification));
  }
  if (!Darabonba_Util::Client::isUnset<vector<ModifyScalingConfigurationShrinkRequestCustomPriorities>>(request->customPriorities)) {
    query->insert(pair<string, vector<ModifyScalingConfigurationShrinkRequestCustomPriorities>>("CustomPriorities", *request->customPriorities));
  }
  if (!Darabonba_Util::Client::isUnset<vector<ModifyScalingConfigurationShrinkRequestDataDisks>>(request->dataDisks)) {
    query->insert(pair<string, vector<ModifyScalingConfigurationShrinkRequestDataDisks>>("DataDisks", *request->dataDisks));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->dedicatedHostClusterId)) {
    query->insert(pair<string, string>("DedicatedHostClusterId", *request->dedicatedHostClusterId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->dedicatedHostId)) {
    query->insert(pair<string, string>("DedicatedHostId", *request->dedicatedHostId));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->deletionProtection)) {
    query->insert(pair<string, bool>("DeletionProtection", *request->deletionProtection));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->deploymentSetId)) {
    query->insert(pair<string, string>("DeploymentSetId", *request->deploymentSetId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->hostName)) {
    query->insert(pair<string, string>("HostName", *request->hostName));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->hpcClusterId)) {
    query->insert(pair<string, string>("HpcClusterId", *request->hpcClusterId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->httpEndpoint)) {
    query->insert(pair<string, string>("HttpEndpoint", *request->httpEndpoint));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->httpTokens)) {
    query->insert(pair<string, string>("HttpTokens", *request->httpTokens));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->imageFamily)) {
    query->insert(pair<string, string>("ImageFamily", *request->imageFamily));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->imageId)) {
    query->insert(pair<string, string>("ImageId", *request->imageId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->imageName)) {
    query->insert(pair<string, string>("ImageName", *request->imageName));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->instanceDescription)) {
    query->insert(pair<string, string>("InstanceDescription", *request->instanceDescription));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->instanceName)) {
    query->insert(pair<string, string>("InstanceName", *request->instanceName));
  }
  if (!Darabonba_Util::Client::isUnset<vector<ModifyScalingConfigurationShrinkRequestInstancePatternInfos>>(request->instancePatternInfos)) {
    query->insert(pair<string, vector<ModifyScalingConfigurationShrinkRequestInstancePatternInfos>>("InstancePatternInfos", *request->instancePatternInfos));
  }
  if (!Darabonba_Util::Client::isUnset<vector<ModifyScalingConfigurationShrinkRequestInstanceTypeOverrides>>(request->instanceTypeOverrides)) {
    query->insert(pair<string, vector<ModifyScalingConfigurationShrinkRequestInstanceTypeOverrides>>("InstanceTypeOverrides", *request->instanceTypeOverrides));
  }
  if (!Darabonba_Util::Client::isUnset<vector<string>>(request->instanceTypes)) {
    query->insert(pair<string, vector<string>>("InstanceTypes", *request->instanceTypes));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->internetChargeType)) {
    query->insert(pair<string, string>("InternetChargeType", *request->internetChargeType));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->internetMaxBandwidthIn)) {
    query->insert(pair<string, long>("InternetMaxBandwidthIn", *request->internetMaxBandwidthIn));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->internetMaxBandwidthOut)) {
    query->insert(pair<string, long>("InternetMaxBandwidthOut", *request->internetMaxBandwidthOut));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->ioOptimized)) {
    query->insert(pair<string, string>("IoOptimized", *request->ioOptimized));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->ipv6AddressCount)) {
    query->insert(pair<string, long>("Ipv6AddressCount", *request->ipv6AddressCount));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->keyPairName)) {
    query->insert(pair<string, string>("KeyPairName", *request->keyPairName));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->loadBalancerWeight)) {
    query->insert(pair<string, long>("LoadBalancerWeight", *request->loadBalancerWeight));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->memory)) {
    query->insert(pair<string, long>("Memory", *request->memory));
  }
  if (!Darabonba_Util::Client::isUnset<vector<ModifyScalingConfigurationShrinkRequestNetworkInterfaces>>(request->networkInterfaces)) {
    query->insert(pair<string, vector<ModifyScalingConfigurationShrinkRequestNetworkInterfaces>>("NetworkInterfaces", *request->networkInterfaces));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->override)) {
    query->insert(pair<string, bool>("Override", *request->override));
  }
  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->password)) {
    query->insert(pair<string, string>("Password", *request->password));
  }
  if (!Darabonba_Util::Client::isUnset<bool>(request->passwordInherit)) {
    query->insert(pair<string, bool>("PasswordInherit", *request->passwordInherit));
  }
  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<ModifyScalingConfigurationShrinkRequestResourcePoolOptions>(request->resourcePoolOptions)) {
    query->insert(pair<string, ModifyScalingConfigurationShrinkRequestResourcePoolOptions>("ResourcePoolOptions", *request->resourcePoolOptions));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->scalingConfigurationId)) {
    query->insert(pair<string, string>("ScalingConfigurationId", *request->scalingConfigurationId));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->scalingConfigurationName)) {
    query->insert(pair<string, string>("ScalingConfigurationName", *request->scalingConfigurationName));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->schedulerOptionsShrink)) {
    query->insert(pair<string, string>("SchedulerOptions", *request->schedulerOptionsShrink));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->securityGroupId)) {
    query->insert(pair<string, string>("SecurityGroupId", *request->securityGroupId));
  }
  if (!Darabonba_Util::Client::isUnset<vector<string>>(request->securityGroupIds)) {
    query->insert(pair<string, vector<string>>("SecurityGroupIds", *request->securityGroupIds));
  }
  if (!Darabonba_Util::Client::isUnset<ModifyScalingConfigurationShrinkRequestSecurityOptions>(request->securityOptions)) {
    query->insert(pair<string, ModifyScalingConfigurationShrinkRequestSecurityOptions>("SecurityOptions", *request->securityOptions));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->spotDuration)) {
    query->insert(pair<string, long>("SpotDuration", *request->spotDuration));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->spotInterruptionBehavior)) {
    query->insert(pair<string, string>("SpotInterruptionBehavior", *request->spotInterruptionBehavior));
  }
  if (!Darabonba_Util::Client::isUnset<vector<ModifyScalingConfigurationShrinkRequestSpotPriceLimits>>(request->spotPriceLimits)) {
    query->insert(pair<string, vector<ModifyScalingConfigurationShrinkRequestSpotPriceLimits>>("SpotPriceLimits", *request->spotPriceLimits));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->spotStrategy)) {
    query->insert(pair<string, string>("SpotStrategy", *request->spotStrategy));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->storageSetId)) {
    query->insert(pair<string, string>("StorageSetId", *request->storageSetId));
  }
  if (!Darabonba_Util::Client::isUnset<long>(request->storageSetPartitionNumber)) {
    query->insert(pair<string, long>("StorageSetPartitionNumber", *request->storageSetPartitionNumber));
  }
  if (!Darabonba_Util::Client::isUnset<vector<string>>(request->systemDiskCategories)) {
    query->insert(pair<string, vector<string>>("SystemDiskCategories", *request->systemDiskCategories));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->tags)) {
    query->insert(pair<string, string>("Tags", *request->tags));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->tenancy)) {
    query->insert(pair<string, string>("Tenancy", *request->tenancy));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->userData)) {
    query->insert(pair<string, string>("UserData", *request->userData));
  }
  if (!Darabonba_Util::Client::isUnset<string>(request->zoneId)) {
    query->insert(pair<string, string>("ZoneId", *request->zoneId));
  }
  if (!Darabonba_Util::Client::isUnset<ModifyScalingConfigurationShrinkRequestImageOptions>(request->imageOptions)) {
    query->insert(pair<string, ModifyScalingConfigurationShrinkRequestImageOptions>("ImageOptions", *request->imageOptions));
  }
  if (!Darabonba_Util::Client::isUnset<ModifyScalingConfigurationShrinkRequestPrivatePoolOptions>(request->privatePoolOptions)) {
    query->insert(pair<string, ModifyScalingConfigurationShrinkRequestPrivatePoolOptions>("PrivatePoolOptions", *request->privatePoolOptions));
  }
  if (!Darabonba_Util::Client::isUnset<ModifyScalingConfigurationShrinkRequestSystemDisk>(request->systemDisk)) {
    query->insert(pair<string, ModifyScalingConfigurationShrinkRequestSystemDisk>("SystemDisk", *request->systemDisk));
  }
  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("ModifyScalingConfiguration"))},
    {"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 ModifyScalingConfigurationResponse(callApi(params, req, runtime));
}