ListNodesByQueue and ListJobsWithFilters add Async.

This commit is contained in:
sdk-team
2022-10-27 08:58:34 +00:00
parent b9383c3ee7
commit 250a0529f2
475 changed files with 30793 additions and 508 deletions

View File

@@ -39,32 +39,114 @@ void GetAutoScaleConfigResult::parse(const std::string &payload)
Json::Value value;
reader.parse(payload, value);
setRequestId(value["RequestId"].asString());
auto allQueuesNode = value["Queues"]["QueueInfo"];
for (auto valueQueuesQueueInfo : allQueuesNode)
{
QueueInfo queuesObject;
if(!valueQueuesQueueInfo["QueueImageId"].isNull())
queuesObject.queueImageId = valueQueuesQueueInfo["QueueImageId"].asString();
if(!valueQueuesQueueInfo["SystemDiskCategory"].isNull())
queuesObject.systemDiskCategory = valueQueuesQueueInfo["SystemDiskCategory"].asString();
if(!valueQueuesQueueInfo["InstanceType"].isNull())
queuesObject.instanceType = valueQueuesQueueInfo["InstanceType"].asString();
if(!valueQueuesQueueInfo["HostNameSuffix"].isNull())
queuesObject.hostNameSuffix = valueQueuesQueueInfo["HostNameSuffix"].asString();
if(!valueQueuesQueueInfo["SpotStrategy"].isNull())
queuesObject.spotStrategy = valueQueuesQueueInfo["SpotStrategy"].asString();
if(!valueQueuesQueueInfo["MinNodesInQueue"].isNull())
queuesObject.minNodesInQueue = std::stoi(valueQueuesQueueInfo["MinNodesInQueue"].asString());
if(!valueQueuesQueueInfo["HostNamePrefix"].isNull())
queuesObject.hostNamePrefix = valueQueuesQueueInfo["HostNamePrefix"].asString();
if(!valueQueuesQueueInfo["SystemDiskSize"].isNull())
queuesObject.systemDiskSize = std::stoi(valueQueuesQueueInfo["SystemDiskSize"].asString());
if(!valueQueuesQueueInfo["MaxNodesInQueue"].isNull())
queuesObject.maxNodesInQueue = std::stoi(valueQueuesQueueInfo["MaxNodesInQueue"].asString());
if(!valueQueuesQueueInfo["EnableAutoShrink"].isNull())
queuesObject.enableAutoShrink = valueQueuesQueueInfo["EnableAutoShrink"].asString() == "true";
if(!valueQueuesQueueInfo["QueueName"].isNull())
queuesObject.queueName = valueQueuesQueueInfo["QueueName"].asString();
if(!valueQueuesQueueInfo["EnableAutoGrow"].isNull())
queuesObject.enableAutoGrow = valueQueuesQueueInfo["EnableAutoGrow"].asString() == "true";
if(!valueQueuesQueueInfo["SystemDiskLevel"].isNull())
queuesObject.systemDiskLevel = valueQueuesQueueInfo["SystemDiskLevel"].asString();
if(!valueQueuesQueueInfo["ResourceGroupId"].isNull())
queuesObject.resourceGroupId = valueQueuesQueueInfo["ResourceGroupId"].asString();
if(!valueQueuesQueueInfo["SpotPriceLimit"].isNull())
queuesObject.spotPriceLimit = std::stof(valueQueuesQueueInfo["SpotPriceLimit"].asString());
if(!valueQueuesQueueInfo["MaxNodesPerCycle"].isNull())
queuesObject.maxNodesPerCycle = std::stol(valueQueuesQueueInfo["MaxNodesPerCycle"].asString());
if(!valueQueuesQueueInfo["MinNodesPerCycle"].isNull())
queuesObject.minNodesPerCycle = std::stol(valueQueuesQueueInfo["MinNodesPerCycle"].asString());
auto allInstanceTypesNode = valueQueuesQueueInfo["InstanceTypes"]["InstanceTypeInfo"];
for (auto valueQueuesQueueInfoInstanceTypesInstanceTypeInfo : allInstanceTypesNode)
{
QueueInfo::InstanceTypeInfo instanceTypesObject;
if(!valueQueuesQueueInfoInstanceTypesInstanceTypeInfo["HostNamePrefix"].isNull())
instanceTypesObject.hostNamePrefix = valueQueuesQueueInfoInstanceTypesInstanceTypeInfo["HostNamePrefix"].asString();
if(!valueQueuesQueueInfoInstanceTypesInstanceTypeInfo["VSwitchId"].isNull())
instanceTypesObject.vSwitchId = valueQueuesQueueInfoInstanceTypesInstanceTypeInfo["VSwitchId"].asString();
if(!valueQueuesQueueInfoInstanceTypesInstanceTypeInfo["ZoneId"].isNull())
instanceTypesObject.zoneId = valueQueuesQueueInfoInstanceTypesInstanceTypeInfo["ZoneId"].asString();
if(!valueQueuesQueueInfoInstanceTypesInstanceTypeInfo["SpotPriceLimit"].isNull())
instanceTypesObject.spotPriceLimit = std::stof(valueQueuesQueueInfoInstanceTypesInstanceTypeInfo["SpotPriceLimit"].asString());
if(!valueQueuesQueueInfoInstanceTypesInstanceTypeInfo["InstanceType"].isNull())
instanceTypesObject.instanceType = valueQueuesQueueInfoInstanceTypesInstanceTypeInfo["InstanceType"].asString();
if(!valueQueuesQueueInfoInstanceTypesInstanceTypeInfo["SpotStrategy"].isNull())
instanceTypesObject.spotStrategy = valueQueuesQueueInfoInstanceTypesInstanceTypeInfo["SpotStrategy"].asString();
queuesObject.instanceTypes.push_back(instanceTypesObject);
}
auto allDataDisksNode = valueQueuesQueueInfo["DataDisks"]["DataDisksInfo"];
for (auto valueQueuesQueueInfoDataDisksDataDisksInfo : allDataDisksNode)
{
QueueInfo::DataDisksInfo dataDisksObject;
if(!valueQueuesQueueInfoDataDisksDataDisksInfo["DataDiskCategory"].isNull())
dataDisksObject.dataDiskCategory = valueQueuesQueueInfoDataDisksDataDisksInfo["DataDiskCategory"].asString();
if(!valueQueuesQueueInfoDataDisksDataDisksInfo["DataDiskSize"].isNull())
dataDisksObject.dataDiskSize = std::stoi(valueQueuesQueueInfoDataDisksDataDisksInfo["DataDiskSize"].asString());
if(!valueQueuesQueueInfoDataDisksDataDisksInfo["DataDiskDeleteWithInstance"].isNull())
dataDisksObject.dataDiskDeleteWithInstance = valueQueuesQueueInfoDataDisksDataDisksInfo["DataDiskDeleteWithInstance"].asString() == "true";
if(!valueQueuesQueueInfoDataDisksDataDisksInfo["DataDiskPerformanceLevel"].isNull())
dataDisksObject.dataDiskPerformanceLevel = valueQueuesQueueInfoDataDisksDataDisksInfo["DataDiskPerformanceLevel"].asString();
if(!valueQueuesQueueInfoDataDisksDataDisksInfo["DataDiskEncrypted"].isNull())
dataDisksObject.dataDiskEncrypted = valueQueuesQueueInfoDataDisksDataDisksInfo["DataDiskEncrypted"].asString() == "true";
if(!valueQueuesQueueInfoDataDisksDataDisksInfo["DataDiskKMSKeyId"].isNull())
dataDisksObject.dataDiskKMSKeyId = valueQueuesQueueInfoDataDisksDataDisksInfo["DataDiskKMSKeyId"].asString();
queuesObject.dataDisks.push_back(dataDisksObject);
}
queues_.push_back(queuesObject);
}
if(!value["MaxNodesInCluster"].isNull())
maxNodesInCluster_ = std::stoi(value["MaxNodesInCluster"].asString());
if(!value["GrowTimeoutInMinutes"].isNull())
growTimeoutInMinutes_ = std::stoi(value["GrowTimeoutInMinutes"].asString());
if(!value["SpotStrategy"].isNull())
spotStrategy_ = value["SpotStrategy"].asString();
if(!value["EnableAutoShrink"].isNull())
enableAutoShrink_ = value["EnableAutoShrink"].asString() == "true";
if(!value["ClusterType"].isNull())
clusterType_ = value["ClusterType"].asString();
if(!value["EnableAutoGrow"].isNull())
enableAutoGrow_ = value["EnableAutoGrow"].asString() == "true";
if(!value["ClusterType"].isNull())
clusterType_ = value["ClusterType"].asString();
if(!value["ExcludeNodes"].isNull())
excludeNodes_ = value["ExcludeNodes"].asString();
if(!value["GrowIntervalInMinutes"].isNull())
growIntervalInMinutes_ = std::stoi(value["GrowIntervalInMinutes"].asString());
if(!value["ShrinkIntervalInMinutes"].isNull())
shrinkIntervalInMinutes_ = std::stoi(value["ShrinkIntervalInMinutes"].asString());
if(!value["ShrinkIdleTimes"].isNull())
shrinkIdleTimes_ = std::stoi(value["ShrinkIdleTimes"].asString());
if(!value["GrowIntervalInMinutes"].isNull())
growIntervalInMinutes_ = std::stoi(value["GrowIntervalInMinutes"].asString());
if(!value["SpotPriceLimit"].isNull())
spotPriceLimit_ = std::stof(value["SpotPriceLimit"].asString());
if(!value["ExtraNodesGrowRatio"].isNull())
extraNodesGrowRatio_ = std::stoi(value["ExtraNodesGrowRatio"].asString());
if(!value["ShrinkIdleTimes"].isNull())
shrinkIdleTimes_ = std::stoi(value["ShrinkIdleTimes"].asString());
if(!value["ImageId"].isNull())
imageId_ = value["ImageId"].asString();
if(!value["GrowRatio"].isNull())
growRatio_ = std::stoi(value["GrowRatio"].asString());
if(!value["Uid"].isNull())
uid_ = value["Uid"].asString();
if(!value["ClusterId"].isNull())
clusterId_ = value["ClusterId"].asString();
if(!value["Uid"].isNull())
uid_ = value["Uid"].asString();
}
@@ -123,13 +205,33 @@ int GetAutoScaleConfigResult::getGrowTimeoutInMinutes()const
return growTimeoutInMinutes_;
}
std::string GetAutoScaleConfigResult::getImageId()const
{
return imageId_;
}
int GetAutoScaleConfigResult::getShrinkIntervalInMinutes()const
{
return shrinkIntervalInMinutes_;
}
float GetAutoScaleConfigResult::getSpotPriceLimit()const
{
return spotPriceLimit_;
}
std::vector<GetAutoScaleConfigResult::QueueInfo> GetAutoScaleConfigResult::getQueues()const
{
return queues_;
}
std::string GetAutoScaleConfigResult::getExcludeNodes()const
{
return excludeNodes_;
}
std::string GetAutoScaleConfigResult::getSpotStrategy()const
{
return spotStrategy_;
}