2 Star 8 Fork 1

tencentcloud/tencentcloud-sdk-cpp

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
MongodbClient.cpp 23.26 KB
一键复制 编辑 原始数据 按行查看 历史
tencentcloud 提交于 2025-11-20 22:15 +08:00 . release 3.3.0
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692
/*
* Copyright (c) 2017-2025 Tencent. 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 <tencentcloud/mongodb/v20180408/MongodbClient.h>
#include <tencentcloud/core/Executor.h>
#include <tencentcloud/core/Runnable.h>
using namespace TencentCloud;
using namespace TencentCloud::Mongodb::V20180408;
using namespace TencentCloud::Mongodb::V20180408::Model;
using namespace std;
namespace
{
const string VERSION = "2018-04-08";
const string ENDPOINT = "mongodb.tencentcloudapi.com";
}
MongodbClient::MongodbClient(const Credential &credential, const string &region) :
MongodbClient(credential, region, ClientProfile())
{
}
MongodbClient::MongodbClient(const Credential &credential, const string &region, const ClientProfile &profile) :
AbstractClient(ENDPOINT, VERSION, credential, region, profile)
{
}
MongodbClient::AssignProjectOutcome MongodbClient::AssignProject(const AssignProjectRequest &request)
{
auto outcome = MakeRequest(request, "AssignProject");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
AssignProjectResponse rsp = AssignProjectResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return AssignProjectOutcome(rsp);
else
return AssignProjectOutcome(o.GetError());
}
else
{
return AssignProjectOutcome(outcome.GetError());
}
}
void MongodbClient::AssignProjectAsync(const AssignProjectRequest& request, const AssignProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const AssignProjectRequest&;
using Resp = AssignProjectResponse;
DoRequestAsync<Req, Resp>(
"AssignProject", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
MongodbClient::AssignProjectOutcomeCallable MongodbClient::AssignProjectCallable(const AssignProjectRequest &request)
{
const auto prom = std::make_shared<std::promise<AssignProjectOutcome>>();
AssignProjectAsync(
request,
[prom](
const MongodbClient*,
const AssignProjectRequest&,
AssignProjectOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
MongodbClient::CreateDBInstanceOutcome MongodbClient::CreateDBInstance(const CreateDBInstanceRequest &request)
{
auto outcome = MakeRequest(request, "CreateDBInstance");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
CreateDBInstanceResponse rsp = CreateDBInstanceResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return CreateDBInstanceOutcome(rsp);
else
return CreateDBInstanceOutcome(o.GetError());
}
else
{
return CreateDBInstanceOutcome(outcome.GetError());
}
}
void MongodbClient::CreateDBInstanceAsync(const CreateDBInstanceRequest& request, const CreateDBInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const CreateDBInstanceRequest&;
using Resp = CreateDBInstanceResponse;
DoRequestAsync<Req, Resp>(
"CreateDBInstance", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
MongodbClient::CreateDBInstanceOutcomeCallable MongodbClient::CreateDBInstanceCallable(const CreateDBInstanceRequest &request)
{
const auto prom = std::make_shared<std::promise<CreateDBInstanceOutcome>>();
CreateDBInstanceAsync(
request,
[prom](
const MongodbClient*,
const CreateDBInstanceRequest&,
CreateDBInstanceOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
MongodbClient::CreateDBInstanceHourOutcome MongodbClient::CreateDBInstanceHour(const CreateDBInstanceHourRequest &request)
{
auto outcome = MakeRequest(request, "CreateDBInstanceHour");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
CreateDBInstanceHourResponse rsp = CreateDBInstanceHourResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return CreateDBInstanceHourOutcome(rsp);
else
return CreateDBInstanceHourOutcome(o.GetError());
}
else
{
return CreateDBInstanceHourOutcome(outcome.GetError());
}
}
void MongodbClient::CreateDBInstanceHourAsync(const CreateDBInstanceHourRequest& request, const CreateDBInstanceHourAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const CreateDBInstanceHourRequest&;
using Resp = CreateDBInstanceHourResponse;
DoRequestAsync<Req, Resp>(
"CreateDBInstanceHour", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
MongodbClient::CreateDBInstanceHourOutcomeCallable MongodbClient::CreateDBInstanceHourCallable(const CreateDBInstanceHourRequest &request)
{
const auto prom = std::make_shared<std::promise<CreateDBInstanceHourOutcome>>();
CreateDBInstanceHourAsync(
request,
[prom](
const MongodbClient*,
const CreateDBInstanceHourRequest&,
CreateDBInstanceHourOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
MongodbClient::DescribeClientConnectionsOutcome MongodbClient::DescribeClientConnections(const DescribeClientConnectionsRequest &request)
{
auto outcome = MakeRequest(request, "DescribeClientConnections");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DescribeClientConnectionsResponse rsp = DescribeClientConnectionsResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DescribeClientConnectionsOutcome(rsp);
else
return DescribeClientConnectionsOutcome(o.GetError());
}
else
{
return DescribeClientConnectionsOutcome(outcome.GetError());
}
}
void MongodbClient::DescribeClientConnectionsAsync(const DescribeClientConnectionsRequest& request, const DescribeClientConnectionsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DescribeClientConnectionsRequest&;
using Resp = DescribeClientConnectionsResponse;
DoRequestAsync<Req, Resp>(
"DescribeClientConnections", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
MongodbClient::DescribeClientConnectionsOutcomeCallable MongodbClient::DescribeClientConnectionsCallable(const DescribeClientConnectionsRequest &request)
{
const auto prom = std::make_shared<std::promise<DescribeClientConnectionsOutcome>>();
DescribeClientConnectionsAsync(
request,
[prom](
const MongodbClient*,
const DescribeClientConnectionsRequest&,
DescribeClientConnectionsOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
MongodbClient::DescribeDBInstancesOutcome MongodbClient::DescribeDBInstances(const DescribeDBInstancesRequest &request)
{
auto outcome = MakeRequest(request, "DescribeDBInstances");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DescribeDBInstancesResponse rsp = DescribeDBInstancesResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DescribeDBInstancesOutcome(rsp);
else
return DescribeDBInstancesOutcome(o.GetError());
}
else
{
return DescribeDBInstancesOutcome(outcome.GetError());
}
}
void MongodbClient::DescribeDBInstancesAsync(const DescribeDBInstancesRequest& request, const DescribeDBInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DescribeDBInstancesRequest&;
using Resp = DescribeDBInstancesResponse;
DoRequestAsync<Req, Resp>(
"DescribeDBInstances", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
MongodbClient::DescribeDBInstancesOutcomeCallable MongodbClient::DescribeDBInstancesCallable(const DescribeDBInstancesRequest &request)
{
const auto prom = std::make_shared<std::promise<DescribeDBInstancesOutcome>>();
DescribeDBInstancesAsync(
request,
[prom](
const MongodbClient*,
const DescribeDBInstancesRequest&,
DescribeDBInstancesOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
MongodbClient::DescribeSlowLogOutcome MongodbClient::DescribeSlowLog(const DescribeSlowLogRequest &request)
{
auto outcome = MakeRequest(request, "DescribeSlowLog");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DescribeSlowLogResponse rsp = DescribeSlowLogResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DescribeSlowLogOutcome(rsp);
else
return DescribeSlowLogOutcome(o.GetError());
}
else
{
return DescribeSlowLogOutcome(outcome.GetError());
}
}
void MongodbClient::DescribeSlowLogAsync(const DescribeSlowLogRequest& request, const DescribeSlowLogAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DescribeSlowLogRequest&;
using Resp = DescribeSlowLogResponse;
DoRequestAsync<Req, Resp>(
"DescribeSlowLog", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
MongodbClient::DescribeSlowLogOutcomeCallable MongodbClient::DescribeSlowLogCallable(const DescribeSlowLogRequest &request)
{
const auto prom = std::make_shared<std::promise<DescribeSlowLogOutcome>>();
DescribeSlowLogAsync(
request,
[prom](
const MongodbClient*,
const DescribeSlowLogRequest&,
DescribeSlowLogOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
MongodbClient::DescribeSpecInfoOutcome MongodbClient::DescribeSpecInfo(const DescribeSpecInfoRequest &request)
{
auto outcome = MakeRequest(request, "DescribeSpecInfo");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DescribeSpecInfoResponse rsp = DescribeSpecInfoResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DescribeSpecInfoOutcome(rsp);
else
return DescribeSpecInfoOutcome(o.GetError());
}
else
{
return DescribeSpecInfoOutcome(outcome.GetError());
}
}
void MongodbClient::DescribeSpecInfoAsync(const DescribeSpecInfoRequest& request, const DescribeSpecInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DescribeSpecInfoRequest&;
using Resp = DescribeSpecInfoResponse;
DoRequestAsync<Req, Resp>(
"DescribeSpecInfo", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
MongodbClient::DescribeSpecInfoOutcomeCallable MongodbClient::DescribeSpecInfoCallable(const DescribeSpecInfoRequest &request)
{
const auto prom = std::make_shared<std::promise<DescribeSpecInfoOutcome>>();
DescribeSpecInfoAsync(
request,
[prom](
const MongodbClient*,
const DescribeSpecInfoRequest&,
DescribeSpecInfoOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
MongodbClient::RenameInstanceOutcome MongodbClient::RenameInstance(const RenameInstanceRequest &request)
{
auto outcome = MakeRequest(request, "RenameInstance");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
RenameInstanceResponse rsp = RenameInstanceResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return RenameInstanceOutcome(rsp);
else
return RenameInstanceOutcome(o.GetError());
}
else
{
return RenameInstanceOutcome(outcome.GetError());
}
}
void MongodbClient::RenameInstanceAsync(const RenameInstanceRequest& request, const RenameInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const RenameInstanceRequest&;
using Resp = RenameInstanceResponse;
DoRequestAsync<Req, Resp>(
"RenameInstance", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
MongodbClient::RenameInstanceOutcomeCallable MongodbClient::RenameInstanceCallable(const RenameInstanceRequest &request)
{
const auto prom = std::make_shared<std::promise<RenameInstanceOutcome>>();
RenameInstanceAsync(
request,
[prom](
const MongodbClient*,
const RenameInstanceRequest&,
RenameInstanceOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
MongodbClient::SetAutoRenewOutcome MongodbClient::SetAutoRenew(const SetAutoRenewRequest &request)
{
auto outcome = MakeRequest(request, "SetAutoRenew");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
SetAutoRenewResponse rsp = SetAutoRenewResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return SetAutoRenewOutcome(rsp);
else
return SetAutoRenewOutcome(o.GetError());
}
else
{
return SetAutoRenewOutcome(outcome.GetError());
}
}
void MongodbClient::SetAutoRenewAsync(const SetAutoRenewRequest& request, const SetAutoRenewAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const SetAutoRenewRequest&;
using Resp = SetAutoRenewResponse;
DoRequestAsync<Req, Resp>(
"SetAutoRenew", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
MongodbClient::SetAutoRenewOutcomeCallable MongodbClient::SetAutoRenewCallable(const SetAutoRenewRequest &request)
{
const auto prom = std::make_shared<std::promise<SetAutoRenewOutcome>>();
SetAutoRenewAsync(
request,
[prom](
const MongodbClient*,
const SetAutoRenewRequest&,
SetAutoRenewOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
MongodbClient::SetPasswordOutcome MongodbClient::SetPassword(const SetPasswordRequest &request)
{
auto outcome = MakeRequest(request, "SetPassword");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
SetPasswordResponse rsp = SetPasswordResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return SetPasswordOutcome(rsp);
else
return SetPasswordOutcome(o.GetError());
}
else
{
return SetPasswordOutcome(outcome.GetError());
}
}
void MongodbClient::SetPasswordAsync(const SetPasswordRequest& request, const SetPasswordAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const SetPasswordRequest&;
using Resp = SetPasswordResponse;
DoRequestAsync<Req, Resp>(
"SetPassword", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
MongodbClient::SetPasswordOutcomeCallable MongodbClient::SetPasswordCallable(const SetPasswordRequest &request)
{
const auto prom = std::make_shared<std::promise<SetPasswordOutcome>>();
SetPasswordAsync(
request,
[prom](
const MongodbClient*,
const SetPasswordRequest&,
SetPasswordOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
MongodbClient::TerminateDBInstanceOutcome MongodbClient::TerminateDBInstance(const TerminateDBInstanceRequest &request)
{
auto outcome = MakeRequest(request, "TerminateDBInstance");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
TerminateDBInstanceResponse rsp = TerminateDBInstanceResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return TerminateDBInstanceOutcome(rsp);
else
return TerminateDBInstanceOutcome(o.GetError());
}
else
{
return TerminateDBInstanceOutcome(outcome.GetError());
}
}
void MongodbClient::TerminateDBInstanceAsync(const TerminateDBInstanceRequest& request, const TerminateDBInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const TerminateDBInstanceRequest&;
using Resp = TerminateDBInstanceResponse;
DoRequestAsync<Req, Resp>(
"TerminateDBInstance", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
MongodbClient::TerminateDBInstanceOutcomeCallable MongodbClient::TerminateDBInstanceCallable(const TerminateDBInstanceRequest &request)
{
const auto prom = std::make_shared<std::promise<TerminateDBInstanceOutcome>>();
TerminateDBInstanceAsync(
request,
[prom](
const MongodbClient*,
const TerminateDBInstanceRequest&,
TerminateDBInstanceOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
MongodbClient::UpgradeDBInstanceOutcome MongodbClient::UpgradeDBInstance(const UpgradeDBInstanceRequest &request)
{
auto outcome = MakeRequest(request, "UpgradeDBInstance");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
UpgradeDBInstanceResponse rsp = UpgradeDBInstanceResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return UpgradeDBInstanceOutcome(rsp);
else
return UpgradeDBInstanceOutcome(o.GetError());
}
else
{
return UpgradeDBInstanceOutcome(outcome.GetError());
}
}
void MongodbClient::UpgradeDBInstanceAsync(const UpgradeDBInstanceRequest& request, const UpgradeDBInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const UpgradeDBInstanceRequest&;
using Resp = UpgradeDBInstanceResponse;
DoRequestAsync<Req, Resp>(
"UpgradeDBInstance", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
MongodbClient::UpgradeDBInstanceOutcomeCallable MongodbClient::UpgradeDBInstanceCallable(const UpgradeDBInstanceRequest &request)
{
const auto prom = std::make_shared<std::promise<UpgradeDBInstanceOutcome>>();
UpgradeDBInstanceAsync(
request,
[prom](
const MongodbClient*,
const UpgradeDBInstanceRequest&,
UpgradeDBInstanceOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
MongodbClient::UpgradeDBInstanceHourOutcome MongodbClient::UpgradeDBInstanceHour(const UpgradeDBInstanceHourRequest &request)
{
auto outcome = MakeRequest(request, "UpgradeDBInstanceHour");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
UpgradeDBInstanceHourResponse rsp = UpgradeDBInstanceHourResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return UpgradeDBInstanceHourOutcome(rsp);
else
return UpgradeDBInstanceHourOutcome(o.GetError());
}
else
{
return UpgradeDBInstanceHourOutcome(outcome.GetError());
}
}
void MongodbClient::UpgradeDBInstanceHourAsync(const UpgradeDBInstanceHourRequest& request, const UpgradeDBInstanceHourAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const UpgradeDBInstanceHourRequest&;
using Resp = UpgradeDBInstanceHourResponse;
DoRequestAsync<Req, Resp>(
"UpgradeDBInstanceHour", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
MongodbClient::UpgradeDBInstanceHourOutcomeCallable MongodbClient::UpgradeDBInstanceHourCallable(const UpgradeDBInstanceHourRequest &request)
{
const auto prom = std::make_shared<std::promise<UpgradeDBInstanceHourOutcome>>();
UpgradeDBInstanceHourAsync(
request,
[prom](
const MongodbClient*,
const UpgradeDBInstanceHourRequest&,
UpgradeDBInstanceHourOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/tencentcloud/tencentcloud-sdk-cpp.git
git@gitee.com:tencentcloud/tencentcloud-sdk-cpp.git
tencentcloud
tencentcloud-sdk-cpp
tencentcloud-sdk-cpp
master

搜索帮助