ListNodesByQueue and ListJobsWithFilters add Async.
This commit is contained in:
@@ -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_;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user