Ai
2 Star 8 Fork 1

tencentcloud/tencentcloud-sdk-cpp

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
AsClient.cpp 105.16 KB
一键复制 编辑 原始数据 按行查看 历史
tencentcloud 提交于 2025-11-20 22:15 +08:00 . release 3.3.0
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942
/*
* 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/as/v20180419/AsClient.h>
#include <tencentcloud/core/Executor.h>
#include <tencentcloud/core/Runnable.h>
using namespace TencentCloud;
using namespace TencentCloud::As::V20180419;
using namespace TencentCloud::As::V20180419::Model;
using namespace std;
namespace
{
const string VERSION = "2018-04-19";
const string ENDPOINT = "as.tencentcloudapi.com";
}
AsClient::AsClient(const Credential &credential, const string &region) :
AsClient(credential, region, ClientProfile())
{
}
AsClient::AsClient(const Credential &credential, const string &region, const ClientProfile &profile) :
AbstractClient(ENDPOINT, VERSION, credential, region, profile)
{
}
AsClient::AttachInstancesOutcome AsClient::AttachInstances(const AttachInstancesRequest &request)
{
auto outcome = MakeRequest(request, "AttachInstances");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
AttachInstancesResponse rsp = AttachInstancesResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return AttachInstancesOutcome(rsp);
else
return AttachInstancesOutcome(o.GetError());
}
else
{
return AttachInstancesOutcome(outcome.GetError());
}
}
void AsClient::AttachInstancesAsync(const AttachInstancesRequest& request, const AttachInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const AttachInstancesRequest&;
using Resp = AttachInstancesResponse;
DoRequestAsync<Req, Resp>(
"AttachInstances", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::AttachInstancesOutcomeCallable AsClient::AttachInstancesCallable(const AttachInstancesRequest &request)
{
const auto prom = std::make_shared<std::promise<AttachInstancesOutcome>>();
AttachInstancesAsync(
request,
[prom](
const AsClient*,
const AttachInstancesRequest&,
AttachInstancesOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::AttachLoadBalancersOutcome AsClient::AttachLoadBalancers(const AttachLoadBalancersRequest &request)
{
auto outcome = MakeRequest(request, "AttachLoadBalancers");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
AttachLoadBalancersResponse rsp = AttachLoadBalancersResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return AttachLoadBalancersOutcome(rsp);
else
return AttachLoadBalancersOutcome(o.GetError());
}
else
{
return AttachLoadBalancersOutcome(outcome.GetError());
}
}
void AsClient::AttachLoadBalancersAsync(const AttachLoadBalancersRequest& request, const AttachLoadBalancersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const AttachLoadBalancersRequest&;
using Resp = AttachLoadBalancersResponse;
DoRequestAsync<Req, Resp>(
"AttachLoadBalancers", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::AttachLoadBalancersOutcomeCallable AsClient::AttachLoadBalancersCallable(const AttachLoadBalancersRequest &request)
{
const auto prom = std::make_shared<std::promise<AttachLoadBalancersOutcome>>();
AttachLoadBalancersAsync(
request,
[prom](
const AsClient*,
const AttachLoadBalancersRequest&,
AttachLoadBalancersOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::CancelInstanceRefreshOutcome AsClient::CancelInstanceRefresh(const CancelInstanceRefreshRequest &request)
{
auto outcome = MakeRequest(request, "CancelInstanceRefresh");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
CancelInstanceRefreshResponse rsp = CancelInstanceRefreshResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return CancelInstanceRefreshOutcome(rsp);
else
return CancelInstanceRefreshOutcome(o.GetError());
}
else
{
return CancelInstanceRefreshOutcome(outcome.GetError());
}
}
void AsClient::CancelInstanceRefreshAsync(const CancelInstanceRefreshRequest& request, const CancelInstanceRefreshAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const CancelInstanceRefreshRequest&;
using Resp = CancelInstanceRefreshResponse;
DoRequestAsync<Req, Resp>(
"CancelInstanceRefresh", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::CancelInstanceRefreshOutcomeCallable AsClient::CancelInstanceRefreshCallable(const CancelInstanceRefreshRequest &request)
{
const auto prom = std::make_shared<std::promise<CancelInstanceRefreshOutcome>>();
CancelInstanceRefreshAsync(
request,
[prom](
const AsClient*,
const CancelInstanceRefreshRequest&,
CancelInstanceRefreshOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::ClearLaunchConfigurationAttributesOutcome AsClient::ClearLaunchConfigurationAttributes(const ClearLaunchConfigurationAttributesRequest &request)
{
auto outcome = MakeRequest(request, "ClearLaunchConfigurationAttributes");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
ClearLaunchConfigurationAttributesResponse rsp = ClearLaunchConfigurationAttributesResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return ClearLaunchConfigurationAttributesOutcome(rsp);
else
return ClearLaunchConfigurationAttributesOutcome(o.GetError());
}
else
{
return ClearLaunchConfigurationAttributesOutcome(outcome.GetError());
}
}
void AsClient::ClearLaunchConfigurationAttributesAsync(const ClearLaunchConfigurationAttributesRequest& request, const ClearLaunchConfigurationAttributesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const ClearLaunchConfigurationAttributesRequest&;
using Resp = ClearLaunchConfigurationAttributesResponse;
DoRequestAsync<Req, Resp>(
"ClearLaunchConfigurationAttributes", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::ClearLaunchConfigurationAttributesOutcomeCallable AsClient::ClearLaunchConfigurationAttributesCallable(const ClearLaunchConfigurationAttributesRequest &request)
{
const auto prom = std::make_shared<std::promise<ClearLaunchConfigurationAttributesOutcome>>();
ClearLaunchConfigurationAttributesAsync(
request,
[prom](
const AsClient*,
const ClearLaunchConfigurationAttributesRequest&,
ClearLaunchConfigurationAttributesOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::CompleteLifecycleActionOutcome AsClient::CompleteLifecycleAction(const CompleteLifecycleActionRequest &request)
{
auto outcome = MakeRequest(request, "CompleteLifecycleAction");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
CompleteLifecycleActionResponse rsp = CompleteLifecycleActionResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return CompleteLifecycleActionOutcome(rsp);
else
return CompleteLifecycleActionOutcome(o.GetError());
}
else
{
return CompleteLifecycleActionOutcome(outcome.GetError());
}
}
void AsClient::CompleteLifecycleActionAsync(const CompleteLifecycleActionRequest& request, const CompleteLifecycleActionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const CompleteLifecycleActionRequest&;
using Resp = CompleteLifecycleActionResponse;
DoRequestAsync<Req, Resp>(
"CompleteLifecycleAction", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::CompleteLifecycleActionOutcomeCallable AsClient::CompleteLifecycleActionCallable(const CompleteLifecycleActionRequest &request)
{
const auto prom = std::make_shared<std::promise<CompleteLifecycleActionOutcome>>();
CompleteLifecycleActionAsync(
request,
[prom](
const AsClient*,
const CompleteLifecycleActionRequest&,
CompleteLifecycleActionOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::CreateAutoScalingGroupOutcome AsClient::CreateAutoScalingGroup(const CreateAutoScalingGroupRequest &request)
{
auto outcome = MakeRequest(request, "CreateAutoScalingGroup");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
CreateAutoScalingGroupResponse rsp = CreateAutoScalingGroupResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return CreateAutoScalingGroupOutcome(rsp);
else
return CreateAutoScalingGroupOutcome(o.GetError());
}
else
{
return CreateAutoScalingGroupOutcome(outcome.GetError());
}
}
void AsClient::CreateAutoScalingGroupAsync(const CreateAutoScalingGroupRequest& request, const CreateAutoScalingGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const CreateAutoScalingGroupRequest&;
using Resp = CreateAutoScalingGroupResponse;
DoRequestAsync<Req, Resp>(
"CreateAutoScalingGroup", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::CreateAutoScalingGroupOutcomeCallable AsClient::CreateAutoScalingGroupCallable(const CreateAutoScalingGroupRequest &request)
{
const auto prom = std::make_shared<std::promise<CreateAutoScalingGroupOutcome>>();
CreateAutoScalingGroupAsync(
request,
[prom](
const AsClient*,
const CreateAutoScalingGroupRequest&,
CreateAutoScalingGroupOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::CreateAutoScalingGroupFromInstanceOutcome AsClient::CreateAutoScalingGroupFromInstance(const CreateAutoScalingGroupFromInstanceRequest &request)
{
auto outcome = MakeRequest(request, "CreateAutoScalingGroupFromInstance");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
CreateAutoScalingGroupFromInstanceResponse rsp = CreateAutoScalingGroupFromInstanceResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return CreateAutoScalingGroupFromInstanceOutcome(rsp);
else
return CreateAutoScalingGroupFromInstanceOutcome(o.GetError());
}
else
{
return CreateAutoScalingGroupFromInstanceOutcome(outcome.GetError());
}
}
void AsClient::CreateAutoScalingGroupFromInstanceAsync(const CreateAutoScalingGroupFromInstanceRequest& request, const CreateAutoScalingGroupFromInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const CreateAutoScalingGroupFromInstanceRequest&;
using Resp = CreateAutoScalingGroupFromInstanceResponse;
DoRequestAsync<Req, Resp>(
"CreateAutoScalingGroupFromInstance", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::CreateAutoScalingGroupFromInstanceOutcomeCallable AsClient::CreateAutoScalingGroupFromInstanceCallable(const CreateAutoScalingGroupFromInstanceRequest &request)
{
const auto prom = std::make_shared<std::promise<CreateAutoScalingGroupFromInstanceOutcome>>();
CreateAutoScalingGroupFromInstanceAsync(
request,
[prom](
const AsClient*,
const CreateAutoScalingGroupFromInstanceRequest&,
CreateAutoScalingGroupFromInstanceOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::CreateLaunchConfigurationOutcome AsClient::CreateLaunchConfiguration(const CreateLaunchConfigurationRequest &request)
{
auto outcome = MakeRequest(request, "CreateLaunchConfiguration");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
CreateLaunchConfigurationResponse rsp = CreateLaunchConfigurationResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return CreateLaunchConfigurationOutcome(rsp);
else
return CreateLaunchConfigurationOutcome(o.GetError());
}
else
{
return CreateLaunchConfigurationOutcome(outcome.GetError());
}
}
void AsClient::CreateLaunchConfigurationAsync(const CreateLaunchConfigurationRequest& request, const CreateLaunchConfigurationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const CreateLaunchConfigurationRequest&;
using Resp = CreateLaunchConfigurationResponse;
DoRequestAsync<Req, Resp>(
"CreateLaunchConfiguration", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::CreateLaunchConfigurationOutcomeCallable AsClient::CreateLaunchConfigurationCallable(const CreateLaunchConfigurationRequest &request)
{
const auto prom = std::make_shared<std::promise<CreateLaunchConfigurationOutcome>>();
CreateLaunchConfigurationAsync(
request,
[prom](
const AsClient*,
const CreateLaunchConfigurationRequest&,
CreateLaunchConfigurationOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::CreateLifecycleHookOutcome AsClient::CreateLifecycleHook(const CreateLifecycleHookRequest &request)
{
auto outcome = MakeRequest(request, "CreateLifecycleHook");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
CreateLifecycleHookResponse rsp = CreateLifecycleHookResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return CreateLifecycleHookOutcome(rsp);
else
return CreateLifecycleHookOutcome(o.GetError());
}
else
{
return CreateLifecycleHookOutcome(outcome.GetError());
}
}
void AsClient::CreateLifecycleHookAsync(const CreateLifecycleHookRequest& request, const CreateLifecycleHookAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const CreateLifecycleHookRequest&;
using Resp = CreateLifecycleHookResponse;
DoRequestAsync<Req, Resp>(
"CreateLifecycleHook", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::CreateLifecycleHookOutcomeCallable AsClient::CreateLifecycleHookCallable(const CreateLifecycleHookRequest &request)
{
const auto prom = std::make_shared<std::promise<CreateLifecycleHookOutcome>>();
CreateLifecycleHookAsync(
request,
[prom](
const AsClient*,
const CreateLifecycleHookRequest&,
CreateLifecycleHookOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::CreateNotificationConfigurationOutcome AsClient::CreateNotificationConfiguration(const CreateNotificationConfigurationRequest &request)
{
auto outcome = MakeRequest(request, "CreateNotificationConfiguration");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
CreateNotificationConfigurationResponse rsp = CreateNotificationConfigurationResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return CreateNotificationConfigurationOutcome(rsp);
else
return CreateNotificationConfigurationOutcome(o.GetError());
}
else
{
return CreateNotificationConfigurationOutcome(outcome.GetError());
}
}
void AsClient::CreateNotificationConfigurationAsync(const CreateNotificationConfigurationRequest& request, const CreateNotificationConfigurationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const CreateNotificationConfigurationRequest&;
using Resp = CreateNotificationConfigurationResponse;
DoRequestAsync<Req, Resp>(
"CreateNotificationConfiguration", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::CreateNotificationConfigurationOutcomeCallable AsClient::CreateNotificationConfigurationCallable(const CreateNotificationConfigurationRequest &request)
{
const auto prom = std::make_shared<std::promise<CreateNotificationConfigurationOutcome>>();
CreateNotificationConfigurationAsync(
request,
[prom](
const AsClient*,
const CreateNotificationConfigurationRequest&,
CreateNotificationConfigurationOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::CreateScalingPolicyOutcome AsClient::CreateScalingPolicy(const CreateScalingPolicyRequest &request)
{
auto outcome = MakeRequest(request, "CreateScalingPolicy");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
CreateScalingPolicyResponse rsp = CreateScalingPolicyResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return CreateScalingPolicyOutcome(rsp);
else
return CreateScalingPolicyOutcome(o.GetError());
}
else
{
return CreateScalingPolicyOutcome(outcome.GetError());
}
}
void AsClient::CreateScalingPolicyAsync(const CreateScalingPolicyRequest& request, const CreateScalingPolicyAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const CreateScalingPolicyRequest&;
using Resp = CreateScalingPolicyResponse;
DoRequestAsync<Req, Resp>(
"CreateScalingPolicy", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::CreateScalingPolicyOutcomeCallable AsClient::CreateScalingPolicyCallable(const CreateScalingPolicyRequest &request)
{
const auto prom = std::make_shared<std::promise<CreateScalingPolicyOutcome>>();
CreateScalingPolicyAsync(
request,
[prom](
const AsClient*,
const CreateScalingPolicyRequest&,
CreateScalingPolicyOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::CreateScheduledActionOutcome AsClient::CreateScheduledAction(const CreateScheduledActionRequest &request)
{
auto outcome = MakeRequest(request, "CreateScheduledAction");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
CreateScheduledActionResponse rsp = CreateScheduledActionResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return CreateScheduledActionOutcome(rsp);
else
return CreateScheduledActionOutcome(o.GetError());
}
else
{
return CreateScheduledActionOutcome(outcome.GetError());
}
}
void AsClient::CreateScheduledActionAsync(const CreateScheduledActionRequest& request, const CreateScheduledActionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const CreateScheduledActionRequest&;
using Resp = CreateScheduledActionResponse;
DoRequestAsync<Req, Resp>(
"CreateScheduledAction", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::CreateScheduledActionOutcomeCallable AsClient::CreateScheduledActionCallable(const CreateScheduledActionRequest &request)
{
const auto prom = std::make_shared<std::promise<CreateScheduledActionOutcome>>();
CreateScheduledActionAsync(
request,
[prom](
const AsClient*,
const CreateScheduledActionRequest&,
CreateScheduledActionOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DeleteAutoScalingGroupOutcome AsClient::DeleteAutoScalingGroup(const DeleteAutoScalingGroupRequest &request)
{
auto outcome = MakeRequest(request, "DeleteAutoScalingGroup");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DeleteAutoScalingGroupResponse rsp = DeleteAutoScalingGroupResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DeleteAutoScalingGroupOutcome(rsp);
else
return DeleteAutoScalingGroupOutcome(o.GetError());
}
else
{
return DeleteAutoScalingGroupOutcome(outcome.GetError());
}
}
void AsClient::DeleteAutoScalingGroupAsync(const DeleteAutoScalingGroupRequest& request, const DeleteAutoScalingGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DeleteAutoScalingGroupRequest&;
using Resp = DeleteAutoScalingGroupResponse;
DoRequestAsync<Req, Resp>(
"DeleteAutoScalingGroup", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DeleteAutoScalingGroupOutcomeCallable AsClient::DeleteAutoScalingGroupCallable(const DeleteAutoScalingGroupRequest &request)
{
const auto prom = std::make_shared<std::promise<DeleteAutoScalingGroupOutcome>>();
DeleteAutoScalingGroupAsync(
request,
[prom](
const AsClient*,
const DeleteAutoScalingGroupRequest&,
DeleteAutoScalingGroupOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DeleteLaunchConfigurationOutcome AsClient::DeleteLaunchConfiguration(const DeleteLaunchConfigurationRequest &request)
{
auto outcome = MakeRequest(request, "DeleteLaunchConfiguration");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DeleteLaunchConfigurationResponse rsp = DeleteLaunchConfigurationResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DeleteLaunchConfigurationOutcome(rsp);
else
return DeleteLaunchConfigurationOutcome(o.GetError());
}
else
{
return DeleteLaunchConfigurationOutcome(outcome.GetError());
}
}
void AsClient::DeleteLaunchConfigurationAsync(const DeleteLaunchConfigurationRequest& request, const DeleteLaunchConfigurationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DeleteLaunchConfigurationRequest&;
using Resp = DeleteLaunchConfigurationResponse;
DoRequestAsync<Req, Resp>(
"DeleteLaunchConfiguration", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DeleteLaunchConfigurationOutcomeCallable AsClient::DeleteLaunchConfigurationCallable(const DeleteLaunchConfigurationRequest &request)
{
const auto prom = std::make_shared<std::promise<DeleteLaunchConfigurationOutcome>>();
DeleteLaunchConfigurationAsync(
request,
[prom](
const AsClient*,
const DeleteLaunchConfigurationRequest&,
DeleteLaunchConfigurationOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DeleteLifecycleHookOutcome AsClient::DeleteLifecycleHook(const DeleteLifecycleHookRequest &request)
{
auto outcome = MakeRequest(request, "DeleteLifecycleHook");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DeleteLifecycleHookResponse rsp = DeleteLifecycleHookResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DeleteLifecycleHookOutcome(rsp);
else
return DeleteLifecycleHookOutcome(o.GetError());
}
else
{
return DeleteLifecycleHookOutcome(outcome.GetError());
}
}
void AsClient::DeleteLifecycleHookAsync(const DeleteLifecycleHookRequest& request, const DeleteLifecycleHookAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DeleteLifecycleHookRequest&;
using Resp = DeleteLifecycleHookResponse;
DoRequestAsync<Req, Resp>(
"DeleteLifecycleHook", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DeleteLifecycleHookOutcomeCallable AsClient::DeleteLifecycleHookCallable(const DeleteLifecycleHookRequest &request)
{
const auto prom = std::make_shared<std::promise<DeleteLifecycleHookOutcome>>();
DeleteLifecycleHookAsync(
request,
[prom](
const AsClient*,
const DeleteLifecycleHookRequest&,
DeleteLifecycleHookOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DeleteNotificationConfigurationOutcome AsClient::DeleteNotificationConfiguration(const DeleteNotificationConfigurationRequest &request)
{
auto outcome = MakeRequest(request, "DeleteNotificationConfiguration");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DeleteNotificationConfigurationResponse rsp = DeleteNotificationConfigurationResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DeleteNotificationConfigurationOutcome(rsp);
else
return DeleteNotificationConfigurationOutcome(o.GetError());
}
else
{
return DeleteNotificationConfigurationOutcome(outcome.GetError());
}
}
void AsClient::DeleteNotificationConfigurationAsync(const DeleteNotificationConfigurationRequest& request, const DeleteNotificationConfigurationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DeleteNotificationConfigurationRequest&;
using Resp = DeleteNotificationConfigurationResponse;
DoRequestAsync<Req, Resp>(
"DeleteNotificationConfiguration", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DeleteNotificationConfigurationOutcomeCallable AsClient::DeleteNotificationConfigurationCallable(const DeleteNotificationConfigurationRequest &request)
{
const auto prom = std::make_shared<std::promise<DeleteNotificationConfigurationOutcome>>();
DeleteNotificationConfigurationAsync(
request,
[prom](
const AsClient*,
const DeleteNotificationConfigurationRequest&,
DeleteNotificationConfigurationOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DeleteScalingPolicyOutcome AsClient::DeleteScalingPolicy(const DeleteScalingPolicyRequest &request)
{
auto outcome = MakeRequest(request, "DeleteScalingPolicy");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DeleteScalingPolicyResponse rsp = DeleteScalingPolicyResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DeleteScalingPolicyOutcome(rsp);
else
return DeleteScalingPolicyOutcome(o.GetError());
}
else
{
return DeleteScalingPolicyOutcome(outcome.GetError());
}
}
void AsClient::DeleteScalingPolicyAsync(const DeleteScalingPolicyRequest& request, const DeleteScalingPolicyAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DeleteScalingPolicyRequest&;
using Resp = DeleteScalingPolicyResponse;
DoRequestAsync<Req, Resp>(
"DeleteScalingPolicy", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DeleteScalingPolicyOutcomeCallable AsClient::DeleteScalingPolicyCallable(const DeleteScalingPolicyRequest &request)
{
const auto prom = std::make_shared<std::promise<DeleteScalingPolicyOutcome>>();
DeleteScalingPolicyAsync(
request,
[prom](
const AsClient*,
const DeleteScalingPolicyRequest&,
DeleteScalingPolicyOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DeleteScheduledActionOutcome AsClient::DeleteScheduledAction(const DeleteScheduledActionRequest &request)
{
auto outcome = MakeRequest(request, "DeleteScheduledAction");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DeleteScheduledActionResponse rsp = DeleteScheduledActionResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DeleteScheduledActionOutcome(rsp);
else
return DeleteScheduledActionOutcome(o.GetError());
}
else
{
return DeleteScheduledActionOutcome(outcome.GetError());
}
}
void AsClient::DeleteScheduledActionAsync(const DeleteScheduledActionRequest& request, const DeleteScheduledActionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DeleteScheduledActionRequest&;
using Resp = DeleteScheduledActionResponse;
DoRequestAsync<Req, Resp>(
"DeleteScheduledAction", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DeleteScheduledActionOutcomeCallable AsClient::DeleteScheduledActionCallable(const DeleteScheduledActionRequest &request)
{
const auto prom = std::make_shared<std::promise<DeleteScheduledActionOutcome>>();
DeleteScheduledActionAsync(
request,
[prom](
const AsClient*,
const DeleteScheduledActionRequest&,
DeleteScheduledActionOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DescribeAccountLimitsOutcome AsClient::DescribeAccountLimits(const DescribeAccountLimitsRequest &request)
{
auto outcome = MakeRequest(request, "DescribeAccountLimits");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DescribeAccountLimitsResponse rsp = DescribeAccountLimitsResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DescribeAccountLimitsOutcome(rsp);
else
return DescribeAccountLimitsOutcome(o.GetError());
}
else
{
return DescribeAccountLimitsOutcome(outcome.GetError());
}
}
void AsClient::DescribeAccountLimitsAsync(const DescribeAccountLimitsRequest& request, const DescribeAccountLimitsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DescribeAccountLimitsRequest&;
using Resp = DescribeAccountLimitsResponse;
DoRequestAsync<Req, Resp>(
"DescribeAccountLimits", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DescribeAccountLimitsOutcomeCallable AsClient::DescribeAccountLimitsCallable(const DescribeAccountLimitsRequest &request)
{
const auto prom = std::make_shared<std::promise<DescribeAccountLimitsOutcome>>();
DescribeAccountLimitsAsync(
request,
[prom](
const AsClient*,
const DescribeAccountLimitsRequest&,
DescribeAccountLimitsOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DescribeAutoScalingActivitiesOutcome AsClient::DescribeAutoScalingActivities(const DescribeAutoScalingActivitiesRequest &request)
{
auto outcome = MakeRequest(request, "DescribeAutoScalingActivities");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DescribeAutoScalingActivitiesResponse rsp = DescribeAutoScalingActivitiesResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DescribeAutoScalingActivitiesOutcome(rsp);
else
return DescribeAutoScalingActivitiesOutcome(o.GetError());
}
else
{
return DescribeAutoScalingActivitiesOutcome(outcome.GetError());
}
}
void AsClient::DescribeAutoScalingActivitiesAsync(const DescribeAutoScalingActivitiesRequest& request, const DescribeAutoScalingActivitiesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DescribeAutoScalingActivitiesRequest&;
using Resp = DescribeAutoScalingActivitiesResponse;
DoRequestAsync<Req, Resp>(
"DescribeAutoScalingActivities", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DescribeAutoScalingActivitiesOutcomeCallable AsClient::DescribeAutoScalingActivitiesCallable(const DescribeAutoScalingActivitiesRequest &request)
{
const auto prom = std::make_shared<std::promise<DescribeAutoScalingActivitiesOutcome>>();
DescribeAutoScalingActivitiesAsync(
request,
[prom](
const AsClient*,
const DescribeAutoScalingActivitiesRequest&,
DescribeAutoScalingActivitiesOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DescribeAutoScalingAdvicesOutcome AsClient::DescribeAutoScalingAdvices(const DescribeAutoScalingAdvicesRequest &request)
{
auto outcome = MakeRequest(request, "DescribeAutoScalingAdvices");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DescribeAutoScalingAdvicesResponse rsp = DescribeAutoScalingAdvicesResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DescribeAutoScalingAdvicesOutcome(rsp);
else
return DescribeAutoScalingAdvicesOutcome(o.GetError());
}
else
{
return DescribeAutoScalingAdvicesOutcome(outcome.GetError());
}
}
void AsClient::DescribeAutoScalingAdvicesAsync(const DescribeAutoScalingAdvicesRequest& request, const DescribeAutoScalingAdvicesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DescribeAutoScalingAdvicesRequest&;
using Resp = DescribeAutoScalingAdvicesResponse;
DoRequestAsync<Req, Resp>(
"DescribeAutoScalingAdvices", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DescribeAutoScalingAdvicesOutcomeCallable AsClient::DescribeAutoScalingAdvicesCallable(const DescribeAutoScalingAdvicesRequest &request)
{
const auto prom = std::make_shared<std::promise<DescribeAutoScalingAdvicesOutcome>>();
DescribeAutoScalingAdvicesAsync(
request,
[prom](
const AsClient*,
const DescribeAutoScalingAdvicesRequest&,
DescribeAutoScalingAdvicesOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DescribeAutoScalingGroupLastActivitiesOutcome AsClient::DescribeAutoScalingGroupLastActivities(const DescribeAutoScalingGroupLastActivitiesRequest &request)
{
auto outcome = MakeRequest(request, "DescribeAutoScalingGroupLastActivities");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DescribeAutoScalingGroupLastActivitiesResponse rsp = DescribeAutoScalingGroupLastActivitiesResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DescribeAutoScalingGroupLastActivitiesOutcome(rsp);
else
return DescribeAutoScalingGroupLastActivitiesOutcome(o.GetError());
}
else
{
return DescribeAutoScalingGroupLastActivitiesOutcome(outcome.GetError());
}
}
void AsClient::DescribeAutoScalingGroupLastActivitiesAsync(const DescribeAutoScalingGroupLastActivitiesRequest& request, const DescribeAutoScalingGroupLastActivitiesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DescribeAutoScalingGroupLastActivitiesRequest&;
using Resp = DescribeAutoScalingGroupLastActivitiesResponse;
DoRequestAsync<Req, Resp>(
"DescribeAutoScalingGroupLastActivities", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DescribeAutoScalingGroupLastActivitiesOutcomeCallable AsClient::DescribeAutoScalingGroupLastActivitiesCallable(const DescribeAutoScalingGroupLastActivitiesRequest &request)
{
const auto prom = std::make_shared<std::promise<DescribeAutoScalingGroupLastActivitiesOutcome>>();
DescribeAutoScalingGroupLastActivitiesAsync(
request,
[prom](
const AsClient*,
const DescribeAutoScalingGroupLastActivitiesRequest&,
DescribeAutoScalingGroupLastActivitiesOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DescribeAutoScalingGroupsOutcome AsClient::DescribeAutoScalingGroups(const DescribeAutoScalingGroupsRequest &request)
{
auto outcome = MakeRequest(request, "DescribeAutoScalingGroups");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DescribeAutoScalingGroupsResponse rsp = DescribeAutoScalingGroupsResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DescribeAutoScalingGroupsOutcome(rsp);
else
return DescribeAutoScalingGroupsOutcome(o.GetError());
}
else
{
return DescribeAutoScalingGroupsOutcome(outcome.GetError());
}
}
void AsClient::DescribeAutoScalingGroupsAsync(const DescribeAutoScalingGroupsRequest& request, const DescribeAutoScalingGroupsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DescribeAutoScalingGroupsRequest&;
using Resp = DescribeAutoScalingGroupsResponse;
DoRequestAsync<Req, Resp>(
"DescribeAutoScalingGroups", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DescribeAutoScalingGroupsOutcomeCallable AsClient::DescribeAutoScalingGroupsCallable(const DescribeAutoScalingGroupsRequest &request)
{
const auto prom = std::make_shared<std::promise<DescribeAutoScalingGroupsOutcome>>();
DescribeAutoScalingGroupsAsync(
request,
[prom](
const AsClient*,
const DescribeAutoScalingGroupsRequest&,
DescribeAutoScalingGroupsOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DescribeAutoScalingInstancesOutcome AsClient::DescribeAutoScalingInstances(const DescribeAutoScalingInstancesRequest &request)
{
auto outcome = MakeRequest(request, "DescribeAutoScalingInstances");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DescribeAutoScalingInstancesResponse rsp = DescribeAutoScalingInstancesResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DescribeAutoScalingInstancesOutcome(rsp);
else
return DescribeAutoScalingInstancesOutcome(o.GetError());
}
else
{
return DescribeAutoScalingInstancesOutcome(outcome.GetError());
}
}
void AsClient::DescribeAutoScalingInstancesAsync(const DescribeAutoScalingInstancesRequest& request, const DescribeAutoScalingInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DescribeAutoScalingInstancesRequest&;
using Resp = DescribeAutoScalingInstancesResponse;
DoRequestAsync<Req, Resp>(
"DescribeAutoScalingInstances", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DescribeAutoScalingInstancesOutcomeCallable AsClient::DescribeAutoScalingInstancesCallable(const DescribeAutoScalingInstancesRequest &request)
{
const auto prom = std::make_shared<std::promise<DescribeAutoScalingInstancesOutcome>>();
DescribeAutoScalingInstancesAsync(
request,
[prom](
const AsClient*,
const DescribeAutoScalingInstancesRequest&,
DescribeAutoScalingInstancesOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DescribeLaunchConfigurationsOutcome AsClient::DescribeLaunchConfigurations(const DescribeLaunchConfigurationsRequest &request)
{
auto outcome = MakeRequest(request, "DescribeLaunchConfigurations");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DescribeLaunchConfigurationsResponse rsp = DescribeLaunchConfigurationsResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DescribeLaunchConfigurationsOutcome(rsp);
else
return DescribeLaunchConfigurationsOutcome(o.GetError());
}
else
{
return DescribeLaunchConfigurationsOutcome(outcome.GetError());
}
}
void AsClient::DescribeLaunchConfigurationsAsync(const DescribeLaunchConfigurationsRequest& request, const DescribeLaunchConfigurationsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DescribeLaunchConfigurationsRequest&;
using Resp = DescribeLaunchConfigurationsResponse;
DoRequestAsync<Req, Resp>(
"DescribeLaunchConfigurations", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DescribeLaunchConfigurationsOutcomeCallable AsClient::DescribeLaunchConfigurationsCallable(const DescribeLaunchConfigurationsRequest &request)
{
const auto prom = std::make_shared<std::promise<DescribeLaunchConfigurationsOutcome>>();
DescribeLaunchConfigurationsAsync(
request,
[prom](
const AsClient*,
const DescribeLaunchConfigurationsRequest&,
DescribeLaunchConfigurationsOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DescribeLifecycleHooksOutcome AsClient::DescribeLifecycleHooks(const DescribeLifecycleHooksRequest &request)
{
auto outcome = MakeRequest(request, "DescribeLifecycleHooks");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DescribeLifecycleHooksResponse rsp = DescribeLifecycleHooksResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DescribeLifecycleHooksOutcome(rsp);
else
return DescribeLifecycleHooksOutcome(o.GetError());
}
else
{
return DescribeLifecycleHooksOutcome(outcome.GetError());
}
}
void AsClient::DescribeLifecycleHooksAsync(const DescribeLifecycleHooksRequest& request, const DescribeLifecycleHooksAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DescribeLifecycleHooksRequest&;
using Resp = DescribeLifecycleHooksResponse;
DoRequestAsync<Req, Resp>(
"DescribeLifecycleHooks", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DescribeLifecycleHooksOutcomeCallable AsClient::DescribeLifecycleHooksCallable(const DescribeLifecycleHooksRequest &request)
{
const auto prom = std::make_shared<std::promise<DescribeLifecycleHooksOutcome>>();
DescribeLifecycleHooksAsync(
request,
[prom](
const AsClient*,
const DescribeLifecycleHooksRequest&,
DescribeLifecycleHooksOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DescribeNotificationConfigurationsOutcome AsClient::DescribeNotificationConfigurations(const DescribeNotificationConfigurationsRequest &request)
{
auto outcome = MakeRequest(request, "DescribeNotificationConfigurations");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DescribeNotificationConfigurationsResponse rsp = DescribeNotificationConfigurationsResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DescribeNotificationConfigurationsOutcome(rsp);
else
return DescribeNotificationConfigurationsOutcome(o.GetError());
}
else
{
return DescribeNotificationConfigurationsOutcome(outcome.GetError());
}
}
void AsClient::DescribeNotificationConfigurationsAsync(const DescribeNotificationConfigurationsRequest& request, const DescribeNotificationConfigurationsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DescribeNotificationConfigurationsRequest&;
using Resp = DescribeNotificationConfigurationsResponse;
DoRequestAsync<Req, Resp>(
"DescribeNotificationConfigurations", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DescribeNotificationConfigurationsOutcomeCallable AsClient::DescribeNotificationConfigurationsCallable(const DescribeNotificationConfigurationsRequest &request)
{
const auto prom = std::make_shared<std::promise<DescribeNotificationConfigurationsOutcome>>();
DescribeNotificationConfigurationsAsync(
request,
[prom](
const AsClient*,
const DescribeNotificationConfigurationsRequest&,
DescribeNotificationConfigurationsOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DescribeRefreshActivitiesOutcome AsClient::DescribeRefreshActivities(const DescribeRefreshActivitiesRequest &request)
{
auto outcome = MakeRequest(request, "DescribeRefreshActivities");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DescribeRefreshActivitiesResponse rsp = DescribeRefreshActivitiesResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DescribeRefreshActivitiesOutcome(rsp);
else
return DescribeRefreshActivitiesOutcome(o.GetError());
}
else
{
return DescribeRefreshActivitiesOutcome(outcome.GetError());
}
}
void AsClient::DescribeRefreshActivitiesAsync(const DescribeRefreshActivitiesRequest& request, const DescribeRefreshActivitiesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DescribeRefreshActivitiesRequest&;
using Resp = DescribeRefreshActivitiesResponse;
DoRequestAsync<Req, Resp>(
"DescribeRefreshActivities", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DescribeRefreshActivitiesOutcomeCallable AsClient::DescribeRefreshActivitiesCallable(const DescribeRefreshActivitiesRequest &request)
{
const auto prom = std::make_shared<std::promise<DescribeRefreshActivitiesOutcome>>();
DescribeRefreshActivitiesAsync(
request,
[prom](
const AsClient*,
const DescribeRefreshActivitiesRequest&,
DescribeRefreshActivitiesOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DescribeScalingPoliciesOutcome AsClient::DescribeScalingPolicies(const DescribeScalingPoliciesRequest &request)
{
auto outcome = MakeRequest(request, "DescribeScalingPolicies");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DescribeScalingPoliciesResponse rsp = DescribeScalingPoliciesResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DescribeScalingPoliciesOutcome(rsp);
else
return DescribeScalingPoliciesOutcome(o.GetError());
}
else
{
return DescribeScalingPoliciesOutcome(outcome.GetError());
}
}
void AsClient::DescribeScalingPoliciesAsync(const DescribeScalingPoliciesRequest& request, const DescribeScalingPoliciesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DescribeScalingPoliciesRequest&;
using Resp = DescribeScalingPoliciesResponse;
DoRequestAsync<Req, Resp>(
"DescribeScalingPolicies", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DescribeScalingPoliciesOutcomeCallable AsClient::DescribeScalingPoliciesCallable(const DescribeScalingPoliciesRequest &request)
{
const auto prom = std::make_shared<std::promise<DescribeScalingPoliciesOutcome>>();
DescribeScalingPoliciesAsync(
request,
[prom](
const AsClient*,
const DescribeScalingPoliciesRequest&,
DescribeScalingPoliciesOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DescribeScheduledActionsOutcome AsClient::DescribeScheduledActions(const DescribeScheduledActionsRequest &request)
{
auto outcome = MakeRequest(request, "DescribeScheduledActions");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DescribeScheduledActionsResponse rsp = DescribeScheduledActionsResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DescribeScheduledActionsOutcome(rsp);
else
return DescribeScheduledActionsOutcome(o.GetError());
}
else
{
return DescribeScheduledActionsOutcome(outcome.GetError());
}
}
void AsClient::DescribeScheduledActionsAsync(const DescribeScheduledActionsRequest& request, const DescribeScheduledActionsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DescribeScheduledActionsRequest&;
using Resp = DescribeScheduledActionsResponse;
DoRequestAsync<Req, Resp>(
"DescribeScheduledActions", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DescribeScheduledActionsOutcomeCallable AsClient::DescribeScheduledActionsCallable(const DescribeScheduledActionsRequest &request)
{
const auto prom = std::make_shared<std::promise<DescribeScheduledActionsOutcome>>();
DescribeScheduledActionsAsync(
request,
[prom](
const AsClient*,
const DescribeScheduledActionsRequest&,
DescribeScheduledActionsOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DetachInstancesOutcome AsClient::DetachInstances(const DetachInstancesRequest &request)
{
auto outcome = MakeRequest(request, "DetachInstances");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DetachInstancesResponse rsp = DetachInstancesResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DetachInstancesOutcome(rsp);
else
return DetachInstancesOutcome(o.GetError());
}
else
{
return DetachInstancesOutcome(outcome.GetError());
}
}
void AsClient::DetachInstancesAsync(const DetachInstancesRequest& request, const DetachInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DetachInstancesRequest&;
using Resp = DetachInstancesResponse;
DoRequestAsync<Req, Resp>(
"DetachInstances", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DetachInstancesOutcomeCallable AsClient::DetachInstancesCallable(const DetachInstancesRequest &request)
{
const auto prom = std::make_shared<std::promise<DetachInstancesOutcome>>();
DetachInstancesAsync(
request,
[prom](
const AsClient*,
const DetachInstancesRequest&,
DetachInstancesOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DetachLoadBalancersOutcome AsClient::DetachLoadBalancers(const DetachLoadBalancersRequest &request)
{
auto outcome = MakeRequest(request, "DetachLoadBalancers");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DetachLoadBalancersResponse rsp = DetachLoadBalancersResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DetachLoadBalancersOutcome(rsp);
else
return DetachLoadBalancersOutcome(o.GetError());
}
else
{
return DetachLoadBalancersOutcome(outcome.GetError());
}
}
void AsClient::DetachLoadBalancersAsync(const DetachLoadBalancersRequest& request, const DetachLoadBalancersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DetachLoadBalancersRequest&;
using Resp = DetachLoadBalancersResponse;
DoRequestAsync<Req, Resp>(
"DetachLoadBalancers", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DetachLoadBalancersOutcomeCallable AsClient::DetachLoadBalancersCallable(const DetachLoadBalancersRequest &request)
{
const auto prom = std::make_shared<std::promise<DetachLoadBalancersOutcome>>();
DetachLoadBalancersAsync(
request,
[prom](
const AsClient*,
const DetachLoadBalancersRequest&,
DetachLoadBalancersOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::DisableAutoScalingGroupOutcome AsClient::DisableAutoScalingGroup(const DisableAutoScalingGroupRequest &request)
{
auto outcome = MakeRequest(request, "DisableAutoScalingGroup");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
DisableAutoScalingGroupResponse rsp = DisableAutoScalingGroupResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return DisableAutoScalingGroupOutcome(rsp);
else
return DisableAutoScalingGroupOutcome(o.GetError());
}
else
{
return DisableAutoScalingGroupOutcome(outcome.GetError());
}
}
void AsClient::DisableAutoScalingGroupAsync(const DisableAutoScalingGroupRequest& request, const DisableAutoScalingGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const DisableAutoScalingGroupRequest&;
using Resp = DisableAutoScalingGroupResponse;
DoRequestAsync<Req, Resp>(
"DisableAutoScalingGroup", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::DisableAutoScalingGroupOutcomeCallable AsClient::DisableAutoScalingGroupCallable(const DisableAutoScalingGroupRequest &request)
{
const auto prom = std::make_shared<std::promise<DisableAutoScalingGroupOutcome>>();
DisableAutoScalingGroupAsync(
request,
[prom](
const AsClient*,
const DisableAutoScalingGroupRequest&,
DisableAutoScalingGroupOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::EnableAutoScalingGroupOutcome AsClient::EnableAutoScalingGroup(const EnableAutoScalingGroupRequest &request)
{
auto outcome = MakeRequest(request, "EnableAutoScalingGroup");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
EnableAutoScalingGroupResponse rsp = EnableAutoScalingGroupResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return EnableAutoScalingGroupOutcome(rsp);
else
return EnableAutoScalingGroupOutcome(o.GetError());
}
else
{
return EnableAutoScalingGroupOutcome(outcome.GetError());
}
}
void AsClient::EnableAutoScalingGroupAsync(const EnableAutoScalingGroupRequest& request, const EnableAutoScalingGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const EnableAutoScalingGroupRequest&;
using Resp = EnableAutoScalingGroupResponse;
DoRequestAsync<Req, Resp>(
"EnableAutoScalingGroup", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::EnableAutoScalingGroupOutcomeCallable AsClient::EnableAutoScalingGroupCallable(const EnableAutoScalingGroupRequest &request)
{
const auto prom = std::make_shared<std::promise<EnableAutoScalingGroupOutcome>>();
EnableAutoScalingGroupAsync(
request,
[prom](
const AsClient*,
const EnableAutoScalingGroupRequest&,
EnableAutoScalingGroupOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::EnterStandbyOutcome AsClient::EnterStandby(const EnterStandbyRequest &request)
{
auto outcome = MakeRequest(request, "EnterStandby");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
EnterStandbyResponse rsp = EnterStandbyResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return EnterStandbyOutcome(rsp);
else
return EnterStandbyOutcome(o.GetError());
}
else
{
return EnterStandbyOutcome(outcome.GetError());
}
}
void AsClient::EnterStandbyAsync(const EnterStandbyRequest& request, const EnterStandbyAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const EnterStandbyRequest&;
using Resp = EnterStandbyResponse;
DoRequestAsync<Req, Resp>(
"EnterStandby", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::EnterStandbyOutcomeCallable AsClient::EnterStandbyCallable(const EnterStandbyRequest &request)
{
const auto prom = std::make_shared<std::promise<EnterStandbyOutcome>>();
EnterStandbyAsync(
request,
[prom](
const AsClient*,
const EnterStandbyRequest&,
EnterStandbyOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::ExecuteScalingPolicyOutcome AsClient::ExecuteScalingPolicy(const ExecuteScalingPolicyRequest &request)
{
auto outcome = MakeRequest(request, "ExecuteScalingPolicy");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
ExecuteScalingPolicyResponse rsp = ExecuteScalingPolicyResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return ExecuteScalingPolicyOutcome(rsp);
else
return ExecuteScalingPolicyOutcome(o.GetError());
}
else
{
return ExecuteScalingPolicyOutcome(outcome.GetError());
}
}
void AsClient::ExecuteScalingPolicyAsync(const ExecuteScalingPolicyRequest& request, const ExecuteScalingPolicyAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const ExecuteScalingPolicyRequest&;
using Resp = ExecuteScalingPolicyResponse;
DoRequestAsync<Req, Resp>(
"ExecuteScalingPolicy", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::ExecuteScalingPolicyOutcomeCallable AsClient::ExecuteScalingPolicyCallable(const ExecuteScalingPolicyRequest &request)
{
const auto prom = std::make_shared<std::promise<ExecuteScalingPolicyOutcome>>();
ExecuteScalingPolicyAsync(
request,
[prom](
const AsClient*,
const ExecuteScalingPolicyRequest&,
ExecuteScalingPolicyOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::ExitStandbyOutcome AsClient::ExitStandby(const ExitStandbyRequest &request)
{
auto outcome = MakeRequest(request, "ExitStandby");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
ExitStandbyResponse rsp = ExitStandbyResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return ExitStandbyOutcome(rsp);
else
return ExitStandbyOutcome(o.GetError());
}
else
{
return ExitStandbyOutcome(outcome.GetError());
}
}
void AsClient::ExitStandbyAsync(const ExitStandbyRequest& request, const ExitStandbyAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const ExitStandbyRequest&;
using Resp = ExitStandbyResponse;
DoRequestAsync<Req, Resp>(
"ExitStandby", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::ExitStandbyOutcomeCallable AsClient::ExitStandbyCallable(const ExitStandbyRequest &request)
{
const auto prom = std::make_shared<std::promise<ExitStandbyOutcome>>();
ExitStandbyAsync(
request,
[prom](
const AsClient*,
const ExitStandbyRequest&,
ExitStandbyOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::ModifyAutoScalingGroupOutcome AsClient::ModifyAutoScalingGroup(const ModifyAutoScalingGroupRequest &request)
{
auto outcome = MakeRequest(request, "ModifyAutoScalingGroup");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
ModifyAutoScalingGroupResponse rsp = ModifyAutoScalingGroupResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return ModifyAutoScalingGroupOutcome(rsp);
else
return ModifyAutoScalingGroupOutcome(o.GetError());
}
else
{
return ModifyAutoScalingGroupOutcome(outcome.GetError());
}
}
void AsClient::ModifyAutoScalingGroupAsync(const ModifyAutoScalingGroupRequest& request, const ModifyAutoScalingGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const ModifyAutoScalingGroupRequest&;
using Resp = ModifyAutoScalingGroupResponse;
DoRequestAsync<Req, Resp>(
"ModifyAutoScalingGroup", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::ModifyAutoScalingGroupOutcomeCallable AsClient::ModifyAutoScalingGroupCallable(const ModifyAutoScalingGroupRequest &request)
{
const auto prom = std::make_shared<std::promise<ModifyAutoScalingGroupOutcome>>();
ModifyAutoScalingGroupAsync(
request,
[prom](
const AsClient*,
const ModifyAutoScalingGroupRequest&,
ModifyAutoScalingGroupOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::ModifyDesiredCapacityOutcome AsClient::ModifyDesiredCapacity(const ModifyDesiredCapacityRequest &request)
{
auto outcome = MakeRequest(request, "ModifyDesiredCapacity");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
ModifyDesiredCapacityResponse rsp = ModifyDesiredCapacityResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return ModifyDesiredCapacityOutcome(rsp);
else
return ModifyDesiredCapacityOutcome(o.GetError());
}
else
{
return ModifyDesiredCapacityOutcome(outcome.GetError());
}
}
void AsClient::ModifyDesiredCapacityAsync(const ModifyDesiredCapacityRequest& request, const ModifyDesiredCapacityAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const ModifyDesiredCapacityRequest&;
using Resp = ModifyDesiredCapacityResponse;
DoRequestAsync<Req, Resp>(
"ModifyDesiredCapacity", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::ModifyDesiredCapacityOutcomeCallable AsClient::ModifyDesiredCapacityCallable(const ModifyDesiredCapacityRequest &request)
{
const auto prom = std::make_shared<std::promise<ModifyDesiredCapacityOutcome>>();
ModifyDesiredCapacityAsync(
request,
[prom](
const AsClient*,
const ModifyDesiredCapacityRequest&,
ModifyDesiredCapacityOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::ModifyLaunchConfigurationAttributesOutcome AsClient::ModifyLaunchConfigurationAttributes(const ModifyLaunchConfigurationAttributesRequest &request)
{
auto outcome = MakeRequest(request, "ModifyLaunchConfigurationAttributes");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
ModifyLaunchConfigurationAttributesResponse rsp = ModifyLaunchConfigurationAttributesResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return ModifyLaunchConfigurationAttributesOutcome(rsp);
else
return ModifyLaunchConfigurationAttributesOutcome(o.GetError());
}
else
{
return ModifyLaunchConfigurationAttributesOutcome(outcome.GetError());
}
}
void AsClient::ModifyLaunchConfigurationAttributesAsync(const ModifyLaunchConfigurationAttributesRequest& request, const ModifyLaunchConfigurationAttributesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const ModifyLaunchConfigurationAttributesRequest&;
using Resp = ModifyLaunchConfigurationAttributesResponse;
DoRequestAsync<Req, Resp>(
"ModifyLaunchConfigurationAttributes", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::ModifyLaunchConfigurationAttributesOutcomeCallable AsClient::ModifyLaunchConfigurationAttributesCallable(const ModifyLaunchConfigurationAttributesRequest &request)
{
const auto prom = std::make_shared<std::promise<ModifyLaunchConfigurationAttributesOutcome>>();
ModifyLaunchConfigurationAttributesAsync(
request,
[prom](
const AsClient*,
const ModifyLaunchConfigurationAttributesRequest&,
ModifyLaunchConfigurationAttributesOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::ModifyLifecycleHookOutcome AsClient::ModifyLifecycleHook(const ModifyLifecycleHookRequest &request)
{
auto outcome = MakeRequest(request, "ModifyLifecycleHook");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
ModifyLifecycleHookResponse rsp = ModifyLifecycleHookResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return ModifyLifecycleHookOutcome(rsp);
else
return ModifyLifecycleHookOutcome(o.GetError());
}
else
{
return ModifyLifecycleHookOutcome(outcome.GetError());
}
}
void AsClient::ModifyLifecycleHookAsync(const ModifyLifecycleHookRequest& request, const ModifyLifecycleHookAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const ModifyLifecycleHookRequest&;
using Resp = ModifyLifecycleHookResponse;
DoRequestAsync<Req, Resp>(
"ModifyLifecycleHook", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::ModifyLifecycleHookOutcomeCallable AsClient::ModifyLifecycleHookCallable(const ModifyLifecycleHookRequest &request)
{
const auto prom = std::make_shared<std::promise<ModifyLifecycleHookOutcome>>();
ModifyLifecycleHookAsync(
request,
[prom](
const AsClient*,
const ModifyLifecycleHookRequest&,
ModifyLifecycleHookOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::ModifyLoadBalancerTargetAttributesOutcome AsClient::ModifyLoadBalancerTargetAttributes(const ModifyLoadBalancerTargetAttributesRequest &request)
{
auto outcome = MakeRequest(request, "ModifyLoadBalancerTargetAttributes");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
ModifyLoadBalancerTargetAttributesResponse rsp = ModifyLoadBalancerTargetAttributesResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return ModifyLoadBalancerTargetAttributesOutcome(rsp);
else
return ModifyLoadBalancerTargetAttributesOutcome(o.GetError());
}
else
{
return ModifyLoadBalancerTargetAttributesOutcome(outcome.GetError());
}
}
void AsClient::ModifyLoadBalancerTargetAttributesAsync(const ModifyLoadBalancerTargetAttributesRequest& request, const ModifyLoadBalancerTargetAttributesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const ModifyLoadBalancerTargetAttributesRequest&;
using Resp = ModifyLoadBalancerTargetAttributesResponse;
DoRequestAsync<Req, Resp>(
"ModifyLoadBalancerTargetAttributes", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::ModifyLoadBalancerTargetAttributesOutcomeCallable AsClient::ModifyLoadBalancerTargetAttributesCallable(const ModifyLoadBalancerTargetAttributesRequest &request)
{
const auto prom = std::make_shared<std::promise<ModifyLoadBalancerTargetAttributesOutcome>>();
ModifyLoadBalancerTargetAttributesAsync(
request,
[prom](
const AsClient*,
const ModifyLoadBalancerTargetAttributesRequest&,
ModifyLoadBalancerTargetAttributesOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::ModifyLoadBalancersOutcome AsClient::ModifyLoadBalancers(const ModifyLoadBalancersRequest &request)
{
auto outcome = MakeRequest(request, "ModifyLoadBalancers");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
ModifyLoadBalancersResponse rsp = ModifyLoadBalancersResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return ModifyLoadBalancersOutcome(rsp);
else
return ModifyLoadBalancersOutcome(o.GetError());
}
else
{
return ModifyLoadBalancersOutcome(outcome.GetError());
}
}
void AsClient::ModifyLoadBalancersAsync(const ModifyLoadBalancersRequest& request, const ModifyLoadBalancersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const ModifyLoadBalancersRequest&;
using Resp = ModifyLoadBalancersResponse;
DoRequestAsync<Req, Resp>(
"ModifyLoadBalancers", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::ModifyLoadBalancersOutcomeCallable AsClient::ModifyLoadBalancersCallable(const ModifyLoadBalancersRequest &request)
{
const auto prom = std::make_shared<std::promise<ModifyLoadBalancersOutcome>>();
ModifyLoadBalancersAsync(
request,
[prom](
const AsClient*,
const ModifyLoadBalancersRequest&,
ModifyLoadBalancersOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::ModifyNotificationConfigurationOutcome AsClient::ModifyNotificationConfiguration(const ModifyNotificationConfigurationRequest &request)
{
auto outcome = MakeRequest(request, "ModifyNotificationConfiguration");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
ModifyNotificationConfigurationResponse rsp = ModifyNotificationConfigurationResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return ModifyNotificationConfigurationOutcome(rsp);
else
return ModifyNotificationConfigurationOutcome(o.GetError());
}
else
{
return ModifyNotificationConfigurationOutcome(outcome.GetError());
}
}
void AsClient::ModifyNotificationConfigurationAsync(const ModifyNotificationConfigurationRequest& request, const ModifyNotificationConfigurationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const ModifyNotificationConfigurationRequest&;
using Resp = ModifyNotificationConfigurationResponse;
DoRequestAsync<Req, Resp>(
"ModifyNotificationConfiguration", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::ModifyNotificationConfigurationOutcomeCallable AsClient::ModifyNotificationConfigurationCallable(const ModifyNotificationConfigurationRequest &request)
{
const auto prom = std::make_shared<std::promise<ModifyNotificationConfigurationOutcome>>();
ModifyNotificationConfigurationAsync(
request,
[prom](
const AsClient*,
const ModifyNotificationConfigurationRequest&,
ModifyNotificationConfigurationOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::ModifyScalingPolicyOutcome AsClient::ModifyScalingPolicy(const ModifyScalingPolicyRequest &request)
{
auto outcome = MakeRequest(request, "ModifyScalingPolicy");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
ModifyScalingPolicyResponse rsp = ModifyScalingPolicyResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return ModifyScalingPolicyOutcome(rsp);
else
return ModifyScalingPolicyOutcome(o.GetError());
}
else
{
return ModifyScalingPolicyOutcome(outcome.GetError());
}
}
void AsClient::ModifyScalingPolicyAsync(const ModifyScalingPolicyRequest& request, const ModifyScalingPolicyAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const ModifyScalingPolicyRequest&;
using Resp = ModifyScalingPolicyResponse;
DoRequestAsync<Req, Resp>(
"ModifyScalingPolicy", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::ModifyScalingPolicyOutcomeCallable AsClient::ModifyScalingPolicyCallable(const ModifyScalingPolicyRequest &request)
{
const auto prom = std::make_shared<std::promise<ModifyScalingPolicyOutcome>>();
ModifyScalingPolicyAsync(
request,
[prom](
const AsClient*,
const ModifyScalingPolicyRequest&,
ModifyScalingPolicyOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::ModifyScheduledActionOutcome AsClient::ModifyScheduledAction(const ModifyScheduledActionRequest &request)
{
auto outcome = MakeRequest(request, "ModifyScheduledAction");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
ModifyScheduledActionResponse rsp = ModifyScheduledActionResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return ModifyScheduledActionOutcome(rsp);
else
return ModifyScheduledActionOutcome(o.GetError());
}
else
{
return ModifyScheduledActionOutcome(outcome.GetError());
}
}
void AsClient::ModifyScheduledActionAsync(const ModifyScheduledActionRequest& request, const ModifyScheduledActionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const ModifyScheduledActionRequest&;
using Resp = ModifyScheduledActionResponse;
DoRequestAsync<Req, Resp>(
"ModifyScheduledAction", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::ModifyScheduledActionOutcomeCallable AsClient::ModifyScheduledActionCallable(const ModifyScheduledActionRequest &request)
{
const auto prom = std::make_shared<std::promise<ModifyScheduledActionOutcome>>();
ModifyScheduledActionAsync(
request,
[prom](
const AsClient*,
const ModifyScheduledActionRequest&,
ModifyScheduledActionOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::RemoveInstancesOutcome AsClient::RemoveInstances(const RemoveInstancesRequest &request)
{
auto outcome = MakeRequest(request, "RemoveInstances");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
RemoveInstancesResponse rsp = RemoveInstancesResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return RemoveInstancesOutcome(rsp);
else
return RemoveInstancesOutcome(o.GetError());
}
else
{
return RemoveInstancesOutcome(outcome.GetError());
}
}
void AsClient::RemoveInstancesAsync(const RemoveInstancesRequest& request, const RemoveInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const RemoveInstancesRequest&;
using Resp = RemoveInstancesResponse;
DoRequestAsync<Req, Resp>(
"RemoveInstances", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::RemoveInstancesOutcomeCallable AsClient::RemoveInstancesCallable(const RemoveInstancesRequest &request)
{
const auto prom = std::make_shared<std::promise<RemoveInstancesOutcome>>();
RemoveInstancesAsync(
request,
[prom](
const AsClient*,
const RemoveInstancesRequest&,
RemoveInstancesOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::ResumeInstanceRefreshOutcome AsClient::ResumeInstanceRefresh(const ResumeInstanceRefreshRequest &request)
{
auto outcome = MakeRequest(request, "ResumeInstanceRefresh");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
ResumeInstanceRefreshResponse rsp = ResumeInstanceRefreshResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return ResumeInstanceRefreshOutcome(rsp);
else
return ResumeInstanceRefreshOutcome(o.GetError());
}
else
{
return ResumeInstanceRefreshOutcome(outcome.GetError());
}
}
void AsClient::ResumeInstanceRefreshAsync(const ResumeInstanceRefreshRequest& request, const ResumeInstanceRefreshAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const ResumeInstanceRefreshRequest&;
using Resp = ResumeInstanceRefreshResponse;
DoRequestAsync<Req, Resp>(
"ResumeInstanceRefresh", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::ResumeInstanceRefreshOutcomeCallable AsClient::ResumeInstanceRefreshCallable(const ResumeInstanceRefreshRequest &request)
{
const auto prom = std::make_shared<std::promise<ResumeInstanceRefreshOutcome>>();
ResumeInstanceRefreshAsync(
request,
[prom](
const AsClient*,
const ResumeInstanceRefreshRequest&,
ResumeInstanceRefreshOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::RollbackInstanceRefreshOutcome AsClient::RollbackInstanceRefresh(const RollbackInstanceRefreshRequest &request)
{
auto outcome = MakeRequest(request, "RollbackInstanceRefresh");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
RollbackInstanceRefreshResponse rsp = RollbackInstanceRefreshResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return RollbackInstanceRefreshOutcome(rsp);
else
return RollbackInstanceRefreshOutcome(o.GetError());
}
else
{
return RollbackInstanceRefreshOutcome(outcome.GetError());
}
}
void AsClient::RollbackInstanceRefreshAsync(const RollbackInstanceRefreshRequest& request, const RollbackInstanceRefreshAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const RollbackInstanceRefreshRequest&;
using Resp = RollbackInstanceRefreshResponse;
DoRequestAsync<Req, Resp>(
"RollbackInstanceRefresh", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::RollbackInstanceRefreshOutcomeCallable AsClient::RollbackInstanceRefreshCallable(const RollbackInstanceRefreshRequest &request)
{
const auto prom = std::make_shared<std::promise<RollbackInstanceRefreshOutcome>>();
RollbackInstanceRefreshAsync(
request,
[prom](
const AsClient*,
const RollbackInstanceRefreshRequest&,
RollbackInstanceRefreshOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::ScaleInInstancesOutcome AsClient::ScaleInInstances(const ScaleInInstancesRequest &request)
{
auto outcome = MakeRequest(request, "ScaleInInstances");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
ScaleInInstancesResponse rsp = ScaleInInstancesResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return ScaleInInstancesOutcome(rsp);
else
return ScaleInInstancesOutcome(o.GetError());
}
else
{
return ScaleInInstancesOutcome(outcome.GetError());
}
}
void AsClient::ScaleInInstancesAsync(const ScaleInInstancesRequest& request, const ScaleInInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const ScaleInInstancesRequest&;
using Resp = ScaleInInstancesResponse;
DoRequestAsync<Req, Resp>(
"ScaleInInstances", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::ScaleInInstancesOutcomeCallable AsClient::ScaleInInstancesCallable(const ScaleInInstancesRequest &request)
{
const auto prom = std::make_shared<std::promise<ScaleInInstancesOutcome>>();
ScaleInInstancesAsync(
request,
[prom](
const AsClient*,
const ScaleInInstancesRequest&,
ScaleInInstancesOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::ScaleOutInstancesOutcome AsClient::ScaleOutInstances(const ScaleOutInstancesRequest &request)
{
auto outcome = MakeRequest(request, "ScaleOutInstances");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
ScaleOutInstancesResponse rsp = ScaleOutInstancesResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return ScaleOutInstancesOutcome(rsp);
else
return ScaleOutInstancesOutcome(o.GetError());
}
else
{
return ScaleOutInstancesOutcome(outcome.GetError());
}
}
void AsClient::ScaleOutInstancesAsync(const ScaleOutInstancesRequest& request, const ScaleOutInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const ScaleOutInstancesRequest&;
using Resp = ScaleOutInstancesResponse;
DoRequestAsync<Req, Resp>(
"ScaleOutInstances", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::ScaleOutInstancesOutcomeCallable AsClient::ScaleOutInstancesCallable(const ScaleOutInstancesRequest &request)
{
const auto prom = std::make_shared<std::promise<ScaleOutInstancesOutcome>>();
ScaleOutInstancesAsync(
request,
[prom](
const AsClient*,
const ScaleOutInstancesRequest&,
ScaleOutInstancesOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::SetInstancesProtectionOutcome AsClient::SetInstancesProtection(const SetInstancesProtectionRequest &request)
{
auto outcome = MakeRequest(request, "SetInstancesProtection");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
SetInstancesProtectionResponse rsp = SetInstancesProtectionResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return SetInstancesProtectionOutcome(rsp);
else
return SetInstancesProtectionOutcome(o.GetError());
}
else
{
return SetInstancesProtectionOutcome(outcome.GetError());
}
}
void AsClient::SetInstancesProtectionAsync(const SetInstancesProtectionRequest& request, const SetInstancesProtectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const SetInstancesProtectionRequest&;
using Resp = SetInstancesProtectionResponse;
DoRequestAsync<Req, Resp>(
"SetInstancesProtection", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::SetInstancesProtectionOutcomeCallable AsClient::SetInstancesProtectionCallable(const SetInstancesProtectionRequest &request)
{
const auto prom = std::make_shared<std::promise<SetInstancesProtectionOutcome>>();
SetInstancesProtectionAsync(
request,
[prom](
const AsClient*,
const SetInstancesProtectionRequest&,
SetInstancesProtectionOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::StartAutoScalingInstancesOutcome AsClient::StartAutoScalingInstances(const StartAutoScalingInstancesRequest &request)
{
auto outcome = MakeRequest(request, "StartAutoScalingInstances");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
StartAutoScalingInstancesResponse rsp = StartAutoScalingInstancesResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return StartAutoScalingInstancesOutcome(rsp);
else
return StartAutoScalingInstancesOutcome(o.GetError());
}
else
{
return StartAutoScalingInstancesOutcome(outcome.GetError());
}
}
void AsClient::StartAutoScalingInstancesAsync(const StartAutoScalingInstancesRequest& request, const StartAutoScalingInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const StartAutoScalingInstancesRequest&;
using Resp = StartAutoScalingInstancesResponse;
DoRequestAsync<Req, Resp>(
"StartAutoScalingInstances", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::StartAutoScalingInstancesOutcomeCallable AsClient::StartAutoScalingInstancesCallable(const StartAutoScalingInstancesRequest &request)
{
const auto prom = std::make_shared<std::promise<StartAutoScalingInstancesOutcome>>();
StartAutoScalingInstancesAsync(
request,
[prom](
const AsClient*,
const StartAutoScalingInstancesRequest&,
StartAutoScalingInstancesOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::StartInstanceRefreshOutcome AsClient::StartInstanceRefresh(const StartInstanceRefreshRequest &request)
{
auto outcome = MakeRequest(request, "StartInstanceRefresh");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
StartInstanceRefreshResponse rsp = StartInstanceRefreshResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return StartInstanceRefreshOutcome(rsp);
else
return StartInstanceRefreshOutcome(o.GetError());
}
else
{
return StartInstanceRefreshOutcome(outcome.GetError());
}
}
void AsClient::StartInstanceRefreshAsync(const StartInstanceRefreshRequest& request, const StartInstanceRefreshAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const StartInstanceRefreshRequest&;
using Resp = StartInstanceRefreshResponse;
DoRequestAsync<Req, Resp>(
"StartInstanceRefresh", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::StartInstanceRefreshOutcomeCallable AsClient::StartInstanceRefreshCallable(const StartInstanceRefreshRequest &request)
{
const auto prom = std::make_shared<std::promise<StartInstanceRefreshOutcome>>();
StartInstanceRefreshAsync(
request,
[prom](
const AsClient*,
const StartInstanceRefreshRequest&,
StartInstanceRefreshOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::StopAutoScalingInstancesOutcome AsClient::StopAutoScalingInstances(const StopAutoScalingInstancesRequest &request)
{
auto outcome = MakeRequest(request, "StopAutoScalingInstances");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
StopAutoScalingInstancesResponse rsp = StopAutoScalingInstancesResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return StopAutoScalingInstancesOutcome(rsp);
else
return StopAutoScalingInstancesOutcome(o.GetError());
}
else
{
return StopAutoScalingInstancesOutcome(outcome.GetError());
}
}
void AsClient::StopAutoScalingInstancesAsync(const StopAutoScalingInstancesRequest& request, const StopAutoScalingInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const StopAutoScalingInstancesRequest&;
using Resp = StopAutoScalingInstancesResponse;
DoRequestAsync<Req, Resp>(
"StopAutoScalingInstances", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::StopAutoScalingInstancesOutcomeCallable AsClient::StopAutoScalingInstancesCallable(const StopAutoScalingInstancesRequest &request)
{
const auto prom = std::make_shared<std::promise<StopAutoScalingInstancesOutcome>>();
StopAutoScalingInstancesAsync(
request,
[prom](
const AsClient*,
const StopAutoScalingInstancesRequest&,
StopAutoScalingInstancesOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::StopInstanceRefreshOutcome AsClient::StopInstanceRefresh(const StopInstanceRefreshRequest &request)
{
auto outcome = MakeRequest(request, "StopInstanceRefresh");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
StopInstanceRefreshResponse rsp = StopInstanceRefreshResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return StopInstanceRefreshOutcome(rsp);
else
return StopInstanceRefreshOutcome(o.GetError());
}
else
{
return StopInstanceRefreshOutcome(outcome.GetError());
}
}
void AsClient::StopInstanceRefreshAsync(const StopInstanceRefreshRequest& request, const StopInstanceRefreshAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const StopInstanceRefreshRequest&;
using Resp = StopInstanceRefreshResponse;
DoRequestAsync<Req, Resp>(
"StopInstanceRefresh", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::StopInstanceRefreshOutcomeCallable AsClient::StopInstanceRefreshCallable(const StopInstanceRefreshRequest &request)
{
const auto prom = std::make_shared<std::promise<StopInstanceRefreshOutcome>>();
StopInstanceRefreshAsync(
request,
[prom](
const AsClient*,
const StopInstanceRefreshRequest&,
StopInstanceRefreshOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::UpgradeLaunchConfigurationOutcome AsClient::UpgradeLaunchConfiguration(const UpgradeLaunchConfigurationRequest &request)
{
auto outcome = MakeRequest(request, "UpgradeLaunchConfiguration");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
UpgradeLaunchConfigurationResponse rsp = UpgradeLaunchConfigurationResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return UpgradeLaunchConfigurationOutcome(rsp);
else
return UpgradeLaunchConfigurationOutcome(o.GetError());
}
else
{
return UpgradeLaunchConfigurationOutcome(outcome.GetError());
}
}
void AsClient::UpgradeLaunchConfigurationAsync(const UpgradeLaunchConfigurationRequest& request, const UpgradeLaunchConfigurationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const UpgradeLaunchConfigurationRequest&;
using Resp = UpgradeLaunchConfigurationResponse;
DoRequestAsync<Req, Resp>(
"UpgradeLaunchConfiguration", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::UpgradeLaunchConfigurationOutcomeCallable AsClient::UpgradeLaunchConfigurationCallable(const UpgradeLaunchConfigurationRequest &request)
{
const auto prom = std::make_shared<std::promise<UpgradeLaunchConfigurationOutcome>>();
UpgradeLaunchConfigurationAsync(
request,
[prom](
const AsClient*,
const UpgradeLaunchConfigurationRequest&,
UpgradeLaunchConfigurationOutcome resp,
const std::shared_ptr<const AsyncCallerContext>&
)
{
prom->set_value(resp);
});
return prom->get_future();
}
AsClient::UpgradeLifecycleHookOutcome AsClient::UpgradeLifecycleHook(const UpgradeLifecycleHookRequest &request)
{
auto outcome = MakeRequest(request, "UpgradeLifecycleHook");
if (outcome.IsSuccess())
{
auto r = outcome.GetResult();
string payload = string(r.Body(), r.BodySize());
UpgradeLifecycleHookResponse rsp = UpgradeLifecycleHookResponse();
auto o = rsp.Deserialize(payload);
if (o.IsSuccess())
return UpgradeLifecycleHookOutcome(rsp);
else
return UpgradeLifecycleHookOutcome(o.GetError());
}
else
{
return UpgradeLifecycleHookOutcome(outcome.GetError());
}
}
void AsClient::UpgradeLifecycleHookAsync(const UpgradeLifecycleHookRequest& request, const UpgradeLifecycleHookAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context)
{
using Req = const UpgradeLifecycleHookRequest&;
using Resp = UpgradeLifecycleHookResponse;
DoRequestAsync<Req, Resp>(
"UpgradeLifecycleHook", request, {{{"Content-Type", "application/json"}}},
[this, context, handler](Req req, Outcome<Core::Error, Resp> resp)
{
handler(this, req, std::move(resp), context);
});
}
AsClient::UpgradeLifecycleHookOutcomeCallable AsClient::UpgradeLifecycleHookCallable(const UpgradeLifecycleHookRequest &request)
{
const auto prom = std::make_shared<std::promise<UpgradeLifecycleHookOutcome>>();
UpgradeLifecycleHookAsync(
request,
[prom](
const AsClient*,
const UpgradeLifecycleHookRequest&,
UpgradeLifecycleHookOutcome 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

搜索帮助