VpcClient.cc 455 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897118981189911900119011190211903119041190511906119071190811909119101191111912119131191411915119161191711918119191192011921119221192311924119251192611927119281192911930119311193211933119341193511936119371193811939119401194111942119431194411945119461194711948119491195011951119521195311954119551195611957119581195911960119611196211963119641196511966119671196811969119701197111972119731197411975119761197711978119791198011981119821198311984119851198611987119881198911990119911199211993119941199511996119971199811999120001200112002120031200412005120061200712008120091201012011120121201312014120151201612017120181201912020120211202212023120241202512026120271202812029120301203112032120331203412035120361203712038120391204012041120421204312044120451204612047120481204912050120511205212053120541205512056120571205812059120601206112062120631206412065120661206712068120691207012071120721207312074120751207612077120781207912080120811208212083120841208512086120871208812089120901209112092120931209412095120961209712098120991210012101121021210312104121051210612107121081210912110121111211212113121141211512116121171211812119121201212112122121231212412125121261212712128121291213012131121321213312134121351213612137121381213912140121411214212143121441214512146121471214812149121501215112152121531215412155121561215712158121591216012161121621216312164121651216612167121681216912170121711217212173121741217512176121771217812179121801218112182121831218412185121861218712188121891219012191121921219312194121951219612197121981219912200122011220212203122041220512206122071220812209122101221112212122131221412215122161221712218122191222012221122221222312224122251222612227122281222912230122311223212233122341223512236122371223812239122401224112242122431224412245122461224712248122491225012251122521225312254122551225612257122581225912260122611226212263122641226512266122671226812269122701227112272122731227412275122761227712278122791228012281122821228312284122851228612287122881228912290122911229212293122941229512296122971229812299123001230112302123031230412305123061230712308123091231012311123121231312314123151231612317123181231912320123211232212323123241232512326123271232812329123301233112332123331233412335123361233712338123391234012341123421234312344123451234612347123481234912350123511235212353123541235512356123571235812359123601236112362123631236412365123661236712368123691237012371123721237312374123751237612377123781237912380123811238212383123841238512386123871238812389123901239112392123931239412395123961239712398123991240012401124021240312404124051240612407124081240912410124111241212413124141241512416124171241812419124201242112422124231242412425124261242712428124291243012431124321243312434124351243612437124381243912440124411244212443124441244512446124471244812449124501245112452124531245412455124561245712458124591246012461124621246312464124651246612467124681246912470124711247212473124741247512476124771247812479124801248112482124831248412485124861248712488124891249012491124921249312494124951249612497124981249912500125011250212503125041250512506125071250812509125101251112512125131251412515125161251712518125191252012521125221252312524125251252612527125281252912530125311253212533125341253512536125371253812539125401254112542125431254412545125461254712548125491255012551125521255312554125551255612557125581255912560125611256212563125641256512566125671256812569125701257112572125731257412575125761257712578125791258012581125821258312584125851258612587125881258912590125911259212593125941259512596125971259812599126001260112602126031260412605126061260712608126091261012611126121261312614126151261612617126181261912620126211262212623126241262512626126271262812629126301263112632126331263412635126361263712638126391264012641126421264312644126451264612647126481264912650126511265212653
  1. /*
  2. * Copyright 2009-2017 Alibaba Cloud All rights reserved.
  3. *
  4. * Licensed under the Apache License, Version 2.0 (the "License");
  5. * you may not use this file except in compliance with the License.
  6. * You may obtain a copy of the License at
  7. *
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. *
  10. * Unless required by applicable law or agreed to in writing, software
  11. * distributed under the License is distributed on an "AS IS" BASIS,
  12. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. * See the License for the specific language governing permissions and
  14. * limitations under the License.
  15. */
  16. #include <alibabacloud/vpc/VpcClient.h>
  17. #include <alibabacloud/core/SimpleCredentialsProvider.h>
  18. using namespace AlibabaCloud;
  19. using namespace AlibabaCloud::Location;
  20. using namespace AlibabaCloud::Vpc;
  21. using namespace AlibabaCloud::Vpc::Model;
  22. namespace
  23. {
  24. const std::string SERVICE_NAME = "Vpc";
  25. }
  26. VpcClient::VpcClient(const Credentials &credentials, const ClientConfiguration &configuration) :
  27. RpcServiceClient(SERVICE_NAME, std::make_shared<SimpleCredentialsProvider>(credentials), configuration)
  28. {
  29. auto locationClient = std::make_shared<LocationClient>(credentials, configuration);
  30. endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "vpc");
  31. }
  32. VpcClient::VpcClient(const std::shared_ptr<CredentialsProvider>& credentialsProvider, const ClientConfiguration & configuration) :
  33. RpcServiceClient(SERVICE_NAME, credentialsProvider, configuration)
  34. {
  35. auto locationClient = std::make_shared<LocationClient>(credentialsProvider, configuration);
  36. endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "vpc");
  37. }
  38. VpcClient::VpcClient(const std::string & accessKeyId, const std::string & accessKeySecret, const ClientConfiguration & configuration) :
  39. RpcServiceClient(SERVICE_NAME, std::make_shared<SimpleCredentialsProvider>(accessKeyId, accessKeySecret), configuration)
  40. {
  41. auto locationClient = std::make_shared<LocationClient>(accessKeyId, accessKeySecret, configuration);
  42. endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "vpc");
  43. }
  44. VpcClient::~VpcClient()
  45. {}
  46. VpcClient::ActivateRouterInterfaceOutcome VpcClient::activateRouterInterface(const ActivateRouterInterfaceRequest &request) const
  47. {
  48. auto endpointOutcome = endpointProvider_->getEndpoint();
  49. if (!endpointOutcome.isSuccess())
  50. return ActivateRouterInterfaceOutcome(endpointOutcome.error());
  51. auto outcome = makeRequest(endpointOutcome.result(), request);
  52. if (outcome.isSuccess())
  53. return ActivateRouterInterfaceOutcome(ActivateRouterInterfaceResult(outcome.result()));
  54. else
  55. return ActivateRouterInterfaceOutcome(outcome.error());
  56. }
  57. void VpcClient::activateRouterInterfaceAsync(const ActivateRouterInterfaceRequest& request, const ActivateRouterInterfaceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  58. {
  59. auto fn = [this, request, handler, context]()
  60. {
  61. handler(this, request, activateRouterInterface(request), context);
  62. };
  63. asyncExecute(new Runnable(fn));
  64. }
  65. VpcClient::ActivateRouterInterfaceOutcomeCallable VpcClient::activateRouterInterfaceCallable(const ActivateRouterInterfaceRequest &request) const
  66. {
  67. auto task = std::make_shared<std::packaged_task<ActivateRouterInterfaceOutcome()>>(
  68. [this, request]()
  69. {
  70. return this->activateRouterInterface(request);
  71. });
  72. asyncExecute(new Runnable([task]() { (*task)(); }));
  73. return task->get_future();
  74. }
  75. VpcClient::ActiveFlowLogOutcome VpcClient::activeFlowLog(const ActiveFlowLogRequest &request) const
  76. {
  77. auto endpointOutcome = endpointProvider_->getEndpoint();
  78. if (!endpointOutcome.isSuccess())
  79. return ActiveFlowLogOutcome(endpointOutcome.error());
  80. auto outcome = makeRequest(endpointOutcome.result(), request);
  81. if (outcome.isSuccess())
  82. return ActiveFlowLogOutcome(ActiveFlowLogResult(outcome.result()));
  83. else
  84. return ActiveFlowLogOutcome(outcome.error());
  85. }
  86. void VpcClient::activeFlowLogAsync(const ActiveFlowLogRequest& request, const ActiveFlowLogAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  87. {
  88. auto fn = [this, request, handler, context]()
  89. {
  90. handler(this, request, activeFlowLog(request), context);
  91. };
  92. asyncExecute(new Runnable(fn));
  93. }
  94. VpcClient::ActiveFlowLogOutcomeCallable VpcClient::activeFlowLogCallable(const ActiveFlowLogRequest &request) const
  95. {
  96. auto task = std::make_shared<std::packaged_task<ActiveFlowLogOutcome()>>(
  97. [this, request]()
  98. {
  99. return this->activeFlowLog(request);
  100. });
  101. asyncExecute(new Runnable([task]() { (*task)(); }));
  102. return task->get_future();
  103. }
  104. VpcClient::AddBgpNetworkOutcome VpcClient::addBgpNetwork(const AddBgpNetworkRequest &request) const
  105. {
  106. auto endpointOutcome = endpointProvider_->getEndpoint();
  107. if (!endpointOutcome.isSuccess())
  108. return AddBgpNetworkOutcome(endpointOutcome.error());
  109. auto outcome = makeRequest(endpointOutcome.result(), request);
  110. if (outcome.isSuccess())
  111. return AddBgpNetworkOutcome(AddBgpNetworkResult(outcome.result()));
  112. else
  113. return AddBgpNetworkOutcome(outcome.error());
  114. }
  115. void VpcClient::addBgpNetworkAsync(const AddBgpNetworkRequest& request, const AddBgpNetworkAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  116. {
  117. auto fn = [this, request, handler, context]()
  118. {
  119. handler(this, request, addBgpNetwork(request), context);
  120. };
  121. asyncExecute(new Runnable(fn));
  122. }
  123. VpcClient::AddBgpNetworkOutcomeCallable VpcClient::addBgpNetworkCallable(const AddBgpNetworkRequest &request) const
  124. {
  125. auto task = std::make_shared<std::packaged_task<AddBgpNetworkOutcome()>>(
  126. [this, request]()
  127. {
  128. return this->addBgpNetwork(request);
  129. });
  130. asyncExecute(new Runnable([task]() { (*task)(); }));
  131. return task->get_future();
  132. }
  133. VpcClient::AddCommonBandwidthPackageIpOutcome VpcClient::addCommonBandwidthPackageIp(const AddCommonBandwidthPackageIpRequest &request) const
  134. {
  135. auto endpointOutcome = endpointProvider_->getEndpoint();
  136. if (!endpointOutcome.isSuccess())
  137. return AddCommonBandwidthPackageIpOutcome(endpointOutcome.error());
  138. auto outcome = makeRequest(endpointOutcome.result(), request);
  139. if (outcome.isSuccess())
  140. return AddCommonBandwidthPackageIpOutcome(AddCommonBandwidthPackageIpResult(outcome.result()));
  141. else
  142. return AddCommonBandwidthPackageIpOutcome(outcome.error());
  143. }
  144. void VpcClient::addCommonBandwidthPackageIpAsync(const AddCommonBandwidthPackageIpRequest& request, const AddCommonBandwidthPackageIpAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  145. {
  146. auto fn = [this, request, handler, context]()
  147. {
  148. handler(this, request, addCommonBandwidthPackageIp(request), context);
  149. };
  150. asyncExecute(new Runnable(fn));
  151. }
  152. VpcClient::AddCommonBandwidthPackageIpOutcomeCallable VpcClient::addCommonBandwidthPackageIpCallable(const AddCommonBandwidthPackageIpRequest &request) const
  153. {
  154. auto task = std::make_shared<std::packaged_task<AddCommonBandwidthPackageIpOutcome()>>(
  155. [this, request]()
  156. {
  157. return this->addCommonBandwidthPackageIp(request);
  158. });
  159. asyncExecute(new Runnable([task]() { (*task)(); }));
  160. return task->get_future();
  161. }
  162. VpcClient::AddCommonBandwidthPackageIpsOutcome VpcClient::addCommonBandwidthPackageIps(const AddCommonBandwidthPackageIpsRequest &request) const
  163. {
  164. auto endpointOutcome = endpointProvider_->getEndpoint();
  165. if (!endpointOutcome.isSuccess())
  166. return AddCommonBandwidthPackageIpsOutcome(endpointOutcome.error());
  167. auto outcome = makeRequest(endpointOutcome.result(), request);
  168. if (outcome.isSuccess())
  169. return AddCommonBandwidthPackageIpsOutcome(AddCommonBandwidthPackageIpsResult(outcome.result()));
  170. else
  171. return AddCommonBandwidthPackageIpsOutcome(outcome.error());
  172. }
  173. void VpcClient::addCommonBandwidthPackageIpsAsync(const AddCommonBandwidthPackageIpsRequest& request, const AddCommonBandwidthPackageIpsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  174. {
  175. auto fn = [this, request, handler, context]()
  176. {
  177. handler(this, request, addCommonBandwidthPackageIps(request), context);
  178. };
  179. asyncExecute(new Runnable(fn));
  180. }
  181. VpcClient::AddCommonBandwidthPackageIpsOutcomeCallable VpcClient::addCommonBandwidthPackageIpsCallable(const AddCommonBandwidthPackageIpsRequest &request) const
  182. {
  183. auto task = std::make_shared<std::packaged_task<AddCommonBandwidthPackageIpsOutcome()>>(
  184. [this, request]()
  185. {
  186. return this->addCommonBandwidthPackageIps(request);
  187. });
  188. asyncExecute(new Runnable([task]() { (*task)(); }));
  189. return task->get_future();
  190. }
  191. VpcClient::AddGlobalAccelerationInstanceIpOutcome VpcClient::addGlobalAccelerationInstanceIp(const AddGlobalAccelerationInstanceIpRequest &request) const
  192. {
  193. auto endpointOutcome = endpointProvider_->getEndpoint();
  194. if (!endpointOutcome.isSuccess())
  195. return AddGlobalAccelerationInstanceIpOutcome(endpointOutcome.error());
  196. auto outcome = makeRequest(endpointOutcome.result(), request);
  197. if (outcome.isSuccess())
  198. return AddGlobalAccelerationInstanceIpOutcome(AddGlobalAccelerationInstanceIpResult(outcome.result()));
  199. else
  200. return AddGlobalAccelerationInstanceIpOutcome(outcome.error());
  201. }
  202. void VpcClient::addGlobalAccelerationInstanceIpAsync(const AddGlobalAccelerationInstanceIpRequest& request, const AddGlobalAccelerationInstanceIpAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  203. {
  204. auto fn = [this, request, handler, context]()
  205. {
  206. handler(this, request, addGlobalAccelerationInstanceIp(request), context);
  207. };
  208. asyncExecute(new Runnable(fn));
  209. }
  210. VpcClient::AddGlobalAccelerationInstanceIpOutcomeCallable VpcClient::addGlobalAccelerationInstanceIpCallable(const AddGlobalAccelerationInstanceIpRequest &request) const
  211. {
  212. auto task = std::make_shared<std::packaged_task<AddGlobalAccelerationInstanceIpOutcome()>>(
  213. [this, request]()
  214. {
  215. return this->addGlobalAccelerationInstanceIp(request);
  216. });
  217. asyncExecute(new Runnable([task]() { (*task)(); }));
  218. return task->get_future();
  219. }
  220. VpcClient::AddIPv6TranslatorAclListEntryOutcome VpcClient::addIPv6TranslatorAclListEntry(const AddIPv6TranslatorAclListEntryRequest &request) const
  221. {
  222. auto endpointOutcome = endpointProvider_->getEndpoint();
  223. if (!endpointOutcome.isSuccess())
  224. return AddIPv6TranslatorAclListEntryOutcome(endpointOutcome.error());
  225. auto outcome = makeRequest(endpointOutcome.result(), request);
  226. if (outcome.isSuccess())
  227. return AddIPv6TranslatorAclListEntryOutcome(AddIPv6TranslatorAclListEntryResult(outcome.result()));
  228. else
  229. return AddIPv6TranslatorAclListEntryOutcome(outcome.error());
  230. }
  231. void VpcClient::addIPv6TranslatorAclListEntryAsync(const AddIPv6TranslatorAclListEntryRequest& request, const AddIPv6TranslatorAclListEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  232. {
  233. auto fn = [this, request, handler, context]()
  234. {
  235. handler(this, request, addIPv6TranslatorAclListEntry(request), context);
  236. };
  237. asyncExecute(new Runnable(fn));
  238. }
  239. VpcClient::AddIPv6TranslatorAclListEntryOutcomeCallable VpcClient::addIPv6TranslatorAclListEntryCallable(const AddIPv6TranslatorAclListEntryRequest &request) const
  240. {
  241. auto task = std::make_shared<std::packaged_task<AddIPv6TranslatorAclListEntryOutcome()>>(
  242. [this, request]()
  243. {
  244. return this->addIPv6TranslatorAclListEntry(request);
  245. });
  246. asyncExecute(new Runnable([task]() { (*task)(); }));
  247. return task->get_future();
  248. }
  249. VpcClient::AddPublicIpAddressPoolCidrBlockOutcome VpcClient::addPublicIpAddressPoolCidrBlock(const AddPublicIpAddressPoolCidrBlockRequest &request) const
  250. {
  251. auto endpointOutcome = endpointProvider_->getEndpoint();
  252. if (!endpointOutcome.isSuccess())
  253. return AddPublicIpAddressPoolCidrBlockOutcome(endpointOutcome.error());
  254. auto outcome = makeRequest(endpointOutcome.result(), request);
  255. if (outcome.isSuccess())
  256. return AddPublicIpAddressPoolCidrBlockOutcome(AddPublicIpAddressPoolCidrBlockResult(outcome.result()));
  257. else
  258. return AddPublicIpAddressPoolCidrBlockOutcome(outcome.error());
  259. }
  260. void VpcClient::addPublicIpAddressPoolCidrBlockAsync(const AddPublicIpAddressPoolCidrBlockRequest& request, const AddPublicIpAddressPoolCidrBlockAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  261. {
  262. auto fn = [this, request, handler, context]()
  263. {
  264. handler(this, request, addPublicIpAddressPoolCidrBlock(request), context);
  265. };
  266. asyncExecute(new Runnable(fn));
  267. }
  268. VpcClient::AddPublicIpAddressPoolCidrBlockOutcomeCallable VpcClient::addPublicIpAddressPoolCidrBlockCallable(const AddPublicIpAddressPoolCidrBlockRequest &request) const
  269. {
  270. auto task = std::make_shared<std::packaged_task<AddPublicIpAddressPoolCidrBlockOutcome()>>(
  271. [this, request]()
  272. {
  273. return this->addPublicIpAddressPoolCidrBlock(request);
  274. });
  275. asyncExecute(new Runnable([task]() { (*task)(); }));
  276. return task->get_future();
  277. }
  278. VpcClient::AddSourcesToTrafficMirrorSessionOutcome VpcClient::addSourcesToTrafficMirrorSession(const AddSourcesToTrafficMirrorSessionRequest &request) const
  279. {
  280. auto endpointOutcome = endpointProvider_->getEndpoint();
  281. if (!endpointOutcome.isSuccess())
  282. return AddSourcesToTrafficMirrorSessionOutcome(endpointOutcome.error());
  283. auto outcome = makeRequest(endpointOutcome.result(), request);
  284. if (outcome.isSuccess())
  285. return AddSourcesToTrafficMirrorSessionOutcome(AddSourcesToTrafficMirrorSessionResult(outcome.result()));
  286. else
  287. return AddSourcesToTrafficMirrorSessionOutcome(outcome.error());
  288. }
  289. void VpcClient::addSourcesToTrafficMirrorSessionAsync(const AddSourcesToTrafficMirrorSessionRequest& request, const AddSourcesToTrafficMirrorSessionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  290. {
  291. auto fn = [this, request, handler, context]()
  292. {
  293. handler(this, request, addSourcesToTrafficMirrorSession(request), context);
  294. };
  295. asyncExecute(new Runnable(fn));
  296. }
  297. VpcClient::AddSourcesToTrafficMirrorSessionOutcomeCallable VpcClient::addSourcesToTrafficMirrorSessionCallable(const AddSourcesToTrafficMirrorSessionRequest &request) const
  298. {
  299. auto task = std::make_shared<std::packaged_task<AddSourcesToTrafficMirrorSessionOutcome()>>(
  300. [this, request]()
  301. {
  302. return this->addSourcesToTrafficMirrorSession(request);
  303. });
  304. asyncExecute(new Runnable([task]() { (*task)(); }));
  305. return task->get_future();
  306. }
  307. VpcClient::AllocateEipAddressOutcome VpcClient::allocateEipAddress(const AllocateEipAddressRequest &request) const
  308. {
  309. auto endpointOutcome = endpointProvider_->getEndpoint();
  310. if (!endpointOutcome.isSuccess())
  311. return AllocateEipAddressOutcome(endpointOutcome.error());
  312. auto outcome = makeRequest(endpointOutcome.result(), request);
  313. if (outcome.isSuccess())
  314. return AllocateEipAddressOutcome(AllocateEipAddressResult(outcome.result()));
  315. else
  316. return AllocateEipAddressOutcome(outcome.error());
  317. }
  318. void VpcClient::allocateEipAddressAsync(const AllocateEipAddressRequest& request, const AllocateEipAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  319. {
  320. auto fn = [this, request, handler, context]()
  321. {
  322. handler(this, request, allocateEipAddress(request), context);
  323. };
  324. asyncExecute(new Runnable(fn));
  325. }
  326. VpcClient::AllocateEipAddressOutcomeCallable VpcClient::allocateEipAddressCallable(const AllocateEipAddressRequest &request) const
  327. {
  328. auto task = std::make_shared<std::packaged_task<AllocateEipAddressOutcome()>>(
  329. [this, request]()
  330. {
  331. return this->allocateEipAddress(request);
  332. });
  333. asyncExecute(new Runnable([task]() { (*task)(); }));
  334. return task->get_future();
  335. }
  336. VpcClient::AllocateEipAddressProOutcome VpcClient::allocateEipAddressPro(const AllocateEipAddressProRequest &request) const
  337. {
  338. auto endpointOutcome = endpointProvider_->getEndpoint();
  339. if (!endpointOutcome.isSuccess())
  340. return AllocateEipAddressProOutcome(endpointOutcome.error());
  341. auto outcome = makeRequest(endpointOutcome.result(), request);
  342. if (outcome.isSuccess())
  343. return AllocateEipAddressProOutcome(AllocateEipAddressProResult(outcome.result()));
  344. else
  345. return AllocateEipAddressProOutcome(outcome.error());
  346. }
  347. void VpcClient::allocateEipAddressProAsync(const AllocateEipAddressProRequest& request, const AllocateEipAddressProAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  348. {
  349. auto fn = [this, request, handler, context]()
  350. {
  351. handler(this, request, allocateEipAddressPro(request), context);
  352. };
  353. asyncExecute(new Runnable(fn));
  354. }
  355. VpcClient::AllocateEipAddressProOutcomeCallable VpcClient::allocateEipAddressProCallable(const AllocateEipAddressProRequest &request) const
  356. {
  357. auto task = std::make_shared<std::packaged_task<AllocateEipAddressProOutcome()>>(
  358. [this, request]()
  359. {
  360. return this->allocateEipAddressPro(request);
  361. });
  362. asyncExecute(new Runnable([task]() { (*task)(); }));
  363. return task->get_future();
  364. }
  365. VpcClient::AllocateEipSegmentAddressOutcome VpcClient::allocateEipSegmentAddress(const AllocateEipSegmentAddressRequest &request) const
  366. {
  367. auto endpointOutcome = endpointProvider_->getEndpoint();
  368. if (!endpointOutcome.isSuccess())
  369. return AllocateEipSegmentAddressOutcome(endpointOutcome.error());
  370. auto outcome = makeRequest(endpointOutcome.result(), request);
  371. if (outcome.isSuccess())
  372. return AllocateEipSegmentAddressOutcome(AllocateEipSegmentAddressResult(outcome.result()));
  373. else
  374. return AllocateEipSegmentAddressOutcome(outcome.error());
  375. }
  376. void VpcClient::allocateEipSegmentAddressAsync(const AllocateEipSegmentAddressRequest& request, const AllocateEipSegmentAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  377. {
  378. auto fn = [this, request, handler, context]()
  379. {
  380. handler(this, request, allocateEipSegmentAddress(request), context);
  381. };
  382. asyncExecute(new Runnable(fn));
  383. }
  384. VpcClient::AllocateEipSegmentAddressOutcomeCallable VpcClient::allocateEipSegmentAddressCallable(const AllocateEipSegmentAddressRequest &request) const
  385. {
  386. auto task = std::make_shared<std::packaged_task<AllocateEipSegmentAddressOutcome()>>(
  387. [this, request]()
  388. {
  389. return this->allocateEipSegmentAddress(request);
  390. });
  391. asyncExecute(new Runnable([task]() { (*task)(); }));
  392. return task->get_future();
  393. }
  394. VpcClient::AllocateIpv6InternetBandwidthOutcome VpcClient::allocateIpv6InternetBandwidth(const AllocateIpv6InternetBandwidthRequest &request) const
  395. {
  396. auto endpointOutcome = endpointProvider_->getEndpoint();
  397. if (!endpointOutcome.isSuccess())
  398. return AllocateIpv6InternetBandwidthOutcome(endpointOutcome.error());
  399. auto outcome = makeRequest(endpointOutcome.result(), request);
  400. if (outcome.isSuccess())
  401. return AllocateIpv6InternetBandwidthOutcome(AllocateIpv6InternetBandwidthResult(outcome.result()));
  402. else
  403. return AllocateIpv6InternetBandwidthOutcome(outcome.error());
  404. }
  405. void VpcClient::allocateIpv6InternetBandwidthAsync(const AllocateIpv6InternetBandwidthRequest& request, const AllocateIpv6InternetBandwidthAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  406. {
  407. auto fn = [this, request, handler, context]()
  408. {
  409. handler(this, request, allocateIpv6InternetBandwidth(request), context);
  410. };
  411. asyncExecute(new Runnable(fn));
  412. }
  413. VpcClient::AllocateIpv6InternetBandwidthOutcomeCallable VpcClient::allocateIpv6InternetBandwidthCallable(const AllocateIpv6InternetBandwidthRequest &request) const
  414. {
  415. auto task = std::make_shared<std::packaged_task<AllocateIpv6InternetBandwidthOutcome()>>(
  416. [this, request]()
  417. {
  418. return this->allocateIpv6InternetBandwidth(request);
  419. });
  420. asyncExecute(new Runnable([task]() { (*task)(); }));
  421. return task->get_future();
  422. }
  423. VpcClient::AllocateVpcIpv6CidrOutcome VpcClient::allocateVpcIpv6Cidr(const AllocateVpcIpv6CidrRequest &request) const
  424. {
  425. auto endpointOutcome = endpointProvider_->getEndpoint();
  426. if (!endpointOutcome.isSuccess())
  427. return AllocateVpcIpv6CidrOutcome(endpointOutcome.error());
  428. auto outcome = makeRequest(endpointOutcome.result(), request);
  429. if (outcome.isSuccess())
  430. return AllocateVpcIpv6CidrOutcome(AllocateVpcIpv6CidrResult(outcome.result()));
  431. else
  432. return AllocateVpcIpv6CidrOutcome(outcome.error());
  433. }
  434. void VpcClient::allocateVpcIpv6CidrAsync(const AllocateVpcIpv6CidrRequest& request, const AllocateVpcIpv6CidrAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  435. {
  436. auto fn = [this, request, handler, context]()
  437. {
  438. handler(this, request, allocateVpcIpv6Cidr(request), context);
  439. };
  440. asyncExecute(new Runnable(fn));
  441. }
  442. VpcClient::AllocateVpcIpv6CidrOutcomeCallable VpcClient::allocateVpcIpv6CidrCallable(const AllocateVpcIpv6CidrRequest &request) const
  443. {
  444. auto task = std::make_shared<std::packaged_task<AllocateVpcIpv6CidrOutcome()>>(
  445. [this, request]()
  446. {
  447. return this->allocateVpcIpv6Cidr(request);
  448. });
  449. asyncExecute(new Runnable([task]() { (*task)(); }));
  450. return task->get_future();
  451. }
  452. VpcClient::ApplyPhysicalConnectionLOAOutcome VpcClient::applyPhysicalConnectionLOA(const ApplyPhysicalConnectionLOARequest &request) const
  453. {
  454. auto endpointOutcome = endpointProvider_->getEndpoint();
  455. if (!endpointOutcome.isSuccess())
  456. return ApplyPhysicalConnectionLOAOutcome(endpointOutcome.error());
  457. auto outcome = makeRequest(endpointOutcome.result(), request);
  458. if (outcome.isSuccess())
  459. return ApplyPhysicalConnectionLOAOutcome(ApplyPhysicalConnectionLOAResult(outcome.result()));
  460. else
  461. return ApplyPhysicalConnectionLOAOutcome(outcome.error());
  462. }
  463. void VpcClient::applyPhysicalConnectionLOAAsync(const ApplyPhysicalConnectionLOARequest& request, const ApplyPhysicalConnectionLOAAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  464. {
  465. auto fn = [this, request, handler, context]()
  466. {
  467. handler(this, request, applyPhysicalConnectionLOA(request), context);
  468. };
  469. asyncExecute(new Runnable(fn));
  470. }
  471. VpcClient::ApplyPhysicalConnectionLOAOutcomeCallable VpcClient::applyPhysicalConnectionLOACallable(const ApplyPhysicalConnectionLOARequest &request) const
  472. {
  473. auto task = std::make_shared<std::packaged_task<ApplyPhysicalConnectionLOAOutcome()>>(
  474. [this, request]()
  475. {
  476. return this->applyPhysicalConnectionLOA(request);
  477. });
  478. asyncExecute(new Runnable([task]() { (*task)(); }));
  479. return task->get_future();
  480. }
  481. VpcClient::AssociateEipAddressOutcome VpcClient::associateEipAddress(const AssociateEipAddressRequest &request) const
  482. {
  483. auto endpointOutcome = endpointProvider_->getEndpoint();
  484. if (!endpointOutcome.isSuccess())
  485. return AssociateEipAddressOutcome(endpointOutcome.error());
  486. auto outcome = makeRequest(endpointOutcome.result(), request);
  487. if (outcome.isSuccess())
  488. return AssociateEipAddressOutcome(AssociateEipAddressResult(outcome.result()));
  489. else
  490. return AssociateEipAddressOutcome(outcome.error());
  491. }
  492. void VpcClient::associateEipAddressAsync(const AssociateEipAddressRequest& request, const AssociateEipAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  493. {
  494. auto fn = [this, request, handler, context]()
  495. {
  496. handler(this, request, associateEipAddress(request), context);
  497. };
  498. asyncExecute(new Runnable(fn));
  499. }
  500. VpcClient::AssociateEipAddressOutcomeCallable VpcClient::associateEipAddressCallable(const AssociateEipAddressRequest &request) const
  501. {
  502. auto task = std::make_shared<std::packaged_task<AssociateEipAddressOutcome()>>(
  503. [this, request]()
  504. {
  505. return this->associateEipAddress(request);
  506. });
  507. asyncExecute(new Runnable([task]() { (*task)(); }));
  508. return task->get_future();
  509. }
  510. VpcClient::AssociateEipAddressBatchOutcome VpcClient::associateEipAddressBatch(const AssociateEipAddressBatchRequest &request) const
  511. {
  512. auto endpointOutcome = endpointProvider_->getEndpoint();
  513. if (!endpointOutcome.isSuccess())
  514. return AssociateEipAddressBatchOutcome(endpointOutcome.error());
  515. auto outcome = makeRequest(endpointOutcome.result(), request);
  516. if (outcome.isSuccess())
  517. return AssociateEipAddressBatchOutcome(AssociateEipAddressBatchResult(outcome.result()));
  518. else
  519. return AssociateEipAddressBatchOutcome(outcome.error());
  520. }
  521. void VpcClient::associateEipAddressBatchAsync(const AssociateEipAddressBatchRequest& request, const AssociateEipAddressBatchAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  522. {
  523. auto fn = [this, request, handler, context]()
  524. {
  525. handler(this, request, associateEipAddressBatch(request), context);
  526. };
  527. asyncExecute(new Runnable(fn));
  528. }
  529. VpcClient::AssociateEipAddressBatchOutcomeCallable VpcClient::associateEipAddressBatchCallable(const AssociateEipAddressBatchRequest &request) const
  530. {
  531. auto task = std::make_shared<std::packaged_task<AssociateEipAddressBatchOutcome()>>(
  532. [this, request]()
  533. {
  534. return this->associateEipAddressBatch(request);
  535. });
  536. asyncExecute(new Runnable([task]() { (*task)(); }));
  537. return task->get_future();
  538. }
  539. VpcClient::AssociateGlobalAccelerationInstanceOutcome VpcClient::associateGlobalAccelerationInstance(const AssociateGlobalAccelerationInstanceRequest &request) const
  540. {
  541. auto endpointOutcome = endpointProvider_->getEndpoint();
  542. if (!endpointOutcome.isSuccess())
  543. return AssociateGlobalAccelerationInstanceOutcome(endpointOutcome.error());
  544. auto outcome = makeRequest(endpointOutcome.result(), request);
  545. if (outcome.isSuccess())
  546. return AssociateGlobalAccelerationInstanceOutcome(AssociateGlobalAccelerationInstanceResult(outcome.result()));
  547. else
  548. return AssociateGlobalAccelerationInstanceOutcome(outcome.error());
  549. }
  550. void VpcClient::associateGlobalAccelerationInstanceAsync(const AssociateGlobalAccelerationInstanceRequest& request, const AssociateGlobalAccelerationInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  551. {
  552. auto fn = [this, request, handler, context]()
  553. {
  554. handler(this, request, associateGlobalAccelerationInstance(request), context);
  555. };
  556. asyncExecute(new Runnable(fn));
  557. }
  558. VpcClient::AssociateGlobalAccelerationInstanceOutcomeCallable VpcClient::associateGlobalAccelerationInstanceCallable(const AssociateGlobalAccelerationInstanceRequest &request) const
  559. {
  560. auto task = std::make_shared<std::packaged_task<AssociateGlobalAccelerationInstanceOutcome()>>(
  561. [this, request]()
  562. {
  563. return this->associateGlobalAccelerationInstance(request);
  564. });
  565. asyncExecute(new Runnable([task]() { (*task)(); }));
  566. return task->get_future();
  567. }
  568. VpcClient::AssociateHaVipOutcome VpcClient::associateHaVip(const AssociateHaVipRequest &request) const
  569. {
  570. auto endpointOutcome = endpointProvider_->getEndpoint();
  571. if (!endpointOutcome.isSuccess())
  572. return AssociateHaVipOutcome(endpointOutcome.error());
  573. auto outcome = makeRequest(endpointOutcome.result(), request);
  574. if (outcome.isSuccess())
  575. return AssociateHaVipOutcome(AssociateHaVipResult(outcome.result()));
  576. else
  577. return AssociateHaVipOutcome(outcome.error());
  578. }
  579. void VpcClient::associateHaVipAsync(const AssociateHaVipRequest& request, const AssociateHaVipAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  580. {
  581. auto fn = [this, request, handler, context]()
  582. {
  583. handler(this, request, associateHaVip(request), context);
  584. };
  585. asyncExecute(new Runnable(fn));
  586. }
  587. VpcClient::AssociateHaVipOutcomeCallable VpcClient::associateHaVipCallable(const AssociateHaVipRequest &request) const
  588. {
  589. auto task = std::make_shared<std::packaged_task<AssociateHaVipOutcome()>>(
  590. [this, request]()
  591. {
  592. return this->associateHaVip(request);
  593. });
  594. asyncExecute(new Runnable([task]() { (*task)(); }));
  595. return task->get_future();
  596. }
  597. VpcClient::AssociateNetworkAclOutcome VpcClient::associateNetworkAcl(const AssociateNetworkAclRequest &request) const
  598. {
  599. auto endpointOutcome = endpointProvider_->getEndpoint();
  600. if (!endpointOutcome.isSuccess())
  601. return AssociateNetworkAclOutcome(endpointOutcome.error());
  602. auto outcome = makeRequest(endpointOutcome.result(), request);
  603. if (outcome.isSuccess())
  604. return AssociateNetworkAclOutcome(AssociateNetworkAclResult(outcome.result()));
  605. else
  606. return AssociateNetworkAclOutcome(outcome.error());
  607. }
  608. void VpcClient::associateNetworkAclAsync(const AssociateNetworkAclRequest& request, const AssociateNetworkAclAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  609. {
  610. auto fn = [this, request, handler, context]()
  611. {
  612. handler(this, request, associateNetworkAcl(request), context);
  613. };
  614. asyncExecute(new Runnable(fn));
  615. }
  616. VpcClient::AssociateNetworkAclOutcomeCallable VpcClient::associateNetworkAclCallable(const AssociateNetworkAclRequest &request) const
  617. {
  618. auto task = std::make_shared<std::packaged_task<AssociateNetworkAclOutcome()>>(
  619. [this, request]()
  620. {
  621. return this->associateNetworkAcl(request);
  622. });
  623. asyncExecute(new Runnable([task]() { (*task)(); }));
  624. return task->get_future();
  625. }
  626. VpcClient::AssociatePhysicalConnectionToVirtualBorderRouterOutcome VpcClient::associatePhysicalConnectionToVirtualBorderRouter(const AssociatePhysicalConnectionToVirtualBorderRouterRequest &request) const
  627. {
  628. auto endpointOutcome = endpointProvider_->getEndpoint();
  629. if (!endpointOutcome.isSuccess())
  630. return AssociatePhysicalConnectionToVirtualBorderRouterOutcome(endpointOutcome.error());
  631. auto outcome = makeRequest(endpointOutcome.result(), request);
  632. if (outcome.isSuccess())
  633. return AssociatePhysicalConnectionToVirtualBorderRouterOutcome(AssociatePhysicalConnectionToVirtualBorderRouterResult(outcome.result()));
  634. else
  635. return AssociatePhysicalConnectionToVirtualBorderRouterOutcome(outcome.error());
  636. }
  637. void VpcClient::associatePhysicalConnectionToVirtualBorderRouterAsync(const AssociatePhysicalConnectionToVirtualBorderRouterRequest& request, const AssociatePhysicalConnectionToVirtualBorderRouterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  638. {
  639. auto fn = [this, request, handler, context]()
  640. {
  641. handler(this, request, associatePhysicalConnectionToVirtualBorderRouter(request), context);
  642. };
  643. asyncExecute(new Runnable(fn));
  644. }
  645. VpcClient::AssociatePhysicalConnectionToVirtualBorderRouterOutcomeCallable VpcClient::associatePhysicalConnectionToVirtualBorderRouterCallable(const AssociatePhysicalConnectionToVirtualBorderRouterRequest &request) const
  646. {
  647. auto task = std::make_shared<std::packaged_task<AssociatePhysicalConnectionToVirtualBorderRouterOutcome()>>(
  648. [this, request]()
  649. {
  650. return this->associatePhysicalConnectionToVirtualBorderRouter(request);
  651. });
  652. asyncExecute(new Runnable([task]() { (*task)(); }));
  653. return task->get_future();
  654. }
  655. VpcClient::AssociateRouteTableOutcome VpcClient::associateRouteTable(const AssociateRouteTableRequest &request) const
  656. {
  657. auto endpointOutcome = endpointProvider_->getEndpoint();
  658. if (!endpointOutcome.isSuccess())
  659. return AssociateRouteTableOutcome(endpointOutcome.error());
  660. auto outcome = makeRequest(endpointOutcome.result(), request);
  661. if (outcome.isSuccess())
  662. return AssociateRouteTableOutcome(AssociateRouteTableResult(outcome.result()));
  663. else
  664. return AssociateRouteTableOutcome(outcome.error());
  665. }
  666. void VpcClient::associateRouteTableAsync(const AssociateRouteTableRequest& request, const AssociateRouteTableAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  667. {
  668. auto fn = [this, request, handler, context]()
  669. {
  670. handler(this, request, associateRouteTable(request), context);
  671. };
  672. asyncExecute(new Runnable(fn));
  673. }
  674. VpcClient::AssociateRouteTableOutcomeCallable VpcClient::associateRouteTableCallable(const AssociateRouteTableRequest &request) const
  675. {
  676. auto task = std::make_shared<std::packaged_task<AssociateRouteTableOutcome()>>(
  677. [this, request]()
  678. {
  679. return this->associateRouteTable(request);
  680. });
  681. asyncExecute(new Runnable([task]() { (*task)(); }));
  682. return task->get_future();
  683. }
  684. VpcClient::AssociateRouteTableWithGatewayOutcome VpcClient::associateRouteTableWithGateway(const AssociateRouteTableWithGatewayRequest &request) const
  685. {
  686. auto endpointOutcome = endpointProvider_->getEndpoint();
  687. if (!endpointOutcome.isSuccess())
  688. return AssociateRouteTableWithGatewayOutcome(endpointOutcome.error());
  689. auto outcome = makeRequest(endpointOutcome.result(), request);
  690. if (outcome.isSuccess())
  691. return AssociateRouteTableWithGatewayOutcome(AssociateRouteTableWithGatewayResult(outcome.result()));
  692. else
  693. return AssociateRouteTableWithGatewayOutcome(outcome.error());
  694. }
  695. void VpcClient::associateRouteTableWithGatewayAsync(const AssociateRouteTableWithGatewayRequest& request, const AssociateRouteTableWithGatewayAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  696. {
  697. auto fn = [this, request, handler, context]()
  698. {
  699. handler(this, request, associateRouteTableWithGateway(request), context);
  700. };
  701. asyncExecute(new Runnable(fn));
  702. }
  703. VpcClient::AssociateRouteTableWithGatewayOutcomeCallable VpcClient::associateRouteTableWithGatewayCallable(const AssociateRouteTableWithGatewayRequest &request) const
  704. {
  705. auto task = std::make_shared<std::packaged_task<AssociateRouteTableWithGatewayOutcome()>>(
  706. [this, request]()
  707. {
  708. return this->associateRouteTableWithGateway(request);
  709. });
  710. asyncExecute(new Runnable([task]() { (*task)(); }));
  711. return task->get_future();
  712. }
  713. VpcClient::AssociateRouteTablesWithVpcGatewayEndpointOutcome VpcClient::associateRouteTablesWithVpcGatewayEndpoint(const AssociateRouteTablesWithVpcGatewayEndpointRequest &request) const
  714. {
  715. auto endpointOutcome = endpointProvider_->getEndpoint();
  716. if (!endpointOutcome.isSuccess())
  717. return AssociateRouteTablesWithVpcGatewayEndpointOutcome(endpointOutcome.error());
  718. auto outcome = makeRequest(endpointOutcome.result(), request);
  719. if (outcome.isSuccess())
  720. return AssociateRouteTablesWithVpcGatewayEndpointOutcome(AssociateRouteTablesWithVpcGatewayEndpointResult(outcome.result()));
  721. else
  722. return AssociateRouteTablesWithVpcGatewayEndpointOutcome(outcome.error());
  723. }
  724. void VpcClient::associateRouteTablesWithVpcGatewayEndpointAsync(const AssociateRouteTablesWithVpcGatewayEndpointRequest& request, const AssociateRouteTablesWithVpcGatewayEndpointAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  725. {
  726. auto fn = [this, request, handler, context]()
  727. {
  728. handler(this, request, associateRouteTablesWithVpcGatewayEndpoint(request), context);
  729. };
  730. asyncExecute(new Runnable(fn));
  731. }
  732. VpcClient::AssociateRouteTablesWithVpcGatewayEndpointOutcomeCallable VpcClient::associateRouteTablesWithVpcGatewayEndpointCallable(const AssociateRouteTablesWithVpcGatewayEndpointRequest &request) const
  733. {
  734. auto task = std::make_shared<std::packaged_task<AssociateRouteTablesWithVpcGatewayEndpointOutcome()>>(
  735. [this, request]()
  736. {
  737. return this->associateRouteTablesWithVpcGatewayEndpoint(request);
  738. });
  739. asyncExecute(new Runnable([task]() { (*task)(); }));
  740. return task->get_future();
  741. }
  742. VpcClient::AssociateVpcCidrBlockOutcome VpcClient::associateVpcCidrBlock(const AssociateVpcCidrBlockRequest &request) const
  743. {
  744. auto endpointOutcome = endpointProvider_->getEndpoint();
  745. if (!endpointOutcome.isSuccess())
  746. return AssociateVpcCidrBlockOutcome(endpointOutcome.error());
  747. auto outcome = makeRequest(endpointOutcome.result(), request);
  748. if (outcome.isSuccess())
  749. return AssociateVpcCidrBlockOutcome(AssociateVpcCidrBlockResult(outcome.result()));
  750. else
  751. return AssociateVpcCidrBlockOutcome(outcome.error());
  752. }
  753. void VpcClient::associateVpcCidrBlockAsync(const AssociateVpcCidrBlockRequest& request, const AssociateVpcCidrBlockAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  754. {
  755. auto fn = [this, request, handler, context]()
  756. {
  757. handler(this, request, associateVpcCidrBlock(request), context);
  758. };
  759. asyncExecute(new Runnable(fn));
  760. }
  761. VpcClient::AssociateVpcCidrBlockOutcomeCallable VpcClient::associateVpcCidrBlockCallable(const AssociateVpcCidrBlockRequest &request) const
  762. {
  763. auto task = std::make_shared<std::packaged_task<AssociateVpcCidrBlockOutcome()>>(
  764. [this, request]()
  765. {
  766. return this->associateVpcCidrBlock(request);
  767. });
  768. asyncExecute(new Runnable([task]() { (*task)(); }));
  769. return task->get_future();
  770. }
  771. VpcClient::AssociateVpnGatewayWithCertificateOutcome VpcClient::associateVpnGatewayWithCertificate(const AssociateVpnGatewayWithCertificateRequest &request) const
  772. {
  773. auto endpointOutcome = endpointProvider_->getEndpoint();
  774. if (!endpointOutcome.isSuccess())
  775. return AssociateVpnGatewayWithCertificateOutcome(endpointOutcome.error());
  776. auto outcome = makeRequest(endpointOutcome.result(), request);
  777. if (outcome.isSuccess())
  778. return AssociateVpnGatewayWithCertificateOutcome(AssociateVpnGatewayWithCertificateResult(outcome.result()));
  779. else
  780. return AssociateVpnGatewayWithCertificateOutcome(outcome.error());
  781. }
  782. void VpcClient::associateVpnGatewayWithCertificateAsync(const AssociateVpnGatewayWithCertificateRequest& request, const AssociateVpnGatewayWithCertificateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  783. {
  784. auto fn = [this, request, handler, context]()
  785. {
  786. handler(this, request, associateVpnGatewayWithCertificate(request), context);
  787. };
  788. asyncExecute(new Runnable(fn));
  789. }
  790. VpcClient::AssociateVpnGatewayWithCertificateOutcomeCallable VpcClient::associateVpnGatewayWithCertificateCallable(const AssociateVpnGatewayWithCertificateRequest &request) const
  791. {
  792. auto task = std::make_shared<std::packaged_task<AssociateVpnGatewayWithCertificateOutcome()>>(
  793. [this, request]()
  794. {
  795. return this->associateVpnGatewayWithCertificate(request);
  796. });
  797. asyncExecute(new Runnable([task]() { (*task)(); }));
  798. return task->get_future();
  799. }
  800. VpcClient::AttachDhcpOptionsSetToVpcOutcome VpcClient::attachDhcpOptionsSetToVpc(const AttachDhcpOptionsSetToVpcRequest &request) const
  801. {
  802. auto endpointOutcome = endpointProvider_->getEndpoint();
  803. if (!endpointOutcome.isSuccess())
  804. return AttachDhcpOptionsSetToVpcOutcome(endpointOutcome.error());
  805. auto outcome = makeRequest(endpointOutcome.result(), request);
  806. if (outcome.isSuccess())
  807. return AttachDhcpOptionsSetToVpcOutcome(AttachDhcpOptionsSetToVpcResult(outcome.result()));
  808. else
  809. return AttachDhcpOptionsSetToVpcOutcome(outcome.error());
  810. }
  811. void VpcClient::attachDhcpOptionsSetToVpcAsync(const AttachDhcpOptionsSetToVpcRequest& request, const AttachDhcpOptionsSetToVpcAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  812. {
  813. auto fn = [this, request, handler, context]()
  814. {
  815. handler(this, request, attachDhcpOptionsSetToVpc(request), context);
  816. };
  817. asyncExecute(new Runnable(fn));
  818. }
  819. VpcClient::AttachDhcpOptionsSetToVpcOutcomeCallable VpcClient::attachDhcpOptionsSetToVpcCallable(const AttachDhcpOptionsSetToVpcRequest &request) const
  820. {
  821. auto task = std::make_shared<std::packaged_task<AttachDhcpOptionsSetToVpcOutcome()>>(
  822. [this, request]()
  823. {
  824. return this->attachDhcpOptionsSetToVpc(request);
  825. });
  826. asyncExecute(new Runnable([task]() { (*task)(); }));
  827. return task->get_future();
  828. }
  829. VpcClient::AttachVbrToVpconnOutcome VpcClient::attachVbrToVpconn(const AttachVbrToVpconnRequest &request) const
  830. {
  831. auto endpointOutcome = endpointProvider_->getEndpoint();
  832. if (!endpointOutcome.isSuccess())
  833. return AttachVbrToVpconnOutcome(endpointOutcome.error());
  834. auto outcome = makeRequest(endpointOutcome.result(), request);
  835. if (outcome.isSuccess())
  836. return AttachVbrToVpconnOutcome(AttachVbrToVpconnResult(outcome.result()));
  837. else
  838. return AttachVbrToVpconnOutcome(outcome.error());
  839. }
  840. void VpcClient::attachVbrToVpconnAsync(const AttachVbrToVpconnRequest& request, const AttachVbrToVpconnAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  841. {
  842. auto fn = [this, request, handler, context]()
  843. {
  844. handler(this, request, attachVbrToVpconn(request), context);
  845. };
  846. asyncExecute(new Runnable(fn));
  847. }
  848. VpcClient::AttachVbrToVpconnOutcomeCallable VpcClient::attachVbrToVpconnCallable(const AttachVbrToVpconnRequest &request) const
  849. {
  850. auto task = std::make_shared<std::packaged_task<AttachVbrToVpconnOutcome()>>(
  851. [this, request]()
  852. {
  853. return this->attachVbrToVpconn(request);
  854. });
  855. asyncExecute(new Runnable([task]() { (*task)(); }));
  856. return task->get_future();
  857. }
  858. VpcClient::CancelCommonBandwidthPackageIpBandwidthOutcome VpcClient::cancelCommonBandwidthPackageIpBandwidth(const CancelCommonBandwidthPackageIpBandwidthRequest &request) const
  859. {
  860. auto endpointOutcome = endpointProvider_->getEndpoint();
  861. if (!endpointOutcome.isSuccess())
  862. return CancelCommonBandwidthPackageIpBandwidthOutcome(endpointOutcome.error());
  863. auto outcome = makeRequest(endpointOutcome.result(), request);
  864. if (outcome.isSuccess())
  865. return CancelCommonBandwidthPackageIpBandwidthOutcome(CancelCommonBandwidthPackageIpBandwidthResult(outcome.result()));
  866. else
  867. return CancelCommonBandwidthPackageIpBandwidthOutcome(outcome.error());
  868. }
  869. void VpcClient::cancelCommonBandwidthPackageIpBandwidthAsync(const CancelCommonBandwidthPackageIpBandwidthRequest& request, const CancelCommonBandwidthPackageIpBandwidthAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  870. {
  871. auto fn = [this, request, handler, context]()
  872. {
  873. handler(this, request, cancelCommonBandwidthPackageIpBandwidth(request), context);
  874. };
  875. asyncExecute(new Runnable(fn));
  876. }
  877. VpcClient::CancelCommonBandwidthPackageIpBandwidthOutcomeCallable VpcClient::cancelCommonBandwidthPackageIpBandwidthCallable(const CancelCommonBandwidthPackageIpBandwidthRequest &request) const
  878. {
  879. auto task = std::make_shared<std::packaged_task<CancelCommonBandwidthPackageIpBandwidthOutcome()>>(
  880. [this, request]()
  881. {
  882. return this->cancelCommonBandwidthPackageIpBandwidth(request);
  883. });
  884. asyncExecute(new Runnable([task]() { (*task)(); }));
  885. return task->get_future();
  886. }
  887. VpcClient::CancelPhysicalConnectionOutcome VpcClient::cancelPhysicalConnection(const CancelPhysicalConnectionRequest &request) const
  888. {
  889. auto endpointOutcome = endpointProvider_->getEndpoint();
  890. if (!endpointOutcome.isSuccess())
  891. return CancelPhysicalConnectionOutcome(endpointOutcome.error());
  892. auto outcome = makeRequest(endpointOutcome.result(), request);
  893. if (outcome.isSuccess())
  894. return CancelPhysicalConnectionOutcome(CancelPhysicalConnectionResult(outcome.result()));
  895. else
  896. return CancelPhysicalConnectionOutcome(outcome.error());
  897. }
  898. void VpcClient::cancelPhysicalConnectionAsync(const CancelPhysicalConnectionRequest& request, const CancelPhysicalConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  899. {
  900. auto fn = [this, request, handler, context]()
  901. {
  902. handler(this, request, cancelPhysicalConnection(request), context);
  903. };
  904. asyncExecute(new Runnable(fn));
  905. }
  906. VpcClient::CancelPhysicalConnectionOutcomeCallable VpcClient::cancelPhysicalConnectionCallable(const CancelPhysicalConnectionRequest &request) const
  907. {
  908. auto task = std::make_shared<std::packaged_task<CancelPhysicalConnectionOutcome()>>(
  909. [this, request]()
  910. {
  911. return this->cancelPhysicalConnection(request);
  912. });
  913. asyncExecute(new Runnable([task]() { (*task)(); }));
  914. return task->get_future();
  915. }
  916. VpcClient::ChangeResourceGroupOutcome VpcClient::changeResourceGroup(const ChangeResourceGroupRequest &request) const
  917. {
  918. auto endpointOutcome = endpointProvider_->getEndpoint();
  919. if (!endpointOutcome.isSuccess())
  920. return ChangeResourceGroupOutcome(endpointOutcome.error());
  921. auto outcome = makeRequest(endpointOutcome.result(), request);
  922. if (outcome.isSuccess())
  923. return ChangeResourceGroupOutcome(ChangeResourceGroupResult(outcome.result()));
  924. else
  925. return ChangeResourceGroupOutcome(outcome.error());
  926. }
  927. void VpcClient::changeResourceGroupAsync(const ChangeResourceGroupRequest& request, const ChangeResourceGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  928. {
  929. auto fn = [this, request, handler, context]()
  930. {
  931. handler(this, request, changeResourceGroup(request), context);
  932. };
  933. asyncExecute(new Runnable(fn));
  934. }
  935. VpcClient::ChangeResourceGroupOutcomeCallable VpcClient::changeResourceGroupCallable(const ChangeResourceGroupRequest &request) const
  936. {
  937. auto task = std::make_shared<std::packaged_task<ChangeResourceGroupOutcome()>>(
  938. [this, request]()
  939. {
  940. return this->changeResourceGroup(request);
  941. });
  942. asyncExecute(new Runnable([task]() { (*task)(); }));
  943. return task->get_future();
  944. }
  945. VpcClient::CheckCanAllocateVpcPrivateIpAddressOutcome VpcClient::checkCanAllocateVpcPrivateIpAddress(const CheckCanAllocateVpcPrivateIpAddressRequest &request) const
  946. {
  947. auto endpointOutcome = endpointProvider_->getEndpoint();
  948. if (!endpointOutcome.isSuccess())
  949. return CheckCanAllocateVpcPrivateIpAddressOutcome(endpointOutcome.error());
  950. auto outcome = makeRequest(endpointOutcome.result(), request);
  951. if (outcome.isSuccess())
  952. return CheckCanAllocateVpcPrivateIpAddressOutcome(CheckCanAllocateVpcPrivateIpAddressResult(outcome.result()));
  953. else
  954. return CheckCanAllocateVpcPrivateIpAddressOutcome(outcome.error());
  955. }
  956. void VpcClient::checkCanAllocateVpcPrivateIpAddressAsync(const CheckCanAllocateVpcPrivateIpAddressRequest& request, const CheckCanAllocateVpcPrivateIpAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  957. {
  958. auto fn = [this, request, handler, context]()
  959. {
  960. handler(this, request, checkCanAllocateVpcPrivateIpAddress(request), context);
  961. };
  962. asyncExecute(new Runnable(fn));
  963. }
  964. VpcClient::CheckCanAllocateVpcPrivateIpAddressOutcomeCallable VpcClient::checkCanAllocateVpcPrivateIpAddressCallable(const CheckCanAllocateVpcPrivateIpAddressRequest &request) const
  965. {
  966. auto task = std::make_shared<std::packaged_task<CheckCanAllocateVpcPrivateIpAddressOutcome()>>(
  967. [this, request]()
  968. {
  969. return this->checkCanAllocateVpcPrivateIpAddress(request);
  970. });
  971. asyncExecute(new Runnable([task]() { (*task)(); }));
  972. return task->get_future();
  973. }
  974. VpcClient::CheckVpnBgpEnabledOutcome VpcClient::checkVpnBgpEnabled(const CheckVpnBgpEnabledRequest &request) const
  975. {
  976. auto endpointOutcome = endpointProvider_->getEndpoint();
  977. if (!endpointOutcome.isSuccess())
  978. return CheckVpnBgpEnabledOutcome(endpointOutcome.error());
  979. auto outcome = makeRequest(endpointOutcome.result(), request);
  980. if (outcome.isSuccess())
  981. return CheckVpnBgpEnabledOutcome(CheckVpnBgpEnabledResult(outcome.result()));
  982. else
  983. return CheckVpnBgpEnabledOutcome(outcome.error());
  984. }
  985. void VpcClient::checkVpnBgpEnabledAsync(const CheckVpnBgpEnabledRequest& request, const CheckVpnBgpEnabledAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  986. {
  987. auto fn = [this, request, handler, context]()
  988. {
  989. handler(this, request, checkVpnBgpEnabled(request), context);
  990. };
  991. asyncExecute(new Runnable(fn));
  992. }
  993. VpcClient::CheckVpnBgpEnabledOutcomeCallable VpcClient::checkVpnBgpEnabledCallable(const CheckVpnBgpEnabledRequest &request) const
  994. {
  995. auto task = std::make_shared<std::packaged_task<CheckVpnBgpEnabledOutcome()>>(
  996. [this, request]()
  997. {
  998. return this->checkVpnBgpEnabled(request);
  999. });
  1000. asyncExecute(new Runnable([task]() { (*task)(); }));
  1001. return task->get_future();
  1002. }
  1003. VpcClient::CompletePhysicalConnectionLOAOutcome VpcClient::completePhysicalConnectionLOA(const CompletePhysicalConnectionLOARequest &request) const
  1004. {
  1005. auto endpointOutcome = endpointProvider_->getEndpoint();
  1006. if (!endpointOutcome.isSuccess())
  1007. return CompletePhysicalConnectionLOAOutcome(endpointOutcome.error());
  1008. auto outcome = makeRequest(endpointOutcome.result(), request);
  1009. if (outcome.isSuccess())
  1010. return CompletePhysicalConnectionLOAOutcome(CompletePhysicalConnectionLOAResult(outcome.result()));
  1011. else
  1012. return CompletePhysicalConnectionLOAOutcome(outcome.error());
  1013. }
  1014. void VpcClient::completePhysicalConnectionLOAAsync(const CompletePhysicalConnectionLOARequest& request, const CompletePhysicalConnectionLOAAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1015. {
  1016. auto fn = [this, request, handler, context]()
  1017. {
  1018. handler(this, request, completePhysicalConnectionLOA(request), context);
  1019. };
  1020. asyncExecute(new Runnable(fn));
  1021. }
  1022. VpcClient::CompletePhysicalConnectionLOAOutcomeCallable VpcClient::completePhysicalConnectionLOACallable(const CompletePhysicalConnectionLOARequest &request) const
  1023. {
  1024. auto task = std::make_shared<std::packaged_task<CompletePhysicalConnectionLOAOutcome()>>(
  1025. [this, request]()
  1026. {
  1027. return this->completePhysicalConnectionLOA(request);
  1028. });
  1029. asyncExecute(new Runnable([task]() { (*task)(); }));
  1030. return task->get_future();
  1031. }
  1032. VpcClient::ConfirmPhysicalConnectionOutcome VpcClient::confirmPhysicalConnection(const ConfirmPhysicalConnectionRequest &request) const
  1033. {
  1034. auto endpointOutcome = endpointProvider_->getEndpoint();
  1035. if (!endpointOutcome.isSuccess())
  1036. return ConfirmPhysicalConnectionOutcome(endpointOutcome.error());
  1037. auto outcome = makeRequest(endpointOutcome.result(), request);
  1038. if (outcome.isSuccess())
  1039. return ConfirmPhysicalConnectionOutcome(ConfirmPhysicalConnectionResult(outcome.result()));
  1040. else
  1041. return ConfirmPhysicalConnectionOutcome(outcome.error());
  1042. }
  1043. void VpcClient::confirmPhysicalConnectionAsync(const ConfirmPhysicalConnectionRequest& request, const ConfirmPhysicalConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1044. {
  1045. auto fn = [this, request, handler, context]()
  1046. {
  1047. handler(this, request, confirmPhysicalConnection(request), context);
  1048. };
  1049. asyncExecute(new Runnable(fn));
  1050. }
  1051. VpcClient::ConfirmPhysicalConnectionOutcomeCallable VpcClient::confirmPhysicalConnectionCallable(const ConfirmPhysicalConnectionRequest &request) const
  1052. {
  1053. auto task = std::make_shared<std::packaged_task<ConfirmPhysicalConnectionOutcome()>>(
  1054. [this, request]()
  1055. {
  1056. return this->confirmPhysicalConnection(request);
  1057. });
  1058. asyncExecute(new Runnable([task]() { (*task)(); }));
  1059. return task->get_future();
  1060. }
  1061. VpcClient::ConnectRouterInterfaceOutcome VpcClient::connectRouterInterface(const ConnectRouterInterfaceRequest &request) const
  1062. {
  1063. auto endpointOutcome = endpointProvider_->getEndpoint();
  1064. if (!endpointOutcome.isSuccess())
  1065. return ConnectRouterInterfaceOutcome(endpointOutcome.error());
  1066. auto outcome = makeRequest(endpointOutcome.result(), request);
  1067. if (outcome.isSuccess())
  1068. return ConnectRouterInterfaceOutcome(ConnectRouterInterfaceResult(outcome.result()));
  1069. else
  1070. return ConnectRouterInterfaceOutcome(outcome.error());
  1071. }
  1072. void VpcClient::connectRouterInterfaceAsync(const ConnectRouterInterfaceRequest& request, const ConnectRouterInterfaceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1073. {
  1074. auto fn = [this, request, handler, context]()
  1075. {
  1076. handler(this, request, connectRouterInterface(request), context);
  1077. };
  1078. asyncExecute(new Runnable(fn));
  1079. }
  1080. VpcClient::ConnectRouterInterfaceOutcomeCallable VpcClient::connectRouterInterfaceCallable(const ConnectRouterInterfaceRequest &request) const
  1081. {
  1082. auto task = std::make_shared<std::packaged_task<ConnectRouterInterfaceOutcome()>>(
  1083. [this, request]()
  1084. {
  1085. return this->connectRouterInterface(request);
  1086. });
  1087. asyncExecute(new Runnable([task]() { (*task)(); }));
  1088. return task->get_future();
  1089. }
  1090. VpcClient::ConvertBandwidthPackageOutcome VpcClient::convertBandwidthPackage(const ConvertBandwidthPackageRequest &request) const
  1091. {
  1092. auto endpointOutcome = endpointProvider_->getEndpoint();
  1093. if (!endpointOutcome.isSuccess())
  1094. return ConvertBandwidthPackageOutcome(endpointOutcome.error());
  1095. auto outcome = makeRequest(endpointOutcome.result(), request);
  1096. if (outcome.isSuccess())
  1097. return ConvertBandwidthPackageOutcome(ConvertBandwidthPackageResult(outcome.result()));
  1098. else
  1099. return ConvertBandwidthPackageOutcome(outcome.error());
  1100. }
  1101. void VpcClient::convertBandwidthPackageAsync(const ConvertBandwidthPackageRequest& request, const ConvertBandwidthPackageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1102. {
  1103. auto fn = [this, request, handler, context]()
  1104. {
  1105. handler(this, request, convertBandwidthPackage(request), context);
  1106. };
  1107. asyncExecute(new Runnable(fn));
  1108. }
  1109. VpcClient::ConvertBandwidthPackageOutcomeCallable VpcClient::convertBandwidthPackageCallable(const ConvertBandwidthPackageRequest &request) const
  1110. {
  1111. auto task = std::make_shared<std::packaged_task<ConvertBandwidthPackageOutcome()>>(
  1112. [this, request]()
  1113. {
  1114. return this->convertBandwidthPackage(request);
  1115. });
  1116. asyncExecute(new Runnable([task]() { (*task)(); }));
  1117. return task->get_future();
  1118. }
  1119. VpcClient::CopyNetworkAclEntriesOutcome VpcClient::copyNetworkAclEntries(const CopyNetworkAclEntriesRequest &request) const
  1120. {
  1121. auto endpointOutcome = endpointProvider_->getEndpoint();
  1122. if (!endpointOutcome.isSuccess())
  1123. return CopyNetworkAclEntriesOutcome(endpointOutcome.error());
  1124. auto outcome = makeRequest(endpointOutcome.result(), request);
  1125. if (outcome.isSuccess())
  1126. return CopyNetworkAclEntriesOutcome(CopyNetworkAclEntriesResult(outcome.result()));
  1127. else
  1128. return CopyNetworkAclEntriesOutcome(outcome.error());
  1129. }
  1130. void VpcClient::copyNetworkAclEntriesAsync(const CopyNetworkAclEntriesRequest& request, const CopyNetworkAclEntriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1131. {
  1132. auto fn = [this, request, handler, context]()
  1133. {
  1134. handler(this, request, copyNetworkAclEntries(request), context);
  1135. };
  1136. asyncExecute(new Runnable(fn));
  1137. }
  1138. VpcClient::CopyNetworkAclEntriesOutcomeCallable VpcClient::copyNetworkAclEntriesCallable(const CopyNetworkAclEntriesRequest &request) const
  1139. {
  1140. auto task = std::make_shared<std::packaged_task<CopyNetworkAclEntriesOutcome()>>(
  1141. [this, request]()
  1142. {
  1143. return this->copyNetworkAclEntries(request);
  1144. });
  1145. asyncExecute(new Runnable([task]() { (*task)(); }));
  1146. return task->get_future();
  1147. }
  1148. VpcClient::CreateBgpGroupOutcome VpcClient::createBgpGroup(const CreateBgpGroupRequest &request) const
  1149. {
  1150. auto endpointOutcome = endpointProvider_->getEndpoint();
  1151. if (!endpointOutcome.isSuccess())
  1152. return CreateBgpGroupOutcome(endpointOutcome.error());
  1153. auto outcome = makeRequest(endpointOutcome.result(), request);
  1154. if (outcome.isSuccess())
  1155. return CreateBgpGroupOutcome(CreateBgpGroupResult(outcome.result()));
  1156. else
  1157. return CreateBgpGroupOutcome(outcome.error());
  1158. }
  1159. void VpcClient::createBgpGroupAsync(const CreateBgpGroupRequest& request, const CreateBgpGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1160. {
  1161. auto fn = [this, request, handler, context]()
  1162. {
  1163. handler(this, request, createBgpGroup(request), context);
  1164. };
  1165. asyncExecute(new Runnable(fn));
  1166. }
  1167. VpcClient::CreateBgpGroupOutcomeCallable VpcClient::createBgpGroupCallable(const CreateBgpGroupRequest &request) const
  1168. {
  1169. auto task = std::make_shared<std::packaged_task<CreateBgpGroupOutcome()>>(
  1170. [this, request]()
  1171. {
  1172. return this->createBgpGroup(request);
  1173. });
  1174. asyncExecute(new Runnable([task]() { (*task)(); }));
  1175. return task->get_future();
  1176. }
  1177. VpcClient::CreateBgpPeerOutcome VpcClient::createBgpPeer(const CreateBgpPeerRequest &request) const
  1178. {
  1179. auto endpointOutcome = endpointProvider_->getEndpoint();
  1180. if (!endpointOutcome.isSuccess())
  1181. return CreateBgpPeerOutcome(endpointOutcome.error());
  1182. auto outcome = makeRequest(endpointOutcome.result(), request);
  1183. if (outcome.isSuccess())
  1184. return CreateBgpPeerOutcome(CreateBgpPeerResult(outcome.result()));
  1185. else
  1186. return CreateBgpPeerOutcome(outcome.error());
  1187. }
  1188. void VpcClient::createBgpPeerAsync(const CreateBgpPeerRequest& request, const CreateBgpPeerAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1189. {
  1190. auto fn = [this, request, handler, context]()
  1191. {
  1192. handler(this, request, createBgpPeer(request), context);
  1193. };
  1194. asyncExecute(new Runnable(fn));
  1195. }
  1196. VpcClient::CreateBgpPeerOutcomeCallable VpcClient::createBgpPeerCallable(const CreateBgpPeerRequest &request) const
  1197. {
  1198. auto task = std::make_shared<std::packaged_task<CreateBgpPeerOutcome()>>(
  1199. [this, request]()
  1200. {
  1201. return this->createBgpPeer(request);
  1202. });
  1203. asyncExecute(new Runnable([task]() { (*task)(); }));
  1204. return task->get_future();
  1205. }
  1206. VpcClient::CreateCommonBandwidthPackageOutcome VpcClient::createCommonBandwidthPackage(const CreateCommonBandwidthPackageRequest &request) const
  1207. {
  1208. auto endpointOutcome = endpointProvider_->getEndpoint();
  1209. if (!endpointOutcome.isSuccess())
  1210. return CreateCommonBandwidthPackageOutcome(endpointOutcome.error());
  1211. auto outcome = makeRequest(endpointOutcome.result(), request);
  1212. if (outcome.isSuccess())
  1213. return CreateCommonBandwidthPackageOutcome(CreateCommonBandwidthPackageResult(outcome.result()));
  1214. else
  1215. return CreateCommonBandwidthPackageOutcome(outcome.error());
  1216. }
  1217. void VpcClient::createCommonBandwidthPackageAsync(const CreateCommonBandwidthPackageRequest& request, const CreateCommonBandwidthPackageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1218. {
  1219. auto fn = [this, request, handler, context]()
  1220. {
  1221. handler(this, request, createCommonBandwidthPackage(request), context);
  1222. };
  1223. asyncExecute(new Runnable(fn));
  1224. }
  1225. VpcClient::CreateCommonBandwidthPackageOutcomeCallable VpcClient::createCommonBandwidthPackageCallable(const CreateCommonBandwidthPackageRequest &request) const
  1226. {
  1227. auto task = std::make_shared<std::packaged_task<CreateCommonBandwidthPackageOutcome()>>(
  1228. [this, request]()
  1229. {
  1230. return this->createCommonBandwidthPackage(request);
  1231. });
  1232. asyncExecute(new Runnable([task]() { (*task)(); }));
  1233. return task->get_future();
  1234. }
  1235. VpcClient::CreateCustomerGatewayOutcome VpcClient::createCustomerGateway(const CreateCustomerGatewayRequest &request) const
  1236. {
  1237. auto endpointOutcome = endpointProvider_->getEndpoint();
  1238. if (!endpointOutcome.isSuccess())
  1239. return CreateCustomerGatewayOutcome(endpointOutcome.error());
  1240. auto outcome = makeRequest(endpointOutcome.result(), request);
  1241. if (outcome.isSuccess())
  1242. return CreateCustomerGatewayOutcome(CreateCustomerGatewayResult(outcome.result()));
  1243. else
  1244. return CreateCustomerGatewayOutcome(outcome.error());
  1245. }
  1246. void VpcClient::createCustomerGatewayAsync(const CreateCustomerGatewayRequest& request, const CreateCustomerGatewayAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1247. {
  1248. auto fn = [this, request, handler, context]()
  1249. {
  1250. handler(this, request, createCustomerGateway(request), context);
  1251. };
  1252. asyncExecute(new Runnable(fn));
  1253. }
  1254. VpcClient::CreateCustomerGatewayOutcomeCallable VpcClient::createCustomerGatewayCallable(const CreateCustomerGatewayRequest &request) const
  1255. {
  1256. auto task = std::make_shared<std::packaged_task<CreateCustomerGatewayOutcome()>>(
  1257. [this, request]()
  1258. {
  1259. return this->createCustomerGateway(request);
  1260. });
  1261. asyncExecute(new Runnable([task]() { (*task)(); }));
  1262. return task->get_future();
  1263. }
  1264. VpcClient::CreateDefaultVSwitchOutcome VpcClient::createDefaultVSwitch(const CreateDefaultVSwitchRequest &request) const
  1265. {
  1266. auto endpointOutcome = endpointProvider_->getEndpoint();
  1267. if (!endpointOutcome.isSuccess())
  1268. return CreateDefaultVSwitchOutcome(endpointOutcome.error());
  1269. auto outcome = makeRequest(endpointOutcome.result(), request);
  1270. if (outcome.isSuccess())
  1271. return CreateDefaultVSwitchOutcome(CreateDefaultVSwitchResult(outcome.result()));
  1272. else
  1273. return CreateDefaultVSwitchOutcome(outcome.error());
  1274. }
  1275. void VpcClient::createDefaultVSwitchAsync(const CreateDefaultVSwitchRequest& request, const CreateDefaultVSwitchAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1276. {
  1277. auto fn = [this, request, handler, context]()
  1278. {
  1279. handler(this, request, createDefaultVSwitch(request), context);
  1280. };
  1281. asyncExecute(new Runnable(fn));
  1282. }
  1283. VpcClient::CreateDefaultVSwitchOutcomeCallable VpcClient::createDefaultVSwitchCallable(const CreateDefaultVSwitchRequest &request) const
  1284. {
  1285. auto task = std::make_shared<std::packaged_task<CreateDefaultVSwitchOutcome()>>(
  1286. [this, request]()
  1287. {
  1288. return this->createDefaultVSwitch(request);
  1289. });
  1290. asyncExecute(new Runnable([task]() { (*task)(); }));
  1291. return task->get_future();
  1292. }
  1293. VpcClient::CreateDefaultVpcOutcome VpcClient::createDefaultVpc(const CreateDefaultVpcRequest &request) const
  1294. {
  1295. auto endpointOutcome = endpointProvider_->getEndpoint();
  1296. if (!endpointOutcome.isSuccess())
  1297. return CreateDefaultVpcOutcome(endpointOutcome.error());
  1298. auto outcome = makeRequest(endpointOutcome.result(), request);
  1299. if (outcome.isSuccess())
  1300. return CreateDefaultVpcOutcome(CreateDefaultVpcResult(outcome.result()));
  1301. else
  1302. return CreateDefaultVpcOutcome(outcome.error());
  1303. }
  1304. void VpcClient::createDefaultVpcAsync(const CreateDefaultVpcRequest& request, const CreateDefaultVpcAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1305. {
  1306. auto fn = [this, request, handler, context]()
  1307. {
  1308. handler(this, request, createDefaultVpc(request), context);
  1309. };
  1310. asyncExecute(new Runnable(fn));
  1311. }
  1312. VpcClient::CreateDefaultVpcOutcomeCallable VpcClient::createDefaultVpcCallable(const CreateDefaultVpcRequest &request) const
  1313. {
  1314. auto task = std::make_shared<std::packaged_task<CreateDefaultVpcOutcome()>>(
  1315. [this, request]()
  1316. {
  1317. return this->createDefaultVpc(request);
  1318. });
  1319. asyncExecute(new Runnable([task]() { (*task)(); }));
  1320. return task->get_future();
  1321. }
  1322. VpcClient::CreateDhcpOptionsSetOutcome VpcClient::createDhcpOptionsSet(const CreateDhcpOptionsSetRequest &request) const
  1323. {
  1324. auto endpointOutcome = endpointProvider_->getEndpoint();
  1325. if (!endpointOutcome.isSuccess())
  1326. return CreateDhcpOptionsSetOutcome(endpointOutcome.error());
  1327. auto outcome = makeRequest(endpointOutcome.result(), request);
  1328. if (outcome.isSuccess())
  1329. return CreateDhcpOptionsSetOutcome(CreateDhcpOptionsSetResult(outcome.result()));
  1330. else
  1331. return CreateDhcpOptionsSetOutcome(outcome.error());
  1332. }
  1333. void VpcClient::createDhcpOptionsSetAsync(const CreateDhcpOptionsSetRequest& request, const CreateDhcpOptionsSetAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1334. {
  1335. auto fn = [this, request, handler, context]()
  1336. {
  1337. handler(this, request, createDhcpOptionsSet(request), context);
  1338. };
  1339. asyncExecute(new Runnable(fn));
  1340. }
  1341. VpcClient::CreateDhcpOptionsSetOutcomeCallable VpcClient::createDhcpOptionsSetCallable(const CreateDhcpOptionsSetRequest &request) const
  1342. {
  1343. auto task = std::make_shared<std::packaged_task<CreateDhcpOptionsSetOutcome()>>(
  1344. [this, request]()
  1345. {
  1346. return this->createDhcpOptionsSet(request);
  1347. });
  1348. asyncExecute(new Runnable([task]() { (*task)(); }));
  1349. return task->get_future();
  1350. }
  1351. VpcClient::CreateExpressCloudConnectionOutcome VpcClient::createExpressCloudConnection(const CreateExpressCloudConnectionRequest &request) const
  1352. {
  1353. auto endpointOutcome = endpointProvider_->getEndpoint();
  1354. if (!endpointOutcome.isSuccess())
  1355. return CreateExpressCloudConnectionOutcome(endpointOutcome.error());
  1356. auto outcome = makeRequest(endpointOutcome.result(), request);
  1357. if (outcome.isSuccess())
  1358. return CreateExpressCloudConnectionOutcome(CreateExpressCloudConnectionResult(outcome.result()));
  1359. else
  1360. return CreateExpressCloudConnectionOutcome(outcome.error());
  1361. }
  1362. void VpcClient::createExpressCloudConnectionAsync(const CreateExpressCloudConnectionRequest& request, const CreateExpressCloudConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1363. {
  1364. auto fn = [this, request, handler, context]()
  1365. {
  1366. handler(this, request, createExpressCloudConnection(request), context);
  1367. };
  1368. asyncExecute(new Runnable(fn));
  1369. }
  1370. VpcClient::CreateExpressCloudConnectionOutcomeCallable VpcClient::createExpressCloudConnectionCallable(const CreateExpressCloudConnectionRequest &request) const
  1371. {
  1372. auto task = std::make_shared<std::packaged_task<CreateExpressCloudConnectionOutcome()>>(
  1373. [this, request]()
  1374. {
  1375. return this->createExpressCloudConnection(request);
  1376. });
  1377. asyncExecute(new Runnable([task]() { (*task)(); }));
  1378. return task->get_future();
  1379. }
  1380. VpcClient::CreateFlowLogOutcome VpcClient::createFlowLog(const CreateFlowLogRequest &request) const
  1381. {
  1382. auto endpointOutcome = endpointProvider_->getEndpoint();
  1383. if (!endpointOutcome.isSuccess())
  1384. return CreateFlowLogOutcome(endpointOutcome.error());
  1385. auto outcome = makeRequest(endpointOutcome.result(), request);
  1386. if (outcome.isSuccess())
  1387. return CreateFlowLogOutcome(CreateFlowLogResult(outcome.result()));
  1388. else
  1389. return CreateFlowLogOutcome(outcome.error());
  1390. }
  1391. void VpcClient::createFlowLogAsync(const CreateFlowLogRequest& request, const CreateFlowLogAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1392. {
  1393. auto fn = [this, request, handler, context]()
  1394. {
  1395. handler(this, request, createFlowLog(request), context);
  1396. };
  1397. asyncExecute(new Runnable(fn));
  1398. }
  1399. VpcClient::CreateFlowLogOutcomeCallable VpcClient::createFlowLogCallable(const CreateFlowLogRequest &request) const
  1400. {
  1401. auto task = std::make_shared<std::packaged_task<CreateFlowLogOutcome()>>(
  1402. [this, request]()
  1403. {
  1404. return this->createFlowLog(request);
  1405. });
  1406. asyncExecute(new Runnable([task]() { (*task)(); }));
  1407. return task->get_future();
  1408. }
  1409. VpcClient::CreateForwardEntryOutcome VpcClient::createForwardEntry(const CreateForwardEntryRequest &request) const
  1410. {
  1411. auto endpointOutcome = endpointProvider_->getEndpoint();
  1412. if (!endpointOutcome.isSuccess())
  1413. return CreateForwardEntryOutcome(endpointOutcome.error());
  1414. auto outcome = makeRequest(endpointOutcome.result(), request);
  1415. if (outcome.isSuccess())
  1416. return CreateForwardEntryOutcome(CreateForwardEntryResult(outcome.result()));
  1417. else
  1418. return CreateForwardEntryOutcome(outcome.error());
  1419. }
  1420. void VpcClient::createForwardEntryAsync(const CreateForwardEntryRequest& request, const CreateForwardEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1421. {
  1422. auto fn = [this, request, handler, context]()
  1423. {
  1424. handler(this, request, createForwardEntry(request), context);
  1425. };
  1426. asyncExecute(new Runnable(fn));
  1427. }
  1428. VpcClient::CreateForwardEntryOutcomeCallable VpcClient::createForwardEntryCallable(const CreateForwardEntryRequest &request) const
  1429. {
  1430. auto task = std::make_shared<std::packaged_task<CreateForwardEntryOutcome()>>(
  1431. [this, request]()
  1432. {
  1433. return this->createForwardEntry(request);
  1434. });
  1435. asyncExecute(new Runnable([task]() { (*task)(); }));
  1436. return task->get_future();
  1437. }
  1438. VpcClient::CreateFullNatEntryOutcome VpcClient::createFullNatEntry(const CreateFullNatEntryRequest &request) const
  1439. {
  1440. auto endpointOutcome = endpointProvider_->getEndpoint();
  1441. if (!endpointOutcome.isSuccess())
  1442. return CreateFullNatEntryOutcome(endpointOutcome.error());
  1443. auto outcome = makeRequest(endpointOutcome.result(), request);
  1444. if (outcome.isSuccess())
  1445. return CreateFullNatEntryOutcome(CreateFullNatEntryResult(outcome.result()));
  1446. else
  1447. return CreateFullNatEntryOutcome(outcome.error());
  1448. }
  1449. void VpcClient::createFullNatEntryAsync(const CreateFullNatEntryRequest& request, const CreateFullNatEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1450. {
  1451. auto fn = [this, request, handler, context]()
  1452. {
  1453. handler(this, request, createFullNatEntry(request), context);
  1454. };
  1455. asyncExecute(new Runnable(fn));
  1456. }
  1457. VpcClient::CreateFullNatEntryOutcomeCallable VpcClient::createFullNatEntryCallable(const CreateFullNatEntryRequest &request) const
  1458. {
  1459. auto task = std::make_shared<std::packaged_task<CreateFullNatEntryOutcome()>>(
  1460. [this, request]()
  1461. {
  1462. return this->createFullNatEntry(request);
  1463. });
  1464. asyncExecute(new Runnable([task]() { (*task)(); }));
  1465. return task->get_future();
  1466. }
  1467. VpcClient::CreateGlobalAccelerationInstanceOutcome VpcClient::createGlobalAccelerationInstance(const CreateGlobalAccelerationInstanceRequest &request) const
  1468. {
  1469. auto endpointOutcome = endpointProvider_->getEndpoint();
  1470. if (!endpointOutcome.isSuccess())
  1471. return CreateGlobalAccelerationInstanceOutcome(endpointOutcome.error());
  1472. auto outcome = makeRequest(endpointOutcome.result(), request);
  1473. if (outcome.isSuccess())
  1474. return CreateGlobalAccelerationInstanceOutcome(CreateGlobalAccelerationInstanceResult(outcome.result()));
  1475. else
  1476. return CreateGlobalAccelerationInstanceOutcome(outcome.error());
  1477. }
  1478. void VpcClient::createGlobalAccelerationInstanceAsync(const CreateGlobalAccelerationInstanceRequest& request, const CreateGlobalAccelerationInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1479. {
  1480. auto fn = [this, request, handler, context]()
  1481. {
  1482. handler(this, request, createGlobalAccelerationInstance(request), context);
  1483. };
  1484. asyncExecute(new Runnable(fn));
  1485. }
  1486. VpcClient::CreateGlobalAccelerationInstanceOutcomeCallable VpcClient::createGlobalAccelerationInstanceCallable(const CreateGlobalAccelerationInstanceRequest &request) const
  1487. {
  1488. auto task = std::make_shared<std::packaged_task<CreateGlobalAccelerationInstanceOutcome()>>(
  1489. [this, request]()
  1490. {
  1491. return this->createGlobalAccelerationInstance(request);
  1492. });
  1493. asyncExecute(new Runnable([task]() { (*task)(); }));
  1494. return task->get_future();
  1495. }
  1496. VpcClient::CreateHaVipOutcome VpcClient::createHaVip(const CreateHaVipRequest &request) const
  1497. {
  1498. auto endpointOutcome = endpointProvider_->getEndpoint();
  1499. if (!endpointOutcome.isSuccess())
  1500. return CreateHaVipOutcome(endpointOutcome.error());
  1501. auto outcome = makeRequest(endpointOutcome.result(), request);
  1502. if (outcome.isSuccess())
  1503. return CreateHaVipOutcome(CreateHaVipResult(outcome.result()));
  1504. else
  1505. return CreateHaVipOutcome(outcome.error());
  1506. }
  1507. void VpcClient::createHaVipAsync(const CreateHaVipRequest& request, const CreateHaVipAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1508. {
  1509. auto fn = [this, request, handler, context]()
  1510. {
  1511. handler(this, request, createHaVip(request), context);
  1512. };
  1513. asyncExecute(new Runnable(fn));
  1514. }
  1515. VpcClient::CreateHaVipOutcomeCallable VpcClient::createHaVipCallable(const CreateHaVipRequest &request) const
  1516. {
  1517. auto task = std::make_shared<std::packaged_task<CreateHaVipOutcome()>>(
  1518. [this, request]()
  1519. {
  1520. return this->createHaVip(request);
  1521. });
  1522. asyncExecute(new Runnable([task]() { (*task)(); }));
  1523. return task->get_future();
  1524. }
  1525. VpcClient::CreateIPv6TranslatorOutcome VpcClient::createIPv6Translator(const CreateIPv6TranslatorRequest &request) const
  1526. {
  1527. auto endpointOutcome = endpointProvider_->getEndpoint();
  1528. if (!endpointOutcome.isSuccess())
  1529. return CreateIPv6TranslatorOutcome(endpointOutcome.error());
  1530. auto outcome = makeRequest(endpointOutcome.result(), request);
  1531. if (outcome.isSuccess())
  1532. return CreateIPv6TranslatorOutcome(CreateIPv6TranslatorResult(outcome.result()));
  1533. else
  1534. return CreateIPv6TranslatorOutcome(outcome.error());
  1535. }
  1536. void VpcClient::createIPv6TranslatorAsync(const CreateIPv6TranslatorRequest& request, const CreateIPv6TranslatorAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1537. {
  1538. auto fn = [this, request, handler, context]()
  1539. {
  1540. handler(this, request, createIPv6Translator(request), context);
  1541. };
  1542. asyncExecute(new Runnable(fn));
  1543. }
  1544. VpcClient::CreateIPv6TranslatorOutcomeCallable VpcClient::createIPv6TranslatorCallable(const CreateIPv6TranslatorRequest &request) const
  1545. {
  1546. auto task = std::make_shared<std::packaged_task<CreateIPv6TranslatorOutcome()>>(
  1547. [this, request]()
  1548. {
  1549. return this->createIPv6Translator(request);
  1550. });
  1551. asyncExecute(new Runnable([task]() { (*task)(); }));
  1552. return task->get_future();
  1553. }
  1554. VpcClient::CreateIPv6TranslatorAclListOutcome VpcClient::createIPv6TranslatorAclList(const CreateIPv6TranslatorAclListRequest &request) const
  1555. {
  1556. auto endpointOutcome = endpointProvider_->getEndpoint();
  1557. if (!endpointOutcome.isSuccess())
  1558. return CreateIPv6TranslatorAclListOutcome(endpointOutcome.error());
  1559. auto outcome = makeRequest(endpointOutcome.result(), request);
  1560. if (outcome.isSuccess())
  1561. return CreateIPv6TranslatorAclListOutcome(CreateIPv6TranslatorAclListResult(outcome.result()));
  1562. else
  1563. return CreateIPv6TranslatorAclListOutcome(outcome.error());
  1564. }
  1565. void VpcClient::createIPv6TranslatorAclListAsync(const CreateIPv6TranslatorAclListRequest& request, const CreateIPv6TranslatorAclListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1566. {
  1567. auto fn = [this, request, handler, context]()
  1568. {
  1569. handler(this, request, createIPv6TranslatorAclList(request), context);
  1570. };
  1571. asyncExecute(new Runnable(fn));
  1572. }
  1573. VpcClient::CreateIPv6TranslatorAclListOutcomeCallable VpcClient::createIPv6TranslatorAclListCallable(const CreateIPv6TranslatorAclListRequest &request) const
  1574. {
  1575. auto task = std::make_shared<std::packaged_task<CreateIPv6TranslatorAclListOutcome()>>(
  1576. [this, request]()
  1577. {
  1578. return this->createIPv6TranslatorAclList(request);
  1579. });
  1580. asyncExecute(new Runnable([task]() { (*task)(); }));
  1581. return task->get_future();
  1582. }
  1583. VpcClient::CreateIPv6TranslatorEntryOutcome VpcClient::createIPv6TranslatorEntry(const CreateIPv6TranslatorEntryRequest &request) const
  1584. {
  1585. auto endpointOutcome = endpointProvider_->getEndpoint();
  1586. if (!endpointOutcome.isSuccess())
  1587. return CreateIPv6TranslatorEntryOutcome(endpointOutcome.error());
  1588. auto outcome = makeRequest(endpointOutcome.result(), request);
  1589. if (outcome.isSuccess())
  1590. return CreateIPv6TranslatorEntryOutcome(CreateIPv6TranslatorEntryResult(outcome.result()));
  1591. else
  1592. return CreateIPv6TranslatorEntryOutcome(outcome.error());
  1593. }
  1594. void VpcClient::createIPv6TranslatorEntryAsync(const CreateIPv6TranslatorEntryRequest& request, const CreateIPv6TranslatorEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1595. {
  1596. auto fn = [this, request, handler, context]()
  1597. {
  1598. handler(this, request, createIPv6TranslatorEntry(request), context);
  1599. };
  1600. asyncExecute(new Runnable(fn));
  1601. }
  1602. VpcClient::CreateIPv6TranslatorEntryOutcomeCallable VpcClient::createIPv6TranslatorEntryCallable(const CreateIPv6TranslatorEntryRequest &request) const
  1603. {
  1604. auto task = std::make_shared<std::packaged_task<CreateIPv6TranslatorEntryOutcome()>>(
  1605. [this, request]()
  1606. {
  1607. return this->createIPv6TranslatorEntry(request);
  1608. });
  1609. asyncExecute(new Runnable([task]() { (*task)(); }));
  1610. return task->get_future();
  1611. }
  1612. VpcClient::CreateIpsecServerOutcome VpcClient::createIpsecServer(const CreateIpsecServerRequest &request) const
  1613. {
  1614. auto endpointOutcome = endpointProvider_->getEndpoint();
  1615. if (!endpointOutcome.isSuccess())
  1616. return CreateIpsecServerOutcome(endpointOutcome.error());
  1617. auto outcome = makeRequest(endpointOutcome.result(), request);
  1618. if (outcome.isSuccess())
  1619. return CreateIpsecServerOutcome(CreateIpsecServerResult(outcome.result()));
  1620. else
  1621. return CreateIpsecServerOutcome(outcome.error());
  1622. }
  1623. void VpcClient::createIpsecServerAsync(const CreateIpsecServerRequest& request, const CreateIpsecServerAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1624. {
  1625. auto fn = [this, request, handler, context]()
  1626. {
  1627. handler(this, request, createIpsecServer(request), context);
  1628. };
  1629. asyncExecute(new Runnable(fn));
  1630. }
  1631. VpcClient::CreateIpsecServerOutcomeCallable VpcClient::createIpsecServerCallable(const CreateIpsecServerRequest &request) const
  1632. {
  1633. auto task = std::make_shared<std::packaged_task<CreateIpsecServerOutcome()>>(
  1634. [this, request]()
  1635. {
  1636. return this->createIpsecServer(request);
  1637. });
  1638. asyncExecute(new Runnable([task]() { (*task)(); }));
  1639. return task->get_future();
  1640. }
  1641. VpcClient::CreateIpv4GatewayOutcome VpcClient::createIpv4Gateway(const CreateIpv4GatewayRequest &request) const
  1642. {
  1643. auto endpointOutcome = endpointProvider_->getEndpoint();
  1644. if (!endpointOutcome.isSuccess())
  1645. return CreateIpv4GatewayOutcome(endpointOutcome.error());
  1646. auto outcome = makeRequest(endpointOutcome.result(), request);
  1647. if (outcome.isSuccess())
  1648. return CreateIpv4GatewayOutcome(CreateIpv4GatewayResult(outcome.result()));
  1649. else
  1650. return CreateIpv4GatewayOutcome(outcome.error());
  1651. }
  1652. void VpcClient::createIpv4GatewayAsync(const CreateIpv4GatewayRequest& request, const CreateIpv4GatewayAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1653. {
  1654. auto fn = [this, request, handler, context]()
  1655. {
  1656. handler(this, request, createIpv4Gateway(request), context);
  1657. };
  1658. asyncExecute(new Runnable(fn));
  1659. }
  1660. VpcClient::CreateIpv4GatewayOutcomeCallable VpcClient::createIpv4GatewayCallable(const CreateIpv4GatewayRequest &request) const
  1661. {
  1662. auto task = std::make_shared<std::packaged_task<CreateIpv4GatewayOutcome()>>(
  1663. [this, request]()
  1664. {
  1665. return this->createIpv4Gateway(request);
  1666. });
  1667. asyncExecute(new Runnable([task]() { (*task)(); }));
  1668. return task->get_future();
  1669. }
  1670. VpcClient::CreateIpv6EgressOnlyRuleOutcome VpcClient::createIpv6EgressOnlyRule(const CreateIpv6EgressOnlyRuleRequest &request) const
  1671. {
  1672. auto endpointOutcome = endpointProvider_->getEndpoint();
  1673. if (!endpointOutcome.isSuccess())
  1674. return CreateIpv6EgressOnlyRuleOutcome(endpointOutcome.error());
  1675. auto outcome = makeRequest(endpointOutcome.result(), request);
  1676. if (outcome.isSuccess())
  1677. return CreateIpv6EgressOnlyRuleOutcome(CreateIpv6EgressOnlyRuleResult(outcome.result()));
  1678. else
  1679. return CreateIpv6EgressOnlyRuleOutcome(outcome.error());
  1680. }
  1681. void VpcClient::createIpv6EgressOnlyRuleAsync(const CreateIpv6EgressOnlyRuleRequest& request, const CreateIpv6EgressOnlyRuleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1682. {
  1683. auto fn = [this, request, handler, context]()
  1684. {
  1685. handler(this, request, createIpv6EgressOnlyRule(request), context);
  1686. };
  1687. asyncExecute(new Runnable(fn));
  1688. }
  1689. VpcClient::CreateIpv6EgressOnlyRuleOutcomeCallable VpcClient::createIpv6EgressOnlyRuleCallable(const CreateIpv6EgressOnlyRuleRequest &request) const
  1690. {
  1691. auto task = std::make_shared<std::packaged_task<CreateIpv6EgressOnlyRuleOutcome()>>(
  1692. [this, request]()
  1693. {
  1694. return this->createIpv6EgressOnlyRule(request);
  1695. });
  1696. asyncExecute(new Runnable([task]() { (*task)(); }));
  1697. return task->get_future();
  1698. }
  1699. VpcClient::CreateIpv6GatewayOutcome VpcClient::createIpv6Gateway(const CreateIpv6GatewayRequest &request) const
  1700. {
  1701. auto endpointOutcome = endpointProvider_->getEndpoint();
  1702. if (!endpointOutcome.isSuccess())
  1703. return CreateIpv6GatewayOutcome(endpointOutcome.error());
  1704. auto outcome = makeRequest(endpointOutcome.result(), request);
  1705. if (outcome.isSuccess())
  1706. return CreateIpv6GatewayOutcome(CreateIpv6GatewayResult(outcome.result()));
  1707. else
  1708. return CreateIpv6GatewayOutcome(outcome.error());
  1709. }
  1710. void VpcClient::createIpv6GatewayAsync(const CreateIpv6GatewayRequest& request, const CreateIpv6GatewayAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1711. {
  1712. auto fn = [this, request, handler, context]()
  1713. {
  1714. handler(this, request, createIpv6Gateway(request), context);
  1715. };
  1716. asyncExecute(new Runnable(fn));
  1717. }
  1718. VpcClient::CreateIpv6GatewayOutcomeCallable VpcClient::createIpv6GatewayCallable(const CreateIpv6GatewayRequest &request) const
  1719. {
  1720. auto task = std::make_shared<std::packaged_task<CreateIpv6GatewayOutcome()>>(
  1721. [this, request]()
  1722. {
  1723. return this->createIpv6Gateway(request);
  1724. });
  1725. asyncExecute(new Runnable([task]() { (*task)(); }));
  1726. return task->get_future();
  1727. }
  1728. VpcClient::CreateNatGatewayOutcome VpcClient::createNatGateway(const CreateNatGatewayRequest &request) const
  1729. {
  1730. auto endpointOutcome = endpointProvider_->getEndpoint();
  1731. if (!endpointOutcome.isSuccess())
  1732. return CreateNatGatewayOutcome(endpointOutcome.error());
  1733. auto outcome = makeRequest(endpointOutcome.result(), request);
  1734. if (outcome.isSuccess())
  1735. return CreateNatGatewayOutcome(CreateNatGatewayResult(outcome.result()));
  1736. else
  1737. return CreateNatGatewayOutcome(outcome.error());
  1738. }
  1739. void VpcClient::createNatGatewayAsync(const CreateNatGatewayRequest& request, const CreateNatGatewayAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1740. {
  1741. auto fn = [this, request, handler, context]()
  1742. {
  1743. handler(this, request, createNatGateway(request), context);
  1744. };
  1745. asyncExecute(new Runnable(fn));
  1746. }
  1747. VpcClient::CreateNatGatewayOutcomeCallable VpcClient::createNatGatewayCallable(const CreateNatGatewayRequest &request) const
  1748. {
  1749. auto task = std::make_shared<std::packaged_task<CreateNatGatewayOutcome()>>(
  1750. [this, request]()
  1751. {
  1752. return this->createNatGateway(request);
  1753. });
  1754. asyncExecute(new Runnable([task]() { (*task)(); }));
  1755. return task->get_future();
  1756. }
  1757. VpcClient::CreateNatIpOutcome VpcClient::createNatIp(const CreateNatIpRequest &request) const
  1758. {
  1759. auto endpointOutcome = endpointProvider_->getEndpoint();
  1760. if (!endpointOutcome.isSuccess())
  1761. return CreateNatIpOutcome(endpointOutcome.error());
  1762. auto outcome = makeRequest(endpointOutcome.result(), request);
  1763. if (outcome.isSuccess())
  1764. return CreateNatIpOutcome(CreateNatIpResult(outcome.result()));
  1765. else
  1766. return CreateNatIpOutcome(outcome.error());
  1767. }
  1768. void VpcClient::createNatIpAsync(const CreateNatIpRequest& request, const CreateNatIpAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1769. {
  1770. auto fn = [this, request, handler, context]()
  1771. {
  1772. handler(this, request, createNatIp(request), context);
  1773. };
  1774. asyncExecute(new Runnable(fn));
  1775. }
  1776. VpcClient::CreateNatIpOutcomeCallable VpcClient::createNatIpCallable(const CreateNatIpRequest &request) const
  1777. {
  1778. auto task = std::make_shared<std::packaged_task<CreateNatIpOutcome()>>(
  1779. [this, request]()
  1780. {
  1781. return this->createNatIp(request);
  1782. });
  1783. asyncExecute(new Runnable([task]() { (*task)(); }));
  1784. return task->get_future();
  1785. }
  1786. VpcClient::CreateNatIpCidrOutcome VpcClient::createNatIpCidr(const CreateNatIpCidrRequest &request) const
  1787. {
  1788. auto endpointOutcome = endpointProvider_->getEndpoint();
  1789. if (!endpointOutcome.isSuccess())
  1790. return CreateNatIpCidrOutcome(endpointOutcome.error());
  1791. auto outcome = makeRequest(endpointOutcome.result(), request);
  1792. if (outcome.isSuccess())
  1793. return CreateNatIpCidrOutcome(CreateNatIpCidrResult(outcome.result()));
  1794. else
  1795. return CreateNatIpCidrOutcome(outcome.error());
  1796. }
  1797. void VpcClient::createNatIpCidrAsync(const CreateNatIpCidrRequest& request, const CreateNatIpCidrAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1798. {
  1799. auto fn = [this, request, handler, context]()
  1800. {
  1801. handler(this, request, createNatIpCidr(request), context);
  1802. };
  1803. asyncExecute(new Runnable(fn));
  1804. }
  1805. VpcClient::CreateNatIpCidrOutcomeCallable VpcClient::createNatIpCidrCallable(const CreateNatIpCidrRequest &request) const
  1806. {
  1807. auto task = std::make_shared<std::packaged_task<CreateNatIpCidrOutcome()>>(
  1808. [this, request]()
  1809. {
  1810. return this->createNatIpCidr(request);
  1811. });
  1812. asyncExecute(new Runnable([task]() { (*task)(); }));
  1813. return task->get_future();
  1814. }
  1815. VpcClient::CreateNetworkAclOutcome VpcClient::createNetworkAcl(const CreateNetworkAclRequest &request) const
  1816. {
  1817. auto endpointOutcome = endpointProvider_->getEndpoint();
  1818. if (!endpointOutcome.isSuccess())
  1819. return CreateNetworkAclOutcome(endpointOutcome.error());
  1820. auto outcome = makeRequest(endpointOutcome.result(), request);
  1821. if (outcome.isSuccess())
  1822. return CreateNetworkAclOutcome(CreateNetworkAclResult(outcome.result()));
  1823. else
  1824. return CreateNetworkAclOutcome(outcome.error());
  1825. }
  1826. void VpcClient::createNetworkAclAsync(const CreateNetworkAclRequest& request, const CreateNetworkAclAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1827. {
  1828. auto fn = [this, request, handler, context]()
  1829. {
  1830. handler(this, request, createNetworkAcl(request), context);
  1831. };
  1832. asyncExecute(new Runnable(fn));
  1833. }
  1834. VpcClient::CreateNetworkAclOutcomeCallable VpcClient::createNetworkAclCallable(const CreateNetworkAclRequest &request) const
  1835. {
  1836. auto task = std::make_shared<std::packaged_task<CreateNetworkAclOutcome()>>(
  1837. [this, request]()
  1838. {
  1839. return this->createNetworkAcl(request);
  1840. });
  1841. asyncExecute(new Runnable([task]() { (*task)(); }));
  1842. return task->get_future();
  1843. }
  1844. VpcClient::CreatePhysicalConnectionOutcome VpcClient::createPhysicalConnection(const CreatePhysicalConnectionRequest &request) const
  1845. {
  1846. auto endpointOutcome = endpointProvider_->getEndpoint();
  1847. if (!endpointOutcome.isSuccess())
  1848. return CreatePhysicalConnectionOutcome(endpointOutcome.error());
  1849. auto outcome = makeRequest(endpointOutcome.result(), request);
  1850. if (outcome.isSuccess())
  1851. return CreatePhysicalConnectionOutcome(CreatePhysicalConnectionResult(outcome.result()));
  1852. else
  1853. return CreatePhysicalConnectionOutcome(outcome.error());
  1854. }
  1855. void VpcClient::createPhysicalConnectionAsync(const CreatePhysicalConnectionRequest& request, const CreatePhysicalConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1856. {
  1857. auto fn = [this, request, handler, context]()
  1858. {
  1859. handler(this, request, createPhysicalConnection(request), context);
  1860. };
  1861. asyncExecute(new Runnable(fn));
  1862. }
  1863. VpcClient::CreatePhysicalConnectionOutcomeCallable VpcClient::createPhysicalConnectionCallable(const CreatePhysicalConnectionRequest &request) const
  1864. {
  1865. auto task = std::make_shared<std::packaged_task<CreatePhysicalConnectionOutcome()>>(
  1866. [this, request]()
  1867. {
  1868. return this->createPhysicalConnection(request);
  1869. });
  1870. asyncExecute(new Runnable([task]() { (*task)(); }));
  1871. return task->get_future();
  1872. }
  1873. VpcClient::CreatePhysicalConnectionOccupancyOrderOutcome VpcClient::createPhysicalConnectionOccupancyOrder(const CreatePhysicalConnectionOccupancyOrderRequest &request) const
  1874. {
  1875. auto endpointOutcome = endpointProvider_->getEndpoint();
  1876. if (!endpointOutcome.isSuccess())
  1877. return CreatePhysicalConnectionOccupancyOrderOutcome(endpointOutcome.error());
  1878. auto outcome = makeRequest(endpointOutcome.result(), request);
  1879. if (outcome.isSuccess())
  1880. return CreatePhysicalConnectionOccupancyOrderOutcome(CreatePhysicalConnectionOccupancyOrderResult(outcome.result()));
  1881. else
  1882. return CreatePhysicalConnectionOccupancyOrderOutcome(outcome.error());
  1883. }
  1884. void VpcClient::createPhysicalConnectionOccupancyOrderAsync(const CreatePhysicalConnectionOccupancyOrderRequest& request, const CreatePhysicalConnectionOccupancyOrderAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1885. {
  1886. auto fn = [this, request, handler, context]()
  1887. {
  1888. handler(this, request, createPhysicalConnectionOccupancyOrder(request), context);
  1889. };
  1890. asyncExecute(new Runnable(fn));
  1891. }
  1892. VpcClient::CreatePhysicalConnectionOccupancyOrderOutcomeCallable VpcClient::createPhysicalConnectionOccupancyOrderCallable(const CreatePhysicalConnectionOccupancyOrderRequest &request) const
  1893. {
  1894. auto task = std::make_shared<std::packaged_task<CreatePhysicalConnectionOccupancyOrderOutcome()>>(
  1895. [this, request]()
  1896. {
  1897. return this->createPhysicalConnectionOccupancyOrder(request);
  1898. });
  1899. asyncExecute(new Runnable([task]() { (*task)(); }));
  1900. return task->get_future();
  1901. }
  1902. VpcClient::CreatePhysicalConnectionSetupOrderOutcome VpcClient::createPhysicalConnectionSetupOrder(const CreatePhysicalConnectionSetupOrderRequest &request) const
  1903. {
  1904. auto endpointOutcome = endpointProvider_->getEndpoint();
  1905. if (!endpointOutcome.isSuccess())
  1906. return CreatePhysicalConnectionSetupOrderOutcome(endpointOutcome.error());
  1907. auto outcome = makeRequest(endpointOutcome.result(), request);
  1908. if (outcome.isSuccess())
  1909. return CreatePhysicalConnectionSetupOrderOutcome(CreatePhysicalConnectionSetupOrderResult(outcome.result()));
  1910. else
  1911. return CreatePhysicalConnectionSetupOrderOutcome(outcome.error());
  1912. }
  1913. void VpcClient::createPhysicalConnectionSetupOrderAsync(const CreatePhysicalConnectionSetupOrderRequest& request, const CreatePhysicalConnectionSetupOrderAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1914. {
  1915. auto fn = [this, request, handler, context]()
  1916. {
  1917. handler(this, request, createPhysicalConnectionSetupOrder(request), context);
  1918. };
  1919. asyncExecute(new Runnable(fn));
  1920. }
  1921. VpcClient::CreatePhysicalConnectionSetupOrderOutcomeCallable VpcClient::createPhysicalConnectionSetupOrderCallable(const CreatePhysicalConnectionSetupOrderRequest &request) const
  1922. {
  1923. auto task = std::make_shared<std::packaged_task<CreatePhysicalConnectionSetupOrderOutcome()>>(
  1924. [this, request]()
  1925. {
  1926. return this->createPhysicalConnectionSetupOrder(request);
  1927. });
  1928. asyncExecute(new Runnable([task]() { (*task)(); }));
  1929. return task->get_future();
  1930. }
  1931. VpcClient::CreatePublicIpAddressPoolOutcome VpcClient::createPublicIpAddressPool(const CreatePublicIpAddressPoolRequest &request) const
  1932. {
  1933. auto endpointOutcome = endpointProvider_->getEndpoint();
  1934. if (!endpointOutcome.isSuccess())
  1935. return CreatePublicIpAddressPoolOutcome(endpointOutcome.error());
  1936. auto outcome = makeRequest(endpointOutcome.result(), request);
  1937. if (outcome.isSuccess())
  1938. return CreatePublicIpAddressPoolOutcome(CreatePublicIpAddressPoolResult(outcome.result()));
  1939. else
  1940. return CreatePublicIpAddressPoolOutcome(outcome.error());
  1941. }
  1942. void VpcClient::createPublicIpAddressPoolAsync(const CreatePublicIpAddressPoolRequest& request, const CreatePublicIpAddressPoolAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1943. {
  1944. auto fn = [this, request, handler, context]()
  1945. {
  1946. handler(this, request, createPublicIpAddressPool(request), context);
  1947. };
  1948. asyncExecute(new Runnable(fn));
  1949. }
  1950. VpcClient::CreatePublicIpAddressPoolOutcomeCallable VpcClient::createPublicIpAddressPoolCallable(const CreatePublicIpAddressPoolRequest &request) const
  1951. {
  1952. auto task = std::make_shared<std::packaged_task<CreatePublicIpAddressPoolOutcome()>>(
  1953. [this, request]()
  1954. {
  1955. return this->createPublicIpAddressPool(request);
  1956. });
  1957. asyncExecute(new Runnable([task]() { (*task)(); }));
  1958. return task->get_future();
  1959. }
  1960. VpcClient::CreateRouteEntriesOutcome VpcClient::createRouteEntries(const CreateRouteEntriesRequest &request) const
  1961. {
  1962. auto endpointOutcome = endpointProvider_->getEndpoint();
  1963. if (!endpointOutcome.isSuccess())
  1964. return CreateRouteEntriesOutcome(endpointOutcome.error());
  1965. auto outcome = makeRequest(endpointOutcome.result(), request);
  1966. if (outcome.isSuccess())
  1967. return CreateRouteEntriesOutcome(CreateRouteEntriesResult(outcome.result()));
  1968. else
  1969. return CreateRouteEntriesOutcome(outcome.error());
  1970. }
  1971. void VpcClient::createRouteEntriesAsync(const CreateRouteEntriesRequest& request, const CreateRouteEntriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  1972. {
  1973. auto fn = [this, request, handler, context]()
  1974. {
  1975. handler(this, request, createRouteEntries(request), context);
  1976. };
  1977. asyncExecute(new Runnable(fn));
  1978. }
  1979. VpcClient::CreateRouteEntriesOutcomeCallable VpcClient::createRouteEntriesCallable(const CreateRouteEntriesRequest &request) const
  1980. {
  1981. auto task = std::make_shared<std::packaged_task<CreateRouteEntriesOutcome()>>(
  1982. [this, request]()
  1983. {
  1984. return this->createRouteEntries(request);
  1985. });
  1986. asyncExecute(new Runnable([task]() { (*task)(); }));
  1987. return task->get_future();
  1988. }
  1989. VpcClient::CreateRouteEntryOutcome VpcClient::createRouteEntry(const CreateRouteEntryRequest &request) const
  1990. {
  1991. auto endpointOutcome = endpointProvider_->getEndpoint();
  1992. if (!endpointOutcome.isSuccess())
  1993. return CreateRouteEntryOutcome(endpointOutcome.error());
  1994. auto outcome = makeRequest(endpointOutcome.result(), request);
  1995. if (outcome.isSuccess())
  1996. return CreateRouteEntryOutcome(CreateRouteEntryResult(outcome.result()));
  1997. else
  1998. return CreateRouteEntryOutcome(outcome.error());
  1999. }
  2000. void VpcClient::createRouteEntryAsync(const CreateRouteEntryRequest& request, const CreateRouteEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2001. {
  2002. auto fn = [this, request, handler, context]()
  2003. {
  2004. handler(this, request, createRouteEntry(request), context);
  2005. };
  2006. asyncExecute(new Runnable(fn));
  2007. }
  2008. VpcClient::CreateRouteEntryOutcomeCallable VpcClient::createRouteEntryCallable(const CreateRouteEntryRequest &request) const
  2009. {
  2010. auto task = std::make_shared<std::packaged_task<CreateRouteEntryOutcome()>>(
  2011. [this, request]()
  2012. {
  2013. return this->createRouteEntry(request);
  2014. });
  2015. asyncExecute(new Runnable([task]() { (*task)(); }));
  2016. return task->get_future();
  2017. }
  2018. VpcClient::CreateRouteTableOutcome VpcClient::createRouteTable(const CreateRouteTableRequest &request) const
  2019. {
  2020. auto endpointOutcome = endpointProvider_->getEndpoint();
  2021. if (!endpointOutcome.isSuccess())
  2022. return CreateRouteTableOutcome(endpointOutcome.error());
  2023. auto outcome = makeRequest(endpointOutcome.result(), request);
  2024. if (outcome.isSuccess())
  2025. return CreateRouteTableOutcome(CreateRouteTableResult(outcome.result()));
  2026. else
  2027. return CreateRouteTableOutcome(outcome.error());
  2028. }
  2029. void VpcClient::createRouteTableAsync(const CreateRouteTableRequest& request, const CreateRouteTableAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2030. {
  2031. auto fn = [this, request, handler, context]()
  2032. {
  2033. handler(this, request, createRouteTable(request), context);
  2034. };
  2035. asyncExecute(new Runnable(fn));
  2036. }
  2037. VpcClient::CreateRouteTableOutcomeCallable VpcClient::createRouteTableCallable(const CreateRouteTableRequest &request) const
  2038. {
  2039. auto task = std::make_shared<std::packaged_task<CreateRouteTableOutcome()>>(
  2040. [this, request]()
  2041. {
  2042. return this->createRouteTable(request);
  2043. });
  2044. asyncExecute(new Runnable([task]() { (*task)(); }));
  2045. return task->get_future();
  2046. }
  2047. VpcClient::CreateRouterInterfaceOutcome VpcClient::createRouterInterface(const CreateRouterInterfaceRequest &request) const
  2048. {
  2049. auto endpointOutcome = endpointProvider_->getEndpoint();
  2050. if (!endpointOutcome.isSuccess())
  2051. return CreateRouterInterfaceOutcome(endpointOutcome.error());
  2052. auto outcome = makeRequest(endpointOutcome.result(), request);
  2053. if (outcome.isSuccess())
  2054. return CreateRouterInterfaceOutcome(CreateRouterInterfaceResult(outcome.result()));
  2055. else
  2056. return CreateRouterInterfaceOutcome(outcome.error());
  2057. }
  2058. void VpcClient::createRouterInterfaceAsync(const CreateRouterInterfaceRequest& request, const CreateRouterInterfaceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2059. {
  2060. auto fn = [this, request, handler, context]()
  2061. {
  2062. handler(this, request, createRouterInterface(request), context);
  2063. };
  2064. asyncExecute(new Runnable(fn));
  2065. }
  2066. VpcClient::CreateRouterInterfaceOutcomeCallable VpcClient::createRouterInterfaceCallable(const CreateRouterInterfaceRequest &request) const
  2067. {
  2068. auto task = std::make_shared<std::packaged_task<CreateRouterInterfaceOutcome()>>(
  2069. [this, request]()
  2070. {
  2071. return this->createRouterInterface(request);
  2072. });
  2073. asyncExecute(new Runnable([task]() { (*task)(); }));
  2074. return task->get_future();
  2075. }
  2076. VpcClient::CreateSnatEntryOutcome VpcClient::createSnatEntry(const CreateSnatEntryRequest &request) const
  2077. {
  2078. auto endpointOutcome = endpointProvider_->getEndpoint();
  2079. if (!endpointOutcome.isSuccess())
  2080. return CreateSnatEntryOutcome(endpointOutcome.error());
  2081. auto outcome = makeRequest(endpointOutcome.result(), request);
  2082. if (outcome.isSuccess())
  2083. return CreateSnatEntryOutcome(CreateSnatEntryResult(outcome.result()));
  2084. else
  2085. return CreateSnatEntryOutcome(outcome.error());
  2086. }
  2087. void VpcClient::createSnatEntryAsync(const CreateSnatEntryRequest& request, const CreateSnatEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2088. {
  2089. auto fn = [this, request, handler, context]()
  2090. {
  2091. handler(this, request, createSnatEntry(request), context);
  2092. };
  2093. asyncExecute(new Runnable(fn));
  2094. }
  2095. VpcClient::CreateSnatEntryOutcomeCallable VpcClient::createSnatEntryCallable(const CreateSnatEntryRequest &request) const
  2096. {
  2097. auto task = std::make_shared<std::packaged_task<CreateSnatEntryOutcome()>>(
  2098. [this, request]()
  2099. {
  2100. return this->createSnatEntry(request);
  2101. });
  2102. asyncExecute(new Runnable([task]() { (*task)(); }));
  2103. return task->get_future();
  2104. }
  2105. VpcClient::CreateSslVpnClientCertOutcome VpcClient::createSslVpnClientCert(const CreateSslVpnClientCertRequest &request) const
  2106. {
  2107. auto endpointOutcome = endpointProvider_->getEndpoint();
  2108. if (!endpointOutcome.isSuccess())
  2109. return CreateSslVpnClientCertOutcome(endpointOutcome.error());
  2110. auto outcome = makeRequest(endpointOutcome.result(), request);
  2111. if (outcome.isSuccess())
  2112. return CreateSslVpnClientCertOutcome(CreateSslVpnClientCertResult(outcome.result()));
  2113. else
  2114. return CreateSslVpnClientCertOutcome(outcome.error());
  2115. }
  2116. void VpcClient::createSslVpnClientCertAsync(const CreateSslVpnClientCertRequest& request, const CreateSslVpnClientCertAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2117. {
  2118. auto fn = [this, request, handler, context]()
  2119. {
  2120. handler(this, request, createSslVpnClientCert(request), context);
  2121. };
  2122. asyncExecute(new Runnable(fn));
  2123. }
  2124. VpcClient::CreateSslVpnClientCertOutcomeCallable VpcClient::createSslVpnClientCertCallable(const CreateSslVpnClientCertRequest &request) const
  2125. {
  2126. auto task = std::make_shared<std::packaged_task<CreateSslVpnClientCertOutcome()>>(
  2127. [this, request]()
  2128. {
  2129. return this->createSslVpnClientCert(request);
  2130. });
  2131. asyncExecute(new Runnable([task]() { (*task)(); }));
  2132. return task->get_future();
  2133. }
  2134. VpcClient::CreateSslVpnServerOutcome VpcClient::createSslVpnServer(const CreateSslVpnServerRequest &request) const
  2135. {
  2136. auto endpointOutcome = endpointProvider_->getEndpoint();
  2137. if (!endpointOutcome.isSuccess())
  2138. return CreateSslVpnServerOutcome(endpointOutcome.error());
  2139. auto outcome = makeRequest(endpointOutcome.result(), request);
  2140. if (outcome.isSuccess())
  2141. return CreateSslVpnServerOutcome(CreateSslVpnServerResult(outcome.result()));
  2142. else
  2143. return CreateSslVpnServerOutcome(outcome.error());
  2144. }
  2145. void VpcClient::createSslVpnServerAsync(const CreateSslVpnServerRequest& request, const CreateSslVpnServerAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2146. {
  2147. auto fn = [this, request, handler, context]()
  2148. {
  2149. handler(this, request, createSslVpnServer(request), context);
  2150. };
  2151. asyncExecute(new Runnable(fn));
  2152. }
  2153. VpcClient::CreateSslVpnServerOutcomeCallable VpcClient::createSslVpnServerCallable(const CreateSslVpnServerRequest &request) const
  2154. {
  2155. auto task = std::make_shared<std::packaged_task<CreateSslVpnServerOutcome()>>(
  2156. [this, request]()
  2157. {
  2158. return this->createSslVpnServer(request);
  2159. });
  2160. asyncExecute(new Runnable([task]() { (*task)(); }));
  2161. return task->get_future();
  2162. }
  2163. VpcClient::CreateTrafficMirrorFilterOutcome VpcClient::createTrafficMirrorFilter(const CreateTrafficMirrorFilterRequest &request) const
  2164. {
  2165. auto endpointOutcome = endpointProvider_->getEndpoint();
  2166. if (!endpointOutcome.isSuccess())
  2167. return CreateTrafficMirrorFilterOutcome(endpointOutcome.error());
  2168. auto outcome = makeRequest(endpointOutcome.result(), request);
  2169. if (outcome.isSuccess())
  2170. return CreateTrafficMirrorFilterOutcome(CreateTrafficMirrorFilterResult(outcome.result()));
  2171. else
  2172. return CreateTrafficMirrorFilterOutcome(outcome.error());
  2173. }
  2174. void VpcClient::createTrafficMirrorFilterAsync(const CreateTrafficMirrorFilterRequest& request, const CreateTrafficMirrorFilterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2175. {
  2176. auto fn = [this, request, handler, context]()
  2177. {
  2178. handler(this, request, createTrafficMirrorFilter(request), context);
  2179. };
  2180. asyncExecute(new Runnable(fn));
  2181. }
  2182. VpcClient::CreateTrafficMirrorFilterOutcomeCallable VpcClient::createTrafficMirrorFilterCallable(const CreateTrafficMirrorFilterRequest &request) const
  2183. {
  2184. auto task = std::make_shared<std::packaged_task<CreateTrafficMirrorFilterOutcome()>>(
  2185. [this, request]()
  2186. {
  2187. return this->createTrafficMirrorFilter(request);
  2188. });
  2189. asyncExecute(new Runnable([task]() { (*task)(); }));
  2190. return task->get_future();
  2191. }
  2192. VpcClient::CreateTrafficMirrorFilterRulesOutcome VpcClient::createTrafficMirrorFilterRules(const CreateTrafficMirrorFilterRulesRequest &request) const
  2193. {
  2194. auto endpointOutcome = endpointProvider_->getEndpoint();
  2195. if (!endpointOutcome.isSuccess())
  2196. return CreateTrafficMirrorFilterRulesOutcome(endpointOutcome.error());
  2197. auto outcome = makeRequest(endpointOutcome.result(), request);
  2198. if (outcome.isSuccess())
  2199. return CreateTrafficMirrorFilterRulesOutcome(CreateTrafficMirrorFilterRulesResult(outcome.result()));
  2200. else
  2201. return CreateTrafficMirrorFilterRulesOutcome(outcome.error());
  2202. }
  2203. void VpcClient::createTrafficMirrorFilterRulesAsync(const CreateTrafficMirrorFilterRulesRequest& request, const CreateTrafficMirrorFilterRulesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2204. {
  2205. auto fn = [this, request, handler, context]()
  2206. {
  2207. handler(this, request, createTrafficMirrorFilterRules(request), context);
  2208. };
  2209. asyncExecute(new Runnable(fn));
  2210. }
  2211. VpcClient::CreateTrafficMirrorFilterRulesOutcomeCallable VpcClient::createTrafficMirrorFilterRulesCallable(const CreateTrafficMirrorFilterRulesRequest &request) const
  2212. {
  2213. auto task = std::make_shared<std::packaged_task<CreateTrafficMirrorFilterRulesOutcome()>>(
  2214. [this, request]()
  2215. {
  2216. return this->createTrafficMirrorFilterRules(request);
  2217. });
  2218. asyncExecute(new Runnable([task]() { (*task)(); }));
  2219. return task->get_future();
  2220. }
  2221. VpcClient::CreateTrafficMirrorSessionOutcome VpcClient::createTrafficMirrorSession(const CreateTrafficMirrorSessionRequest &request) const
  2222. {
  2223. auto endpointOutcome = endpointProvider_->getEndpoint();
  2224. if (!endpointOutcome.isSuccess())
  2225. return CreateTrafficMirrorSessionOutcome(endpointOutcome.error());
  2226. auto outcome = makeRequest(endpointOutcome.result(), request);
  2227. if (outcome.isSuccess())
  2228. return CreateTrafficMirrorSessionOutcome(CreateTrafficMirrorSessionResult(outcome.result()));
  2229. else
  2230. return CreateTrafficMirrorSessionOutcome(outcome.error());
  2231. }
  2232. void VpcClient::createTrafficMirrorSessionAsync(const CreateTrafficMirrorSessionRequest& request, const CreateTrafficMirrorSessionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2233. {
  2234. auto fn = [this, request, handler, context]()
  2235. {
  2236. handler(this, request, createTrafficMirrorSession(request), context);
  2237. };
  2238. asyncExecute(new Runnable(fn));
  2239. }
  2240. VpcClient::CreateTrafficMirrorSessionOutcomeCallable VpcClient::createTrafficMirrorSessionCallable(const CreateTrafficMirrorSessionRequest &request) const
  2241. {
  2242. auto task = std::make_shared<std::packaged_task<CreateTrafficMirrorSessionOutcome()>>(
  2243. [this, request]()
  2244. {
  2245. return this->createTrafficMirrorSession(request);
  2246. });
  2247. asyncExecute(new Runnable([task]() { (*task)(); }));
  2248. return task->get_future();
  2249. }
  2250. VpcClient::CreateVSwitchOutcome VpcClient::createVSwitch(const CreateVSwitchRequest &request) const
  2251. {
  2252. auto endpointOutcome = endpointProvider_->getEndpoint();
  2253. if (!endpointOutcome.isSuccess())
  2254. return CreateVSwitchOutcome(endpointOutcome.error());
  2255. auto outcome = makeRequest(endpointOutcome.result(), request);
  2256. if (outcome.isSuccess())
  2257. return CreateVSwitchOutcome(CreateVSwitchResult(outcome.result()));
  2258. else
  2259. return CreateVSwitchOutcome(outcome.error());
  2260. }
  2261. void VpcClient::createVSwitchAsync(const CreateVSwitchRequest& request, const CreateVSwitchAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2262. {
  2263. auto fn = [this, request, handler, context]()
  2264. {
  2265. handler(this, request, createVSwitch(request), context);
  2266. };
  2267. asyncExecute(new Runnable(fn));
  2268. }
  2269. VpcClient::CreateVSwitchOutcomeCallable VpcClient::createVSwitchCallable(const CreateVSwitchRequest &request) const
  2270. {
  2271. auto task = std::make_shared<std::packaged_task<CreateVSwitchOutcome()>>(
  2272. [this, request]()
  2273. {
  2274. return this->createVSwitch(request);
  2275. });
  2276. asyncExecute(new Runnable([task]() { (*task)(); }));
  2277. return task->get_future();
  2278. }
  2279. VpcClient::CreateVbrHaOutcome VpcClient::createVbrHa(const CreateVbrHaRequest &request) const
  2280. {
  2281. auto endpointOutcome = endpointProvider_->getEndpoint();
  2282. if (!endpointOutcome.isSuccess())
  2283. return CreateVbrHaOutcome(endpointOutcome.error());
  2284. auto outcome = makeRequest(endpointOutcome.result(), request);
  2285. if (outcome.isSuccess())
  2286. return CreateVbrHaOutcome(CreateVbrHaResult(outcome.result()));
  2287. else
  2288. return CreateVbrHaOutcome(outcome.error());
  2289. }
  2290. void VpcClient::createVbrHaAsync(const CreateVbrHaRequest& request, const CreateVbrHaAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2291. {
  2292. auto fn = [this, request, handler, context]()
  2293. {
  2294. handler(this, request, createVbrHa(request), context);
  2295. };
  2296. asyncExecute(new Runnable(fn));
  2297. }
  2298. VpcClient::CreateVbrHaOutcomeCallable VpcClient::createVbrHaCallable(const CreateVbrHaRequest &request) const
  2299. {
  2300. auto task = std::make_shared<std::packaged_task<CreateVbrHaOutcome()>>(
  2301. [this, request]()
  2302. {
  2303. return this->createVbrHa(request);
  2304. });
  2305. asyncExecute(new Runnable([task]() { (*task)(); }));
  2306. return task->get_future();
  2307. }
  2308. VpcClient::CreateVcoRouteEntryOutcome VpcClient::createVcoRouteEntry(const CreateVcoRouteEntryRequest &request) const
  2309. {
  2310. auto endpointOutcome = endpointProvider_->getEndpoint();
  2311. if (!endpointOutcome.isSuccess())
  2312. return CreateVcoRouteEntryOutcome(endpointOutcome.error());
  2313. auto outcome = makeRequest(endpointOutcome.result(), request);
  2314. if (outcome.isSuccess())
  2315. return CreateVcoRouteEntryOutcome(CreateVcoRouteEntryResult(outcome.result()));
  2316. else
  2317. return CreateVcoRouteEntryOutcome(outcome.error());
  2318. }
  2319. void VpcClient::createVcoRouteEntryAsync(const CreateVcoRouteEntryRequest& request, const CreateVcoRouteEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2320. {
  2321. auto fn = [this, request, handler, context]()
  2322. {
  2323. handler(this, request, createVcoRouteEntry(request), context);
  2324. };
  2325. asyncExecute(new Runnable(fn));
  2326. }
  2327. VpcClient::CreateVcoRouteEntryOutcomeCallable VpcClient::createVcoRouteEntryCallable(const CreateVcoRouteEntryRequest &request) const
  2328. {
  2329. auto task = std::make_shared<std::packaged_task<CreateVcoRouteEntryOutcome()>>(
  2330. [this, request]()
  2331. {
  2332. return this->createVcoRouteEntry(request);
  2333. });
  2334. asyncExecute(new Runnable([task]() { (*task)(); }));
  2335. return task->get_future();
  2336. }
  2337. VpcClient::CreateVirtualBorderRouterOutcome VpcClient::createVirtualBorderRouter(const CreateVirtualBorderRouterRequest &request) const
  2338. {
  2339. auto endpointOutcome = endpointProvider_->getEndpoint();
  2340. if (!endpointOutcome.isSuccess())
  2341. return CreateVirtualBorderRouterOutcome(endpointOutcome.error());
  2342. auto outcome = makeRequest(endpointOutcome.result(), request);
  2343. if (outcome.isSuccess())
  2344. return CreateVirtualBorderRouterOutcome(CreateVirtualBorderRouterResult(outcome.result()));
  2345. else
  2346. return CreateVirtualBorderRouterOutcome(outcome.error());
  2347. }
  2348. void VpcClient::createVirtualBorderRouterAsync(const CreateVirtualBorderRouterRequest& request, const CreateVirtualBorderRouterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2349. {
  2350. auto fn = [this, request, handler, context]()
  2351. {
  2352. handler(this, request, createVirtualBorderRouter(request), context);
  2353. };
  2354. asyncExecute(new Runnable(fn));
  2355. }
  2356. VpcClient::CreateVirtualBorderRouterOutcomeCallable VpcClient::createVirtualBorderRouterCallable(const CreateVirtualBorderRouterRequest &request) const
  2357. {
  2358. auto task = std::make_shared<std::packaged_task<CreateVirtualBorderRouterOutcome()>>(
  2359. [this, request]()
  2360. {
  2361. return this->createVirtualBorderRouter(request);
  2362. });
  2363. asyncExecute(new Runnable([task]() { (*task)(); }));
  2364. return task->get_future();
  2365. }
  2366. VpcClient::CreateVirtualPhysicalConnectionOutcome VpcClient::createVirtualPhysicalConnection(const CreateVirtualPhysicalConnectionRequest &request) const
  2367. {
  2368. auto endpointOutcome = endpointProvider_->getEndpoint();
  2369. if (!endpointOutcome.isSuccess())
  2370. return CreateVirtualPhysicalConnectionOutcome(endpointOutcome.error());
  2371. auto outcome = makeRequest(endpointOutcome.result(), request);
  2372. if (outcome.isSuccess())
  2373. return CreateVirtualPhysicalConnectionOutcome(CreateVirtualPhysicalConnectionResult(outcome.result()));
  2374. else
  2375. return CreateVirtualPhysicalConnectionOutcome(outcome.error());
  2376. }
  2377. void VpcClient::createVirtualPhysicalConnectionAsync(const CreateVirtualPhysicalConnectionRequest& request, const CreateVirtualPhysicalConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2378. {
  2379. auto fn = [this, request, handler, context]()
  2380. {
  2381. handler(this, request, createVirtualPhysicalConnection(request), context);
  2382. };
  2383. asyncExecute(new Runnable(fn));
  2384. }
  2385. VpcClient::CreateVirtualPhysicalConnectionOutcomeCallable VpcClient::createVirtualPhysicalConnectionCallable(const CreateVirtualPhysicalConnectionRequest &request) const
  2386. {
  2387. auto task = std::make_shared<std::packaged_task<CreateVirtualPhysicalConnectionOutcome()>>(
  2388. [this, request]()
  2389. {
  2390. return this->createVirtualPhysicalConnection(request);
  2391. });
  2392. asyncExecute(new Runnable([task]() { (*task)(); }));
  2393. return task->get_future();
  2394. }
  2395. VpcClient::CreateVpcOutcome VpcClient::createVpc(const CreateVpcRequest &request) const
  2396. {
  2397. auto endpointOutcome = endpointProvider_->getEndpoint();
  2398. if (!endpointOutcome.isSuccess())
  2399. return CreateVpcOutcome(endpointOutcome.error());
  2400. auto outcome = makeRequest(endpointOutcome.result(), request);
  2401. if (outcome.isSuccess())
  2402. return CreateVpcOutcome(CreateVpcResult(outcome.result()));
  2403. else
  2404. return CreateVpcOutcome(outcome.error());
  2405. }
  2406. void VpcClient::createVpcAsync(const CreateVpcRequest& request, const CreateVpcAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2407. {
  2408. auto fn = [this, request, handler, context]()
  2409. {
  2410. handler(this, request, createVpc(request), context);
  2411. };
  2412. asyncExecute(new Runnable(fn));
  2413. }
  2414. VpcClient::CreateVpcOutcomeCallable VpcClient::createVpcCallable(const CreateVpcRequest &request) const
  2415. {
  2416. auto task = std::make_shared<std::packaged_task<CreateVpcOutcome()>>(
  2417. [this, request]()
  2418. {
  2419. return this->createVpc(request);
  2420. });
  2421. asyncExecute(new Runnable([task]() { (*task)(); }));
  2422. return task->get_future();
  2423. }
  2424. VpcClient::CreateVpcGatewayEndpointOutcome VpcClient::createVpcGatewayEndpoint(const CreateVpcGatewayEndpointRequest &request) const
  2425. {
  2426. auto endpointOutcome = endpointProvider_->getEndpoint();
  2427. if (!endpointOutcome.isSuccess())
  2428. return CreateVpcGatewayEndpointOutcome(endpointOutcome.error());
  2429. auto outcome = makeRequest(endpointOutcome.result(), request);
  2430. if (outcome.isSuccess())
  2431. return CreateVpcGatewayEndpointOutcome(CreateVpcGatewayEndpointResult(outcome.result()));
  2432. else
  2433. return CreateVpcGatewayEndpointOutcome(outcome.error());
  2434. }
  2435. void VpcClient::createVpcGatewayEndpointAsync(const CreateVpcGatewayEndpointRequest& request, const CreateVpcGatewayEndpointAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2436. {
  2437. auto fn = [this, request, handler, context]()
  2438. {
  2439. handler(this, request, createVpcGatewayEndpoint(request), context);
  2440. };
  2441. asyncExecute(new Runnable(fn));
  2442. }
  2443. VpcClient::CreateVpcGatewayEndpointOutcomeCallable VpcClient::createVpcGatewayEndpointCallable(const CreateVpcGatewayEndpointRequest &request) const
  2444. {
  2445. auto task = std::make_shared<std::packaged_task<CreateVpcGatewayEndpointOutcome()>>(
  2446. [this, request]()
  2447. {
  2448. return this->createVpcGatewayEndpoint(request);
  2449. });
  2450. asyncExecute(new Runnable([task]() { (*task)(); }));
  2451. return task->get_future();
  2452. }
  2453. VpcClient::CreateVpcPrefixListOutcome VpcClient::createVpcPrefixList(const CreateVpcPrefixListRequest &request) const
  2454. {
  2455. auto endpointOutcome = endpointProvider_->getEndpoint();
  2456. if (!endpointOutcome.isSuccess())
  2457. return CreateVpcPrefixListOutcome(endpointOutcome.error());
  2458. auto outcome = makeRequest(endpointOutcome.result(), request);
  2459. if (outcome.isSuccess())
  2460. return CreateVpcPrefixListOutcome(CreateVpcPrefixListResult(outcome.result()));
  2461. else
  2462. return CreateVpcPrefixListOutcome(outcome.error());
  2463. }
  2464. void VpcClient::createVpcPrefixListAsync(const CreateVpcPrefixListRequest& request, const CreateVpcPrefixListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2465. {
  2466. auto fn = [this, request, handler, context]()
  2467. {
  2468. handler(this, request, createVpcPrefixList(request), context);
  2469. };
  2470. asyncExecute(new Runnable(fn));
  2471. }
  2472. VpcClient::CreateVpcPrefixListOutcomeCallable VpcClient::createVpcPrefixListCallable(const CreateVpcPrefixListRequest &request) const
  2473. {
  2474. auto task = std::make_shared<std::packaged_task<CreateVpcPrefixListOutcome()>>(
  2475. [this, request]()
  2476. {
  2477. return this->createVpcPrefixList(request);
  2478. });
  2479. asyncExecute(new Runnable([task]() { (*task)(); }));
  2480. return task->get_future();
  2481. }
  2482. VpcClient::CreateVpconnFromVbrOutcome VpcClient::createVpconnFromVbr(const CreateVpconnFromVbrRequest &request) const
  2483. {
  2484. auto endpointOutcome = endpointProvider_->getEndpoint();
  2485. if (!endpointOutcome.isSuccess())
  2486. return CreateVpconnFromVbrOutcome(endpointOutcome.error());
  2487. auto outcome = makeRequest(endpointOutcome.result(), request);
  2488. if (outcome.isSuccess())
  2489. return CreateVpconnFromVbrOutcome(CreateVpconnFromVbrResult(outcome.result()));
  2490. else
  2491. return CreateVpconnFromVbrOutcome(outcome.error());
  2492. }
  2493. void VpcClient::createVpconnFromVbrAsync(const CreateVpconnFromVbrRequest& request, const CreateVpconnFromVbrAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2494. {
  2495. auto fn = [this, request, handler, context]()
  2496. {
  2497. handler(this, request, createVpconnFromVbr(request), context);
  2498. };
  2499. asyncExecute(new Runnable(fn));
  2500. }
  2501. VpcClient::CreateVpconnFromVbrOutcomeCallable VpcClient::createVpconnFromVbrCallable(const CreateVpconnFromVbrRequest &request) const
  2502. {
  2503. auto task = std::make_shared<std::packaged_task<CreateVpconnFromVbrOutcome()>>(
  2504. [this, request]()
  2505. {
  2506. return this->createVpconnFromVbr(request);
  2507. });
  2508. asyncExecute(new Runnable([task]() { (*task)(); }));
  2509. return task->get_future();
  2510. }
  2511. VpcClient::CreateVpnAttachmentOutcome VpcClient::createVpnAttachment(const CreateVpnAttachmentRequest &request) const
  2512. {
  2513. auto endpointOutcome = endpointProvider_->getEndpoint();
  2514. if (!endpointOutcome.isSuccess())
  2515. return CreateVpnAttachmentOutcome(endpointOutcome.error());
  2516. auto outcome = makeRequest(endpointOutcome.result(), request);
  2517. if (outcome.isSuccess())
  2518. return CreateVpnAttachmentOutcome(CreateVpnAttachmentResult(outcome.result()));
  2519. else
  2520. return CreateVpnAttachmentOutcome(outcome.error());
  2521. }
  2522. void VpcClient::createVpnAttachmentAsync(const CreateVpnAttachmentRequest& request, const CreateVpnAttachmentAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2523. {
  2524. auto fn = [this, request, handler, context]()
  2525. {
  2526. handler(this, request, createVpnAttachment(request), context);
  2527. };
  2528. asyncExecute(new Runnable(fn));
  2529. }
  2530. VpcClient::CreateVpnAttachmentOutcomeCallable VpcClient::createVpnAttachmentCallable(const CreateVpnAttachmentRequest &request) const
  2531. {
  2532. auto task = std::make_shared<std::packaged_task<CreateVpnAttachmentOutcome()>>(
  2533. [this, request]()
  2534. {
  2535. return this->createVpnAttachment(request);
  2536. });
  2537. asyncExecute(new Runnable([task]() { (*task)(); }));
  2538. return task->get_future();
  2539. }
  2540. VpcClient::CreateVpnConnectionOutcome VpcClient::createVpnConnection(const CreateVpnConnectionRequest &request) const
  2541. {
  2542. auto endpointOutcome = endpointProvider_->getEndpoint();
  2543. if (!endpointOutcome.isSuccess())
  2544. return CreateVpnConnectionOutcome(endpointOutcome.error());
  2545. auto outcome = makeRequest(endpointOutcome.result(), request);
  2546. if (outcome.isSuccess())
  2547. return CreateVpnConnectionOutcome(CreateVpnConnectionResult(outcome.result()));
  2548. else
  2549. return CreateVpnConnectionOutcome(outcome.error());
  2550. }
  2551. void VpcClient::createVpnConnectionAsync(const CreateVpnConnectionRequest& request, const CreateVpnConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2552. {
  2553. auto fn = [this, request, handler, context]()
  2554. {
  2555. handler(this, request, createVpnConnection(request), context);
  2556. };
  2557. asyncExecute(new Runnable(fn));
  2558. }
  2559. VpcClient::CreateVpnConnectionOutcomeCallable VpcClient::createVpnConnectionCallable(const CreateVpnConnectionRequest &request) const
  2560. {
  2561. auto task = std::make_shared<std::packaged_task<CreateVpnConnectionOutcome()>>(
  2562. [this, request]()
  2563. {
  2564. return this->createVpnConnection(request);
  2565. });
  2566. asyncExecute(new Runnable([task]() { (*task)(); }));
  2567. return task->get_future();
  2568. }
  2569. VpcClient::CreateVpnGatewayOutcome VpcClient::createVpnGateway(const CreateVpnGatewayRequest &request) const
  2570. {
  2571. auto endpointOutcome = endpointProvider_->getEndpoint();
  2572. if (!endpointOutcome.isSuccess())
  2573. return CreateVpnGatewayOutcome(endpointOutcome.error());
  2574. auto outcome = makeRequest(endpointOutcome.result(), request);
  2575. if (outcome.isSuccess())
  2576. return CreateVpnGatewayOutcome(CreateVpnGatewayResult(outcome.result()));
  2577. else
  2578. return CreateVpnGatewayOutcome(outcome.error());
  2579. }
  2580. void VpcClient::createVpnGatewayAsync(const CreateVpnGatewayRequest& request, const CreateVpnGatewayAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2581. {
  2582. auto fn = [this, request, handler, context]()
  2583. {
  2584. handler(this, request, createVpnGateway(request), context);
  2585. };
  2586. asyncExecute(new Runnable(fn));
  2587. }
  2588. VpcClient::CreateVpnGatewayOutcomeCallable VpcClient::createVpnGatewayCallable(const CreateVpnGatewayRequest &request) const
  2589. {
  2590. auto task = std::make_shared<std::packaged_task<CreateVpnGatewayOutcome()>>(
  2591. [this, request]()
  2592. {
  2593. return this->createVpnGateway(request);
  2594. });
  2595. asyncExecute(new Runnable([task]() { (*task)(); }));
  2596. return task->get_future();
  2597. }
  2598. VpcClient::CreateVpnPbrRouteEntryOutcome VpcClient::createVpnPbrRouteEntry(const CreateVpnPbrRouteEntryRequest &request) const
  2599. {
  2600. auto endpointOutcome = endpointProvider_->getEndpoint();
  2601. if (!endpointOutcome.isSuccess())
  2602. return CreateVpnPbrRouteEntryOutcome(endpointOutcome.error());
  2603. auto outcome = makeRequest(endpointOutcome.result(), request);
  2604. if (outcome.isSuccess())
  2605. return CreateVpnPbrRouteEntryOutcome(CreateVpnPbrRouteEntryResult(outcome.result()));
  2606. else
  2607. return CreateVpnPbrRouteEntryOutcome(outcome.error());
  2608. }
  2609. void VpcClient::createVpnPbrRouteEntryAsync(const CreateVpnPbrRouteEntryRequest& request, const CreateVpnPbrRouteEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2610. {
  2611. auto fn = [this, request, handler, context]()
  2612. {
  2613. handler(this, request, createVpnPbrRouteEntry(request), context);
  2614. };
  2615. asyncExecute(new Runnable(fn));
  2616. }
  2617. VpcClient::CreateVpnPbrRouteEntryOutcomeCallable VpcClient::createVpnPbrRouteEntryCallable(const CreateVpnPbrRouteEntryRequest &request) const
  2618. {
  2619. auto task = std::make_shared<std::packaged_task<CreateVpnPbrRouteEntryOutcome()>>(
  2620. [this, request]()
  2621. {
  2622. return this->createVpnPbrRouteEntry(request);
  2623. });
  2624. asyncExecute(new Runnable([task]() { (*task)(); }));
  2625. return task->get_future();
  2626. }
  2627. VpcClient::CreateVpnRouteEntryOutcome VpcClient::createVpnRouteEntry(const CreateVpnRouteEntryRequest &request) const
  2628. {
  2629. auto endpointOutcome = endpointProvider_->getEndpoint();
  2630. if (!endpointOutcome.isSuccess())
  2631. return CreateVpnRouteEntryOutcome(endpointOutcome.error());
  2632. auto outcome = makeRequest(endpointOutcome.result(), request);
  2633. if (outcome.isSuccess())
  2634. return CreateVpnRouteEntryOutcome(CreateVpnRouteEntryResult(outcome.result()));
  2635. else
  2636. return CreateVpnRouteEntryOutcome(outcome.error());
  2637. }
  2638. void VpcClient::createVpnRouteEntryAsync(const CreateVpnRouteEntryRequest& request, const CreateVpnRouteEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2639. {
  2640. auto fn = [this, request, handler, context]()
  2641. {
  2642. handler(this, request, createVpnRouteEntry(request), context);
  2643. };
  2644. asyncExecute(new Runnable(fn));
  2645. }
  2646. VpcClient::CreateVpnRouteEntryOutcomeCallable VpcClient::createVpnRouteEntryCallable(const CreateVpnRouteEntryRequest &request) const
  2647. {
  2648. auto task = std::make_shared<std::packaged_task<CreateVpnRouteEntryOutcome()>>(
  2649. [this, request]()
  2650. {
  2651. return this->createVpnRouteEntry(request);
  2652. });
  2653. asyncExecute(new Runnable([task]() { (*task)(); }));
  2654. return task->get_future();
  2655. }
  2656. VpcClient::DeactivateRouterInterfaceOutcome VpcClient::deactivateRouterInterface(const DeactivateRouterInterfaceRequest &request) const
  2657. {
  2658. auto endpointOutcome = endpointProvider_->getEndpoint();
  2659. if (!endpointOutcome.isSuccess())
  2660. return DeactivateRouterInterfaceOutcome(endpointOutcome.error());
  2661. auto outcome = makeRequest(endpointOutcome.result(), request);
  2662. if (outcome.isSuccess())
  2663. return DeactivateRouterInterfaceOutcome(DeactivateRouterInterfaceResult(outcome.result()));
  2664. else
  2665. return DeactivateRouterInterfaceOutcome(outcome.error());
  2666. }
  2667. void VpcClient::deactivateRouterInterfaceAsync(const DeactivateRouterInterfaceRequest& request, const DeactivateRouterInterfaceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2668. {
  2669. auto fn = [this, request, handler, context]()
  2670. {
  2671. handler(this, request, deactivateRouterInterface(request), context);
  2672. };
  2673. asyncExecute(new Runnable(fn));
  2674. }
  2675. VpcClient::DeactivateRouterInterfaceOutcomeCallable VpcClient::deactivateRouterInterfaceCallable(const DeactivateRouterInterfaceRequest &request) const
  2676. {
  2677. auto task = std::make_shared<std::packaged_task<DeactivateRouterInterfaceOutcome()>>(
  2678. [this, request]()
  2679. {
  2680. return this->deactivateRouterInterface(request);
  2681. });
  2682. asyncExecute(new Runnable([task]() { (*task)(); }));
  2683. return task->get_future();
  2684. }
  2685. VpcClient::DeactiveFlowLogOutcome VpcClient::deactiveFlowLog(const DeactiveFlowLogRequest &request) const
  2686. {
  2687. auto endpointOutcome = endpointProvider_->getEndpoint();
  2688. if (!endpointOutcome.isSuccess())
  2689. return DeactiveFlowLogOutcome(endpointOutcome.error());
  2690. auto outcome = makeRequest(endpointOutcome.result(), request);
  2691. if (outcome.isSuccess())
  2692. return DeactiveFlowLogOutcome(DeactiveFlowLogResult(outcome.result()));
  2693. else
  2694. return DeactiveFlowLogOutcome(outcome.error());
  2695. }
  2696. void VpcClient::deactiveFlowLogAsync(const DeactiveFlowLogRequest& request, const DeactiveFlowLogAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2697. {
  2698. auto fn = [this, request, handler, context]()
  2699. {
  2700. handler(this, request, deactiveFlowLog(request), context);
  2701. };
  2702. asyncExecute(new Runnable(fn));
  2703. }
  2704. VpcClient::DeactiveFlowLogOutcomeCallable VpcClient::deactiveFlowLogCallable(const DeactiveFlowLogRequest &request) const
  2705. {
  2706. auto task = std::make_shared<std::packaged_task<DeactiveFlowLogOutcome()>>(
  2707. [this, request]()
  2708. {
  2709. return this->deactiveFlowLog(request);
  2710. });
  2711. asyncExecute(new Runnable([task]() { (*task)(); }));
  2712. return task->get_future();
  2713. }
  2714. VpcClient::DeleteBgpGroupOutcome VpcClient::deleteBgpGroup(const DeleteBgpGroupRequest &request) const
  2715. {
  2716. auto endpointOutcome = endpointProvider_->getEndpoint();
  2717. if (!endpointOutcome.isSuccess())
  2718. return DeleteBgpGroupOutcome(endpointOutcome.error());
  2719. auto outcome = makeRequest(endpointOutcome.result(), request);
  2720. if (outcome.isSuccess())
  2721. return DeleteBgpGroupOutcome(DeleteBgpGroupResult(outcome.result()));
  2722. else
  2723. return DeleteBgpGroupOutcome(outcome.error());
  2724. }
  2725. void VpcClient::deleteBgpGroupAsync(const DeleteBgpGroupRequest& request, const DeleteBgpGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2726. {
  2727. auto fn = [this, request, handler, context]()
  2728. {
  2729. handler(this, request, deleteBgpGroup(request), context);
  2730. };
  2731. asyncExecute(new Runnable(fn));
  2732. }
  2733. VpcClient::DeleteBgpGroupOutcomeCallable VpcClient::deleteBgpGroupCallable(const DeleteBgpGroupRequest &request) const
  2734. {
  2735. auto task = std::make_shared<std::packaged_task<DeleteBgpGroupOutcome()>>(
  2736. [this, request]()
  2737. {
  2738. return this->deleteBgpGroup(request);
  2739. });
  2740. asyncExecute(new Runnable([task]() { (*task)(); }));
  2741. return task->get_future();
  2742. }
  2743. VpcClient::DeleteBgpNetworkOutcome VpcClient::deleteBgpNetwork(const DeleteBgpNetworkRequest &request) const
  2744. {
  2745. auto endpointOutcome = endpointProvider_->getEndpoint();
  2746. if (!endpointOutcome.isSuccess())
  2747. return DeleteBgpNetworkOutcome(endpointOutcome.error());
  2748. auto outcome = makeRequest(endpointOutcome.result(), request);
  2749. if (outcome.isSuccess())
  2750. return DeleteBgpNetworkOutcome(DeleteBgpNetworkResult(outcome.result()));
  2751. else
  2752. return DeleteBgpNetworkOutcome(outcome.error());
  2753. }
  2754. void VpcClient::deleteBgpNetworkAsync(const DeleteBgpNetworkRequest& request, const DeleteBgpNetworkAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2755. {
  2756. auto fn = [this, request, handler, context]()
  2757. {
  2758. handler(this, request, deleteBgpNetwork(request), context);
  2759. };
  2760. asyncExecute(new Runnable(fn));
  2761. }
  2762. VpcClient::DeleteBgpNetworkOutcomeCallable VpcClient::deleteBgpNetworkCallable(const DeleteBgpNetworkRequest &request) const
  2763. {
  2764. auto task = std::make_shared<std::packaged_task<DeleteBgpNetworkOutcome()>>(
  2765. [this, request]()
  2766. {
  2767. return this->deleteBgpNetwork(request);
  2768. });
  2769. asyncExecute(new Runnable([task]() { (*task)(); }));
  2770. return task->get_future();
  2771. }
  2772. VpcClient::DeleteBgpPeerOutcome VpcClient::deleteBgpPeer(const DeleteBgpPeerRequest &request) const
  2773. {
  2774. auto endpointOutcome = endpointProvider_->getEndpoint();
  2775. if (!endpointOutcome.isSuccess())
  2776. return DeleteBgpPeerOutcome(endpointOutcome.error());
  2777. auto outcome = makeRequest(endpointOutcome.result(), request);
  2778. if (outcome.isSuccess())
  2779. return DeleteBgpPeerOutcome(DeleteBgpPeerResult(outcome.result()));
  2780. else
  2781. return DeleteBgpPeerOutcome(outcome.error());
  2782. }
  2783. void VpcClient::deleteBgpPeerAsync(const DeleteBgpPeerRequest& request, const DeleteBgpPeerAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2784. {
  2785. auto fn = [this, request, handler, context]()
  2786. {
  2787. handler(this, request, deleteBgpPeer(request), context);
  2788. };
  2789. asyncExecute(new Runnable(fn));
  2790. }
  2791. VpcClient::DeleteBgpPeerOutcomeCallable VpcClient::deleteBgpPeerCallable(const DeleteBgpPeerRequest &request) const
  2792. {
  2793. auto task = std::make_shared<std::packaged_task<DeleteBgpPeerOutcome()>>(
  2794. [this, request]()
  2795. {
  2796. return this->deleteBgpPeer(request);
  2797. });
  2798. asyncExecute(new Runnable([task]() { (*task)(); }));
  2799. return task->get_future();
  2800. }
  2801. VpcClient::DeleteCommonBandwidthPackageOutcome VpcClient::deleteCommonBandwidthPackage(const DeleteCommonBandwidthPackageRequest &request) const
  2802. {
  2803. auto endpointOutcome = endpointProvider_->getEndpoint();
  2804. if (!endpointOutcome.isSuccess())
  2805. return DeleteCommonBandwidthPackageOutcome(endpointOutcome.error());
  2806. auto outcome = makeRequest(endpointOutcome.result(), request);
  2807. if (outcome.isSuccess())
  2808. return DeleteCommonBandwidthPackageOutcome(DeleteCommonBandwidthPackageResult(outcome.result()));
  2809. else
  2810. return DeleteCommonBandwidthPackageOutcome(outcome.error());
  2811. }
  2812. void VpcClient::deleteCommonBandwidthPackageAsync(const DeleteCommonBandwidthPackageRequest& request, const DeleteCommonBandwidthPackageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2813. {
  2814. auto fn = [this, request, handler, context]()
  2815. {
  2816. handler(this, request, deleteCommonBandwidthPackage(request), context);
  2817. };
  2818. asyncExecute(new Runnable(fn));
  2819. }
  2820. VpcClient::DeleteCommonBandwidthPackageOutcomeCallable VpcClient::deleteCommonBandwidthPackageCallable(const DeleteCommonBandwidthPackageRequest &request) const
  2821. {
  2822. auto task = std::make_shared<std::packaged_task<DeleteCommonBandwidthPackageOutcome()>>(
  2823. [this, request]()
  2824. {
  2825. return this->deleteCommonBandwidthPackage(request);
  2826. });
  2827. asyncExecute(new Runnable([task]() { (*task)(); }));
  2828. return task->get_future();
  2829. }
  2830. VpcClient::DeleteCustomerGatewayOutcome VpcClient::deleteCustomerGateway(const DeleteCustomerGatewayRequest &request) const
  2831. {
  2832. auto endpointOutcome = endpointProvider_->getEndpoint();
  2833. if (!endpointOutcome.isSuccess())
  2834. return DeleteCustomerGatewayOutcome(endpointOutcome.error());
  2835. auto outcome = makeRequest(endpointOutcome.result(), request);
  2836. if (outcome.isSuccess())
  2837. return DeleteCustomerGatewayOutcome(DeleteCustomerGatewayResult(outcome.result()));
  2838. else
  2839. return DeleteCustomerGatewayOutcome(outcome.error());
  2840. }
  2841. void VpcClient::deleteCustomerGatewayAsync(const DeleteCustomerGatewayRequest& request, const DeleteCustomerGatewayAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2842. {
  2843. auto fn = [this, request, handler, context]()
  2844. {
  2845. handler(this, request, deleteCustomerGateway(request), context);
  2846. };
  2847. asyncExecute(new Runnable(fn));
  2848. }
  2849. VpcClient::DeleteCustomerGatewayOutcomeCallable VpcClient::deleteCustomerGatewayCallable(const DeleteCustomerGatewayRequest &request) const
  2850. {
  2851. auto task = std::make_shared<std::packaged_task<DeleteCustomerGatewayOutcome()>>(
  2852. [this, request]()
  2853. {
  2854. return this->deleteCustomerGateway(request);
  2855. });
  2856. asyncExecute(new Runnable([task]() { (*task)(); }));
  2857. return task->get_future();
  2858. }
  2859. VpcClient::DeleteDhcpOptionsSetOutcome VpcClient::deleteDhcpOptionsSet(const DeleteDhcpOptionsSetRequest &request) const
  2860. {
  2861. auto endpointOutcome = endpointProvider_->getEndpoint();
  2862. if (!endpointOutcome.isSuccess())
  2863. return DeleteDhcpOptionsSetOutcome(endpointOutcome.error());
  2864. auto outcome = makeRequest(endpointOutcome.result(), request);
  2865. if (outcome.isSuccess())
  2866. return DeleteDhcpOptionsSetOutcome(DeleteDhcpOptionsSetResult(outcome.result()));
  2867. else
  2868. return DeleteDhcpOptionsSetOutcome(outcome.error());
  2869. }
  2870. void VpcClient::deleteDhcpOptionsSetAsync(const DeleteDhcpOptionsSetRequest& request, const DeleteDhcpOptionsSetAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2871. {
  2872. auto fn = [this, request, handler, context]()
  2873. {
  2874. handler(this, request, deleteDhcpOptionsSet(request), context);
  2875. };
  2876. asyncExecute(new Runnable(fn));
  2877. }
  2878. VpcClient::DeleteDhcpOptionsSetOutcomeCallable VpcClient::deleteDhcpOptionsSetCallable(const DeleteDhcpOptionsSetRequest &request) const
  2879. {
  2880. auto task = std::make_shared<std::packaged_task<DeleteDhcpOptionsSetOutcome()>>(
  2881. [this, request]()
  2882. {
  2883. return this->deleteDhcpOptionsSet(request);
  2884. });
  2885. asyncExecute(new Runnable([task]() { (*task)(); }));
  2886. return task->get_future();
  2887. }
  2888. VpcClient::DeleteFlowLogOutcome VpcClient::deleteFlowLog(const DeleteFlowLogRequest &request) const
  2889. {
  2890. auto endpointOutcome = endpointProvider_->getEndpoint();
  2891. if (!endpointOutcome.isSuccess())
  2892. return DeleteFlowLogOutcome(endpointOutcome.error());
  2893. auto outcome = makeRequest(endpointOutcome.result(), request);
  2894. if (outcome.isSuccess())
  2895. return DeleteFlowLogOutcome(DeleteFlowLogResult(outcome.result()));
  2896. else
  2897. return DeleteFlowLogOutcome(outcome.error());
  2898. }
  2899. void VpcClient::deleteFlowLogAsync(const DeleteFlowLogRequest& request, const DeleteFlowLogAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2900. {
  2901. auto fn = [this, request, handler, context]()
  2902. {
  2903. handler(this, request, deleteFlowLog(request), context);
  2904. };
  2905. asyncExecute(new Runnable(fn));
  2906. }
  2907. VpcClient::DeleteFlowLogOutcomeCallable VpcClient::deleteFlowLogCallable(const DeleteFlowLogRequest &request) const
  2908. {
  2909. auto task = std::make_shared<std::packaged_task<DeleteFlowLogOutcome()>>(
  2910. [this, request]()
  2911. {
  2912. return this->deleteFlowLog(request);
  2913. });
  2914. asyncExecute(new Runnable([task]() { (*task)(); }));
  2915. return task->get_future();
  2916. }
  2917. VpcClient::DeleteForwardEntryOutcome VpcClient::deleteForwardEntry(const DeleteForwardEntryRequest &request) const
  2918. {
  2919. auto endpointOutcome = endpointProvider_->getEndpoint();
  2920. if (!endpointOutcome.isSuccess())
  2921. return DeleteForwardEntryOutcome(endpointOutcome.error());
  2922. auto outcome = makeRequest(endpointOutcome.result(), request);
  2923. if (outcome.isSuccess())
  2924. return DeleteForwardEntryOutcome(DeleteForwardEntryResult(outcome.result()));
  2925. else
  2926. return DeleteForwardEntryOutcome(outcome.error());
  2927. }
  2928. void VpcClient::deleteForwardEntryAsync(const DeleteForwardEntryRequest& request, const DeleteForwardEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2929. {
  2930. auto fn = [this, request, handler, context]()
  2931. {
  2932. handler(this, request, deleteForwardEntry(request), context);
  2933. };
  2934. asyncExecute(new Runnable(fn));
  2935. }
  2936. VpcClient::DeleteForwardEntryOutcomeCallable VpcClient::deleteForwardEntryCallable(const DeleteForwardEntryRequest &request) const
  2937. {
  2938. auto task = std::make_shared<std::packaged_task<DeleteForwardEntryOutcome()>>(
  2939. [this, request]()
  2940. {
  2941. return this->deleteForwardEntry(request);
  2942. });
  2943. asyncExecute(new Runnable([task]() { (*task)(); }));
  2944. return task->get_future();
  2945. }
  2946. VpcClient::DeleteFullNatEntryOutcome VpcClient::deleteFullNatEntry(const DeleteFullNatEntryRequest &request) const
  2947. {
  2948. auto endpointOutcome = endpointProvider_->getEndpoint();
  2949. if (!endpointOutcome.isSuccess())
  2950. return DeleteFullNatEntryOutcome(endpointOutcome.error());
  2951. auto outcome = makeRequest(endpointOutcome.result(), request);
  2952. if (outcome.isSuccess())
  2953. return DeleteFullNatEntryOutcome(DeleteFullNatEntryResult(outcome.result()));
  2954. else
  2955. return DeleteFullNatEntryOutcome(outcome.error());
  2956. }
  2957. void VpcClient::deleteFullNatEntryAsync(const DeleteFullNatEntryRequest& request, const DeleteFullNatEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2958. {
  2959. auto fn = [this, request, handler, context]()
  2960. {
  2961. handler(this, request, deleteFullNatEntry(request), context);
  2962. };
  2963. asyncExecute(new Runnable(fn));
  2964. }
  2965. VpcClient::DeleteFullNatEntryOutcomeCallable VpcClient::deleteFullNatEntryCallable(const DeleteFullNatEntryRequest &request) const
  2966. {
  2967. auto task = std::make_shared<std::packaged_task<DeleteFullNatEntryOutcome()>>(
  2968. [this, request]()
  2969. {
  2970. return this->deleteFullNatEntry(request);
  2971. });
  2972. asyncExecute(new Runnable([task]() { (*task)(); }));
  2973. return task->get_future();
  2974. }
  2975. VpcClient::DeleteGlobalAccelerationInstanceOutcome VpcClient::deleteGlobalAccelerationInstance(const DeleteGlobalAccelerationInstanceRequest &request) const
  2976. {
  2977. auto endpointOutcome = endpointProvider_->getEndpoint();
  2978. if (!endpointOutcome.isSuccess())
  2979. return DeleteGlobalAccelerationInstanceOutcome(endpointOutcome.error());
  2980. auto outcome = makeRequest(endpointOutcome.result(), request);
  2981. if (outcome.isSuccess())
  2982. return DeleteGlobalAccelerationInstanceOutcome(DeleteGlobalAccelerationInstanceResult(outcome.result()));
  2983. else
  2984. return DeleteGlobalAccelerationInstanceOutcome(outcome.error());
  2985. }
  2986. void VpcClient::deleteGlobalAccelerationInstanceAsync(const DeleteGlobalAccelerationInstanceRequest& request, const DeleteGlobalAccelerationInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  2987. {
  2988. auto fn = [this, request, handler, context]()
  2989. {
  2990. handler(this, request, deleteGlobalAccelerationInstance(request), context);
  2991. };
  2992. asyncExecute(new Runnable(fn));
  2993. }
  2994. VpcClient::DeleteGlobalAccelerationInstanceOutcomeCallable VpcClient::deleteGlobalAccelerationInstanceCallable(const DeleteGlobalAccelerationInstanceRequest &request) const
  2995. {
  2996. auto task = std::make_shared<std::packaged_task<DeleteGlobalAccelerationInstanceOutcome()>>(
  2997. [this, request]()
  2998. {
  2999. return this->deleteGlobalAccelerationInstance(request);
  3000. });
  3001. asyncExecute(new Runnable([task]() { (*task)(); }));
  3002. return task->get_future();
  3003. }
  3004. VpcClient::DeleteHaVipOutcome VpcClient::deleteHaVip(const DeleteHaVipRequest &request) const
  3005. {
  3006. auto endpointOutcome = endpointProvider_->getEndpoint();
  3007. if (!endpointOutcome.isSuccess())
  3008. return DeleteHaVipOutcome(endpointOutcome.error());
  3009. auto outcome = makeRequest(endpointOutcome.result(), request);
  3010. if (outcome.isSuccess())
  3011. return DeleteHaVipOutcome(DeleteHaVipResult(outcome.result()));
  3012. else
  3013. return DeleteHaVipOutcome(outcome.error());
  3014. }
  3015. void VpcClient::deleteHaVipAsync(const DeleteHaVipRequest& request, const DeleteHaVipAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3016. {
  3017. auto fn = [this, request, handler, context]()
  3018. {
  3019. handler(this, request, deleteHaVip(request), context);
  3020. };
  3021. asyncExecute(new Runnable(fn));
  3022. }
  3023. VpcClient::DeleteHaVipOutcomeCallable VpcClient::deleteHaVipCallable(const DeleteHaVipRequest &request) const
  3024. {
  3025. auto task = std::make_shared<std::packaged_task<DeleteHaVipOutcome()>>(
  3026. [this, request]()
  3027. {
  3028. return this->deleteHaVip(request);
  3029. });
  3030. asyncExecute(new Runnable([task]() { (*task)(); }));
  3031. return task->get_future();
  3032. }
  3033. VpcClient::DeleteIPv6TranslatorOutcome VpcClient::deleteIPv6Translator(const DeleteIPv6TranslatorRequest &request) const
  3034. {
  3035. auto endpointOutcome = endpointProvider_->getEndpoint();
  3036. if (!endpointOutcome.isSuccess())
  3037. return DeleteIPv6TranslatorOutcome(endpointOutcome.error());
  3038. auto outcome = makeRequest(endpointOutcome.result(), request);
  3039. if (outcome.isSuccess())
  3040. return DeleteIPv6TranslatorOutcome(DeleteIPv6TranslatorResult(outcome.result()));
  3041. else
  3042. return DeleteIPv6TranslatorOutcome(outcome.error());
  3043. }
  3044. void VpcClient::deleteIPv6TranslatorAsync(const DeleteIPv6TranslatorRequest& request, const DeleteIPv6TranslatorAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3045. {
  3046. auto fn = [this, request, handler, context]()
  3047. {
  3048. handler(this, request, deleteIPv6Translator(request), context);
  3049. };
  3050. asyncExecute(new Runnable(fn));
  3051. }
  3052. VpcClient::DeleteIPv6TranslatorOutcomeCallable VpcClient::deleteIPv6TranslatorCallable(const DeleteIPv6TranslatorRequest &request) const
  3053. {
  3054. auto task = std::make_shared<std::packaged_task<DeleteIPv6TranslatorOutcome()>>(
  3055. [this, request]()
  3056. {
  3057. return this->deleteIPv6Translator(request);
  3058. });
  3059. asyncExecute(new Runnable([task]() { (*task)(); }));
  3060. return task->get_future();
  3061. }
  3062. VpcClient::DeleteIPv6TranslatorAclListOutcome VpcClient::deleteIPv6TranslatorAclList(const DeleteIPv6TranslatorAclListRequest &request) const
  3063. {
  3064. auto endpointOutcome = endpointProvider_->getEndpoint();
  3065. if (!endpointOutcome.isSuccess())
  3066. return DeleteIPv6TranslatorAclListOutcome(endpointOutcome.error());
  3067. auto outcome = makeRequest(endpointOutcome.result(), request);
  3068. if (outcome.isSuccess())
  3069. return DeleteIPv6TranslatorAclListOutcome(DeleteIPv6TranslatorAclListResult(outcome.result()));
  3070. else
  3071. return DeleteIPv6TranslatorAclListOutcome(outcome.error());
  3072. }
  3073. void VpcClient::deleteIPv6TranslatorAclListAsync(const DeleteIPv6TranslatorAclListRequest& request, const DeleteIPv6TranslatorAclListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3074. {
  3075. auto fn = [this, request, handler, context]()
  3076. {
  3077. handler(this, request, deleteIPv6TranslatorAclList(request), context);
  3078. };
  3079. asyncExecute(new Runnable(fn));
  3080. }
  3081. VpcClient::DeleteIPv6TranslatorAclListOutcomeCallable VpcClient::deleteIPv6TranslatorAclListCallable(const DeleteIPv6TranslatorAclListRequest &request) const
  3082. {
  3083. auto task = std::make_shared<std::packaged_task<DeleteIPv6TranslatorAclListOutcome()>>(
  3084. [this, request]()
  3085. {
  3086. return this->deleteIPv6TranslatorAclList(request);
  3087. });
  3088. asyncExecute(new Runnable([task]() { (*task)(); }));
  3089. return task->get_future();
  3090. }
  3091. VpcClient::DeleteIPv6TranslatorEntryOutcome VpcClient::deleteIPv6TranslatorEntry(const DeleteIPv6TranslatorEntryRequest &request) const
  3092. {
  3093. auto endpointOutcome = endpointProvider_->getEndpoint();
  3094. if (!endpointOutcome.isSuccess())
  3095. return DeleteIPv6TranslatorEntryOutcome(endpointOutcome.error());
  3096. auto outcome = makeRequest(endpointOutcome.result(), request);
  3097. if (outcome.isSuccess())
  3098. return DeleteIPv6TranslatorEntryOutcome(DeleteIPv6TranslatorEntryResult(outcome.result()));
  3099. else
  3100. return DeleteIPv6TranslatorEntryOutcome(outcome.error());
  3101. }
  3102. void VpcClient::deleteIPv6TranslatorEntryAsync(const DeleteIPv6TranslatorEntryRequest& request, const DeleteIPv6TranslatorEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3103. {
  3104. auto fn = [this, request, handler, context]()
  3105. {
  3106. handler(this, request, deleteIPv6TranslatorEntry(request), context);
  3107. };
  3108. asyncExecute(new Runnable(fn));
  3109. }
  3110. VpcClient::DeleteIPv6TranslatorEntryOutcomeCallable VpcClient::deleteIPv6TranslatorEntryCallable(const DeleteIPv6TranslatorEntryRequest &request) const
  3111. {
  3112. auto task = std::make_shared<std::packaged_task<DeleteIPv6TranslatorEntryOutcome()>>(
  3113. [this, request]()
  3114. {
  3115. return this->deleteIPv6TranslatorEntry(request);
  3116. });
  3117. asyncExecute(new Runnable([task]() { (*task)(); }));
  3118. return task->get_future();
  3119. }
  3120. VpcClient::DeleteIpsecServerOutcome VpcClient::deleteIpsecServer(const DeleteIpsecServerRequest &request) const
  3121. {
  3122. auto endpointOutcome = endpointProvider_->getEndpoint();
  3123. if (!endpointOutcome.isSuccess())
  3124. return DeleteIpsecServerOutcome(endpointOutcome.error());
  3125. auto outcome = makeRequest(endpointOutcome.result(), request);
  3126. if (outcome.isSuccess())
  3127. return DeleteIpsecServerOutcome(DeleteIpsecServerResult(outcome.result()));
  3128. else
  3129. return DeleteIpsecServerOutcome(outcome.error());
  3130. }
  3131. void VpcClient::deleteIpsecServerAsync(const DeleteIpsecServerRequest& request, const DeleteIpsecServerAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3132. {
  3133. auto fn = [this, request, handler, context]()
  3134. {
  3135. handler(this, request, deleteIpsecServer(request), context);
  3136. };
  3137. asyncExecute(new Runnable(fn));
  3138. }
  3139. VpcClient::DeleteIpsecServerOutcomeCallable VpcClient::deleteIpsecServerCallable(const DeleteIpsecServerRequest &request) const
  3140. {
  3141. auto task = std::make_shared<std::packaged_task<DeleteIpsecServerOutcome()>>(
  3142. [this, request]()
  3143. {
  3144. return this->deleteIpsecServer(request);
  3145. });
  3146. asyncExecute(new Runnable([task]() { (*task)(); }));
  3147. return task->get_future();
  3148. }
  3149. VpcClient::DeleteIpv4GatewayOutcome VpcClient::deleteIpv4Gateway(const DeleteIpv4GatewayRequest &request) const
  3150. {
  3151. auto endpointOutcome = endpointProvider_->getEndpoint();
  3152. if (!endpointOutcome.isSuccess())
  3153. return DeleteIpv4GatewayOutcome(endpointOutcome.error());
  3154. auto outcome = makeRequest(endpointOutcome.result(), request);
  3155. if (outcome.isSuccess())
  3156. return DeleteIpv4GatewayOutcome(DeleteIpv4GatewayResult(outcome.result()));
  3157. else
  3158. return DeleteIpv4GatewayOutcome(outcome.error());
  3159. }
  3160. void VpcClient::deleteIpv4GatewayAsync(const DeleteIpv4GatewayRequest& request, const DeleteIpv4GatewayAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3161. {
  3162. auto fn = [this, request, handler, context]()
  3163. {
  3164. handler(this, request, deleteIpv4Gateway(request), context);
  3165. };
  3166. asyncExecute(new Runnable(fn));
  3167. }
  3168. VpcClient::DeleteIpv4GatewayOutcomeCallable VpcClient::deleteIpv4GatewayCallable(const DeleteIpv4GatewayRequest &request) const
  3169. {
  3170. auto task = std::make_shared<std::packaged_task<DeleteIpv4GatewayOutcome()>>(
  3171. [this, request]()
  3172. {
  3173. return this->deleteIpv4Gateway(request);
  3174. });
  3175. asyncExecute(new Runnable([task]() { (*task)(); }));
  3176. return task->get_future();
  3177. }
  3178. VpcClient::DeleteIpv6EgressOnlyRuleOutcome VpcClient::deleteIpv6EgressOnlyRule(const DeleteIpv6EgressOnlyRuleRequest &request) const
  3179. {
  3180. auto endpointOutcome = endpointProvider_->getEndpoint();
  3181. if (!endpointOutcome.isSuccess())
  3182. return DeleteIpv6EgressOnlyRuleOutcome(endpointOutcome.error());
  3183. auto outcome = makeRequest(endpointOutcome.result(), request);
  3184. if (outcome.isSuccess())
  3185. return DeleteIpv6EgressOnlyRuleOutcome(DeleteIpv6EgressOnlyRuleResult(outcome.result()));
  3186. else
  3187. return DeleteIpv6EgressOnlyRuleOutcome(outcome.error());
  3188. }
  3189. void VpcClient::deleteIpv6EgressOnlyRuleAsync(const DeleteIpv6EgressOnlyRuleRequest& request, const DeleteIpv6EgressOnlyRuleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3190. {
  3191. auto fn = [this, request, handler, context]()
  3192. {
  3193. handler(this, request, deleteIpv6EgressOnlyRule(request), context);
  3194. };
  3195. asyncExecute(new Runnable(fn));
  3196. }
  3197. VpcClient::DeleteIpv6EgressOnlyRuleOutcomeCallable VpcClient::deleteIpv6EgressOnlyRuleCallable(const DeleteIpv6EgressOnlyRuleRequest &request) const
  3198. {
  3199. auto task = std::make_shared<std::packaged_task<DeleteIpv6EgressOnlyRuleOutcome()>>(
  3200. [this, request]()
  3201. {
  3202. return this->deleteIpv6EgressOnlyRule(request);
  3203. });
  3204. asyncExecute(new Runnable([task]() { (*task)(); }));
  3205. return task->get_future();
  3206. }
  3207. VpcClient::DeleteIpv6GatewayOutcome VpcClient::deleteIpv6Gateway(const DeleteIpv6GatewayRequest &request) const
  3208. {
  3209. auto endpointOutcome = endpointProvider_->getEndpoint();
  3210. if (!endpointOutcome.isSuccess())
  3211. return DeleteIpv6GatewayOutcome(endpointOutcome.error());
  3212. auto outcome = makeRequest(endpointOutcome.result(), request);
  3213. if (outcome.isSuccess())
  3214. return DeleteIpv6GatewayOutcome(DeleteIpv6GatewayResult(outcome.result()));
  3215. else
  3216. return DeleteIpv6GatewayOutcome(outcome.error());
  3217. }
  3218. void VpcClient::deleteIpv6GatewayAsync(const DeleteIpv6GatewayRequest& request, const DeleteIpv6GatewayAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3219. {
  3220. auto fn = [this, request, handler, context]()
  3221. {
  3222. handler(this, request, deleteIpv6Gateway(request), context);
  3223. };
  3224. asyncExecute(new Runnable(fn));
  3225. }
  3226. VpcClient::DeleteIpv6GatewayOutcomeCallable VpcClient::deleteIpv6GatewayCallable(const DeleteIpv6GatewayRequest &request) const
  3227. {
  3228. auto task = std::make_shared<std::packaged_task<DeleteIpv6GatewayOutcome()>>(
  3229. [this, request]()
  3230. {
  3231. return this->deleteIpv6Gateway(request);
  3232. });
  3233. asyncExecute(new Runnable([task]() { (*task)(); }));
  3234. return task->get_future();
  3235. }
  3236. VpcClient::DeleteIpv6InternetBandwidthOutcome VpcClient::deleteIpv6InternetBandwidth(const DeleteIpv6InternetBandwidthRequest &request) const
  3237. {
  3238. auto endpointOutcome = endpointProvider_->getEndpoint();
  3239. if (!endpointOutcome.isSuccess())
  3240. return DeleteIpv6InternetBandwidthOutcome(endpointOutcome.error());
  3241. auto outcome = makeRequest(endpointOutcome.result(), request);
  3242. if (outcome.isSuccess())
  3243. return DeleteIpv6InternetBandwidthOutcome(DeleteIpv6InternetBandwidthResult(outcome.result()));
  3244. else
  3245. return DeleteIpv6InternetBandwidthOutcome(outcome.error());
  3246. }
  3247. void VpcClient::deleteIpv6InternetBandwidthAsync(const DeleteIpv6InternetBandwidthRequest& request, const DeleteIpv6InternetBandwidthAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3248. {
  3249. auto fn = [this, request, handler, context]()
  3250. {
  3251. handler(this, request, deleteIpv6InternetBandwidth(request), context);
  3252. };
  3253. asyncExecute(new Runnable(fn));
  3254. }
  3255. VpcClient::DeleteIpv6InternetBandwidthOutcomeCallable VpcClient::deleteIpv6InternetBandwidthCallable(const DeleteIpv6InternetBandwidthRequest &request) const
  3256. {
  3257. auto task = std::make_shared<std::packaged_task<DeleteIpv6InternetBandwidthOutcome()>>(
  3258. [this, request]()
  3259. {
  3260. return this->deleteIpv6InternetBandwidth(request);
  3261. });
  3262. asyncExecute(new Runnable([task]() { (*task)(); }));
  3263. return task->get_future();
  3264. }
  3265. VpcClient::DeleteNatGatewayOutcome VpcClient::deleteNatGateway(const DeleteNatGatewayRequest &request) const
  3266. {
  3267. auto endpointOutcome = endpointProvider_->getEndpoint();
  3268. if (!endpointOutcome.isSuccess())
  3269. return DeleteNatGatewayOutcome(endpointOutcome.error());
  3270. auto outcome = makeRequest(endpointOutcome.result(), request);
  3271. if (outcome.isSuccess())
  3272. return DeleteNatGatewayOutcome(DeleteNatGatewayResult(outcome.result()));
  3273. else
  3274. return DeleteNatGatewayOutcome(outcome.error());
  3275. }
  3276. void VpcClient::deleteNatGatewayAsync(const DeleteNatGatewayRequest& request, const DeleteNatGatewayAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3277. {
  3278. auto fn = [this, request, handler, context]()
  3279. {
  3280. handler(this, request, deleteNatGateway(request), context);
  3281. };
  3282. asyncExecute(new Runnable(fn));
  3283. }
  3284. VpcClient::DeleteNatGatewayOutcomeCallable VpcClient::deleteNatGatewayCallable(const DeleteNatGatewayRequest &request) const
  3285. {
  3286. auto task = std::make_shared<std::packaged_task<DeleteNatGatewayOutcome()>>(
  3287. [this, request]()
  3288. {
  3289. return this->deleteNatGateway(request);
  3290. });
  3291. asyncExecute(new Runnable([task]() { (*task)(); }));
  3292. return task->get_future();
  3293. }
  3294. VpcClient::DeleteNatIpOutcome VpcClient::deleteNatIp(const DeleteNatIpRequest &request) const
  3295. {
  3296. auto endpointOutcome = endpointProvider_->getEndpoint();
  3297. if (!endpointOutcome.isSuccess())
  3298. return DeleteNatIpOutcome(endpointOutcome.error());
  3299. auto outcome = makeRequest(endpointOutcome.result(), request);
  3300. if (outcome.isSuccess())
  3301. return DeleteNatIpOutcome(DeleteNatIpResult(outcome.result()));
  3302. else
  3303. return DeleteNatIpOutcome(outcome.error());
  3304. }
  3305. void VpcClient::deleteNatIpAsync(const DeleteNatIpRequest& request, const DeleteNatIpAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3306. {
  3307. auto fn = [this, request, handler, context]()
  3308. {
  3309. handler(this, request, deleteNatIp(request), context);
  3310. };
  3311. asyncExecute(new Runnable(fn));
  3312. }
  3313. VpcClient::DeleteNatIpOutcomeCallable VpcClient::deleteNatIpCallable(const DeleteNatIpRequest &request) const
  3314. {
  3315. auto task = std::make_shared<std::packaged_task<DeleteNatIpOutcome()>>(
  3316. [this, request]()
  3317. {
  3318. return this->deleteNatIp(request);
  3319. });
  3320. asyncExecute(new Runnable([task]() { (*task)(); }));
  3321. return task->get_future();
  3322. }
  3323. VpcClient::DeleteNatIpCidrOutcome VpcClient::deleteNatIpCidr(const DeleteNatIpCidrRequest &request) const
  3324. {
  3325. auto endpointOutcome = endpointProvider_->getEndpoint();
  3326. if (!endpointOutcome.isSuccess())
  3327. return DeleteNatIpCidrOutcome(endpointOutcome.error());
  3328. auto outcome = makeRequest(endpointOutcome.result(), request);
  3329. if (outcome.isSuccess())
  3330. return DeleteNatIpCidrOutcome(DeleteNatIpCidrResult(outcome.result()));
  3331. else
  3332. return DeleteNatIpCidrOutcome(outcome.error());
  3333. }
  3334. void VpcClient::deleteNatIpCidrAsync(const DeleteNatIpCidrRequest& request, const DeleteNatIpCidrAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3335. {
  3336. auto fn = [this, request, handler, context]()
  3337. {
  3338. handler(this, request, deleteNatIpCidr(request), context);
  3339. };
  3340. asyncExecute(new Runnable(fn));
  3341. }
  3342. VpcClient::DeleteNatIpCidrOutcomeCallable VpcClient::deleteNatIpCidrCallable(const DeleteNatIpCidrRequest &request) const
  3343. {
  3344. auto task = std::make_shared<std::packaged_task<DeleteNatIpCidrOutcome()>>(
  3345. [this, request]()
  3346. {
  3347. return this->deleteNatIpCidr(request);
  3348. });
  3349. asyncExecute(new Runnable([task]() { (*task)(); }));
  3350. return task->get_future();
  3351. }
  3352. VpcClient::DeleteNetworkAclOutcome VpcClient::deleteNetworkAcl(const DeleteNetworkAclRequest &request) const
  3353. {
  3354. auto endpointOutcome = endpointProvider_->getEndpoint();
  3355. if (!endpointOutcome.isSuccess())
  3356. return DeleteNetworkAclOutcome(endpointOutcome.error());
  3357. auto outcome = makeRequest(endpointOutcome.result(), request);
  3358. if (outcome.isSuccess())
  3359. return DeleteNetworkAclOutcome(DeleteNetworkAclResult(outcome.result()));
  3360. else
  3361. return DeleteNetworkAclOutcome(outcome.error());
  3362. }
  3363. void VpcClient::deleteNetworkAclAsync(const DeleteNetworkAclRequest& request, const DeleteNetworkAclAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3364. {
  3365. auto fn = [this, request, handler, context]()
  3366. {
  3367. handler(this, request, deleteNetworkAcl(request), context);
  3368. };
  3369. asyncExecute(new Runnable(fn));
  3370. }
  3371. VpcClient::DeleteNetworkAclOutcomeCallable VpcClient::deleteNetworkAclCallable(const DeleteNetworkAclRequest &request) const
  3372. {
  3373. auto task = std::make_shared<std::packaged_task<DeleteNetworkAclOutcome()>>(
  3374. [this, request]()
  3375. {
  3376. return this->deleteNetworkAcl(request);
  3377. });
  3378. asyncExecute(new Runnable([task]() { (*task)(); }));
  3379. return task->get_future();
  3380. }
  3381. VpcClient::DeletePhysicalConnectionOutcome VpcClient::deletePhysicalConnection(const DeletePhysicalConnectionRequest &request) const
  3382. {
  3383. auto endpointOutcome = endpointProvider_->getEndpoint();
  3384. if (!endpointOutcome.isSuccess())
  3385. return DeletePhysicalConnectionOutcome(endpointOutcome.error());
  3386. auto outcome = makeRequest(endpointOutcome.result(), request);
  3387. if (outcome.isSuccess())
  3388. return DeletePhysicalConnectionOutcome(DeletePhysicalConnectionResult(outcome.result()));
  3389. else
  3390. return DeletePhysicalConnectionOutcome(outcome.error());
  3391. }
  3392. void VpcClient::deletePhysicalConnectionAsync(const DeletePhysicalConnectionRequest& request, const DeletePhysicalConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3393. {
  3394. auto fn = [this, request, handler, context]()
  3395. {
  3396. handler(this, request, deletePhysicalConnection(request), context);
  3397. };
  3398. asyncExecute(new Runnable(fn));
  3399. }
  3400. VpcClient::DeletePhysicalConnectionOutcomeCallable VpcClient::deletePhysicalConnectionCallable(const DeletePhysicalConnectionRequest &request) const
  3401. {
  3402. auto task = std::make_shared<std::packaged_task<DeletePhysicalConnectionOutcome()>>(
  3403. [this, request]()
  3404. {
  3405. return this->deletePhysicalConnection(request);
  3406. });
  3407. asyncExecute(new Runnable([task]() { (*task)(); }));
  3408. return task->get_future();
  3409. }
  3410. VpcClient::DeletePublicIpAddressPoolOutcome VpcClient::deletePublicIpAddressPool(const DeletePublicIpAddressPoolRequest &request) const
  3411. {
  3412. auto endpointOutcome = endpointProvider_->getEndpoint();
  3413. if (!endpointOutcome.isSuccess())
  3414. return DeletePublicIpAddressPoolOutcome(endpointOutcome.error());
  3415. auto outcome = makeRequest(endpointOutcome.result(), request);
  3416. if (outcome.isSuccess())
  3417. return DeletePublicIpAddressPoolOutcome(DeletePublicIpAddressPoolResult(outcome.result()));
  3418. else
  3419. return DeletePublicIpAddressPoolOutcome(outcome.error());
  3420. }
  3421. void VpcClient::deletePublicIpAddressPoolAsync(const DeletePublicIpAddressPoolRequest& request, const DeletePublicIpAddressPoolAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3422. {
  3423. auto fn = [this, request, handler, context]()
  3424. {
  3425. handler(this, request, deletePublicIpAddressPool(request), context);
  3426. };
  3427. asyncExecute(new Runnable(fn));
  3428. }
  3429. VpcClient::DeletePublicIpAddressPoolOutcomeCallable VpcClient::deletePublicIpAddressPoolCallable(const DeletePublicIpAddressPoolRequest &request) const
  3430. {
  3431. auto task = std::make_shared<std::packaged_task<DeletePublicIpAddressPoolOutcome()>>(
  3432. [this, request]()
  3433. {
  3434. return this->deletePublicIpAddressPool(request);
  3435. });
  3436. asyncExecute(new Runnable([task]() { (*task)(); }));
  3437. return task->get_future();
  3438. }
  3439. VpcClient::DeletePublicIpAddressPoolCidrBlockOutcome VpcClient::deletePublicIpAddressPoolCidrBlock(const DeletePublicIpAddressPoolCidrBlockRequest &request) const
  3440. {
  3441. auto endpointOutcome = endpointProvider_->getEndpoint();
  3442. if (!endpointOutcome.isSuccess())
  3443. return DeletePublicIpAddressPoolCidrBlockOutcome(endpointOutcome.error());
  3444. auto outcome = makeRequest(endpointOutcome.result(), request);
  3445. if (outcome.isSuccess())
  3446. return DeletePublicIpAddressPoolCidrBlockOutcome(DeletePublicIpAddressPoolCidrBlockResult(outcome.result()));
  3447. else
  3448. return DeletePublicIpAddressPoolCidrBlockOutcome(outcome.error());
  3449. }
  3450. void VpcClient::deletePublicIpAddressPoolCidrBlockAsync(const DeletePublicIpAddressPoolCidrBlockRequest& request, const DeletePublicIpAddressPoolCidrBlockAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3451. {
  3452. auto fn = [this, request, handler, context]()
  3453. {
  3454. handler(this, request, deletePublicIpAddressPoolCidrBlock(request), context);
  3455. };
  3456. asyncExecute(new Runnable(fn));
  3457. }
  3458. VpcClient::DeletePublicIpAddressPoolCidrBlockOutcomeCallable VpcClient::deletePublicIpAddressPoolCidrBlockCallable(const DeletePublicIpAddressPoolCidrBlockRequest &request) const
  3459. {
  3460. auto task = std::make_shared<std::packaged_task<DeletePublicIpAddressPoolCidrBlockOutcome()>>(
  3461. [this, request]()
  3462. {
  3463. return this->deletePublicIpAddressPoolCidrBlock(request);
  3464. });
  3465. asyncExecute(new Runnable([task]() { (*task)(); }));
  3466. return task->get_future();
  3467. }
  3468. VpcClient::DeleteRouteEntriesOutcome VpcClient::deleteRouteEntries(const DeleteRouteEntriesRequest &request) const
  3469. {
  3470. auto endpointOutcome = endpointProvider_->getEndpoint();
  3471. if (!endpointOutcome.isSuccess())
  3472. return DeleteRouteEntriesOutcome(endpointOutcome.error());
  3473. auto outcome = makeRequest(endpointOutcome.result(), request);
  3474. if (outcome.isSuccess())
  3475. return DeleteRouteEntriesOutcome(DeleteRouteEntriesResult(outcome.result()));
  3476. else
  3477. return DeleteRouteEntriesOutcome(outcome.error());
  3478. }
  3479. void VpcClient::deleteRouteEntriesAsync(const DeleteRouteEntriesRequest& request, const DeleteRouteEntriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3480. {
  3481. auto fn = [this, request, handler, context]()
  3482. {
  3483. handler(this, request, deleteRouteEntries(request), context);
  3484. };
  3485. asyncExecute(new Runnable(fn));
  3486. }
  3487. VpcClient::DeleteRouteEntriesOutcomeCallable VpcClient::deleteRouteEntriesCallable(const DeleteRouteEntriesRequest &request) const
  3488. {
  3489. auto task = std::make_shared<std::packaged_task<DeleteRouteEntriesOutcome()>>(
  3490. [this, request]()
  3491. {
  3492. return this->deleteRouteEntries(request);
  3493. });
  3494. asyncExecute(new Runnable([task]() { (*task)(); }));
  3495. return task->get_future();
  3496. }
  3497. VpcClient::DeleteRouteEntryOutcome VpcClient::deleteRouteEntry(const DeleteRouteEntryRequest &request) const
  3498. {
  3499. auto endpointOutcome = endpointProvider_->getEndpoint();
  3500. if (!endpointOutcome.isSuccess())
  3501. return DeleteRouteEntryOutcome(endpointOutcome.error());
  3502. auto outcome = makeRequest(endpointOutcome.result(), request);
  3503. if (outcome.isSuccess())
  3504. return DeleteRouteEntryOutcome(DeleteRouteEntryResult(outcome.result()));
  3505. else
  3506. return DeleteRouteEntryOutcome(outcome.error());
  3507. }
  3508. void VpcClient::deleteRouteEntryAsync(const DeleteRouteEntryRequest& request, const DeleteRouteEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3509. {
  3510. auto fn = [this, request, handler, context]()
  3511. {
  3512. handler(this, request, deleteRouteEntry(request), context);
  3513. };
  3514. asyncExecute(new Runnable(fn));
  3515. }
  3516. VpcClient::DeleteRouteEntryOutcomeCallable VpcClient::deleteRouteEntryCallable(const DeleteRouteEntryRequest &request) const
  3517. {
  3518. auto task = std::make_shared<std::packaged_task<DeleteRouteEntryOutcome()>>(
  3519. [this, request]()
  3520. {
  3521. return this->deleteRouteEntry(request);
  3522. });
  3523. asyncExecute(new Runnable([task]() { (*task)(); }));
  3524. return task->get_future();
  3525. }
  3526. VpcClient::DeleteRouteTableOutcome VpcClient::deleteRouteTable(const DeleteRouteTableRequest &request) const
  3527. {
  3528. auto endpointOutcome = endpointProvider_->getEndpoint();
  3529. if (!endpointOutcome.isSuccess())
  3530. return DeleteRouteTableOutcome(endpointOutcome.error());
  3531. auto outcome = makeRequest(endpointOutcome.result(), request);
  3532. if (outcome.isSuccess())
  3533. return DeleteRouteTableOutcome(DeleteRouteTableResult(outcome.result()));
  3534. else
  3535. return DeleteRouteTableOutcome(outcome.error());
  3536. }
  3537. void VpcClient::deleteRouteTableAsync(const DeleteRouteTableRequest& request, const DeleteRouteTableAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3538. {
  3539. auto fn = [this, request, handler, context]()
  3540. {
  3541. handler(this, request, deleteRouteTable(request), context);
  3542. };
  3543. asyncExecute(new Runnable(fn));
  3544. }
  3545. VpcClient::DeleteRouteTableOutcomeCallable VpcClient::deleteRouteTableCallable(const DeleteRouteTableRequest &request) const
  3546. {
  3547. auto task = std::make_shared<std::packaged_task<DeleteRouteTableOutcome()>>(
  3548. [this, request]()
  3549. {
  3550. return this->deleteRouteTable(request);
  3551. });
  3552. asyncExecute(new Runnable([task]() { (*task)(); }));
  3553. return task->get_future();
  3554. }
  3555. VpcClient::DeleteRouterInterfaceOutcome VpcClient::deleteRouterInterface(const DeleteRouterInterfaceRequest &request) const
  3556. {
  3557. auto endpointOutcome = endpointProvider_->getEndpoint();
  3558. if (!endpointOutcome.isSuccess())
  3559. return DeleteRouterInterfaceOutcome(endpointOutcome.error());
  3560. auto outcome = makeRequest(endpointOutcome.result(), request);
  3561. if (outcome.isSuccess())
  3562. return DeleteRouterInterfaceOutcome(DeleteRouterInterfaceResult(outcome.result()));
  3563. else
  3564. return DeleteRouterInterfaceOutcome(outcome.error());
  3565. }
  3566. void VpcClient::deleteRouterInterfaceAsync(const DeleteRouterInterfaceRequest& request, const DeleteRouterInterfaceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3567. {
  3568. auto fn = [this, request, handler, context]()
  3569. {
  3570. handler(this, request, deleteRouterInterface(request), context);
  3571. };
  3572. asyncExecute(new Runnable(fn));
  3573. }
  3574. VpcClient::DeleteRouterInterfaceOutcomeCallable VpcClient::deleteRouterInterfaceCallable(const DeleteRouterInterfaceRequest &request) const
  3575. {
  3576. auto task = std::make_shared<std::packaged_task<DeleteRouterInterfaceOutcome()>>(
  3577. [this, request]()
  3578. {
  3579. return this->deleteRouterInterface(request);
  3580. });
  3581. asyncExecute(new Runnable([task]() { (*task)(); }));
  3582. return task->get_future();
  3583. }
  3584. VpcClient::DeleteSnatEntryOutcome VpcClient::deleteSnatEntry(const DeleteSnatEntryRequest &request) const
  3585. {
  3586. auto endpointOutcome = endpointProvider_->getEndpoint();
  3587. if (!endpointOutcome.isSuccess())
  3588. return DeleteSnatEntryOutcome(endpointOutcome.error());
  3589. auto outcome = makeRequest(endpointOutcome.result(), request);
  3590. if (outcome.isSuccess())
  3591. return DeleteSnatEntryOutcome(DeleteSnatEntryResult(outcome.result()));
  3592. else
  3593. return DeleteSnatEntryOutcome(outcome.error());
  3594. }
  3595. void VpcClient::deleteSnatEntryAsync(const DeleteSnatEntryRequest& request, const DeleteSnatEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3596. {
  3597. auto fn = [this, request, handler, context]()
  3598. {
  3599. handler(this, request, deleteSnatEntry(request), context);
  3600. };
  3601. asyncExecute(new Runnable(fn));
  3602. }
  3603. VpcClient::DeleteSnatEntryOutcomeCallable VpcClient::deleteSnatEntryCallable(const DeleteSnatEntryRequest &request) const
  3604. {
  3605. auto task = std::make_shared<std::packaged_task<DeleteSnatEntryOutcome()>>(
  3606. [this, request]()
  3607. {
  3608. return this->deleteSnatEntry(request);
  3609. });
  3610. asyncExecute(new Runnable([task]() { (*task)(); }));
  3611. return task->get_future();
  3612. }
  3613. VpcClient::DeleteSslVpnClientCertOutcome VpcClient::deleteSslVpnClientCert(const DeleteSslVpnClientCertRequest &request) const
  3614. {
  3615. auto endpointOutcome = endpointProvider_->getEndpoint();
  3616. if (!endpointOutcome.isSuccess())
  3617. return DeleteSslVpnClientCertOutcome(endpointOutcome.error());
  3618. auto outcome = makeRequest(endpointOutcome.result(), request);
  3619. if (outcome.isSuccess())
  3620. return DeleteSslVpnClientCertOutcome(DeleteSslVpnClientCertResult(outcome.result()));
  3621. else
  3622. return DeleteSslVpnClientCertOutcome(outcome.error());
  3623. }
  3624. void VpcClient::deleteSslVpnClientCertAsync(const DeleteSslVpnClientCertRequest& request, const DeleteSslVpnClientCertAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3625. {
  3626. auto fn = [this, request, handler, context]()
  3627. {
  3628. handler(this, request, deleteSslVpnClientCert(request), context);
  3629. };
  3630. asyncExecute(new Runnable(fn));
  3631. }
  3632. VpcClient::DeleteSslVpnClientCertOutcomeCallable VpcClient::deleteSslVpnClientCertCallable(const DeleteSslVpnClientCertRequest &request) const
  3633. {
  3634. auto task = std::make_shared<std::packaged_task<DeleteSslVpnClientCertOutcome()>>(
  3635. [this, request]()
  3636. {
  3637. return this->deleteSslVpnClientCert(request);
  3638. });
  3639. asyncExecute(new Runnable([task]() { (*task)(); }));
  3640. return task->get_future();
  3641. }
  3642. VpcClient::DeleteSslVpnServerOutcome VpcClient::deleteSslVpnServer(const DeleteSslVpnServerRequest &request) const
  3643. {
  3644. auto endpointOutcome = endpointProvider_->getEndpoint();
  3645. if (!endpointOutcome.isSuccess())
  3646. return DeleteSslVpnServerOutcome(endpointOutcome.error());
  3647. auto outcome = makeRequest(endpointOutcome.result(), request);
  3648. if (outcome.isSuccess())
  3649. return DeleteSslVpnServerOutcome(DeleteSslVpnServerResult(outcome.result()));
  3650. else
  3651. return DeleteSslVpnServerOutcome(outcome.error());
  3652. }
  3653. void VpcClient::deleteSslVpnServerAsync(const DeleteSslVpnServerRequest& request, const DeleteSslVpnServerAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3654. {
  3655. auto fn = [this, request, handler, context]()
  3656. {
  3657. handler(this, request, deleteSslVpnServer(request), context);
  3658. };
  3659. asyncExecute(new Runnable(fn));
  3660. }
  3661. VpcClient::DeleteSslVpnServerOutcomeCallable VpcClient::deleteSslVpnServerCallable(const DeleteSslVpnServerRequest &request) const
  3662. {
  3663. auto task = std::make_shared<std::packaged_task<DeleteSslVpnServerOutcome()>>(
  3664. [this, request]()
  3665. {
  3666. return this->deleteSslVpnServer(request);
  3667. });
  3668. asyncExecute(new Runnable([task]() { (*task)(); }));
  3669. return task->get_future();
  3670. }
  3671. VpcClient::DeleteTrafficMirrorFilterOutcome VpcClient::deleteTrafficMirrorFilter(const DeleteTrafficMirrorFilterRequest &request) const
  3672. {
  3673. auto endpointOutcome = endpointProvider_->getEndpoint();
  3674. if (!endpointOutcome.isSuccess())
  3675. return DeleteTrafficMirrorFilterOutcome(endpointOutcome.error());
  3676. auto outcome = makeRequest(endpointOutcome.result(), request);
  3677. if (outcome.isSuccess())
  3678. return DeleteTrafficMirrorFilterOutcome(DeleteTrafficMirrorFilterResult(outcome.result()));
  3679. else
  3680. return DeleteTrafficMirrorFilterOutcome(outcome.error());
  3681. }
  3682. void VpcClient::deleteTrafficMirrorFilterAsync(const DeleteTrafficMirrorFilterRequest& request, const DeleteTrafficMirrorFilterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3683. {
  3684. auto fn = [this, request, handler, context]()
  3685. {
  3686. handler(this, request, deleteTrafficMirrorFilter(request), context);
  3687. };
  3688. asyncExecute(new Runnable(fn));
  3689. }
  3690. VpcClient::DeleteTrafficMirrorFilterOutcomeCallable VpcClient::deleteTrafficMirrorFilterCallable(const DeleteTrafficMirrorFilterRequest &request) const
  3691. {
  3692. auto task = std::make_shared<std::packaged_task<DeleteTrafficMirrorFilterOutcome()>>(
  3693. [this, request]()
  3694. {
  3695. return this->deleteTrafficMirrorFilter(request);
  3696. });
  3697. asyncExecute(new Runnable([task]() { (*task)(); }));
  3698. return task->get_future();
  3699. }
  3700. VpcClient::DeleteTrafficMirrorFilterRulesOutcome VpcClient::deleteTrafficMirrorFilterRules(const DeleteTrafficMirrorFilterRulesRequest &request) const
  3701. {
  3702. auto endpointOutcome = endpointProvider_->getEndpoint();
  3703. if (!endpointOutcome.isSuccess())
  3704. return DeleteTrafficMirrorFilterRulesOutcome(endpointOutcome.error());
  3705. auto outcome = makeRequest(endpointOutcome.result(), request);
  3706. if (outcome.isSuccess())
  3707. return DeleteTrafficMirrorFilterRulesOutcome(DeleteTrafficMirrorFilterRulesResult(outcome.result()));
  3708. else
  3709. return DeleteTrafficMirrorFilterRulesOutcome(outcome.error());
  3710. }
  3711. void VpcClient::deleteTrafficMirrorFilterRulesAsync(const DeleteTrafficMirrorFilterRulesRequest& request, const DeleteTrafficMirrorFilterRulesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3712. {
  3713. auto fn = [this, request, handler, context]()
  3714. {
  3715. handler(this, request, deleteTrafficMirrorFilterRules(request), context);
  3716. };
  3717. asyncExecute(new Runnable(fn));
  3718. }
  3719. VpcClient::DeleteTrafficMirrorFilterRulesOutcomeCallable VpcClient::deleteTrafficMirrorFilterRulesCallable(const DeleteTrafficMirrorFilterRulesRequest &request) const
  3720. {
  3721. auto task = std::make_shared<std::packaged_task<DeleteTrafficMirrorFilterRulesOutcome()>>(
  3722. [this, request]()
  3723. {
  3724. return this->deleteTrafficMirrorFilterRules(request);
  3725. });
  3726. asyncExecute(new Runnable([task]() { (*task)(); }));
  3727. return task->get_future();
  3728. }
  3729. VpcClient::DeleteTrafficMirrorSessionOutcome VpcClient::deleteTrafficMirrorSession(const DeleteTrafficMirrorSessionRequest &request) const
  3730. {
  3731. auto endpointOutcome = endpointProvider_->getEndpoint();
  3732. if (!endpointOutcome.isSuccess())
  3733. return DeleteTrafficMirrorSessionOutcome(endpointOutcome.error());
  3734. auto outcome = makeRequest(endpointOutcome.result(), request);
  3735. if (outcome.isSuccess())
  3736. return DeleteTrafficMirrorSessionOutcome(DeleteTrafficMirrorSessionResult(outcome.result()));
  3737. else
  3738. return DeleteTrafficMirrorSessionOutcome(outcome.error());
  3739. }
  3740. void VpcClient::deleteTrafficMirrorSessionAsync(const DeleteTrafficMirrorSessionRequest& request, const DeleteTrafficMirrorSessionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3741. {
  3742. auto fn = [this, request, handler, context]()
  3743. {
  3744. handler(this, request, deleteTrafficMirrorSession(request), context);
  3745. };
  3746. asyncExecute(new Runnable(fn));
  3747. }
  3748. VpcClient::DeleteTrafficMirrorSessionOutcomeCallable VpcClient::deleteTrafficMirrorSessionCallable(const DeleteTrafficMirrorSessionRequest &request) const
  3749. {
  3750. auto task = std::make_shared<std::packaged_task<DeleteTrafficMirrorSessionOutcome()>>(
  3751. [this, request]()
  3752. {
  3753. return this->deleteTrafficMirrorSession(request);
  3754. });
  3755. asyncExecute(new Runnable([task]() { (*task)(); }));
  3756. return task->get_future();
  3757. }
  3758. VpcClient::DeleteVSwitchOutcome VpcClient::deleteVSwitch(const DeleteVSwitchRequest &request) const
  3759. {
  3760. auto endpointOutcome = endpointProvider_->getEndpoint();
  3761. if (!endpointOutcome.isSuccess())
  3762. return DeleteVSwitchOutcome(endpointOutcome.error());
  3763. auto outcome = makeRequest(endpointOutcome.result(), request);
  3764. if (outcome.isSuccess())
  3765. return DeleteVSwitchOutcome(DeleteVSwitchResult(outcome.result()));
  3766. else
  3767. return DeleteVSwitchOutcome(outcome.error());
  3768. }
  3769. void VpcClient::deleteVSwitchAsync(const DeleteVSwitchRequest& request, const DeleteVSwitchAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3770. {
  3771. auto fn = [this, request, handler, context]()
  3772. {
  3773. handler(this, request, deleteVSwitch(request), context);
  3774. };
  3775. asyncExecute(new Runnable(fn));
  3776. }
  3777. VpcClient::DeleteVSwitchOutcomeCallable VpcClient::deleteVSwitchCallable(const DeleteVSwitchRequest &request) const
  3778. {
  3779. auto task = std::make_shared<std::packaged_task<DeleteVSwitchOutcome()>>(
  3780. [this, request]()
  3781. {
  3782. return this->deleteVSwitch(request);
  3783. });
  3784. asyncExecute(new Runnable([task]() { (*task)(); }));
  3785. return task->get_future();
  3786. }
  3787. VpcClient::DeleteVbrHaOutcome VpcClient::deleteVbrHa(const DeleteVbrHaRequest &request) const
  3788. {
  3789. auto endpointOutcome = endpointProvider_->getEndpoint();
  3790. if (!endpointOutcome.isSuccess())
  3791. return DeleteVbrHaOutcome(endpointOutcome.error());
  3792. auto outcome = makeRequest(endpointOutcome.result(), request);
  3793. if (outcome.isSuccess())
  3794. return DeleteVbrHaOutcome(DeleteVbrHaResult(outcome.result()));
  3795. else
  3796. return DeleteVbrHaOutcome(outcome.error());
  3797. }
  3798. void VpcClient::deleteVbrHaAsync(const DeleteVbrHaRequest& request, const DeleteVbrHaAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3799. {
  3800. auto fn = [this, request, handler, context]()
  3801. {
  3802. handler(this, request, deleteVbrHa(request), context);
  3803. };
  3804. asyncExecute(new Runnable(fn));
  3805. }
  3806. VpcClient::DeleteVbrHaOutcomeCallable VpcClient::deleteVbrHaCallable(const DeleteVbrHaRequest &request) const
  3807. {
  3808. auto task = std::make_shared<std::packaged_task<DeleteVbrHaOutcome()>>(
  3809. [this, request]()
  3810. {
  3811. return this->deleteVbrHa(request);
  3812. });
  3813. asyncExecute(new Runnable([task]() { (*task)(); }));
  3814. return task->get_future();
  3815. }
  3816. VpcClient::DeleteVcoRouteEntryOutcome VpcClient::deleteVcoRouteEntry(const DeleteVcoRouteEntryRequest &request) const
  3817. {
  3818. auto endpointOutcome = endpointProvider_->getEndpoint();
  3819. if (!endpointOutcome.isSuccess())
  3820. return DeleteVcoRouteEntryOutcome(endpointOutcome.error());
  3821. auto outcome = makeRequest(endpointOutcome.result(), request);
  3822. if (outcome.isSuccess())
  3823. return DeleteVcoRouteEntryOutcome(DeleteVcoRouteEntryResult(outcome.result()));
  3824. else
  3825. return DeleteVcoRouteEntryOutcome(outcome.error());
  3826. }
  3827. void VpcClient::deleteVcoRouteEntryAsync(const DeleteVcoRouteEntryRequest& request, const DeleteVcoRouteEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3828. {
  3829. auto fn = [this, request, handler, context]()
  3830. {
  3831. handler(this, request, deleteVcoRouteEntry(request), context);
  3832. };
  3833. asyncExecute(new Runnable(fn));
  3834. }
  3835. VpcClient::DeleteVcoRouteEntryOutcomeCallable VpcClient::deleteVcoRouteEntryCallable(const DeleteVcoRouteEntryRequest &request) const
  3836. {
  3837. auto task = std::make_shared<std::packaged_task<DeleteVcoRouteEntryOutcome()>>(
  3838. [this, request]()
  3839. {
  3840. return this->deleteVcoRouteEntry(request);
  3841. });
  3842. asyncExecute(new Runnable([task]() { (*task)(); }));
  3843. return task->get_future();
  3844. }
  3845. VpcClient::DeleteVirtualBorderRouterOutcome VpcClient::deleteVirtualBorderRouter(const DeleteVirtualBorderRouterRequest &request) const
  3846. {
  3847. auto endpointOutcome = endpointProvider_->getEndpoint();
  3848. if (!endpointOutcome.isSuccess())
  3849. return DeleteVirtualBorderRouterOutcome(endpointOutcome.error());
  3850. auto outcome = makeRequest(endpointOutcome.result(), request);
  3851. if (outcome.isSuccess())
  3852. return DeleteVirtualBorderRouterOutcome(DeleteVirtualBorderRouterResult(outcome.result()));
  3853. else
  3854. return DeleteVirtualBorderRouterOutcome(outcome.error());
  3855. }
  3856. void VpcClient::deleteVirtualBorderRouterAsync(const DeleteVirtualBorderRouterRequest& request, const DeleteVirtualBorderRouterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3857. {
  3858. auto fn = [this, request, handler, context]()
  3859. {
  3860. handler(this, request, deleteVirtualBorderRouter(request), context);
  3861. };
  3862. asyncExecute(new Runnable(fn));
  3863. }
  3864. VpcClient::DeleteVirtualBorderRouterOutcomeCallable VpcClient::deleteVirtualBorderRouterCallable(const DeleteVirtualBorderRouterRequest &request) const
  3865. {
  3866. auto task = std::make_shared<std::packaged_task<DeleteVirtualBorderRouterOutcome()>>(
  3867. [this, request]()
  3868. {
  3869. return this->deleteVirtualBorderRouter(request);
  3870. });
  3871. asyncExecute(new Runnable([task]() { (*task)(); }));
  3872. return task->get_future();
  3873. }
  3874. VpcClient::DeleteVpcOutcome VpcClient::deleteVpc(const DeleteVpcRequest &request) const
  3875. {
  3876. auto endpointOutcome = endpointProvider_->getEndpoint();
  3877. if (!endpointOutcome.isSuccess())
  3878. return DeleteVpcOutcome(endpointOutcome.error());
  3879. auto outcome = makeRequest(endpointOutcome.result(), request);
  3880. if (outcome.isSuccess())
  3881. return DeleteVpcOutcome(DeleteVpcResult(outcome.result()));
  3882. else
  3883. return DeleteVpcOutcome(outcome.error());
  3884. }
  3885. void VpcClient::deleteVpcAsync(const DeleteVpcRequest& request, const DeleteVpcAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3886. {
  3887. auto fn = [this, request, handler, context]()
  3888. {
  3889. handler(this, request, deleteVpc(request), context);
  3890. };
  3891. asyncExecute(new Runnable(fn));
  3892. }
  3893. VpcClient::DeleteVpcOutcomeCallable VpcClient::deleteVpcCallable(const DeleteVpcRequest &request) const
  3894. {
  3895. auto task = std::make_shared<std::packaged_task<DeleteVpcOutcome()>>(
  3896. [this, request]()
  3897. {
  3898. return this->deleteVpc(request);
  3899. });
  3900. asyncExecute(new Runnable([task]() { (*task)(); }));
  3901. return task->get_future();
  3902. }
  3903. VpcClient::DeleteVpcGatewayEndpointOutcome VpcClient::deleteVpcGatewayEndpoint(const DeleteVpcGatewayEndpointRequest &request) const
  3904. {
  3905. auto endpointOutcome = endpointProvider_->getEndpoint();
  3906. if (!endpointOutcome.isSuccess())
  3907. return DeleteVpcGatewayEndpointOutcome(endpointOutcome.error());
  3908. auto outcome = makeRequest(endpointOutcome.result(), request);
  3909. if (outcome.isSuccess())
  3910. return DeleteVpcGatewayEndpointOutcome(DeleteVpcGatewayEndpointResult(outcome.result()));
  3911. else
  3912. return DeleteVpcGatewayEndpointOutcome(outcome.error());
  3913. }
  3914. void VpcClient::deleteVpcGatewayEndpointAsync(const DeleteVpcGatewayEndpointRequest& request, const DeleteVpcGatewayEndpointAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3915. {
  3916. auto fn = [this, request, handler, context]()
  3917. {
  3918. handler(this, request, deleteVpcGatewayEndpoint(request), context);
  3919. };
  3920. asyncExecute(new Runnable(fn));
  3921. }
  3922. VpcClient::DeleteVpcGatewayEndpointOutcomeCallable VpcClient::deleteVpcGatewayEndpointCallable(const DeleteVpcGatewayEndpointRequest &request) const
  3923. {
  3924. auto task = std::make_shared<std::packaged_task<DeleteVpcGatewayEndpointOutcome()>>(
  3925. [this, request]()
  3926. {
  3927. return this->deleteVpcGatewayEndpoint(request);
  3928. });
  3929. asyncExecute(new Runnable([task]() { (*task)(); }));
  3930. return task->get_future();
  3931. }
  3932. VpcClient::DeleteVpcPrefixListOutcome VpcClient::deleteVpcPrefixList(const DeleteVpcPrefixListRequest &request) const
  3933. {
  3934. auto endpointOutcome = endpointProvider_->getEndpoint();
  3935. if (!endpointOutcome.isSuccess())
  3936. return DeleteVpcPrefixListOutcome(endpointOutcome.error());
  3937. auto outcome = makeRequest(endpointOutcome.result(), request);
  3938. if (outcome.isSuccess())
  3939. return DeleteVpcPrefixListOutcome(DeleteVpcPrefixListResult(outcome.result()));
  3940. else
  3941. return DeleteVpcPrefixListOutcome(outcome.error());
  3942. }
  3943. void VpcClient::deleteVpcPrefixListAsync(const DeleteVpcPrefixListRequest& request, const DeleteVpcPrefixListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3944. {
  3945. auto fn = [this, request, handler, context]()
  3946. {
  3947. handler(this, request, deleteVpcPrefixList(request), context);
  3948. };
  3949. asyncExecute(new Runnable(fn));
  3950. }
  3951. VpcClient::DeleteVpcPrefixListOutcomeCallable VpcClient::deleteVpcPrefixListCallable(const DeleteVpcPrefixListRequest &request) const
  3952. {
  3953. auto task = std::make_shared<std::packaged_task<DeleteVpcPrefixListOutcome()>>(
  3954. [this, request]()
  3955. {
  3956. return this->deleteVpcPrefixList(request);
  3957. });
  3958. asyncExecute(new Runnable([task]() { (*task)(); }));
  3959. return task->get_future();
  3960. }
  3961. VpcClient::DeleteVpnAttachmentOutcome VpcClient::deleteVpnAttachment(const DeleteVpnAttachmentRequest &request) const
  3962. {
  3963. auto endpointOutcome = endpointProvider_->getEndpoint();
  3964. if (!endpointOutcome.isSuccess())
  3965. return DeleteVpnAttachmentOutcome(endpointOutcome.error());
  3966. auto outcome = makeRequest(endpointOutcome.result(), request);
  3967. if (outcome.isSuccess())
  3968. return DeleteVpnAttachmentOutcome(DeleteVpnAttachmentResult(outcome.result()));
  3969. else
  3970. return DeleteVpnAttachmentOutcome(outcome.error());
  3971. }
  3972. void VpcClient::deleteVpnAttachmentAsync(const DeleteVpnAttachmentRequest& request, const DeleteVpnAttachmentAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  3973. {
  3974. auto fn = [this, request, handler, context]()
  3975. {
  3976. handler(this, request, deleteVpnAttachment(request), context);
  3977. };
  3978. asyncExecute(new Runnable(fn));
  3979. }
  3980. VpcClient::DeleteVpnAttachmentOutcomeCallable VpcClient::deleteVpnAttachmentCallable(const DeleteVpnAttachmentRequest &request) const
  3981. {
  3982. auto task = std::make_shared<std::packaged_task<DeleteVpnAttachmentOutcome()>>(
  3983. [this, request]()
  3984. {
  3985. return this->deleteVpnAttachment(request);
  3986. });
  3987. asyncExecute(new Runnable([task]() { (*task)(); }));
  3988. return task->get_future();
  3989. }
  3990. VpcClient::DeleteVpnConnectionOutcome VpcClient::deleteVpnConnection(const DeleteVpnConnectionRequest &request) const
  3991. {
  3992. auto endpointOutcome = endpointProvider_->getEndpoint();
  3993. if (!endpointOutcome.isSuccess())
  3994. return DeleteVpnConnectionOutcome(endpointOutcome.error());
  3995. auto outcome = makeRequest(endpointOutcome.result(), request);
  3996. if (outcome.isSuccess())
  3997. return DeleteVpnConnectionOutcome(DeleteVpnConnectionResult(outcome.result()));
  3998. else
  3999. return DeleteVpnConnectionOutcome(outcome.error());
  4000. }
  4001. void VpcClient::deleteVpnConnectionAsync(const DeleteVpnConnectionRequest& request, const DeleteVpnConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4002. {
  4003. auto fn = [this, request, handler, context]()
  4004. {
  4005. handler(this, request, deleteVpnConnection(request), context);
  4006. };
  4007. asyncExecute(new Runnable(fn));
  4008. }
  4009. VpcClient::DeleteVpnConnectionOutcomeCallable VpcClient::deleteVpnConnectionCallable(const DeleteVpnConnectionRequest &request) const
  4010. {
  4011. auto task = std::make_shared<std::packaged_task<DeleteVpnConnectionOutcome()>>(
  4012. [this, request]()
  4013. {
  4014. return this->deleteVpnConnection(request);
  4015. });
  4016. asyncExecute(new Runnable([task]() { (*task)(); }));
  4017. return task->get_future();
  4018. }
  4019. VpcClient::DeleteVpnGatewayOutcome VpcClient::deleteVpnGateway(const DeleteVpnGatewayRequest &request) const
  4020. {
  4021. auto endpointOutcome = endpointProvider_->getEndpoint();
  4022. if (!endpointOutcome.isSuccess())
  4023. return DeleteVpnGatewayOutcome(endpointOutcome.error());
  4024. auto outcome = makeRequest(endpointOutcome.result(), request);
  4025. if (outcome.isSuccess())
  4026. return DeleteVpnGatewayOutcome(DeleteVpnGatewayResult(outcome.result()));
  4027. else
  4028. return DeleteVpnGatewayOutcome(outcome.error());
  4029. }
  4030. void VpcClient::deleteVpnGatewayAsync(const DeleteVpnGatewayRequest& request, const DeleteVpnGatewayAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4031. {
  4032. auto fn = [this, request, handler, context]()
  4033. {
  4034. handler(this, request, deleteVpnGateway(request), context);
  4035. };
  4036. asyncExecute(new Runnable(fn));
  4037. }
  4038. VpcClient::DeleteVpnGatewayOutcomeCallable VpcClient::deleteVpnGatewayCallable(const DeleteVpnGatewayRequest &request) const
  4039. {
  4040. auto task = std::make_shared<std::packaged_task<DeleteVpnGatewayOutcome()>>(
  4041. [this, request]()
  4042. {
  4043. return this->deleteVpnGateway(request);
  4044. });
  4045. asyncExecute(new Runnable([task]() { (*task)(); }));
  4046. return task->get_future();
  4047. }
  4048. VpcClient::DeleteVpnPbrRouteEntryOutcome VpcClient::deleteVpnPbrRouteEntry(const DeleteVpnPbrRouteEntryRequest &request) const
  4049. {
  4050. auto endpointOutcome = endpointProvider_->getEndpoint();
  4051. if (!endpointOutcome.isSuccess())
  4052. return DeleteVpnPbrRouteEntryOutcome(endpointOutcome.error());
  4053. auto outcome = makeRequest(endpointOutcome.result(), request);
  4054. if (outcome.isSuccess())
  4055. return DeleteVpnPbrRouteEntryOutcome(DeleteVpnPbrRouteEntryResult(outcome.result()));
  4056. else
  4057. return DeleteVpnPbrRouteEntryOutcome(outcome.error());
  4058. }
  4059. void VpcClient::deleteVpnPbrRouteEntryAsync(const DeleteVpnPbrRouteEntryRequest& request, const DeleteVpnPbrRouteEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4060. {
  4061. auto fn = [this, request, handler, context]()
  4062. {
  4063. handler(this, request, deleteVpnPbrRouteEntry(request), context);
  4064. };
  4065. asyncExecute(new Runnable(fn));
  4066. }
  4067. VpcClient::DeleteVpnPbrRouteEntryOutcomeCallable VpcClient::deleteVpnPbrRouteEntryCallable(const DeleteVpnPbrRouteEntryRequest &request) const
  4068. {
  4069. auto task = std::make_shared<std::packaged_task<DeleteVpnPbrRouteEntryOutcome()>>(
  4070. [this, request]()
  4071. {
  4072. return this->deleteVpnPbrRouteEntry(request);
  4073. });
  4074. asyncExecute(new Runnable([task]() { (*task)(); }));
  4075. return task->get_future();
  4076. }
  4077. VpcClient::DeleteVpnRouteEntryOutcome VpcClient::deleteVpnRouteEntry(const DeleteVpnRouteEntryRequest &request) const
  4078. {
  4079. auto endpointOutcome = endpointProvider_->getEndpoint();
  4080. if (!endpointOutcome.isSuccess())
  4081. return DeleteVpnRouteEntryOutcome(endpointOutcome.error());
  4082. auto outcome = makeRequest(endpointOutcome.result(), request);
  4083. if (outcome.isSuccess())
  4084. return DeleteVpnRouteEntryOutcome(DeleteVpnRouteEntryResult(outcome.result()));
  4085. else
  4086. return DeleteVpnRouteEntryOutcome(outcome.error());
  4087. }
  4088. void VpcClient::deleteVpnRouteEntryAsync(const DeleteVpnRouteEntryRequest& request, const DeleteVpnRouteEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4089. {
  4090. auto fn = [this, request, handler, context]()
  4091. {
  4092. handler(this, request, deleteVpnRouteEntry(request), context);
  4093. };
  4094. asyncExecute(new Runnable(fn));
  4095. }
  4096. VpcClient::DeleteVpnRouteEntryOutcomeCallable VpcClient::deleteVpnRouteEntryCallable(const DeleteVpnRouteEntryRequest &request) const
  4097. {
  4098. auto task = std::make_shared<std::packaged_task<DeleteVpnRouteEntryOutcome()>>(
  4099. [this, request]()
  4100. {
  4101. return this->deleteVpnRouteEntry(request);
  4102. });
  4103. asyncExecute(new Runnable([task]() { (*task)(); }));
  4104. return task->get_future();
  4105. }
  4106. VpcClient::DeletionProtectionOutcome VpcClient::deletionProtection(const DeletionProtectionRequest &request) const
  4107. {
  4108. auto endpointOutcome = endpointProvider_->getEndpoint();
  4109. if (!endpointOutcome.isSuccess())
  4110. return DeletionProtectionOutcome(endpointOutcome.error());
  4111. auto outcome = makeRequest(endpointOutcome.result(), request);
  4112. if (outcome.isSuccess())
  4113. return DeletionProtectionOutcome(DeletionProtectionResult(outcome.result()));
  4114. else
  4115. return DeletionProtectionOutcome(outcome.error());
  4116. }
  4117. void VpcClient::deletionProtectionAsync(const DeletionProtectionRequest& request, const DeletionProtectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4118. {
  4119. auto fn = [this, request, handler, context]()
  4120. {
  4121. handler(this, request, deletionProtection(request), context);
  4122. };
  4123. asyncExecute(new Runnable(fn));
  4124. }
  4125. VpcClient::DeletionProtectionOutcomeCallable VpcClient::deletionProtectionCallable(const DeletionProtectionRequest &request) const
  4126. {
  4127. auto task = std::make_shared<std::packaged_task<DeletionProtectionOutcome()>>(
  4128. [this, request]()
  4129. {
  4130. return this->deletionProtection(request);
  4131. });
  4132. asyncExecute(new Runnable([task]() { (*task)(); }));
  4133. return task->get_future();
  4134. }
  4135. VpcClient::DescribeAccessPointsOutcome VpcClient::describeAccessPoints(const DescribeAccessPointsRequest &request) const
  4136. {
  4137. auto endpointOutcome = endpointProvider_->getEndpoint();
  4138. if (!endpointOutcome.isSuccess())
  4139. return DescribeAccessPointsOutcome(endpointOutcome.error());
  4140. auto outcome = makeRequest(endpointOutcome.result(), request);
  4141. if (outcome.isSuccess())
  4142. return DescribeAccessPointsOutcome(DescribeAccessPointsResult(outcome.result()));
  4143. else
  4144. return DescribeAccessPointsOutcome(outcome.error());
  4145. }
  4146. void VpcClient::describeAccessPointsAsync(const DescribeAccessPointsRequest& request, const DescribeAccessPointsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4147. {
  4148. auto fn = [this, request, handler, context]()
  4149. {
  4150. handler(this, request, describeAccessPoints(request), context);
  4151. };
  4152. asyncExecute(new Runnable(fn));
  4153. }
  4154. VpcClient::DescribeAccessPointsOutcomeCallable VpcClient::describeAccessPointsCallable(const DescribeAccessPointsRequest &request) const
  4155. {
  4156. auto task = std::make_shared<std::packaged_task<DescribeAccessPointsOutcome()>>(
  4157. [this, request]()
  4158. {
  4159. return this->describeAccessPoints(request);
  4160. });
  4161. asyncExecute(new Runnable([task]() { (*task)(); }));
  4162. return task->get_future();
  4163. }
  4164. VpcClient::DescribeBgpGroupsOutcome VpcClient::describeBgpGroups(const DescribeBgpGroupsRequest &request) const
  4165. {
  4166. auto endpointOutcome = endpointProvider_->getEndpoint();
  4167. if (!endpointOutcome.isSuccess())
  4168. return DescribeBgpGroupsOutcome(endpointOutcome.error());
  4169. auto outcome = makeRequest(endpointOutcome.result(), request);
  4170. if (outcome.isSuccess())
  4171. return DescribeBgpGroupsOutcome(DescribeBgpGroupsResult(outcome.result()));
  4172. else
  4173. return DescribeBgpGroupsOutcome(outcome.error());
  4174. }
  4175. void VpcClient::describeBgpGroupsAsync(const DescribeBgpGroupsRequest& request, const DescribeBgpGroupsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4176. {
  4177. auto fn = [this, request, handler, context]()
  4178. {
  4179. handler(this, request, describeBgpGroups(request), context);
  4180. };
  4181. asyncExecute(new Runnable(fn));
  4182. }
  4183. VpcClient::DescribeBgpGroupsOutcomeCallable VpcClient::describeBgpGroupsCallable(const DescribeBgpGroupsRequest &request) const
  4184. {
  4185. auto task = std::make_shared<std::packaged_task<DescribeBgpGroupsOutcome()>>(
  4186. [this, request]()
  4187. {
  4188. return this->describeBgpGroups(request);
  4189. });
  4190. asyncExecute(new Runnable([task]() { (*task)(); }));
  4191. return task->get_future();
  4192. }
  4193. VpcClient::DescribeBgpNetworksOutcome VpcClient::describeBgpNetworks(const DescribeBgpNetworksRequest &request) const
  4194. {
  4195. auto endpointOutcome = endpointProvider_->getEndpoint();
  4196. if (!endpointOutcome.isSuccess())
  4197. return DescribeBgpNetworksOutcome(endpointOutcome.error());
  4198. auto outcome = makeRequest(endpointOutcome.result(), request);
  4199. if (outcome.isSuccess())
  4200. return DescribeBgpNetworksOutcome(DescribeBgpNetworksResult(outcome.result()));
  4201. else
  4202. return DescribeBgpNetworksOutcome(outcome.error());
  4203. }
  4204. void VpcClient::describeBgpNetworksAsync(const DescribeBgpNetworksRequest& request, const DescribeBgpNetworksAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4205. {
  4206. auto fn = [this, request, handler, context]()
  4207. {
  4208. handler(this, request, describeBgpNetworks(request), context);
  4209. };
  4210. asyncExecute(new Runnable(fn));
  4211. }
  4212. VpcClient::DescribeBgpNetworksOutcomeCallable VpcClient::describeBgpNetworksCallable(const DescribeBgpNetworksRequest &request) const
  4213. {
  4214. auto task = std::make_shared<std::packaged_task<DescribeBgpNetworksOutcome()>>(
  4215. [this, request]()
  4216. {
  4217. return this->describeBgpNetworks(request);
  4218. });
  4219. asyncExecute(new Runnable([task]() { (*task)(); }));
  4220. return task->get_future();
  4221. }
  4222. VpcClient::DescribeBgpPeersOutcome VpcClient::describeBgpPeers(const DescribeBgpPeersRequest &request) const
  4223. {
  4224. auto endpointOutcome = endpointProvider_->getEndpoint();
  4225. if (!endpointOutcome.isSuccess())
  4226. return DescribeBgpPeersOutcome(endpointOutcome.error());
  4227. auto outcome = makeRequest(endpointOutcome.result(), request);
  4228. if (outcome.isSuccess())
  4229. return DescribeBgpPeersOutcome(DescribeBgpPeersResult(outcome.result()));
  4230. else
  4231. return DescribeBgpPeersOutcome(outcome.error());
  4232. }
  4233. void VpcClient::describeBgpPeersAsync(const DescribeBgpPeersRequest& request, const DescribeBgpPeersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4234. {
  4235. auto fn = [this, request, handler, context]()
  4236. {
  4237. handler(this, request, describeBgpPeers(request), context);
  4238. };
  4239. asyncExecute(new Runnable(fn));
  4240. }
  4241. VpcClient::DescribeBgpPeersOutcomeCallable VpcClient::describeBgpPeersCallable(const DescribeBgpPeersRequest &request) const
  4242. {
  4243. auto task = std::make_shared<std::packaged_task<DescribeBgpPeersOutcome()>>(
  4244. [this, request]()
  4245. {
  4246. return this->describeBgpPeers(request);
  4247. });
  4248. asyncExecute(new Runnable([task]() { (*task)(); }));
  4249. return task->get_future();
  4250. }
  4251. VpcClient::DescribeCommonBandwidthPackagesOutcome VpcClient::describeCommonBandwidthPackages(const DescribeCommonBandwidthPackagesRequest &request) const
  4252. {
  4253. auto endpointOutcome = endpointProvider_->getEndpoint();
  4254. if (!endpointOutcome.isSuccess())
  4255. return DescribeCommonBandwidthPackagesOutcome(endpointOutcome.error());
  4256. auto outcome = makeRequest(endpointOutcome.result(), request);
  4257. if (outcome.isSuccess())
  4258. return DescribeCommonBandwidthPackagesOutcome(DescribeCommonBandwidthPackagesResult(outcome.result()));
  4259. else
  4260. return DescribeCommonBandwidthPackagesOutcome(outcome.error());
  4261. }
  4262. void VpcClient::describeCommonBandwidthPackagesAsync(const DescribeCommonBandwidthPackagesRequest& request, const DescribeCommonBandwidthPackagesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4263. {
  4264. auto fn = [this, request, handler, context]()
  4265. {
  4266. handler(this, request, describeCommonBandwidthPackages(request), context);
  4267. };
  4268. asyncExecute(new Runnable(fn));
  4269. }
  4270. VpcClient::DescribeCommonBandwidthPackagesOutcomeCallable VpcClient::describeCommonBandwidthPackagesCallable(const DescribeCommonBandwidthPackagesRequest &request) const
  4271. {
  4272. auto task = std::make_shared<std::packaged_task<DescribeCommonBandwidthPackagesOutcome()>>(
  4273. [this, request]()
  4274. {
  4275. return this->describeCommonBandwidthPackages(request);
  4276. });
  4277. asyncExecute(new Runnable([task]() { (*task)(); }));
  4278. return task->get_future();
  4279. }
  4280. VpcClient::DescribeCustomerGatewayOutcome VpcClient::describeCustomerGateway(const DescribeCustomerGatewayRequest &request) const
  4281. {
  4282. auto endpointOutcome = endpointProvider_->getEndpoint();
  4283. if (!endpointOutcome.isSuccess())
  4284. return DescribeCustomerGatewayOutcome(endpointOutcome.error());
  4285. auto outcome = makeRequest(endpointOutcome.result(), request);
  4286. if (outcome.isSuccess())
  4287. return DescribeCustomerGatewayOutcome(DescribeCustomerGatewayResult(outcome.result()));
  4288. else
  4289. return DescribeCustomerGatewayOutcome(outcome.error());
  4290. }
  4291. void VpcClient::describeCustomerGatewayAsync(const DescribeCustomerGatewayRequest& request, const DescribeCustomerGatewayAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4292. {
  4293. auto fn = [this, request, handler, context]()
  4294. {
  4295. handler(this, request, describeCustomerGateway(request), context);
  4296. };
  4297. asyncExecute(new Runnable(fn));
  4298. }
  4299. VpcClient::DescribeCustomerGatewayOutcomeCallable VpcClient::describeCustomerGatewayCallable(const DescribeCustomerGatewayRequest &request) const
  4300. {
  4301. auto task = std::make_shared<std::packaged_task<DescribeCustomerGatewayOutcome()>>(
  4302. [this, request]()
  4303. {
  4304. return this->describeCustomerGateway(request);
  4305. });
  4306. asyncExecute(new Runnable([task]() { (*task)(); }));
  4307. return task->get_future();
  4308. }
  4309. VpcClient::DescribeCustomerGatewaysOutcome VpcClient::describeCustomerGateways(const DescribeCustomerGatewaysRequest &request) const
  4310. {
  4311. auto endpointOutcome = endpointProvider_->getEndpoint();
  4312. if (!endpointOutcome.isSuccess())
  4313. return DescribeCustomerGatewaysOutcome(endpointOutcome.error());
  4314. auto outcome = makeRequest(endpointOutcome.result(), request);
  4315. if (outcome.isSuccess())
  4316. return DescribeCustomerGatewaysOutcome(DescribeCustomerGatewaysResult(outcome.result()));
  4317. else
  4318. return DescribeCustomerGatewaysOutcome(outcome.error());
  4319. }
  4320. void VpcClient::describeCustomerGatewaysAsync(const DescribeCustomerGatewaysRequest& request, const DescribeCustomerGatewaysAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4321. {
  4322. auto fn = [this, request, handler, context]()
  4323. {
  4324. handler(this, request, describeCustomerGateways(request), context);
  4325. };
  4326. asyncExecute(new Runnable(fn));
  4327. }
  4328. VpcClient::DescribeCustomerGatewaysOutcomeCallable VpcClient::describeCustomerGatewaysCallable(const DescribeCustomerGatewaysRequest &request) const
  4329. {
  4330. auto task = std::make_shared<std::packaged_task<DescribeCustomerGatewaysOutcome()>>(
  4331. [this, request]()
  4332. {
  4333. return this->describeCustomerGateways(request);
  4334. });
  4335. asyncExecute(new Runnable([task]() { (*task)(); }));
  4336. return task->get_future();
  4337. }
  4338. VpcClient::DescribeEcGrantRelationOutcome VpcClient::describeEcGrantRelation(const DescribeEcGrantRelationRequest &request) const
  4339. {
  4340. auto endpointOutcome = endpointProvider_->getEndpoint();
  4341. if (!endpointOutcome.isSuccess())
  4342. return DescribeEcGrantRelationOutcome(endpointOutcome.error());
  4343. auto outcome = makeRequest(endpointOutcome.result(), request);
  4344. if (outcome.isSuccess())
  4345. return DescribeEcGrantRelationOutcome(DescribeEcGrantRelationResult(outcome.result()));
  4346. else
  4347. return DescribeEcGrantRelationOutcome(outcome.error());
  4348. }
  4349. void VpcClient::describeEcGrantRelationAsync(const DescribeEcGrantRelationRequest& request, const DescribeEcGrantRelationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4350. {
  4351. auto fn = [this, request, handler, context]()
  4352. {
  4353. handler(this, request, describeEcGrantRelation(request), context);
  4354. };
  4355. asyncExecute(new Runnable(fn));
  4356. }
  4357. VpcClient::DescribeEcGrantRelationOutcomeCallable VpcClient::describeEcGrantRelationCallable(const DescribeEcGrantRelationRequest &request) const
  4358. {
  4359. auto task = std::make_shared<std::packaged_task<DescribeEcGrantRelationOutcome()>>(
  4360. [this, request]()
  4361. {
  4362. return this->describeEcGrantRelation(request);
  4363. });
  4364. asyncExecute(new Runnable([task]() { (*task)(); }));
  4365. return task->get_future();
  4366. }
  4367. VpcClient::DescribeEipAddressesOutcome VpcClient::describeEipAddresses(const DescribeEipAddressesRequest &request) const
  4368. {
  4369. auto endpointOutcome = endpointProvider_->getEndpoint();
  4370. if (!endpointOutcome.isSuccess())
  4371. return DescribeEipAddressesOutcome(endpointOutcome.error());
  4372. auto outcome = makeRequest(endpointOutcome.result(), request);
  4373. if (outcome.isSuccess())
  4374. return DescribeEipAddressesOutcome(DescribeEipAddressesResult(outcome.result()));
  4375. else
  4376. return DescribeEipAddressesOutcome(outcome.error());
  4377. }
  4378. void VpcClient::describeEipAddressesAsync(const DescribeEipAddressesRequest& request, const DescribeEipAddressesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4379. {
  4380. auto fn = [this, request, handler, context]()
  4381. {
  4382. handler(this, request, describeEipAddresses(request), context);
  4383. };
  4384. asyncExecute(new Runnable(fn));
  4385. }
  4386. VpcClient::DescribeEipAddressesOutcomeCallable VpcClient::describeEipAddressesCallable(const DescribeEipAddressesRequest &request) const
  4387. {
  4388. auto task = std::make_shared<std::packaged_task<DescribeEipAddressesOutcome()>>(
  4389. [this, request]()
  4390. {
  4391. return this->describeEipAddresses(request);
  4392. });
  4393. asyncExecute(new Runnable([task]() { (*task)(); }));
  4394. return task->get_future();
  4395. }
  4396. VpcClient::DescribeEipGatewayInfoOutcome VpcClient::describeEipGatewayInfo(const DescribeEipGatewayInfoRequest &request) const
  4397. {
  4398. auto endpointOutcome = endpointProvider_->getEndpoint();
  4399. if (!endpointOutcome.isSuccess())
  4400. return DescribeEipGatewayInfoOutcome(endpointOutcome.error());
  4401. auto outcome = makeRequest(endpointOutcome.result(), request);
  4402. if (outcome.isSuccess())
  4403. return DescribeEipGatewayInfoOutcome(DescribeEipGatewayInfoResult(outcome.result()));
  4404. else
  4405. return DescribeEipGatewayInfoOutcome(outcome.error());
  4406. }
  4407. void VpcClient::describeEipGatewayInfoAsync(const DescribeEipGatewayInfoRequest& request, const DescribeEipGatewayInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4408. {
  4409. auto fn = [this, request, handler, context]()
  4410. {
  4411. handler(this, request, describeEipGatewayInfo(request), context);
  4412. };
  4413. asyncExecute(new Runnable(fn));
  4414. }
  4415. VpcClient::DescribeEipGatewayInfoOutcomeCallable VpcClient::describeEipGatewayInfoCallable(const DescribeEipGatewayInfoRequest &request) const
  4416. {
  4417. auto task = std::make_shared<std::packaged_task<DescribeEipGatewayInfoOutcome()>>(
  4418. [this, request]()
  4419. {
  4420. return this->describeEipGatewayInfo(request);
  4421. });
  4422. asyncExecute(new Runnable([task]() { (*task)(); }));
  4423. return task->get_future();
  4424. }
  4425. VpcClient::DescribeEipMonitorDataOutcome VpcClient::describeEipMonitorData(const DescribeEipMonitorDataRequest &request) const
  4426. {
  4427. auto endpointOutcome = endpointProvider_->getEndpoint();
  4428. if (!endpointOutcome.isSuccess())
  4429. return DescribeEipMonitorDataOutcome(endpointOutcome.error());
  4430. auto outcome = makeRequest(endpointOutcome.result(), request);
  4431. if (outcome.isSuccess())
  4432. return DescribeEipMonitorDataOutcome(DescribeEipMonitorDataResult(outcome.result()));
  4433. else
  4434. return DescribeEipMonitorDataOutcome(outcome.error());
  4435. }
  4436. void VpcClient::describeEipMonitorDataAsync(const DescribeEipMonitorDataRequest& request, const DescribeEipMonitorDataAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4437. {
  4438. auto fn = [this, request, handler, context]()
  4439. {
  4440. handler(this, request, describeEipMonitorData(request), context);
  4441. };
  4442. asyncExecute(new Runnable(fn));
  4443. }
  4444. VpcClient::DescribeEipMonitorDataOutcomeCallable VpcClient::describeEipMonitorDataCallable(const DescribeEipMonitorDataRequest &request) const
  4445. {
  4446. auto task = std::make_shared<std::packaged_task<DescribeEipMonitorDataOutcome()>>(
  4447. [this, request]()
  4448. {
  4449. return this->describeEipMonitorData(request);
  4450. });
  4451. asyncExecute(new Runnable([task]() { (*task)(); }));
  4452. return task->get_future();
  4453. }
  4454. VpcClient::DescribeEipSegmentOutcome VpcClient::describeEipSegment(const DescribeEipSegmentRequest &request) const
  4455. {
  4456. auto endpointOutcome = endpointProvider_->getEndpoint();
  4457. if (!endpointOutcome.isSuccess())
  4458. return DescribeEipSegmentOutcome(endpointOutcome.error());
  4459. auto outcome = makeRequest(endpointOutcome.result(), request);
  4460. if (outcome.isSuccess())
  4461. return DescribeEipSegmentOutcome(DescribeEipSegmentResult(outcome.result()));
  4462. else
  4463. return DescribeEipSegmentOutcome(outcome.error());
  4464. }
  4465. void VpcClient::describeEipSegmentAsync(const DescribeEipSegmentRequest& request, const DescribeEipSegmentAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4466. {
  4467. auto fn = [this, request, handler, context]()
  4468. {
  4469. handler(this, request, describeEipSegment(request), context);
  4470. };
  4471. asyncExecute(new Runnable(fn));
  4472. }
  4473. VpcClient::DescribeEipSegmentOutcomeCallable VpcClient::describeEipSegmentCallable(const DescribeEipSegmentRequest &request) const
  4474. {
  4475. auto task = std::make_shared<std::packaged_task<DescribeEipSegmentOutcome()>>(
  4476. [this, request]()
  4477. {
  4478. return this->describeEipSegment(request);
  4479. });
  4480. asyncExecute(new Runnable([task]() { (*task)(); }));
  4481. return task->get_future();
  4482. }
  4483. VpcClient::DescribeFlowLogsOutcome VpcClient::describeFlowLogs(const DescribeFlowLogsRequest &request) const
  4484. {
  4485. auto endpointOutcome = endpointProvider_->getEndpoint();
  4486. if (!endpointOutcome.isSuccess())
  4487. return DescribeFlowLogsOutcome(endpointOutcome.error());
  4488. auto outcome = makeRequest(endpointOutcome.result(), request);
  4489. if (outcome.isSuccess())
  4490. return DescribeFlowLogsOutcome(DescribeFlowLogsResult(outcome.result()));
  4491. else
  4492. return DescribeFlowLogsOutcome(outcome.error());
  4493. }
  4494. void VpcClient::describeFlowLogsAsync(const DescribeFlowLogsRequest& request, const DescribeFlowLogsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4495. {
  4496. auto fn = [this, request, handler, context]()
  4497. {
  4498. handler(this, request, describeFlowLogs(request), context);
  4499. };
  4500. asyncExecute(new Runnable(fn));
  4501. }
  4502. VpcClient::DescribeFlowLogsOutcomeCallable VpcClient::describeFlowLogsCallable(const DescribeFlowLogsRequest &request) const
  4503. {
  4504. auto task = std::make_shared<std::packaged_task<DescribeFlowLogsOutcome()>>(
  4505. [this, request]()
  4506. {
  4507. return this->describeFlowLogs(request);
  4508. });
  4509. asyncExecute(new Runnable([task]() { (*task)(); }));
  4510. return task->get_future();
  4511. }
  4512. VpcClient::DescribeForwardTableEntriesOutcome VpcClient::describeForwardTableEntries(const DescribeForwardTableEntriesRequest &request) const
  4513. {
  4514. auto endpointOutcome = endpointProvider_->getEndpoint();
  4515. if (!endpointOutcome.isSuccess())
  4516. return DescribeForwardTableEntriesOutcome(endpointOutcome.error());
  4517. auto outcome = makeRequest(endpointOutcome.result(), request);
  4518. if (outcome.isSuccess())
  4519. return DescribeForwardTableEntriesOutcome(DescribeForwardTableEntriesResult(outcome.result()));
  4520. else
  4521. return DescribeForwardTableEntriesOutcome(outcome.error());
  4522. }
  4523. void VpcClient::describeForwardTableEntriesAsync(const DescribeForwardTableEntriesRequest& request, const DescribeForwardTableEntriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4524. {
  4525. auto fn = [this, request, handler, context]()
  4526. {
  4527. handler(this, request, describeForwardTableEntries(request), context);
  4528. };
  4529. asyncExecute(new Runnable(fn));
  4530. }
  4531. VpcClient::DescribeForwardTableEntriesOutcomeCallable VpcClient::describeForwardTableEntriesCallable(const DescribeForwardTableEntriesRequest &request) const
  4532. {
  4533. auto task = std::make_shared<std::packaged_task<DescribeForwardTableEntriesOutcome()>>(
  4534. [this, request]()
  4535. {
  4536. return this->describeForwardTableEntries(request);
  4537. });
  4538. asyncExecute(new Runnable([task]() { (*task)(); }));
  4539. return task->get_future();
  4540. }
  4541. VpcClient::DescribeGlobalAccelerationInstancesOutcome VpcClient::describeGlobalAccelerationInstances(const DescribeGlobalAccelerationInstancesRequest &request) const
  4542. {
  4543. auto endpointOutcome = endpointProvider_->getEndpoint();
  4544. if (!endpointOutcome.isSuccess())
  4545. return DescribeGlobalAccelerationInstancesOutcome(endpointOutcome.error());
  4546. auto outcome = makeRequest(endpointOutcome.result(), request);
  4547. if (outcome.isSuccess())
  4548. return DescribeGlobalAccelerationInstancesOutcome(DescribeGlobalAccelerationInstancesResult(outcome.result()));
  4549. else
  4550. return DescribeGlobalAccelerationInstancesOutcome(outcome.error());
  4551. }
  4552. void VpcClient::describeGlobalAccelerationInstancesAsync(const DescribeGlobalAccelerationInstancesRequest& request, const DescribeGlobalAccelerationInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4553. {
  4554. auto fn = [this, request, handler, context]()
  4555. {
  4556. handler(this, request, describeGlobalAccelerationInstances(request), context);
  4557. };
  4558. asyncExecute(new Runnable(fn));
  4559. }
  4560. VpcClient::DescribeGlobalAccelerationInstancesOutcomeCallable VpcClient::describeGlobalAccelerationInstancesCallable(const DescribeGlobalAccelerationInstancesRequest &request) const
  4561. {
  4562. auto task = std::make_shared<std::packaged_task<DescribeGlobalAccelerationInstancesOutcome()>>(
  4563. [this, request]()
  4564. {
  4565. return this->describeGlobalAccelerationInstances(request);
  4566. });
  4567. asyncExecute(new Runnable([task]() { (*task)(); }));
  4568. return task->get_future();
  4569. }
  4570. VpcClient::DescribeGrantRulesToCenOutcome VpcClient::describeGrantRulesToCen(const DescribeGrantRulesToCenRequest &request) const
  4571. {
  4572. auto endpointOutcome = endpointProvider_->getEndpoint();
  4573. if (!endpointOutcome.isSuccess())
  4574. return DescribeGrantRulesToCenOutcome(endpointOutcome.error());
  4575. auto outcome = makeRequest(endpointOutcome.result(), request);
  4576. if (outcome.isSuccess())
  4577. return DescribeGrantRulesToCenOutcome(DescribeGrantRulesToCenResult(outcome.result()));
  4578. else
  4579. return DescribeGrantRulesToCenOutcome(outcome.error());
  4580. }
  4581. void VpcClient::describeGrantRulesToCenAsync(const DescribeGrantRulesToCenRequest& request, const DescribeGrantRulesToCenAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4582. {
  4583. auto fn = [this, request, handler, context]()
  4584. {
  4585. handler(this, request, describeGrantRulesToCen(request), context);
  4586. };
  4587. asyncExecute(new Runnable(fn));
  4588. }
  4589. VpcClient::DescribeGrantRulesToCenOutcomeCallable VpcClient::describeGrantRulesToCenCallable(const DescribeGrantRulesToCenRequest &request) const
  4590. {
  4591. auto task = std::make_shared<std::packaged_task<DescribeGrantRulesToCenOutcome()>>(
  4592. [this, request]()
  4593. {
  4594. return this->describeGrantRulesToCen(request);
  4595. });
  4596. asyncExecute(new Runnable([task]() { (*task)(); }));
  4597. return task->get_future();
  4598. }
  4599. VpcClient::DescribeHaVipsOutcome VpcClient::describeHaVips(const DescribeHaVipsRequest &request) const
  4600. {
  4601. auto endpointOutcome = endpointProvider_->getEndpoint();
  4602. if (!endpointOutcome.isSuccess())
  4603. return DescribeHaVipsOutcome(endpointOutcome.error());
  4604. auto outcome = makeRequest(endpointOutcome.result(), request);
  4605. if (outcome.isSuccess())
  4606. return DescribeHaVipsOutcome(DescribeHaVipsResult(outcome.result()));
  4607. else
  4608. return DescribeHaVipsOutcome(outcome.error());
  4609. }
  4610. void VpcClient::describeHaVipsAsync(const DescribeHaVipsRequest& request, const DescribeHaVipsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4611. {
  4612. auto fn = [this, request, handler, context]()
  4613. {
  4614. handler(this, request, describeHaVips(request), context);
  4615. };
  4616. asyncExecute(new Runnable(fn));
  4617. }
  4618. VpcClient::DescribeHaVipsOutcomeCallable VpcClient::describeHaVipsCallable(const DescribeHaVipsRequest &request) const
  4619. {
  4620. auto task = std::make_shared<std::packaged_task<DescribeHaVipsOutcome()>>(
  4621. [this, request]()
  4622. {
  4623. return this->describeHaVips(request);
  4624. });
  4625. asyncExecute(new Runnable([task]() { (*task)(); }));
  4626. return task->get_future();
  4627. }
  4628. VpcClient::DescribeHighDefinitionMonitorLogAttributeOutcome VpcClient::describeHighDefinitionMonitorLogAttribute(const DescribeHighDefinitionMonitorLogAttributeRequest &request) const
  4629. {
  4630. auto endpointOutcome = endpointProvider_->getEndpoint();
  4631. if (!endpointOutcome.isSuccess())
  4632. return DescribeHighDefinitionMonitorLogAttributeOutcome(endpointOutcome.error());
  4633. auto outcome = makeRequest(endpointOutcome.result(), request);
  4634. if (outcome.isSuccess())
  4635. return DescribeHighDefinitionMonitorLogAttributeOutcome(DescribeHighDefinitionMonitorLogAttributeResult(outcome.result()));
  4636. else
  4637. return DescribeHighDefinitionMonitorLogAttributeOutcome(outcome.error());
  4638. }
  4639. void VpcClient::describeHighDefinitionMonitorLogAttributeAsync(const DescribeHighDefinitionMonitorLogAttributeRequest& request, const DescribeHighDefinitionMonitorLogAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4640. {
  4641. auto fn = [this, request, handler, context]()
  4642. {
  4643. handler(this, request, describeHighDefinitionMonitorLogAttribute(request), context);
  4644. };
  4645. asyncExecute(new Runnable(fn));
  4646. }
  4647. VpcClient::DescribeHighDefinitionMonitorLogAttributeOutcomeCallable VpcClient::describeHighDefinitionMonitorLogAttributeCallable(const DescribeHighDefinitionMonitorLogAttributeRequest &request) const
  4648. {
  4649. auto task = std::make_shared<std::packaged_task<DescribeHighDefinitionMonitorLogAttributeOutcome()>>(
  4650. [this, request]()
  4651. {
  4652. return this->describeHighDefinitionMonitorLogAttribute(request);
  4653. });
  4654. asyncExecute(new Runnable([task]() { (*task)(); }));
  4655. return task->get_future();
  4656. }
  4657. VpcClient::DescribeIPv6TranslatorAclListAttributesOutcome VpcClient::describeIPv6TranslatorAclListAttributes(const DescribeIPv6TranslatorAclListAttributesRequest &request) const
  4658. {
  4659. auto endpointOutcome = endpointProvider_->getEndpoint();
  4660. if (!endpointOutcome.isSuccess())
  4661. return DescribeIPv6TranslatorAclListAttributesOutcome(endpointOutcome.error());
  4662. auto outcome = makeRequest(endpointOutcome.result(), request);
  4663. if (outcome.isSuccess())
  4664. return DescribeIPv6TranslatorAclListAttributesOutcome(DescribeIPv6TranslatorAclListAttributesResult(outcome.result()));
  4665. else
  4666. return DescribeIPv6TranslatorAclListAttributesOutcome(outcome.error());
  4667. }
  4668. void VpcClient::describeIPv6TranslatorAclListAttributesAsync(const DescribeIPv6TranslatorAclListAttributesRequest& request, const DescribeIPv6TranslatorAclListAttributesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4669. {
  4670. auto fn = [this, request, handler, context]()
  4671. {
  4672. handler(this, request, describeIPv6TranslatorAclListAttributes(request), context);
  4673. };
  4674. asyncExecute(new Runnable(fn));
  4675. }
  4676. VpcClient::DescribeIPv6TranslatorAclListAttributesOutcomeCallable VpcClient::describeIPv6TranslatorAclListAttributesCallable(const DescribeIPv6TranslatorAclListAttributesRequest &request) const
  4677. {
  4678. auto task = std::make_shared<std::packaged_task<DescribeIPv6TranslatorAclListAttributesOutcome()>>(
  4679. [this, request]()
  4680. {
  4681. return this->describeIPv6TranslatorAclListAttributes(request);
  4682. });
  4683. asyncExecute(new Runnable([task]() { (*task)(); }));
  4684. return task->get_future();
  4685. }
  4686. VpcClient::DescribeIPv6TranslatorAclListsOutcome VpcClient::describeIPv6TranslatorAclLists(const DescribeIPv6TranslatorAclListsRequest &request) const
  4687. {
  4688. auto endpointOutcome = endpointProvider_->getEndpoint();
  4689. if (!endpointOutcome.isSuccess())
  4690. return DescribeIPv6TranslatorAclListsOutcome(endpointOutcome.error());
  4691. auto outcome = makeRequest(endpointOutcome.result(), request);
  4692. if (outcome.isSuccess())
  4693. return DescribeIPv6TranslatorAclListsOutcome(DescribeIPv6TranslatorAclListsResult(outcome.result()));
  4694. else
  4695. return DescribeIPv6TranslatorAclListsOutcome(outcome.error());
  4696. }
  4697. void VpcClient::describeIPv6TranslatorAclListsAsync(const DescribeIPv6TranslatorAclListsRequest& request, const DescribeIPv6TranslatorAclListsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4698. {
  4699. auto fn = [this, request, handler, context]()
  4700. {
  4701. handler(this, request, describeIPv6TranslatorAclLists(request), context);
  4702. };
  4703. asyncExecute(new Runnable(fn));
  4704. }
  4705. VpcClient::DescribeIPv6TranslatorAclListsOutcomeCallable VpcClient::describeIPv6TranslatorAclListsCallable(const DescribeIPv6TranslatorAclListsRequest &request) const
  4706. {
  4707. auto task = std::make_shared<std::packaged_task<DescribeIPv6TranslatorAclListsOutcome()>>(
  4708. [this, request]()
  4709. {
  4710. return this->describeIPv6TranslatorAclLists(request);
  4711. });
  4712. asyncExecute(new Runnable([task]() { (*task)(); }));
  4713. return task->get_future();
  4714. }
  4715. VpcClient::DescribeIPv6TranslatorEntriesOutcome VpcClient::describeIPv6TranslatorEntries(const DescribeIPv6TranslatorEntriesRequest &request) const
  4716. {
  4717. auto endpointOutcome = endpointProvider_->getEndpoint();
  4718. if (!endpointOutcome.isSuccess())
  4719. return DescribeIPv6TranslatorEntriesOutcome(endpointOutcome.error());
  4720. auto outcome = makeRequest(endpointOutcome.result(), request);
  4721. if (outcome.isSuccess())
  4722. return DescribeIPv6TranslatorEntriesOutcome(DescribeIPv6TranslatorEntriesResult(outcome.result()));
  4723. else
  4724. return DescribeIPv6TranslatorEntriesOutcome(outcome.error());
  4725. }
  4726. void VpcClient::describeIPv6TranslatorEntriesAsync(const DescribeIPv6TranslatorEntriesRequest& request, const DescribeIPv6TranslatorEntriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4727. {
  4728. auto fn = [this, request, handler, context]()
  4729. {
  4730. handler(this, request, describeIPv6TranslatorEntries(request), context);
  4731. };
  4732. asyncExecute(new Runnable(fn));
  4733. }
  4734. VpcClient::DescribeIPv6TranslatorEntriesOutcomeCallable VpcClient::describeIPv6TranslatorEntriesCallable(const DescribeIPv6TranslatorEntriesRequest &request) const
  4735. {
  4736. auto task = std::make_shared<std::packaged_task<DescribeIPv6TranslatorEntriesOutcome()>>(
  4737. [this, request]()
  4738. {
  4739. return this->describeIPv6TranslatorEntries(request);
  4740. });
  4741. asyncExecute(new Runnable([task]() { (*task)(); }));
  4742. return task->get_future();
  4743. }
  4744. VpcClient::DescribeIPv6TranslatorsOutcome VpcClient::describeIPv6Translators(const DescribeIPv6TranslatorsRequest &request) const
  4745. {
  4746. auto endpointOutcome = endpointProvider_->getEndpoint();
  4747. if (!endpointOutcome.isSuccess())
  4748. return DescribeIPv6TranslatorsOutcome(endpointOutcome.error());
  4749. auto outcome = makeRequest(endpointOutcome.result(), request);
  4750. if (outcome.isSuccess())
  4751. return DescribeIPv6TranslatorsOutcome(DescribeIPv6TranslatorsResult(outcome.result()));
  4752. else
  4753. return DescribeIPv6TranslatorsOutcome(outcome.error());
  4754. }
  4755. void VpcClient::describeIPv6TranslatorsAsync(const DescribeIPv6TranslatorsRequest& request, const DescribeIPv6TranslatorsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4756. {
  4757. auto fn = [this, request, handler, context]()
  4758. {
  4759. handler(this, request, describeIPv6Translators(request), context);
  4760. };
  4761. asyncExecute(new Runnable(fn));
  4762. }
  4763. VpcClient::DescribeIPv6TranslatorsOutcomeCallable VpcClient::describeIPv6TranslatorsCallable(const DescribeIPv6TranslatorsRequest &request) const
  4764. {
  4765. auto task = std::make_shared<std::packaged_task<DescribeIPv6TranslatorsOutcome()>>(
  4766. [this, request]()
  4767. {
  4768. return this->describeIPv6Translators(request);
  4769. });
  4770. asyncExecute(new Runnable([task]() { (*task)(); }));
  4771. return task->get_future();
  4772. }
  4773. VpcClient::DescribeIpv6AddressesOutcome VpcClient::describeIpv6Addresses(const DescribeIpv6AddressesRequest &request) const
  4774. {
  4775. auto endpointOutcome = endpointProvider_->getEndpoint();
  4776. if (!endpointOutcome.isSuccess())
  4777. return DescribeIpv6AddressesOutcome(endpointOutcome.error());
  4778. auto outcome = makeRequest(endpointOutcome.result(), request);
  4779. if (outcome.isSuccess())
  4780. return DescribeIpv6AddressesOutcome(DescribeIpv6AddressesResult(outcome.result()));
  4781. else
  4782. return DescribeIpv6AddressesOutcome(outcome.error());
  4783. }
  4784. void VpcClient::describeIpv6AddressesAsync(const DescribeIpv6AddressesRequest& request, const DescribeIpv6AddressesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4785. {
  4786. auto fn = [this, request, handler, context]()
  4787. {
  4788. handler(this, request, describeIpv6Addresses(request), context);
  4789. };
  4790. asyncExecute(new Runnable(fn));
  4791. }
  4792. VpcClient::DescribeIpv6AddressesOutcomeCallable VpcClient::describeIpv6AddressesCallable(const DescribeIpv6AddressesRequest &request) const
  4793. {
  4794. auto task = std::make_shared<std::packaged_task<DescribeIpv6AddressesOutcome()>>(
  4795. [this, request]()
  4796. {
  4797. return this->describeIpv6Addresses(request);
  4798. });
  4799. asyncExecute(new Runnable([task]() { (*task)(); }));
  4800. return task->get_future();
  4801. }
  4802. VpcClient::DescribeIpv6EgressOnlyRulesOutcome VpcClient::describeIpv6EgressOnlyRules(const DescribeIpv6EgressOnlyRulesRequest &request) const
  4803. {
  4804. auto endpointOutcome = endpointProvider_->getEndpoint();
  4805. if (!endpointOutcome.isSuccess())
  4806. return DescribeIpv6EgressOnlyRulesOutcome(endpointOutcome.error());
  4807. auto outcome = makeRequest(endpointOutcome.result(), request);
  4808. if (outcome.isSuccess())
  4809. return DescribeIpv6EgressOnlyRulesOutcome(DescribeIpv6EgressOnlyRulesResult(outcome.result()));
  4810. else
  4811. return DescribeIpv6EgressOnlyRulesOutcome(outcome.error());
  4812. }
  4813. void VpcClient::describeIpv6EgressOnlyRulesAsync(const DescribeIpv6EgressOnlyRulesRequest& request, const DescribeIpv6EgressOnlyRulesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4814. {
  4815. auto fn = [this, request, handler, context]()
  4816. {
  4817. handler(this, request, describeIpv6EgressOnlyRules(request), context);
  4818. };
  4819. asyncExecute(new Runnable(fn));
  4820. }
  4821. VpcClient::DescribeIpv6EgressOnlyRulesOutcomeCallable VpcClient::describeIpv6EgressOnlyRulesCallable(const DescribeIpv6EgressOnlyRulesRequest &request) const
  4822. {
  4823. auto task = std::make_shared<std::packaged_task<DescribeIpv6EgressOnlyRulesOutcome()>>(
  4824. [this, request]()
  4825. {
  4826. return this->describeIpv6EgressOnlyRules(request);
  4827. });
  4828. asyncExecute(new Runnable([task]() { (*task)(); }));
  4829. return task->get_future();
  4830. }
  4831. VpcClient::DescribeIpv6GatewayAttributeOutcome VpcClient::describeIpv6GatewayAttribute(const DescribeIpv6GatewayAttributeRequest &request) const
  4832. {
  4833. auto endpointOutcome = endpointProvider_->getEndpoint();
  4834. if (!endpointOutcome.isSuccess())
  4835. return DescribeIpv6GatewayAttributeOutcome(endpointOutcome.error());
  4836. auto outcome = makeRequest(endpointOutcome.result(), request);
  4837. if (outcome.isSuccess())
  4838. return DescribeIpv6GatewayAttributeOutcome(DescribeIpv6GatewayAttributeResult(outcome.result()));
  4839. else
  4840. return DescribeIpv6GatewayAttributeOutcome(outcome.error());
  4841. }
  4842. void VpcClient::describeIpv6GatewayAttributeAsync(const DescribeIpv6GatewayAttributeRequest& request, const DescribeIpv6GatewayAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4843. {
  4844. auto fn = [this, request, handler, context]()
  4845. {
  4846. handler(this, request, describeIpv6GatewayAttribute(request), context);
  4847. };
  4848. asyncExecute(new Runnable(fn));
  4849. }
  4850. VpcClient::DescribeIpv6GatewayAttributeOutcomeCallable VpcClient::describeIpv6GatewayAttributeCallable(const DescribeIpv6GatewayAttributeRequest &request) const
  4851. {
  4852. auto task = std::make_shared<std::packaged_task<DescribeIpv6GatewayAttributeOutcome()>>(
  4853. [this, request]()
  4854. {
  4855. return this->describeIpv6GatewayAttribute(request);
  4856. });
  4857. asyncExecute(new Runnable([task]() { (*task)(); }));
  4858. return task->get_future();
  4859. }
  4860. VpcClient::DescribeIpv6GatewaysOutcome VpcClient::describeIpv6Gateways(const DescribeIpv6GatewaysRequest &request) const
  4861. {
  4862. auto endpointOutcome = endpointProvider_->getEndpoint();
  4863. if (!endpointOutcome.isSuccess())
  4864. return DescribeIpv6GatewaysOutcome(endpointOutcome.error());
  4865. auto outcome = makeRequest(endpointOutcome.result(), request);
  4866. if (outcome.isSuccess())
  4867. return DescribeIpv6GatewaysOutcome(DescribeIpv6GatewaysResult(outcome.result()));
  4868. else
  4869. return DescribeIpv6GatewaysOutcome(outcome.error());
  4870. }
  4871. void VpcClient::describeIpv6GatewaysAsync(const DescribeIpv6GatewaysRequest& request, const DescribeIpv6GatewaysAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4872. {
  4873. auto fn = [this, request, handler, context]()
  4874. {
  4875. handler(this, request, describeIpv6Gateways(request), context);
  4876. };
  4877. asyncExecute(new Runnable(fn));
  4878. }
  4879. VpcClient::DescribeIpv6GatewaysOutcomeCallable VpcClient::describeIpv6GatewaysCallable(const DescribeIpv6GatewaysRequest &request) const
  4880. {
  4881. auto task = std::make_shared<std::packaged_task<DescribeIpv6GatewaysOutcome()>>(
  4882. [this, request]()
  4883. {
  4884. return this->describeIpv6Gateways(request);
  4885. });
  4886. asyncExecute(new Runnable([task]() { (*task)(); }));
  4887. return task->get_future();
  4888. }
  4889. VpcClient::DescribeNatGatewaysOutcome VpcClient::describeNatGateways(const DescribeNatGatewaysRequest &request) const
  4890. {
  4891. auto endpointOutcome = endpointProvider_->getEndpoint();
  4892. if (!endpointOutcome.isSuccess())
  4893. return DescribeNatGatewaysOutcome(endpointOutcome.error());
  4894. auto outcome = makeRequest(endpointOutcome.result(), request);
  4895. if (outcome.isSuccess())
  4896. return DescribeNatGatewaysOutcome(DescribeNatGatewaysResult(outcome.result()));
  4897. else
  4898. return DescribeNatGatewaysOutcome(outcome.error());
  4899. }
  4900. void VpcClient::describeNatGatewaysAsync(const DescribeNatGatewaysRequest& request, const DescribeNatGatewaysAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4901. {
  4902. auto fn = [this, request, handler, context]()
  4903. {
  4904. handler(this, request, describeNatGateways(request), context);
  4905. };
  4906. asyncExecute(new Runnable(fn));
  4907. }
  4908. VpcClient::DescribeNatGatewaysOutcomeCallable VpcClient::describeNatGatewaysCallable(const DescribeNatGatewaysRequest &request) const
  4909. {
  4910. auto task = std::make_shared<std::packaged_task<DescribeNatGatewaysOutcome()>>(
  4911. [this, request]()
  4912. {
  4913. return this->describeNatGateways(request);
  4914. });
  4915. asyncExecute(new Runnable([task]() { (*task)(); }));
  4916. return task->get_future();
  4917. }
  4918. VpcClient::DescribeNetworkAclAttributesOutcome VpcClient::describeNetworkAclAttributes(const DescribeNetworkAclAttributesRequest &request) const
  4919. {
  4920. auto endpointOutcome = endpointProvider_->getEndpoint();
  4921. if (!endpointOutcome.isSuccess())
  4922. return DescribeNetworkAclAttributesOutcome(endpointOutcome.error());
  4923. auto outcome = makeRequest(endpointOutcome.result(), request);
  4924. if (outcome.isSuccess())
  4925. return DescribeNetworkAclAttributesOutcome(DescribeNetworkAclAttributesResult(outcome.result()));
  4926. else
  4927. return DescribeNetworkAclAttributesOutcome(outcome.error());
  4928. }
  4929. void VpcClient::describeNetworkAclAttributesAsync(const DescribeNetworkAclAttributesRequest& request, const DescribeNetworkAclAttributesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4930. {
  4931. auto fn = [this, request, handler, context]()
  4932. {
  4933. handler(this, request, describeNetworkAclAttributes(request), context);
  4934. };
  4935. asyncExecute(new Runnable(fn));
  4936. }
  4937. VpcClient::DescribeNetworkAclAttributesOutcomeCallable VpcClient::describeNetworkAclAttributesCallable(const DescribeNetworkAclAttributesRequest &request) const
  4938. {
  4939. auto task = std::make_shared<std::packaged_task<DescribeNetworkAclAttributesOutcome()>>(
  4940. [this, request]()
  4941. {
  4942. return this->describeNetworkAclAttributes(request);
  4943. });
  4944. asyncExecute(new Runnable([task]() { (*task)(); }));
  4945. return task->get_future();
  4946. }
  4947. VpcClient::DescribeNetworkAclsOutcome VpcClient::describeNetworkAcls(const DescribeNetworkAclsRequest &request) const
  4948. {
  4949. auto endpointOutcome = endpointProvider_->getEndpoint();
  4950. if (!endpointOutcome.isSuccess())
  4951. return DescribeNetworkAclsOutcome(endpointOutcome.error());
  4952. auto outcome = makeRequest(endpointOutcome.result(), request);
  4953. if (outcome.isSuccess())
  4954. return DescribeNetworkAclsOutcome(DescribeNetworkAclsResult(outcome.result()));
  4955. else
  4956. return DescribeNetworkAclsOutcome(outcome.error());
  4957. }
  4958. void VpcClient::describeNetworkAclsAsync(const DescribeNetworkAclsRequest& request, const DescribeNetworkAclsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4959. {
  4960. auto fn = [this, request, handler, context]()
  4961. {
  4962. handler(this, request, describeNetworkAcls(request), context);
  4963. };
  4964. asyncExecute(new Runnable(fn));
  4965. }
  4966. VpcClient::DescribeNetworkAclsOutcomeCallable VpcClient::describeNetworkAclsCallable(const DescribeNetworkAclsRequest &request) const
  4967. {
  4968. auto task = std::make_shared<std::packaged_task<DescribeNetworkAclsOutcome()>>(
  4969. [this, request]()
  4970. {
  4971. return this->describeNetworkAcls(request);
  4972. });
  4973. asyncExecute(new Runnable([task]() { (*task)(); }));
  4974. return task->get_future();
  4975. }
  4976. VpcClient::DescribePhysicalConnectionLOAOutcome VpcClient::describePhysicalConnectionLOA(const DescribePhysicalConnectionLOARequest &request) const
  4977. {
  4978. auto endpointOutcome = endpointProvider_->getEndpoint();
  4979. if (!endpointOutcome.isSuccess())
  4980. return DescribePhysicalConnectionLOAOutcome(endpointOutcome.error());
  4981. auto outcome = makeRequest(endpointOutcome.result(), request);
  4982. if (outcome.isSuccess())
  4983. return DescribePhysicalConnectionLOAOutcome(DescribePhysicalConnectionLOAResult(outcome.result()));
  4984. else
  4985. return DescribePhysicalConnectionLOAOutcome(outcome.error());
  4986. }
  4987. void VpcClient::describePhysicalConnectionLOAAsync(const DescribePhysicalConnectionLOARequest& request, const DescribePhysicalConnectionLOAAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  4988. {
  4989. auto fn = [this, request, handler, context]()
  4990. {
  4991. handler(this, request, describePhysicalConnectionLOA(request), context);
  4992. };
  4993. asyncExecute(new Runnable(fn));
  4994. }
  4995. VpcClient::DescribePhysicalConnectionLOAOutcomeCallable VpcClient::describePhysicalConnectionLOACallable(const DescribePhysicalConnectionLOARequest &request) const
  4996. {
  4997. auto task = std::make_shared<std::packaged_task<DescribePhysicalConnectionLOAOutcome()>>(
  4998. [this, request]()
  4999. {
  5000. return this->describePhysicalConnectionLOA(request);
  5001. });
  5002. asyncExecute(new Runnable([task]() { (*task)(); }));
  5003. return task->get_future();
  5004. }
  5005. VpcClient::DescribePhysicalConnectionsOutcome VpcClient::describePhysicalConnections(const DescribePhysicalConnectionsRequest &request) const
  5006. {
  5007. auto endpointOutcome = endpointProvider_->getEndpoint();
  5008. if (!endpointOutcome.isSuccess())
  5009. return DescribePhysicalConnectionsOutcome(endpointOutcome.error());
  5010. auto outcome = makeRequest(endpointOutcome.result(), request);
  5011. if (outcome.isSuccess())
  5012. return DescribePhysicalConnectionsOutcome(DescribePhysicalConnectionsResult(outcome.result()));
  5013. else
  5014. return DescribePhysicalConnectionsOutcome(outcome.error());
  5015. }
  5016. void VpcClient::describePhysicalConnectionsAsync(const DescribePhysicalConnectionsRequest& request, const DescribePhysicalConnectionsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5017. {
  5018. auto fn = [this, request, handler, context]()
  5019. {
  5020. handler(this, request, describePhysicalConnections(request), context);
  5021. };
  5022. asyncExecute(new Runnable(fn));
  5023. }
  5024. VpcClient::DescribePhysicalConnectionsOutcomeCallable VpcClient::describePhysicalConnectionsCallable(const DescribePhysicalConnectionsRequest &request) const
  5025. {
  5026. auto task = std::make_shared<std::packaged_task<DescribePhysicalConnectionsOutcome()>>(
  5027. [this, request]()
  5028. {
  5029. return this->describePhysicalConnections(request);
  5030. });
  5031. asyncExecute(new Runnable([task]() { (*task)(); }));
  5032. return task->get_future();
  5033. }
  5034. VpcClient::DescribePublicIpAddressOutcome VpcClient::describePublicIpAddress(const DescribePublicIpAddressRequest &request) const
  5035. {
  5036. auto endpointOutcome = endpointProvider_->getEndpoint();
  5037. if (!endpointOutcome.isSuccess())
  5038. return DescribePublicIpAddressOutcome(endpointOutcome.error());
  5039. auto outcome = makeRequest(endpointOutcome.result(), request);
  5040. if (outcome.isSuccess())
  5041. return DescribePublicIpAddressOutcome(DescribePublicIpAddressResult(outcome.result()));
  5042. else
  5043. return DescribePublicIpAddressOutcome(outcome.error());
  5044. }
  5045. void VpcClient::describePublicIpAddressAsync(const DescribePublicIpAddressRequest& request, const DescribePublicIpAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5046. {
  5047. auto fn = [this, request, handler, context]()
  5048. {
  5049. handler(this, request, describePublicIpAddress(request), context);
  5050. };
  5051. asyncExecute(new Runnable(fn));
  5052. }
  5053. VpcClient::DescribePublicIpAddressOutcomeCallable VpcClient::describePublicIpAddressCallable(const DescribePublicIpAddressRequest &request) const
  5054. {
  5055. auto task = std::make_shared<std::packaged_task<DescribePublicIpAddressOutcome()>>(
  5056. [this, request]()
  5057. {
  5058. return this->describePublicIpAddress(request);
  5059. });
  5060. asyncExecute(new Runnable([task]() { (*task)(); }));
  5061. return task->get_future();
  5062. }
  5063. VpcClient::DescribeRegionsOutcome VpcClient::describeRegions(const DescribeRegionsRequest &request) const
  5064. {
  5065. auto endpointOutcome = endpointProvider_->getEndpoint();
  5066. if (!endpointOutcome.isSuccess())
  5067. return DescribeRegionsOutcome(endpointOutcome.error());
  5068. auto outcome = makeRequest(endpointOutcome.result(), request);
  5069. if (outcome.isSuccess())
  5070. return DescribeRegionsOutcome(DescribeRegionsResult(outcome.result()));
  5071. else
  5072. return DescribeRegionsOutcome(outcome.error());
  5073. }
  5074. void VpcClient::describeRegionsAsync(const DescribeRegionsRequest& request, const DescribeRegionsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5075. {
  5076. auto fn = [this, request, handler, context]()
  5077. {
  5078. handler(this, request, describeRegions(request), context);
  5079. };
  5080. asyncExecute(new Runnable(fn));
  5081. }
  5082. VpcClient::DescribeRegionsOutcomeCallable VpcClient::describeRegionsCallable(const DescribeRegionsRequest &request) const
  5083. {
  5084. auto task = std::make_shared<std::packaged_task<DescribeRegionsOutcome()>>(
  5085. [this, request]()
  5086. {
  5087. return this->describeRegions(request);
  5088. });
  5089. asyncExecute(new Runnable([task]() { (*task)(); }));
  5090. return task->get_future();
  5091. }
  5092. VpcClient::DescribeRouteEntryListOutcome VpcClient::describeRouteEntryList(const DescribeRouteEntryListRequest &request) const
  5093. {
  5094. auto endpointOutcome = endpointProvider_->getEndpoint();
  5095. if (!endpointOutcome.isSuccess())
  5096. return DescribeRouteEntryListOutcome(endpointOutcome.error());
  5097. auto outcome = makeRequest(endpointOutcome.result(), request);
  5098. if (outcome.isSuccess())
  5099. return DescribeRouteEntryListOutcome(DescribeRouteEntryListResult(outcome.result()));
  5100. else
  5101. return DescribeRouteEntryListOutcome(outcome.error());
  5102. }
  5103. void VpcClient::describeRouteEntryListAsync(const DescribeRouteEntryListRequest& request, const DescribeRouteEntryListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5104. {
  5105. auto fn = [this, request, handler, context]()
  5106. {
  5107. handler(this, request, describeRouteEntryList(request), context);
  5108. };
  5109. asyncExecute(new Runnable(fn));
  5110. }
  5111. VpcClient::DescribeRouteEntryListOutcomeCallable VpcClient::describeRouteEntryListCallable(const DescribeRouteEntryListRequest &request) const
  5112. {
  5113. auto task = std::make_shared<std::packaged_task<DescribeRouteEntryListOutcome()>>(
  5114. [this, request]()
  5115. {
  5116. return this->describeRouteEntryList(request);
  5117. });
  5118. asyncExecute(new Runnable([task]() { (*task)(); }));
  5119. return task->get_future();
  5120. }
  5121. VpcClient::DescribeRouteTableListOutcome VpcClient::describeRouteTableList(const DescribeRouteTableListRequest &request) const
  5122. {
  5123. auto endpointOutcome = endpointProvider_->getEndpoint();
  5124. if (!endpointOutcome.isSuccess())
  5125. return DescribeRouteTableListOutcome(endpointOutcome.error());
  5126. auto outcome = makeRequest(endpointOutcome.result(), request);
  5127. if (outcome.isSuccess())
  5128. return DescribeRouteTableListOutcome(DescribeRouteTableListResult(outcome.result()));
  5129. else
  5130. return DescribeRouteTableListOutcome(outcome.error());
  5131. }
  5132. void VpcClient::describeRouteTableListAsync(const DescribeRouteTableListRequest& request, const DescribeRouteTableListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5133. {
  5134. auto fn = [this, request, handler, context]()
  5135. {
  5136. handler(this, request, describeRouteTableList(request), context);
  5137. };
  5138. asyncExecute(new Runnable(fn));
  5139. }
  5140. VpcClient::DescribeRouteTableListOutcomeCallable VpcClient::describeRouteTableListCallable(const DescribeRouteTableListRequest &request) const
  5141. {
  5142. auto task = std::make_shared<std::packaged_task<DescribeRouteTableListOutcome()>>(
  5143. [this, request]()
  5144. {
  5145. return this->describeRouteTableList(request);
  5146. });
  5147. asyncExecute(new Runnable([task]() { (*task)(); }));
  5148. return task->get_future();
  5149. }
  5150. VpcClient::DescribeRouteTablesOutcome VpcClient::describeRouteTables(const DescribeRouteTablesRequest &request) const
  5151. {
  5152. auto endpointOutcome = endpointProvider_->getEndpoint();
  5153. if (!endpointOutcome.isSuccess())
  5154. return DescribeRouteTablesOutcome(endpointOutcome.error());
  5155. auto outcome = makeRequest(endpointOutcome.result(), request);
  5156. if (outcome.isSuccess())
  5157. return DescribeRouteTablesOutcome(DescribeRouteTablesResult(outcome.result()));
  5158. else
  5159. return DescribeRouteTablesOutcome(outcome.error());
  5160. }
  5161. void VpcClient::describeRouteTablesAsync(const DescribeRouteTablesRequest& request, const DescribeRouteTablesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5162. {
  5163. auto fn = [this, request, handler, context]()
  5164. {
  5165. handler(this, request, describeRouteTables(request), context);
  5166. };
  5167. asyncExecute(new Runnable(fn));
  5168. }
  5169. VpcClient::DescribeRouteTablesOutcomeCallable VpcClient::describeRouteTablesCallable(const DescribeRouteTablesRequest &request) const
  5170. {
  5171. auto task = std::make_shared<std::packaged_task<DescribeRouteTablesOutcome()>>(
  5172. [this, request]()
  5173. {
  5174. return this->describeRouteTables(request);
  5175. });
  5176. asyncExecute(new Runnable([task]() { (*task)(); }));
  5177. return task->get_future();
  5178. }
  5179. VpcClient::DescribeRouterInterfaceAttributeOutcome VpcClient::describeRouterInterfaceAttribute(const DescribeRouterInterfaceAttributeRequest &request) const
  5180. {
  5181. auto endpointOutcome = endpointProvider_->getEndpoint();
  5182. if (!endpointOutcome.isSuccess())
  5183. return DescribeRouterInterfaceAttributeOutcome(endpointOutcome.error());
  5184. auto outcome = makeRequest(endpointOutcome.result(), request);
  5185. if (outcome.isSuccess())
  5186. return DescribeRouterInterfaceAttributeOutcome(DescribeRouterInterfaceAttributeResult(outcome.result()));
  5187. else
  5188. return DescribeRouterInterfaceAttributeOutcome(outcome.error());
  5189. }
  5190. void VpcClient::describeRouterInterfaceAttributeAsync(const DescribeRouterInterfaceAttributeRequest& request, const DescribeRouterInterfaceAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5191. {
  5192. auto fn = [this, request, handler, context]()
  5193. {
  5194. handler(this, request, describeRouterInterfaceAttribute(request), context);
  5195. };
  5196. asyncExecute(new Runnable(fn));
  5197. }
  5198. VpcClient::DescribeRouterInterfaceAttributeOutcomeCallable VpcClient::describeRouterInterfaceAttributeCallable(const DescribeRouterInterfaceAttributeRequest &request) const
  5199. {
  5200. auto task = std::make_shared<std::packaged_task<DescribeRouterInterfaceAttributeOutcome()>>(
  5201. [this, request]()
  5202. {
  5203. return this->describeRouterInterfaceAttribute(request);
  5204. });
  5205. asyncExecute(new Runnable([task]() { (*task)(); }));
  5206. return task->get_future();
  5207. }
  5208. VpcClient::DescribeRouterInterfacesOutcome VpcClient::describeRouterInterfaces(const DescribeRouterInterfacesRequest &request) const
  5209. {
  5210. auto endpointOutcome = endpointProvider_->getEndpoint();
  5211. if (!endpointOutcome.isSuccess())
  5212. return DescribeRouterInterfacesOutcome(endpointOutcome.error());
  5213. auto outcome = makeRequest(endpointOutcome.result(), request);
  5214. if (outcome.isSuccess())
  5215. return DescribeRouterInterfacesOutcome(DescribeRouterInterfacesResult(outcome.result()));
  5216. else
  5217. return DescribeRouterInterfacesOutcome(outcome.error());
  5218. }
  5219. void VpcClient::describeRouterInterfacesAsync(const DescribeRouterInterfacesRequest& request, const DescribeRouterInterfacesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5220. {
  5221. auto fn = [this, request, handler, context]()
  5222. {
  5223. handler(this, request, describeRouterInterfaces(request), context);
  5224. };
  5225. asyncExecute(new Runnable(fn));
  5226. }
  5227. VpcClient::DescribeRouterInterfacesOutcomeCallable VpcClient::describeRouterInterfacesCallable(const DescribeRouterInterfacesRequest &request) const
  5228. {
  5229. auto task = std::make_shared<std::packaged_task<DescribeRouterInterfacesOutcome()>>(
  5230. [this, request]()
  5231. {
  5232. return this->describeRouterInterfaces(request);
  5233. });
  5234. asyncExecute(new Runnable([task]() { (*task)(); }));
  5235. return task->get_future();
  5236. }
  5237. VpcClient::DescribeServerRelatedGlobalAccelerationInstancesOutcome VpcClient::describeServerRelatedGlobalAccelerationInstances(const DescribeServerRelatedGlobalAccelerationInstancesRequest &request) const
  5238. {
  5239. auto endpointOutcome = endpointProvider_->getEndpoint();
  5240. if (!endpointOutcome.isSuccess())
  5241. return DescribeServerRelatedGlobalAccelerationInstancesOutcome(endpointOutcome.error());
  5242. auto outcome = makeRequest(endpointOutcome.result(), request);
  5243. if (outcome.isSuccess())
  5244. return DescribeServerRelatedGlobalAccelerationInstancesOutcome(DescribeServerRelatedGlobalAccelerationInstancesResult(outcome.result()));
  5245. else
  5246. return DescribeServerRelatedGlobalAccelerationInstancesOutcome(outcome.error());
  5247. }
  5248. void VpcClient::describeServerRelatedGlobalAccelerationInstancesAsync(const DescribeServerRelatedGlobalAccelerationInstancesRequest& request, const DescribeServerRelatedGlobalAccelerationInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5249. {
  5250. auto fn = [this, request, handler, context]()
  5251. {
  5252. handler(this, request, describeServerRelatedGlobalAccelerationInstances(request), context);
  5253. };
  5254. asyncExecute(new Runnable(fn));
  5255. }
  5256. VpcClient::DescribeServerRelatedGlobalAccelerationInstancesOutcomeCallable VpcClient::describeServerRelatedGlobalAccelerationInstancesCallable(const DescribeServerRelatedGlobalAccelerationInstancesRequest &request) const
  5257. {
  5258. auto task = std::make_shared<std::packaged_task<DescribeServerRelatedGlobalAccelerationInstancesOutcome()>>(
  5259. [this, request]()
  5260. {
  5261. return this->describeServerRelatedGlobalAccelerationInstances(request);
  5262. });
  5263. asyncExecute(new Runnable([task]() { (*task)(); }));
  5264. return task->get_future();
  5265. }
  5266. VpcClient::DescribeSnatTableEntriesOutcome VpcClient::describeSnatTableEntries(const DescribeSnatTableEntriesRequest &request) const
  5267. {
  5268. auto endpointOutcome = endpointProvider_->getEndpoint();
  5269. if (!endpointOutcome.isSuccess())
  5270. return DescribeSnatTableEntriesOutcome(endpointOutcome.error());
  5271. auto outcome = makeRequest(endpointOutcome.result(), request);
  5272. if (outcome.isSuccess())
  5273. return DescribeSnatTableEntriesOutcome(DescribeSnatTableEntriesResult(outcome.result()));
  5274. else
  5275. return DescribeSnatTableEntriesOutcome(outcome.error());
  5276. }
  5277. void VpcClient::describeSnatTableEntriesAsync(const DescribeSnatTableEntriesRequest& request, const DescribeSnatTableEntriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5278. {
  5279. auto fn = [this, request, handler, context]()
  5280. {
  5281. handler(this, request, describeSnatTableEntries(request), context);
  5282. };
  5283. asyncExecute(new Runnable(fn));
  5284. }
  5285. VpcClient::DescribeSnatTableEntriesOutcomeCallable VpcClient::describeSnatTableEntriesCallable(const DescribeSnatTableEntriesRequest &request) const
  5286. {
  5287. auto task = std::make_shared<std::packaged_task<DescribeSnatTableEntriesOutcome()>>(
  5288. [this, request]()
  5289. {
  5290. return this->describeSnatTableEntries(request);
  5291. });
  5292. asyncExecute(new Runnable([task]() { (*task)(); }));
  5293. return task->get_future();
  5294. }
  5295. VpcClient::DescribeSslVpnClientCertOutcome VpcClient::describeSslVpnClientCert(const DescribeSslVpnClientCertRequest &request) const
  5296. {
  5297. auto endpointOutcome = endpointProvider_->getEndpoint();
  5298. if (!endpointOutcome.isSuccess())
  5299. return DescribeSslVpnClientCertOutcome(endpointOutcome.error());
  5300. auto outcome = makeRequest(endpointOutcome.result(), request);
  5301. if (outcome.isSuccess())
  5302. return DescribeSslVpnClientCertOutcome(DescribeSslVpnClientCertResult(outcome.result()));
  5303. else
  5304. return DescribeSslVpnClientCertOutcome(outcome.error());
  5305. }
  5306. void VpcClient::describeSslVpnClientCertAsync(const DescribeSslVpnClientCertRequest& request, const DescribeSslVpnClientCertAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5307. {
  5308. auto fn = [this, request, handler, context]()
  5309. {
  5310. handler(this, request, describeSslVpnClientCert(request), context);
  5311. };
  5312. asyncExecute(new Runnable(fn));
  5313. }
  5314. VpcClient::DescribeSslVpnClientCertOutcomeCallable VpcClient::describeSslVpnClientCertCallable(const DescribeSslVpnClientCertRequest &request) const
  5315. {
  5316. auto task = std::make_shared<std::packaged_task<DescribeSslVpnClientCertOutcome()>>(
  5317. [this, request]()
  5318. {
  5319. return this->describeSslVpnClientCert(request);
  5320. });
  5321. asyncExecute(new Runnable([task]() { (*task)(); }));
  5322. return task->get_future();
  5323. }
  5324. VpcClient::DescribeSslVpnClientCertsOutcome VpcClient::describeSslVpnClientCerts(const DescribeSslVpnClientCertsRequest &request) const
  5325. {
  5326. auto endpointOutcome = endpointProvider_->getEndpoint();
  5327. if (!endpointOutcome.isSuccess())
  5328. return DescribeSslVpnClientCertsOutcome(endpointOutcome.error());
  5329. auto outcome = makeRequest(endpointOutcome.result(), request);
  5330. if (outcome.isSuccess())
  5331. return DescribeSslVpnClientCertsOutcome(DescribeSslVpnClientCertsResult(outcome.result()));
  5332. else
  5333. return DescribeSslVpnClientCertsOutcome(outcome.error());
  5334. }
  5335. void VpcClient::describeSslVpnClientCertsAsync(const DescribeSslVpnClientCertsRequest& request, const DescribeSslVpnClientCertsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5336. {
  5337. auto fn = [this, request, handler, context]()
  5338. {
  5339. handler(this, request, describeSslVpnClientCerts(request), context);
  5340. };
  5341. asyncExecute(new Runnable(fn));
  5342. }
  5343. VpcClient::DescribeSslVpnClientCertsOutcomeCallable VpcClient::describeSslVpnClientCertsCallable(const DescribeSslVpnClientCertsRequest &request) const
  5344. {
  5345. auto task = std::make_shared<std::packaged_task<DescribeSslVpnClientCertsOutcome()>>(
  5346. [this, request]()
  5347. {
  5348. return this->describeSslVpnClientCerts(request);
  5349. });
  5350. asyncExecute(new Runnable([task]() { (*task)(); }));
  5351. return task->get_future();
  5352. }
  5353. VpcClient::DescribeSslVpnServersOutcome VpcClient::describeSslVpnServers(const DescribeSslVpnServersRequest &request) const
  5354. {
  5355. auto endpointOutcome = endpointProvider_->getEndpoint();
  5356. if (!endpointOutcome.isSuccess())
  5357. return DescribeSslVpnServersOutcome(endpointOutcome.error());
  5358. auto outcome = makeRequest(endpointOutcome.result(), request);
  5359. if (outcome.isSuccess())
  5360. return DescribeSslVpnServersOutcome(DescribeSslVpnServersResult(outcome.result()));
  5361. else
  5362. return DescribeSslVpnServersOutcome(outcome.error());
  5363. }
  5364. void VpcClient::describeSslVpnServersAsync(const DescribeSslVpnServersRequest& request, const DescribeSslVpnServersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5365. {
  5366. auto fn = [this, request, handler, context]()
  5367. {
  5368. handler(this, request, describeSslVpnServers(request), context);
  5369. };
  5370. asyncExecute(new Runnable(fn));
  5371. }
  5372. VpcClient::DescribeSslVpnServersOutcomeCallable VpcClient::describeSslVpnServersCallable(const DescribeSslVpnServersRequest &request) const
  5373. {
  5374. auto task = std::make_shared<std::packaged_task<DescribeSslVpnServersOutcome()>>(
  5375. [this, request]()
  5376. {
  5377. return this->describeSslVpnServers(request);
  5378. });
  5379. asyncExecute(new Runnable([task]() { (*task)(); }));
  5380. return task->get_future();
  5381. }
  5382. VpcClient::DescribeTagKeysOutcome VpcClient::describeTagKeys(const DescribeTagKeysRequest &request) const
  5383. {
  5384. auto endpointOutcome = endpointProvider_->getEndpoint();
  5385. if (!endpointOutcome.isSuccess())
  5386. return DescribeTagKeysOutcome(endpointOutcome.error());
  5387. auto outcome = makeRequest(endpointOutcome.result(), request);
  5388. if (outcome.isSuccess())
  5389. return DescribeTagKeysOutcome(DescribeTagKeysResult(outcome.result()));
  5390. else
  5391. return DescribeTagKeysOutcome(outcome.error());
  5392. }
  5393. void VpcClient::describeTagKeysAsync(const DescribeTagKeysRequest& request, const DescribeTagKeysAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5394. {
  5395. auto fn = [this, request, handler, context]()
  5396. {
  5397. handler(this, request, describeTagKeys(request), context);
  5398. };
  5399. asyncExecute(new Runnable(fn));
  5400. }
  5401. VpcClient::DescribeTagKeysOutcomeCallable VpcClient::describeTagKeysCallable(const DescribeTagKeysRequest &request) const
  5402. {
  5403. auto task = std::make_shared<std::packaged_task<DescribeTagKeysOutcome()>>(
  5404. [this, request]()
  5405. {
  5406. return this->describeTagKeys(request);
  5407. });
  5408. asyncExecute(new Runnable([task]() { (*task)(); }));
  5409. return task->get_future();
  5410. }
  5411. VpcClient::DescribeTagKeysForExpressConnectOutcome VpcClient::describeTagKeysForExpressConnect(const DescribeTagKeysForExpressConnectRequest &request) const
  5412. {
  5413. auto endpointOutcome = endpointProvider_->getEndpoint();
  5414. if (!endpointOutcome.isSuccess())
  5415. return DescribeTagKeysForExpressConnectOutcome(endpointOutcome.error());
  5416. auto outcome = makeRequest(endpointOutcome.result(), request);
  5417. if (outcome.isSuccess())
  5418. return DescribeTagKeysForExpressConnectOutcome(DescribeTagKeysForExpressConnectResult(outcome.result()));
  5419. else
  5420. return DescribeTagKeysForExpressConnectOutcome(outcome.error());
  5421. }
  5422. void VpcClient::describeTagKeysForExpressConnectAsync(const DescribeTagKeysForExpressConnectRequest& request, const DescribeTagKeysForExpressConnectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5423. {
  5424. auto fn = [this, request, handler, context]()
  5425. {
  5426. handler(this, request, describeTagKeysForExpressConnect(request), context);
  5427. };
  5428. asyncExecute(new Runnable(fn));
  5429. }
  5430. VpcClient::DescribeTagKeysForExpressConnectOutcomeCallable VpcClient::describeTagKeysForExpressConnectCallable(const DescribeTagKeysForExpressConnectRequest &request) const
  5431. {
  5432. auto task = std::make_shared<std::packaged_task<DescribeTagKeysForExpressConnectOutcome()>>(
  5433. [this, request]()
  5434. {
  5435. return this->describeTagKeysForExpressConnect(request);
  5436. });
  5437. asyncExecute(new Runnable([task]() { (*task)(); }));
  5438. return task->get_future();
  5439. }
  5440. VpcClient::DescribeTagsOutcome VpcClient::describeTags(const DescribeTagsRequest &request) const
  5441. {
  5442. auto endpointOutcome = endpointProvider_->getEndpoint();
  5443. if (!endpointOutcome.isSuccess())
  5444. return DescribeTagsOutcome(endpointOutcome.error());
  5445. auto outcome = makeRequest(endpointOutcome.result(), request);
  5446. if (outcome.isSuccess())
  5447. return DescribeTagsOutcome(DescribeTagsResult(outcome.result()));
  5448. else
  5449. return DescribeTagsOutcome(outcome.error());
  5450. }
  5451. void VpcClient::describeTagsAsync(const DescribeTagsRequest& request, const DescribeTagsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5452. {
  5453. auto fn = [this, request, handler, context]()
  5454. {
  5455. handler(this, request, describeTags(request), context);
  5456. };
  5457. asyncExecute(new Runnable(fn));
  5458. }
  5459. VpcClient::DescribeTagsOutcomeCallable VpcClient::describeTagsCallable(const DescribeTagsRequest &request) const
  5460. {
  5461. auto task = std::make_shared<std::packaged_task<DescribeTagsOutcome()>>(
  5462. [this, request]()
  5463. {
  5464. return this->describeTags(request);
  5465. });
  5466. asyncExecute(new Runnable([task]() { (*task)(); }));
  5467. return task->get_future();
  5468. }
  5469. VpcClient::DescribeVRoutersOutcome VpcClient::describeVRouters(const DescribeVRoutersRequest &request) const
  5470. {
  5471. auto endpointOutcome = endpointProvider_->getEndpoint();
  5472. if (!endpointOutcome.isSuccess())
  5473. return DescribeVRoutersOutcome(endpointOutcome.error());
  5474. auto outcome = makeRequest(endpointOutcome.result(), request);
  5475. if (outcome.isSuccess())
  5476. return DescribeVRoutersOutcome(DescribeVRoutersResult(outcome.result()));
  5477. else
  5478. return DescribeVRoutersOutcome(outcome.error());
  5479. }
  5480. void VpcClient::describeVRoutersAsync(const DescribeVRoutersRequest& request, const DescribeVRoutersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5481. {
  5482. auto fn = [this, request, handler, context]()
  5483. {
  5484. handler(this, request, describeVRouters(request), context);
  5485. };
  5486. asyncExecute(new Runnable(fn));
  5487. }
  5488. VpcClient::DescribeVRoutersOutcomeCallable VpcClient::describeVRoutersCallable(const DescribeVRoutersRequest &request) const
  5489. {
  5490. auto task = std::make_shared<std::packaged_task<DescribeVRoutersOutcome()>>(
  5491. [this, request]()
  5492. {
  5493. return this->describeVRouters(request);
  5494. });
  5495. asyncExecute(new Runnable([task]() { (*task)(); }));
  5496. return task->get_future();
  5497. }
  5498. VpcClient::DescribeVSwitchAttributesOutcome VpcClient::describeVSwitchAttributes(const DescribeVSwitchAttributesRequest &request) const
  5499. {
  5500. auto endpointOutcome = endpointProvider_->getEndpoint();
  5501. if (!endpointOutcome.isSuccess())
  5502. return DescribeVSwitchAttributesOutcome(endpointOutcome.error());
  5503. auto outcome = makeRequest(endpointOutcome.result(), request);
  5504. if (outcome.isSuccess())
  5505. return DescribeVSwitchAttributesOutcome(DescribeVSwitchAttributesResult(outcome.result()));
  5506. else
  5507. return DescribeVSwitchAttributesOutcome(outcome.error());
  5508. }
  5509. void VpcClient::describeVSwitchAttributesAsync(const DescribeVSwitchAttributesRequest& request, const DescribeVSwitchAttributesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5510. {
  5511. auto fn = [this, request, handler, context]()
  5512. {
  5513. handler(this, request, describeVSwitchAttributes(request), context);
  5514. };
  5515. asyncExecute(new Runnable(fn));
  5516. }
  5517. VpcClient::DescribeVSwitchAttributesOutcomeCallable VpcClient::describeVSwitchAttributesCallable(const DescribeVSwitchAttributesRequest &request) const
  5518. {
  5519. auto task = std::make_shared<std::packaged_task<DescribeVSwitchAttributesOutcome()>>(
  5520. [this, request]()
  5521. {
  5522. return this->describeVSwitchAttributes(request);
  5523. });
  5524. asyncExecute(new Runnable([task]() { (*task)(); }));
  5525. return task->get_future();
  5526. }
  5527. VpcClient::DescribeVSwitchesOutcome VpcClient::describeVSwitches(const DescribeVSwitchesRequest &request) const
  5528. {
  5529. auto endpointOutcome = endpointProvider_->getEndpoint();
  5530. if (!endpointOutcome.isSuccess())
  5531. return DescribeVSwitchesOutcome(endpointOutcome.error());
  5532. auto outcome = makeRequest(endpointOutcome.result(), request);
  5533. if (outcome.isSuccess())
  5534. return DescribeVSwitchesOutcome(DescribeVSwitchesResult(outcome.result()));
  5535. else
  5536. return DescribeVSwitchesOutcome(outcome.error());
  5537. }
  5538. void VpcClient::describeVSwitchesAsync(const DescribeVSwitchesRequest& request, const DescribeVSwitchesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5539. {
  5540. auto fn = [this, request, handler, context]()
  5541. {
  5542. handler(this, request, describeVSwitches(request), context);
  5543. };
  5544. asyncExecute(new Runnable(fn));
  5545. }
  5546. VpcClient::DescribeVSwitchesOutcomeCallable VpcClient::describeVSwitchesCallable(const DescribeVSwitchesRequest &request) const
  5547. {
  5548. auto task = std::make_shared<std::packaged_task<DescribeVSwitchesOutcome()>>(
  5549. [this, request]()
  5550. {
  5551. return this->describeVSwitches(request);
  5552. });
  5553. asyncExecute(new Runnable([task]() { (*task)(); }));
  5554. return task->get_future();
  5555. }
  5556. VpcClient::DescribeVbrHaOutcome VpcClient::describeVbrHa(const DescribeVbrHaRequest &request) const
  5557. {
  5558. auto endpointOutcome = endpointProvider_->getEndpoint();
  5559. if (!endpointOutcome.isSuccess())
  5560. return DescribeVbrHaOutcome(endpointOutcome.error());
  5561. auto outcome = makeRequest(endpointOutcome.result(), request);
  5562. if (outcome.isSuccess())
  5563. return DescribeVbrHaOutcome(DescribeVbrHaResult(outcome.result()));
  5564. else
  5565. return DescribeVbrHaOutcome(outcome.error());
  5566. }
  5567. void VpcClient::describeVbrHaAsync(const DescribeVbrHaRequest& request, const DescribeVbrHaAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5568. {
  5569. auto fn = [this, request, handler, context]()
  5570. {
  5571. handler(this, request, describeVbrHa(request), context);
  5572. };
  5573. asyncExecute(new Runnable(fn));
  5574. }
  5575. VpcClient::DescribeVbrHaOutcomeCallable VpcClient::describeVbrHaCallable(const DescribeVbrHaRequest &request) const
  5576. {
  5577. auto task = std::make_shared<std::packaged_task<DescribeVbrHaOutcome()>>(
  5578. [this, request]()
  5579. {
  5580. return this->describeVbrHa(request);
  5581. });
  5582. asyncExecute(new Runnable([task]() { (*task)(); }));
  5583. return task->get_future();
  5584. }
  5585. VpcClient::DescribeVcoRouteEntriesOutcome VpcClient::describeVcoRouteEntries(const DescribeVcoRouteEntriesRequest &request) const
  5586. {
  5587. auto endpointOutcome = endpointProvider_->getEndpoint();
  5588. if (!endpointOutcome.isSuccess())
  5589. return DescribeVcoRouteEntriesOutcome(endpointOutcome.error());
  5590. auto outcome = makeRequest(endpointOutcome.result(), request);
  5591. if (outcome.isSuccess())
  5592. return DescribeVcoRouteEntriesOutcome(DescribeVcoRouteEntriesResult(outcome.result()));
  5593. else
  5594. return DescribeVcoRouteEntriesOutcome(outcome.error());
  5595. }
  5596. void VpcClient::describeVcoRouteEntriesAsync(const DescribeVcoRouteEntriesRequest& request, const DescribeVcoRouteEntriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5597. {
  5598. auto fn = [this, request, handler, context]()
  5599. {
  5600. handler(this, request, describeVcoRouteEntries(request), context);
  5601. };
  5602. asyncExecute(new Runnable(fn));
  5603. }
  5604. VpcClient::DescribeVcoRouteEntriesOutcomeCallable VpcClient::describeVcoRouteEntriesCallable(const DescribeVcoRouteEntriesRequest &request) const
  5605. {
  5606. auto task = std::make_shared<std::packaged_task<DescribeVcoRouteEntriesOutcome()>>(
  5607. [this, request]()
  5608. {
  5609. return this->describeVcoRouteEntries(request);
  5610. });
  5611. asyncExecute(new Runnable([task]() { (*task)(); }));
  5612. return task->get_future();
  5613. }
  5614. VpcClient::DescribeVirtualBorderRoutersOutcome VpcClient::describeVirtualBorderRouters(const DescribeVirtualBorderRoutersRequest &request) const
  5615. {
  5616. auto endpointOutcome = endpointProvider_->getEndpoint();
  5617. if (!endpointOutcome.isSuccess())
  5618. return DescribeVirtualBorderRoutersOutcome(endpointOutcome.error());
  5619. auto outcome = makeRequest(endpointOutcome.result(), request);
  5620. if (outcome.isSuccess())
  5621. return DescribeVirtualBorderRoutersOutcome(DescribeVirtualBorderRoutersResult(outcome.result()));
  5622. else
  5623. return DescribeVirtualBorderRoutersOutcome(outcome.error());
  5624. }
  5625. void VpcClient::describeVirtualBorderRoutersAsync(const DescribeVirtualBorderRoutersRequest& request, const DescribeVirtualBorderRoutersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5626. {
  5627. auto fn = [this, request, handler, context]()
  5628. {
  5629. handler(this, request, describeVirtualBorderRouters(request), context);
  5630. };
  5631. asyncExecute(new Runnable(fn));
  5632. }
  5633. VpcClient::DescribeVirtualBorderRoutersOutcomeCallable VpcClient::describeVirtualBorderRoutersCallable(const DescribeVirtualBorderRoutersRequest &request) const
  5634. {
  5635. auto task = std::make_shared<std::packaged_task<DescribeVirtualBorderRoutersOutcome()>>(
  5636. [this, request]()
  5637. {
  5638. return this->describeVirtualBorderRouters(request);
  5639. });
  5640. asyncExecute(new Runnable([task]() { (*task)(); }));
  5641. return task->get_future();
  5642. }
  5643. VpcClient::DescribeVirtualBorderRoutersForPhysicalConnectionOutcome VpcClient::describeVirtualBorderRoutersForPhysicalConnection(const DescribeVirtualBorderRoutersForPhysicalConnectionRequest &request) const
  5644. {
  5645. auto endpointOutcome = endpointProvider_->getEndpoint();
  5646. if (!endpointOutcome.isSuccess())
  5647. return DescribeVirtualBorderRoutersForPhysicalConnectionOutcome(endpointOutcome.error());
  5648. auto outcome = makeRequest(endpointOutcome.result(), request);
  5649. if (outcome.isSuccess())
  5650. return DescribeVirtualBorderRoutersForPhysicalConnectionOutcome(DescribeVirtualBorderRoutersForPhysicalConnectionResult(outcome.result()));
  5651. else
  5652. return DescribeVirtualBorderRoutersForPhysicalConnectionOutcome(outcome.error());
  5653. }
  5654. void VpcClient::describeVirtualBorderRoutersForPhysicalConnectionAsync(const DescribeVirtualBorderRoutersForPhysicalConnectionRequest& request, const DescribeVirtualBorderRoutersForPhysicalConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5655. {
  5656. auto fn = [this, request, handler, context]()
  5657. {
  5658. handler(this, request, describeVirtualBorderRoutersForPhysicalConnection(request), context);
  5659. };
  5660. asyncExecute(new Runnable(fn));
  5661. }
  5662. VpcClient::DescribeVirtualBorderRoutersForPhysicalConnectionOutcomeCallable VpcClient::describeVirtualBorderRoutersForPhysicalConnectionCallable(const DescribeVirtualBorderRoutersForPhysicalConnectionRequest &request) const
  5663. {
  5664. auto task = std::make_shared<std::packaged_task<DescribeVirtualBorderRoutersForPhysicalConnectionOutcome()>>(
  5665. [this, request]()
  5666. {
  5667. return this->describeVirtualBorderRoutersForPhysicalConnection(request);
  5668. });
  5669. asyncExecute(new Runnable([task]() { (*task)(); }));
  5670. return task->get_future();
  5671. }
  5672. VpcClient::DescribeVpcAttributeOutcome VpcClient::describeVpcAttribute(const DescribeVpcAttributeRequest &request) const
  5673. {
  5674. auto endpointOutcome = endpointProvider_->getEndpoint();
  5675. if (!endpointOutcome.isSuccess())
  5676. return DescribeVpcAttributeOutcome(endpointOutcome.error());
  5677. auto outcome = makeRequest(endpointOutcome.result(), request);
  5678. if (outcome.isSuccess())
  5679. return DescribeVpcAttributeOutcome(DescribeVpcAttributeResult(outcome.result()));
  5680. else
  5681. return DescribeVpcAttributeOutcome(outcome.error());
  5682. }
  5683. void VpcClient::describeVpcAttributeAsync(const DescribeVpcAttributeRequest& request, const DescribeVpcAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5684. {
  5685. auto fn = [this, request, handler, context]()
  5686. {
  5687. handler(this, request, describeVpcAttribute(request), context);
  5688. };
  5689. asyncExecute(new Runnable(fn));
  5690. }
  5691. VpcClient::DescribeVpcAttributeOutcomeCallable VpcClient::describeVpcAttributeCallable(const DescribeVpcAttributeRequest &request) const
  5692. {
  5693. auto task = std::make_shared<std::packaged_task<DescribeVpcAttributeOutcome()>>(
  5694. [this, request]()
  5695. {
  5696. return this->describeVpcAttribute(request);
  5697. });
  5698. asyncExecute(new Runnable([task]() { (*task)(); }));
  5699. return task->get_future();
  5700. }
  5701. VpcClient::DescribeVpcsOutcome VpcClient::describeVpcs(const DescribeVpcsRequest &request) const
  5702. {
  5703. auto endpointOutcome = endpointProvider_->getEndpoint();
  5704. if (!endpointOutcome.isSuccess())
  5705. return DescribeVpcsOutcome(endpointOutcome.error());
  5706. auto outcome = makeRequest(endpointOutcome.result(), request);
  5707. if (outcome.isSuccess())
  5708. return DescribeVpcsOutcome(DescribeVpcsResult(outcome.result()));
  5709. else
  5710. return DescribeVpcsOutcome(outcome.error());
  5711. }
  5712. void VpcClient::describeVpcsAsync(const DescribeVpcsRequest& request, const DescribeVpcsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5713. {
  5714. auto fn = [this, request, handler, context]()
  5715. {
  5716. handler(this, request, describeVpcs(request), context);
  5717. };
  5718. asyncExecute(new Runnable(fn));
  5719. }
  5720. VpcClient::DescribeVpcsOutcomeCallable VpcClient::describeVpcsCallable(const DescribeVpcsRequest &request) const
  5721. {
  5722. auto task = std::make_shared<std::packaged_task<DescribeVpcsOutcome()>>(
  5723. [this, request]()
  5724. {
  5725. return this->describeVpcs(request);
  5726. });
  5727. asyncExecute(new Runnable([task]() { (*task)(); }));
  5728. return task->get_future();
  5729. }
  5730. VpcClient::DescribeVpnAttachmentsOutcome VpcClient::describeVpnAttachments(const DescribeVpnAttachmentsRequest &request) const
  5731. {
  5732. auto endpointOutcome = endpointProvider_->getEndpoint();
  5733. if (!endpointOutcome.isSuccess())
  5734. return DescribeVpnAttachmentsOutcome(endpointOutcome.error());
  5735. auto outcome = makeRequest(endpointOutcome.result(), request);
  5736. if (outcome.isSuccess())
  5737. return DescribeVpnAttachmentsOutcome(DescribeVpnAttachmentsResult(outcome.result()));
  5738. else
  5739. return DescribeVpnAttachmentsOutcome(outcome.error());
  5740. }
  5741. void VpcClient::describeVpnAttachmentsAsync(const DescribeVpnAttachmentsRequest& request, const DescribeVpnAttachmentsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5742. {
  5743. auto fn = [this, request, handler, context]()
  5744. {
  5745. handler(this, request, describeVpnAttachments(request), context);
  5746. };
  5747. asyncExecute(new Runnable(fn));
  5748. }
  5749. VpcClient::DescribeVpnAttachmentsOutcomeCallable VpcClient::describeVpnAttachmentsCallable(const DescribeVpnAttachmentsRequest &request) const
  5750. {
  5751. auto task = std::make_shared<std::packaged_task<DescribeVpnAttachmentsOutcome()>>(
  5752. [this, request]()
  5753. {
  5754. return this->describeVpnAttachments(request);
  5755. });
  5756. asyncExecute(new Runnable([task]() { (*task)(); }));
  5757. return task->get_future();
  5758. }
  5759. VpcClient::DescribeVpnConnectionOutcome VpcClient::describeVpnConnection(const DescribeVpnConnectionRequest &request) const
  5760. {
  5761. auto endpointOutcome = endpointProvider_->getEndpoint();
  5762. if (!endpointOutcome.isSuccess())
  5763. return DescribeVpnConnectionOutcome(endpointOutcome.error());
  5764. auto outcome = makeRequest(endpointOutcome.result(), request);
  5765. if (outcome.isSuccess())
  5766. return DescribeVpnConnectionOutcome(DescribeVpnConnectionResult(outcome.result()));
  5767. else
  5768. return DescribeVpnConnectionOutcome(outcome.error());
  5769. }
  5770. void VpcClient::describeVpnConnectionAsync(const DescribeVpnConnectionRequest& request, const DescribeVpnConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5771. {
  5772. auto fn = [this, request, handler, context]()
  5773. {
  5774. handler(this, request, describeVpnConnection(request), context);
  5775. };
  5776. asyncExecute(new Runnable(fn));
  5777. }
  5778. VpcClient::DescribeVpnConnectionOutcomeCallable VpcClient::describeVpnConnectionCallable(const DescribeVpnConnectionRequest &request) const
  5779. {
  5780. auto task = std::make_shared<std::packaged_task<DescribeVpnConnectionOutcome()>>(
  5781. [this, request]()
  5782. {
  5783. return this->describeVpnConnection(request);
  5784. });
  5785. asyncExecute(new Runnable([task]() { (*task)(); }));
  5786. return task->get_future();
  5787. }
  5788. VpcClient::DescribeVpnConnectionLogsOutcome VpcClient::describeVpnConnectionLogs(const DescribeVpnConnectionLogsRequest &request) const
  5789. {
  5790. auto endpointOutcome = endpointProvider_->getEndpoint();
  5791. if (!endpointOutcome.isSuccess())
  5792. return DescribeVpnConnectionLogsOutcome(endpointOutcome.error());
  5793. auto outcome = makeRequest(endpointOutcome.result(), request);
  5794. if (outcome.isSuccess())
  5795. return DescribeVpnConnectionLogsOutcome(DescribeVpnConnectionLogsResult(outcome.result()));
  5796. else
  5797. return DescribeVpnConnectionLogsOutcome(outcome.error());
  5798. }
  5799. void VpcClient::describeVpnConnectionLogsAsync(const DescribeVpnConnectionLogsRequest& request, const DescribeVpnConnectionLogsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5800. {
  5801. auto fn = [this, request, handler, context]()
  5802. {
  5803. handler(this, request, describeVpnConnectionLogs(request), context);
  5804. };
  5805. asyncExecute(new Runnable(fn));
  5806. }
  5807. VpcClient::DescribeVpnConnectionLogsOutcomeCallable VpcClient::describeVpnConnectionLogsCallable(const DescribeVpnConnectionLogsRequest &request) const
  5808. {
  5809. auto task = std::make_shared<std::packaged_task<DescribeVpnConnectionLogsOutcome()>>(
  5810. [this, request]()
  5811. {
  5812. return this->describeVpnConnectionLogs(request);
  5813. });
  5814. asyncExecute(new Runnable([task]() { (*task)(); }));
  5815. return task->get_future();
  5816. }
  5817. VpcClient::DescribeVpnConnectionsOutcome VpcClient::describeVpnConnections(const DescribeVpnConnectionsRequest &request) const
  5818. {
  5819. auto endpointOutcome = endpointProvider_->getEndpoint();
  5820. if (!endpointOutcome.isSuccess())
  5821. return DescribeVpnConnectionsOutcome(endpointOutcome.error());
  5822. auto outcome = makeRequest(endpointOutcome.result(), request);
  5823. if (outcome.isSuccess())
  5824. return DescribeVpnConnectionsOutcome(DescribeVpnConnectionsResult(outcome.result()));
  5825. else
  5826. return DescribeVpnConnectionsOutcome(outcome.error());
  5827. }
  5828. void VpcClient::describeVpnConnectionsAsync(const DescribeVpnConnectionsRequest& request, const DescribeVpnConnectionsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5829. {
  5830. auto fn = [this, request, handler, context]()
  5831. {
  5832. handler(this, request, describeVpnConnections(request), context);
  5833. };
  5834. asyncExecute(new Runnable(fn));
  5835. }
  5836. VpcClient::DescribeVpnConnectionsOutcomeCallable VpcClient::describeVpnConnectionsCallable(const DescribeVpnConnectionsRequest &request) const
  5837. {
  5838. auto task = std::make_shared<std::packaged_task<DescribeVpnConnectionsOutcome()>>(
  5839. [this, request]()
  5840. {
  5841. return this->describeVpnConnections(request);
  5842. });
  5843. asyncExecute(new Runnable([task]() { (*task)(); }));
  5844. return task->get_future();
  5845. }
  5846. VpcClient::DescribeVpnCrossAccountAuthorizationsOutcome VpcClient::describeVpnCrossAccountAuthorizations(const DescribeVpnCrossAccountAuthorizationsRequest &request) const
  5847. {
  5848. auto endpointOutcome = endpointProvider_->getEndpoint();
  5849. if (!endpointOutcome.isSuccess())
  5850. return DescribeVpnCrossAccountAuthorizationsOutcome(endpointOutcome.error());
  5851. auto outcome = makeRequest(endpointOutcome.result(), request);
  5852. if (outcome.isSuccess())
  5853. return DescribeVpnCrossAccountAuthorizationsOutcome(DescribeVpnCrossAccountAuthorizationsResult(outcome.result()));
  5854. else
  5855. return DescribeVpnCrossAccountAuthorizationsOutcome(outcome.error());
  5856. }
  5857. void VpcClient::describeVpnCrossAccountAuthorizationsAsync(const DescribeVpnCrossAccountAuthorizationsRequest& request, const DescribeVpnCrossAccountAuthorizationsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5858. {
  5859. auto fn = [this, request, handler, context]()
  5860. {
  5861. handler(this, request, describeVpnCrossAccountAuthorizations(request), context);
  5862. };
  5863. asyncExecute(new Runnable(fn));
  5864. }
  5865. VpcClient::DescribeVpnCrossAccountAuthorizationsOutcomeCallable VpcClient::describeVpnCrossAccountAuthorizationsCallable(const DescribeVpnCrossAccountAuthorizationsRequest &request) const
  5866. {
  5867. auto task = std::make_shared<std::packaged_task<DescribeVpnCrossAccountAuthorizationsOutcome()>>(
  5868. [this, request]()
  5869. {
  5870. return this->describeVpnCrossAccountAuthorizations(request);
  5871. });
  5872. asyncExecute(new Runnable([task]() { (*task)(); }));
  5873. return task->get_future();
  5874. }
  5875. VpcClient::DescribeVpnGatewayOutcome VpcClient::describeVpnGateway(const DescribeVpnGatewayRequest &request) const
  5876. {
  5877. auto endpointOutcome = endpointProvider_->getEndpoint();
  5878. if (!endpointOutcome.isSuccess())
  5879. return DescribeVpnGatewayOutcome(endpointOutcome.error());
  5880. auto outcome = makeRequest(endpointOutcome.result(), request);
  5881. if (outcome.isSuccess())
  5882. return DescribeVpnGatewayOutcome(DescribeVpnGatewayResult(outcome.result()));
  5883. else
  5884. return DescribeVpnGatewayOutcome(outcome.error());
  5885. }
  5886. void VpcClient::describeVpnGatewayAsync(const DescribeVpnGatewayRequest& request, const DescribeVpnGatewayAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5887. {
  5888. auto fn = [this, request, handler, context]()
  5889. {
  5890. handler(this, request, describeVpnGateway(request), context);
  5891. };
  5892. asyncExecute(new Runnable(fn));
  5893. }
  5894. VpcClient::DescribeVpnGatewayOutcomeCallable VpcClient::describeVpnGatewayCallable(const DescribeVpnGatewayRequest &request) const
  5895. {
  5896. auto task = std::make_shared<std::packaged_task<DescribeVpnGatewayOutcome()>>(
  5897. [this, request]()
  5898. {
  5899. return this->describeVpnGateway(request);
  5900. });
  5901. asyncExecute(new Runnable([task]() { (*task)(); }));
  5902. return task->get_future();
  5903. }
  5904. VpcClient::DescribeVpnGatewaysOutcome VpcClient::describeVpnGateways(const DescribeVpnGatewaysRequest &request) const
  5905. {
  5906. auto endpointOutcome = endpointProvider_->getEndpoint();
  5907. if (!endpointOutcome.isSuccess())
  5908. return DescribeVpnGatewaysOutcome(endpointOutcome.error());
  5909. auto outcome = makeRequest(endpointOutcome.result(), request);
  5910. if (outcome.isSuccess())
  5911. return DescribeVpnGatewaysOutcome(DescribeVpnGatewaysResult(outcome.result()));
  5912. else
  5913. return DescribeVpnGatewaysOutcome(outcome.error());
  5914. }
  5915. void VpcClient::describeVpnGatewaysAsync(const DescribeVpnGatewaysRequest& request, const DescribeVpnGatewaysAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5916. {
  5917. auto fn = [this, request, handler, context]()
  5918. {
  5919. handler(this, request, describeVpnGateways(request), context);
  5920. };
  5921. asyncExecute(new Runnable(fn));
  5922. }
  5923. VpcClient::DescribeVpnGatewaysOutcomeCallable VpcClient::describeVpnGatewaysCallable(const DescribeVpnGatewaysRequest &request) const
  5924. {
  5925. auto task = std::make_shared<std::packaged_task<DescribeVpnGatewaysOutcome()>>(
  5926. [this, request]()
  5927. {
  5928. return this->describeVpnGateways(request);
  5929. });
  5930. asyncExecute(new Runnable([task]() { (*task)(); }));
  5931. return task->get_future();
  5932. }
  5933. VpcClient::DescribeVpnPbrRouteEntriesOutcome VpcClient::describeVpnPbrRouteEntries(const DescribeVpnPbrRouteEntriesRequest &request) const
  5934. {
  5935. auto endpointOutcome = endpointProvider_->getEndpoint();
  5936. if (!endpointOutcome.isSuccess())
  5937. return DescribeVpnPbrRouteEntriesOutcome(endpointOutcome.error());
  5938. auto outcome = makeRequest(endpointOutcome.result(), request);
  5939. if (outcome.isSuccess())
  5940. return DescribeVpnPbrRouteEntriesOutcome(DescribeVpnPbrRouteEntriesResult(outcome.result()));
  5941. else
  5942. return DescribeVpnPbrRouteEntriesOutcome(outcome.error());
  5943. }
  5944. void VpcClient::describeVpnPbrRouteEntriesAsync(const DescribeVpnPbrRouteEntriesRequest& request, const DescribeVpnPbrRouteEntriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5945. {
  5946. auto fn = [this, request, handler, context]()
  5947. {
  5948. handler(this, request, describeVpnPbrRouteEntries(request), context);
  5949. };
  5950. asyncExecute(new Runnable(fn));
  5951. }
  5952. VpcClient::DescribeVpnPbrRouteEntriesOutcomeCallable VpcClient::describeVpnPbrRouteEntriesCallable(const DescribeVpnPbrRouteEntriesRequest &request) const
  5953. {
  5954. auto task = std::make_shared<std::packaged_task<DescribeVpnPbrRouteEntriesOutcome()>>(
  5955. [this, request]()
  5956. {
  5957. return this->describeVpnPbrRouteEntries(request);
  5958. });
  5959. asyncExecute(new Runnable([task]() { (*task)(); }));
  5960. return task->get_future();
  5961. }
  5962. VpcClient::DescribeVpnRouteEntriesOutcome VpcClient::describeVpnRouteEntries(const DescribeVpnRouteEntriesRequest &request) const
  5963. {
  5964. auto endpointOutcome = endpointProvider_->getEndpoint();
  5965. if (!endpointOutcome.isSuccess())
  5966. return DescribeVpnRouteEntriesOutcome(endpointOutcome.error());
  5967. auto outcome = makeRequest(endpointOutcome.result(), request);
  5968. if (outcome.isSuccess())
  5969. return DescribeVpnRouteEntriesOutcome(DescribeVpnRouteEntriesResult(outcome.result()));
  5970. else
  5971. return DescribeVpnRouteEntriesOutcome(outcome.error());
  5972. }
  5973. void VpcClient::describeVpnRouteEntriesAsync(const DescribeVpnRouteEntriesRequest& request, const DescribeVpnRouteEntriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  5974. {
  5975. auto fn = [this, request, handler, context]()
  5976. {
  5977. handler(this, request, describeVpnRouteEntries(request), context);
  5978. };
  5979. asyncExecute(new Runnable(fn));
  5980. }
  5981. VpcClient::DescribeVpnRouteEntriesOutcomeCallable VpcClient::describeVpnRouteEntriesCallable(const DescribeVpnRouteEntriesRequest &request) const
  5982. {
  5983. auto task = std::make_shared<std::packaged_task<DescribeVpnRouteEntriesOutcome()>>(
  5984. [this, request]()
  5985. {
  5986. return this->describeVpnRouteEntries(request);
  5987. });
  5988. asyncExecute(new Runnable([task]() { (*task)(); }));
  5989. return task->get_future();
  5990. }
  5991. VpcClient::DescribeVpnSslServerLogsOutcome VpcClient::describeVpnSslServerLogs(const DescribeVpnSslServerLogsRequest &request) const
  5992. {
  5993. auto endpointOutcome = endpointProvider_->getEndpoint();
  5994. if (!endpointOutcome.isSuccess())
  5995. return DescribeVpnSslServerLogsOutcome(endpointOutcome.error());
  5996. auto outcome = makeRequest(endpointOutcome.result(), request);
  5997. if (outcome.isSuccess())
  5998. return DescribeVpnSslServerLogsOutcome(DescribeVpnSslServerLogsResult(outcome.result()));
  5999. else
  6000. return DescribeVpnSslServerLogsOutcome(outcome.error());
  6001. }
  6002. void VpcClient::describeVpnSslServerLogsAsync(const DescribeVpnSslServerLogsRequest& request, const DescribeVpnSslServerLogsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6003. {
  6004. auto fn = [this, request, handler, context]()
  6005. {
  6006. handler(this, request, describeVpnSslServerLogs(request), context);
  6007. };
  6008. asyncExecute(new Runnable(fn));
  6009. }
  6010. VpcClient::DescribeVpnSslServerLogsOutcomeCallable VpcClient::describeVpnSslServerLogsCallable(const DescribeVpnSslServerLogsRequest &request) const
  6011. {
  6012. auto task = std::make_shared<std::packaged_task<DescribeVpnSslServerLogsOutcome()>>(
  6013. [this, request]()
  6014. {
  6015. return this->describeVpnSslServerLogs(request);
  6016. });
  6017. asyncExecute(new Runnable([task]() { (*task)(); }));
  6018. return task->get_future();
  6019. }
  6020. VpcClient::DescribeZonesOutcome VpcClient::describeZones(const DescribeZonesRequest &request) const
  6021. {
  6022. auto endpointOutcome = endpointProvider_->getEndpoint();
  6023. if (!endpointOutcome.isSuccess())
  6024. return DescribeZonesOutcome(endpointOutcome.error());
  6025. auto outcome = makeRequest(endpointOutcome.result(), request);
  6026. if (outcome.isSuccess())
  6027. return DescribeZonesOutcome(DescribeZonesResult(outcome.result()));
  6028. else
  6029. return DescribeZonesOutcome(outcome.error());
  6030. }
  6031. void VpcClient::describeZonesAsync(const DescribeZonesRequest& request, const DescribeZonesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6032. {
  6033. auto fn = [this, request, handler, context]()
  6034. {
  6035. handler(this, request, describeZones(request), context);
  6036. };
  6037. asyncExecute(new Runnable(fn));
  6038. }
  6039. VpcClient::DescribeZonesOutcomeCallable VpcClient::describeZonesCallable(const DescribeZonesRequest &request) const
  6040. {
  6041. auto task = std::make_shared<std::packaged_task<DescribeZonesOutcome()>>(
  6042. [this, request]()
  6043. {
  6044. return this->describeZones(request);
  6045. });
  6046. asyncExecute(new Runnable([task]() { (*task)(); }));
  6047. return task->get_future();
  6048. }
  6049. VpcClient::DetachDhcpOptionsSetFromVpcOutcome VpcClient::detachDhcpOptionsSetFromVpc(const DetachDhcpOptionsSetFromVpcRequest &request) const
  6050. {
  6051. auto endpointOutcome = endpointProvider_->getEndpoint();
  6052. if (!endpointOutcome.isSuccess())
  6053. return DetachDhcpOptionsSetFromVpcOutcome(endpointOutcome.error());
  6054. auto outcome = makeRequest(endpointOutcome.result(), request);
  6055. if (outcome.isSuccess())
  6056. return DetachDhcpOptionsSetFromVpcOutcome(DetachDhcpOptionsSetFromVpcResult(outcome.result()));
  6057. else
  6058. return DetachDhcpOptionsSetFromVpcOutcome(outcome.error());
  6059. }
  6060. void VpcClient::detachDhcpOptionsSetFromVpcAsync(const DetachDhcpOptionsSetFromVpcRequest& request, const DetachDhcpOptionsSetFromVpcAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6061. {
  6062. auto fn = [this, request, handler, context]()
  6063. {
  6064. handler(this, request, detachDhcpOptionsSetFromVpc(request), context);
  6065. };
  6066. asyncExecute(new Runnable(fn));
  6067. }
  6068. VpcClient::DetachDhcpOptionsSetFromVpcOutcomeCallable VpcClient::detachDhcpOptionsSetFromVpcCallable(const DetachDhcpOptionsSetFromVpcRequest &request) const
  6069. {
  6070. auto task = std::make_shared<std::packaged_task<DetachDhcpOptionsSetFromVpcOutcome()>>(
  6071. [this, request]()
  6072. {
  6073. return this->detachDhcpOptionsSetFromVpc(request);
  6074. });
  6075. asyncExecute(new Runnable([task]() { (*task)(); }));
  6076. return task->get_future();
  6077. }
  6078. VpcClient::DiagnoseVpnGatewayOutcome VpcClient::diagnoseVpnGateway(const DiagnoseVpnGatewayRequest &request) const
  6079. {
  6080. auto endpointOutcome = endpointProvider_->getEndpoint();
  6081. if (!endpointOutcome.isSuccess())
  6082. return DiagnoseVpnGatewayOutcome(endpointOutcome.error());
  6083. auto outcome = makeRequest(endpointOutcome.result(), request);
  6084. if (outcome.isSuccess())
  6085. return DiagnoseVpnGatewayOutcome(DiagnoseVpnGatewayResult(outcome.result()));
  6086. else
  6087. return DiagnoseVpnGatewayOutcome(outcome.error());
  6088. }
  6089. void VpcClient::diagnoseVpnGatewayAsync(const DiagnoseVpnGatewayRequest& request, const DiagnoseVpnGatewayAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6090. {
  6091. auto fn = [this, request, handler, context]()
  6092. {
  6093. handler(this, request, diagnoseVpnGateway(request), context);
  6094. };
  6095. asyncExecute(new Runnable(fn));
  6096. }
  6097. VpcClient::DiagnoseVpnGatewayOutcomeCallable VpcClient::diagnoseVpnGatewayCallable(const DiagnoseVpnGatewayRequest &request) const
  6098. {
  6099. auto task = std::make_shared<std::packaged_task<DiagnoseVpnGatewayOutcome()>>(
  6100. [this, request]()
  6101. {
  6102. return this->diagnoseVpnGateway(request);
  6103. });
  6104. asyncExecute(new Runnable([task]() { (*task)(); }));
  6105. return task->get_future();
  6106. }
  6107. VpcClient::DisableNatGatewayEcsMetricOutcome VpcClient::disableNatGatewayEcsMetric(const DisableNatGatewayEcsMetricRequest &request) const
  6108. {
  6109. auto endpointOutcome = endpointProvider_->getEndpoint();
  6110. if (!endpointOutcome.isSuccess())
  6111. return DisableNatGatewayEcsMetricOutcome(endpointOutcome.error());
  6112. auto outcome = makeRequest(endpointOutcome.result(), request);
  6113. if (outcome.isSuccess())
  6114. return DisableNatGatewayEcsMetricOutcome(DisableNatGatewayEcsMetricResult(outcome.result()));
  6115. else
  6116. return DisableNatGatewayEcsMetricOutcome(outcome.error());
  6117. }
  6118. void VpcClient::disableNatGatewayEcsMetricAsync(const DisableNatGatewayEcsMetricRequest& request, const DisableNatGatewayEcsMetricAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6119. {
  6120. auto fn = [this, request, handler, context]()
  6121. {
  6122. handler(this, request, disableNatGatewayEcsMetric(request), context);
  6123. };
  6124. asyncExecute(new Runnable(fn));
  6125. }
  6126. VpcClient::DisableNatGatewayEcsMetricOutcomeCallable VpcClient::disableNatGatewayEcsMetricCallable(const DisableNatGatewayEcsMetricRequest &request) const
  6127. {
  6128. auto task = std::make_shared<std::packaged_task<DisableNatGatewayEcsMetricOutcome()>>(
  6129. [this, request]()
  6130. {
  6131. return this->disableNatGatewayEcsMetric(request);
  6132. });
  6133. asyncExecute(new Runnable([task]() { (*task)(); }));
  6134. return task->get_future();
  6135. }
  6136. VpcClient::DisableVpcClassicLinkOutcome VpcClient::disableVpcClassicLink(const DisableVpcClassicLinkRequest &request) const
  6137. {
  6138. auto endpointOutcome = endpointProvider_->getEndpoint();
  6139. if (!endpointOutcome.isSuccess())
  6140. return DisableVpcClassicLinkOutcome(endpointOutcome.error());
  6141. auto outcome = makeRequest(endpointOutcome.result(), request);
  6142. if (outcome.isSuccess())
  6143. return DisableVpcClassicLinkOutcome(DisableVpcClassicLinkResult(outcome.result()));
  6144. else
  6145. return DisableVpcClassicLinkOutcome(outcome.error());
  6146. }
  6147. void VpcClient::disableVpcClassicLinkAsync(const DisableVpcClassicLinkRequest& request, const DisableVpcClassicLinkAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6148. {
  6149. auto fn = [this, request, handler, context]()
  6150. {
  6151. handler(this, request, disableVpcClassicLink(request), context);
  6152. };
  6153. asyncExecute(new Runnable(fn));
  6154. }
  6155. VpcClient::DisableVpcClassicLinkOutcomeCallable VpcClient::disableVpcClassicLinkCallable(const DisableVpcClassicLinkRequest &request) const
  6156. {
  6157. auto task = std::make_shared<std::packaged_task<DisableVpcClassicLinkOutcome()>>(
  6158. [this, request]()
  6159. {
  6160. return this->disableVpcClassicLink(request);
  6161. });
  6162. asyncExecute(new Runnable([task]() { (*task)(); }));
  6163. return task->get_future();
  6164. }
  6165. VpcClient::DissociateRouteTableFromGatewayOutcome VpcClient::dissociateRouteTableFromGateway(const DissociateRouteTableFromGatewayRequest &request) const
  6166. {
  6167. auto endpointOutcome = endpointProvider_->getEndpoint();
  6168. if (!endpointOutcome.isSuccess())
  6169. return DissociateRouteTableFromGatewayOutcome(endpointOutcome.error());
  6170. auto outcome = makeRequest(endpointOutcome.result(), request);
  6171. if (outcome.isSuccess())
  6172. return DissociateRouteTableFromGatewayOutcome(DissociateRouteTableFromGatewayResult(outcome.result()));
  6173. else
  6174. return DissociateRouteTableFromGatewayOutcome(outcome.error());
  6175. }
  6176. void VpcClient::dissociateRouteTableFromGatewayAsync(const DissociateRouteTableFromGatewayRequest& request, const DissociateRouteTableFromGatewayAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6177. {
  6178. auto fn = [this, request, handler, context]()
  6179. {
  6180. handler(this, request, dissociateRouteTableFromGateway(request), context);
  6181. };
  6182. asyncExecute(new Runnable(fn));
  6183. }
  6184. VpcClient::DissociateRouteTableFromGatewayOutcomeCallable VpcClient::dissociateRouteTableFromGatewayCallable(const DissociateRouteTableFromGatewayRequest &request) const
  6185. {
  6186. auto task = std::make_shared<std::packaged_task<DissociateRouteTableFromGatewayOutcome()>>(
  6187. [this, request]()
  6188. {
  6189. return this->dissociateRouteTableFromGateway(request);
  6190. });
  6191. asyncExecute(new Runnable([task]() { (*task)(); }));
  6192. return task->get_future();
  6193. }
  6194. VpcClient::DissociateRouteTablesFromVpcGatewayEndpointOutcome VpcClient::dissociateRouteTablesFromVpcGatewayEndpoint(const DissociateRouteTablesFromVpcGatewayEndpointRequest &request) const
  6195. {
  6196. auto endpointOutcome = endpointProvider_->getEndpoint();
  6197. if (!endpointOutcome.isSuccess())
  6198. return DissociateRouteTablesFromVpcGatewayEndpointOutcome(endpointOutcome.error());
  6199. auto outcome = makeRequest(endpointOutcome.result(), request);
  6200. if (outcome.isSuccess())
  6201. return DissociateRouteTablesFromVpcGatewayEndpointOutcome(DissociateRouteTablesFromVpcGatewayEndpointResult(outcome.result()));
  6202. else
  6203. return DissociateRouteTablesFromVpcGatewayEndpointOutcome(outcome.error());
  6204. }
  6205. void VpcClient::dissociateRouteTablesFromVpcGatewayEndpointAsync(const DissociateRouteTablesFromVpcGatewayEndpointRequest& request, const DissociateRouteTablesFromVpcGatewayEndpointAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6206. {
  6207. auto fn = [this, request, handler, context]()
  6208. {
  6209. handler(this, request, dissociateRouteTablesFromVpcGatewayEndpoint(request), context);
  6210. };
  6211. asyncExecute(new Runnable(fn));
  6212. }
  6213. VpcClient::DissociateRouteTablesFromVpcGatewayEndpointOutcomeCallable VpcClient::dissociateRouteTablesFromVpcGatewayEndpointCallable(const DissociateRouteTablesFromVpcGatewayEndpointRequest &request) const
  6214. {
  6215. auto task = std::make_shared<std::packaged_task<DissociateRouteTablesFromVpcGatewayEndpointOutcome()>>(
  6216. [this, request]()
  6217. {
  6218. return this->dissociateRouteTablesFromVpcGatewayEndpoint(request);
  6219. });
  6220. asyncExecute(new Runnable([task]() { (*task)(); }));
  6221. return task->get_future();
  6222. }
  6223. VpcClient::DissociateVpnGatewayWithCertificateOutcome VpcClient::dissociateVpnGatewayWithCertificate(const DissociateVpnGatewayWithCertificateRequest &request) const
  6224. {
  6225. auto endpointOutcome = endpointProvider_->getEndpoint();
  6226. if (!endpointOutcome.isSuccess())
  6227. return DissociateVpnGatewayWithCertificateOutcome(endpointOutcome.error());
  6228. auto outcome = makeRequest(endpointOutcome.result(), request);
  6229. if (outcome.isSuccess())
  6230. return DissociateVpnGatewayWithCertificateOutcome(DissociateVpnGatewayWithCertificateResult(outcome.result()));
  6231. else
  6232. return DissociateVpnGatewayWithCertificateOutcome(outcome.error());
  6233. }
  6234. void VpcClient::dissociateVpnGatewayWithCertificateAsync(const DissociateVpnGatewayWithCertificateRequest& request, const DissociateVpnGatewayWithCertificateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6235. {
  6236. auto fn = [this, request, handler, context]()
  6237. {
  6238. handler(this, request, dissociateVpnGatewayWithCertificate(request), context);
  6239. };
  6240. asyncExecute(new Runnable(fn));
  6241. }
  6242. VpcClient::DissociateVpnGatewayWithCertificateOutcomeCallable VpcClient::dissociateVpnGatewayWithCertificateCallable(const DissociateVpnGatewayWithCertificateRequest &request) const
  6243. {
  6244. auto task = std::make_shared<std::packaged_task<DissociateVpnGatewayWithCertificateOutcome()>>(
  6245. [this, request]()
  6246. {
  6247. return this->dissociateVpnGatewayWithCertificate(request);
  6248. });
  6249. asyncExecute(new Runnable([task]() { (*task)(); }));
  6250. return task->get_future();
  6251. }
  6252. VpcClient::DownloadVpnConnectionConfigOutcome VpcClient::downloadVpnConnectionConfig(const DownloadVpnConnectionConfigRequest &request) const
  6253. {
  6254. auto endpointOutcome = endpointProvider_->getEndpoint();
  6255. if (!endpointOutcome.isSuccess())
  6256. return DownloadVpnConnectionConfigOutcome(endpointOutcome.error());
  6257. auto outcome = makeRequest(endpointOutcome.result(), request);
  6258. if (outcome.isSuccess())
  6259. return DownloadVpnConnectionConfigOutcome(DownloadVpnConnectionConfigResult(outcome.result()));
  6260. else
  6261. return DownloadVpnConnectionConfigOutcome(outcome.error());
  6262. }
  6263. void VpcClient::downloadVpnConnectionConfigAsync(const DownloadVpnConnectionConfigRequest& request, const DownloadVpnConnectionConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6264. {
  6265. auto fn = [this, request, handler, context]()
  6266. {
  6267. handler(this, request, downloadVpnConnectionConfig(request), context);
  6268. };
  6269. asyncExecute(new Runnable(fn));
  6270. }
  6271. VpcClient::DownloadVpnConnectionConfigOutcomeCallable VpcClient::downloadVpnConnectionConfigCallable(const DownloadVpnConnectionConfigRequest &request) const
  6272. {
  6273. auto task = std::make_shared<std::packaged_task<DownloadVpnConnectionConfigOutcome()>>(
  6274. [this, request]()
  6275. {
  6276. return this->downloadVpnConnectionConfig(request);
  6277. });
  6278. asyncExecute(new Runnable([task]() { (*task)(); }));
  6279. return task->get_future();
  6280. }
  6281. VpcClient::EnableNatGatewayEcsMetricOutcome VpcClient::enableNatGatewayEcsMetric(const EnableNatGatewayEcsMetricRequest &request) const
  6282. {
  6283. auto endpointOutcome = endpointProvider_->getEndpoint();
  6284. if (!endpointOutcome.isSuccess())
  6285. return EnableNatGatewayEcsMetricOutcome(endpointOutcome.error());
  6286. auto outcome = makeRequest(endpointOutcome.result(), request);
  6287. if (outcome.isSuccess())
  6288. return EnableNatGatewayEcsMetricOutcome(EnableNatGatewayEcsMetricResult(outcome.result()));
  6289. else
  6290. return EnableNatGatewayEcsMetricOutcome(outcome.error());
  6291. }
  6292. void VpcClient::enableNatGatewayEcsMetricAsync(const EnableNatGatewayEcsMetricRequest& request, const EnableNatGatewayEcsMetricAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6293. {
  6294. auto fn = [this, request, handler, context]()
  6295. {
  6296. handler(this, request, enableNatGatewayEcsMetric(request), context);
  6297. };
  6298. asyncExecute(new Runnable(fn));
  6299. }
  6300. VpcClient::EnableNatGatewayEcsMetricOutcomeCallable VpcClient::enableNatGatewayEcsMetricCallable(const EnableNatGatewayEcsMetricRequest &request) const
  6301. {
  6302. auto task = std::make_shared<std::packaged_task<EnableNatGatewayEcsMetricOutcome()>>(
  6303. [this, request]()
  6304. {
  6305. return this->enableNatGatewayEcsMetric(request);
  6306. });
  6307. asyncExecute(new Runnable([task]() { (*task)(); }));
  6308. return task->get_future();
  6309. }
  6310. VpcClient::EnablePhysicalConnectionOutcome VpcClient::enablePhysicalConnection(const EnablePhysicalConnectionRequest &request) const
  6311. {
  6312. auto endpointOutcome = endpointProvider_->getEndpoint();
  6313. if (!endpointOutcome.isSuccess())
  6314. return EnablePhysicalConnectionOutcome(endpointOutcome.error());
  6315. auto outcome = makeRequest(endpointOutcome.result(), request);
  6316. if (outcome.isSuccess())
  6317. return EnablePhysicalConnectionOutcome(EnablePhysicalConnectionResult(outcome.result()));
  6318. else
  6319. return EnablePhysicalConnectionOutcome(outcome.error());
  6320. }
  6321. void VpcClient::enablePhysicalConnectionAsync(const EnablePhysicalConnectionRequest& request, const EnablePhysicalConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6322. {
  6323. auto fn = [this, request, handler, context]()
  6324. {
  6325. handler(this, request, enablePhysicalConnection(request), context);
  6326. };
  6327. asyncExecute(new Runnable(fn));
  6328. }
  6329. VpcClient::EnablePhysicalConnectionOutcomeCallable VpcClient::enablePhysicalConnectionCallable(const EnablePhysicalConnectionRequest &request) const
  6330. {
  6331. auto task = std::make_shared<std::packaged_task<EnablePhysicalConnectionOutcome()>>(
  6332. [this, request]()
  6333. {
  6334. return this->enablePhysicalConnection(request);
  6335. });
  6336. asyncExecute(new Runnable([task]() { (*task)(); }));
  6337. return task->get_future();
  6338. }
  6339. VpcClient::EnableVpcClassicLinkOutcome VpcClient::enableVpcClassicLink(const EnableVpcClassicLinkRequest &request) const
  6340. {
  6341. auto endpointOutcome = endpointProvider_->getEndpoint();
  6342. if (!endpointOutcome.isSuccess())
  6343. return EnableVpcClassicLinkOutcome(endpointOutcome.error());
  6344. auto outcome = makeRequest(endpointOutcome.result(), request);
  6345. if (outcome.isSuccess())
  6346. return EnableVpcClassicLinkOutcome(EnableVpcClassicLinkResult(outcome.result()));
  6347. else
  6348. return EnableVpcClassicLinkOutcome(outcome.error());
  6349. }
  6350. void VpcClient::enableVpcClassicLinkAsync(const EnableVpcClassicLinkRequest& request, const EnableVpcClassicLinkAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6351. {
  6352. auto fn = [this, request, handler, context]()
  6353. {
  6354. handler(this, request, enableVpcClassicLink(request), context);
  6355. };
  6356. asyncExecute(new Runnable(fn));
  6357. }
  6358. VpcClient::EnableVpcClassicLinkOutcomeCallable VpcClient::enableVpcClassicLinkCallable(const EnableVpcClassicLinkRequest &request) const
  6359. {
  6360. auto task = std::make_shared<std::packaged_task<EnableVpcClassicLinkOutcome()>>(
  6361. [this, request]()
  6362. {
  6363. return this->enableVpcClassicLink(request);
  6364. });
  6365. asyncExecute(new Runnable([task]() { (*task)(); }));
  6366. return task->get_future();
  6367. }
  6368. VpcClient::EnableVpcIpv4GatewayOutcome VpcClient::enableVpcIpv4Gateway(const EnableVpcIpv4GatewayRequest &request) const
  6369. {
  6370. auto endpointOutcome = endpointProvider_->getEndpoint();
  6371. if (!endpointOutcome.isSuccess())
  6372. return EnableVpcIpv4GatewayOutcome(endpointOutcome.error());
  6373. auto outcome = makeRequest(endpointOutcome.result(), request);
  6374. if (outcome.isSuccess())
  6375. return EnableVpcIpv4GatewayOutcome(EnableVpcIpv4GatewayResult(outcome.result()));
  6376. else
  6377. return EnableVpcIpv4GatewayOutcome(outcome.error());
  6378. }
  6379. void VpcClient::enableVpcIpv4GatewayAsync(const EnableVpcIpv4GatewayRequest& request, const EnableVpcIpv4GatewayAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6380. {
  6381. auto fn = [this, request, handler, context]()
  6382. {
  6383. handler(this, request, enableVpcIpv4Gateway(request), context);
  6384. };
  6385. asyncExecute(new Runnable(fn));
  6386. }
  6387. VpcClient::EnableVpcIpv4GatewayOutcomeCallable VpcClient::enableVpcIpv4GatewayCallable(const EnableVpcIpv4GatewayRequest &request) const
  6388. {
  6389. auto task = std::make_shared<std::packaged_task<EnableVpcIpv4GatewayOutcome()>>(
  6390. [this, request]()
  6391. {
  6392. return this->enableVpcIpv4Gateway(request);
  6393. });
  6394. asyncExecute(new Runnable([task]() { (*task)(); }));
  6395. return task->get_future();
  6396. }
  6397. VpcClient::GetDhcpOptionsSetOutcome VpcClient::getDhcpOptionsSet(const GetDhcpOptionsSetRequest &request) const
  6398. {
  6399. auto endpointOutcome = endpointProvider_->getEndpoint();
  6400. if (!endpointOutcome.isSuccess())
  6401. return GetDhcpOptionsSetOutcome(endpointOutcome.error());
  6402. auto outcome = makeRequest(endpointOutcome.result(), request);
  6403. if (outcome.isSuccess())
  6404. return GetDhcpOptionsSetOutcome(GetDhcpOptionsSetResult(outcome.result()));
  6405. else
  6406. return GetDhcpOptionsSetOutcome(outcome.error());
  6407. }
  6408. void VpcClient::getDhcpOptionsSetAsync(const GetDhcpOptionsSetRequest& request, const GetDhcpOptionsSetAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6409. {
  6410. auto fn = [this, request, handler, context]()
  6411. {
  6412. handler(this, request, getDhcpOptionsSet(request), context);
  6413. };
  6414. asyncExecute(new Runnable(fn));
  6415. }
  6416. VpcClient::GetDhcpOptionsSetOutcomeCallable VpcClient::getDhcpOptionsSetCallable(const GetDhcpOptionsSetRequest &request) const
  6417. {
  6418. auto task = std::make_shared<std::packaged_task<GetDhcpOptionsSetOutcome()>>(
  6419. [this, request]()
  6420. {
  6421. return this->getDhcpOptionsSet(request);
  6422. });
  6423. asyncExecute(new Runnable([task]() { (*task)(); }));
  6424. return task->get_future();
  6425. }
  6426. VpcClient::GetFlowLogServiceStatusOutcome VpcClient::getFlowLogServiceStatus(const GetFlowLogServiceStatusRequest &request) const
  6427. {
  6428. auto endpointOutcome = endpointProvider_->getEndpoint();
  6429. if (!endpointOutcome.isSuccess())
  6430. return GetFlowLogServiceStatusOutcome(endpointOutcome.error());
  6431. auto outcome = makeRequest(endpointOutcome.result(), request);
  6432. if (outcome.isSuccess())
  6433. return GetFlowLogServiceStatusOutcome(GetFlowLogServiceStatusResult(outcome.result()));
  6434. else
  6435. return GetFlowLogServiceStatusOutcome(outcome.error());
  6436. }
  6437. void VpcClient::getFlowLogServiceStatusAsync(const GetFlowLogServiceStatusRequest& request, const GetFlowLogServiceStatusAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6438. {
  6439. auto fn = [this, request, handler, context]()
  6440. {
  6441. handler(this, request, getFlowLogServiceStatus(request), context);
  6442. };
  6443. asyncExecute(new Runnable(fn));
  6444. }
  6445. VpcClient::GetFlowLogServiceStatusOutcomeCallable VpcClient::getFlowLogServiceStatusCallable(const GetFlowLogServiceStatusRequest &request) const
  6446. {
  6447. auto task = std::make_shared<std::packaged_task<GetFlowLogServiceStatusOutcome()>>(
  6448. [this, request]()
  6449. {
  6450. return this->getFlowLogServiceStatus(request);
  6451. });
  6452. asyncExecute(new Runnable([task]() { (*task)(); }));
  6453. return task->get_future();
  6454. }
  6455. VpcClient::GetIpv4GatewayAttributeOutcome VpcClient::getIpv4GatewayAttribute(const GetIpv4GatewayAttributeRequest &request) const
  6456. {
  6457. auto endpointOutcome = endpointProvider_->getEndpoint();
  6458. if (!endpointOutcome.isSuccess())
  6459. return GetIpv4GatewayAttributeOutcome(endpointOutcome.error());
  6460. auto outcome = makeRequest(endpointOutcome.result(), request);
  6461. if (outcome.isSuccess())
  6462. return GetIpv4GatewayAttributeOutcome(GetIpv4GatewayAttributeResult(outcome.result()));
  6463. else
  6464. return GetIpv4GatewayAttributeOutcome(outcome.error());
  6465. }
  6466. void VpcClient::getIpv4GatewayAttributeAsync(const GetIpv4GatewayAttributeRequest& request, const GetIpv4GatewayAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6467. {
  6468. auto fn = [this, request, handler, context]()
  6469. {
  6470. handler(this, request, getIpv4GatewayAttribute(request), context);
  6471. };
  6472. asyncExecute(new Runnable(fn));
  6473. }
  6474. VpcClient::GetIpv4GatewayAttributeOutcomeCallable VpcClient::getIpv4GatewayAttributeCallable(const GetIpv4GatewayAttributeRequest &request) const
  6475. {
  6476. auto task = std::make_shared<std::packaged_task<GetIpv4GatewayAttributeOutcome()>>(
  6477. [this, request]()
  6478. {
  6479. return this->getIpv4GatewayAttribute(request);
  6480. });
  6481. asyncExecute(new Runnable([task]() { (*task)(); }));
  6482. return task->get_future();
  6483. }
  6484. VpcClient::GetNatGatewayAttributeOutcome VpcClient::getNatGatewayAttribute(const GetNatGatewayAttributeRequest &request) const
  6485. {
  6486. auto endpointOutcome = endpointProvider_->getEndpoint();
  6487. if (!endpointOutcome.isSuccess())
  6488. return GetNatGatewayAttributeOutcome(endpointOutcome.error());
  6489. auto outcome = makeRequest(endpointOutcome.result(), request);
  6490. if (outcome.isSuccess())
  6491. return GetNatGatewayAttributeOutcome(GetNatGatewayAttributeResult(outcome.result()));
  6492. else
  6493. return GetNatGatewayAttributeOutcome(outcome.error());
  6494. }
  6495. void VpcClient::getNatGatewayAttributeAsync(const GetNatGatewayAttributeRequest& request, const GetNatGatewayAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6496. {
  6497. auto fn = [this, request, handler, context]()
  6498. {
  6499. handler(this, request, getNatGatewayAttribute(request), context);
  6500. };
  6501. asyncExecute(new Runnable(fn));
  6502. }
  6503. VpcClient::GetNatGatewayAttributeOutcomeCallable VpcClient::getNatGatewayAttributeCallable(const GetNatGatewayAttributeRequest &request) const
  6504. {
  6505. auto task = std::make_shared<std::packaged_task<GetNatGatewayAttributeOutcome()>>(
  6506. [this, request]()
  6507. {
  6508. return this->getNatGatewayAttribute(request);
  6509. });
  6510. asyncExecute(new Runnable([task]() { (*task)(); }));
  6511. return task->get_future();
  6512. }
  6513. VpcClient::GetNatGatewayConvertStatusOutcome VpcClient::getNatGatewayConvertStatus(const GetNatGatewayConvertStatusRequest &request) const
  6514. {
  6515. auto endpointOutcome = endpointProvider_->getEndpoint();
  6516. if (!endpointOutcome.isSuccess())
  6517. return GetNatGatewayConvertStatusOutcome(endpointOutcome.error());
  6518. auto outcome = makeRequest(endpointOutcome.result(), request);
  6519. if (outcome.isSuccess())
  6520. return GetNatGatewayConvertStatusOutcome(GetNatGatewayConvertStatusResult(outcome.result()));
  6521. else
  6522. return GetNatGatewayConvertStatusOutcome(outcome.error());
  6523. }
  6524. void VpcClient::getNatGatewayConvertStatusAsync(const GetNatGatewayConvertStatusRequest& request, const GetNatGatewayConvertStatusAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6525. {
  6526. auto fn = [this, request, handler, context]()
  6527. {
  6528. handler(this, request, getNatGatewayConvertStatus(request), context);
  6529. };
  6530. asyncExecute(new Runnable(fn));
  6531. }
  6532. VpcClient::GetNatGatewayConvertStatusOutcomeCallable VpcClient::getNatGatewayConvertStatusCallable(const GetNatGatewayConvertStatusRequest &request) const
  6533. {
  6534. auto task = std::make_shared<std::packaged_task<GetNatGatewayConvertStatusOutcome()>>(
  6535. [this, request]()
  6536. {
  6537. return this->getNatGatewayConvertStatus(request);
  6538. });
  6539. asyncExecute(new Runnable([task]() { (*task)(); }));
  6540. return task->get_future();
  6541. }
  6542. VpcClient::GetPhysicalConnectionServiceStatusOutcome VpcClient::getPhysicalConnectionServiceStatus(const GetPhysicalConnectionServiceStatusRequest &request) const
  6543. {
  6544. auto endpointOutcome = endpointProvider_->getEndpoint();
  6545. if (!endpointOutcome.isSuccess())
  6546. return GetPhysicalConnectionServiceStatusOutcome(endpointOutcome.error());
  6547. auto outcome = makeRequest(endpointOutcome.result(), request);
  6548. if (outcome.isSuccess())
  6549. return GetPhysicalConnectionServiceStatusOutcome(GetPhysicalConnectionServiceStatusResult(outcome.result()));
  6550. else
  6551. return GetPhysicalConnectionServiceStatusOutcome(outcome.error());
  6552. }
  6553. void VpcClient::getPhysicalConnectionServiceStatusAsync(const GetPhysicalConnectionServiceStatusRequest& request, const GetPhysicalConnectionServiceStatusAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6554. {
  6555. auto fn = [this, request, handler, context]()
  6556. {
  6557. handler(this, request, getPhysicalConnectionServiceStatus(request), context);
  6558. };
  6559. asyncExecute(new Runnable(fn));
  6560. }
  6561. VpcClient::GetPhysicalConnectionServiceStatusOutcomeCallable VpcClient::getPhysicalConnectionServiceStatusCallable(const GetPhysicalConnectionServiceStatusRequest &request) const
  6562. {
  6563. auto task = std::make_shared<std::packaged_task<GetPhysicalConnectionServiceStatusOutcome()>>(
  6564. [this, request]()
  6565. {
  6566. return this->getPhysicalConnectionServiceStatus(request);
  6567. });
  6568. asyncExecute(new Runnable([task]() { (*task)(); }));
  6569. return task->get_future();
  6570. }
  6571. VpcClient::GetTrafficMirrorServiceStatusOutcome VpcClient::getTrafficMirrorServiceStatus(const GetTrafficMirrorServiceStatusRequest &request) const
  6572. {
  6573. auto endpointOutcome = endpointProvider_->getEndpoint();
  6574. if (!endpointOutcome.isSuccess())
  6575. return GetTrafficMirrorServiceStatusOutcome(endpointOutcome.error());
  6576. auto outcome = makeRequest(endpointOutcome.result(), request);
  6577. if (outcome.isSuccess())
  6578. return GetTrafficMirrorServiceStatusOutcome(GetTrafficMirrorServiceStatusResult(outcome.result()));
  6579. else
  6580. return GetTrafficMirrorServiceStatusOutcome(outcome.error());
  6581. }
  6582. void VpcClient::getTrafficMirrorServiceStatusAsync(const GetTrafficMirrorServiceStatusRequest& request, const GetTrafficMirrorServiceStatusAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6583. {
  6584. auto fn = [this, request, handler, context]()
  6585. {
  6586. handler(this, request, getTrafficMirrorServiceStatus(request), context);
  6587. };
  6588. asyncExecute(new Runnable(fn));
  6589. }
  6590. VpcClient::GetTrafficMirrorServiceStatusOutcomeCallable VpcClient::getTrafficMirrorServiceStatusCallable(const GetTrafficMirrorServiceStatusRequest &request) const
  6591. {
  6592. auto task = std::make_shared<std::packaged_task<GetTrafficMirrorServiceStatusOutcome()>>(
  6593. [this, request]()
  6594. {
  6595. return this->getTrafficMirrorServiceStatus(request);
  6596. });
  6597. asyncExecute(new Runnable([task]() { (*task)(); }));
  6598. return task->get_future();
  6599. }
  6600. VpcClient::GetVpcGatewayEndpointAttributeOutcome VpcClient::getVpcGatewayEndpointAttribute(const GetVpcGatewayEndpointAttributeRequest &request) const
  6601. {
  6602. auto endpointOutcome = endpointProvider_->getEndpoint();
  6603. if (!endpointOutcome.isSuccess())
  6604. return GetVpcGatewayEndpointAttributeOutcome(endpointOutcome.error());
  6605. auto outcome = makeRequest(endpointOutcome.result(), request);
  6606. if (outcome.isSuccess())
  6607. return GetVpcGatewayEndpointAttributeOutcome(GetVpcGatewayEndpointAttributeResult(outcome.result()));
  6608. else
  6609. return GetVpcGatewayEndpointAttributeOutcome(outcome.error());
  6610. }
  6611. void VpcClient::getVpcGatewayEndpointAttributeAsync(const GetVpcGatewayEndpointAttributeRequest& request, const GetVpcGatewayEndpointAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6612. {
  6613. auto fn = [this, request, handler, context]()
  6614. {
  6615. handler(this, request, getVpcGatewayEndpointAttribute(request), context);
  6616. };
  6617. asyncExecute(new Runnable(fn));
  6618. }
  6619. VpcClient::GetVpcGatewayEndpointAttributeOutcomeCallable VpcClient::getVpcGatewayEndpointAttributeCallable(const GetVpcGatewayEndpointAttributeRequest &request) const
  6620. {
  6621. auto task = std::make_shared<std::packaged_task<GetVpcGatewayEndpointAttributeOutcome()>>(
  6622. [this, request]()
  6623. {
  6624. return this->getVpcGatewayEndpointAttribute(request);
  6625. });
  6626. asyncExecute(new Runnable([task]() { (*task)(); }));
  6627. return task->get_future();
  6628. }
  6629. VpcClient::GetVpcPrefixListAssociationsOutcome VpcClient::getVpcPrefixListAssociations(const GetVpcPrefixListAssociationsRequest &request) const
  6630. {
  6631. auto endpointOutcome = endpointProvider_->getEndpoint();
  6632. if (!endpointOutcome.isSuccess())
  6633. return GetVpcPrefixListAssociationsOutcome(endpointOutcome.error());
  6634. auto outcome = makeRequest(endpointOutcome.result(), request);
  6635. if (outcome.isSuccess())
  6636. return GetVpcPrefixListAssociationsOutcome(GetVpcPrefixListAssociationsResult(outcome.result()));
  6637. else
  6638. return GetVpcPrefixListAssociationsOutcome(outcome.error());
  6639. }
  6640. void VpcClient::getVpcPrefixListAssociationsAsync(const GetVpcPrefixListAssociationsRequest& request, const GetVpcPrefixListAssociationsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6641. {
  6642. auto fn = [this, request, handler, context]()
  6643. {
  6644. handler(this, request, getVpcPrefixListAssociations(request), context);
  6645. };
  6646. asyncExecute(new Runnable(fn));
  6647. }
  6648. VpcClient::GetVpcPrefixListAssociationsOutcomeCallable VpcClient::getVpcPrefixListAssociationsCallable(const GetVpcPrefixListAssociationsRequest &request) const
  6649. {
  6650. auto task = std::make_shared<std::packaged_task<GetVpcPrefixListAssociationsOutcome()>>(
  6651. [this, request]()
  6652. {
  6653. return this->getVpcPrefixListAssociations(request);
  6654. });
  6655. asyncExecute(new Runnable([task]() { (*task)(); }));
  6656. return task->get_future();
  6657. }
  6658. VpcClient::GetVpcPrefixListEntriesOutcome VpcClient::getVpcPrefixListEntries(const GetVpcPrefixListEntriesRequest &request) const
  6659. {
  6660. auto endpointOutcome = endpointProvider_->getEndpoint();
  6661. if (!endpointOutcome.isSuccess())
  6662. return GetVpcPrefixListEntriesOutcome(endpointOutcome.error());
  6663. auto outcome = makeRequest(endpointOutcome.result(), request);
  6664. if (outcome.isSuccess())
  6665. return GetVpcPrefixListEntriesOutcome(GetVpcPrefixListEntriesResult(outcome.result()));
  6666. else
  6667. return GetVpcPrefixListEntriesOutcome(outcome.error());
  6668. }
  6669. void VpcClient::getVpcPrefixListEntriesAsync(const GetVpcPrefixListEntriesRequest& request, const GetVpcPrefixListEntriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6670. {
  6671. auto fn = [this, request, handler, context]()
  6672. {
  6673. handler(this, request, getVpcPrefixListEntries(request), context);
  6674. };
  6675. asyncExecute(new Runnable(fn));
  6676. }
  6677. VpcClient::GetVpcPrefixListEntriesOutcomeCallable VpcClient::getVpcPrefixListEntriesCallable(const GetVpcPrefixListEntriesRequest &request) const
  6678. {
  6679. auto task = std::make_shared<std::packaged_task<GetVpcPrefixListEntriesOutcome()>>(
  6680. [this, request]()
  6681. {
  6682. return this->getVpcPrefixListEntries(request);
  6683. });
  6684. asyncExecute(new Runnable([task]() { (*task)(); }));
  6685. return task->get_future();
  6686. }
  6687. VpcClient::GetVpcRouteEntrySummaryOutcome VpcClient::getVpcRouteEntrySummary(const GetVpcRouteEntrySummaryRequest &request) const
  6688. {
  6689. auto endpointOutcome = endpointProvider_->getEndpoint();
  6690. if (!endpointOutcome.isSuccess())
  6691. return GetVpcRouteEntrySummaryOutcome(endpointOutcome.error());
  6692. auto outcome = makeRequest(endpointOutcome.result(), request);
  6693. if (outcome.isSuccess())
  6694. return GetVpcRouteEntrySummaryOutcome(GetVpcRouteEntrySummaryResult(outcome.result()));
  6695. else
  6696. return GetVpcRouteEntrySummaryOutcome(outcome.error());
  6697. }
  6698. void VpcClient::getVpcRouteEntrySummaryAsync(const GetVpcRouteEntrySummaryRequest& request, const GetVpcRouteEntrySummaryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6699. {
  6700. auto fn = [this, request, handler, context]()
  6701. {
  6702. handler(this, request, getVpcRouteEntrySummary(request), context);
  6703. };
  6704. asyncExecute(new Runnable(fn));
  6705. }
  6706. VpcClient::GetVpcRouteEntrySummaryOutcomeCallable VpcClient::getVpcRouteEntrySummaryCallable(const GetVpcRouteEntrySummaryRequest &request) const
  6707. {
  6708. auto task = std::make_shared<std::packaged_task<GetVpcRouteEntrySummaryOutcome()>>(
  6709. [this, request]()
  6710. {
  6711. return this->getVpcRouteEntrySummary(request);
  6712. });
  6713. asyncExecute(new Runnable([task]() { (*task)(); }));
  6714. return task->get_future();
  6715. }
  6716. VpcClient::GetVpnGatewayDiagnoseResultOutcome VpcClient::getVpnGatewayDiagnoseResult(const GetVpnGatewayDiagnoseResultRequest &request) const
  6717. {
  6718. auto endpointOutcome = endpointProvider_->getEndpoint();
  6719. if (!endpointOutcome.isSuccess())
  6720. return GetVpnGatewayDiagnoseResultOutcome(endpointOutcome.error());
  6721. auto outcome = makeRequest(endpointOutcome.result(), request);
  6722. if (outcome.isSuccess())
  6723. return GetVpnGatewayDiagnoseResultOutcome(GetVpnGatewayDiagnoseResultResult(outcome.result()));
  6724. else
  6725. return GetVpnGatewayDiagnoseResultOutcome(outcome.error());
  6726. }
  6727. void VpcClient::getVpnGatewayDiagnoseResultAsync(const GetVpnGatewayDiagnoseResultRequest& request, const GetVpnGatewayDiagnoseResultAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6728. {
  6729. auto fn = [this, request, handler, context]()
  6730. {
  6731. handler(this, request, getVpnGatewayDiagnoseResult(request), context);
  6732. };
  6733. asyncExecute(new Runnable(fn));
  6734. }
  6735. VpcClient::GetVpnGatewayDiagnoseResultOutcomeCallable VpcClient::getVpnGatewayDiagnoseResultCallable(const GetVpnGatewayDiagnoseResultRequest &request) const
  6736. {
  6737. auto task = std::make_shared<std::packaged_task<GetVpnGatewayDiagnoseResultOutcome()>>(
  6738. [this, request]()
  6739. {
  6740. return this->getVpnGatewayDiagnoseResult(request);
  6741. });
  6742. asyncExecute(new Runnable([task]() { (*task)(); }));
  6743. return task->get_future();
  6744. }
  6745. VpcClient::GrantInstanceToCenOutcome VpcClient::grantInstanceToCen(const GrantInstanceToCenRequest &request) const
  6746. {
  6747. auto endpointOutcome = endpointProvider_->getEndpoint();
  6748. if (!endpointOutcome.isSuccess())
  6749. return GrantInstanceToCenOutcome(endpointOutcome.error());
  6750. auto outcome = makeRequest(endpointOutcome.result(), request);
  6751. if (outcome.isSuccess())
  6752. return GrantInstanceToCenOutcome(GrantInstanceToCenResult(outcome.result()));
  6753. else
  6754. return GrantInstanceToCenOutcome(outcome.error());
  6755. }
  6756. void VpcClient::grantInstanceToCenAsync(const GrantInstanceToCenRequest& request, const GrantInstanceToCenAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6757. {
  6758. auto fn = [this, request, handler, context]()
  6759. {
  6760. handler(this, request, grantInstanceToCen(request), context);
  6761. };
  6762. asyncExecute(new Runnable(fn));
  6763. }
  6764. VpcClient::GrantInstanceToCenOutcomeCallable VpcClient::grantInstanceToCenCallable(const GrantInstanceToCenRequest &request) const
  6765. {
  6766. auto task = std::make_shared<std::packaged_task<GrantInstanceToCenOutcome()>>(
  6767. [this, request]()
  6768. {
  6769. return this->grantInstanceToCen(request);
  6770. });
  6771. asyncExecute(new Runnable([task]() { (*task)(); }));
  6772. return task->get_future();
  6773. }
  6774. VpcClient::GrantInstanceToVbrOutcome VpcClient::grantInstanceToVbr(const GrantInstanceToVbrRequest &request) const
  6775. {
  6776. auto endpointOutcome = endpointProvider_->getEndpoint();
  6777. if (!endpointOutcome.isSuccess())
  6778. return GrantInstanceToVbrOutcome(endpointOutcome.error());
  6779. auto outcome = makeRequest(endpointOutcome.result(), request);
  6780. if (outcome.isSuccess())
  6781. return GrantInstanceToVbrOutcome(GrantInstanceToVbrResult(outcome.result()));
  6782. else
  6783. return GrantInstanceToVbrOutcome(outcome.error());
  6784. }
  6785. void VpcClient::grantInstanceToVbrAsync(const GrantInstanceToVbrRequest& request, const GrantInstanceToVbrAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6786. {
  6787. auto fn = [this, request, handler, context]()
  6788. {
  6789. handler(this, request, grantInstanceToVbr(request), context);
  6790. };
  6791. asyncExecute(new Runnable(fn));
  6792. }
  6793. VpcClient::GrantInstanceToVbrOutcomeCallable VpcClient::grantInstanceToVbrCallable(const GrantInstanceToVbrRequest &request) const
  6794. {
  6795. auto task = std::make_shared<std::packaged_task<GrantInstanceToVbrOutcome()>>(
  6796. [this, request]()
  6797. {
  6798. return this->grantInstanceToVbr(request);
  6799. });
  6800. asyncExecute(new Runnable([task]() { (*task)(); }));
  6801. return task->get_future();
  6802. }
  6803. VpcClient::ListBusinessAccessPointsOutcome VpcClient::listBusinessAccessPoints(const ListBusinessAccessPointsRequest &request) const
  6804. {
  6805. auto endpointOutcome = endpointProvider_->getEndpoint();
  6806. if (!endpointOutcome.isSuccess())
  6807. return ListBusinessAccessPointsOutcome(endpointOutcome.error());
  6808. auto outcome = makeRequest(endpointOutcome.result(), request);
  6809. if (outcome.isSuccess())
  6810. return ListBusinessAccessPointsOutcome(ListBusinessAccessPointsResult(outcome.result()));
  6811. else
  6812. return ListBusinessAccessPointsOutcome(outcome.error());
  6813. }
  6814. void VpcClient::listBusinessAccessPointsAsync(const ListBusinessAccessPointsRequest& request, const ListBusinessAccessPointsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6815. {
  6816. auto fn = [this, request, handler, context]()
  6817. {
  6818. handler(this, request, listBusinessAccessPoints(request), context);
  6819. };
  6820. asyncExecute(new Runnable(fn));
  6821. }
  6822. VpcClient::ListBusinessAccessPointsOutcomeCallable VpcClient::listBusinessAccessPointsCallable(const ListBusinessAccessPointsRequest &request) const
  6823. {
  6824. auto task = std::make_shared<std::packaged_task<ListBusinessAccessPointsOutcome()>>(
  6825. [this, request]()
  6826. {
  6827. return this->listBusinessAccessPoints(request);
  6828. });
  6829. asyncExecute(new Runnable([task]() { (*task)(); }));
  6830. return task->get_future();
  6831. }
  6832. VpcClient::ListDhcpOptionsSetsOutcome VpcClient::listDhcpOptionsSets(const ListDhcpOptionsSetsRequest &request) const
  6833. {
  6834. auto endpointOutcome = endpointProvider_->getEndpoint();
  6835. if (!endpointOutcome.isSuccess())
  6836. return ListDhcpOptionsSetsOutcome(endpointOutcome.error());
  6837. auto outcome = makeRequest(endpointOutcome.result(), request);
  6838. if (outcome.isSuccess())
  6839. return ListDhcpOptionsSetsOutcome(ListDhcpOptionsSetsResult(outcome.result()));
  6840. else
  6841. return ListDhcpOptionsSetsOutcome(outcome.error());
  6842. }
  6843. void VpcClient::listDhcpOptionsSetsAsync(const ListDhcpOptionsSetsRequest& request, const ListDhcpOptionsSetsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6844. {
  6845. auto fn = [this, request, handler, context]()
  6846. {
  6847. handler(this, request, listDhcpOptionsSets(request), context);
  6848. };
  6849. asyncExecute(new Runnable(fn));
  6850. }
  6851. VpcClient::ListDhcpOptionsSetsOutcomeCallable VpcClient::listDhcpOptionsSetsCallable(const ListDhcpOptionsSetsRequest &request) const
  6852. {
  6853. auto task = std::make_shared<std::packaged_task<ListDhcpOptionsSetsOutcome()>>(
  6854. [this, request]()
  6855. {
  6856. return this->listDhcpOptionsSets(request);
  6857. });
  6858. asyncExecute(new Runnable([task]() { (*task)(); }));
  6859. return task->get_future();
  6860. }
  6861. VpcClient::ListEnhanhcedNatGatewayAvailableZonesOutcome VpcClient::listEnhanhcedNatGatewayAvailableZones(const ListEnhanhcedNatGatewayAvailableZonesRequest &request) const
  6862. {
  6863. auto endpointOutcome = endpointProvider_->getEndpoint();
  6864. if (!endpointOutcome.isSuccess())
  6865. return ListEnhanhcedNatGatewayAvailableZonesOutcome(endpointOutcome.error());
  6866. auto outcome = makeRequest(endpointOutcome.result(), request);
  6867. if (outcome.isSuccess())
  6868. return ListEnhanhcedNatGatewayAvailableZonesOutcome(ListEnhanhcedNatGatewayAvailableZonesResult(outcome.result()));
  6869. else
  6870. return ListEnhanhcedNatGatewayAvailableZonesOutcome(outcome.error());
  6871. }
  6872. void VpcClient::listEnhanhcedNatGatewayAvailableZonesAsync(const ListEnhanhcedNatGatewayAvailableZonesRequest& request, const ListEnhanhcedNatGatewayAvailableZonesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6873. {
  6874. auto fn = [this, request, handler, context]()
  6875. {
  6876. handler(this, request, listEnhanhcedNatGatewayAvailableZones(request), context);
  6877. };
  6878. asyncExecute(new Runnable(fn));
  6879. }
  6880. VpcClient::ListEnhanhcedNatGatewayAvailableZonesOutcomeCallable VpcClient::listEnhanhcedNatGatewayAvailableZonesCallable(const ListEnhanhcedNatGatewayAvailableZonesRequest &request) const
  6881. {
  6882. auto task = std::make_shared<std::packaged_task<ListEnhanhcedNatGatewayAvailableZonesOutcome()>>(
  6883. [this, request]()
  6884. {
  6885. return this->listEnhanhcedNatGatewayAvailableZones(request);
  6886. });
  6887. asyncExecute(new Runnable([task]() { (*task)(); }));
  6888. return task->get_future();
  6889. }
  6890. VpcClient::ListFullNatEntriesOutcome VpcClient::listFullNatEntries(const ListFullNatEntriesRequest &request) const
  6891. {
  6892. auto endpointOutcome = endpointProvider_->getEndpoint();
  6893. if (!endpointOutcome.isSuccess())
  6894. return ListFullNatEntriesOutcome(endpointOutcome.error());
  6895. auto outcome = makeRequest(endpointOutcome.result(), request);
  6896. if (outcome.isSuccess())
  6897. return ListFullNatEntriesOutcome(ListFullNatEntriesResult(outcome.result()));
  6898. else
  6899. return ListFullNatEntriesOutcome(outcome.error());
  6900. }
  6901. void VpcClient::listFullNatEntriesAsync(const ListFullNatEntriesRequest& request, const ListFullNatEntriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6902. {
  6903. auto fn = [this, request, handler, context]()
  6904. {
  6905. handler(this, request, listFullNatEntries(request), context);
  6906. };
  6907. asyncExecute(new Runnable(fn));
  6908. }
  6909. VpcClient::ListFullNatEntriesOutcomeCallable VpcClient::listFullNatEntriesCallable(const ListFullNatEntriesRequest &request) const
  6910. {
  6911. auto task = std::make_shared<std::packaged_task<ListFullNatEntriesOutcome()>>(
  6912. [this, request]()
  6913. {
  6914. return this->listFullNatEntries(request);
  6915. });
  6916. asyncExecute(new Runnable([task]() { (*task)(); }));
  6917. return task->get_future();
  6918. }
  6919. VpcClient::ListGatewayRouteTableEntriesOutcome VpcClient::listGatewayRouteTableEntries(const ListGatewayRouteTableEntriesRequest &request) const
  6920. {
  6921. auto endpointOutcome = endpointProvider_->getEndpoint();
  6922. if (!endpointOutcome.isSuccess())
  6923. return ListGatewayRouteTableEntriesOutcome(endpointOutcome.error());
  6924. auto outcome = makeRequest(endpointOutcome.result(), request);
  6925. if (outcome.isSuccess())
  6926. return ListGatewayRouteTableEntriesOutcome(ListGatewayRouteTableEntriesResult(outcome.result()));
  6927. else
  6928. return ListGatewayRouteTableEntriesOutcome(outcome.error());
  6929. }
  6930. void VpcClient::listGatewayRouteTableEntriesAsync(const ListGatewayRouteTableEntriesRequest& request, const ListGatewayRouteTableEntriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6931. {
  6932. auto fn = [this, request, handler, context]()
  6933. {
  6934. handler(this, request, listGatewayRouteTableEntries(request), context);
  6935. };
  6936. asyncExecute(new Runnable(fn));
  6937. }
  6938. VpcClient::ListGatewayRouteTableEntriesOutcomeCallable VpcClient::listGatewayRouteTableEntriesCallable(const ListGatewayRouteTableEntriesRequest &request) const
  6939. {
  6940. auto task = std::make_shared<std::packaged_task<ListGatewayRouteTableEntriesOutcome()>>(
  6941. [this, request]()
  6942. {
  6943. return this->listGatewayRouteTableEntries(request);
  6944. });
  6945. asyncExecute(new Runnable([task]() { (*task)(); }));
  6946. return task->get_future();
  6947. }
  6948. VpcClient::ListGeographicSubRegionsOutcome VpcClient::listGeographicSubRegions(const ListGeographicSubRegionsRequest &request) const
  6949. {
  6950. auto endpointOutcome = endpointProvider_->getEndpoint();
  6951. if (!endpointOutcome.isSuccess())
  6952. return ListGeographicSubRegionsOutcome(endpointOutcome.error());
  6953. auto outcome = makeRequest(endpointOutcome.result(), request);
  6954. if (outcome.isSuccess())
  6955. return ListGeographicSubRegionsOutcome(ListGeographicSubRegionsResult(outcome.result()));
  6956. else
  6957. return ListGeographicSubRegionsOutcome(outcome.error());
  6958. }
  6959. void VpcClient::listGeographicSubRegionsAsync(const ListGeographicSubRegionsRequest& request, const ListGeographicSubRegionsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6960. {
  6961. auto fn = [this, request, handler, context]()
  6962. {
  6963. handler(this, request, listGeographicSubRegions(request), context);
  6964. };
  6965. asyncExecute(new Runnable(fn));
  6966. }
  6967. VpcClient::ListGeographicSubRegionsOutcomeCallable VpcClient::listGeographicSubRegionsCallable(const ListGeographicSubRegionsRequest &request) const
  6968. {
  6969. auto task = std::make_shared<std::packaged_task<ListGeographicSubRegionsOutcome()>>(
  6970. [this, request]()
  6971. {
  6972. return this->listGeographicSubRegions(request);
  6973. });
  6974. asyncExecute(new Runnable([task]() { (*task)(); }));
  6975. return task->get_future();
  6976. }
  6977. VpcClient::ListIpsecServerLogsOutcome VpcClient::listIpsecServerLogs(const ListIpsecServerLogsRequest &request) const
  6978. {
  6979. auto endpointOutcome = endpointProvider_->getEndpoint();
  6980. if (!endpointOutcome.isSuccess())
  6981. return ListIpsecServerLogsOutcome(endpointOutcome.error());
  6982. auto outcome = makeRequest(endpointOutcome.result(), request);
  6983. if (outcome.isSuccess())
  6984. return ListIpsecServerLogsOutcome(ListIpsecServerLogsResult(outcome.result()));
  6985. else
  6986. return ListIpsecServerLogsOutcome(outcome.error());
  6987. }
  6988. void VpcClient::listIpsecServerLogsAsync(const ListIpsecServerLogsRequest& request, const ListIpsecServerLogsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  6989. {
  6990. auto fn = [this, request, handler, context]()
  6991. {
  6992. handler(this, request, listIpsecServerLogs(request), context);
  6993. };
  6994. asyncExecute(new Runnable(fn));
  6995. }
  6996. VpcClient::ListIpsecServerLogsOutcomeCallable VpcClient::listIpsecServerLogsCallable(const ListIpsecServerLogsRequest &request) const
  6997. {
  6998. auto task = std::make_shared<std::packaged_task<ListIpsecServerLogsOutcome()>>(
  6999. [this, request]()
  7000. {
  7001. return this->listIpsecServerLogs(request);
  7002. });
  7003. asyncExecute(new Runnable([task]() { (*task)(); }));
  7004. return task->get_future();
  7005. }
  7006. VpcClient::ListIpsecServersOutcome VpcClient::listIpsecServers(const ListIpsecServersRequest &request) const
  7007. {
  7008. auto endpointOutcome = endpointProvider_->getEndpoint();
  7009. if (!endpointOutcome.isSuccess())
  7010. return ListIpsecServersOutcome(endpointOutcome.error());
  7011. auto outcome = makeRequest(endpointOutcome.result(), request);
  7012. if (outcome.isSuccess())
  7013. return ListIpsecServersOutcome(ListIpsecServersResult(outcome.result()));
  7014. else
  7015. return ListIpsecServersOutcome(outcome.error());
  7016. }
  7017. void VpcClient::listIpsecServersAsync(const ListIpsecServersRequest& request, const ListIpsecServersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7018. {
  7019. auto fn = [this, request, handler, context]()
  7020. {
  7021. handler(this, request, listIpsecServers(request), context);
  7022. };
  7023. asyncExecute(new Runnable(fn));
  7024. }
  7025. VpcClient::ListIpsecServersOutcomeCallable VpcClient::listIpsecServersCallable(const ListIpsecServersRequest &request) const
  7026. {
  7027. auto task = std::make_shared<std::packaged_task<ListIpsecServersOutcome()>>(
  7028. [this, request]()
  7029. {
  7030. return this->listIpsecServers(request);
  7031. });
  7032. asyncExecute(new Runnable([task]() { (*task)(); }));
  7033. return task->get_future();
  7034. }
  7035. VpcClient::ListIpv4GatewaysOutcome VpcClient::listIpv4Gateways(const ListIpv4GatewaysRequest &request) const
  7036. {
  7037. auto endpointOutcome = endpointProvider_->getEndpoint();
  7038. if (!endpointOutcome.isSuccess())
  7039. return ListIpv4GatewaysOutcome(endpointOutcome.error());
  7040. auto outcome = makeRequest(endpointOutcome.result(), request);
  7041. if (outcome.isSuccess())
  7042. return ListIpv4GatewaysOutcome(ListIpv4GatewaysResult(outcome.result()));
  7043. else
  7044. return ListIpv4GatewaysOutcome(outcome.error());
  7045. }
  7046. void VpcClient::listIpv4GatewaysAsync(const ListIpv4GatewaysRequest& request, const ListIpv4GatewaysAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7047. {
  7048. auto fn = [this, request, handler, context]()
  7049. {
  7050. handler(this, request, listIpv4Gateways(request), context);
  7051. };
  7052. asyncExecute(new Runnable(fn));
  7053. }
  7054. VpcClient::ListIpv4GatewaysOutcomeCallable VpcClient::listIpv4GatewaysCallable(const ListIpv4GatewaysRequest &request) const
  7055. {
  7056. auto task = std::make_shared<std::packaged_task<ListIpv4GatewaysOutcome()>>(
  7057. [this, request]()
  7058. {
  7059. return this->listIpv4Gateways(request);
  7060. });
  7061. asyncExecute(new Runnable([task]() { (*task)(); }));
  7062. return task->get_future();
  7063. }
  7064. VpcClient::ListNatIpCidrsOutcome VpcClient::listNatIpCidrs(const ListNatIpCidrsRequest &request) const
  7065. {
  7066. auto endpointOutcome = endpointProvider_->getEndpoint();
  7067. if (!endpointOutcome.isSuccess())
  7068. return ListNatIpCidrsOutcome(endpointOutcome.error());
  7069. auto outcome = makeRequest(endpointOutcome.result(), request);
  7070. if (outcome.isSuccess())
  7071. return ListNatIpCidrsOutcome(ListNatIpCidrsResult(outcome.result()));
  7072. else
  7073. return ListNatIpCidrsOutcome(outcome.error());
  7074. }
  7075. void VpcClient::listNatIpCidrsAsync(const ListNatIpCidrsRequest& request, const ListNatIpCidrsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7076. {
  7077. auto fn = [this, request, handler, context]()
  7078. {
  7079. handler(this, request, listNatIpCidrs(request), context);
  7080. };
  7081. asyncExecute(new Runnable(fn));
  7082. }
  7083. VpcClient::ListNatIpCidrsOutcomeCallable VpcClient::listNatIpCidrsCallable(const ListNatIpCidrsRequest &request) const
  7084. {
  7085. auto task = std::make_shared<std::packaged_task<ListNatIpCidrsOutcome()>>(
  7086. [this, request]()
  7087. {
  7088. return this->listNatIpCidrs(request);
  7089. });
  7090. asyncExecute(new Runnable([task]() { (*task)(); }));
  7091. return task->get_future();
  7092. }
  7093. VpcClient::ListNatIpsOutcome VpcClient::listNatIps(const ListNatIpsRequest &request) const
  7094. {
  7095. auto endpointOutcome = endpointProvider_->getEndpoint();
  7096. if (!endpointOutcome.isSuccess())
  7097. return ListNatIpsOutcome(endpointOutcome.error());
  7098. auto outcome = makeRequest(endpointOutcome.result(), request);
  7099. if (outcome.isSuccess())
  7100. return ListNatIpsOutcome(ListNatIpsResult(outcome.result()));
  7101. else
  7102. return ListNatIpsOutcome(outcome.error());
  7103. }
  7104. void VpcClient::listNatIpsAsync(const ListNatIpsRequest& request, const ListNatIpsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7105. {
  7106. auto fn = [this, request, handler, context]()
  7107. {
  7108. handler(this, request, listNatIps(request), context);
  7109. };
  7110. asyncExecute(new Runnable(fn));
  7111. }
  7112. VpcClient::ListNatIpsOutcomeCallable VpcClient::listNatIpsCallable(const ListNatIpsRequest &request) const
  7113. {
  7114. auto task = std::make_shared<std::packaged_task<ListNatIpsOutcome()>>(
  7115. [this, request]()
  7116. {
  7117. return this->listNatIps(request);
  7118. });
  7119. asyncExecute(new Runnable([task]() { (*task)(); }));
  7120. return task->get_future();
  7121. }
  7122. VpcClient::ListPrefixListsOutcome VpcClient::listPrefixLists(const ListPrefixListsRequest &request) const
  7123. {
  7124. auto endpointOutcome = endpointProvider_->getEndpoint();
  7125. if (!endpointOutcome.isSuccess())
  7126. return ListPrefixListsOutcome(endpointOutcome.error());
  7127. auto outcome = makeRequest(endpointOutcome.result(), request);
  7128. if (outcome.isSuccess())
  7129. return ListPrefixListsOutcome(ListPrefixListsResult(outcome.result()));
  7130. else
  7131. return ListPrefixListsOutcome(outcome.error());
  7132. }
  7133. void VpcClient::listPrefixListsAsync(const ListPrefixListsRequest& request, const ListPrefixListsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7134. {
  7135. auto fn = [this, request, handler, context]()
  7136. {
  7137. handler(this, request, listPrefixLists(request), context);
  7138. };
  7139. asyncExecute(new Runnable(fn));
  7140. }
  7141. VpcClient::ListPrefixListsOutcomeCallable VpcClient::listPrefixListsCallable(const ListPrefixListsRequest &request) const
  7142. {
  7143. auto task = std::make_shared<std::packaged_task<ListPrefixListsOutcome()>>(
  7144. [this, request]()
  7145. {
  7146. return this->listPrefixLists(request);
  7147. });
  7148. asyncExecute(new Runnable([task]() { (*task)(); }));
  7149. return task->get_future();
  7150. }
  7151. VpcClient::ListPublicIpAddressPoolCidrBlocksOutcome VpcClient::listPublicIpAddressPoolCidrBlocks(const ListPublicIpAddressPoolCidrBlocksRequest &request) const
  7152. {
  7153. auto endpointOutcome = endpointProvider_->getEndpoint();
  7154. if (!endpointOutcome.isSuccess())
  7155. return ListPublicIpAddressPoolCidrBlocksOutcome(endpointOutcome.error());
  7156. auto outcome = makeRequest(endpointOutcome.result(), request);
  7157. if (outcome.isSuccess())
  7158. return ListPublicIpAddressPoolCidrBlocksOutcome(ListPublicIpAddressPoolCidrBlocksResult(outcome.result()));
  7159. else
  7160. return ListPublicIpAddressPoolCidrBlocksOutcome(outcome.error());
  7161. }
  7162. void VpcClient::listPublicIpAddressPoolCidrBlocksAsync(const ListPublicIpAddressPoolCidrBlocksRequest& request, const ListPublicIpAddressPoolCidrBlocksAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7163. {
  7164. auto fn = [this, request, handler, context]()
  7165. {
  7166. handler(this, request, listPublicIpAddressPoolCidrBlocks(request), context);
  7167. };
  7168. asyncExecute(new Runnable(fn));
  7169. }
  7170. VpcClient::ListPublicIpAddressPoolCidrBlocksOutcomeCallable VpcClient::listPublicIpAddressPoolCidrBlocksCallable(const ListPublicIpAddressPoolCidrBlocksRequest &request) const
  7171. {
  7172. auto task = std::make_shared<std::packaged_task<ListPublicIpAddressPoolCidrBlocksOutcome()>>(
  7173. [this, request]()
  7174. {
  7175. return this->listPublicIpAddressPoolCidrBlocks(request);
  7176. });
  7177. asyncExecute(new Runnable([task]() { (*task)(); }));
  7178. return task->get_future();
  7179. }
  7180. VpcClient::ListPublicIpAddressPoolsOutcome VpcClient::listPublicIpAddressPools(const ListPublicIpAddressPoolsRequest &request) const
  7181. {
  7182. auto endpointOutcome = endpointProvider_->getEndpoint();
  7183. if (!endpointOutcome.isSuccess())
  7184. return ListPublicIpAddressPoolsOutcome(endpointOutcome.error());
  7185. auto outcome = makeRequest(endpointOutcome.result(), request);
  7186. if (outcome.isSuccess())
  7187. return ListPublicIpAddressPoolsOutcome(ListPublicIpAddressPoolsResult(outcome.result()));
  7188. else
  7189. return ListPublicIpAddressPoolsOutcome(outcome.error());
  7190. }
  7191. void VpcClient::listPublicIpAddressPoolsAsync(const ListPublicIpAddressPoolsRequest& request, const ListPublicIpAddressPoolsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7192. {
  7193. auto fn = [this, request, handler, context]()
  7194. {
  7195. handler(this, request, listPublicIpAddressPools(request), context);
  7196. };
  7197. asyncExecute(new Runnable(fn));
  7198. }
  7199. VpcClient::ListPublicIpAddressPoolsOutcomeCallable VpcClient::listPublicIpAddressPoolsCallable(const ListPublicIpAddressPoolsRequest &request) const
  7200. {
  7201. auto task = std::make_shared<std::packaged_task<ListPublicIpAddressPoolsOutcome()>>(
  7202. [this, request]()
  7203. {
  7204. return this->listPublicIpAddressPools(request);
  7205. });
  7206. asyncExecute(new Runnable([task]() { (*task)(); }));
  7207. return task->get_future();
  7208. }
  7209. VpcClient::ListTagResourcesOutcome VpcClient::listTagResources(const ListTagResourcesRequest &request) const
  7210. {
  7211. auto endpointOutcome = endpointProvider_->getEndpoint();
  7212. if (!endpointOutcome.isSuccess())
  7213. return ListTagResourcesOutcome(endpointOutcome.error());
  7214. auto outcome = makeRequest(endpointOutcome.result(), request);
  7215. if (outcome.isSuccess())
  7216. return ListTagResourcesOutcome(ListTagResourcesResult(outcome.result()));
  7217. else
  7218. return ListTagResourcesOutcome(outcome.error());
  7219. }
  7220. void VpcClient::listTagResourcesAsync(const ListTagResourcesRequest& request, const ListTagResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7221. {
  7222. auto fn = [this, request, handler, context]()
  7223. {
  7224. handler(this, request, listTagResources(request), context);
  7225. };
  7226. asyncExecute(new Runnable(fn));
  7227. }
  7228. VpcClient::ListTagResourcesOutcomeCallable VpcClient::listTagResourcesCallable(const ListTagResourcesRequest &request) const
  7229. {
  7230. auto task = std::make_shared<std::packaged_task<ListTagResourcesOutcome()>>(
  7231. [this, request]()
  7232. {
  7233. return this->listTagResources(request);
  7234. });
  7235. asyncExecute(new Runnable([task]() { (*task)(); }));
  7236. return task->get_future();
  7237. }
  7238. VpcClient::ListTagResourcesForExpressConnectOutcome VpcClient::listTagResourcesForExpressConnect(const ListTagResourcesForExpressConnectRequest &request) const
  7239. {
  7240. auto endpointOutcome = endpointProvider_->getEndpoint();
  7241. if (!endpointOutcome.isSuccess())
  7242. return ListTagResourcesForExpressConnectOutcome(endpointOutcome.error());
  7243. auto outcome = makeRequest(endpointOutcome.result(), request);
  7244. if (outcome.isSuccess())
  7245. return ListTagResourcesForExpressConnectOutcome(ListTagResourcesForExpressConnectResult(outcome.result()));
  7246. else
  7247. return ListTagResourcesForExpressConnectOutcome(outcome.error());
  7248. }
  7249. void VpcClient::listTagResourcesForExpressConnectAsync(const ListTagResourcesForExpressConnectRequest& request, const ListTagResourcesForExpressConnectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7250. {
  7251. auto fn = [this, request, handler, context]()
  7252. {
  7253. handler(this, request, listTagResourcesForExpressConnect(request), context);
  7254. };
  7255. asyncExecute(new Runnable(fn));
  7256. }
  7257. VpcClient::ListTagResourcesForExpressConnectOutcomeCallable VpcClient::listTagResourcesForExpressConnectCallable(const ListTagResourcesForExpressConnectRequest &request) const
  7258. {
  7259. auto task = std::make_shared<std::packaged_task<ListTagResourcesForExpressConnectOutcome()>>(
  7260. [this, request]()
  7261. {
  7262. return this->listTagResourcesForExpressConnect(request);
  7263. });
  7264. asyncExecute(new Runnable([task]() { (*task)(); }));
  7265. return task->get_future();
  7266. }
  7267. VpcClient::ListTrafficMirrorFiltersOutcome VpcClient::listTrafficMirrorFilters(const ListTrafficMirrorFiltersRequest &request) const
  7268. {
  7269. auto endpointOutcome = endpointProvider_->getEndpoint();
  7270. if (!endpointOutcome.isSuccess())
  7271. return ListTrafficMirrorFiltersOutcome(endpointOutcome.error());
  7272. auto outcome = makeRequest(endpointOutcome.result(), request);
  7273. if (outcome.isSuccess())
  7274. return ListTrafficMirrorFiltersOutcome(ListTrafficMirrorFiltersResult(outcome.result()));
  7275. else
  7276. return ListTrafficMirrorFiltersOutcome(outcome.error());
  7277. }
  7278. void VpcClient::listTrafficMirrorFiltersAsync(const ListTrafficMirrorFiltersRequest& request, const ListTrafficMirrorFiltersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7279. {
  7280. auto fn = [this, request, handler, context]()
  7281. {
  7282. handler(this, request, listTrafficMirrorFilters(request), context);
  7283. };
  7284. asyncExecute(new Runnable(fn));
  7285. }
  7286. VpcClient::ListTrafficMirrorFiltersOutcomeCallable VpcClient::listTrafficMirrorFiltersCallable(const ListTrafficMirrorFiltersRequest &request) const
  7287. {
  7288. auto task = std::make_shared<std::packaged_task<ListTrafficMirrorFiltersOutcome()>>(
  7289. [this, request]()
  7290. {
  7291. return this->listTrafficMirrorFilters(request);
  7292. });
  7293. asyncExecute(new Runnable([task]() { (*task)(); }));
  7294. return task->get_future();
  7295. }
  7296. VpcClient::ListTrafficMirrorSessionsOutcome VpcClient::listTrafficMirrorSessions(const ListTrafficMirrorSessionsRequest &request) const
  7297. {
  7298. auto endpointOutcome = endpointProvider_->getEndpoint();
  7299. if (!endpointOutcome.isSuccess())
  7300. return ListTrafficMirrorSessionsOutcome(endpointOutcome.error());
  7301. auto outcome = makeRequest(endpointOutcome.result(), request);
  7302. if (outcome.isSuccess())
  7303. return ListTrafficMirrorSessionsOutcome(ListTrafficMirrorSessionsResult(outcome.result()));
  7304. else
  7305. return ListTrafficMirrorSessionsOutcome(outcome.error());
  7306. }
  7307. void VpcClient::listTrafficMirrorSessionsAsync(const ListTrafficMirrorSessionsRequest& request, const ListTrafficMirrorSessionsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7308. {
  7309. auto fn = [this, request, handler, context]()
  7310. {
  7311. handler(this, request, listTrafficMirrorSessions(request), context);
  7312. };
  7313. asyncExecute(new Runnable(fn));
  7314. }
  7315. VpcClient::ListTrafficMirrorSessionsOutcomeCallable VpcClient::listTrafficMirrorSessionsCallable(const ListTrafficMirrorSessionsRequest &request) const
  7316. {
  7317. auto task = std::make_shared<std::packaged_task<ListTrafficMirrorSessionsOutcome()>>(
  7318. [this, request]()
  7319. {
  7320. return this->listTrafficMirrorSessions(request);
  7321. });
  7322. asyncExecute(new Runnable([task]() { (*task)(); }));
  7323. return task->get_future();
  7324. }
  7325. VpcClient::ListVirtualPhysicalConnectionsOutcome VpcClient::listVirtualPhysicalConnections(const ListVirtualPhysicalConnectionsRequest &request) const
  7326. {
  7327. auto endpointOutcome = endpointProvider_->getEndpoint();
  7328. if (!endpointOutcome.isSuccess())
  7329. return ListVirtualPhysicalConnectionsOutcome(endpointOutcome.error());
  7330. auto outcome = makeRequest(endpointOutcome.result(), request);
  7331. if (outcome.isSuccess())
  7332. return ListVirtualPhysicalConnectionsOutcome(ListVirtualPhysicalConnectionsResult(outcome.result()));
  7333. else
  7334. return ListVirtualPhysicalConnectionsOutcome(outcome.error());
  7335. }
  7336. void VpcClient::listVirtualPhysicalConnectionsAsync(const ListVirtualPhysicalConnectionsRequest& request, const ListVirtualPhysicalConnectionsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7337. {
  7338. auto fn = [this, request, handler, context]()
  7339. {
  7340. handler(this, request, listVirtualPhysicalConnections(request), context);
  7341. };
  7342. asyncExecute(new Runnable(fn));
  7343. }
  7344. VpcClient::ListVirtualPhysicalConnectionsOutcomeCallable VpcClient::listVirtualPhysicalConnectionsCallable(const ListVirtualPhysicalConnectionsRequest &request) const
  7345. {
  7346. auto task = std::make_shared<std::packaged_task<ListVirtualPhysicalConnectionsOutcome()>>(
  7347. [this, request]()
  7348. {
  7349. return this->listVirtualPhysicalConnections(request);
  7350. });
  7351. asyncExecute(new Runnable([task]() { (*task)(); }));
  7352. return task->get_future();
  7353. }
  7354. VpcClient::ListVpcEndpointServicesByEndUserOutcome VpcClient::listVpcEndpointServicesByEndUser(const ListVpcEndpointServicesByEndUserRequest &request) const
  7355. {
  7356. auto endpointOutcome = endpointProvider_->getEndpoint();
  7357. if (!endpointOutcome.isSuccess())
  7358. return ListVpcEndpointServicesByEndUserOutcome(endpointOutcome.error());
  7359. auto outcome = makeRequest(endpointOutcome.result(), request);
  7360. if (outcome.isSuccess())
  7361. return ListVpcEndpointServicesByEndUserOutcome(ListVpcEndpointServicesByEndUserResult(outcome.result()));
  7362. else
  7363. return ListVpcEndpointServicesByEndUserOutcome(outcome.error());
  7364. }
  7365. void VpcClient::listVpcEndpointServicesByEndUserAsync(const ListVpcEndpointServicesByEndUserRequest& request, const ListVpcEndpointServicesByEndUserAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7366. {
  7367. auto fn = [this, request, handler, context]()
  7368. {
  7369. handler(this, request, listVpcEndpointServicesByEndUser(request), context);
  7370. };
  7371. asyncExecute(new Runnable(fn));
  7372. }
  7373. VpcClient::ListVpcEndpointServicesByEndUserOutcomeCallable VpcClient::listVpcEndpointServicesByEndUserCallable(const ListVpcEndpointServicesByEndUserRequest &request) const
  7374. {
  7375. auto task = std::make_shared<std::packaged_task<ListVpcEndpointServicesByEndUserOutcome()>>(
  7376. [this, request]()
  7377. {
  7378. return this->listVpcEndpointServicesByEndUser(request);
  7379. });
  7380. asyncExecute(new Runnable([task]() { (*task)(); }));
  7381. return task->get_future();
  7382. }
  7383. VpcClient::ListVpcGatewayEndpointsOutcome VpcClient::listVpcGatewayEndpoints(const ListVpcGatewayEndpointsRequest &request) const
  7384. {
  7385. auto endpointOutcome = endpointProvider_->getEndpoint();
  7386. if (!endpointOutcome.isSuccess())
  7387. return ListVpcGatewayEndpointsOutcome(endpointOutcome.error());
  7388. auto outcome = makeRequest(endpointOutcome.result(), request);
  7389. if (outcome.isSuccess())
  7390. return ListVpcGatewayEndpointsOutcome(ListVpcGatewayEndpointsResult(outcome.result()));
  7391. else
  7392. return ListVpcGatewayEndpointsOutcome(outcome.error());
  7393. }
  7394. void VpcClient::listVpcGatewayEndpointsAsync(const ListVpcGatewayEndpointsRequest& request, const ListVpcGatewayEndpointsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7395. {
  7396. auto fn = [this, request, handler, context]()
  7397. {
  7398. handler(this, request, listVpcGatewayEndpoints(request), context);
  7399. };
  7400. asyncExecute(new Runnable(fn));
  7401. }
  7402. VpcClient::ListVpcGatewayEndpointsOutcomeCallable VpcClient::listVpcGatewayEndpointsCallable(const ListVpcGatewayEndpointsRequest &request) const
  7403. {
  7404. auto task = std::make_shared<std::packaged_task<ListVpcGatewayEndpointsOutcome()>>(
  7405. [this, request]()
  7406. {
  7407. return this->listVpcGatewayEndpoints(request);
  7408. });
  7409. asyncExecute(new Runnable([task]() { (*task)(); }));
  7410. return task->get_future();
  7411. }
  7412. VpcClient::ListVpnCertificateAssociationsOutcome VpcClient::listVpnCertificateAssociations(const ListVpnCertificateAssociationsRequest &request) const
  7413. {
  7414. auto endpointOutcome = endpointProvider_->getEndpoint();
  7415. if (!endpointOutcome.isSuccess())
  7416. return ListVpnCertificateAssociationsOutcome(endpointOutcome.error());
  7417. auto outcome = makeRequest(endpointOutcome.result(), request);
  7418. if (outcome.isSuccess())
  7419. return ListVpnCertificateAssociationsOutcome(ListVpnCertificateAssociationsResult(outcome.result()));
  7420. else
  7421. return ListVpnCertificateAssociationsOutcome(outcome.error());
  7422. }
  7423. void VpcClient::listVpnCertificateAssociationsAsync(const ListVpnCertificateAssociationsRequest& request, const ListVpnCertificateAssociationsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7424. {
  7425. auto fn = [this, request, handler, context]()
  7426. {
  7427. handler(this, request, listVpnCertificateAssociations(request), context);
  7428. };
  7429. asyncExecute(new Runnable(fn));
  7430. }
  7431. VpcClient::ListVpnCertificateAssociationsOutcomeCallable VpcClient::listVpnCertificateAssociationsCallable(const ListVpnCertificateAssociationsRequest &request) const
  7432. {
  7433. auto task = std::make_shared<std::packaged_task<ListVpnCertificateAssociationsOutcome()>>(
  7434. [this, request]()
  7435. {
  7436. return this->listVpnCertificateAssociations(request);
  7437. });
  7438. asyncExecute(new Runnable([task]() { (*task)(); }));
  7439. return task->get_future();
  7440. }
  7441. VpcClient::ModifyBgpGroupAttributeOutcome VpcClient::modifyBgpGroupAttribute(const ModifyBgpGroupAttributeRequest &request) const
  7442. {
  7443. auto endpointOutcome = endpointProvider_->getEndpoint();
  7444. if (!endpointOutcome.isSuccess())
  7445. return ModifyBgpGroupAttributeOutcome(endpointOutcome.error());
  7446. auto outcome = makeRequest(endpointOutcome.result(), request);
  7447. if (outcome.isSuccess())
  7448. return ModifyBgpGroupAttributeOutcome(ModifyBgpGroupAttributeResult(outcome.result()));
  7449. else
  7450. return ModifyBgpGroupAttributeOutcome(outcome.error());
  7451. }
  7452. void VpcClient::modifyBgpGroupAttributeAsync(const ModifyBgpGroupAttributeRequest& request, const ModifyBgpGroupAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7453. {
  7454. auto fn = [this, request, handler, context]()
  7455. {
  7456. handler(this, request, modifyBgpGroupAttribute(request), context);
  7457. };
  7458. asyncExecute(new Runnable(fn));
  7459. }
  7460. VpcClient::ModifyBgpGroupAttributeOutcomeCallable VpcClient::modifyBgpGroupAttributeCallable(const ModifyBgpGroupAttributeRequest &request) const
  7461. {
  7462. auto task = std::make_shared<std::packaged_task<ModifyBgpGroupAttributeOutcome()>>(
  7463. [this, request]()
  7464. {
  7465. return this->modifyBgpGroupAttribute(request);
  7466. });
  7467. asyncExecute(new Runnable([task]() { (*task)(); }));
  7468. return task->get_future();
  7469. }
  7470. VpcClient::ModifyBgpPeerAttributeOutcome VpcClient::modifyBgpPeerAttribute(const ModifyBgpPeerAttributeRequest &request) const
  7471. {
  7472. auto endpointOutcome = endpointProvider_->getEndpoint();
  7473. if (!endpointOutcome.isSuccess())
  7474. return ModifyBgpPeerAttributeOutcome(endpointOutcome.error());
  7475. auto outcome = makeRequest(endpointOutcome.result(), request);
  7476. if (outcome.isSuccess())
  7477. return ModifyBgpPeerAttributeOutcome(ModifyBgpPeerAttributeResult(outcome.result()));
  7478. else
  7479. return ModifyBgpPeerAttributeOutcome(outcome.error());
  7480. }
  7481. void VpcClient::modifyBgpPeerAttributeAsync(const ModifyBgpPeerAttributeRequest& request, const ModifyBgpPeerAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7482. {
  7483. auto fn = [this, request, handler, context]()
  7484. {
  7485. handler(this, request, modifyBgpPeerAttribute(request), context);
  7486. };
  7487. asyncExecute(new Runnable(fn));
  7488. }
  7489. VpcClient::ModifyBgpPeerAttributeOutcomeCallable VpcClient::modifyBgpPeerAttributeCallable(const ModifyBgpPeerAttributeRequest &request) const
  7490. {
  7491. auto task = std::make_shared<std::packaged_task<ModifyBgpPeerAttributeOutcome()>>(
  7492. [this, request]()
  7493. {
  7494. return this->modifyBgpPeerAttribute(request);
  7495. });
  7496. asyncExecute(new Runnable([task]() { (*task)(); }));
  7497. return task->get_future();
  7498. }
  7499. VpcClient::ModifyCommonBandwidthPackageAttributeOutcome VpcClient::modifyCommonBandwidthPackageAttribute(const ModifyCommonBandwidthPackageAttributeRequest &request) const
  7500. {
  7501. auto endpointOutcome = endpointProvider_->getEndpoint();
  7502. if (!endpointOutcome.isSuccess())
  7503. return ModifyCommonBandwidthPackageAttributeOutcome(endpointOutcome.error());
  7504. auto outcome = makeRequest(endpointOutcome.result(), request);
  7505. if (outcome.isSuccess())
  7506. return ModifyCommonBandwidthPackageAttributeOutcome(ModifyCommonBandwidthPackageAttributeResult(outcome.result()));
  7507. else
  7508. return ModifyCommonBandwidthPackageAttributeOutcome(outcome.error());
  7509. }
  7510. void VpcClient::modifyCommonBandwidthPackageAttributeAsync(const ModifyCommonBandwidthPackageAttributeRequest& request, const ModifyCommonBandwidthPackageAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7511. {
  7512. auto fn = [this, request, handler, context]()
  7513. {
  7514. handler(this, request, modifyCommonBandwidthPackageAttribute(request), context);
  7515. };
  7516. asyncExecute(new Runnable(fn));
  7517. }
  7518. VpcClient::ModifyCommonBandwidthPackageAttributeOutcomeCallable VpcClient::modifyCommonBandwidthPackageAttributeCallable(const ModifyCommonBandwidthPackageAttributeRequest &request) const
  7519. {
  7520. auto task = std::make_shared<std::packaged_task<ModifyCommonBandwidthPackageAttributeOutcome()>>(
  7521. [this, request]()
  7522. {
  7523. return this->modifyCommonBandwidthPackageAttribute(request);
  7524. });
  7525. asyncExecute(new Runnable([task]() { (*task)(); }));
  7526. return task->get_future();
  7527. }
  7528. VpcClient::ModifyCommonBandwidthPackageIpBandwidthOutcome VpcClient::modifyCommonBandwidthPackageIpBandwidth(const ModifyCommonBandwidthPackageIpBandwidthRequest &request) const
  7529. {
  7530. auto endpointOutcome = endpointProvider_->getEndpoint();
  7531. if (!endpointOutcome.isSuccess())
  7532. return ModifyCommonBandwidthPackageIpBandwidthOutcome(endpointOutcome.error());
  7533. auto outcome = makeRequest(endpointOutcome.result(), request);
  7534. if (outcome.isSuccess())
  7535. return ModifyCommonBandwidthPackageIpBandwidthOutcome(ModifyCommonBandwidthPackageIpBandwidthResult(outcome.result()));
  7536. else
  7537. return ModifyCommonBandwidthPackageIpBandwidthOutcome(outcome.error());
  7538. }
  7539. void VpcClient::modifyCommonBandwidthPackageIpBandwidthAsync(const ModifyCommonBandwidthPackageIpBandwidthRequest& request, const ModifyCommonBandwidthPackageIpBandwidthAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7540. {
  7541. auto fn = [this, request, handler, context]()
  7542. {
  7543. handler(this, request, modifyCommonBandwidthPackageIpBandwidth(request), context);
  7544. };
  7545. asyncExecute(new Runnable(fn));
  7546. }
  7547. VpcClient::ModifyCommonBandwidthPackageIpBandwidthOutcomeCallable VpcClient::modifyCommonBandwidthPackageIpBandwidthCallable(const ModifyCommonBandwidthPackageIpBandwidthRequest &request) const
  7548. {
  7549. auto task = std::make_shared<std::packaged_task<ModifyCommonBandwidthPackageIpBandwidthOutcome()>>(
  7550. [this, request]()
  7551. {
  7552. return this->modifyCommonBandwidthPackageIpBandwidth(request);
  7553. });
  7554. asyncExecute(new Runnable([task]() { (*task)(); }));
  7555. return task->get_future();
  7556. }
  7557. VpcClient::ModifyCommonBandwidthPackageSpecOutcome VpcClient::modifyCommonBandwidthPackageSpec(const ModifyCommonBandwidthPackageSpecRequest &request) const
  7558. {
  7559. auto endpointOutcome = endpointProvider_->getEndpoint();
  7560. if (!endpointOutcome.isSuccess())
  7561. return ModifyCommonBandwidthPackageSpecOutcome(endpointOutcome.error());
  7562. auto outcome = makeRequest(endpointOutcome.result(), request);
  7563. if (outcome.isSuccess())
  7564. return ModifyCommonBandwidthPackageSpecOutcome(ModifyCommonBandwidthPackageSpecResult(outcome.result()));
  7565. else
  7566. return ModifyCommonBandwidthPackageSpecOutcome(outcome.error());
  7567. }
  7568. void VpcClient::modifyCommonBandwidthPackageSpecAsync(const ModifyCommonBandwidthPackageSpecRequest& request, const ModifyCommonBandwidthPackageSpecAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7569. {
  7570. auto fn = [this, request, handler, context]()
  7571. {
  7572. handler(this, request, modifyCommonBandwidthPackageSpec(request), context);
  7573. };
  7574. asyncExecute(new Runnable(fn));
  7575. }
  7576. VpcClient::ModifyCommonBandwidthPackageSpecOutcomeCallable VpcClient::modifyCommonBandwidthPackageSpecCallable(const ModifyCommonBandwidthPackageSpecRequest &request) const
  7577. {
  7578. auto task = std::make_shared<std::packaged_task<ModifyCommonBandwidthPackageSpecOutcome()>>(
  7579. [this, request]()
  7580. {
  7581. return this->modifyCommonBandwidthPackageSpec(request);
  7582. });
  7583. asyncExecute(new Runnable([task]() { (*task)(); }));
  7584. return task->get_future();
  7585. }
  7586. VpcClient::ModifyCustomerGatewayAttributeOutcome VpcClient::modifyCustomerGatewayAttribute(const ModifyCustomerGatewayAttributeRequest &request) const
  7587. {
  7588. auto endpointOutcome = endpointProvider_->getEndpoint();
  7589. if (!endpointOutcome.isSuccess())
  7590. return ModifyCustomerGatewayAttributeOutcome(endpointOutcome.error());
  7591. auto outcome = makeRequest(endpointOutcome.result(), request);
  7592. if (outcome.isSuccess())
  7593. return ModifyCustomerGatewayAttributeOutcome(ModifyCustomerGatewayAttributeResult(outcome.result()));
  7594. else
  7595. return ModifyCustomerGatewayAttributeOutcome(outcome.error());
  7596. }
  7597. void VpcClient::modifyCustomerGatewayAttributeAsync(const ModifyCustomerGatewayAttributeRequest& request, const ModifyCustomerGatewayAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7598. {
  7599. auto fn = [this, request, handler, context]()
  7600. {
  7601. handler(this, request, modifyCustomerGatewayAttribute(request), context);
  7602. };
  7603. asyncExecute(new Runnable(fn));
  7604. }
  7605. VpcClient::ModifyCustomerGatewayAttributeOutcomeCallable VpcClient::modifyCustomerGatewayAttributeCallable(const ModifyCustomerGatewayAttributeRequest &request) const
  7606. {
  7607. auto task = std::make_shared<std::packaged_task<ModifyCustomerGatewayAttributeOutcome()>>(
  7608. [this, request]()
  7609. {
  7610. return this->modifyCustomerGatewayAttribute(request);
  7611. });
  7612. asyncExecute(new Runnable([task]() { (*task)(); }));
  7613. return task->get_future();
  7614. }
  7615. VpcClient::ModifyEipAddressAttributeOutcome VpcClient::modifyEipAddressAttribute(const ModifyEipAddressAttributeRequest &request) const
  7616. {
  7617. auto endpointOutcome = endpointProvider_->getEndpoint();
  7618. if (!endpointOutcome.isSuccess())
  7619. return ModifyEipAddressAttributeOutcome(endpointOutcome.error());
  7620. auto outcome = makeRequest(endpointOutcome.result(), request);
  7621. if (outcome.isSuccess())
  7622. return ModifyEipAddressAttributeOutcome(ModifyEipAddressAttributeResult(outcome.result()));
  7623. else
  7624. return ModifyEipAddressAttributeOutcome(outcome.error());
  7625. }
  7626. void VpcClient::modifyEipAddressAttributeAsync(const ModifyEipAddressAttributeRequest& request, const ModifyEipAddressAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7627. {
  7628. auto fn = [this, request, handler, context]()
  7629. {
  7630. handler(this, request, modifyEipAddressAttribute(request), context);
  7631. };
  7632. asyncExecute(new Runnable(fn));
  7633. }
  7634. VpcClient::ModifyEipAddressAttributeOutcomeCallable VpcClient::modifyEipAddressAttributeCallable(const ModifyEipAddressAttributeRequest &request) const
  7635. {
  7636. auto task = std::make_shared<std::packaged_task<ModifyEipAddressAttributeOutcome()>>(
  7637. [this, request]()
  7638. {
  7639. return this->modifyEipAddressAttribute(request);
  7640. });
  7641. asyncExecute(new Runnable([task]() { (*task)(); }));
  7642. return task->get_future();
  7643. }
  7644. VpcClient::ModifyExpressCloudConnectionAttributeOutcome VpcClient::modifyExpressCloudConnectionAttribute(const ModifyExpressCloudConnectionAttributeRequest &request) const
  7645. {
  7646. auto endpointOutcome = endpointProvider_->getEndpoint();
  7647. if (!endpointOutcome.isSuccess())
  7648. return ModifyExpressCloudConnectionAttributeOutcome(endpointOutcome.error());
  7649. auto outcome = makeRequest(endpointOutcome.result(), request);
  7650. if (outcome.isSuccess())
  7651. return ModifyExpressCloudConnectionAttributeOutcome(ModifyExpressCloudConnectionAttributeResult(outcome.result()));
  7652. else
  7653. return ModifyExpressCloudConnectionAttributeOutcome(outcome.error());
  7654. }
  7655. void VpcClient::modifyExpressCloudConnectionAttributeAsync(const ModifyExpressCloudConnectionAttributeRequest& request, const ModifyExpressCloudConnectionAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7656. {
  7657. auto fn = [this, request, handler, context]()
  7658. {
  7659. handler(this, request, modifyExpressCloudConnectionAttribute(request), context);
  7660. };
  7661. asyncExecute(new Runnable(fn));
  7662. }
  7663. VpcClient::ModifyExpressCloudConnectionAttributeOutcomeCallable VpcClient::modifyExpressCloudConnectionAttributeCallable(const ModifyExpressCloudConnectionAttributeRequest &request) const
  7664. {
  7665. auto task = std::make_shared<std::packaged_task<ModifyExpressCloudConnectionAttributeOutcome()>>(
  7666. [this, request]()
  7667. {
  7668. return this->modifyExpressCloudConnectionAttribute(request);
  7669. });
  7670. asyncExecute(new Runnable([task]() { (*task)(); }));
  7671. return task->get_future();
  7672. }
  7673. VpcClient::ModifyExpressCloudConnectionBandwidthOutcome VpcClient::modifyExpressCloudConnectionBandwidth(const ModifyExpressCloudConnectionBandwidthRequest &request) const
  7674. {
  7675. auto endpointOutcome = endpointProvider_->getEndpoint();
  7676. if (!endpointOutcome.isSuccess())
  7677. return ModifyExpressCloudConnectionBandwidthOutcome(endpointOutcome.error());
  7678. auto outcome = makeRequest(endpointOutcome.result(), request);
  7679. if (outcome.isSuccess())
  7680. return ModifyExpressCloudConnectionBandwidthOutcome(ModifyExpressCloudConnectionBandwidthResult(outcome.result()));
  7681. else
  7682. return ModifyExpressCloudConnectionBandwidthOutcome(outcome.error());
  7683. }
  7684. void VpcClient::modifyExpressCloudConnectionBandwidthAsync(const ModifyExpressCloudConnectionBandwidthRequest& request, const ModifyExpressCloudConnectionBandwidthAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7685. {
  7686. auto fn = [this, request, handler, context]()
  7687. {
  7688. handler(this, request, modifyExpressCloudConnectionBandwidth(request), context);
  7689. };
  7690. asyncExecute(new Runnable(fn));
  7691. }
  7692. VpcClient::ModifyExpressCloudConnectionBandwidthOutcomeCallable VpcClient::modifyExpressCloudConnectionBandwidthCallable(const ModifyExpressCloudConnectionBandwidthRequest &request) const
  7693. {
  7694. auto task = std::make_shared<std::packaged_task<ModifyExpressCloudConnectionBandwidthOutcome()>>(
  7695. [this, request]()
  7696. {
  7697. return this->modifyExpressCloudConnectionBandwidth(request);
  7698. });
  7699. asyncExecute(new Runnable([task]() { (*task)(); }));
  7700. return task->get_future();
  7701. }
  7702. VpcClient::ModifyFlowLogAttributeOutcome VpcClient::modifyFlowLogAttribute(const ModifyFlowLogAttributeRequest &request) const
  7703. {
  7704. auto endpointOutcome = endpointProvider_->getEndpoint();
  7705. if (!endpointOutcome.isSuccess())
  7706. return ModifyFlowLogAttributeOutcome(endpointOutcome.error());
  7707. auto outcome = makeRequest(endpointOutcome.result(), request);
  7708. if (outcome.isSuccess())
  7709. return ModifyFlowLogAttributeOutcome(ModifyFlowLogAttributeResult(outcome.result()));
  7710. else
  7711. return ModifyFlowLogAttributeOutcome(outcome.error());
  7712. }
  7713. void VpcClient::modifyFlowLogAttributeAsync(const ModifyFlowLogAttributeRequest& request, const ModifyFlowLogAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7714. {
  7715. auto fn = [this, request, handler, context]()
  7716. {
  7717. handler(this, request, modifyFlowLogAttribute(request), context);
  7718. };
  7719. asyncExecute(new Runnable(fn));
  7720. }
  7721. VpcClient::ModifyFlowLogAttributeOutcomeCallable VpcClient::modifyFlowLogAttributeCallable(const ModifyFlowLogAttributeRequest &request) const
  7722. {
  7723. auto task = std::make_shared<std::packaged_task<ModifyFlowLogAttributeOutcome()>>(
  7724. [this, request]()
  7725. {
  7726. return this->modifyFlowLogAttribute(request);
  7727. });
  7728. asyncExecute(new Runnable([task]() { (*task)(); }));
  7729. return task->get_future();
  7730. }
  7731. VpcClient::ModifyForwardEntryOutcome VpcClient::modifyForwardEntry(const ModifyForwardEntryRequest &request) const
  7732. {
  7733. auto endpointOutcome = endpointProvider_->getEndpoint();
  7734. if (!endpointOutcome.isSuccess())
  7735. return ModifyForwardEntryOutcome(endpointOutcome.error());
  7736. auto outcome = makeRequest(endpointOutcome.result(), request);
  7737. if (outcome.isSuccess())
  7738. return ModifyForwardEntryOutcome(ModifyForwardEntryResult(outcome.result()));
  7739. else
  7740. return ModifyForwardEntryOutcome(outcome.error());
  7741. }
  7742. void VpcClient::modifyForwardEntryAsync(const ModifyForwardEntryRequest& request, const ModifyForwardEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7743. {
  7744. auto fn = [this, request, handler, context]()
  7745. {
  7746. handler(this, request, modifyForwardEntry(request), context);
  7747. };
  7748. asyncExecute(new Runnable(fn));
  7749. }
  7750. VpcClient::ModifyForwardEntryOutcomeCallable VpcClient::modifyForwardEntryCallable(const ModifyForwardEntryRequest &request) const
  7751. {
  7752. auto task = std::make_shared<std::packaged_task<ModifyForwardEntryOutcome()>>(
  7753. [this, request]()
  7754. {
  7755. return this->modifyForwardEntry(request);
  7756. });
  7757. asyncExecute(new Runnable([task]() { (*task)(); }));
  7758. return task->get_future();
  7759. }
  7760. VpcClient::ModifyFullNatEntryAttributeOutcome VpcClient::modifyFullNatEntryAttribute(const ModifyFullNatEntryAttributeRequest &request) const
  7761. {
  7762. auto endpointOutcome = endpointProvider_->getEndpoint();
  7763. if (!endpointOutcome.isSuccess())
  7764. return ModifyFullNatEntryAttributeOutcome(endpointOutcome.error());
  7765. auto outcome = makeRequest(endpointOutcome.result(), request);
  7766. if (outcome.isSuccess())
  7767. return ModifyFullNatEntryAttributeOutcome(ModifyFullNatEntryAttributeResult(outcome.result()));
  7768. else
  7769. return ModifyFullNatEntryAttributeOutcome(outcome.error());
  7770. }
  7771. void VpcClient::modifyFullNatEntryAttributeAsync(const ModifyFullNatEntryAttributeRequest& request, const ModifyFullNatEntryAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7772. {
  7773. auto fn = [this, request, handler, context]()
  7774. {
  7775. handler(this, request, modifyFullNatEntryAttribute(request), context);
  7776. };
  7777. asyncExecute(new Runnable(fn));
  7778. }
  7779. VpcClient::ModifyFullNatEntryAttributeOutcomeCallable VpcClient::modifyFullNatEntryAttributeCallable(const ModifyFullNatEntryAttributeRequest &request) const
  7780. {
  7781. auto task = std::make_shared<std::packaged_task<ModifyFullNatEntryAttributeOutcome()>>(
  7782. [this, request]()
  7783. {
  7784. return this->modifyFullNatEntryAttribute(request);
  7785. });
  7786. asyncExecute(new Runnable([task]() { (*task)(); }));
  7787. return task->get_future();
  7788. }
  7789. VpcClient::ModifyGlobalAccelerationInstanceAttributesOutcome VpcClient::modifyGlobalAccelerationInstanceAttributes(const ModifyGlobalAccelerationInstanceAttributesRequest &request) const
  7790. {
  7791. auto endpointOutcome = endpointProvider_->getEndpoint();
  7792. if (!endpointOutcome.isSuccess())
  7793. return ModifyGlobalAccelerationInstanceAttributesOutcome(endpointOutcome.error());
  7794. auto outcome = makeRequest(endpointOutcome.result(), request);
  7795. if (outcome.isSuccess())
  7796. return ModifyGlobalAccelerationInstanceAttributesOutcome(ModifyGlobalAccelerationInstanceAttributesResult(outcome.result()));
  7797. else
  7798. return ModifyGlobalAccelerationInstanceAttributesOutcome(outcome.error());
  7799. }
  7800. void VpcClient::modifyGlobalAccelerationInstanceAttributesAsync(const ModifyGlobalAccelerationInstanceAttributesRequest& request, const ModifyGlobalAccelerationInstanceAttributesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7801. {
  7802. auto fn = [this, request, handler, context]()
  7803. {
  7804. handler(this, request, modifyGlobalAccelerationInstanceAttributes(request), context);
  7805. };
  7806. asyncExecute(new Runnable(fn));
  7807. }
  7808. VpcClient::ModifyGlobalAccelerationInstanceAttributesOutcomeCallable VpcClient::modifyGlobalAccelerationInstanceAttributesCallable(const ModifyGlobalAccelerationInstanceAttributesRequest &request) const
  7809. {
  7810. auto task = std::make_shared<std::packaged_task<ModifyGlobalAccelerationInstanceAttributesOutcome()>>(
  7811. [this, request]()
  7812. {
  7813. return this->modifyGlobalAccelerationInstanceAttributes(request);
  7814. });
  7815. asyncExecute(new Runnable([task]() { (*task)(); }));
  7816. return task->get_future();
  7817. }
  7818. VpcClient::ModifyGlobalAccelerationInstanceSpecOutcome VpcClient::modifyGlobalAccelerationInstanceSpec(const ModifyGlobalAccelerationInstanceSpecRequest &request) const
  7819. {
  7820. auto endpointOutcome = endpointProvider_->getEndpoint();
  7821. if (!endpointOutcome.isSuccess())
  7822. return ModifyGlobalAccelerationInstanceSpecOutcome(endpointOutcome.error());
  7823. auto outcome = makeRequest(endpointOutcome.result(), request);
  7824. if (outcome.isSuccess())
  7825. return ModifyGlobalAccelerationInstanceSpecOutcome(ModifyGlobalAccelerationInstanceSpecResult(outcome.result()));
  7826. else
  7827. return ModifyGlobalAccelerationInstanceSpecOutcome(outcome.error());
  7828. }
  7829. void VpcClient::modifyGlobalAccelerationInstanceSpecAsync(const ModifyGlobalAccelerationInstanceSpecRequest& request, const ModifyGlobalAccelerationInstanceSpecAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7830. {
  7831. auto fn = [this, request, handler, context]()
  7832. {
  7833. handler(this, request, modifyGlobalAccelerationInstanceSpec(request), context);
  7834. };
  7835. asyncExecute(new Runnable(fn));
  7836. }
  7837. VpcClient::ModifyGlobalAccelerationInstanceSpecOutcomeCallable VpcClient::modifyGlobalAccelerationInstanceSpecCallable(const ModifyGlobalAccelerationInstanceSpecRequest &request) const
  7838. {
  7839. auto task = std::make_shared<std::packaged_task<ModifyGlobalAccelerationInstanceSpecOutcome()>>(
  7840. [this, request]()
  7841. {
  7842. return this->modifyGlobalAccelerationInstanceSpec(request);
  7843. });
  7844. asyncExecute(new Runnable([task]() { (*task)(); }));
  7845. return task->get_future();
  7846. }
  7847. VpcClient::ModifyHaVipAttributeOutcome VpcClient::modifyHaVipAttribute(const ModifyHaVipAttributeRequest &request) const
  7848. {
  7849. auto endpointOutcome = endpointProvider_->getEndpoint();
  7850. if (!endpointOutcome.isSuccess())
  7851. return ModifyHaVipAttributeOutcome(endpointOutcome.error());
  7852. auto outcome = makeRequest(endpointOutcome.result(), request);
  7853. if (outcome.isSuccess())
  7854. return ModifyHaVipAttributeOutcome(ModifyHaVipAttributeResult(outcome.result()));
  7855. else
  7856. return ModifyHaVipAttributeOutcome(outcome.error());
  7857. }
  7858. void VpcClient::modifyHaVipAttributeAsync(const ModifyHaVipAttributeRequest& request, const ModifyHaVipAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7859. {
  7860. auto fn = [this, request, handler, context]()
  7861. {
  7862. handler(this, request, modifyHaVipAttribute(request), context);
  7863. };
  7864. asyncExecute(new Runnable(fn));
  7865. }
  7866. VpcClient::ModifyHaVipAttributeOutcomeCallable VpcClient::modifyHaVipAttributeCallable(const ModifyHaVipAttributeRequest &request) const
  7867. {
  7868. auto task = std::make_shared<std::packaged_task<ModifyHaVipAttributeOutcome()>>(
  7869. [this, request]()
  7870. {
  7871. return this->modifyHaVipAttribute(request);
  7872. });
  7873. asyncExecute(new Runnable([task]() { (*task)(); }));
  7874. return task->get_future();
  7875. }
  7876. VpcClient::ModifyIPv6TranslatorAclAttributeOutcome VpcClient::modifyIPv6TranslatorAclAttribute(const ModifyIPv6TranslatorAclAttributeRequest &request) const
  7877. {
  7878. auto endpointOutcome = endpointProvider_->getEndpoint();
  7879. if (!endpointOutcome.isSuccess())
  7880. return ModifyIPv6TranslatorAclAttributeOutcome(endpointOutcome.error());
  7881. auto outcome = makeRequest(endpointOutcome.result(), request);
  7882. if (outcome.isSuccess())
  7883. return ModifyIPv6TranslatorAclAttributeOutcome(ModifyIPv6TranslatorAclAttributeResult(outcome.result()));
  7884. else
  7885. return ModifyIPv6TranslatorAclAttributeOutcome(outcome.error());
  7886. }
  7887. void VpcClient::modifyIPv6TranslatorAclAttributeAsync(const ModifyIPv6TranslatorAclAttributeRequest& request, const ModifyIPv6TranslatorAclAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7888. {
  7889. auto fn = [this, request, handler, context]()
  7890. {
  7891. handler(this, request, modifyIPv6TranslatorAclAttribute(request), context);
  7892. };
  7893. asyncExecute(new Runnable(fn));
  7894. }
  7895. VpcClient::ModifyIPv6TranslatorAclAttributeOutcomeCallable VpcClient::modifyIPv6TranslatorAclAttributeCallable(const ModifyIPv6TranslatorAclAttributeRequest &request) const
  7896. {
  7897. auto task = std::make_shared<std::packaged_task<ModifyIPv6TranslatorAclAttributeOutcome()>>(
  7898. [this, request]()
  7899. {
  7900. return this->modifyIPv6TranslatorAclAttribute(request);
  7901. });
  7902. asyncExecute(new Runnable([task]() { (*task)(); }));
  7903. return task->get_future();
  7904. }
  7905. VpcClient::ModifyIPv6TranslatorAclListEntryOutcome VpcClient::modifyIPv6TranslatorAclListEntry(const ModifyIPv6TranslatorAclListEntryRequest &request) const
  7906. {
  7907. auto endpointOutcome = endpointProvider_->getEndpoint();
  7908. if (!endpointOutcome.isSuccess())
  7909. return ModifyIPv6TranslatorAclListEntryOutcome(endpointOutcome.error());
  7910. auto outcome = makeRequest(endpointOutcome.result(), request);
  7911. if (outcome.isSuccess())
  7912. return ModifyIPv6TranslatorAclListEntryOutcome(ModifyIPv6TranslatorAclListEntryResult(outcome.result()));
  7913. else
  7914. return ModifyIPv6TranslatorAclListEntryOutcome(outcome.error());
  7915. }
  7916. void VpcClient::modifyIPv6TranslatorAclListEntryAsync(const ModifyIPv6TranslatorAclListEntryRequest& request, const ModifyIPv6TranslatorAclListEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7917. {
  7918. auto fn = [this, request, handler, context]()
  7919. {
  7920. handler(this, request, modifyIPv6TranslatorAclListEntry(request), context);
  7921. };
  7922. asyncExecute(new Runnable(fn));
  7923. }
  7924. VpcClient::ModifyIPv6TranslatorAclListEntryOutcomeCallable VpcClient::modifyIPv6TranslatorAclListEntryCallable(const ModifyIPv6TranslatorAclListEntryRequest &request) const
  7925. {
  7926. auto task = std::make_shared<std::packaged_task<ModifyIPv6TranslatorAclListEntryOutcome()>>(
  7927. [this, request]()
  7928. {
  7929. return this->modifyIPv6TranslatorAclListEntry(request);
  7930. });
  7931. asyncExecute(new Runnable([task]() { (*task)(); }));
  7932. return task->get_future();
  7933. }
  7934. VpcClient::ModifyIPv6TranslatorAttributeOutcome VpcClient::modifyIPv6TranslatorAttribute(const ModifyIPv6TranslatorAttributeRequest &request) const
  7935. {
  7936. auto endpointOutcome = endpointProvider_->getEndpoint();
  7937. if (!endpointOutcome.isSuccess())
  7938. return ModifyIPv6TranslatorAttributeOutcome(endpointOutcome.error());
  7939. auto outcome = makeRequest(endpointOutcome.result(), request);
  7940. if (outcome.isSuccess())
  7941. return ModifyIPv6TranslatorAttributeOutcome(ModifyIPv6TranslatorAttributeResult(outcome.result()));
  7942. else
  7943. return ModifyIPv6TranslatorAttributeOutcome(outcome.error());
  7944. }
  7945. void VpcClient::modifyIPv6TranslatorAttributeAsync(const ModifyIPv6TranslatorAttributeRequest& request, const ModifyIPv6TranslatorAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7946. {
  7947. auto fn = [this, request, handler, context]()
  7948. {
  7949. handler(this, request, modifyIPv6TranslatorAttribute(request), context);
  7950. };
  7951. asyncExecute(new Runnable(fn));
  7952. }
  7953. VpcClient::ModifyIPv6TranslatorAttributeOutcomeCallable VpcClient::modifyIPv6TranslatorAttributeCallable(const ModifyIPv6TranslatorAttributeRequest &request) const
  7954. {
  7955. auto task = std::make_shared<std::packaged_task<ModifyIPv6TranslatorAttributeOutcome()>>(
  7956. [this, request]()
  7957. {
  7958. return this->modifyIPv6TranslatorAttribute(request);
  7959. });
  7960. asyncExecute(new Runnable([task]() { (*task)(); }));
  7961. return task->get_future();
  7962. }
  7963. VpcClient::ModifyIPv6TranslatorBandwidthOutcome VpcClient::modifyIPv6TranslatorBandwidth(const ModifyIPv6TranslatorBandwidthRequest &request) const
  7964. {
  7965. auto endpointOutcome = endpointProvider_->getEndpoint();
  7966. if (!endpointOutcome.isSuccess())
  7967. return ModifyIPv6TranslatorBandwidthOutcome(endpointOutcome.error());
  7968. auto outcome = makeRequest(endpointOutcome.result(), request);
  7969. if (outcome.isSuccess())
  7970. return ModifyIPv6TranslatorBandwidthOutcome(ModifyIPv6TranslatorBandwidthResult(outcome.result()));
  7971. else
  7972. return ModifyIPv6TranslatorBandwidthOutcome(outcome.error());
  7973. }
  7974. void VpcClient::modifyIPv6TranslatorBandwidthAsync(const ModifyIPv6TranslatorBandwidthRequest& request, const ModifyIPv6TranslatorBandwidthAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  7975. {
  7976. auto fn = [this, request, handler, context]()
  7977. {
  7978. handler(this, request, modifyIPv6TranslatorBandwidth(request), context);
  7979. };
  7980. asyncExecute(new Runnable(fn));
  7981. }
  7982. VpcClient::ModifyIPv6TranslatorBandwidthOutcomeCallable VpcClient::modifyIPv6TranslatorBandwidthCallable(const ModifyIPv6TranslatorBandwidthRequest &request) const
  7983. {
  7984. auto task = std::make_shared<std::packaged_task<ModifyIPv6TranslatorBandwidthOutcome()>>(
  7985. [this, request]()
  7986. {
  7987. return this->modifyIPv6TranslatorBandwidth(request);
  7988. });
  7989. asyncExecute(new Runnable([task]() { (*task)(); }));
  7990. return task->get_future();
  7991. }
  7992. VpcClient::ModifyIPv6TranslatorEntryOutcome VpcClient::modifyIPv6TranslatorEntry(const ModifyIPv6TranslatorEntryRequest &request) const
  7993. {
  7994. auto endpointOutcome = endpointProvider_->getEndpoint();
  7995. if (!endpointOutcome.isSuccess())
  7996. return ModifyIPv6TranslatorEntryOutcome(endpointOutcome.error());
  7997. auto outcome = makeRequest(endpointOutcome.result(), request);
  7998. if (outcome.isSuccess())
  7999. return ModifyIPv6TranslatorEntryOutcome(ModifyIPv6TranslatorEntryResult(outcome.result()));
  8000. else
  8001. return ModifyIPv6TranslatorEntryOutcome(outcome.error());
  8002. }
  8003. void VpcClient::modifyIPv6TranslatorEntryAsync(const ModifyIPv6TranslatorEntryRequest& request, const ModifyIPv6TranslatorEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8004. {
  8005. auto fn = [this, request, handler, context]()
  8006. {
  8007. handler(this, request, modifyIPv6TranslatorEntry(request), context);
  8008. };
  8009. asyncExecute(new Runnable(fn));
  8010. }
  8011. VpcClient::ModifyIPv6TranslatorEntryOutcomeCallable VpcClient::modifyIPv6TranslatorEntryCallable(const ModifyIPv6TranslatorEntryRequest &request) const
  8012. {
  8013. auto task = std::make_shared<std::packaged_task<ModifyIPv6TranslatorEntryOutcome()>>(
  8014. [this, request]()
  8015. {
  8016. return this->modifyIPv6TranslatorEntry(request);
  8017. });
  8018. asyncExecute(new Runnable([task]() { (*task)(); }));
  8019. return task->get_future();
  8020. }
  8021. VpcClient::ModifyIpv6AddressAttributeOutcome VpcClient::modifyIpv6AddressAttribute(const ModifyIpv6AddressAttributeRequest &request) const
  8022. {
  8023. auto endpointOutcome = endpointProvider_->getEndpoint();
  8024. if (!endpointOutcome.isSuccess())
  8025. return ModifyIpv6AddressAttributeOutcome(endpointOutcome.error());
  8026. auto outcome = makeRequest(endpointOutcome.result(), request);
  8027. if (outcome.isSuccess())
  8028. return ModifyIpv6AddressAttributeOutcome(ModifyIpv6AddressAttributeResult(outcome.result()));
  8029. else
  8030. return ModifyIpv6AddressAttributeOutcome(outcome.error());
  8031. }
  8032. void VpcClient::modifyIpv6AddressAttributeAsync(const ModifyIpv6AddressAttributeRequest& request, const ModifyIpv6AddressAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8033. {
  8034. auto fn = [this, request, handler, context]()
  8035. {
  8036. handler(this, request, modifyIpv6AddressAttribute(request), context);
  8037. };
  8038. asyncExecute(new Runnable(fn));
  8039. }
  8040. VpcClient::ModifyIpv6AddressAttributeOutcomeCallable VpcClient::modifyIpv6AddressAttributeCallable(const ModifyIpv6AddressAttributeRequest &request) const
  8041. {
  8042. auto task = std::make_shared<std::packaged_task<ModifyIpv6AddressAttributeOutcome()>>(
  8043. [this, request]()
  8044. {
  8045. return this->modifyIpv6AddressAttribute(request);
  8046. });
  8047. asyncExecute(new Runnable([task]() { (*task)(); }));
  8048. return task->get_future();
  8049. }
  8050. VpcClient::ModifyIpv6GatewayAttributeOutcome VpcClient::modifyIpv6GatewayAttribute(const ModifyIpv6GatewayAttributeRequest &request) const
  8051. {
  8052. auto endpointOutcome = endpointProvider_->getEndpoint();
  8053. if (!endpointOutcome.isSuccess())
  8054. return ModifyIpv6GatewayAttributeOutcome(endpointOutcome.error());
  8055. auto outcome = makeRequest(endpointOutcome.result(), request);
  8056. if (outcome.isSuccess())
  8057. return ModifyIpv6GatewayAttributeOutcome(ModifyIpv6GatewayAttributeResult(outcome.result()));
  8058. else
  8059. return ModifyIpv6GatewayAttributeOutcome(outcome.error());
  8060. }
  8061. void VpcClient::modifyIpv6GatewayAttributeAsync(const ModifyIpv6GatewayAttributeRequest& request, const ModifyIpv6GatewayAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8062. {
  8063. auto fn = [this, request, handler, context]()
  8064. {
  8065. handler(this, request, modifyIpv6GatewayAttribute(request), context);
  8066. };
  8067. asyncExecute(new Runnable(fn));
  8068. }
  8069. VpcClient::ModifyIpv6GatewayAttributeOutcomeCallable VpcClient::modifyIpv6GatewayAttributeCallable(const ModifyIpv6GatewayAttributeRequest &request) const
  8070. {
  8071. auto task = std::make_shared<std::packaged_task<ModifyIpv6GatewayAttributeOutcome()>>(
  8072. [this, request]()
  8073. {
  8074. return this->modifyIpv6GatewayAttribute(request);
  8075. });
  8076. asyncExecute(new Runnable([task]() { (*task)(); }));
  8077. return task->get_future();
  8078. }
  8079. VpcClient::ModifyIpv6GatewaySpecOutcome VpcClient::modifyIpv6GatewaySpec(const ModifyIpv6GatewaySpecRequest &request) const
  8080. {
  8081. auto endpointOutcome = endpointProvider_->getEndpoint();
  8082. if (!endpointOutcome.isSuccess())
  8083. return ModifyIpv6GatewaySpecOutcome(endpointOutcome.error());
  8084. auto outcome = makeRequest(endpointOutcome.result(), request);
  8085. if (outcome.isSuccess())
  8086. return ModifyIpv6GatewaySpecOutcome(ModifyIpv6GatewaySpecResult(outcome.result()));
  8087. else
  8088. return ModifyIpv6GatewaySpecOutcome(outcome.error());
  8089. }
  8090. void VpcClient::modifyIpv6GatewaySpecAsync(const ModifyIpv6GatewaySpecRequest& request, const ModifyIpv6GatewaySpecAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8091. {
  8092. auto fn = [this, request, handler, context]()
  8093. {
  8094. handler(this, request, modifyIpv6GatewaySpec(request), context);
  8095. };
  8096. asyncExecute(new Runnable(fn));
  8097. }
  8098. VpcClient::ModifyIpv6GatewaySpecOutcomeCallable VpcClient::modifyIpv6GatewaySpecCallable(const ModifyIpv6GatewaySpecRequest &request) const
  8099. {
  8100. auto task = std::make_shared<std::packaged_task<ModifyIpv6GatewaySpecOutcome()>>(
  8101. [this, request]()
  8102. {
  8103. return this->modifyIpv6GatewaySpec(request);
  8104. });
  8105. asyncExecute(new Runnable([task]() { (*task)(); }));
  8106. return task->get_future();
  8107. }
  8108. VpcClient::ModifyIpv6InternetBandwidthOutcome VpcClient::modifyIpv6InternetBandwidth(const ModifyIpv6InternetBandwidthRequest &request) const
  8109. {
  8110. auto endpointOutcome = endpointProvider_->getEndpoint();
  8111. if (!endpointOutcome.isSuccess())
  8112. return ModifyIpv6InternetBandwidthOutcome(endpointOutcome.error());
  8113. auto outcome = makeRequest(endpointOutcome.result(), request);
  8114. if (outcome.isSuccess())
  8115. return ModifyIpv6InternetBandwidthOutcome(ModifyIpv6InternetBandwidthResult(outcome.result()));
  8116. else
  8117. return ModifyIpv6InternetBandwidthOutcome(outcome.error());
  8118. }
  8119. void VpcClient::modifyIpv6InternetBandwidthAsync(const ModifyIpv6InternetBandwidthRequest& request, const ModifyIpv6InternetBandwidthAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8120. {
  8121. auto fn = [this, request, handler, context]()
  8122. {
  8123. handler(this, request, modifyIpv6InternetBandwidth(request), context);
  8124. };
  8125. asyncExecute(new Runnable(fn));
  8126. }
  8127. VpcClient::ModifyIpv6InternetBandwidthOutcomeCallable VpcClient::modifyIpv6InternetBandwidthCallable(const ModifyIpv6InternetBandwidthRequest &request) const
  8128. {
  8129. auto task = std::make_shared<std::packaged_task<ModifyIpv6InternetBandwidthOutcome()>>(
  8130. [this, request]()
  8131. {
  8132. return this->modifyIpv6InternetBandwidth(request);
  8133. });
  8134. asyncExecute(new Runnable([task]() { (*task)(); }));
  8135. return task->get_future();
  8136. }
  8137. VpcClient::ModifyNatGatewayAttributeOutcome VpcClient::modifyNatGatewayAttribute(const ModifyNatGatewayAttributeRequest &request) const
  8138. {
  8139. auto endpointOutcome = endpointProvider_->getEndpoint();
  8140. if (!endpointOutcome.isSuccess())
  8141. return ModifyNatGatewayAttributeOutcome(endpointOutcome.error());
  8142. auto outcome = makeRequest(endpointOutcome.result(), request);
  8143. if (outcome.isSuccess())
  8144. return ModifyNatGatewayAttributeOutcome(ModifyNatGatewayAttributeResult(outcome.result()));
  8145. else
  8146. return ModifyNatGatewayAttributeOutcome(outcome.error());
  8147. }
  8148. void VpcClient::modifyNatGatewayAttributeAsync(const ModifyNatGatewayAttributeRequest& request, const ModifyNatGatewayAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8149. {
  8150. auto fn = [this, request, handler, context]()
  8151. {
  8152. handler(this, request, modifyNatGatewayAttribute(request), context);
  8153. };
  8154. asyncExecute(new Runnable(fn));
  8155. }
  8156. VpcClient::ModifyNatGatewayAttributeOutcomeCallable VpcClient::modifyNatGatewayAttributeCallable(const ModifyNatGatewayAttributeRequest &request) const
  8157. {
  8158. auto task = std::make_shared<std::packaged_task<ModifyNatGatewayAttributeOutcome()>>(
  8159. [this, request]()
  8160. {
  8161. return this->modifyNatGatewayAttribute(request);
  8162. });
  8163. asyncExecute(new Runnable([task]() { (*task)(); }));
  8164. return task->get_future();
  8165. }
  8166. VpcClient::ModifyNatGatewaySpecOutcome VpcClient::modifyNatGatewaySpec(const ModifyNatGatewaySpecRequest &request) const
  8167. {
  8168. auto endpointOutcome = endpointProvider_->getEndpoint();
  8169. if (!endpointOutcome.isSuccess())
  8170. return ModifyNatGatewaySpecOutcome(endpointOutcome.error());
  8171. auto outcome = makeRequest(endpointOutcome.result(), request);
  8172. if (outcome.isSuccess())
  8173. return ModifyNatGatewaySpecOutcome(ModifyNatGatewaySpecResult(outcome.result()));
  8174. else
  8175. return ModifyNatGatewaySpecOutcome(outcome.error());
  8176. }
  8177. void VpcClient::modifyNatGatewaySpecAsync(const ModifyNatGatewaySpecRequest& request, const ModifyNatGatewaySpecAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8178. {
  8179. auto fn = [this, request, handler, context]()
  8180. {
  8181. handler(this, request, modifyNatGatewaySpec(request), context);
  8182. };
  8183. asyncExecute(new Runnable(fn));
  8184. }
  8185. VpcClient::ModifyNatGatewaySpecOutcomeCallable VpcClient::modifyNatGatewaySpecCallable(const ModifyNatGatewaySpecRequest &request) const
  8186. {
  8187. auto task = std::make_shared<std::packaged_task<ModifyNatGatewaySpecOutcome()>>(
  8188. [this, request]()
  8189. {
  8190. return this->modifyNatGatewaySpec(request);
  8191. });
  8192. asyncExecute(new Runnable([task]() { (*task)(); }));
  8193. return task->get_future();
  8194. }
  8195. VpcClient::ModifyNatIpAttributeOutcome VpcClient::modifyNatIpAttribute(const ModifyNatIpAttributeRequest &request) const
  8196. {
  8197. auto endpointOutcome = endpointProvider_->getEndpoint();
  8198. if (!endpointOutcome.isSuccess())
  8199. return ModifyNatIpAttributeOutcome(endpointOutcome.error());
  8200. auto outcome = makeRequest(endpointOutcome.result(), request);
  8201. if (outcome.isSuccess())
  8202. return ModifyNatIpAttributeOutcome(ModifyNatIpAttributeResult(outcome.result()));
  8203. else
  8204. return ModifyNatIpAttributeOutcome(outcome.error());
  8205. }
  8206. void VpcClient::modifyNatIpAttributeAsync(const ModifyNatIpAttributeRequest& request, const ModifyNatIpAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8207. {
  8208. auto fn = [this, request, handler, context]()
  8209. {
  8210. handler(this, request, modifyNatIpAttribute(request), context);
  8211. };
  8212. asyncExecute(new Runnable(fn));
  8213. }
  8214. VpcClient::ModifyNatIpAttributeOutcomeCallable VpcClient::modifyNatIpAttributeCallable(const ModifyNatIpAttributeRequest &request) const
  8215. {
  8216. auto task = std::make_shared<std::packaged_task<ModifyNatIpAttributeOutcome()>>(
  8217. [this, request]()
  8218. {
  8219. return this->modifyNatIpAttribute(request);
  8220. });
  8221. asyncExecute(new Runnable([task]() { (*task)(); }));
  8222. return task->get_future();
  8223. }
  8224. VpcClient::ModifyNatIpCidrAttributeOutcome VpcClient::modifyNatIpCidrAttribute(const ModifyNatIpCidrAttributeRequest &request) const
  8225. {
  8226. auto endpointOutcome = endpointProvider_->getEndpoint();
  8227. if (!endpointOutcome.isSuccess())
  8228. return ModifyNatIpCidrAttributeOutcome(endpointOutcome.error());
  8229. auto outcome = makeRequest(endpointOutcome.result(), request);
  8230. if (outcome.isSuccess())
  8231. return ModifyNatIpCidrAttributeOutcome(ModifyNatIpCidrAttributeResult(outcome.result()));
  8232. else
  8233. return ModifyNatIpCidrAttributeOutcome(outcome.error());
  8234. }
  8235. void VpcClient::modifyNatIpCidrAttributeAsync(const ModifyNatIpCidrAttributeRequest& request, const ModifyNatIpCidrAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8236. {
  8237. auto fn = [this, request, handler, context]()
  8238. {
  8239. handler(this, request, modifyNatIpCidrAttribute(request), context);
  8240. };
  8241. asyncExecute(new Runnable(fn));
  8242. }
  8243. VpcClient::ModifyNatIpCidrAttributeOutcomeCallable VpcClient::modifyNatIpCidrAttributeCallable(const ModifyNatIpCidrAttributeRequest &request) const
  8244. {
  8245. auto task = std::make_shared<std::packaged_task<ModifyNatIpCidrAttributeOutcome()>>(
  8246. [this, request]()
  8247. {
  8248. return this->modifyNatIpCidrAttribute(request);
  8249. });
  8250. asyncExecute(new Runnable([task]() { (*task)(); }));
  8251. return task->get_future();
  8252. }
  8253. VpcClient::ModifyNetworkAclAttributesOutcome VpcClient::modifyNetworkAclAttributes(const ModifyNetworkAclAttributesRequest &request) const
  8254. {
  8255. auto endpointOutcome = endpointProvider_->getEndpoint();
  8256. if (!endpointOutcome.isSuccess())
  8257. return ModifyNetworkAclAttributesOutcome(endpointOutcome.error());
  8258. auto outcome = makeRequest(endpointOutcome.result(), request);
  8259. if (outcome.isSuccess())
  8260. return ModifyNetworkAclAttributesOutcome(ModifyNetworkAclAttributesResult(outcome.result()));
  8261. else
  8262. return ModifyNetworkAclAttributesOutcome(outcome.error());
  8263. }
  8264. void VpcClient::modifyNetworkAclAttributesAsync(const ModifyNetworkAclAttributesRequest& request, const ModifyNetworkAclAttributesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8265. {
  8266. auto fn = [this, request, handler, context]()
  8267. {
  8268. handler(this, request, modifyNetworkAclAttributes(request), context);
  8269. };
  8270. asyncExecute(new Runnable(fn));
  8271. }
  8272. VpcClient::ModifyNetworkAclAttributesOutcomeCallable VpcClient::modifyNetworkAclAttributesCallable(const ModifyNetworkAclAttributesRequest &request) const
  8273. {
  8274. auto task = std::make_shared<std::packaged_task<ModifyNetworkAclAttributesOutcome()>>(
  8275. [this, request]()
  8276. {
  8277. return this->modifyNetworkAclAttributes(request);
  8278. });
  8279. asyncExecute(new Runnable([task]() { (*task)(); }));
  8280. return task->get_future();
  8281. }
  8282. VpcClient::ModifyPhysicalConnectionAttributeOutcome VpcClient::modifyPhysicalConnectionAttribute(const ModifyPhysicalConnectionAttributeRequest &request) const
  8283. {
  8284. auto endpointOutcome = endpointProvider_->getEndpoint();
  8285. if (!endpointOutcome.isSuccess())
  8286. return ModifyPhysicalConnectionAttributeOutcome(endpointOutcome.error());
  8287. auto outcome = makeRequest(endpointOutcome.result(), request);
  8288. if (outcome.isSuccess())
  8289. return ModifyPhysicalConnectionAttributeOutcome(ModifyPhysicalConnectionAttributeResult(outcome.result()));
  8290. else
  8291. return ModifyPhysicalConnectionAttributeOutcome(outcome.error());
  8292. }
  8293. void VpcClient::modifyPhysicalConnectionAttributeAsync(const ModifyPhysicalConnectionAttributeRequest& request, const ModifyPhysicalConnectionAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8294. {
  8295. auto fn = [this, request, handler, context]()
  8296. {
  8297. handler(this, request, modifyPhysicalConnectionAttribute(request), context);
  8298. };
  8299. asyncExecute(new Runnable(fn));
  8300. }
  8301. VpcClient::ModifyPhysicalConnectionAttributeOutcomeCallable VpcClient::modifyPhysicalConnectionAttributeCallable(const ModifyPhysicalConnectionAttributeRequest &request) const
  8302. {
  8303. auto task = std::make_shared<std::packaged_task<ModifyPhysicalConnectionAttributeOutcome()>>(
  8304. [this, request]()
  8305. {
  8306. return this->modifyPhysicalConnectionAttribute(request);
  8307. });
  8308. asyncExecute(new Runnable([task]() { (*task)(); }));
  8309. return task->get_future();
  8310. }
  8311. VpcClient::ModifyRouteEntryOutcome VpcClient::modifyRouteEntry(const ModifyRouteEntryRequest &request) const
  8312. {
  8313. auto endpointOutcome = endpointProvider_->getEndpoint();
  8314. if (!endpointOutcome.isSuccess())
  8315. return ModifyRouteEntryOutcome(endpointOutcome.error());
  8316. auto outcome = makeRequest(endpointOutcome.result(), request);
  8317. if (outcome.isSuccess())
  8318. return ModifyRouteEntryOutcome(ModifyRouteEntryResult(outcome.result()));
  8319. else
  8320. return ModifyRouteEntryOutcome(outcome.error());
  8321. }
  8322. void VpcClient::modifyRouteEntryAsync(const ModifyRouteEntryRequest& request, const ModifyRouteEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8323. {
  8324. auto fn = [this, request, handler, context]()
  8325. {
  8326. handler(this, request, modifyRouteEntry(request), context);
  8327. };
  8328. asyncExecute(new Runnable(fn));
  8329. }
  8330. VpcClient::ModifyRouteEntryOutcomeCallable VpcClient::modifyRouteEntryCallable(const ModifyRouteEntryRequest &request) const
  8331. {
  8332. auto task = std::make_shared<std::packaged_task<ModifyRouteEntryOutcome()>>(
  8333. [this, request]()
  8334. {
  8335. return this->modifyRouteEntry(request);
  8336. });
  8337. asyncExecute(new Runnable([task]() { (*task)(); }));
  8338. return task->get_future();
  8339. }
  8340. VpcClient::ModifyRouteTableAttributesOutcome VpcClient::modifyRouteTableAttributes(const ModifyRouteTableAttributesRequest &request) const
  8341. {
  8342. auto endpointOutcome = endpointProvider_->getEndpoint();
  8343. if (!endpointOutcome.isSuccess())
  8344. return ModifyRouteTableAttributesOutcome(endpointOutcome.error());
  8345. auto outcome = makeRequest(endpointOutcome.result(), request);
  8346. if (outcome.isSuccess())
  8347. return ModifyRouteTableAttributesOutcome(ModifyRouteTableAttributesResult(outcome.result()));
  8348. else
  8349. return ModifyRouteTableAttributesOutcome(outcome.error());
  8350. }
  8351. void VpcClient::modifyRouteTableAttributesAsync(const ModifyRouteTableAttributesRequest& request, const ModifyRouteTableAttributesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8352. {
  8353. auto fn = [this, request, handler, context]()
  8354. {
  8355. handler(this, request, modifyRouteTableAttributes(request), context);
  8356. };
  8357. asyncExecute(new Runnable(fn));
  8358. }
  8359. VpcClient::ModifyRouteTableAttributesOutcomeCallable VpcClient::modifyRouteTableAttributesCallable(const ModifyRouteTableAttributesRequest &request) const
  8360. {
  8361. auto task = std::make_shared<std::packaged_task<ModifyRouteTableAttributesOutcome()>>(
  8362. [this, request]()
  8363. {
  8364. return this->modifyRouteTableAttributes(request);
  8365. });
  8366. asyncExecute(new Runnable([task]() { (*task)(); }));
  8367. return task->get_future();
  8368. }
  8369. VpcClient::ModifyRouterInterfaceAttributeOutcome VpcClient::modifyRouterInterfaceAttribute(const ModifyRouterInterfaceAttributeRequest &request) const
  8370. {
  8371. auto endpointOutcome = endpointProvider_->getEndpoint();
  8372. if (!endpointOutcome.isSuccess())
  8373. return ModifyRouterInterfaceAttributeOutcome(endpointOutcome.error());
  8374. auto outcome = makeRequest(endpointOutcome.result(), request);
  8375. if (outcome.isSuccess())
  8376. return ModifyRouterInterfaceAttributeOutcome(ModifyRouterInterfaceAttributeResult(outcome.result()));
  8377. else
  8378. return ModifyRouterInterfaceAttributeOutcome(outcome.error());
  8379. }
  8380. void VpcClient::modifyRouterInterfaceAttributeAsync(const ModifyRouterInterfaceAttributeRequest& request, const ModifyRouterInterfaceAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8381. {
  8382. auto fn = [this, request, handler, context]()
  8383. {
  8384. handler(this, request, modifyRouterInterfaceAttribute(request), context);
  8385. };
  8386. asyncExecute(new Runnable(fn));
  8387. }
  8388. VpcClient::ModifyRouterInterfaceAttributeOutcomeCallable VpcClient::modifyRouterInterfaceAttributeCallable(const ModifyRouterInterfaceAttributeRequest &request) const
  8389. {
  8390. auto task = std::make_shared<std::packaged_task<ModifyRouterInterfaceAttributeOutcome()>>(
  8391. [this, request]()
  8392. {
  8393. return this->modifyRouterInterfaceAttribute(request);
  8394. });
  8395. asyncExecute(new Runnable([task]() { (*task)(); }));
  8396. return task->get_future();
  8397. }
  8398. VpcClient::ModifyRouterInterfaceSpecOutcome VpcClient::modifyRouterInterfaceSpec(const ModifyRouterInterfaceSpecRequest &request) const
  8399. {
  8400. auto endpointOutcome = endpointProvider_->getEndpoint();
  8401. if (!endpointOutcome.isSuccess())
  8402. return ModifyRouterInterfaceSpecOutcome(endpointOutcome.error());
  8403. auto outcome = makeRequest(endpointOutcome.result(), request);
  8404. if (outcome.isSuccess())
  8405. return ModifyRouterInterfaceSpecOutcome(ModifyRouterInterfaceSpecResult(outcome.result()));
  8406. else
  8407. return ModifyRouterInterfaceSpecOutcome(outcome.error());
  8408. }
  8409. void VpcClient::modifyRouterInterfaceSpecAsync(const ModifyRouterInterfaceSpecRequest& request, const ModifyRouterInterfaceSpecAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8410. {
  8411. auto fn = [this, request, handler, context]()
  8412. {
  8413. handler(this, request, modifyRouterInterfaceSpec(request), context);
  8414. };
  8415. asyncExecute(new Runnable(fn));
  8416. }
  8417. VpcClient::ModifyRouterInterfaceSpecOutcomeCallable VpcClient::modifyRouterInterfaceSpecCallable(const ModifyRouterInterfaceSpecRequest &request) const
  8418. {
  8419. auto task = std::make_shared<std::packaged_task<ModifyRouterInterfaceSpecOutcome()>>(
  8420. [this, request]()
  8421. {
  8422. return this->modifyRouterInterfaceSpec(request);
  8423. });
  8424. asyncExecute(new Runnable([task]() { (*task)(); }));
  8425. return task->get_future();
  8426. }
  8427. VpcClient::ModifySnatEntryOutcome VpcClient::modifySnatEntry(const ModifySnatEntryRequest &request) const
  8428. {
  8429. auto endpointOutcome = endpointProvider_->getEndpoint();
  8430. if (!endpointOutcome.isSuccess())
  8431. return ModifySnatEntryOutcome(endpointOutcome.error());
  8432. auto outcome = makeRequest(endpointOutcome.result(), request);
  8433. if (outcome.isSuccess())
  8434. return ModifySnatEntryOutcome(ModifySnatEntryResult(outcome.result()));
  8435. else
  8436. return ModifySnatEntryOutcome(outcome.error());
  8437. }
  8438. void VpcClient::modifySnatEntryAsync(const ModifySnatEntryRequest& request, const ModifySnatEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8439. {
  8440. auto fn = [this, request, handler, context]()
  8441. {
  8442. handler(this, request, modifySnatEntry(request), context);
  8443. };
  8444. asyncExecute(new Runnable(fn));
  8445. }
  8446. VpcClient::ModifySnatEntryOutcomeCallable VpcClient::modifySnatEntryCallable(const ModifySnatEntryRequest &request) const
  8447. {
  8448. auto task = std::make_shared<std::packaged_task<ModifySnatEntryOutcome()>>(
  8449. [this, request]()
  8450. {
  8451. return this->modifySnatEntry(request);
  8452. });
  8453. asyncExecute(new Runnable([task]() { (*task)(); }));
  8454. return task->get_future();
  8455. }
  8456. VpcClient::ModifySslVpnClientCertOutcome VpcClient::modifySslVpnClientCert(const ModifySslVpnClientCertRequest &request) const
  8457. {
  8458. auto endpointOutcome = endpointProvider_->getEndpoint();
  8459. if (!endpointOutcome.isSuccess())
  8460. return ModifySslVpnClientCertOutcome(endpointOutcome.error());
  8461. auto outcome = makeRequest(endpointOutcome.result(), request);
  8462. if (outcome.isSuccess())
  8463. return ModifySslVpnClientCertOutcome(ModifySslVpnClientCertResult(outcome.result()));
  8464. else
  8465. return ModifySslVpnClientCertOutcome(outcome.error());
  8466. }
  8467. void VpcClient::modifySslVpnClientCertAsync(const ModifySslVpnClientCertRequest& request, const ModifySslVpnClientCertAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8468. {
  8469. auto fn = [this, request, handler, context]()
  8470. {
  8471. handler(this, request, modifySslVpnClientCert(request), context);
  8472. };
  8473. asyncExecute(new Runnable(fn));
  8474. }
  8475. VpcClient::ModifySslVpnClientCertOutcomeCallable VpcClient::modifySslVpnClientCertCallable(const ModifySslVpnClientCertRequest &request) const
  8476. {
  8477. auto task = std::make_shared<std::packaged_task<ModifySslVpnClientCertOutcome()>>(
  8478. [this, request]()
  8479. {
  8480. return this->modifySslVpnClientCert(request);
  8481. });
  8482. asyncExecute(new Runnable([task]() { (*task)(); }));
  8483. return task->get_future();
  8484. }
  8485. VpcClient::ModifySslVpnServerOutcome VpcClient::modifySslVpnServer(const ModifySslVpnServerRequest &request) const
  8486. {
  8487. auto endpointOutcome = endpointProvider_->getEndpoint();
  8488. if (!endpointOutcome.isSuccess())
  8489. return ModifySslVpnServerOutcome(endpointOutcome.error());
  8490. auto outcome = makeRequest(endpointOutcome.result(), request);
  8491. if (outcome.isSuccess())
  8492. return ModifySslVpnServerOutcome(ModifySslVpnServerResult(outcome.result()));
  8493. else
  8494. return ModifySslVpnServerOutcome(outcome.error());
  8495. }
  8496. void VpcClient::modifySslVpnServerAsync(const ModifySslVpnServerRequest& request, const ModifySslVpnServerAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8497. {
  8498. auto fn = [this, request, handler, context]()
  8499. {
  8500. handler(this, request, modifySslVpnServer(request), context);
  8501. };
  8502. asyncExecute(new Runnable(fn));
  8503. }
  8504. VpcClient::ModifySslVpnServerOutcomeCallable VpcClient::modifySslVpnServerCallable(const ModifySslVpnServerRequest &request) const
  8505. {
  8506. auto task = std::make_shared<std::packaged_task<ModifySslVpnServerOutcome()>>(
  8507. [this, request]()
  8508. {
  8509. return this->modifySslVpnServer(request);
  8510. });
  8511. asyncExecute(new Runnable([task]() { (*task)(); }));
  8512. return task->get_future();
  8513. }
  8514. VpcClient::ModifyVRouterAttributeOutcome VpcClient::modifyVRouterAttribute(const ModifyVRouterAttributeRequest &request) const
  8515. {
  8516. auto endpointOutcome = endpointProvider_->getEndpoint();
  8517. if (!endpointOutcome.isSuccess())
  8518. return ModifyVRouterAttributeOutcome(endpointOutcome.error());
  8519. auto outcome = makeRequest(endpointOutcome.result(), request);
  8520. if (outcome.isSuccess())
  8521. return ModifyVRouterAttributeOutcome(ModifyVRouterAttributeResult(outcome.result()));
  8522. else
  8523. return ModifyVRouterAttributeOutcome(outcome.error());
  8524. }
  8525. void VpcClient::modifyVRouterAttributeAsync(const ModifyVRouterAttributeRequest& request, const ModifyVRouterAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8526. {
  8527. auto fn = [this, request, handler, context]()
  8528. {
  8529. handler(this, request, modifyVRouterAttribute(request), context);
  8530. };
  8531. asyncExecute(new Runnable(fn));
  8532. }
  8533. VpcClient::ModifyVRouterAttributeOutcomeCallable VpcClient::modifyVRouterAttributeCallable(const ModifyVRouterAttributeRequest &request) const
  8534. {
  8535. auto task = std::make_shared<std::packaged_task<ModifyVRouterAttributeOutcome()>>(
  8536. [this, request]()
  8537. {
  8538. return this->modifyVRouterAttribute(request);
  8539. });
  8540. asyncExecute(new Runnable([task]() { (*task)(); }));
  8541. return task->get_future();
  8542. }
  8543. VpcClient::ModifyVSwitchAttributeOutcome VpcClient::modifyVSwitchAttribute(const ModifyVSwitchAttributeRequest &request) const
  8544. {
  8545. auto endpointOutcome = endpointProvider_->getEndpoint();
  8546. if (!endpointOutcome.isSuccess())
  8547. return ModifyVSwitchAttributeOutcome(endpointOutcome.error());
  8548. auto outcome = makeRequest(endpointOutcome.result(), request);
  8549. if (outcome.isSuccess())
  8550. return ModifyVSwitchAttributeOutcome(ModifyVSwitchAttributeResult(outcome.result()));
  8551. else
  8552. return ModifyVSwitchAttributeOutcome(outcome.error());
  8553. }
  8554. void VpcClient::modifyVSwitchAttributeAsync(const ModifyVSwitchAttributeRequest& request, const ModifyVSwitchAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8555. {
  8556. auto fn = [this, request, handler, context]()
  8557. {
  8558. handler(this, request, modifyVSwitchAttribute(request), context);
  8559. };
  8560. asyncExecute(new Runnable(fn));
  8561. }
  8562. VpcClient::ModifyVSwitchAttributeOutcomeCallable VpcClient::modifyVSwitchAttributeCallable(const ModifyVSwitchAttributeRequest &request) const
  8563. {
  8564. auto task = std::make_shared<std::packaged_task<ModifyVSwitchAttributeOutcome()>>(
  8565. [this, request]()
  8566. {
  8567. return this->modifyVSwitchAttribute(request);
  8568. });
  8569. asyncExecute(new Runnable([task]() { (*task)(); }));
  8570. return task->get_future();
  8571. }
  8572. VpcClient::ModifyVcoRouteEntryWeightOutcome VpcClient::modifyVcoRouteEntryWeight(const ModifyVcoRouteEntryWeightRequest &request) const
  8573. {
  8574. auto endpointOutcome = endpointProvider_->getEndpoint();
  8575. if (!endpointOutcome.isSuccess())
  8576. return ModifyVcoRouteEntryWeightOutcome(endpointOutcome.error());
  8577. auto outcome = makeRequest(endpointOutcome.result(), request);
  8578. if (outcome.isSuccess())
  8579. return ModifyVcoRouteEntryWeightOutcome(ModifyVcoRouteEntryWeightResult(outcome.result()));
  8580. else
  8581. return ModifyVcoRouteEntryWeightOutcome(outcome.error());
  8582. }
  8583. void VpcClient::modifyVcoRouteEntryWeightAsync(const ModifyVcoRouteEntryWeightRequest& request, const ModifyVcoRouteEntryWeightAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8584. {
  8585. auto fn = [this, request, handler, context]()
  8586. {
  8587. handler(this, request, modifyVcoRouteEntryWeight(request), context);
  8588. };
  8589. asyncExecute(new Runnable(fn));
  8590. }
  8591. VpcClient::ModifyVcoRouteEntryWeightOutcomeCallable VpcClient::modifyVcoRouteEntryWeightCallable(const ModifyVcoRouteEntryWeightRequest &request) const
  8592. {
  8593. auto task = std::make_shared<std::packaged_task<ModifyVcoRouteEntryWeightOutcome()>>(
  8594. [this, request]()
  8595. {
  8596. return this->modifyVcoRouteEntryWeight(request);
  8597. });
  8598. asyncExecute(new Runnable([task]() { (*task)(); }));
  8599. return task->get_future();
  8600. }
  8601. VpcClient::ModifyVirtualBorderRouterAttributeOutcome VpcClient::modifyVirtualBorderRouterAttribute(const ModifyVirtualBorderRouterAttributeRequest &request) const
  8602. {
  8603. auto endpointOutcome = endpointProvider_->getEndpoint();
  8604. if (!endpointOutcome.isSuccess())
  8605. return ModifyVirtualBorderRouterAttributeOutcome(endpointOutcome.error());
  8606. auto outcome = makeRequest(endpointOutcome.result(), request);
  8607. if (outcome.isSuccess())
  8608. return ModifyVirtualBorderRouterAttributeOutcome(ModifyVirtualBorderRouterAttributeResult(outcome.result()));
  8609. else
  8610. return ModifyVirtualBorderRouterAttributeOutcome(outcome.error());
  8611. }
  8612. void VpcClient::modifyVirtualBorderRouterAttributeAsync(const ModifyVirtualBorderRouterAttributeRequest& request, const ModifyVirtualBorderRouterAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8613. {
  8614. auto fn = [this, request, handler, context]()
  8615. {
  8616. handler(this, request, modifyVirtualBorderRouterAttribute(request), context);
  8617. };
  8618. asyncExecute(new Runnable(fn));
  8619. }
  8620. VpcClient::ModifyVirtualBorderRouterAttributeOutcomeCallable VpcClient::modifyVirtualBorderRouterAttributeCallable(const ModifyVirtualBorderRouterAttributeRequest &request) const
  8621. {
  8622. auto task = std::make_shared<std::packaged_task<ModifyVirtualBorderRouterAttributeOutcome()>>(
  8623. [this, request]()
  8624. {
  8625. return this->modifyVirtualBorderRouterAttribute(request);
  8626. });
  8627. asyncExecute(new Runnable([task]() { (*task)(); }));
  8628. return task->get_future();
  8629. }
  8630. VpcClient::ModifyVpcAttributeOutcome VpcClient::modifyVpcAttribute(const ModifyVpcAttributeRequest &request) const
  8631. {
  8632. auto endpointOutcome = endpointProvider_->getEndpoint();
  8633. if (!endpointOutcome.isSuccess())
  8634. return ModifyVpcAttributeOutcome(endpointOutcome.error());
  8635. auto outcome = makeRequest(endpointOutcome.result(), request);
  8636. if (outcome.isSuccess())
  8637. return ModifyVpcAttributeOutcome(ModifyVpcAttributeResult(outcome.result()));
  8638. else
  8639. return ModifyVpcAttributeOutcome(outcome.error());
  8640. }
  8641. void VpcClient::modifyVpcAttributeAsync(const ModifyVpcAttributeRequest& request, const ModifyVpcAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8642. {
  8643. auto fn = [this, request, handler, context]()
  8644. {
  8645. handler(this, request, modifyVpcAttribute(request), context);
  8646. };
  8647. asyncExecute(new Runnable(fn));
  8648. }
  8649. VpcClient::ModifyVpcAttributeOutcomeCallable VpcClient::modifyVpcAttributeCallable(const ModifyVpcAttributeRequest &request) const
  8650. {
  8651. auto task = std::make_shared<std::packaged_task<ModifyVpcAttributeOutcome()>>(
  8652. [this, request]()
  8653. {
  8654. return this->modifyVpcAttribute(request);
  8655. });
  8656. asyncExecute(new Runnable([task]() { (*task)(); }));
  8657. return task->get_future();
  8658. }
  8659. VpcClient::ModifyVpcPrefixListOutcome VpcClient::modifyVpcPrefixList(const ModifyVpcPrefixListRequest &request) const
  8660. {
  8661. auto endpointOutcome = endpointProvider_->getEndpoint();
  8662. if (!endpointOutcome.isSuccess())
  8663. return ModifyVpcPrefixListOutcome(endpointOutcome.error());
  8664. auto outcome = makeRequest(endpointOutcome.result(), request);
  8665. if (outcome.isSuccess())
  8666. return ModifyVpcPrefixListOutcome(ModifyVpcPrefixListResult(outcome.result()));
  8667. else
  8668. return ModifyVpcPrefixListOutcome(outcome.error());
  8669. }
  8670. void VpcClient::modifyVpcPrefixListAsync(const ModifyVpcPrefixListRequest& request, const ModifyVpcPrefixListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8671. {
  8672. auto fn = [this, request, handler, context]()
  8673. {
  8674. handler(this, request, modifyVpcPrefixList(request), context);
  8675. };
  8676. asyncExecute(new Runnable(fn));
  8677. }
  8678. VpcClient::ModifyVpcPrefixListOutcomeCallable VpcClient::modifyVpcPrefixListCallable(const ModifyVpcPrefixListRequest &request) const
  8679. {
  8680. auto task = std::make_shared<std::packaged_task<ModifyVpcPrefixListOutcome()>>(
  8681. [this, request]()
  8682. {
  8683. return this->modifyVpcPrefixList(request);
  8684. });
  8685. asyncExecute(new Runnable([task]() { (*task)(); }));
  8686. return task->get_future();
  8687. }
  8688. VpcClient::ModifyVpnAttachmentAttributeOutcome VpcClient::modifyVpnAttachmentAttribute(const ModifyVpnAttachmentAttributeRequest &request) const
  8689. {
  8690. auto endpointOutcome = endpointProvider_->getEndpoint();
  8691. if (!endpointOutcome.isSuccess())
  8692. return ModifyVpnAttachmentAttributeOutcome(endpointOutcome.error());
  8693. auto outcome = makeRequest(endpointOutcome.result(), request);
  8694. if (outcome.isSuccess())
  8695. return ModifyVpnAttachmentAttributeOutcome(ModifyVpnAttachmentAttributeResult(outcome.result()));
  8696. else
  8697. return ModifyVpnAttachmentAttributeOutcome(outcome.error());
  8698. }
  8699. void VpcClient::modifyVpnAttachmentAttributeAsync(const ModifyVpnAttachmentAttributeRequest& request, const ModifyVpnAttachmentAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8700. {
  8701. auto fn = [this, request, handler, context]()
  8702. {
  8703. handler(this, request, modifyVpnAttachmentAttribute(request), context);
  8704. };
  8705. asyncExecute(new Runnable(fn));
  8706. }
  8707. VpcClient::ModifyVpnAttachmentAttributeOutcomeCallable VpcClient::modifyVpnAttachmentAttributeCallable(const ModifyVpnAttachmentAttributeRequest &request) const
  8708. {
  8709. auto task = std::make_shared<std::packaged_task<ModifyVpnAttachmentAttributeOutcome()>>(
  8710. [this, request]()
  8711. {
  8712. return this->modifyVpnAttachmentAttribute(request);
  8713. });
  8714. asyncExecute(new Runnable([task]() { (*task)(); }));
  8715. return task->get_future();
  8716. }
  8717. VpcClient::ModifyVpnConnectionAttributeOutcome VpcClient::modifyVpnConnectionAttribute(const ModifyVpnConnectionAttributeRequest &request) const
  8718. {
  8719. auto endpointOutcome = endpointProvider_->getEndpoint();
  8720. if (!endpointOutcome.isSuccess())
  8721. return ModifyVpnConnectionAttributeOutcome(endpointOutcome.error());
  8722. auto outcome = makeRequest(endpointOutcome.result(), request);
  8723. if (outcome.isSuccess())
  8724. return ModifyVpnConnectionAttributeOutcome(ModifyVpnConnectionAttributeResult(outcome.result()));
  8725. else
  8726. return ModifyVpnConnectionAttributeOutcome(outcome.error());
  8727. }
  8728. void VpcClient::modifyVpnConnectionAttributeAsync(const ModifyVpnConnectionAttributeRequest& request, const ModifyVpnConnectionAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8729. {
  8730. auto fn = [this, request, handler, context]()
  8731. {
  8732. handler(this, request, modifyVpnConnectionAttribute(request), context);
  8733. };
  8734. asyncExecute(new Runnable(fn));
  8735. }
  8736. VpcClient::ModifyVpnConnectionAttributeOutcomeCallable VpcClient::modifyVpnConnectionAttributeCallable(const ModifyVpnConnectionAttributeRequest &request) const
  8737. {
  8738. auto task = std::make_shared<std::packaged_task<ModifyVpnConnectionAttributeOutcome()>>(
  8739. [this, request]()
  8740. {
  8741. return this->modifyVpnConnectionAttribute(request);
  8742. });
  8743. asyncExecute(new Runnable([task]() { (*task)(); }));
  8744. return task->get_future();
  8745. }
  8746. VpcClient::ModifyVpnGatewayAttributeOutcome VpcClient::modifyVpnGatewayAttribute(const ModifyVpnGatewayAttributeRequest &request) const
  8747. {
  8748. auto endpointOutcome = endpointProvider_->getEndpoint();
  8749. if (!endpointOutcome.isSuccess())
  8750. return ModifyVpnGatewayAttributeOutcome(endpointOutcome.error());
  8751. auto outcome = makeRequest(endpointOutcome.result(), request);
  8752. if (outcome.isSuccess())
  8753. return ModifyVpnGatewayAttributeOutcome(ModifyVpnGatewayAttributeResult(outcome.result()));
  8754. else
  8755. return ModifyVpnGatewayAttributeOutcome(outcome.error());
  8756. }
  8757. void VpcClient::modifyVpnGatewayAttributeAsync(const ModifyVpnGatewayAttributeRequest& request, const ModifyVpnGatewayAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8758. {
  8759. auto fn = [this, request, handler, context]()
  8760. {
  8761. handler(this, request, modifyVpnGatewayAttribute(request), context);
  8762. };
  8763. asyncExecute(new Runnable(fn));
  8764. }
  8765. VpcClient::ModifyVpnGatewayAttributeOutcomeCallable VpcClient::modifyVpnGatewayAttributeCallable(const ModifyVpnGatewayAttributeRequest &request) const
  8766. {
  8767. auto task = std::make_shared<std::packaged_task<ModifyVpnGatewayAttributeOutcome()>>(
  8768. [this, request]()
  8769. {
  8770. return this->modifyVpnGatewayAttribute(request);
  8771. });
  8772. asyncExecute(new Runnable([task]() { (*task)(); }));
  8773. return task->get_future();
  8774. }
  8775. VpcClient::ModifyVpnPbrRouteEntryAttributeOutcome VpcClient::modifyVpnPbrRouteEntryAttribute(const ModifyVpnPbrRouteEntryAttributeRequest &request) const
  8776. {
  8777. auto endpointOutcome = endpointProvider_->getEndpoint();
  8778. if (!endpointOutcome.isSuccess())
  8779. return ModifyVpnPbrRouteEntryAttributeOutcome(endpointOutcome.error());
  8780. auto outcome = makeRequest(endpointOutcome.result(), request);
  8781. if (outcome.isSuccess())
  8782. return ModifyVpnPbrRouteEntryAttributeOutcome(ModifyVpnPbrRouteEntryAttributeResult(outcome.result()));
  8783. else
  8784. return ModifyVpnPbrRouteEntryAttributeOutcome(outcome.error());
  8785. }
  8786. void VpcClient::modifyVpnPbrRouteEntryAttributeAsync(const ModifyVpnPbrRouteEntryAttributeRequest& request, const ModifyVpnPbrRouteEntryAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8787. {
  8788. auto fn = [this, request, handler, context]()
  8789. {
  8790. handler(this, request, modifyVpnPbrRouteEntryAttribute(request), context);
  8791. };
  8792. asyncExecute(new Runnable(fn));
  8793. }
  8794. VpcClient::ModifyVpnPbrRouteEntryAttributeOutcomeCallable VpcClient::modifyVpnPbrRouteEntryAttributeCallable(const ModifyVpnPbrRouteEntryAttributeRequest &request) const
  8795. {
  8796. auto task = std::make_shared<std::packaged_task<ModifyVpnPbrRouteEntryAttributeOutcome()>>(
  8797. [this, request]()
  8798. {
  8799. return this->modifyVpnPbrRouteEntryAttribute(request);
  8800. });
  8801. asyncExecute(new Runnable([task]() { (*task)(); }));
  8802. return task->get_future();
  8803. }
  8804. VpcClient::ModifyVpnPbrRouteEntryPriorityOutcome VpcClient::modifyVpnPbrRouteEntryPriority(const ModifyVpnPbrRouteEntryPriorityRequest &request) const
  8805. {
  8806. auto endpointOutcome = endpointProvider_->getEndpoint();
  8807. if (!endpointOutcome.isSuccess())
  8808. return ModifyVpnPbrRouteEntryPriorityOutcome(endpointOutcome.error());
  8809. auto outcome = makeRequest(endpointOutcome.result(), request);
  8810. if (outcome.isSuccess())
  8811. return ModifyVpnPbrRouteEntryPriorityOutcome(ModifyVpnPbrRouteEntryPriorityResult(outcome.result()));
  8812. else
  8813. return ModifyVpnPbrRouteEntryPriorityOutcome(outcome.error());
  8814. }
  8815. void VpcClient::modifyVpnPbrRouteEntryPriorityAsync(const ModifyVpnPbrRouteEntryPriorityRequest& request, const ModifyVpnPbrRouteEntryPriorityAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8816. {
  8817. auto fn = [this, request, handler, context]()
  8818. {
  8819. handler(this, request, modifyVpnPbrRouteEntryPriority(request), context);
  8820. };
  8821. asyncExecute(new Runnable(fn));
  8822. }
  8823. VpcClient::ModifyVpnPbrRouteEntryPriorityOutcomeCallable VpcClient::modifyVpnPbrRouteEntryPriorityCallable(const ModifyVpnPbrRouteEntryPriorityRequest &request) const
  8824. {
  8825. auto task = std::make_shared<std::packaged_task<ModifyVpnPbrRouteEntryPriorityOutcome()>>(
  8826. [this, request]()
  8827. {
  8828. return this->modifyVpnPbrRouteEntryPriority(request);
  8829. });
  8830. asyncExecute(new Runnable([task]() { (*task)(); }));
  8831. return task->get_future();
  8832. }
  8833. VpcClient::ModifyVpnPbrRouteEntryWeightOutcome VpcClient::modifyVpnPbrRouteEntryWeight(const ModifyVpnPbrRouteEntryWeightRequest &request) const
  8834. {
  8835. auto endpointOutcome = endpointProvider_->getEndpoint();
  8836. if (!endpointOutcome.isSuccess())
  8837. return ModifyVpnPbrRouteEntryWeightOutcome(endpointOutcome.error());
  8838. auto outcome = makeRequest(endpointOutcome.result(), request);
  8839. if (outcome.isSuccess())
  8840. return ModifyVpnPbrRouteEntryWeightOutcome(ModifyVpnPbrRouteEntryWeightResult(outcome.result()));
  8841. else
  8842. return ModifyVpnPbrRouteEntryWeightOutcome(outcome.error());
  8843. }
  8844. void VpcClient::modifyVpnPbrRouteEntryWeightAsync(const ModifyVpnPbrRouteEntryWeightRequest& request, const ModifyVpnPbrRouteEntryWeightAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8845. {
  8846. auto fn = [this, request, handler, context]()
  8847. {
  8848. handler(this, request, modifyVpnPbrRouteEntryWeight(request), context);
  8849. };
  8850. asyncExecute(new Runnable(fn));
  8851. }
  8852. VpcClient::ModifyVpnPbrRouteEntryWeightOutcomeCallable VpcClient::modifyVpnPbrRouteEntryWeightCallable(const ModifyVpnPbrRouteEntryWeightRequest &request) const
  8853. {
  8854. auto task = std::make_shared<std::packaged_task<ModifyVpnPbrRouteEntryWeightOutcome()>>(
  8855. [this, request]()
  8856. {
  8857. return this->modifyVpnPbrRouteEntryWeight(request);
  8858. });
  8859. asyncExecute(new Runnable([task]() { (*task)(); }));
  8860. return task->get_future();
  8861. }
  8862. VpcClient::ModifyVpnRouteEntryWeightOutcome VpcClient::modifyVpnRouteEntryWeight(const ModifyVpnRouteEntryWeightRequest &request) const
  8863. {
  8864. auto endpointOutcome = endpointProvider_->getEndpoint();
  8865. if (!endpointOutcome.isSuccess())
  8866. return ModifyVpnRouteEntryWeightOutcome(endpointOutcome.error());
  8867. auto outcome = makeRequest(endpointOutcome.result(), request);
  8868. if (outcome.isSuccess())
  8869. return ModifyVpnRouteEntryWeightOutcome(ModifyVpnRouteEntryWeightResult(outcome.result()));
  8870. else
  8871. return ModifyVpnRouteEntryWeightOutcome(outcome.error());
  8872. }
  8873. void VpcClient::modifyVpnRouteEntryWeightAsync(const ModifyVpnRouteEntryWeightRequest& request, const ModifyVpnRouteEntryWeightAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8874. {
  8875. auto fn = [this, request, handler, context]()
  8876. {
  8877. handler(this, request, modifyVpnRouteEntryWeight(request), context);
  8878. };
  8879. asyncExecute(new Runnable(fn));
  8880. }
  8881. VpcClient::ModifyVpnRouteEntryWeightOutcomeCallable VpcClient::modifyVpnRouteEntryWeightCallable(const ModifyVpnRouteEntryWeightRequest &request) const
  8882. {
  8883. auto task = std::make_shared<std::packaged_task<ModifyVpnRouteEntryWeightOutcome()>>(
  8884. [this, request]()
  8885. {
  8886. return this->modifyVpnRouteEntryWeight(request);
  8887. });
  8888. asyncExecute(new Runnable([task]() { (*task)(); }));
  8889. return task->get_future();
  8890. }
  8891. VpcClient::MoveResourceGroupOutcome VpcClient::moveResourceGroup(const MoveResourceGroupRequest &request) const
  8892. {
  8893. auto endpointOutcome = endpointProvider_->getEndpoint();
  8894. if (!endpointOutcome.isSuccess())
  8895. return MoveResourceGroupOutcome(endpointOutcome.error());
  8896. auto outcome = makeRequest(endpointOutcome.result(), request);
  8897. if (outcome.isSuccess())
  8898. return MoveResourceGroupOutcome(MoveResourceGroupResult(outcome.result()));
  8899. else
  8900. return MoveResourceGroupOutcome(outcome.error());
  8901. }
  8902. void VpcClient::moveResourceGroupAsync(const MoveResourceGroupRequest& request, const MoveResourceGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8903. {
  8904. auto fn = [this, request, handler, context]()
  8905. {
  8906. handler(this, request, moveResourceGroup(request), context);
  8907. };
  8908. asyncExecute(new Runnable(fn));
  8909. }
  8910. VpcClient::MoveResourceGroupOutcomeCallable VpcClient::moveResourceGroupCallable(const MoveResourceGroupRequest &request) const
  8911. {
  8912. auto task = std::make_shared<std::packaged_task<MoveResourceGroupOutcome()>>(
  8913. [this, request]()
  8914. {
  8915. return this->moveResourceGroup(request);
  8916. });
  8917. asyncExecute(new Runnable([task]() { (*task)(); }));
  8918. return task->get_future();
  8919. }
  8920. VpcClient::OpenFlowLogServiceOutcome VpcClient::openFlowLogService(const OpenFlowLogServiceRequest &request) const
  8921. {
  8922. auto endpointOutcome = endpointProvider_->getEndpoint();
  8923. if (!endpointOutcome.isSuccess())
  8924. return OpenFlowLogServiceOutcome(endpointOutcome.error());
  8925. auto outcome = makeRequest(endpointOutcome.result(), request);
  8926. if (outcome.isSuccess())
  8927. return OpenFlowLogServiceOutcome(OpenFlowLogServiceResult(outcome.result()));
  8928. else
  8929. return OpenFlowLogServiceOutcome(outcome.error());
  8930. }
  8931. void VpcClient::openFlowLogServiceAsync(const OpenFlowLogServiceRequest& request, const OpenFlowLogServiceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8932. {
  8933. auto fn = [this, request, handler, context]()
  8934. {
  8935. handler(this, request, openFlowLogService(request), context);
  8936. };
  8937. asyncExecute(new Runnable(fn));
  8938. }
  8939. VpcClient::OpenFlowLogServiceOutcomeCallable VpcClient::openFlowLogServiceCallable(const OpenFlowLogServiceRequest &request) const
  8940. {
  8941. auto task = std::make_shared<std::packaged_task<OpenFlowLogServiceOutcome()>>(
  8942. [this, request]()
  8943. {
  8944. return this->openFlowLogService(request);
  8945. });
  8946. asyncExecute(new Runnable([task]() { (*task)(); }));
  8947. return task->get_future();
  8948. }
  8949. VpcClient::OpenPhysicalConnectionServiceOutcome VpcClient::openPhysicalConnectionService(const OpenPhysicalConnectionServiceRequest &request) const
  8950. {
  8951. auto endpointOutcome = endpointProvider_->getEndpoint();
  8952. if (!endpointOutcome.isSuccess())
  8953. return OpenPhysicalConnectionServiceOutcome(endpointOutcome.error());
  8954. auto outcome = makeRequest(endpointOutcome.result(), request);
  8955. if (outcome.isSuccess())
  8956. return OpenPhysicalConnectionServiceOutcome(OpenPhysicalConnectionServiceResult(outcome.result()));
  8957. else
  8958. return OpenPhysicalConnectionServiceOutcome(outcome.error());
  8959. }
  8960. void VpcClient::openPhysicalConnectionServiceAsync(const OpenPhysicalConnectionServiceRequest& request, const OpenPhysicalConnectionServiceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8961. {
  8962. auto fn = [this, request, handler, context]()
  8963. {
  8964. handler(this, request, openPhysicalConnectionService(request), context);
  8965. };
  8966. asyncExecute(new Runnable(fn));
  8967. }
  8968. VpcClient::OpenPhysicalConnectionServiceOutcomeCallable VpcClient::openPhysicalConnectionServiceCallable(const OpenPhysicalConnectionServiceRequest &request) const
  8969. {
  8970. auto task = std::make_shared<std::packaged_task<OpenPhysicalConnectionServiceOutcome()>>(
  8971. [this, request]()
  8972. {
  8973. return this->openPhysicalConnectionService(request);
  8974. });
  8975. asyncExecute(new Runnable([task]() { (*task)(); }));
  8976. return task->get_future();
  8977. }
  8978. VpcClient::OpenTrafficMirrorServiceOutcome VpcClient::openTrafficMirrorService(const OpenTrafficMirrorServiceRequest &request) const
  8979. {
  8980. auto endpointOutcome = endpointProvider_->getEndpoint();
  8981. if (!endpointOutcome.isSuccess())
  8982. return OpenTrafficMirrorServiceOutcome(endpointOutcome.error());
  8983. auto outcome = makeRequest(endpointOutcome.result(), request);
  8984. if (outcome.isSuccess())
  8985. return OpenTrafficMirrorServiceOutcome(OpenTrafficMirrorServiceResult(outcome.result()));
  8986. else
  8987. return OpenTrafficMirrorServiceOutcome(outcome.error());
  8988. }
  8989. void VpcClient::openTrafficMirrorServiceAsync(const OpenTrafficMirrorServiceRequest& request, const OpenTrafficMirrorServiceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  8990. {
  8991. auto fn = [this, request, handler, context]()
  8992. {
  8993. handler(this, request, openTrafficMirrorService(request), context);
  8994. };
  8995. asyncExecute(new Runnable(fn));
  8996. }
  8997. VpcClient::OpenTrafficMirrorServiceOutcomeCallable VpcClient::openTrafficMirrorServiceCallable(const OpenTrafficMirrorServiceRequest &request) const
  8998. {
  8999. auto task = std::make_shared<std::packaged_task<OpenTrafficMirrorServiceOutcome()>>(
  9000. [this, request]()
  9001. {
  9002. return this->openTrafficMirrorService(request);
  9003. });
  9004. asyncExecute(new Runnable([task]() { (*task)(); }));
  9005. return task->get_future();
  9006. }
  9007. VpcClient::PublishVpnRouteEntryOutcome VpcClient::publishVpnRouteEntry(const PublishVpnRouteEntryRequest &request) const
  9008. {
  9009. auto endpointOutcome = endpointProvider_->getEndpoint();
  9010. if (!endpointOutcome.isSuccess())
  9011. return PublishVpnRouteEntryOutcome(endpointOutcome.error());
  9012. auto outcome = makeRequest(endpointOutcome.result(), request);
  9013. if (outcome.isSuccess())
  9014. return PublishVpnRouteEntryOutcome(PublishVpnRouteEntryResult(outcome.result()));
  9015. else
  9016. return PublishVpnRouteEntryOutcome(outcome.error());
  9017. }
  9018. void VpcClient::publishVpnRouteEntryAsync(const PublishVpnRouteEntryRequest& request, const PublishVpnRouteEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9019. {
  9020. auto fn = [this, request, handler, context]()
  9021. {
  9022. handler(this, request, publishVpnRouteEntry(request), context);
  9023. };
  9024. asyncExecute(new Runnable(fn));
  9025. }
  9026. VpcClient::PublishVpnRouteEntryOutcomeCallable VpcClient::publishVpnRouteEntryCallable(const PublishVpnRouteEntryRequest &request) const
  9027. {
  9028. auto task = std::make_shared<std::packaged_task<PublishVpnRouteEntryOutcome()>>(
  9029. [this, request]()
  9030. {
  9031. return this->publishVpnRouteEntry(request);
  9032. });
  9033. asyncExecute(new Runnable([task]() { (*task)(); }));
  9034. return task->get_future();
  9035. }
  9036. VpcClient::RecoverPhysicalConnectionOutcome VpcClient::recoverPhysicalConnection(const RecoverPhysicalConnectionRequest &request) const
  9037. {
  9038. auto endpointOutcome = endpointProvider_->getEndpoint();
  9039. if (!endpointOutcome.isSuccess())
  9040. return RecoverPhysicalConnectionOutcome(endpointOutcome.error());
  9041. auto outcome = makeRequest(endpointOutcome.result(), request);
  9042. if (outcome.isSuccess())
  9043. return RecoverPhysicalConnectionOutcome(RecoverPhysicalConnectionResult(outcome.result()));
  9044. else
  9045. return RecoverPhysicalConnectionOutcome(outcome.error());
  9046. }
  9047. void VpcClient::recoverPhysicalConnectionAsync(const RecoverPhysicalConnectionRequest& request, const RecoverPhysicalConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9048. {
  9049. auto fn = [this, request, handler, context]()
  9050. {
  9051. handler(this, request, recoverPhysicalConnection(request), context);
  9052. };
  9053. asyncExecute(new Runnable(fn));
  9054. }
  9055. VpcClient::RecoverPhysicalConnectionOutcomeCallable VpcClient::recoverPhysicalConnectionCallable(const RecoverPhysicalConnectionRequest &request) const
  9056. {
  9057. auto task = std::make_shared<std::packaged_task<RecoverPhysicalConnectionOutcome()>>(
  9058. [this, request]()
  9059. {
  9060. return this->recoverPhysicalConnection(request);
  9061. });
  9062. asyncExecute(new Runnable([task]() { (*task)(); }));
  9063. return task->get_future();
  9064. }
  9065. VpcClient::RecoverVirtualBorderRouterOutcome VpcClient::recoverVirtualBorderRouter(const RecoverVirtualBorderRouterRequest &request) const
  9066. {
  9067. auto endpointOutcome = endpointProvider_->getEndpoint();
  9068. if (!endpointOutcome.isSuccess())
  9069. return RecoverVirtualBorderRouterOutcome(endpointOutcome.error());
  9070. auto outcome = makeRequest(endpointOutcome.result(), request);
  9071. if (outcome.isSuccess())
  9072. return RecoverVirtualBorderRouterOutcome(RecoverVirtualBorderRouterResult(outcome.result()));
  9073. else
  9074. return RecoverVirtualBorderRouterOutcome(outcome.error());
  9075. }
  9076. void VpcClient::recoverVirtualBorderRouterAsync(const RecoverVirtualBorderRouterRequest& request, const RecoverVirtualBorderRouterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9077. {
  9078. auto fn = [this, request, handler, context]()
  9079. {
  9080. handler(this, request, recoverVirtualBorderRouter(request), context);
  9081. };
  9082. asyncExecute(new Runnable(fn));
  9083. }
  9084. VpcClient::RecoverVirtualBorderRouterOutcomeCallable VpcClient::recoverVirtualBorderRouterCallable(const RecoverVirtualBorderRouterRequest &request) const
  9085. {
  9086. auto task = std::make_shared<std::packaged_task<RecoverVirtualBorderRouterOutcome()>>(
  9087. [this, request]()
  9088. {
  9089. return this->recoverVirtualBorderRouter(request);
  9090. });
  9091. asyncExecute(new Runnable([task]() { (*task)(); }));
  9092. return task->get_future();
  9093. }
  9094. VpcClient::ReleaseEipAddressOutcome VpcClient::releaseEipAddress(const ReleaseEipAddressRequest &request) const
  9095. {
  9096. auto endpointOutcome = endpointProvider_->getEndpoint();
  9097. if (!endpointOutcome.isSuccess())
  9098. return ReleaseEipAddressOutcome(endpointOutcome.error());
  9099. auto outcome = makeRequest(endpointOutcome.result(), request);
  9100. if (outcome.isSuccess())
  9101. return ReleaseEipAddressOutcome(ReleaseEipAddressResult(outcome.result()));
  9102. else
  9103. return ReleaseEipAddressOutcome(outcome.error());
  9104. }
  9105. void VpcClient::releaseEipAddressAsync(const ReleaseEipAddressRequest& request, const ReleaseEipAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9106. {
  9107. auto fn = [this, request, handler, context]()
  9108. {
  9109. handler(this, request, releaseEipAddress(request), context);
  9110. };
  9111. asyncExecute(new Runnable(fn));
  9112. }
  9113. VpcClient::ReleaseEipAddressOutcomeCallable VpcClient::releaseEipAddressCallable(const ReleaseEipAddressRequest &request) const
  9114. {
  9115. auto task = std::make_shared<std::packaged_task<ReleaseEipAddressOutcome()>>(
  9116. [this, request]()
  9117. {
  9118. return this->releaseEipAddress(request);
  9119. });
  9120. asyncExecute(new Runnable([task]() { (*task)(); }));
  9121. return task->get_future();
  9122. }
  9123. VpcClient::ReleaseEipSegmentAddressOutcome VpcClient::releaseEipSegmentAddress(const ReleaseEipSegmentAddressRequest &request) const
  9124. {
  9125. auto endpointOutcome = endpointProvider_->getEndpoint();
  9126. if (!endpointOutcome.isSuccess())
  9127. return ReleaseEipSegmentAddressOutcome(endpointOutcome.error());
  9128. auto outcome = makeRequest(endpointOutcome.result(), request);
  9129. if (outcome.isSuccess())
  9130. return ReleaseEipSegmentAddressOutcome(ReleaseEipSegmentAddressResult(outcome.result()));
  9131. else
  9132. return ReleaseEipSegmentAddressOutcome(outcome.error());
  9133. }
  9134. void VpcClient::releaseEipSegmentAddressAsync(const ReleaseEipSegmentAddressRequest& request, const ReleaseEipSegmentAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9135. {
  9136. auto fn = [this, request, handler, context]()
  9137. {
  9138. handler(this, request, releaseEipSegmentAddress(request), context);
  9139. };
  9140. asyncExecute(new Runnable(fn));
  9141. }
  9142. VpcClient::ReleaseEipSegmentAddressOutcomeCallable VpcClient::releaseEipSegmentAddressCallable(const ReleaseEipSegmentAddressRequest &request) const
  9143. {
  9144. auto task = std::make_shared<std::packaged_task<ReleaseEipSegmentAddressOutcome()>>(
  9145. [this, request]()
  9146. {
  9147. return this->releaseEipSegmentAddress(request);
  9148. });
  9149. asyncExecute(new Runnable([task]() { (*task)(); }));
  9150. return task->get_future();
  9151. }
  9152. VpcClient::RemoveCommonBandwidthPackageIpOutcome VpcClient::removeCommonBandwidthPackageIp(const RemoveCommonBandwidthPackageIpRequest &request) const
  9153. {
  9154. auto endpointOutcome = endpointProvider_->getEndpoint();
  9155. if (!endpointOutcome.isSuccess())
  9156. return RemoveCommonBandwidthPackageIpOutcome(endpointOutcome.error());
  9157. auto outcome = makeRequest(endpointOutcome.result(), request);
  9158. if (outcome.isSuccess())
  9159. return RemoveCommonBandwidthPackageIpOutcome(RemoveCommonBandwidthPackageIpResult(outcome.result()));
  9160. else
  9161. return RemoveCommonBandwidthPackageIpOutcome(outcome.error());
  9162. }
  9163. void VpcClient::removeCommonBandwidthPackageIpAsync(const RemoveCommonBandwidthPackageIpRequest& request, const RemoveCommonBandwidthPackageIpAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9164. {
  9165. auto fn = [this, request, handler, context]()
  9166. {
  9167. handler(this, request, removeCommonBandwidthPackageIp(request), context);
  9168. };
  9169. asyncExecute(new Runnable(fn));
  9170. }
  9171. VpcClient::RemoveCommonBandwidthPackageIpOutcomeCallable VpcClient::removeCommonBandwidthPackageIpCallable(const RemoveCommonBandwidthPackageIpRequest &request) const
  9172. {
  9173. auto task = std::make_shared<std::packaged_task<RemoveCommonBandwidthPackageIpOutcome()>>(
  9174. [this, request]()
  9175. {
  9176. return this->removeCommonBandwidthPackageIp(request);
  9177. });
  9178. asyncExecute(new Runnable([task]() { (*task)(); }));
  9179. return task->get_future();
  9180. }
  9181. VpcClient::RemoveGlobalAccelerationInstanceIpOutcome VpcClient::removeGlobalAccelerationInstanceIp(const RemoveGlobalAccelerationInstanceIpRequest &request) const
  9182. {
  9183. auto endpointOutcome = endpointProvider_->getEndpoint();
  9184. if (!endpointOutcome.isSuccess())
  9185. return RemoveGlobalAccelerationInstanceIpOutcome(endpointOutcome.error());
  9186. auto outcome = makeRequest(endpointOutcome.result(), request);
  9187. if (outcome.isSuccess())
  9188. return RemoveGlobalAccelerationInstanceIpOutcome(RemoveGlobalAccelerationInstanceIpResult(outcome.result()));
  9189. else
  9190. return RemoveGlobalAccelerationInstanceIpOutcome(outcome.error());
  9191. }
  9192. void VpcClient::removeGlobalAccelerationInstanceIpAsync(const RemoveGlobalAccelerationInstanceIpRequest& request, const RemoveGlobalAccelerationInstanceIpAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9193. {
  9194. auto fn = [this, request, handler, context]()
  9195. {
  9196. handler(this, request, removeGlobalAccelerationInstanceIp(request), context);
  9197. };
  9198. asyncExecute(new Runnable(fn));
  9199. }
  9200. VpcClient::RemoveGlobalAccelerationInstanceIpOutcomeCallable VpcClient::removeGlobalAccelerationInstanceIpCallable(const RemoveGlobalAccelerationInstanceIpRequest &request) const
  9201. {
  9202. auto task = std::make_shared<std::packaged_task<RemoveGlobalAccelerationInstanceIpOutcome()>>(
  9203. [this, request]()
  9204. {
  9205. return this->removeGlobalAccelerationInstanceIp(request);
  9206. });
  9207. asyncExecute(new Runnable([task]() { (*task)(); }));
  9208. return task->get_future();
  9209. }
  9210. VpcClient::RemoveIPv6TranslatorAclListEntryOutcome VpcClient::removeIPv6TranslatorAclListEntry(const RemoveIPv6TranslatorAclListEntryRequest &request) const
  9211. {
  9212. auto endpointOutcome = endpointProvider_->getEndpoint();
  9213. if (!endpointOutcome.isSuccess())
  9214. return RemoveIPv6TranslatorAclListEntryOutcome(endpointOutcome.error());
  9215. auto outcome = makeRequest(endpointOutcome.result(), request);
  9216. if (outcome.isSuccess())
  9217. return RemoveIPv6TranslatorAclListEntryOutcome(RemoveIPv6TranslatorAclListEntryResult(outcome.result()));
  9218. else
  9219. return RemoveIPv6TranslatorAclListEntryOutcome(outcome.error());
  9220. }
  9221. void VpcClient::removeIPv6TranslatorAclListEntryAsync(const RemoveIPv6TranslatorAclListEntryRequest& request, const RemoveIPv6TranslatorAclListEntryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9222. {
  9223. auto fn = [this, request, handler, context]()
  9224. {
  9225. handler(this, request, removeIPv6TranslatorAclListEntry(request), context);
  9226. };
  9227. asyncExecute(new Runnable(fn));
  9228. }
  9229. VpcClient::RemoveIPv6TranslatorAclListEntryOutcomeCallable VpcClient::removeIPv6TranslatorAclListEntryCallable(const RemoveIPv6TranslatorAclListEntryRequest &request) const
  9230. {
  9231. auto task = std::make_shared<std::packaged_task<RemoveIPv6TranslatorAclListEntryOutcome()>>(
  9232. [this, request]()
  9233. {
  9234. return this->removeIPv6TranslatorAclListEntry(request);
  9235. });
  9236. asyncExecute(new Runnable([task]() { (*task)(); }));
  9237. return task->get_future();
  9238. }
  9239. VpcClient::RemoveSourcesFromTrafficMirrorSessionOutcome VpcClient::removeSourcesFromTrafficMirrorSession(const RemoveSourcesFromTrafficMirrorSessionRequest &request) const
  9240. {
  9241. auto endpointOutcome = endpointProvider_->getEndpoint();
  9242. if (!endpointOutcome.isSuccess())
  9243. return RemoveSourcesFromTrafficMirrorSessionOutcome(endpointOutcome.error());
  9244. auto outcome = makeRequest(endpointOutcome.result(), request);
  9245. if (outcome.isSuccess())
  9246. return RemoveSourcesFromTrafficMirrorSessionOutcome(RemoveSourcesFromTrafficMirrorSessionResult(outcome.result()));
  9247. else
  9248. return RemoveSourcesFromTrafficMirrorSessionOutcome(outcome.error());
  9249. }
  9250. void VpcClient::removeSourcesFromTrafficMirrorSessionAsync(const RemoveSourcesFromTrafficMirrorSessionRequest& request, const RemoveSourcesFromTrafficMirrorSessionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9251. {
  9252. auto fn = [this, request, handler, context]()
  9253. {
  9254. handler(this, request, removeSourcesFromTrafficMirrorSession(request), context);
  9255. };
  9256. asyncExecute(new Runnable(fn));
  9257. }
  9258. VpcClient::RemoveSourcesFromTrafficMirrorSessionOutcomeCallable VpcClient::removeSourcesFromTrafficMirrorSessionCallable(const RemoveSourcesFromTrafficMirrorSessionRequest &request) const
  9259. {
  9260. auto task = std::make_shared<std::packaged_task<RemoveSourcesFromTrafficMirrorSessionOutcome()>>(
  9261. [this, request]()
  9262. {
  9263. return this->removeSourcesFromTrafficMirrorSession(request);
  9264. });
  9265. asyncExecute(new Runnable([task]() { (*task)(); }));
  9266. return task->get_future();
  9267. }
  9268. VpcClient::ReplaceVpcDhcpOptionsSetOutcome VpcClient::replaceVpcDhcpOptionsSet(const ReplaceVpcDhcpOptionsSetRequest &request) const
  9269. {
  9270. auto endpointOutcome = endpointProvider_->getEndpoint();
  9271. if (!endpointOutcome.isSuccess())
  9272. return ReplaceVpcDhcpOptionsSetOutcome(endpointOutcome.error());
  9273. auto outcome = makeRequest(endpointOutcome.result(), request);
  9274. if (outcome.isSuccess())
  9275. return ReplaceVpcDhcpOptionsSetOutcome(ReplaceVpcDhcpOptionsSetResult(outcome.result()));
  9276. else
  9277. return ReplaceVpcDhcpOptionsSetOutcome(outcome.error());
  9278. }
  9279. void VpcClient::replaceVpcDhcpOptionsSetAsync(const ReplaceVpcDhcpOptionsSetRequest& request, const ReplaceVpcDhcpOptionsSetAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9280. {
  9281. auto fn = [this, request, handler, context]()
  9282. {
  9283. handler(this, request, replaceVpcDhcpOptionsSet(request), context);
  9284. };
  9285. asyncExecute(new Runnable(fn));
  9286. }
  9287. VpcClient::ReplaceVpcDhcpOptionsSetOutcomeCallable VpcClient::replaceVpcDhcpOptionsSetCallable(const ReplaceVpcDhcpOptionsSetRequest &request) const
  9288. {
  9289. auto task = std::make_shared<std::packaged_task<ReplaceVpcDhcpOptionsSetOutcome()>>(
  9290. [this, request]()
  9291. {
  9292. return this->replaceVpcDhcpOptionsSet(request);
  9293. });
  9294. asyncExecute(new Runnable([task]() { (*task)(); }));
  9295. return task->get_future();
  9296. }
  9297. VpcClient::RetryVpcPrefixListAssociationOutcome VpcClient::retryVpcPrefixListAssociation(const RetryVpcPrefixListAssociationRequest &request) const
  9298. {
  9299. auto endpointOutcome = endpointProvider_->getEndpoint();
  9300. if (!endpointOutcome.isSuccess())
  9301. return RetryVpcPrefixListAssociationOutcome(endpointOutcome.error());
  9302. auto outcome = makeRequest(endpointOutcome.result(), request);
  9303. if (outcome.isSuccess())
  9304. return RetryVpcPrefixListAssociationOutcome(RetryVpcPrefixListAssociationResult(outcome.result()));
  9305. else
  9306. return RetryVpcPrefixListAssociationOutcome(outcome.error());
  9307. }
  9308. void VpcClient::retryVpcPrefixListAssociationAsync(const RetryVpcPrefixListAssociationRequest& request, const RetryVpcPrefixListAssociationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9309. {
  9310. auto fn = [this, request, handler, context]()
  9311. {
  9312. handler(this, request, retryVpcPrefixListAssociation(request), context);
  9313. };
  9314. asyncExecute(new Runnable(fn));
  9315. }
  9316. VpcClient::RetryVpcPrefixListAssociationOutcomeCallable VpcClient::retryVpcPrefixListAssociationCallable(const RetryVpcPrefixListAssociationRequest &request) const
  9317. {
  9318. auto task = std::make_shared<std::packaged_task<RetryVpcPrefixListAssociationOutcome()>>(
  9319. [this, request]()
  9320. {
  9321. return this->retryVpcPrefixListAssociation(request);
  9322. });
  9323. asyncExecute(new Runnable([task]() { (*task)(); }));
  9324. return task->get_future();
  9325. }
  9326. VpcClient::RevokeInstanceFromCenOutcome VpcClient::revokeInstanceFromCen(const RevokeInstanceFromCenRequest &request) const
  9327. {
  9328. auto endpointOutcome = endpointProvider_->getEndpoint();
  9329. if (!endpointOutcome.isSuccess())
  9330. return RevokeInstanceFromCenOutcome(endpointOutcome.error());
  9331. auto outcome = makeRequest(endpointOutcome.result(), request);
  9332. if (outcome.isSuccess())
  9333. return RevokeInstanceFromCenOutcome(RevokeInstanceFromCenResult(outcome.result()));
  9334. else
  9335. return RevokeInstanceFromCenOutcome(outcome.error());
  9336. }
  9337. void VpcClient::revokeInstanceFromCenAsync(const RevokeInstanceFromCenRequest& request, const RevokeInstanceFromCenAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9338. {
  9339. auto fn = [this, request, handler, context]()
  9340. {
  9341. handler(this, request, revokeInstanceFromCen(request), context);
  9342. };
  9343. asyncExecute(new Runnable(fn));
  9344. }
  9345. VpcClient::RevokeInstanceFromCenOutcomeCallable VpcClient::revokeInstanceFromCenCallable(const RevokeInstanceFromCenRequest &request) const
  9346. {
  9347. auto task = std::make_shared<std::packaged_task<RevokeInstanceFromCenOutcome()>>(
  9348. [this, request]()
  9349. {
  9350. return this->revokeInstanceFromCen(request);
  9351. });
  9352. asyncExecute(new Runnable([task]() { (*task)(); }));
  9353. return task->get_future();
  9354. }
  9355. VpcClient::RevokeInstanceFromVbrOutcome VpcClient::revokeInstanceFromVbr(const RevokeInstanceFromVbrRequest &request) const
  9356. {
  9357. auto endpointOutcome = endpointProvider_->getEndpoint();
  9358. if (!endpointOutcome.isSuccess())
  9359. return RevokeInstanceFromVbrOutcome(endpointOutcome.error());
  9360. auto outcome = makeRequest(endpointOutcome.result(), request);
  9361. if (outcome.isSuccess())
  9362. return RevokeInstanceFromVbrOutcome(RevokeInstanceFromVbrResult(outcome.result()));
  9363. else
  9364. return RevokeInstanceFromVbrOutcome(outcome.error());
  9365. }
  9366. void VpcClient::revokeInstanceFromVbrAsync(const RevokeInstanceFromVbrRequest& request, const RevokeInstanceFromVbrAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9367. {
  9368. auto fn = [this, request, handler, context]()
  9369. {
  9370. handler(this, request, revokeInstanceFromVbr(request), context);
  9371. };
  9372. asyncExecute(new Runnable(fn));
  9373. }
  9374. VpcClient::RevokeInstanceFromVbrOutcomeCallable VpcClient::revokeInstanceFromVbrCallable(const RevokeInstanceFromVbrRequest &request) const
  9375. {
  9376. auto task = std::make_shared<std::packaged_task<RevokeInstanceFromVbrOutcome()>>(
  9377. [this, request]()
  9378. {
  9379. return this->revokeInstanceFromVbr(request);
  9380. });
  9381. asyncExecute(new Runnable([task]() { (*task)(); }));
  9382. return task->get_future();
  9383. }
  9384. VpcClient::SetHighDefinitionMonitorLogStatusOutcome VpcClient::setHighDefinitionMonitorLogStatus(const SetHighDefinitionMonitorLogStatusRequest &request) const
  9385. {
  9386. auto endpointOutcome = endpointProvider_->getEndpoint();
  9387. if (!endpointOutcome.isSuccess())
  9388. return SetHighDefinitionMonitorLogStatusOutcome(endpointOutcome.error());
  9389. auto outcome = makeRequest(endpointOutcome.result(), request);
  9390. if (outcome.isSuccess())
  9391. return SetHighDefinitionMonitorLogStatusOutcome(SetHighDefinitionMonitorLogStatusResult(outcome.result()));
  9392. else
  9393. return SetHighDefinitionMonitorLogStatusOutcome(outcome.error());
  9394. }
  9395. void VpcClient::setHighDefinitionMonitorLogStatusAsync(const SetHighDefinitionMonitorLogStatusRequest& request, const SetHighDefinitionMonitorLogStatusAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9396. {
  9397. auto fn = [this, request, handler, context]()
  9398. {
  9399. handler(this, request, setHighDefinitionMonitorLogStatus(request), context);
  9400. };
  9401. asyncExecute(new Runnable(fn));
  9402. }
  9403. VpcClient::SetHighDefinitionMonitorLogStatusOutcomeCallable VpcClient::setHighDefinitionMonitorLogStatusCallable(const SetHighDefinitionMonitorLogStatusRequest &request) const
  9404. {
  9405. auto task = std::make_shared<std::packaged_task<SetHighDefinitionMonitorLogStatusOutcome()>>(
  9406. [this, request]()
  9407. {
  9408. return this->setHighDefinitionMonitorLogStatus(request);
  9409. });
  9410. asyncExecute(new Runnable([task]() { (*task)(); }));
  9411. return task->get_future();
  9412. }
  9413. VpcClient::TagResourcesOutcome VpcClient::tagResources(const TagResourcesRequest &request) const
  9414. {
  9415. auto endpointOutcome = endpointProvider_->getEndpoint();
  9416. if (!endpointOutcome.isSuccess())
  9417. return TagResourcesOutcome(endpointOutcome.error());
  9418. auto outcome = makeRequest(endpointOutcome.result(), request);
  9419. if (outcome.isSuccess())
  9420. return TagResourcesOutcome(TagResourcesResult(outcome.result()));
  9421. else
  9422. return TagResourcesOutcome(outcome.error());
  9423. }
  9424. void VpcClient::tagResourcesAsync(const TagResourcesRequest& request, const TagResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9425. {
  9426. auto fn = [this, request, handler, context]()
  9427. {
  9428. handler(this, request, tagResources(request), context);
  9429. };
  9430. asyncExecute(new Runnable(fn));
  9431. }
  9432. VpcClient::TagResourcesOutcomeCallable VpcClient::tagResourcesCallable(const TagResourcesRequest &request) const
  9433. {
  9434. auto task = std::make_shared<std::packaged_task<TagResourcesOutcome()>>(
  9435. [this, request]()
  9436. {
  9437. return this->tagResources(request);
  9438. });
  9439. asyncExecute(new Runnable([task]() { (*task)(); }));
  9440. return task->get_future();
  9441. }
  9442. VpcClient::TagResourcesForExpressConnectOutcome VpcClient::tagResourcesForExpressConnect(const TagResourcesForExpressConnectRequest &request) const
  9443. {
  9444. auto endpointOutcome = endpointProvider_->getEndpoint();
  9445. if (!endpointOutcome.isSuccess())
  9446. return TagResourcesForExpressConnectOutcome(endpointOutcome.error());
  9447. auto outcome = makeRequest(endpointOutcome.result(), request);
  9448. if (outcome.isSuccess())
  9449. return TagResourcesForExpressConnectOutcome(TagResourcesForExpressConnectResult(outcome.result()));
  9450. else
  9451. return TagResourcesForExpressConnectOutcome(outcome.error());
  9452. }
  9453. void VpcClient::tagResourcesForExpressConnectAsync(const TagResourcesForExpressConnectRequest& request, const TagResourcesForExpressConnectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9454. {
  9455. auto fn = [this, request, handler, context]()
  9456. {
  9457. handler(this, request, tagResourcesForExpressConnect(request), context);
  9458. };
  9459. asyncExecute(new Runnable(fn));
  9460. }
  9461. VpcClient::TagResourcesForExpressConnectOutcomeCallable VpcClient::tagResourcesForExpressConnectCallable(const TagResourcesForExpressConnectRequest &request) const
  9462. {
  9463. auto task = std::make_shared<std::packaged_task<TagResourcesForExpressConnectOutcome()>>(
  9464. [this, request]()
  9465. {
  9466. return this->tagResourcesForExpressConnect(request);
  9467. });
  9468. asyncExecute(new Runnable([task]() { (*task)(); }));
  9469. return task->get_future();
  9470. }
  9471. VpcClient::TerminatePhysicalConnectionOutcome VpcClient::terminatePhysicalConnection(const TerminatePhysicalConnectionRequest &request) const
  9472. {
  9473. auto endpointOutcome = endpointProvider_->getEndpoint();
  9474. if (!endpointOutcome.isSuccess())
  9475. return TerminatePhysicalConnectionOutcome(endpointOutcome.error());
  9476. auto outcome = makeRequest(endpointOutcome.result(), request);
  9477. if (outcome.isSuccess())
  9478. return TerminatePhysicalConnectionOutcome(TerminatePhysicalConnectionResult(outcome.result()));
  9479. else
  9480. return TerminatePhysicalConnectionOutcome(outcome.error());
  9481. }
  9482. void VpcClient::terminatePhysicalConnectionAsync(const TerminatePhysicalConnectionRequest& request, const TerminatePhysicalConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9483. {
  9484. auto fn = [this, request, handler, context]()
  9485. {
  9486. handler(this, request, terminatePhysicalConnection(request), context);
  9487. };
  9488. asyncExecute(new Runnable(fn));
  9489. }
  9490. VpcClient::TerminatePhysicalConnectionOutcomeCallable VpcClient::terminatePhysicalConnectionCallable(const TerminatePhysicalConnectionRequest &request) const
  9491. {
  9492. auto task = std::make_shared<std::packaged_task<TerminatePhysicalConnectionOutcome()>>(
  9493. [this, request]()
  9494. {
  9495. return this->terminatePhysicalConnection(request);
  9496. });
  9497. asyncExecute(new Runnable([task]() { (*task)(); }));
  9498. return task->get_future();
  9499. }
  9500. VpcClient::TerminateVirtualBorderRouterOutcome VpcClient::terminateVirtualBorderRouter(const TerminateVirtualBorderRouterRequest &request) const
  9501. {
  9502. auto endpointOutcome = endpointProvider_->getEndpoint();
  9503. if (!endpointOutcome.isSuccess())
  9504. return TerminateVirtualBorderRouterOutcome(endpointOutcome.error());
  9505. auto outcome = makeRequest(endpointOutcome.result(), request);
  9506. if (outcome.isSuccess())
  9507. return TerminateVirtualBorderRouterOutcome(TerminateVirtualBorderRouterResult(outcome.result()));
  9508. else
  9509. return TerminateVirtualBorderRouterOutcome(outcome.error());
  9510. }
  9511. void VpcClient::terminateVirtualBorderRouterAsync(const TerminateVirtualBorderRouterRequest& request, const TerminateVirtualBorderRouterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9512. {
  9513. auto fn = [this, request, handler, context]()
  9514. {
  9515. handler(this, request, terminateVirtualBorderRouter(request), context);
  9516. };
  9517. asyncExecute(new Runnable(fn));
  9518. }
  9519. VpcClient::TerminateVirtualBorderRouterOutcomeCallable VpcClient::terminateVirtualBorderRouterCallable(const TerminateVirtualBorderRouterRequest &request) const
  9520. {
  9521. auto task = std::make_shared<std::packaged_task<TerminateVirtualBorderRouterOutcome()>>(
  9522. [this, request]()
  9523. {
  9524. return this->terminateVirtualBorderRouter(request);
  9525. });
  9526. asyncExecute(new Runnable([task]() { (*task)(); }));
  9527. return task->get_future();
  9528. }
  9529. VpcClient::UnTagResourcesOutcome VpcClient::unTagResources(const UnTagResourcesRequest &request) const
  9530. {
  9531. auto endpointOutcome = endpointProvider_->getEndpoint();
  9532. if (!endpointOutcome.isSuccess())
  9533. return UnTagResourcesOutcome(endpointOutcome.error());
  9534. auto outcome = makeRequest(endpointOutcome.result(), request);
  9535. if (outcome.isSuccess())
  9536. return UnTagResourcesOutcome(UnTagResourcesResult(outcome.result()));
  9537. else
  9538. return UnTagResourcesOutcome(outcome.error());
  9539. }
  9540. void VpcClient::unTagResourcesAsync(const UnTagResourcesRequest& request, const UnTagResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9541. {
  9542. auto fn = [this, request, handler, context]()
  9543. {
  9544. handler(this, request, unTagResources(request), context);
  9545. };
  9546. asyncExecute(new Runnable(fn));
  9547. }
  9548. VpcClient::UnTagResourcesOutcomeCallable VpcClient::unTagResourcesCallable(const UnTagResourcesRequest &request) const
  9549. {
  9550. auto task = std::make_shared<std::packaged_task<UnTagResourcesOutcome()>>(
  9551. [this, request]()
  9552. {
  9553. return this->unTagResources(request);
  9554. });
  9555. asyncExecute(new Runnable([task]() { (*task)(); }));
  9556. return task->get_future();
  9557. }
  9558. VpcClient::UnassociateEipAddressOutcome VpcClient::unassociateEipAddress(const UnassociateEipAddressRequest &request) const
  9559. {
  9560. auto endpointOutcome = endpointProvider_->getEndpoint();
  9561. if (!endpointOutcome.isSuccess())
  9562. return UnassociateEipAddressOutcome(endpointOutcome.error());
  9563. auto outcome = makeRequest(endpointOutcome.result(), request);
  9564. if (outcome.isSuccess())
  9565. return UnassociateEipAddressOutcome(UnassociateEipAddressResult(outcome.result()));
  9566. else
  9567. return UnassociateEipAddressOutcome(outcome.error());
  9568. }
  9569. void VpcClient::unassociateEipAddressAsync(const UnassociateEipAddressRequest& request, const UnassociateEipAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9570. {
  9571. auto fn = [this, request, handler, context]()
  9572. {
  9573. handler(this, request, unassociateEipAddress(request), context);
  9574. };
  9575. asyncExecute(new Runnable(fn));
  9576. }
  9577. VpcClient::UnassociateEipAddressOutcomeCallable VpcClient::unassociateEipAddressCallable(const UnassociateEipAddressRequest &request) const
  9578. {
  9579. auto task = std::make_shared<std::packaged_task<UnassociateEipAddressOutcome()>>(
  9580. [this, request]()
  9581. {
  9582. return this->unassociateEipAddress(request);
  9583. });
  9584. asyncExecute(new Runnable([task]() { (*task)(); }));
  9585. return task->get_future();
  9586. }
  9587. VpcClient::UnassociateGlobalAccelerationInstanceOutcome VpcClient::unassociateGlobalAccelerationInstance(const UnassociateGlobalAccelerationInstanceRequest &request) const
  9588. {
  9589. auto endpointOutcome = endpointProvider_->getEndpoint();
  9590. if (!endpointOutcome.isSuccess())
  9591. return UnassociateGlobalAccelerationInstanceOutcome(endpointOutcome.error());
  9592. auto outcome = makeRequest(endpointOutcome.result(), request);
  9593. if (outcome.isSuccess())
  9594. return UnassociateGlobalAccelerationInstanceOutcome(UnassociateGlobalAccelerationInstanceResult(outcome.result()));
  9595. else
  9596. return UnassociateGlobalAccelerationInstanceOutcome(outcome.error());
  9597. }
  9598. void VpcClient::unassociateGlobalAccelerationInstanceAsync(const UnassociateGlobalAccelerationInstanceRequest& request, const UnassociateGlobalAccelerationInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9599. {
  9600. auto fn = [this, request, handler, context]()
  9601. {
  9602. handler(this, request, unassociateGlobalAccelerationInstance(request), context);
  9603. };
  9604. asyncExecute(new Runnable(fn));
  9605. }
  9606. VpcClient::UnassociateGlobalAccelerationInstanceOutcomeCallable VpcClient::unassociateGlobalAccelerationInstanceCallable(const UnassociateGlobalAccelerationInstanceRequest &request) const
  9607. {
  9608. auto task = std::make_shared<std::packaged_task<UnassociateGlobalAccelerationInstanceOutcome()>>(
  9609. [this, request]()
  9610. {
  9611. return this->unassociateGlobalAccelerationInstance(request);
  9612. });
  9613. asyncExecute(new Runnable([task]() { (*task)(); }));
  9614. return task->get_future();
  9615. }
  9616. VpcClient::UnassociateHaVipOutcome VpcClient::unassociateHaVip(const UnassociateHaVipRequest &request) const
  9617. {
  9618. auto endpointOutcome = endpointProvider_->getEndpoint();
  9619. if (!endpointOutcome.isSuccess())
  9620. return UnassociateHaVipOutcome(endpointOutcome.error());
  9621. auto outcome = makeRequest(endpointOutcome.result(), request);
  9622. if (outcome.isSuccess())
  9623. return UnassociateHaVipOutcome(UnassociateHaVipResult(outcome.result()));
  9624. else
  9625. return UnassociateHaVipOutcome(outcome.error());
  9626. }
  9627. void VpcClient::unassociateHaVipAsync(const UnassociateHaVipRequest& request, const UnassociateHaVipAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9628. {
  9629. auto fn = [this, request, handler, context]()
  9630. {
  9631. handler(this, request, unassociateHaVip(request), context);
  9632. };
  9633. asyncExecute(new Runnable(fn));
  9634. }
  9635. VpcClient::UnassociateHaVipOutcomeCallable VpcClient::unassociateHaVipCallable(const UnassociateHaVipRequest &request) const
  9636. {
  9637. auto task = std::make_shared<std::packaged_task<UnassociateHaVipOutcome()>>(
  9638. [this, request]()
  9639. {
  9640. return this->unassociateHaVip(request);
  9641. });
  9642. asyncExecute(new Runnable([task]() { (*task)(); }));
  9643. return task->get_future();
  9644. }
  9645. VpcClient::UnassociateNetworkAclOutcome VpcClient::unassociateNetworkAcl(const UnassociateNetworkAclRequest &request) const
  9646. {
  9647. auto endpointOutcome = endpointProvider_->getEndpoint();
  9648. if (!endpointOutcome.isSuccess())
  9649. return UnassociateNetworkAclOutcome(endpointOutcome.error());
  9650. auto outcome = makeRequest(endpointOutcome.result(), request);
  9651. if (outcome.isSuccess())
  9652. return UnassociateNetworkAclOutcome(UnassociateNetworkAclResult(outcome.result()));
  9653. else
  9654. return UnassociateNetworkAclOutcome(outcome.error());
  9655. }
  9656. void VpcClient::unassociateNetworkAclAsync(const UnassociateNetworkAclRequest& request, const UnassociateNetworkAclAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9657. {
  9658. auto fn = [this, request, handler, context]()
  9659. {
  9660. handler(this, request, unassociateNetworkAcl(request), context);
  9661. };
  9662. asyncExecute(new Runnable(fn));
  9663. }
  9664. VpcClient::UnassociateNetworkAclOutcomeCallable VpcClient::unassociateNetworkAclCallable(const UnassociateNetworkAclRequest &request) const
  9665. {
  9666. auto task = std::make_shared<std::packaged_task<UnassociateNetworkAclOutcome()>>(
  9667. [this, request]()
  9668. {
  9669. return this->unassociateNetworkAcl(request);
  9670. });
  9671. asyncExecute(new Runnable([task]() { (*task)(); }));
  9672. return task->get_future();
  9673. }
  9674. VpcClient::UnassociatePhysicalConnectionFromVirtualBorderRouterOutcome VpcClient::unassociatePhysicalConnectionFromVirtualBorderRouter(const UnassociatePhysicalConnectionFromVirtualBorderRouterRequest &request) const
  9675. {
  9676. auto endpointOutcome = endpointProvider_->getEndpoint();
  9677. if (!endpointOutcome.isSuccess())
  9678. return UnassociatePhysicalConnectionFromVirtualBorderRouterOutcome(endpointOutcome.error());
  9679. auto outcome = makeRequest(endpointOutcome.result(), request);
  9680. if (outcome.isSuccess())
  9681. return UnassociatePhysicalConnectionFromVirtualBorderRouterOutcome(UnassociatePhysicalConnectionFromVirtualBorderRouterResult(outcome.result()));
  9682. else
  9683. return UnassociatePhysicalConnectionFromVirtualBorderRouterOutcome(outcome.error());
  9684. }
  9685. void VpcClient::unassociatePhysicalConnectionFromVirtualBorderRouterAsync(const UnassociatePhysicalConnectionFromVirtualBorderRouterRequest& request, const UnassociatePhysicalConnectionFromVirtualBorderRouterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9686. {
  9687. auto fn = [this, request, handler, context]()
  9688. {
  9689. handler(this, request, unassociatePhysicalConnectionFromVirtualBorderRouter(request), context);
  9690. };
  9691. asyncExecute(new Runnable(fn));
  9692. }
  9693. VpcClient::UnassociatePhysicalConnectionFromVirtualBorderRouterOutcomeCallable VpcClient::unassociatePhysicalConnectionFromVirtualBorderRouterCallable(const UnassociatePhysicalConnectionFromVirtualBorderRouterRequest &request) const
  9694. {
  9695. auto task = std::make_shared<std::packaged_task<UnassociatePhysicalConnectionFromVirtualBorderRouterOutcome()>>(
  9696. [this, request]()
  9697. {
  9698. return this->unassociatePhysicalConnectionFromVirtualBorderRouter(request);
  9699. });
  9700. asyncExecute(new Runnable([task]() { (*task)(); }));
  9701. return task->get_future();
  9702. }
  9703. VpcClient::UnassociateRouteTableOutcome VpcClient::unassociateRouteTable(const UnassociateRouteTableRequest &request) const
  9704. {
  9705. auto endpointOutcome = endpointProvider_->getEndpoint();
  9706. if (!endpointOutcome.isSuccess())
  9707. return UnassociateRouteTableOutcome(endpointOutcome.error());
  9708. auto outcome = makeRequest(endpointOutcome.result(), request);
  9709. if (outcome.isSuccess())
  9710. return UnassociateRouteTableOutcome(UnassociateRouteTableResult(outcome.result()));
  9711. else
  9712. return UnassociateRouteTableOutcome(outcome.error());
  9713. }
  9714. void VpcClient::unassociateRouteTableAsync(const UnassociateRouteTableRequest& request, const UnassociateRouteTableAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9715. {
  9716. auto fn = [this, request, handler, context]()
  9717. {
  9718. handler(this, request, unassociateRouteTable(request), context);
  9719. };
  9720. asyncExecute(new Runnable(fn));
  9721. }
  9722. VpcClient::UnassociateRouteTableOutcomeCallable VpcClient::unassociateRouteTableCallable(const UnassociateRouteTableRequest &request) const
  9723. {
  9724. auto task = std::make_shared<std::packaged_task<UnassociateRouteTableOutcome()>>(
  9725. [this, request]()
  9726. {
  9727. return this->unassociateRouteTable(request);
  9728. });
  9729. asyncExecute(new Runnable([task]() { (*task)(); }));
  9730. return task->get_future();
  9731. }
  9732. VpcClient::UnassociateVpcCidrBlockOutcome VpcClient::unassociateVpcCidrBlock(const UnassociateVpcCidrBlockRequest &request) const
  9733. {
  9734. auto endpointOutcome = endpointProvider_->getEndpoint();
  9735. if (!endpointOutcome.isSuccess())
  9736. return UnassociateVpcCidrBlockOutcome(endpointOutcome.error());
  9737. auto outcome = makeRequest(endpointOutcome.result(), request);
  9738. if (outcome.isSuccess())
  9739. return UnassociateVpcCidrBlockOutcome(UnassociateVpcCidrBlockResult(outcome.result()));
  9740. else
  9741. return UnassociateVpcCidrBlockOutcome(outcome.error());
  9742. }
  9743. void VpcClient::unassociateVpcCidrBlockAsync(const UnassociateVpcCidrBlockRequest& request, const UnassociateVpcCidrBlockAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9744. {
  9745. auto fn = [this, request, handler, context]()
  9746. {
  9747. handler(this, request, unassociateVpcCidrBlock(request), context);
  9748. };
  9749. asyncExecute(new Runnable(fn));
  9750. }
  9751. VpcClient::UnassociateVpcCidrBlockOutcomeCallable VpcClient::unassociateVpcCidrBlockCallable(const UnassociateVpcCidrBlockRequest &request) const
  9752. {
  9753. auto task = std::make_shared<std::packaged_task<UnassociateVpcCidrBlockOutcome()>>(
  9754. [this, request]()
  9755. {
  9756. return this->unassociateVpcCidrBlock(request);
  9757. });
  9758. asyncExecute(new Runnable([task]() { (*task)(); }));
  9759. return task->get_future();
  9760. }
  9761. VpcClient::UntagResourcesForExpressConnectOutcome VpcClient::untagResourcesForExpressConnect(const UntagResourcesForExpressConnectRequest &request) const
  9762. {
  9763. auto endpointOutcome = endpointProvider_->getEndpoint();
  9764. if (!endpointOutcome.isSuccess())
  9765. return UntagResourcesForExpressConnectOutcome(endpointOutcome.error());
  9766. auto outcome = makeRequest(endpointOutcome.result(), request);
  9767. if (outcome.isSuccess())
  9768. return UntagResourcesForExpressConnectOutcome(UntagResourcesForExpressConnectResult(outcome.result()));
  9769. else
  9770. return UntagResourcesForExpressConnectOutcome(outcome.error());
  9771. }
  9772. void VpcClient::untagResourcesForExpressConnectAsync(const UntagResourcesForExpressConnectRequest& request, const UntagResourcesForExpressConnectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9773. {
  9774. auto fn = [this, request, handler, context]()
  9775. {
  9776. handler(this, request, untagResourcesForExpressConnect(request), context);
  9777. };
  9778. asyncExecute(new Runnable(fn));
  9779. }
  9780. VpcClient::UntagResourcesForExpressConnectOutcomeCallable VpcClient::untagResourcesForExpressConnectCallable(const UntagResourcesForExpressConnectRequest &request) const
  9781. {
  9782. auto task = std::make_shared<std::packaged_task<UntagResourcesForExpressConnectOutcome()>>(
  9783. [this, request]()
  9784. {
  9785. return this->untagResourcesForExpressConnect(request);
  9786. });
  9787. asyncExecute(new Runnable([task]() { (*task)(); }));
  9788. return task->get_future();
  9789. }
  9790. VpcClient::UpdateDhcpOptionsSetAttributeOutcome VpcClient::updateDhcpOptionsSetAttribute(const UpdateDhcpOptionsSetAttributeRequest &request) const
  9791. {
  9792. auto endpointOutcome = endpointProvider_->getEndpoint();
  9793. if (!endpointOutcome.isSuccess())
  9794. return UpdateDhcpOptionsSetAttributeOutcome(endpointOutcome.error());
  9795. auto outcome = makeRequest(endpointOutcome.result(), request);
  9796. if (outcome.isSuccess())
  9797. return UpdateDhcpOptionsSetAttributeOutcome(UpdateDhcpOptionsSetAttributeResult(outcome.result()));
  9798. else
  9799. return UpdateDhcpOptionsSetAttributeOutcome(outcome.error());
  9800. }
  9801. void VpcClient::updateDhcpOptionsSetAttributeAsync(const UpdateDhcpOptionsSetAttributeRequest& request, const UpdateDhcpOptionsSetAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9802. {
  9803. auto fn = [this, request, handler, context]()
  9804. {
  9805. handler(this, request, updateDhcpOptionsSetAttribute(request), context);
  9806. };
  9807. asyncExecute(new Runnable(fn));
  9808. }
  9809. VpcClient::UpdateDhcpOptionsSetAttributeOutcomeCallable VpcClient::updateDhcpOptionsSetAttributeCallable(const UpdateDhcpOptionsSetAttributeRequest &request) const
  9810. {
  9811. auto task = std::make_shared<std::packaged_task<UpdateDhcpOptionsSetAttributeOutcome()>>(
  9812. [this, request]()
  9813. {
  9814. return this->updateDhcpOptionsSetAttribute(request);
  9815. });
  9816. asyncExecute(new Runnable([task]() { (*task)(); }));
  9817. return task->get_future();
  9818. }
  9819. VpcClient::UpdateGatewayRouteTableEntryAttributeOutcome VpcClient::updateGatewayRouteTableEntryAttribute(const UpdateGatewayRouteTableEntryAttributeRequest &request) const
  9820. {
  9821. auto endpointOutcome = endpointProvider_->getEndpoint();
  9822. if (!endpointOutcome.isSuccess())
  9823. return UpdateGatewayRouteTableEntryAttributeOutcome(endpointOutcome.error());
  9824. auto outcome = makeRequest(endpointOutcome.result(), request);
  9825. if (outcome.isSuccess())
  9826. return UpdateGatewayRouteTableEntryAttributeOutcome(UpdateGatewayRouteTableEntryAttributeResult(outcome.result()));
  9827. else
  9828. return UpdateGatewayRouteTableEntryAttributeOutcome(outcome.error());
  9829. }
  9830. void VpcClient::updateGatewayRouteTableEntryAttributeAsync(const UpdateGatewayRouteTableEntryAttributeRequest& request, const UpdateGatewayRouteTableEntryAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9831. {
  9832. auto fn = [this, request, handler, context]()
  9833. {
  9834. handler(this, request, updateGatewayRouteTableEntryAttribute(request), context);
  9835. };
  9836. asyncExecute(new Runnable(fn));
  9837. }
  9838. VpcClient::UpdateGatewayRouteTableEntryAttributeOutcomeCallable VpcClient::updateGatewayRouteTableEntryAttributeCallable(const UpdateGatewayRouteTableEntryAttributeRequest &request) const
  9839. {
  9840. auto task = std::make_shared<std::packaged_task<UpdateGatewayRouteTableEntryAttributeOutcome()>>(
  9841. [this, request]()
  9842. {
  9843. return this->updateGatewayRouteTableEntryAttribute(request);
  9844. });
  9845. asyncExecute(new Runnable([task]() { (*task)(); }));
  9846. return task->get_future();
  9847. }
  9848. VpcClient::UpdateIpsecServerOutcome VpcClient::updateIpsecServer(const UpdateIpsecServerRequest &request) const
  9849. {
  9850. auto endpointOutcome = endpointProvider_->getEndpoint();
  9851. if (!endpointOutcome.isSuccess())
  9852. return UpdateIpsecServerOutcome(endpointOutcome.error());
  9853. auto outcome = makeRequest(endpointOutcome.result(), request);
  9854. if (outcome.isSuccess())
  9855. return UpdateIpsecServerOutcome(UpdateIpsecServerResult(outcome.result()));
  9856. else
  9857. return UpdateIpsecServerOutcome(outcome.error());
  9858. }
  9859. void VpcClient::updateIpsecServerAsync(const UpdateIpsecServerRequest& request, const UpdateIpsecServerAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9860. {
  9861. auto fn = [this, request, handler, context]()
  9862. {
  9863. handler(this, request, updateIpsecServer(request), context);
  9864. };
  9865. asyncExecute(new Runnable(fn));
  9866. }
  9867. VpcClient::UpdateIpsecServerOutcomeCallable VpcClient::updateIpsecServerCallable(const UpdateIpsecServerRequest &request) const
  9868. {
  9869. auto task = std::make_shared<std::packaged_task<UpdateIpsecServerOutcome()>>(
  9870. [this, request]()
  9871. {
  9872. return this->updateIpsecServer(request);
  9873. });
  9874. asyncExecute(new Runnable([task]() { (*task)(); }));
  9875. return task->get_future();
  9876. }
  9877. VpcClient::UpdateIpv4GatewayAttributeOutcome VpcClient::updateIpv4GatewayAttribute(const UpdateIpv4GatewayAttributeRequest &request) const
  9878. {
  9879. auto endpointOutcome = endpointProvider_->getEndpoint();
  9880. if (!endpointOutcome.isSuccess())
  9881. return UpdateIpv4GatewayAttributeOutcome(endpointOutcome.error());
  9882. auto outcome = makeRequest(endpointOutcome.result(), request);
  9883. if (outcome.isSuccess())
  9884. return UpdateIpv4GatewayAttributeOutcome(UpdateIpv4GatewayAttributeResult(outcome.result()));
  9885. else
  9886. return UpdateIpv4GatewayAttributeOutcome(outcome.error());
  9887. }
  9888. void VpcClient::updateIpv4GatewayAttributeAsync(const UpdateIpv4GatewayAttributeRequest& request, const UpdateIpv4GatewayAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9889. {
  9890. auto fn = [this, request, handler, context]()
  9891. {
  9892. handler(this, request, updateIpv4GatewayAttribute(request), context);
  9893. };
  9894. asyncExecute(new Runnable(fn));
  9895. }
  9896. VpcClient::UpdateIpv4GatewayAttributeOutcomeCallable VpcClient::updateIpv4GatewayAttributeCallable(const UpdateIpv4GatewayAttributeRequest &request) const
  9897. {
  9898. auto task = std::make_shared<std::packaged_task<UpdateIpv4GatewayAttributeOutcome()>>(
  9899. [this, request]()
  9900. {
  9901. return this->updateIpv4GatewayAttribute(request);
  9902. });
  9903. asyncExecute(new Runnable([task]() { (*task)(); }));
  9904. return task->get_future();
  9905. }
  9906. VpcClient::UpdateNatGatewayNatTypeOutcome VpcClient::updateNatGatewayNatType(const UpdateNatGatewayNatTypeRequest &request) const
  9907. {
  9908. auto endpointOutcome = endpointProvider_->getEndpoint();
  9909. if (!endpointOutcome.isSuccess())
  9910. return UpdateNatGatewayNatTypeOutcome(endpointOutcome.error());
  9911. auto outcome = makeRequest(endpointOutcome.result(), request);
  9912. if (outcome.isSuccess())
  9913. return UpdateNatGatewayNatTypeOutcome(UpdateNatGatewayNatTypeResult(outcome.result()));
  9914. else
  9915. return UpdateNatGatewayNatTypeOutcome(outcome.error());
  9916. }
  9917. void VpcClient::updateNatGatewayNatTypeAsync(const UpdateNatGatewayNatTypeRequest& request, const UpdateNatGatewayNatTypeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9918. {
  9919. auto fn = [this, request, handler, context]()
  9920. {
  9921. handler(this, request, updateNatGatewayNatType(request), context);
  9922. };
  9923. asyncExecute(new Runnable(fn));
  9924. }
  9925. VpcClient::UpdateNatGatewayNatTypeOutcomeCallable VpcClient::updateNatGatewayNatTypeCallable(const UpdateNatGatewayNatTypeRequest &request) const
  9926. {
  9927. auto task = std::make_shared<std::packaged_task<UpdateNatGatewayNatTypeOutcome()>>(
  9928. [this, request]()
  9929. {
  9930. return this->updateNatGatewayNatType(request);
  9931. });
  9932. asyncExecute(new Runnable([task]() { (*task)(); }));
  9933. return task->get_future();
  9934. }
  9935. VpcClient::UpdateNetworkAclEntriesOutcome VpcClient::updateNetworkAclEntries(const UpdateNetworkAclEntriesRequest &request) const
  9936. {
  9937. auto endpointOutcome = endpointProvider_->getEndpoint();
  9938. if (!endpointOutcome.isSuccess())
  9939. return UpdateNetworkAclEntriesOutcome(endpointOutcome.error());
  9940. auto outcome = makeRequest(endpointOutcome.result(), request);
  9941. if (outcome.isSuccess())
  9942. return UpdateNetworkAclEntriesOutcome(UpdateNetworkAclEntriesResult(outcome.result()));
  9943. else
  9944. return UpdateNetworkAclEntriesOutcome(outcome.error());
  9945. }
  9946. void VpcClient::updateNetworkAclEntriesAsync(const UpdateNetworkAclEntriesRequest& request, const UpdateNetworkAclEntriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9947. {
  9948. auto fn = [this, request, handler, context]()
  9949. {
  9950. handler(this, request, updateNetworkAclEntries(request), context);
  9951. };
  9952. asyncExecute(new Runnable(fn));
  9953. }
  9954. VpcClient::UpdateNetworkAclEntriesOutcomeCallable VpcClient::updateNetworkAclEntriesCallable(const UpdateNetworkAclEntriesRequest &request) const
  9955. {
  9956. auto task = std::make_shared<std::packaged_task<UpdateNetworkAclEntriesOutcome()>>(
  9957. [this, request]()
  9958. {
  9959. return this->updateNetworkAclEntries(request);
  9960. });
  9961. asyncExecute(new Runnable([task]() { (*task)(); }));
  9962. return task->get_future();
  9963. }
  9964. VpcClient::UpdatePublicIpAddressPoolAttributeOutcome VpcClient::updatePublicIpAddressPoolAttribute(const UpdatePublicIpAddressPoolAttributeRequest &request) const
  9965. {
  9966. auto endpointOutcome = endpointProvider_->getEndpoint();
  9967. if (!endpointOutcome.isSuccess())
  9968. return UpdatePublicIpAddressPoolAttributeOutcome(endpointOutcome.error());
  9969. auto outcome = makeRequest(endpointOutcome.result(), request);
  9970. if (outcome.isSuccess())
  9971. return UpdatePublicIpAddressPoolAttributeOutcome(UpdatePublicIpAddressPoolAttributeResult(outcome.result()));
  9972. else
  9973. return UpdatePublicIpAddressPoolAttributeOutcome(outcome.error());
  9974. }
  9975. void VpcClient::updatePublicIpAddressPoolAttributeAsync(const UpdatePublicIpAddressPoolAttributeRequest& request, const UpdatePublicIpAddressPoolAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  9976. {
  9977. auto fn = [this, request, handler, context]()
  9978. {
  9979. handler(this, request, updatePublicIpAddressPoolAttribute(request), context);
  9980. };
  9981. asyncExecute(new Runnable(fn));
  9982. }
  9983. VpcClient::UpdatePublicIpAddressPoolAttributeOutcomeCallable VpcClient::updatePublicIpAddressPoolAttributeCallable(const UpdatePublicIpAddressPoolAttributeRequest &request) const
  9984. {
  9985. auto task = std::make_shared<std::packaged_task<UpdatePublicIpAddressPoolAttributeOutcome()>>(
  9986. [this, request]()
  9987. {
  9988. return this->updatePublicIpAddressPoolAttribute(request);
  9989. });
  9990. asyncExecute(new Runnable([task]() { (*task)(); }));
  9991. return task->get_future();
  9992. }
  9993. VpcClient::UpdateTrafficMirrorFilterAttributeOutcome VpcClient::updateTrafficMirrorFilterAttribute(const UpdateTrafficMirrorFilterAttributeRequest &request) const
  9994. {
  9995. auto endpointOutcome = endpointProvider_->getEndpoint();
  9996. if (!endpointOutcome.isSuccess())
  9997. return UpdateTrafficMirrorFilterAttributeOutcome(endpointOutcome.error());
  9998. auto outcome = makeRequest(endpointOutcome.result(), request);
  9999. if (outcome.isSuccess())
  10000. return UpdateTrafficMirrorFilterAttributeOutcome(UpdateTrafficMirrorFilterAttributeResult(outcome.result()));
  10001. else
  10002. return UpdateTrafficMirrorFilterAttributeOutcome(outcome.error());
  10003. }
  10004. void VpcClient::updateTrafficMirrorFilterAttributeAsync(const UpdateTrafficMirrorFilterAttributeRequest& request, const UpdateTrafficMirrorFilterAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  10005. {
  10006. auto fn = [this, request, handler, context]()
  10007. {
  10008. handler(this, request, updateTrafficMirrorFilterAttribute(request), context);
  10009. };
  10010. asyncExecute(new Runnable(fn));
  10011. }
  10012. VpcClient::UpdateTrafficMirrorFilterAttributeOutcomeCallable VpcClient::updateTrafficMirrorFilterAttributeCallable(const UpdateTrafficMirrorFilterAttributeRequest &request) const
  10013. {
  10014. auto task = std::make_shared<std::packaged_task<UpdateTrafficMirrorFilterAttributeOutcome()>>(
  10015. [this, request]()
  10016. {
  10017. return this->updateTrafficMirrorFilterAttribute(request);
  10018. });
  10019. asyncExecute(new Runnable([task]() { (*task)(); }));
  10020. return task->get_future();
  10021. }
  10022. VpcClient::UpdateTrafficMirrorFilterRuleAttributeOutcome VpcClient::updateTrafficMirrorFilterRuleAttribute(const UpdateTrafficMirrorFilterRuleAttributeRequest &request) const
  10023. {
  10024. auto endpointOutcome = endpointProvider_->getEndpoint();
  10025. if (!endpointOutcome.isSuccess())
  10026. return UpdateTrafficMirrorFilterRuleAttributeOutcome(endpointOutcome.error());
  10027. auto outcome = makeRequest(endpointOutcome.result(), request);
  10028. if (outcome.isSuccess())
  10029. return UpdateTrafficMirrorFilterRuleAttributeOutcome(UpdateTrafficMirrorFilterRuleAttributeResult(outcome.result()));
  10030. else
  10031. return UpdateTrafficMirrorFilterRuleAttributeOutcome(outcome.error());
  10032. }
  10033. void VpcClient::updateTrafficMirrorFilterRuleAttributeAsync(const UpdateTrafficMirrorFilterRuleAttributeRequest& request, const UpdateTrafficMirrorFilterRuleAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  10034. {
  10035. auto fn = [this, request, handler, context]()
  10036. {
  10037. handler(this, request, updateTrafficMirrorFilterRuleAttribute(request), context);
  10038. };
  10039. asyncExecute(new Runnable(fn));
  10040. }
  10041. VpcClient::UpdateTrafficMirrorFilterRuleAttributeOutcomeCallable VpcClient::updateTrafficMirrorFilterRuleAttributeCallable(const UpdateTrafficMirrorFilterRuleAttributeRequest &request) const
  10042. {
  10043. auto task = std::make_shared<std::packaged_task<UpdateTrafficMirrorFilterRuleAttributeOutcome()>>(
  10044. [this, request]()
  10045. {
  10046. return this->updateTrafficMirrorFilterRuleAttribute(request);
  10047. });
  10048. asyncExecute(new Runnable([task]() { (*task)(); }));
  10049. return task->get_future();
  10050. }
  10051. VpcClient::UpdateTrafficMirrorSessionAttributeOutcome VpcClient::updateTrafficMirrorSessionAttribute(const UpdateTrafficMirrorSessionAttributeRequest &request) const
  10052. {
  10053. auto endpointOutcome = endpointProvider_->getEndpoint();
  10054. if (!endpointOutcome.isSuccess())
  10055. return UpdateTrafficMirrorSessionAttributeOutcome(endpointOutcome.error());
  10056. auto outcome = makeRequest(endpointOutcome.result(), request);
  10057. if (outcome.isSuccess())
  10058. return UpdateTrafficMirrorSessionAttributeOutcome(UpdateTrafficMirrorSessionAttributeResult(outcome.result()));
  10059. else
  10060. return UpdateTrafficMirrorSessionAttributeOutcome(outcome.error());
  10061. }
  10062. void VpcClient::updateTrafficMirrorSessionAttributeAsync(const UpdateTrafficMirrorSessionAttributeRequest& request, const UpdateTrafficMirrorSessionAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  10063. {
  10064. auto fn = [this, request, handler, context]()
  10065. {
  10066. handler(this, request, updateTrafficMirrorSessionAttribute(request), context);
  10067. };
  10068. asyncExecute(new Runnable(fn));
  10069. }
  10070. VpcClient::UpdateTrafficMirrorSessionAttributeOutcomeCallable VpcClient::updateTrafficMirrorSessionAttributeCallable(const UpdateTrafficMirrorSessionAttributeRequest &request) const
  10071. {
  10072. auto task = std::make_shared<std::packaged_task<UpdateTrafficMirrorSessionAttributeOutcome()>>(
  10073. [this, request]()
  10074. {
  10075. return this->updateTrafficMirrorSessionAttribute(request);
  10076. });
  10077. asyncExecute(new Runnable([task]() { (*task)(); }));
  10078. return task->get_future();
  10079. }
  10080. VpcClient::UpdateVirtualBorderBandwidthOutcome VpcClient::updateVirtualBorderBandwidth(const UpdateVirtualBorderBandwidthRequest &request) const
  10081. {
  10082. auto endpointOutcome = endpointProvider_->getEndpoint();
  10083. if (!endpointOutcome.isSuccess())
  10084. return UpdateVirtualBorderBandwidthOutcome(endpointOutcome.error());
  10085. auto outcome = makeRequest(endpointOutcome.result(), request);
  10086. if (outcome.isSuccess())
  10087. return UpdateVirtualBorderBandwidthOutcome(UpdateVirtualBorderBandwidthResult(outcome.result()));
  10088. else
  10089. return UpdateVirtualBorderBandwidthOutcome(outcome.error());
  10090. }
  10091. void VpcClient::updateVirtualBorderBandwidthAsync(const UpdateVirtualBorderBandwidthRequest& request, const UpdateVirtualBorderBandwidthAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  10092. {
  10093. auto fn = [this, request, handler, context]()
  10094. {
  10095. handler(this, request, updateVirtualBorderBandwidth(request), context);
  10096. };
  10097. asyncExecute(new Runnable(fn));
  10098. }
  10099. VpcClient::UpdateVirtualBorderBandwidthOutcomeCallable VpcClient::updateVirtualBorderBandwidthCallable(const UpdateVirtualBorderBandwidthRequest &request) const
  10100. {
  10101. auto task = std::make_shared<std::packaged_task<UpdateVirtualBorderBandwidthOutcome()>>(
  10102. [this, request]()
  10103. {
  10104. return this->updateVirtualBorderBandwidth(request);
  10105. });
  10106. asyncExecute(new Runnable([task]() { (*task)(); }));
  10107. return task->get_future();
  10108. }
  10109. VpcClient::UpdateVirtualPhysicalConnectionOutcome VpcClient::updateVirtualPhysicalConnection(const UpdateVirtualPhysicalConnectionRequest &request) const
  10110. {
  10111. auto endpointOutcome = endpointProvider_->getEndpoint();
  10112. if (!endpointOutcome.isSuccess())
  10113. return UpdateVirtualPhysicalConnectionOutcome(endpointOutcome.error());
  10114. auto outcome = makeRequest(endpointOutcome.result(), request);
  10115. if (outcome.isSuccess())
  10116. return UpdateVirtualPhysicalConnectionOutcome(UpdateVirtualPhysicalConnectionResult(outcome.result()));
  10117. else
  10118. return UpdateVirtualPhysicalConnectionOutcome(outcome.error());
  10119. }
  10120. void VpcClient::updateVirtualPhysicalConnectionAsync(const UpdateVirtualPhysicalConnectionRequest& request, const UpdateVirtualPhysicalConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  10121. {
  10122. auto fn = [this, request, handler, context]()
  10123. {
  10124. handler(this, request, updateVirtualPhysicalConnection(request), context);
  10125. };
  10126. asyncExecute(new Runnable(fn));
  10127. }
  10128. VpcClient::UpdateVirtualPhysicalConnectionOutcomeCallable VpcClient::updateVirtualPhysicalConnectionCallable(const UpdateVirtualPhysicalConnectionRequest &request) const
  10129. {
  10130. auto task = std::make_shared<std::packaged_task<UpdateVirtualPhysicalConnectionOutcome()>>(
  10131. [this, request]()
  10132. {
  10133. return this->updateVirtualPhysicalConnection(request);
  10134. });
  10135. asyncExecute(new Runnable([task]() { (*task)(); }));
  10136. return task->get_future();
  10137. }
  10138. VpcClient::UpdateVpcGatewayEndpointAttributeOutcome VpcClient::updateVpcGatewayEndpointAttribute(const UpdateVpcGatewayEndpointAttributeRequest &request) const
  10139. {
  10140. auto endpointOutcome = endpointProvider_->getEndpoint();
  10141. if (!endpointOutcome.isSuccess())
  10142. return UpdateVpcGatewayEndpointAttributeOutcome(endpointOutcome.error());
  10143. auto outcome = makeRequest(endpointOutcome.result(), request);
  10144. if (outcome.isSuccess())
  10145. return UpdateVpcGatewayEndpointAttributeOutcome(UpdateVpcGatewayEndpointAttributeResult(outcome.result()));
  10146. else
  10147. return UpdateVpcGatewayEndpointAttributeOutcome(outcome.error());
  10148. }
  10149. void VpcClient::updateVpcGatewayEndpointAttributeAsync(const UpdateVpcGatewayEndpointAttributeRequest& request, const UpdateVpcGatewayEndpointAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  10150. {
  10151. auto fn = [this, request, handler, context]()
  10152. {
  10153. handler(this, request, updateVpcGatewayEndpointAttribute(request), context);
  10154. };
  10155. asyncExecute(new Runnable(fn));
  10156. }
  10157. VpcClient::UpdateVpcGatewayEndpointAttributeOutcomeCallable VpcClient::updateVpcGatewayEndpointAttributeCallable(const UpdateVpcGatewayEndpointAttributeRequest &request) const
  10158. {
  10159. auto task = std::make_shared<std::packaged_task<UpdateVpcGatewayEndpointAttributeOutcome()>>(
  10160. [this, request]()
  10161. {
  10162. return this->updateVpcGatewayEndpointAttribute(request);
  10163. });
  10164. asyncExecute(new Runnable([task]() { (*task)(); }));
  10165. return task->get_future();
  10166. }
  10167. VpcClient::VpcDescribeVpcNatGatewayNetworkInterfaceQuotaOutcome VpcClient::vpcDescribeVpcNatGatewayNetworkInterfaceQuota(const VpcDescribeVpcNatGatewayNetworkInterfaceQuotaRequest &request) const
  10168. {
  10169. auto endpointOutcome = endpointProvider_->getEndpoint();
  10170. if (!endpointOutcome.isSuccess())
  10171. return VpcDescribeVpcNatGatewayNetworkInterfaceQuotaOutcome(endpointOutcome.error());
  10172. auto outcome = makeRequest(endpointOutcome.result(), request);
  10173. if (outcome.isSuccess())
  10174. return VpcDescribeVpcNatGatewayNetworkInterfaceQuotaOutcome(VpcDescribeVpcNatGatewayNetworkInterfaceQuotaResult(outcome.result()));
  10175. else
  10176. return VpcDescribeVpcNatGatewayNetworkInterfaceQuotaOutcome(outcome.error());
  10177. }
  10178. void VpcClient::vpcDescribeVpcNatGatewayNetworkInterfaceQuotaAsync(const VpcDescribeVpcNatGatewayNetworkInterfaceQuotaRequest& request, const VpcDescribeVpcNatGatewayNetworkInterfaceQuotaAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
  10179. {
  10180. auto fn = [this, request, handler, context]()
  10181. {
  10182. handler(this, request, vpcDescribeVpcNatGatewayNetworkInterfaceQuota(request), context);
  10183. };
  10184. asyncExecute(new Runnable(fn));
  10185. }
  10186. VpcClient::VpcDescribeVpcNatGatewayNetworkInterfaceQuotaOutcomeCallable VpcClient::vpcDescribeVpcNatGatewayNetworkInterfaceQuotaCallable(const VpcDescribeVpcNatGatewayNetworkInterfaceQuotaRequest &request) const
  10187. {
  10188. auto task = std::make_shared<std::packaged_task<VpcDescribeVpcNatGatewayNetworkInterfaceQuotaOutcome()>>(
  10189. [this, request]()
  10190. {
  10191. return this->vpcDescribeVpcNatGatewayNetworkInterfaceQuota(request);
  10192. });
  10193. asyncExecute(new Runnable([task]() { (*task)(); }));
  10194. return task->get_future();
  10195. }