Support create image with boot mode.

This commit is contained in:
sdk-team
2022-08-31 06:15:01 +00:00
parent 8ec9faabe1
commit 384ce24607
24 changed files with 379 additions and 43 deletions

View File

@@ -11463,6 +11463,42 @@ EcsClient::RenewInstanceOutcomeCallable EcsClient::renewInstanceCallable(const R
return task->get_future();
}
EcsClient::RenewReservedInstancesOutcome EcsClient::renewReservedInstances(const RenewReservedInstancesRequest &request) const
{
auto endpointOutcome = endpointProvider_->getEndpoint();
if (!endpointOutcome.isSuccess())
return RenewReservedInstancesOutcome(endpointOutcome.error());
auto outcome = makeRequest(endpointOutcome.result(), request);
if (outcome.isSuccess())
return RenewReservedInstancesOutcome(RenewReservedInstancesResult(outcome.result()));
else
return RenewReservedInstancesOutcome(outcome.error());
}
void EcsClient::renewReservedInstancesAsync(const RenewReservedInstancesRequest& request, const RenewReservedInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
{
auto fn = [this, request, handler, context]()
{
handler(this, request, renewReservedInstances(request), context);
};
asyncExecute(new Runnable(fn));
}
EcsClient::RenewReservedInstancesOutcomeCallable EcsClient::renewReservedInstancesCallable(const RenewReservedInstancesRequest &request) const
{
auto task = std::make_shared<std::packaged_task<RenewReservedInstancesOutcome()>>(
[this, request]()
{
return this->renewReservedInstances(request);
});
asyncExecute(new Runnable([task]() { (*task)(); }));
return task->get_future();
}
EcsClient::ReplaceSystemDiskOutcome EcsClient::replaceSystemDisk(const ReplaceSystemDiskRequest &request) const
{
auto endpointOutcome = endpointProvider_->getEndpoint();

View File

@@ -95,6 +95,15 @@ void CreateImageRequest::setResourceGroupId(const std::string &resourceGroupId)
setParameter(std::string("ResourceGroupId"), resourceGroupId);
}
std::string CreateImageRequest::getBootMode() const {
return bootMode_;
}
void CreateImageRequest::setBootMode(const std::string &bootMode) {
bootMode_ = bootMode;
setParameter(std::string("BootMode"), bootMode);
}
std::string CreateImageRequest::getRegionId() const {
return regionId_;
}

View File

@@ -52,20 +52,6 @@ void DeleteImageComponentRequest::setRegionId(const std::string &regionId) {
setParameter(std::string("RegionId"), regionId);
}
std::vector<DeleteImageComponentRequest::TemplateTag> DeleteImageComponentRequest::getTemplateTag() const {
return templateTag_;
}
void DeleteImageComponentRequest::setTemplateTag(const std::vector<DeleteImageComponentRequest::TemplateTag> &templateTag) {
templateTag_ = templateTag;
for(int dep1 = 0; dep1 != templateTag.size(); dep1++) {
auto templateTagObj = templateTag.at(dep1);
std::string templateTagObjStr = std::string("TemplateTag") + "." + std::to_string(dep1 + 1);
setParameter(templateTagObjStr + ".Key", templateTagObj.key);
setParameter(templateTagObjStr + ".Value", templateTagObj.value);
}
}
std::string DeleteImageComponentRequest::getResourceOwnerAccount() const {
return resourceOwnerAccount_;
}

View File

@@ -52,20 +52,6 @@ void DeleteImagePipelineRequest::setRegionId(const std::string &regionId) {
setParameter(std::string("RegionId"), regionId);
}
std::vector<DeleteImagePipelineRequest::TemplateTag> DeleteImagePipelineRequest::getTemplateTag() const {
return templateTag_;
}
void DeleteImagePipelineRequest::setTemplateTag(const std::vector<DeleteImagePipelineRequest::TemplateTag> &templateTag) {
templateTag_ = templateTag;
for(int dep1 = 0; dep1 != templateTag.size(); dep1++) {
auto templateTagObj = templateTag.at(dep1);
std::string templateTagObjStr = std::string("TemplateTag") + "." + std::to_string(dep1 + 1);
setParameter(templateTagObjStr + ".Key", templateTagObj.key);
setParameter(templateTagObjStr + ".Value", templateTagObj.value);
}
}
std::string DeleteImagePipelineRequest::getResourceOwnerAccount() const {
return resourceOwnerAccount_;
}

View File

@@ -89,6 +89,8 @@ void DescribeImagesResult::parse(const std::string &payload)
imagesObject.productCode = valueImagesImage["ProductCode"].asString();
if(!valueImagesImage["Architecture"].isNull())
imagesObject.architecture = valueImagesImage["Architecture"].asString();
if(!valueImagesImage["BootMode"].isNull())
imagesObject.bootMode = valueImagesImage["BootMode"].asString();
if(!valueImagesImage["IsPublic"].isNull())
imagesObject.isPublic = valueImagesImage["IsPublic"].asString() == "true";
if(!valueImagesImage["ImageOwnerId"].isNull())

View File

@@ -80,6 +80,8 @@ void DescribeInvocationResultsResult::parse(const std::string &payload)
invocationResultObject.invokeRecordStatus = invocationNodeInvocationResultsInvocationResult["InvokeRecordStatus"].asString();
if(!invocationNodeInvocationResultsInvocationResult["Username"].isNull())
invocationResultObject.username = invocationNodeInvocationResultsInvocationResult["Username"].asString();
if(!invocationNodeInvocationResultsInvocationResult["ContainerId"].isNull())
invocationResultObject.containerId = invocationNodeInvocationResultsInvocationResult["ContainerId"].asString();
auto allTagsNode = invocationNodeInvocationResultsInvocationResult["Tags"]["Tag"];
for (auto invocationNodeInvocationResultsInvocationResultTagsTag : allTagsNode)
{

View File

@@ -75,6 +75,8 @@ void DescribeInvocationsResult::parse(const std::string &payload)
invocationsObject.workingDir = valueInvocationsInvocation["WorkingDir"].asString();
if(!valueInvocationsInvocation["Timeout"].isNull())
invocationsObject.timeout = std::stol(valueInvocationsInvocation["Timeout"].asString());
if(!valueInvocationsInvocation["ContainerId"].isNull())
invocationsObject.containerId = valueInvocationsInvocation["ContainerId"].asString();
auto allInvokeInstancesNode = valueInvocationsInvocation["InvokeInstances"]["InvokeInstance"];
for (auto valueInvocationsInvocationInvokeInstancesInvokeInstance : allInvokeInstancesNode)
{

View File

@@ -123,6 +123,15 @@ void InvokeCommandRequest::setInstanceId(const std::vector<std::string> &instanc
instanceId_ = instanceId;
}
std::string InvokeCommandRequest::getContainerId() const {
return containerId_;
}
void InvokeCommandRequest::setContainerId(const std::string &containerId) {
containerId_ = containerId;
setParameter(std::string("ContainerId"), containerId);
}
std::map<std::string, std::string> InvokeCommandRequest::getParameters() const {
return parameters_;
}

View File

@@ -0,0 +1,107 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <alibabacloud/ecs/model/RenewReservedInstancesRequest.h>
using AlibabaCloud::Ecs::Model::RenewReservedInstancesRequest;
RenewReservedInstancesRequest::RenewReservedInstancesRequest()
: RpcServiceRequest("ecs", "2014-05-26", "RenewReservedInstances") {
setMethod(HttpRequest::Method::Post);
}
RenewReservedInstancesRequest::~RenewReservedInstancesRequest() {}
long RenewReservedInstancesRequest::getResourceOwnerId() const {
return resourceOwnerId_;
}
void RenewReservedInstancesRequest::setResourceOwnerId(long resourceOwnerId) {
resourceOwnerId_ = resourceOwnerId;
setParameter(std::string("ResourceOwnerId"), std::to_string(resourceOwnerId));
}
std::string RenewReservedInstancesRequest::getClientToken() const {
return clientToken_;
}
void RenewReservedInstancesRequest::setClientToken(const std::string &clientToken) {
clientToken_ = clientToken;
setParameter(std::string("ClientToken"), clientToken);
}
std::string RenewReservedInstancesRequest::getRegionId() const {
return regionId_;
}
void RenewReservedInstancesRequest::setRegionId(const std::string &regionId) {
regionId_ = regionId;
setParameter(std::string("RegionId"), regionId);
}
int RenewReservedInstancesRequest::getPeriod() const {
return period_;
}
void RenewReservedInstancesRequest::setPeriod(int period) {
period_ = period;
setParameter(std::string("Period"), std::to_string(period));
}
std::string RenewReservedInstancesRequest::getResourceOwnerAccount() const {
return resourceOwnerAccount_;
}
void RenewReservedInstancesRequest::setResourceOwnerAccount(const std::string &resourceOwnerAccount) {
resourceOwnerAccount_ = resourceOwnerAccount;
setParameter(std::string("ResourceOwnerAccount"), resourceOwnerAccount);
}
std::string RenewReservedInstancesRequest::getOwnerAccount() const {
return ownerAccount_;
}
void RenewReservedInstancesRequest::setOwnerAccount(const std::string &ownerAccount) {
ownerAccount_ = ownerAccount;
setParameter(std::string("OwnerAccount"), ownerAccount);
}
long RenewReservedInstancesRequest::getOwnerId() const {
return ownerId_;
}
void RenewReservedInstancesRequest::setOwnerId(long ownerId) {
ownerId_ = ownerId;
setParameter(std::string("OwnerId"), std::to_string(ownerId));
}
std::string RenewReservedInstancesRequest::getPeriodUnit() const {
return periodUnit_;
}
void RenewReservedInstancesRequest::setPeriodUnit(const std::string &periodUnit) {
periodUnit_ = periodUnit;
setParameter(std::string("PeriodUnit"), periodUnit);
}
std::vector<std::string> RenewReservedInstancesRequest::getReservedInstanceId() const {
return reservedInstanceId_;
}
void RenewReservedInstancesRequest::setReservedInstanceId(const std::vector<std::string> &reservedInstanceId) {
reservedInstanceId_ = reservedInstanceId;
}

View File

@@ -0,0 +1,59 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <alibabacloud/ecs/model/RenewReservedInstancesResult.h>
#include <json/json.h>
using namespace AlibabaCloud::Ecs;
using namespace AlibabaCloud::Ecs::Model;
RenewReservedInstancesResult::RenewReservedInstancesResult() :
ServiceResult()
{}
RenewReservedInstancesResult::RenewReservedInstancesResult(const std::string &payload) :
ServiceResult()
{
parse(payload);
}
RenewReservedInstancesResult::~RenewReservedInstancesResult()
{}
void RenewReservedInstancesResult::parse(const std::string &payload)
{
Json::Reader reader;
Json::Value value;
reader.parse(payload, value);
setRequestId(value["RequestId"].asString());
auto allReservedInstanceIdSets = value["ReservedInstanceIdSets"]["ReservedInstanceId"];
for (const auto &item : allReservedInstanceIdSets)
reservedInstanceIdSets_.push_back(item.asString());
if(!value["OrderId"].isNull())
orderId_ = value["OrderId"].asString();
}
std::vector<std::string> RenewReservedInstancesResult::getReservedInstanceIdSets()const
{
return reservedInstanceIdSets_;
}
std::string RenewReservedInstancesResult::getOrderId()const
{
return orderId_;
}

View File

@@ -200,6 +200,15 @@ void RunCommandRequest::setName(const std::string &name) {
setParameter(std::string("Name"), name);
}
std::string RunCommandRequest::getContainerId() const {
return containerId_;
}
void RunCommandRequest::setContainerId(const std::string &containerId) {
containerId_ = containerId;
setParameter(std::string("ContainerId"), containerId);
}
std::map<std::string, std::string> RunCommandRequest::getParameters() const {
return parameters_;
}