deserializers.go 450 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659116601166111662116631166411665116661166711668116691167011671116721167311674116751167611677116781167911680116811168211683116841168511686116871168811689116901169111692116931169411695116961169711698116991170011701117021170311704117051170611707117081170911710117111171211713117141171511716117171171811719117201172111722117231172411725117261172711728117291173011731117321173311734117351173611737117381173911740117411174211743117441174511746117471174811749117501175111752117531175411755117561175711758117591176011761117621176311764117651176611767117681176911770117711177211773117741177511776117771177811779117801178111782117831178411785117861178711788117891179011791117921179311794117951179611797117981179911800118011180211803118041180511806118071180811809118101181111812118131181411815118161181711818118191182011821118221182311824118251182611827118281182911830118311183211833118341183511836118371183811839118401184111842118431184411845118461184711848118491185011851118521185311854118551185611857118581185911860118611186211863118641186511866118671186811869118701187111872118731187411875118761187711878118791188011881118821188311884118851188611887118881188911890118911189211893118941189511896118971189811899119001190111902119031190411905119061190711908119091191011911119121191311914119151191611917119181191911920119211192211923119241192511926119271192811929119301193111932119331193411935119361193711938119391194011941119421194311944119451194611947119481194911950119511195211953119541195511956119571195811959119601196111962119631196411965119661196711968119691197011971119721197311974119751197611977119781197911980119811198211983119841198511986119871198811989119901199111992119931199411995119961199711998119991200012001120021200312004120051200612007120081200912010120111201212013120141201512016120171201812019120201202112022120231202412025120261202712028120291203012031120321203312034120351203612037120381203912040120411204212043120441204512046120471204812049120501205112052120531205412055120561205712058120591206012061120621206312064120651206612067120681206912070120711207212073120741207512076120771207812079120801208112082120831208412085120861208712088120891209012091120921209312094120951209612097120981209912100121011210212103121041210512106121071210812109121101211112112121131211412115121161211712118121191212012121121221212312124121251212612127121281212912130121311213212133121341213512136121371213812139121401214112142121431214412145121461214712148121491215012151121521215312154121551215612157121581215912160121611216212163121641216512166121671216812169121701217112172121731217412175121761217712178121791218012181121821218312184121851218612187121881218912190121911219212193121941219512196121971219812199122001220112202122031220412205122061220712208122091221012211122121221312214122151221612217122181221912220122211222212223122241222512226122271222812229122301223112232122331223412235122361223712238122391224012241122421224312244122451224612247122481224912250122511225212253122541225512256122571225812259122601226112262122631226412265122661226712268122691227012271122721227312274122751227612277122781227912280122811228212283122841228512286122871228812289122901229112292122931229412295122961229712298122991230012301123021230312304123051230612307123081230912310123111231212313123141231512316123171231812319123201232112322123231232412325123261232712328123291233012331123321233312334123351233612337123381233912340123411234212343123441234512346123471234812349123501235112352123531235412355123561235712358123591236012361123621236312364123651236612367123681236912370123711237212373123741237512376123771237812379123801238112382123831238412385123861238712388123891239012391123921239312394123951239612397123981239912400124011240212403124041240512406124071240812409124101241112412124131241412415124161241712418124191242012421124221242312424124251242612427124281242912430124311243212433124341243512436124371243812439124401244112442124431244412445124461244712448124491245012451124521245312454124551245612457124581245912460124611246212463124641246512466124671246812469124701247112472124731247412475124761247712478124791248012481124821248312484124851248612487124881248912490124911249212493124941249512496124971249812499125001250112502125031250412505125061250712508125091251012511125121251312514125151251612517125181251912520125211252212523125241252512526125271252812529125301253112532125331253412535125361253712538125391254012541125421254312544125451254612547125481254912550125511255212553125541255512556125571255812559125601256112562125631256412565125661256712568125691257012571125721257312574125751257612577125781257912580125811258212583125841258512586125871258812589125901259112592125931259412595125961259712598125991260012601126021260312604126051260612607126081260912610126111261212613126141261512616126171261812619126201262112622126231262412625126261262712628126291263012631126321263312634126351263612637126381263912640126411264212643126441264512646126471264812649126501265112652126531265412655126561265712658126591266012661126621266312664126651266612667126681266912670126711267212673126741267512676126771267812679126801268112682126831268412685126861268712688126891269012691126921269312694126951269612697126981269912700127011270212703127041270512706127071270812709127101271112712127131271412715127161271712718127191272012721127221272312724127251272612727127281272912730127311273212733127341273512736127371273812739127401274112742127431274412745127461274712748127491275012751127521275312754127551275612757127581275912760127611276212763127641276512766127671276812769127701277112772127731277412775127761277712778127791278012781127821278312784127851278612787127881278912790127911279212793127941279512796127971279812799128001280112802128031280412805128061280712808128091281012811128121281312814128151281612817128181281912820128211282212823128241282512826128271282812829128301283112832128331283412835128361283712838128391284012841128421284312844128451284612847128481284912850128511285212853128541285512856128571285812859128601286112862128631286412865128661286712868128691287012871128721287312874128751287612877128781287912880128811288212883128841288512886128871288812889128901289112892128931289412895128961289712898128991290012901129021290312904129051290612907129081290912910129111291212913129141291512916129171291812919129201292112922129231292412925129261292712928129291293012931129321293312934129351293612937129381293912940129411294212943129441294512946129471294812949129501295112952129531295412955129561295712958129591296012961129621296312964129651296612967129681296912970129711297212973129741297512976129771297812979129801298112982129831298412985129861298712988129891299012991129921299312994129951299612997129981299913000130011300213003130041300513006130071300813009130101301113012130131301413015130161301713018130191302013021130221302313024130251302613027130281302913030130311303213033130341303513036130371303813039130401304113042130431304413045130461304713048130491305013051130521305313054130551305613057130581305913060130611306213063130641306513066130671306813069130701307113072130731307413075130761307713078130791308013081130821308313084130851308613087130881308913090130911309213093130941309513096130971309813099131001310113102131031310413105131061310713108131091311013111131121311313114131151311613117131181311913120131211312213123131241312513126131271312813129131301313113132131331313413135131361313713138131391314013141131421314313144131451314613147131481314913150131511315213153131541315513156131571315813159131601316113162131631316413165131661316713168131691317013171131721317313174131751317613177131781317913180131811318213183131841318513186131871318813189131901319113192131931319413195131961319713198131991320013201132021320313204132051320613207132081320913210132111321213213132141321513216132171321813219132201322113222132231322413225132261322713228132291323013231132321323313234132351323613237132381323913240132411324213243132441324513246132471324813249132501325113252132531325413255132561325713258132591326013261132621326313264132651326613267132681326913270132711327213273132741327513276132771327813279132801328113282132831328413285132861328713288132891329013291132921329313294132951329613297132981329913300133011330213303133041330513306133071330813309133101331113312133131331413315133161331713318133191332013321133221332313324133251332613327133281332913330133311333213333133341333513336133371333813339133401334113342133431334413345133461334713348133491335013351133521335313354133551335613357133581335913360133611336213363133641336513366133671336813369133701337113372133731337413375133761337713378133791338013381133821338313384133851338613387133881338913390133911339213393133941339513396133971339813399134001340113402134031340413405134061340713408134091341013411134121341313414134151341613417134181341913420134211342213423134241342513426134271342813429134301343113432134331343413435134361343713438134391344013441134421344313444134451344613447134481344913450134511345213453134541345513456134571345813459134601346113462134631346413465134661346713468134691347013471134721347313474134751347613477134781347913480134811348213483134841348513486134871348813489134901349113492134931349413495134961349713498134991350013501135021350313504135051350613507135081350913510135111351213513135141351513516135171351813519135201352113522135231352413525135261352713528135291353013531135321353313534135351353613537135381353913540135411354213543135441354513546135471354813549135501355113552135531355413555135561355713558135591356013561135621356313564135651356613567135681356913570135711357213573135741357513576135771357813579135801358113582135831358413585135861358713588135891359013591135921359313594135951359613597135981359913600136011360213603136041360513606136071360813609136101361113612136131361413615136161361713618136191362013621136221362313624136251362613627136281362913630136311363213633136341363513636136371363813639136401364113642136431364413645136461364713648136491365013651136521365313654136551365613657136581365913660136611366213663136641366513666136671366813669136701367113672136731367413675136761367713678136791368013681136821368313684136851368613687136881368913690136911369213693136941369513696136971369813699137001370113702137031370413705137061370713708137091371013711137121371313714137151371613717137181371913720137211372213723137241372513726137271372813729137301373113732137331373413735137361373713738137391374013741137421374313744137451374613747137481374913750137511375213753137541375513756137571375813759137601376113762137631376413765137661376713768137691377013771137721377313774137751377613777137781377913780137811378213783137841378513786137871378813789137901379113792137931379413795137961379713798137991380013801138021380313804138051380613807138081380913810138111381213813138141381513816138171381813819138201382113822138231382413825138261382713828138291383013831138321383313834138351383613837138381383913840138411384213843138441384513846138471384813849138501385113852138531385413855138561385713858138591386013861138621386313864138651386613867138681386913870138711387213873138741387513876138771387813879138801388113882138831388413885138861388713888138891389013891138921389313894138951389613897138981389913900139011390213903139041390513906139071390813909139101391113912139131391413915139161391713918139191392013921139221392313924139251392613927139281392913930139311393213933139341393513936139371393813939139401394113942139431394413945139461394713948139491395013951139521395313954139551395613957139581395913960139611396213963139641396513966139671396813969139701397113972139731397413975139761397713978139791398013981139821398313984139851398613987139881398913990139911399213993139941399513996139971399813999140001400114002140031400414005140061400714008140091401014011140121401314014140151401614017140181401914020140211402214023140241402514026140271402814029140301403114032140331403414035140361403714038140391404014041140421404314044140451404614047140481404914050140511405214053140541405514056140571405814059140601406114062140631406414065140661406714068140691407014071140721407314074140751407614077140781407914080140811408214083140841408514086140871408814089140901409114092140931409414095140961409714098140991410014101141021410314104141051410614107141081410914110141111411214113141141411514116141171411814119141201412114122141231412414125141261412714128141291413014131141321413314134141351413614137141381413914140141411414214143141441414514146141471414814149141501415114152141531415414155141561415714158141591416014161141621416314164141651416614167141681416914170141711417214173141741417514176141771417814179141801418114182141831418414185141861418714188141891419014191141921419314194141951419614197141981419914200142011420214203142041420514206142071420814209142101421114212142131421414215142161421714218142191422014221142221422314224142251422614227142281422914230142311423214233142341423514236142371423814239142401424114242142431424414245142461424714248142491425014251142521425314254142551425614257142581425914260142611426214263142641426514266142671426814269142701427114272142731427414275142761427714278142791428014281142821428314284142851428614287142881428914290142911429214293142941429514296142971429814299143001430114302143031430414305143061430714308143091431014311143121431314314143151431614317143181431914320143211432214323143241432514326143271432814329143301433114332143331433414335143361433714338143391434014341143421434314344143451434614347143481434914350143511435214353143541435514356143571435814359143601436114362143631436414365143661436714368143691437014371143721437314374143751437614377143781437914380143811438214383143841438514386143871438814389143901439114392143931439414395143961439714398143991440014401144021440314404144051440614407144081440914410144111441214413144141441514416144171441814419144201442114422144231442414425144261442714428144291443014431144321443314434144351443614437144381443914440144411444214443144441444514446144471444814449144501445114452144531445414455144561445714458144591446014461144621446314464144651446614467144681446914470144711447214473144741447514476144771447814479144801448114482144831448414485144861448714488144891449014491144921449314494144951449614497144981449914500145011450214503145041450514506145071450814509145101451114512145131451414515145161451714518145191452014521145221452314524145251452614527145281452914530145311453214533145341453514536145371453814539145401454114542145431454414545145461454714548145491455014551145521455314554145551455614557145581455914560145611456214563145641456514566145671456814569145701457114572145731457414575145761457714578145791458014581145821458314584145851458614587145881458914590145911459214593145941459514596145971459814599146001460114602146031460414605146061460714608146091461014611146121461314614146151461614617146181461914620146211462214623146241462514626146271462814629146301463114632146331463414635146361463714638146391464014641146421464314644146451464614647146481464914650146511465214653146541465514656146571465814659146601466114662146631466414665146661466714668146691467014671146721467314674146751467614677146781467914680146811468214683146841468514686146871468814689146901469114692146931469414695146961469714698146991470014701147021470314704147051470614707147081470914710147111471214713147141471514716147171471814719147201472114722147231472414725147261472714728147291473014731147321473314734147351473614737147381473914740147411474214743147441474514746147471474814749147501475114752147531475414755147561475714758147591476014761147621476314764147651476614767147681476914770147711477214773147741477514776147771477814779147801478114782147831478414785147861478714788147891479014791147921479314794147951479614797147981479914800148011480214803148041480514806148071480814809148101481114812148131481414815148161481714818148191482014821148221482314824148251482614827148281482914830148311483214833148341483514836148371483814839148401484114842148431484414845148461484714848148491485014851148521485314854148551485614857148581485914860148611486214863148641486514866148671486814869148701487114872148731487414875148761487714878148791488014881148821488314884148851488614887148881488914890148911489214893148941489514896148971489814899149001490114902149031490414905149061490714908149091491014911149121491314914149151491614917149181491914920149211492214923149241492514926149271492814929149301493114932149331493414935149361493714938149391494014941149421494314944149451494614947149481494914950149511495214953149541495514956149571495814959149601496114962149631496414965149661496714968149691497014971149721497314974149751497614977149781497914980149811498214983149841498514986149871498814989149901499114992149931499414995149961499714998149991500015001150021500315004150051500615007150081500915010150111501215013150141501515016150171501815019150201502115022150231502415025150261502715028150291503015031150321503315034150351503615037150381503915040150411504215043150441504515046150471504815049150501505115052150531505415055150561505715058150591506015061150621506315064150651506615067150681506915070150711507215073150741507515076150771507815079150801508115082150831508415085150861508715088150891509015091150921509315094150951509615097150981509915100151011510215103151041510515106151071510815109151101511115112151131511415115151161511715118151191512015121151221512315124151251512615127151281512915130151311513215133151341513515136151371513815139151401514115142151431514415145151461514715148151491515015151151521515315154151551515615157151581515915160151611516215163151641516515166151671516815169151701517115172151731517415175151761517715178151791518015181151821518315184151851518615187151881518915190151911519215193151941519515196151971519815199152001520115202152031520415205152061520715208152091521015211152121521315214152151521615217152181521915220152211522215223152241522515226152271522815229152301523115232152331523415235152361523715238152391524015241152421524315244152451524615247152481524915250152511525215253152541525515256152571525815259152601526115262152631526415265152661526715268152691527015271152721527315274152751527615277152781527915280152811528215283152841528515286152871528815289152901529115292152931529415295152961529715298152991530015301153021530315304153051530615307153081530915310153111531215313153141531515316153171531815319153201532115322153231532415325153261532715328153291533015331153321533315334153351533615337153381533915340153411534215343153441534515346153471534815349153501535115352153531535415355153561535715358153591536015361153621536315364153651536615367153681536915370153711537215373153741537515376153771537815379153801538115382153831538415385153861538715388153891539015391153921539315394153951539615397153981539915400154011540215403154041540515406154071540815409154101541115412154131541415415154161541715418154191542015421154221542315424154251542615427154281542915430154311543215433154341543515436154371543815439154401544115442154431544415445154461544715448154491545015451154521545315454154551545615457154581545915460154611546215463154641546515466154671546815469154701547115472154731547415475154761547715478154791548015481154821548315484154851548615487154881548915490154911549215493154941549515496154971549815499155001550115502155031550415505155061550715508155091551015511155121551315514155151551615517155181551915520155211552215523155241552515526155271552815529155301553115532155331553415535155361553715538155391554015541155421554315544155451554615547155481554915550155511555215553155541555515556155571555815559155601556115562155631556415565155661556715568155691557015571155721557315574155751557615577155781557915580155811558215583155841558515586155871558815589155901559115592155931559415595155961559715598155991560015601156021560315604156051560615607156081560915610156111561215613156141561515616156171561815619156201562115622156231562415625156261562715628156291563015631156321563315634156351563615637156381563915640156411564215643156441564515646156471564815649156501565115652156531565415655156561565715658156591566015661156621566315664156651566615667156681566915670156711567215673156741567515676156771567815679156801568115682156831568415685156861568715688156891569015691156921569315694156951569615697156981569915700157011570215703157041570515706157071570815709157101571115712157131571415715157161571715718157191572015721157221572315724157251572615727157281572915730157311573215733157341573515736157371573815739157401574115742157431574415745157461574715748157491575015751157521575315754157551575615757157581575915760157611576215763157641576515766157671576815769157701577115772157731577415775157761577715778157791578015781157821578315784157851578615787157881578915790157911579215793157941579515796157971579815799158001580115802158031580415805158061580715808158091581015811158121581315814158151581615817158181581915820158211582215823158241582515826158271582815829158301583115832158331583415835158361583715838158391584015841158421584315844158451584615847158481584915850158511585215853158541585515856158571585815859158601586115862158631586415865158661586715868158691587015871158721587315874158751587615877158781587915880158811588215883158841588515886158871588815889158901589115892158931589415895158961589715898158991590015901159021590315904159051590615907159081590915910159111591215913159141591515916159171591815919159201592115922159231592415925159261592715928159291593015931159321593315934159351593615937159381593915940159411594215943159441594515946159471594815949159501595115952159531595415955159561595715958159591596015961159621596315964159651596615967159681596915970159711597215973159741597515976159771597815979159801598115982159831598415985159861598715988159891599015991159921599315994159951599615997159981599916000160011600216003160041600516006160071600816009160101601116012160131601416015160161601716018160191602016021160221602316024160251602616027160281602916030160311603216033160341603516036160371603816039160401604116042160431604416045160461604716048160491605016051160521605316054160551605616057160581605916060160611606216063160641606516066160671606816069160701607116072160731607416075160761607716078160791608016081160821608316084160851608616087160881608916090160911609216093160941609516096160971609816099161001610116102161031610416105161061610716108161091611016111161121611316114161151611616117161181611916120161211612216123161241612516126161271612816129161301613116132161331613416135161361613716138161391614016141161421614316144161451614616147161481614916150161511615216153
  1. // Code generated by smithy-go-codegen DO NOT EDIT.
  2. package organizations
  3. import (
  4. "bytes"
  5. "context"
  6. "encoding/json"
  7. "fmt"
  8. "github.com/aws/aws-sdk-go-v2/aws/protocol/restjson"
  9. "github.com/aws/aws-sdk-go-v2/service/organizations/types"
  10. smithy "github.com/aws/smithy-go"
  11. smithyio "github.com/aws/smithy-go/io"
  12. "github.com/aws/smithy-go/middleware"
  13. "github.com/aws/smithy-go/ptr"
  14. smithytime "github.com/aws/smithy-go/time"
  15. "github.com/aws/smithy-go/tracing"
  16. smithyhttp "github.com/aws/smithy-go/transport/http"
  17. "io"
  18. "io/ioutil"
  19. "strings"
  20. )
  21. type awsAwsjson11_deserializeOpAcceptHandshake struct {
  22. }
  23. func (*awsAwsjson11_deserializeOpAcceptHandshake) ID() string {
  24. return "OperationDeserializer"
  25. }
  26. func (m *awsAwsjson11_deserializeOpAcceptHandshake) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  27. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  28. ) {
  29. out, metadata, err = next.HandleDeserialize(ctx, in)
  30. if err != nil {
  31. return out, metadata, err
  32. }
  33. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  34. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  35. defer endTimer()
  36. defer span.End()
  37. response, ok := out.RawResponse.(*smithyhttp.Response)
  38. if !ok {
  39. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  40. }
  41. if response.StatusCode < 200 || response.StatusCode >= 300 {
  42. return out, metadata, awsAwsjson11_deserializeOpErrorAcceptHandshake(response, &metadata)
  43. }
  44. output := &AcceptHandshakeOutput{}
  45. out.Result = output
  46. var buff [1024]byte
  47. ringBuffer := smithyio.NewRingBuffer(buff[:])
  48. body := io.TeeReader(response.Body, ringBuffer)
  49. decoder := json.NewDecoder(body)
  50. decoder.UseNumber()
  51. var shape interface{}
  52. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  53. var snapshot bytes.Buffer
  54. io.Copy(&snapshot, ringBuffer)
  55. err = &smithy.DeserializationError{
  56. Err: fmt.Errorf("failed to decode response body, %w", err),
  57. Snapshot: snapshot.Bytes(),
  58. }
  59. return out, metadata, err
  60. }
  61. err = awsAwsjson11_deserializeOpDocumentAcceptHandshakeOutput(&output, shape)
  62. if err != nil {
  63. var snapshot bytes.Buffer
  64. io.Copy(&snapshot, ringBuffer)
  65. err = &smithy.DeserializationError{
  66. Err: fmt.Errorf("failed to decode response body, %w", err),
  67. Snapshot: snapshot.Bytes(),
  68. }
  69. return out, metadata, err
  70. }
  71. return out, metadata, err
  72. }
  73. func awsAwsjson11_deserializeOpErrorAcceptHandshake(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  74. var errorBuffer bytes.Buffer
  75. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  76. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  77. }
  78. errorBody := bytes.NewReader(errorBuffer.Bytes())
  79. errorCode := "UnknownError"
  80. errorMessage := errorCode
  81. headerCode := response.Header.Get("X-Amzn-ErrorType")
  82. var buff [1024]byte
  83. ringBuffer := smithyio.NewRingBuffer(buff[:])
  84. body := io.TeeReader(errorBody, ringBuffer)
  85. decoder := json.NewDecoder(body)
  86. decoder.UseNumber()
  87. bodyInfo, err := getProtocolErrorInfo(decoder)
  88. if err != nil {
  89. var snapshot bytes.Buffer
  90. io.Copy(&snapshot, ringBuffer)
  91. err = &smithy.DeserializationError{
  92. Err: fmt.Errorf("failed to decode response body, %w", err),
  93. Snapshot: snapshot.Bytes(),
  94. }
  95. return err
  96. }
  97. errorBody.Seek(0, io.SeekStart)
  98. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  99. errorCode = restjson.SanitizeErrorCode(typ)
  100. }
  101. if len(bodyInfo.Message) != 0 {
  102. errorMessage = bodyInfo.Message
  103. }
  104. switch {
  105. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  106. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  107. case strings.EqualFold("AccessDeniedException", errorCode):
  108. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  109. case strings.EqualFold("AccessDeniedForDependencyException", errorCode):
  110. return awsAwsjson11_deserializeErrorAccessDeniedForDependencyException(response, errorBody)
  111. case strings.EqualFold("ConcurrentModificationException", errorCode):
  112. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  113. case strings.EqualFold("ConstraintViolationException", errorCode):
  114. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  115. case strings.EqualFold("HandshakeAlreadyInStateException", errorCode):
  116. return awsAwsjson11_deserializeErrorHandshakeAlreadyInStateException(response, errorBody)
  117. case strings.EqualFold("HandshakeConstraintViolationException", errorCode):
  118. return awsAwsjson11_deserializeErrorHandshakeConstraintViolationException(response, errorBody)
  119. case strings.EqualFold("HandshakeNotFoundException", errorCode):
  120. return awsAwsjson11_deserializeErrorHandshakeNotFoundException(response, errorBody)
  121. case strings.EqualFold("InvalidHandshakeTransitionException", errorCode):
  122. return awsAwsjson11_deserializeErrorInvalidHandshakeTransitionException(response, errorBody)
  123. case strings.EqualFold("InvalidInputException", errorCode):
  124. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  125. case strings.EqualFold("MasterCannotLeaveOrganizationException", errorCode):
  126. return awsAwsjson11_deserializeErrorMasterCannotLeaveOrganizationException(response, errorBody)
  127. case strings.EqualFold("ServiceException", errorCode):
  128. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  129. case strings.EqualFold("TooManyRequestsException", errorCode):
  130. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  131. default:
  132. genericError := &smithy.GenericAPIError{
  133. Code: errorCode,
  134. Message: errorMessage,
  135. }
  136. return genericError
  137. }
  138. }
  139. type awsAwsjson11_deserializeOpAttachPolicy struct {
  140. }
  141. func (*awsAwsjson11_deserializeOpAttachPolicy) ID() string {
  142. return "OperationDeserializer"
  143. }
  144. func (m *awsAwsjson11_deserializeOpAttachPolicy) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  145. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  146. ) {
  147. out, metadata, err = next.HandleDeserialize(ctx, in)
  148. if err != nil {
  149. return out, metadata, err
  150. }
  151. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  152. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  153. defer endTimer()
  154. defer span.End()
  155. response, ok := out.RawResponse.(*smithyhttp.Response)
  156. if !ok {
  157. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  158. }
  159. if response.StatusCode < 200 || response.StatusCode >= 300 {
  160. return out, metadata, awsAwsjson11_deserializeOpErrorAttachPolicy(response, &metadata)
  161. }
  162. output := &AttachPolicyOutput{}
  163. out.Result = output
  164. if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
  165. return out, metadata, &smithy.DeserializationError{
  166. Err: fmt.Errorf("failed to discard response body, %w", err),
  167. }
  168. }
  169. return out, metadata, err
  170. }
  171. func awsAwsjson11_deserializeOpErrorAttachPolicy(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  172. var errorBuffer bytes.Buffer
  173. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  174. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  175. }
  176. errorBody := bytes.NewReader(errorBuffer.Bytes())
  177. errorCode := "UnknownError"
  178. errorMessage := errorCode
  179. headerCode := response.Header.Get("X-Amzn-ErrorType")
  180. var buff [1024]byte
  181. ringBuffer := smithyio.NewRingBuffer(buff[:])
  182. body := io.TeeReader(errorBody, ringBuffer)
  183. decoder := json.NewDecoder(body)
  184. decoder.UseNumber()
  185. bodyInfo, err := getProtocolErrorInfo(decoder)
  186. if err != nil {
  187. var snapshot bytes.Buffer
  188. io.Copy(&snapshot, ringBuffer)
  189. err = &smithy.DeserializationError{
  190. Err: fmt.Errorf("failed to decode response body, %w", err),
  191. Snapshot: snapshot.Bytes(),
  192. }
  193. return err
  194. }
  195. errorBody.Seek(0, io.SeekStart)
  196. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  197. errorCode = restjson.SanitizeErrorCode(typ)
  198. }
  199. if len(bodyInfo.Message) != 0 {
  200. errorMessage = bodyInfo.Message
  201. }
  202. switch {
  203. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  204. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  205. case strings.EqualFold("AccessDeniedException", errorCode):
  206. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  207. case strings.EqualFold("ConcurrentModificationException", errorCode):
  208. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  209. case strings.EqualFold("ConstraintViolationException", errorCode):
  210. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  211. case strings.EqualFold("DuplicatePolicyAttachmentException", errorCode):
  212. return awsAwsjson11_deserializeErrorDuplicatePolicyAttachmentException(response, errorBody)
  213. case strings.EqualFold("InvalidInputException", errorCode):
  214. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  215. case strings.EqualFold("PolicyChangesInProgressException", errorCode):
  216. return awsAwsjson11_deserializeErrorPolicyChangesInProgressException(response, errorBody)
  217. case strings.EqualFold("PolicyNotFoundException", errorCode):
  218. return awsAwsjson11_deserializeErrorPolicyNotFoundException(response, errorBody)
  219. case strings.EqualFold("PolicyTypeNotEnabledException", errorCode):
  220. return awsAwsjson11_deserializeErrorPolicyTypeNotEnabledException(response, errorBody)
  221. case strings.EqualFold("ServiceException", errorCode):
  222. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  223. case strings.EqualFold("TargetNotFoundException", errorCode):
  224. return awsAwsjson11_deserializeErrorTargetNotFoundException(response, errorBody)
  225. case strings.EqualFold("TooManyRequestsException", errorCode):
  226. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  227. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  228. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  229. default:
  230. genericError := &smithy.GenericAPIError{
  231. Code: errorCode,
  232. Message: errorMessage,
  233. }
  234. return genericError
  235. }
  236. }
  237. type awsAwsjson11_deserializeOpCancelHandshake struct {
  238. }
  239. func (*awsAwsjson11_deserializeOpCancelHandshake) ID() string {
  240. return "OperationDeserializer"
  241. }
  242. func (m *awsAwsjson11_deserializeOpCancelHandshake) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  243. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  244. ) {
  245. out, metadata, err = next.HandleDeserialize(ctx, in)
  246. if err != nil {
  247. return out, metadata, err
  248. }
  249. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  250. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  251. defer endTimer()
  252. defer span.End()
  253. response, ok := out.RawResponse.(*smithyhttp.Response)
  254. if !ok {
  255. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  256. }
  257. if response.StatusCode < 200 || response.StatusCode >= 300 {
  258. return out, metadata, awsAwsjson11_deserializeOpErrorCancelHandshake(response, &metadata)
  259. }
  260. output := &CancelHandshakeOutput{}
  261. out.Result = output
  262. var buff [1024]byte
  263. ringBuffer := smithyio.NewRingBuffer(buff[:])
  264. body := io.TeeReader(response.Body, ringBuffer)
  265. decoder := json.NewDecoder(body)
  266. decoder.UseNumber()
  267. var shape interface{}
  268. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  269. var snapshot bytes.Buffer
  270. io.Copy(&snapshot, ringBuffer)
  271. err = &smithy.DeserializationError{
  272. Err: fmt.Errorf("failed to decode response body, %w", err),
  273. Snapshot: snapshot.Bytes(),
  274. }
  275. return out, metadata, err
  276. }
  277. err = awsAwsjson11_deserializeOpDocumentCancelHandshakeOutput(&output, shape)
  278. if err != nil {
  279. var snapshot bytes.Buffer
  280. io.Copy(&snapshot, ringBuffer)
  281. err = &smithy.DeserializationError{
  282. Err: fmt.Errorf("failed to decode response body, %w", err),
  283. Snapshot: snapshot.Bytes(),
  284. }
  285. return out, metadata, err
  286. }
  287. return out, metadata, err
  288. }
  289. func awsAwsjson11_deserializeOpErrorCancelHandshake(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  290. var errorBuffer bytes.Buffer
  291. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  292. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  293. }
  294. errorBody := bytes.NewReader(errorBuffer.Bytes())
  295. errorCode := "UnknownError"
  296. errorMessage := errorCode
  297. headerCode := response.Header.Get("X-Amzn-ErrorType")
  298. var buff [1024]byte
  299. ringBuffer := smithyio.NewRingBuffer(buff[:])
  300. body := io.TeeReader(errorBody, ringBuffer)
  301. decoder := json.NewDecoder(body)
  302. decoder.UseNumber()
  303. bodyInfo, err := getProtocolErrorInfo(decoder)
  304. if err != nil {
  305. var snapshot bytes.Buffer
  306. io.Copy(&snapshot, ringBuffer)
  307. err = &smithy.DeserializationError{
  308. Err: fmt.Errorf("failed to decode response body, %w", err),
  309. Snapshot: snapshot.Bytes(),
  310. }
  311. return err
  312. }
  313. errorBody.Seek(0, io.SeekStart)
  314. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  315. errorCode = restjson.SanitizeErrorCode(typ)
  316. }
  317. if len(bodyInfo.Message) != 0 {
  318. errorMessage = bodyInfo.Message
  319. }
  320. switch {
  321. case strings.EqualFold("AccessDeniedException", errorCode):
  322. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  323. case strings.EqualFold("ConcurrentModificationException", errorCode):
  324. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  325. case strings.EqualFold("HandshakeAlreadyInStateException", errorCode):
  326. return awsAwsjson11_deserializeErrorHandshakeAlreadyInStateException(response, errorBody)
  327. case strings.EqualFold("HandshakeNotFoundException", errorCode):
  328. return awsAwsjson11_deserializeErrorHandshakeNotFoundException(response, errorBody)
  329. case strings.EqualFold("InvalidHandshakeTransitionException", errorCode):
  330. return awsAwsjson11_deserializeErrorInvalidHandshakeTransitionException(response, errorBody)
  331. case strings.EqualFold("InvalidInputException", errorCode):
  332. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  333. case strings.EqualFold("ServiceException", errorCode):
  334. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  335. case strings.EqualFold("TooManyRequestsException", errorCode):
  336. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  337. default:
  338. genericError := &smithy.GenericAPIError{
  339. Code: errorCode,
  340. Message: errorMessage,
  341. }
  342. return genericError
  343. }
  344. }
  345. type awsAwsjson11_deserializeOpCloseAccount struct {
  346. }
  347. func (*awsAwsjson11_deserializeOpCloseAccount) ID() string {
  348. return "OperationDeserializer"
  349. }
  350. func (m *awsAwsjson11_deserializeOpCloseAccount) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  351. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  352. ) {
  353. out, metadata, err = next.HandleDeserialize(ctx, in)
  354. if err != nil {
  355. return out, metadata, err
  356. }
  357. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  358. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  359. defer endTimer()
  360. defer span.End()
  361. response, ok := out.RawResponse.(*smithyhttp.Response)
  362. if !ok {
  363. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  364. }
  365. if response.StatusCode < 200 || response.StatusCode >= 300 {
  366. return out, metadata, awsAwsjson11_deserializeOpErrorCloseAccount(response, &metadata)
  367. }
  368. output := &CloseAccountOutput{}
  369. out.Result = output
  370. if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
  371. return out, metadata, &smithy.DeserializationError{
  372. Err: fmt.Errorf("failed to discard response body, %w", err),
  373. }
  374. }
  375. return out, metadata, err
  376. }
  377. func awsAwsjson11_deserializeOpErrorCloseAccount(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  378. var errorBuffer bytes.Buffer
  379. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  380. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  381. }
  382. errorBody := bytes.NewReader(errorBuffer.Bytes())
  383. errorCode := "UnknownError"
  384. errorMessage := errorCode
  385. headerCode := response.Header.Get("X-Amzn-ErrorType")
  386. var buff [1024]byte
  387. ringBuffer := smithyio.NewRingBuffer(buff[:])
  388. body := io.TeeReader(errorBody, ringBuffer)
  389. decoder := json.NewDecoder(body)
  390. decoder.UseNumber()
  391. bodyInfo, err := getProtocolErrorInfo(decoder)
  392. if err != nil {
  393. var snapshot bytes.Buffer
  394. io.Copy(&snapshot, ringBuffer)
  395. err = &smithy.DeserializationError{
  396. Err: fmt.Errorf("failed to decode response body, %w", err),
  397. Snapshot: snapshot.Bytes(),
  398. }
  399. return err
  400. }
  401. errorBody.Seek(0, io.SeekStart)
  402. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  403. errorCode = restjson.SanitizeErrorCode(typ)
  404. }
  405. if len(bodyInfo.Message) != 0 {
  406. errorMessage = bodyInfo.Message
  407. }
  408. switch {
  409. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  410. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  411. case strings.EqualFold("AccessDeniedException", errorCode):
  412. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  413. case strings.EqualFold("AccountAlreadyClosedException", errorCode):
  414. return awsAwsjson11_deserializeErrorAccountAlreadyClosedException(response, errorBody)
  415. case strings.EqualFold("AccountNotFoundException", errorCode):
  416. return awsAwsjson11_deserializeErrorAccountNotFoundException(response, errorBody)
  417. case strings.EqualFold("ConcurrentModificationException", errorCode):
  418. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  419. case strings.EqualFold("ConflictException", errorCode):
  420. return awsAwsjson11_deserializeErrorConflictException(response, errorBody)
  421. case strings.EqualFold("ConstraintViolationException", errorCode):
  422. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  423. case strings.EqualFold("InvalidInputException", errorCode):
  424. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  425. case strings.EqualFold("ServiceException", errorCode):
  426. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  427. case strings.EqualFold("TooManyRequestsException", errorCode):
  428. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  429. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  430. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  431. default:
  432. genericError := &smithy.GenericAPIError{
  433. Code: errorCode,
  434. Message: errorMessage,
  435. }
  436. return genericError
  437. }
  438. }
  439. type awsAwsjson11_deserializeOpCreateAccount struct {
  440. }
  441. func (*awsAwsjson11_deserializeOpCreateAccount) ID() string {
  442. return "OperationDeserializer"
  443. }
  444. func (m *awsAwsjson11_deserializeOpCreateAccount) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  445. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  446. ) {
  447. out, metadata, err = next.HandleDeserialize(ctx, in)
  448. if err != nil {
  449. return out, metadata, err
  450. }
  451. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  452. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  453. defer endTimer()
  454. defer span.End()
  455. response, ok := out.RawResponse.(*smithyhttp.Response)
  456. if !ok {
  457. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  458. }
  459. if response.StatusCode < 200 || response.StatusCode >= 300 {
  460. return out, metadata, awsAwsjson11_deserializeOpErrorCreateAccount(response, &metadata)
  461. }
  462. output := &CreateAccountOutput{}
  463. out.Result = output
  464. var buff [1024]byte
  465. ringBuffer := smithyio.NewRingBuffer(buff[:])
  466. body := io.TeeReader(response.Body, ringBuffer)
  467. decoder := json.NewDecoder(body)
  468. decoder.UseNumber()
  469. var shape interface{}
  470. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  471. var snapshot bytes.Buffer
  472. io.Copy(&snapshot, ringBuffer)
  473. err = &smithy.DeserializationError{
  474. Err: fmt.Errorf("failed to decode response body, %w", err),
  475. Snapshot: snapshot.Bytes(),
  476. }
  477. return out, metadata, err
  478. }
  479. err = awsAwsjson11_deserializeOpDocumentCreateAccountOutput(&output, shape)
  480. if err != nil {
  481. var snapshot bytes.Buffer
  482. io.Copy(&snapshot, ringBuffer)
  483. err = &smithy.DeserializationError{
  484. Err: fmt.Errorf("failed to decode response body, %w", err),
  485. Snapshot: snapshot.Bytes(),
  486. }
  487. return out, metadata, err
  488. }
  489. return out, metadata, err
  490. }
  491. func awsAwsjson11_deserializeOpErrorCreateAccount(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  492. var errorBuffer bytes.Buffer
  493. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  494. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  495. }
  496. errorBody := bytes.NewReader(errorBuffer.Bytes())
  497. errorCode := "UnknownError"
  498. errorMessage := errorCode
  499. headerCode := response.Header.Get("X-Amzn-ErrorType")
  500. var buff [1024]byte
  501. ringBuffer := smithyio.NewRingBuffer(buff[:])
  502. body := io.TeeReader(errorBody, ringBuffer)
  503. decoder := json.NewDecoder(body)
  504. decoder.UseNumber()
  505. bodyInfo, err := getProtocolErrorInfo(decoder)
  506. if err != nil {
  507. var snapshot bytes.Buffer
  508. io.Copy(&snapshot, ringBuffer)
  509. err = &smithy.DeserializationError{
  510. Err: fmt.Errorf("failed to decode response body, %w", err),
  511. Snapshot: snapshot.Bytes(),
  512. }
  513. return err
  514. }
  515. errorBody.Seek(0, io.SeekStart)
  516. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  517. errorCode = restjson.SanitizeErrorCode(typ)
  518. }
  519. if len(bodyInfo.Message) != 0 {
  520. errorMessage = bodyInfo.Message
  521. }
  522. switch {
  523. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  524. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  525. case strings.EqualFold("AccessDeniedException", errorCode):
  526. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  527. case strings.EqualFold("ConcurrentModificationException", errorCode):
  528. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  529. case strings.EqualFold("ConstraintViolationException", errorCode):
  530. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  531. case strings.EqualFold("FinalizingOrganizationException", errorCode):
  532. return awsAwsjson11_deserializeErrorFinalizingOrganizationException(response, errorBody)
  533. case strings.EqualFold("InvalidInputException", errorCode):
  534. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  535. case strings.EqualFold("ServiceException", errorCode):
  536. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  537. case strings.EqualFold("TooManyRequestsException", errorCode):
  538. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  539. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  540. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  541. default:
  542. genericError := &smithy.GenericAPIError{
  543. Code: errorCode,
  544. Message: errorMessage,
  545. }
  546. return genericError
  547. }
  548. }
  549. type awsAwsjson11_deserializeOpCreateGovCloudAccount struct {
  550. }
  551. func (*awsAwsjson11_deserializeOpCreateGovCloudAccount) ID() string {
  552. return "OperationDeserializer"
  553. }
  554. func (m *awsAwsjson11_deserializeOpCreateGovCloudAccount) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  555. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  556. ) {
  557. out, metadata, err = next.HandleDeserialize(ctx, in)
  558. if err != nil {
  559. return out, metadata, err
  560. }
  561. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  562. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  563. defer endTimer()
  564. defer span.End()
  565. response, ok := out.RawResponse.(*smithyhttp.Response)
  566. if !ok {
  567. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  568. }
  569. if response.StatusCode < 200 || response.StatusCode >= 300 {
  570. return out, metadata, awsAwsjson11_deserializeOpErrorCreateGovCloudAccount(response, &metadata)
  571. }
  572. output := &CreateGovCloudAccountOutput{}
  573. out.Result = output
  574. var buff [1024]byte
  575. ringBuffer := smithyio.NewRingBuffer(buff[:])
  576. body := io.TeeReader(response.Body, ringBuffer)
  577. decoder := json.NewDecoder(body)
  578. decoder.UseNumber()
  579. var shape interface{}
  580. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  581. var snapshot bytes.Buffer
  582. io.Copy(&snapshot, ringBuffer)
  583. err = &smithy.DeserializationError{
  584. Err: fmt.Errorf("failed to decode response body, %w", err),
  585. Snapshot: snapshot.Bytes(),
  586. }
  587. return out, metadata, err
  588. }
  589. err = awsAwsjson11_deserializeOpDocumentCreateGovCloudAccountOutput(&output, shape)
  590. if err != nil {
  591. var snapshot bytes.Buffer
  592. io.Copy(&snapshot, ringBuffer)
  593. err = &smithy.DeserializationError{
  594. Err: fmt.Errorf("failed to decode response body, %w", err),
  595. Snapshot: snapshot.Bytes(),
  596. }
  597. return out, metadata, err
  598. }
  599. return out, metadata, err
  600. }
  601. func awsAwsjson11_deserializeOpErrorCreateGovCloudAccount(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  602. var errorBuffer bytes.Buffer
  603. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  604. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  605. }
  606. errorBody := bytes.NewReader(errorBuffer.Bytes())
  607. errorCode := "UnknownError"
  608. errorMessage := errorCode
  609. headerCode := response.Header.Get("X-Amzn-ErrorType")
  610. var buff [1024]byte
  611. ringBuffer := smithyio.NewRingBuffer(buff[:])
  612. body := io.TeeReader(errorBody, ringBuffer)
  613. decoder := json.NewDecoder(body)
  614. decoder.UseNumber()
  615. bodyInfo, err := getProtocolErrorInfo(decoder)
  616. if err != nil {
  617. var snapshot bytes.Buffer
  618. io.Copy(&snapshot, ringBuffer)
  619. err = &smithy.DeserializationError{
  620. Err: fmt.Errorf("failed to decode response body, %w", err),
  621. Snapshot: snapshot.Bytes(),
  622. }
  623. return err
  624. }
  625. errorBody.Seek(0, io.SeekStart)
  626. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  627. errorCode = restjson.SanitizeErrorCode(typ)
  628. }
  629. if len(bodyInfo.Message) != 0 {
  630. errorMessage = bodyInfo.Message
  631. }
  632. switch {
  633. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  634. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  635. case strings.EqualFold("AccessDeniedException", errorCode):
  636. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  637. case strings.EqualFold("ConcurrentModificationException", errorCode):
  638. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  639. case strings.EqualFold("ConstraintViolationException", errorCode):
  640. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  641. case strings.EqualFold("FinalizingOrganizationException", errorCode):
  642. return awsAwsjson11_deserializeErrorFinalizingOrganizationException(response, errorBody)
  643. case strings.EqualFold("InvalidInputException", errorCode):
  644. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  645. case strings.EqualFold("ServiceException", errorCode):
  646. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  647. case strings.EqualFold("TooManyRequestsException", errorCode):
  648. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  649. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  650. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  651. default:
  652. genericError := &smithy.GenericAPIError{
  653. Code: errorCode,
  654. Message: errorMessage,
  655. }
  656. return genericError
  657. }
  658. }
  659. type awsAwsjson11_deserializeOpCreateOrganization struct {
  660. }
  661. func (*awsAwsjson11_deserializeOpCreateOrganization) ID() string {
  662. return "OperationDeserializer"
  663. }
  664. func (m *awsAwsjson11_deserializeOpCreateOrganization) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  665. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  666. ) {
  667. out, metadata, err = next.HandleDeserialize(ctx, in)
  668. if err != nil {
  669. return out, metadata, err
  670. }
  671. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  672. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  673. defer endTimer()
  674. defer span.End()
  675. response, ok := out.RawResponse.(*smithyhttp.Response)
  676. if !ok {
  677. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  678. }
  679. if response.StatusCode < 200 || response.StatusCode >= 300 {
  680. return out, metadata, awsAwsjson11_deserializeOpErrorCreateOrganization(response, &metadata)
  681. }
  682. output := &CreateOrganizationOutput{}
  683. out.Result = output
  684. var buff [1024]byte
  685. ringBuffer := smithyio.NewRingBuffer(buff[:])
  686. body := io.TeeReader(response.Body, ringBuffer)
  687. decoder := json.NewDecoder(body)
  688. decoder.UseNumber()
  689. var shape interface{}
  690. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  691. var snapshot bytes.Buffer
  692. io.Copy(&snapshot, ringBuffer)
  693. err = &smithy.DeserializationError{
  694. Err: fmt.Errorf("failed to decode response body, %w", err),
  695. Snapshot: snapshot.Bytes(),
  696. }
  697. return out, metadata, err
  698. }
  699. err = awsAwsjson11_deserializeOpDocumentCreateOrganizationOutput(&output, shape)
  700. if err != nil {
  701. var snapshot bytes.Buffer
  702. io.Copy(&snapshot, ringBuffer)
  703. err = &smithy.DeserializationError{
  704. Err: fmt.Errorf("failed to decode response body, %w", err),
  705. Snapshot: snapshot.Bytes(),
  706. }
  707. return out, metadata, err
  708. }
  709. return out, metadata, err
  710. }
  711. func awsAwsjson11_deserializeOpErrorCreateOrganization(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  712. var errorBuffer bytes.Buffer
  713. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  714. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  715. }
  716. errorBody := bytes.NewReader(errorBuffer.Bytes())
  717. errorCode := "UnknownError"
  718. errorMessage := errorCode
  719. headerCode := response.Header.Get("X-Amzn-ErrorType")
  720. var buff [1024]byte
  721. ringBuffer := smithyio.NewRingBuffer(buff[:])
  722. body := io.TeeReader(errorBody, ringBuffer)
  723. decoder := json.NewDecoder(body)
  724. decoder.UseNumber()
  725. bodyInfo, err := getProtocolErrorInfo(decoder)
  726. if err != nil {
  727. var snapshot bytes.Buffer
  728. io.Copy(&snapshot, ringBuffer)
  729. err = &smithy.DeserializationError{
  730. Err: fmt.Errorf("failed to decode response body, %w", err),
  731. Snapshot: snapshot.Bytes(),
  732. }
  733. return err
  734. }
  735. errorBody.Seek(0, io.SeekStart)
  736. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  737. errorCode = restjson.SanitizeErrorCode(typ)
  738. }
  739. if len(bodyInfo.Message) != 0 {
  740. errorMessage = bodyInfo.Message
  741. }
  742. switch {
  743. case strings.EqualFold("AccessDeniedException", errorCode):
  744. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  745. case strings.EqualFold("AccessDeniedForDependencyException", errorCode):
  746. return awsAwsjson11_deserializeErrorAccessDeniedForDependencyException(response, errorBody)
  747. case strings.EqualFold("AlreadyInOrganizationException", errorCode):
  748. return awsAwsjson11_deserializeErrorAlreadyInOrganizationException(response, errorBody)
  749. case strings.EqualFold("ConcurrentModificationException", errorCode):
  750. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  751. case strings.EqualFold("ConstraintViolationException", errorCode):
  752. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  753. case strings.EqualFold("InvalidInputException", errorCode):
  754. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  755. case strings.EqualFold("ServiceException", errorCode):
  756. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  757. case strings.EqualFold("TooManyRequestsException", errorCode):
  758. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  759. default:
  760. genericError := &smithy.GenericAPIError{
  761. Code: errorCode,
  762. Message: errorMessage,
  763. }
  764. return genericError
  765. }
  766. }
  767. type awsAwsjson11_deserializeOpCreateOrganizationalUnit struct {
  768. }
  769. func (*awsAwsjson11_deserializeOpCreateOrganizationalUnit) ID() string {
  770. return "OperationDeserializer"
  771. }
  772. func (m *awsAwsjson11_deserializeOpCreateOrganizationalUnit) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  773. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  774. ) {
  775. out, metadata, err = next.HandleDeserialize(ctx, in)
  776. if err != nil {
  777. return out, metadata, err
  778. }
  779. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  780. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  781. defer endTimer()
  782. defer span.End()
  783. response, ok := out.RawResponse.(*smithyhttp.Response)
  784. if !ok {
  785. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  786. }
  787. if response.StatusCode < 200 || response.StatusCode >= 300 {
  788. return out, metadata, awsAwsjson11_deserializeOpErrorCreateOrganizationalUnit(response, &metadata)
  789. }
  790. output := &CreateOrganizationalUnitOutput{}
  791. out.Result = output
  792. var buff [1024]byte
  793. ringBuffer := smithyio.NewRingBuffer(buff[:])
  794. body := io.TeeReader(response.Body, ringBuffer)
  795. decoder := json.NewDecoder(body)
  796. decoder.UseNumber()
  797. var shape interface{}
  798. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  799. var snapshot bytes.Buffer
  800. io.Copy(&snapshot, ringBuffer)
  801. err = &smithy.DeserializationError{
  802. Err: fmt.Errorf("failed to decode response body, %w", err),
  803. Snapshot: snapshot.Bytes(),
  804. }
  805. return out, metadata, err
  806. }
  807. err = awsAwsjson11_deserializeOpDocumentCreateOrganizationalUnitOutput(&output, shape)
  808. if err != nil {
  809. var snapshot bytes.Buffer
  810. io.Copy(&snapshot, ringBuffer)
  811. err = &smithy.DeserializationError{
  812. Err: fmt.Errorf("failed to decode response body, %w", err),
  813. Snapshot: snapshot.Bytes(),
  814. }
  815. return out, metadata, err
  816. }
  817. return out, metadata, err
  818. }
  819. func awsAwsjson11_deserializeOpErrorCreateOrganizationalUnit(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  820. var errorBuffer bytes.Buffer
  821. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  822. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  823. }
  824. errorBody := bytes.NewReader(errorBuffer.Bytes())
  825. errorCode := "UnknownError"
  826. errorMessage := errorCode
  827. headerCode := response.Header.Get("X-Amzn-ErrorType")
  828. var buff [1024]byte
  829. ringBuffer := smithyio.NewRingBuffer(buff[:])
  830. body := io.TeeReader(errorBody, ringBuffer)
  831. decoder := json.NewDecoder(body)
  832. decoder.UseNumber()
  833. bodyInfo, err := getProtocolErrorInfo(decoder)
  834. if err != nil {
  835. var snapshot bytes.Buffer
  836. io.Copy(&snapshot, ringBuffer)
  837. err = &smithy.DeserializationError{
  838. Err: fmt.Errorf("failed to decode response body, %w", err),
  839. Snapshot: snapshot.Bytes(),
  840. }
  841. return err
  842. }
  843. errorBody.Seek(0, io.SeekStart)
  844. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  845. errorCode = restjson.SanitizeErrorCode(typ)
  846. }
  847. if len(bodyInfo.Message) != 0 {
  848. errorMessage = bodyInfo.Message
  849. }
  850. switch {
  851. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  852. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  853. case strings.EqualFold("AccessDeniedException", errorCode):
  854. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  855. case strings.EqualFold("ConcurrentModificationException", errorCode):
  856. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  857. case strings.EqualFold("ConstraintViolationException", errorCode):
  858. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  859. case strings.EqualFold("DuplicateOrganizationalUnitException", errorCode):
  860. return awsAwsjson11_deserializeErrorDuplicateOrganizationalUnitException(response, errorBody)
  861. case strings.EqualFold("InvalidInputException", errorCode):
  862. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  863. case strings.EqualFold("ParentNotFoundException", errorCode):
  864. return awsAwsjson11_deserializeErrorParentNotFoundException(response, errorBody)
  865. case strings.EqualFold("ServiceException", errorCode):
  866. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  867. case strings.EqualFold("TooManyRequestsException", errorCode):
  868. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  869. default:
  870. genericError := &smithy.GenericAPIError{
  871. Code: errorCode,
  872. Message: errorMessage,
  873. }
  874. return genericError
  875. }
  876. }
  877. type awsAwsjson11_deserializeOpCreatePolicy struct {
  878. }
  879. func (*awsAwsjson11_deserializeOpCreatePolicy) ID() string {
  880. return "OperationDeserializer"
  881. }
  882. func (m *awsAwsjson11_deserializeOpCreatePolicy) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  883. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  884. ) {
  885. out, metadata, err = next.HandleDeserialize(ctx, in)
  886. if err != nil {
  887. return out, metadata, err
  888. }
  889. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  890. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  891. defer endTimer()
  892. defer span.End()
  893. response, ok := out.RawResponse.(*smithyhttp.Response)
  894. if !ok {
  895. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  896. }
  897. if response.StatusCode < 200 || response.StatusCode >= 300 {
  898. return out, metadata, awsAwsjson11_deserializeOpErrorCreatePolicy(response, &metadata)
  899. }
  900. output := &CreatePolicyOutput{}
  901. out.Result = output
  902. var buff [1024]byte
  903. ringBuffer := smithyio.NewRingBuffer(buff[:])
  904. body := io.TeeReader(response.Body, ringBuffer)
  905. decoder := json.NewDecoder(body)
  906. decoder.UseNumber()
  907. var shape interface{}
  908. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  909. var snapshot bytes.Buffer
  910. io.Copy(&snapshot, ringBuffer)
  911. err = &smithy.DeserializationError{
  912. Err: fmt.Errorf("failed to decode response body, %w", err),
  913. Snapshot: snapshot.Bytes(),
  914. }
  915. return out, metadata, err
  916. }
  917. err = awsAwsjson11_deserializeOpDocumentCreatePolicyOutput(&output, shape)
  918. if err != nil {
  919. var snapshot bytes.Buffer
  920. io.Copy(&snapshot, ringBuffer)
  921. err = &smithy.DeserializationError{
  922. Err: fmt.Errorf("failed to decode response body, %w", err),
  923. Snapshot: snapshot.Bytes(),
  924. }
  925. return out, metadata, err
  926. }
  927. return out, metadata, err
  928. }
  929. func awsAwsjson11_deserializeOpErrorCreatePolicy(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  930. var errorBuffer bytes.Buffer
  931. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  932. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  933. }
  934. errorBody := bytes.NewReader(errorBuffer.Bytes())
  935. errorCode := "UnknownError"
  936. errorMessage := errorCode
  937. headerCode := response.Header.Get("X-Amzn-ErrorType")
  938. var buff [1024]byte
  939. ringBuffer := smithyio.NewRingBuffer(buff[:])
  940. body := io.TeeReader(errorBody, ringBuffer)
  941. decoder := json.NewDecoder(body)
  942. decoder.UseNumber()
  943. bodyInfo, err := getProtocolErrorInfo(decoder)
  944. if err != nil {
  945. var snapshot bytes.Buffer
  946. io.Copy(&snapshot, ringBuffer)
  947. err = &smithy.DeserializationError{
  948. Err: fmt.Errorf("failed to decode response body, %w", err),
  949. Snapshot: snapshot.Bytes(),
  950. }
  951. return err
  952. }
  953. errorBody.Seek(0, io.SeekStart)
  954. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  955. errorCode = restjson.SanitizeErrorCode(typ)
  956. }
  957. if len(bodyInfo.Message) != 0 {
  958. errorMessage = bodyInfo.Message
  959. }
  960. switch {
  961. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  962. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  963. case strings.EqualFold("AccessDeniedException", errorCode):
  964. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  965. case strings.EqualFold("ConcurrentModificationException", errorCode):
  966. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  967. case strings.EqualFold("ConstraintViolationException", errorCode):
  968. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  969. case strings.EqualFold("DuplicatePolicyException", errorCode):
  970. return awsAwsjson11_deserializeErrorDuplicatePolicyException(response, errorBody)
  971. case strings.EqualFold("InvalidInputException", errorCode):
  972. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  973. case strings.EqualFold("MalformedPolicyDocumentException", errorCode):
  974. return awsAwsjson11_deserializeErrorMalformedPolicyDocumentException(response, errorBody)
  975. case strings.EqualFold("PolicyTypeNotAvailableForOrganizationException", errorCode):
  976. return awsAwsjson11_deserializeErrorPolicyTypeNotAvailableForOrganizationException(response, errorBody)
  977. case strings.EqualFold("ServiceException", errorCode):
  978. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  979. case strings.EqualFold("TooManyRequestsException", errorCode):
  980. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  981. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  982. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  983. default:
  984. genericError := &smithy.GenericAPIError{
  985. Code: errorCode,
  986. Message: errorMessage,
  987. }
  988. return genericError
  989. }
  990. }
  991. type awsAwsjson11_deserializeOpDeclineHandshake struct {
  992. }
  993. func (*awsAwsjson11_deserializeOpDeclineHandshake) ID() string {
  994. return "OperationDeserializer"
  995. }
  996. func (m *awsAwsjson11_deserializeOpDeclineHandshake) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  997. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  998. ) {
  999. out, metadata, err = next.HandleDeserialize(ctx, in)
  1000. if err != nil {
  1001. return out, metadata, err
  1002. }
  1003. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  1004. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  1005. defer endTimer()
  1006. defer span.End()
  1007. response, ok := out.RawResponse.(*smithyhttp.Response)
  1008. if !ok {
  1009. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  1010. }
  1011. if response.StatusCode < 200 || response.StatusCode >= 300 {
  1012. return out, metadata, awsAwsjson11_deserializeOpErrorDeclineHandshake(response, &metadata)
  1013. }
  1014. output := &DeclineHandshakeOutput{}
  1015. out.Result = output
  1016. var buff [1024]byte
  1017. ringBuffer := smithyio.NewRingBuffer(buff[:])
  1018. body := io.TeeReader(response.Body, ringBuffer)
  1019. decoder := json.NewDecoder(body)
  1020. decoder.UseNumber()
  1021. var shape interface{}
  1022. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  1023. var snapshot bytes.Buffer
  1024. io.Copy(&snapshot, ringBuffer)
  1025. err = &smithy.DeserializationError{
  1026. Err: fmt.Errorf("failed to decode response body, %w", err),
  1027. Snapshot: snapshot.Bytes(),
  1028. }
  1029. return out, metadata, err
  1030. }
  1031. err = awsAwsjson11_deserializeOpDocumentDeclineHandshakeOutput(&output, shape)
  1032. if err != nil {
  1033. var snapshot bytes.Buffer
  1034. io.Copy(&snapshot, ringBuffer)
  1035. err = &smithy.DeserializationError{
  1036. Err: fmt.Errorf("failed to decode response body, %w", err),
  1037. Snapshot: snapshot.Bytes(),
  1038. }
  1039. return out, metadata, err
  1040. }
  1041. return out, metadata, err
  1042. }
  1043. func awsAwsjson11_deserializeOpErrorDeclineHandshake(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  1044. var errorBuffer bytes.Buffer
  1045. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  1046. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  1047. }
  1048. errorBody := bytes.NewReader(errorBuffer.Bytes())
  1049. errorCode := "UnknownError"
  1050. errorMessage := errorCode
  1051. headerCode := response.Header.Get("X-Amzn-ErrorType")
  1052. var buff [1024]byte
  1053. ringBuffer := smithyio.NewRingBuffer(buff[:])
  1054. body := io.TeeReader(errorBody, ringBuffer)
  1055. decoder := json.NewDecoder(body)
  1056. decoder.UseNumber()
  1057. bodyInfo, err := getProtocolErrorInfo(decoder)
  1058. if err != nil {
  1059. var snapshot bytes.Buffer
  1060. io.Copy(&snapshot, ringBuffer)
  1061. err = &smithy.DeserializationError{
  1062. Err: fmt.Errorf("failed to decode response body, %w", err),
  1063. Snapshot: snapshot.Bytes(),
  1064. }
  1065. return err
  1066. }
  1067. errorBody.Seek(0, io.SeekStart)
  1068. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  1069. errorCode = restjson.SanitizeErrorCode(typ)
  1070. }
  1071. if len(bodyInfo.Message) != 0 {
  1072. errorMessage = bodyInfo.Message
  1073. }
  1074. switch {
  1075. case strings.EqualFold("AccessDeniedException", errorCode):
  1076. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  1077. case strings.EqualFold("ConcurrentModificationException", errorCode):
  1078. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  1079. case strings.EqualFold("HandshakeAlreadyInStateException", errorCode):
  1080. return awsAwsjson11_deserializeErrorHandshakeAlreadyInStateException(response, errorBody)
  1081. case strings.EqualFold("HandshakeNotFoundException", errorCode):
  1082. return awsAwsjson11_deserializeErrorHandshakeNotFoundException(response, errorBody)
  1083. case strings.EqualFold("InvalidHandshakeTransitionException", errorCode):
  1084. return awsAwsjson11_deserializeErrorInvalidHandshakeTransitionException(response, errorBody)
  1085. case strings.EqualFold("InvalidInputException", errorCode):
  1086. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  1087. case strings.EqualFold("ServiceException", errorCode):
  1088. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  1089. case strings.EqualFold("TooManyRequestsException", errorCode):
  1090. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  1091. default:
  1092. genericError := &smithy.GenericAPIError{
  1093. Code: errorCode,
  1094. Message: errorMessage,
  1095. }
  1096. return genericError
  1097. }
  1098. }
  1099. type awsAwsjson11_deserializeOpDeleteOrganization struct {
  1100. }
  1101. func (*awsAwsjson11_deserializeOpDeleteOrganization) ID() string {
  1102. return "OperationDeserializer"
  1103. }
  1104. func (m *awsAwsjson11_deserializeOpDeleteOrganization) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  1105. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  1106. ) {
  1107. out, metadata, err = next.HandleDeserialize(ctx, in)
  1108. if err != nil {
  1109. return out, metadata, err
  1110. }
  1111. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  1112. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  1113. defer endTimer()
  1114. defer span.End()
  1115. response, ok := out.RawResponse.(*smithyhttp.Response)
  1116. if !ok {
  1117. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  1118. }
  1119. if response.StatusCode < 200 || response.StatusCode >= 300 {
  1120. return out, metadata, awsAwsjson11_deserializeOpErrorDeleteOrganization(response, &metadata)
  1121. }
  1122. output := &DeleteOrganizationOutput{}
  1123. out.Result = output
  1124. if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
  1125. return out, metadata, &smithy.DeserializationError{
  1126. Err: fmt.Errorf("failed to discard response body, %w", err),
  1127. }
  1128. }
  1129. return out, metadata, err
  1130. }
  1131. func awsAwsjson11_deserializeOpErrorDeleteOrganization(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  1132. var errorBuffer bytes.Buffer
  1133. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  1134. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  1135. }
  1136. errorBody := bytes.NewReader(errorBuffer.Bytes())
  1137. errorCode := "UnknownError"
  1138. errorMessage := errorCode
  1139. headerCode := response.Header.Get("X-Amzn-ErrorType")
  1140. var buff [1024]byte
  1141. ringBuffer := smithyio.NewRingBuffer(buff[:])
  1142. body := io.TeeReader(errorBody, ringBuffer)
  1143. decoder := json.NewDecoder(body)
  1144. decoder.UseNumber()
  1145. bodyInfo, err := getProtocolErrorInfo(decoder)
  1146. if err != nil {
  1147. var snapshot bytes.Buffer
  1148. io.Copy(&snapshot, ringBuffer)
  1149. err = &smithy.DeserializationError{
  1150. Err: fmt.Errorf("failed to decode response body, %w", err),
  1151. Snapshot: snapshot.Bytes(),
  1152. }
  1153. return err
  1154. }
  1155. errorBody.Seek(0, io.SeekStart)
  1156. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  1157. errorCode = restjson.SanitizeErrorCode(typ)
  1158. }
  1159. if len(bodyInfo.Message) != 0 {
  1160. errorMessage = bodyInfo.Message
  1161. }
  1162. switch {
  1163. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  1164. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  1165. case strings.EqualFold("AccessDeniedException", errorCode):
  1166. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  1167. case strings.EqualFold("ConcurrentModificationException", errorCode):
  1168. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  1169. case strings.EqualFold("ConstraintViolationException", errorCode):
  1170. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  1171. case strings.EqualFold("InvalidInputException", errorCode):
  1172. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  1173. case strings.EqualFold("OrganizationNotEmptyException", errorCode):
  1174. return awsAwsjson11_deserializeErrorOrganizationNotEmptyException(response, errorBody)
  1175. case strings.EqualFold("ServiceException", errorCode):
  1176. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  1177. case strings.EqualFold("TooManyRequestsException", errorCode):
  1178. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  1179. default:
  1180. genericError := &smithy.GenericAPIError{
  1181. Code: errorCode,
  1182. Message: errorMessage,
  1183. }
  1184. return genericError
  1185. }
  1186. }
  1187. type awsAwsjson11_deserializeOpDeleteOrganizationalUnit struct {
  1188. }
  1189. func (*awsAwsjson11_deserializeOpDeleteOrganizationalUnit) ID() string {
  1190. return "OperationDeserializer"
  1191. }
  1192. func (m *awsAwsjson11_deserializeOpDeleteOrganizationalUnit) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  1193. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  1194. ) {
  1195. out, metadata, err = next.HandleDeserialize(ctx, in)
  1196. if err != nil {
  1197. return out, metadata, err
  1198. }
  1199. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  1200. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  1201. defer endTimer()
  1202. defer span.End()
  1203. response, ok := out.RawResponse.(*smithyhttp.Response)
  1204. if !ok {
  1205. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  1206. }
  1207. if response.StatusCode < 200 || response.StatusCode >= 300 {
  1208. return out, metadata, awsAwsjson11_deserializeOpErrorDeleteOrganizationalUnit(response, &metadata)
  1209. }
  1210. output := &DeleteOrganizationalUnitOutput{}
  1211. out.Result = output
  1212. if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
  1213. return out, metadata, &smithy.DeserializationError{
  1214. Err: fmt.Errorf("failed to discard response body, %w", err),
  1215. }
  1216. }
  1217. return out, metadata, err
  1218. }
  1219. func awsAwsjson11_deserializeOpErrorDeleteOrganizationalUnit(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  1220. var errorBuffer bytes.Buffer
  1221. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  1222. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  1223. }
  1224. errorBody := bytes.NewReader(errorBuffer.Bytes())
  1225. errorCode := "UnknownError"
  1226. errorMessage := errorCode
  1227. headerCode := response.Header.Get("X-Amzn-ErrorType")
  1228. var buff [1024]byte
  1229. ringBuffer := smithyio.NewRingBuffer(buff[:])
  1230. body := io.TeeReader(errorBody, ringBuffer)
  1231. decoder := json.NewDecoder(body)
  1232. decoder.UseNumber()
  1233. bodyInfo, err := getProtocolErrorInfo(decoder)
  1234. if err != nil {
  1235. var snapshot bytes.Buffer
  1236. io.Copy(&snapshot, ringBuffer)
  1237. err = &smithy.DeserializationError{
  1238. Err: fmt.Errorf("failed to decode response body, %w", err),
  1239. Snapshot: snapshot.Bytes(),
  1240. }
  1241. return err
  1242. }
  1243. errorBody.Seek(0, io.SeekStart)
  1244. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  1245. errorCode = restjson.SanitizeErrorCode(typ)
  1246. }
  1247. if len(bodyInfo.Message) != 0 {
  1248. errorMessage = bodyInfo.Message
  1249. }
  1250. switch {
  1251. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  1252. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  1253. case strings.EqualFold("AccessDeniedException", errorCode):
  1254. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  1255. case strings.EqualFold("ConcurrentModificationException", errorCode):
  1256. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  1257. case strings.EqualFold("InvalidInputException", errorCode):
  1258. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  1259. case strings.EqualFold("OrganizationalUnitNotEmptyException", errorCode):
  1260. return awsAwsjson11_deserializeErrorOrganizationalUnitNotEmptyException(response, errorBody)
  1261. case strings.EqualFold("OrganizationalUnitNotFoundException", errorCode):
  1262. return awsAwsjson11_deserializeErrorOrganizationalUnitNotFoundException(response, errorBody)
  1263. case strings.EqualFold("ServiceException", errorCode):
  1264. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  1265. case strings.EqualFold("TooManyRequestsException", errorCode):
  1266. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  1267. default:
  1268. genericError := &smithy.GenericAPIError{
  1269. Code: errorCode,
  1270. Message: errorMessage,
  1271. }
  1272. return genericError
  1273. }
  1274. }
  1275. type awsAwsjson11_deserializeOpDeletePolicy struct {
  1276. }
  1277. func (*awsAwsjson11_deserializeOpDeletePolicy) ID() string {
  1278. return "OperationDeserializer"
  1279. }
  1280. func (m *awsAwsjson11_deserializeOpDeletePolicy) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  1281. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  1282. ) {
  1283. out, metadata, err = next.HandleDeserialize(ctx, in)
  1284. if err != nil {
  1285. return out, metadata, err
  1286. }
  1287. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  1288. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  1289. defer endTimer()
  1290. defer span.End()
  1291. response, ok := out.RawResponse.(*smithyhttp.Response)
  1292. if !ok {
  1293. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  1294. }
  1295. if response.StatusCode < 200 || response.StatusCode >= 300 {
  1296. return out, metadata, awsAwsjson11_deserializeOpErrorDeletePolicy(response, &metadata)
  1297. }
  1298. output := &DeletePolicyOutput{}
  1299. out.Result = output
  1300. if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
  1301. return out, metadata, &smithy.DeserializationError{
  1302. Err: fmt.Errorf("failed to discard response body, %w", err),
  1303. }
  1304. }
  1305. return out, metadata, err
  1306. }
  1307. func awsAwsjson11_deserializeOpErrorDeletePolicy(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  1308. var errorBuffer bytes.Buffer
  1309. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  1310. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  1311. }
  1312. errorBody := bytes.NewReader(errorBuffer.Bytes())
  1313. errorCode := "UnknownError"
  1314. errorMessage := errorCode
  1315. headerCode := response.Header.Get("X-Amzn-ErrorType")
  1316. var buff [1024]byte
  1317. ringBuffer := smithyio.NewRingBuffer(buff[:])
  1318. body := io.TeeReader(errorBody, ringBuffer)
  1319. decoder := json.NewDecoder(body)
  1320. decoder.UseNumber()
  1321. bodyInfo, err := getProtocolErrorInfo(decoder)
  1322. if err != nil {
  1323. var snapshot bytes.Buffer
  1324. io.Copy(&snapshot, ringBuffer)
  1325. err = &smithy.DeserializationError{
  1326. Err: fmt.Errorf("failed to decode response body, %w", err),
  1327. Snapshot: snapshot.Bytes(),
  1328. }
  1329. return err
  1330. }
  1331. errorBody.Seek(0, io.SeekStart)
  1332. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  1333. errorCode = restjson.SanitizeErrorCode(typ)
  1334. }
  1335. if len(bodyInfo.Message) != 0 {
  1336. errorMessage = bodyInfo.Message
  1337. }
  1338. switch {
  1339. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  1340. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  1341. case strings.EqualFold("AccessDeniedException", errorCode):
  1342. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  1343. case strings.EqualFold("ConcurrentModificationException", errorCode):
  1344. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  1345. case strings.EqualFold("InvalidInputException", errorCode):
  1346. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  1347. case strings.EqualFold("PolicyInUseException", errorCode):
  1348. return awsAwsjson11_deserializeErrorPolicyInUseException(response, errorBody)
  1349. case strings.EqualFold("PolicyNotFoundException", errorCode):
  1350. return awsAwsjson11_deserializeErrorPolicyNotFoundException(response, errorBody)
  1351. case strings.EqualFold("ServiceException", errorCode):
  1352. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  1353. case strings.EqualFold("TooManyRequestsException", errorCode):
  1354. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  1355. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  1356. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  1357. default:
  1358. genericError := &smithy.GenericAPIError{
  1359. Code: errorCode,
  1360. Message: errorMessage,
  1361. }
  1362. return genericError
  1363. }
  1364. }
  1365. type awsAwsjson11_deserializeOpDeleteResourcePolicy struct {
  1366. }
  1367. func (*awsAwsjson11_deserializeOpDeleteResourcePolicy) ID() string {
  1368. return "OperationDeserializer"
  1369. }
  1370. func (m *awsAwsjson11_deserializeOpDeleteResourcePolicy) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  1371. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  1372. ) {
  1373. out, metadata, err = next.HandleDeserialize(ctx, in)
  1374. if err != nil {
  1375. return out, metadata, err
  1376. }
  1377. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  1378. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  1379. defer endTimer()
  1380. defer span.End()
  1381. response, ok := out.RawResponse.(*smithyhttp.Response)
  1382. if !ok {
  1383. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  1384. }
  1385. if response.StatusCode < 200 || response.StatusCode >= 300 {
  1386. return out, metadata, awsAwsjson11_deserializeOpErrorDeleteResourcePolicy(response, &metadata)
  1387. }
  1388. output := &DeleteResourcePolicyOutput{}
  1389. out.Result = output
  1390. if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
  1391. return out, metadata, &smithy.DeserializationError{
  1392. Err: fmt.Errorf("failed to discard response body, %w", err),
  1393. }
  1394. }
  1395. return out, metadata, err
  1396. }
  1397. func awsAwsjson11_deserializeOpErrorDeleteResourcePolicy(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  1398. var errorBuffer bytes.Buffer
  1399. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  1400. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  1401. }
  1402. errorBody := bytes.NewReader(errorBuffer.Bytes())
  1403. errorCode := "UnknownError"
  1404. errorMessage := errorCode
  1405. headerCode := response.Header.Get("X-Amzn-ErrorType")
  1406. var buff [1024]byte
  1407. ringBuffer := smithyio.NewRingBuffer(buff[:])
  1408. body := io.TeeReader(errorBody, ringBuffer)
  1409. decoder := json.NewDecoder(body)
  1410. decoder.UseNumber()
  1411. bodyInfo, err := getProtocolErrorInfo(decoder)
  1412. if err != nil {
  1413. var snapshot bytes.Buffer
  1414. io.Copy(&snapshot, ringBuffer)
  1415. err = &smithy.DeserializationError{
  1416. Err: fmt.Errorf("failed to decode response body, %w", err),
  1417. Snapshot: snapshot.Bytes(),
  1418. }
  1419. return err
  1420. }
  1421. errorBody.Seek(0, io.SeekStart)
  1422. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  1423. errorCode = restjson.SanitizeErrorCode(typ)
  1424. }
  1425. if len(bodyInfo.Message) != 0 {
  1426. errorMessage = bodyInfo.Message
  1427. }
  1428. switch {
  1429. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  1430. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  1431. case strings.EqualFold("AccessDeniedException", errorCode):
  1432. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  1433. case strings.EqualFold("ConcurrentModificationException", errorCode):
  1434. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  1435. case strings.EqualFold("ConstraintViolationException", errorCode):
  1436. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  1437. case strings.EqualFold("ResourcePolicyNotFoundException", errorCode):
  1438. return awsAwsjson11_deserializeErrorResourcePolicyNotFoundException(response, errorBody)
  1439. case strings.EqualFold("ServiceException", errorCode):
  1440. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  1441. case strings.EqualFold("TooManyRequestsException", errorCode):
  1442. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  1443. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  1444. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  1445. default:
  1446. genericError := &smithy.GenericAPIError{
  1447. Code: errorCode,
  1448. Message: errorMessage,
  1449. }
  1450. return genericError
  1451. }
  1452. }
  1453. type awsAwsjson11_deserializeOpDeregisterDelegatedAdministrator struct {
  1454. }
  1455. func (*awsAwsjson11_deserializeOpDeregisterDelegatedAdministrator) ID() string {
  1456. return "OperationDeserializer"
  1457. }
  1458. func (m *awsAwsjson11_deserializeOpDeregisterDelegatedAdministrator) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  1459. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  1460. ) {
  1461. out, metadata, err = next.HandleDeserialize(ctx, in)
  1462. if err != nil {
  1463. return out, metadata, err
  1464. }
  1465. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  1466. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  1467. defer endTimer()
  1468. defer span.End()
  1469. response, ok := out.RawResponse.(*smithyhttp.Response)
  1470. if !ok {
  1471. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  1472. }
  1473. if response.StatusCode < 200 || response.StatusCode >= 300 {
  1474. return out, metadata, awsAwsjson11_deserializeOpErrorDeregisterDelegatedAdministrator(response, &metadata)
  1475. }
  1476. output := &DeregisterDelegatedAdministratorOutput{}
  1477. out.Result = output
  1478. if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
  1479. return out, metadata, &smithy.DeserializationError{
  1480. Err: fmt.Errorf("failed to discard response body, %w", err),
  1481. }
  1482. }
  1483. return out, metadata, err
  1484. }
  1485. func awsAwsjson11_deserializeOpErrorDeregisterDelegatedAdministrator(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  1486. var errorBuffer bytes.Buffer
  1487. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  1488. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  1489. }
  1490. errorBody := bytes.NewReader(errorBuffer.Bytes())
  1491. errorCode := "UnknownError"
  1492. errorMessage := errorCode
  1493. headerCode := response.Header.Get("X-Amzn-ErrorType")
  1494. var buff [1024]byte
  1495. ringBuffer := smithyio.NewRingBuffer(buff[:])
  1496. body := io.TeeReader(errorBody, ringBuffer)
  1497. decoder := json.NewDecoder(body)
  1498. decoder.UseNumber()
  1499. bodyInfo, err := getProtocolErrorInfo(decoder)
  1500. if err != nil {
  1501. var snapshot bytes.Buffer
  1502. io.Copy(&snapshot, ringBuffer)
  1503. err = &smithy.DeserializationError{
  1504. Err: fmt.Errorf("failed to decode response body, %w", err),
  1505. Snapshot: snapshot.Bytes(),
  1506. }
  1507. return err
  1508. }
  1509. errorBody.Seek(0, io.SeekStart)
  1510. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  1511. errorCode = restjson.SanitizeErrorCode(typ)
  1512. }
  1513. if len(bodyInfo.Message) != 0 {
  1514. errorMessage = bodyInfo.Message
  1515. }
  1516. switch {
  1517. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  1518. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  1519. case strings.EqualFold("AccessDeniedException", errorCode):
  1520. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  1521. case strings.EqualFold("AccountNotFoundException", errorCode):
  1522. return awsAwsjson11_deserializeErrorAccountNotFoundException(response, errorBody)
  1523. case strings.EqualFold("AccountNotRegisteredException", errorCode):
  1524. return awsAwsjson11_deserializeErrorAccountNotRegisteredException(response, errorBody)
  1525. case strings.EqualFold("ConcurrentModificationException", errorCode):
  1526. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  1527. case strings.EqualFold("ConstraintViolationException", errorCode):
  1528. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  1529. case strings.EqualFold("InvalidInputException", errorCode):
  1530. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  1531. case strings.EqualFold("ServiceException", errorCode):
  1532. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  1533. case strings.EqualFold("TooManyRequestsException", errorCode):
  1534. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  1535. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  1536. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  1537. default:
  1538. genericError := &smithy.GenericAPIError{
  1539. Code: errorCode,
  1540. Message: errorMessage,
  1541. }
  1542. return genericError
  1543. }
  1544. }
  1545. type awsAwsjson11_deserializeOpDescribeAccount struct {
  1546. }
  1547. func (*awsAwsjson11_deserializeOpDescribeAccount) ID() string {
  1548. return "OperationDeserializer"
  1549. }
  1550. func (m *awsAwsjson11_deserializeOpDescribeAccount) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  1551. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  1552. ) {
  1553. out, metadata, err = next.HandleDeserialize(ctx, in)
  1554. if err != nil {
  1555. return out, metadata, err
  1556. }
  1557. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  1558. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  1559. defer endTimer()
  1560. defer span.End()
  1561. response, ok := out.RawResponse.(*smithyhttp.Response)
  1562. if !ok {
  1563. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  1564. }
  1565. if response.StatusCode < 200 || response.StatusCode >= 300 {
  1566. return out, metadata, awsAwsjson11_deserializeOpErrorDescribeAccount(response, &metadata)
  1567. }
  1568. output := &DescribeAccountOutput{}
  1569. out.Result = output
  1570. var buff [1024]byte
  1571. ringBuffer := smithyio.NewRingBuffer(buff[:])
  1572. body := io.TeeReader(response.Body, ringBuffer)
  1573. decoder := json.NewDecoder(body)
  1574. decoder.UseNumber()
  1575. var shape interface{}
  1576. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  1577. var snapshot bytes.Buffer
  1578. io.Copy(&snapshot, ringBuffer)
  1579. err = &smithy.DeserializationError{
  1580. Err: fmt.Errorf("failed to decode response body, %w", err),
  1581. Snapshot: snapshot.Bytes(),
  1582. }
  1583. return out, metadata, err
  1584. }
  1585. err = awsAwsjson11_deserializeOpDocumentDescribeAccountOutput(&output, shape)
  1586. if err != nil {
  1587. var snapshot bytes.Buffer
  1588. io.Copy(&snapshot, ringBuffer)
  1589. err = &smithy.DeserializationError{
  1590. Err: fmt.Errorf("failed to decode response body, %w", err),
  1591. Snapshot: snapshot.Bytes(),
  1592. }
  1593. return out, metadata, err
  1594. }
  1595. return out, metadata, err
  1596. }
  1597. func awsAwsjson11_deserializeOpErrorDescribeAccount(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  1598. var errorBuffer bytes.Buffer
  1599. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  1600. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  1601. }
  1602. errorBody := bytes.NewReader(errorBuffer.Bytes())
  1603. errorCode := "UnknownError"
  1604. errorMessage := errorCode
  1605. headerCode := response.Header.Get("X-Amzn-ErrorType")
  1606. var buff [1024]byte
  1607. ringBuffer := smithyio.NewRingBuffer(buff[:])
  1608. body := io.TeeReader(errorBody, ringBuffer)
  1609. decoder := json.NewDecoder(body)
  1610. decoder.UseNumber()
  1611. bodyInfo, err := getProtocolErrorInfo(decoder)
  1612. if err != nil {
  1613. var snapshot bytes.Buffer
  1614. io.Copy(&snapshot, ringBuffer)
  1615. err = &smithy.DeserializationError{
  1616. Err: fmt.Errorf("failed to decode response body, %w", err),
  1617. Snapshot: snapshot.Bytes(),
  1618. }
  1619. return err
  1620. }
  1621. errorBody.Seek(0, io.SeekStart)
  1622. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  1623. errorCode = restjson.SanitizeErrorCode(typ)
  1624. }
  1625. if len(bodyInfo.Message) != 0 {
  1626. errorMessage = bodyInfo.Message
  1627. }
  1628. switch {
  1629. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  1630. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  1631. case strings.EqualFold("AccessDeniedException", errorCode):
  1632. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  1633. case strings.EqualFold("AccountNotFoundException", errorCode):
  1634. return awsAwsjson11_deserializeErrorAccountNotFoundException(response, errorBody)
  1635. case strings.EqualFold("InvalidInputException", errorCode):
  1636. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  1637. case strings.EqualFold("ServiceException", errorCode):
  1638. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  1639. case strings.EqualFold("TooManyRequestsException", errorCode):
  1640. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  1641. default:
  1642. genericError := &smithy.GenericAPIError{
  1643. Code: errorCode,
  1644. Message: errorMessage,
  1645. }
  1646. return genericError
  1647. }
  1648. }
  1649. type awsAwsjson11_deserializeOpDescribeCreateAccountStatus struct {
  1650. }
  1651. func (*awsAwsjson11_deserializeOpDescribeCreateAccountStatus) ID() string {
  1652. return "OperationDeserializer"
  1653. }
  1654. func (m *awsAwsjson11_deserializeOpDescribeCreateAccountStatus) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  1655. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  1656. ) {
  1657. out, metadata, err = next.HandleDeserialize(ctx, in)
  1658. if err != nil {
  1659. return out, metadata, err
  1660. }
  1661. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  1662. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  1663. defer endTimer()
  1664. defer span.End()
  1665. response, ok := out.RawResponse.(*smithyhttp.Response)
  1666. if !ok {
  1667. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  1668. }
  1669. if response.StatusCode < 200 || response.StatusCode >= 300 {
  1670. return out, metadata, awsAwsjson11_deserializeOpErrorDescribeCreateAccountStatus(response, &metadata)
  1671. }
  1672. output := &DescribeCreateAccountStatusOutput{}
  1673. out.Result = output
  1674. var buff [1024]byte
  1675. ringBuffer := smithyio.NewRingBuffer(buff[:])
  1676. body := io.TeeReader(response.Body, ringBuffer)
  1677. decoder := json.NewDecoder(body)
  1678. decoder.UseNumber()
  1679. var shape interface{}
  1680. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  1681. var snapshot bytes.Buffer
  1682. io.Copy(&snapshot, ringBuffer)
  1683. err = &smithy.DeserializationError{
  1684. Err: fmt.Errorf("failed to decode response body, %w", err),
  1685. Snapshot: snapshot.Bytes(),
  1686. }
  1687. return out, metadata, err
  1688. }
  1689. err = awsAwsjson11_deserializeOpDocumentDescribeCreateAccountStatusOutput(&output, shape)
  1690. if err != nil {
  1691. var snapshot bytes.Buffer
  1692. io.Copy(&snapshot, ringBuffer)
  1693. err = &smithy.DeserializationError{
  1694. Err: fmt.Errorf("failed to decode response body, %w", err),
  1695. Snapshot: snapshot.Bytes(),
  1696. }
  1697. return out, metadata, err
  1698. }
  1699. return out, metadata, err
  1700. }
  1701. func awsAwsjson11_deserializeOpErrorDescribeCreateAccountStatus(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  1702. var errorBuffer bytes.Buffer
  1703. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  1704. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  1705. }
  1706. errorBody := bytes.NewReader(errorBuffer.Bytes())
  1707. errorCode := "UnknownError"
  1708. errorMessage := errorCode
  1709. headerCode := response.Header.Get("X-Amzn-ErrorType")
  1710. var buff [1024]byte
  1711. ringBuffer := smithyio.NewRingBuffer(buff[:])
  1712. body := io.TeeReader(errorBody, ringBuffer)
  1713. decoder := json.NewDecoder(body)
  1714. decoder.UseNumber()
  1715. bodyInfo, err := getProtocolErrorInfo(decoder)
  1716. if err != nil {
  1717. var snapshot bytes.Buffer
  1718. io.Copy(&snapshot, ringBuffer)
  1719. err = &smithy.DeserializationError{
  1720. Err: fmt.Errorf("failed to decode response body, %w", err),
  1721. Snapshot: snapshot.Bytes(),
  1722. }
  1723. return err
  1724. }
  1725. errorBody.Seek(0, io.SeekStart)
  1726. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  1727. errorCode = restjson.SanitizeErrorCode(typ)
  1728. }
  1729. if len(bodyInfo.Message) != 0 {
  1730. errorMessage = bodyInfo.Message
  1731. }
  1732. switch {
  1733. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  1734. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  1735. case strings.EqualFold("AccessDeniedException", errorCode):
  1736. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  1737. case strings.EqualFold("CreateAccountStatusNotFoundException", errorCode):
  1738. return awsAwsjson11_deserializeErrorCreateAccountStatusNotFoundException(response, errorBody)
  1739. case strings.EqualFold("InvalidInputException", errorCode):
  1740. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  1741. case strings.EqualFold("ServiceException", errorCode):
  1742. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  1743. case strings.EqualFold("TooManyRequestsException", errorCode):
  1744. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  1745. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  1746. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  1747. default:
  1748. genericError := &smithy.GenericAPIError{
  1749. Code: errorCode,
  1750. Message: errorMessage,
  1751. }
  1752. return genericError
  1753. }
  1754. }
  1755. type awsAwsjson11_deserializeOpDescribeEffectivePolicy struct {
  1756. }
  1757. func (*awsAwsjson11_deserializeOpDescribeEffectivePolicy) ID() string {
  1758. return "OperationDeserializer"
  1759. }
  1760. func (m *awsAwsjson11_deserializeOpDescribeEffectivePolicy) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  1761. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  1762. ) {
  1763. out, metadata, err = next.HandleDeserialize(ctx, in)
  1764. if err != nil {
  1765. return out, metadata, err
  1766. }
  1767. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  1768. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  1769. defer endTimer()
  1770. defer span.End()
  1771. response, ok := out.RawResponse.(*smithyhttp.Response)
  1772. if !ok {
  1773. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  1774. }
  1775. if response.StatusCode < 200 || response.StatusCode >= 300 {
  1776. return out, metadata, awsAwsjson11_deserializeOpErrorDescribeEffectivePolicy(response, &metadata)
  1777. }
  1778. output := &DescribeEffectivePolicyOutput{}
  1779. out.Result = output
  1780. var buff [1024]byte
  1781. ringBuffer := smithyio.NewRingBuffer(buff[:])
  1782. body := io.TeeReader(response.Body, ringBuffer)
  1783. decoder := json.NewDecoder(body)
  1784. decoder.UseNumber()
  1785. var shape interface{}
  1786. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  1787. var snapshot bytes.Buffer
  1788. io.Copy(&snapshot, ringBuffer)
  1789. err = &smithy.DeserializationError{
  1790. Err: fmt.Errorf("failed to decode response body, %w", err),
  1791. Snapshot: snapshot.Bytes(),
  1792. }
  1793. return out, metadata, err
  1794. }
  1795. err = awsAwsjson11_deserializeOpDocumentDescribeEffectivePolicyOutput(&output, shape)
  1796. if err != nil {
  1797. var snapshot bytes.Buffer
  1798. io.Copy(&snapshot, ringBuffer)
  1799. err = &smithy.DeserializationError{
  1800. Err: fmt.Errorf("failed to decode response body, %w", err),
  1801. Snapshot: snapshot.Bytes(),
  1802. }
  1803. return out, metadata, err
  1804. }
  1805. return out, metadata, err
  1806. }
  1807. func awsAwsjson11_deserializeOpErrorDescribeEffectivePolicy(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  1808. var errorBuffer bytes.Buffer
  1809. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  1810. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  1811. }
  1812. errorBody := bytes.NewReader(errorBuffer.Bytes())
  1813. errorCode := "UnknownError"
  1814. errorMessage := errorCode
  1815. headerCode := response.Header.Get("X-Amzn-ErrorType")
  1816. var buff [1024]byte
  1817. ringBuffer := smithyio.NewRingBuffer(buff[:])
  1818. body := io.TeeReader(errorBody, ringBuffer)
  1819. decoder := json.NewDecoder(body)
  1820. decoder.UseNumber()
  1821. bodyInfo, err := getProtocolErrorInfo(decoder)
  1822. if err != nil {
  1823. var snapshot bytes.Buffer
  1824. io.Copy(&snapshot, ringBuffer)
  1825. err = &smithy.DeserializationError{
  1826. Err: fmt.Errorf("failed to decode response body, %w", err),
  1827. Snapshot: snapshot.Bytes(),
  1828. }
  1829. return err
  1830. }
  1831. errorBody.Seek(0, io.SeekStart)
  1832. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  1833. errorCode = restjson.SanitizeErrorCode(typ)
  1834. }
  1835. if len(bodyInfo.Message) != 0 {
  1836. errorMessage = bodyInfo.Message
  1837. }
  1838. switch {
  1839. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  1840. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  1841. case strings.EqualFold("AccessDeniedException", errorCode):
  1842. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  1843. case strings.EqualFold("ConstraintViolationException", errorCode):
  1844. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  1845. case strings.EqualFold("EffectivePolicyNotFoundException", errorCode):
  1846. return awsAwsjson11_deserializeErrorEffectivePolicyNotFoundException(response, errorBody)
  1847. case strings.EqualFold("InvalidInputException", errorCode):
  1848. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  1849. case strings.EqualFold("ServiceException", errorCode):
  1850. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  1851. case strings.EqualFold("TargetNotFoundException", errorCode):
  1852. return awsAwsjson11_deserializeErrorTargetNotFoundException(response, errorBody)
  1853. case strings.EqualFold("TooManyRequestsException", errorCode):
  1854. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  1855. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  1856. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  1857. default:
  1858. genericError := &smithy.GenericAPIError{
  1859. Code: errorCode,
  1860. Message: errorMessage,
  1861. }
  1862. return genericError
  1863. }
  1864. }
  1865. type awsAwsjson11_deserializeOpDescribeHandshake struct {
  1866. }
  1867. func (*awsAwsjson11_deserializeOpDescribeHandshake) ID() string {
  1868. return "OperationDeserializer"
  1869. }
  1870. func (m *awsAwsjson11_deserializeOpDescribeHandshake) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  1871. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  1872. ) {
  1873. out, metadata, err = next.HandleDeserialize(ctx, in)
  1874. if err != nil {
  1875. return out, metadata, err
  1876. }
  1877. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  1878. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  1879. defer endTimer()
  1880. defer span.End()
  1881. response, ok := out.RawResponse.(*smithyhttp.Response)
  1882. if !ok {
  1883. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  1884. }
  1885. if response.StatusCode < 200 || response.StatusCode >= 300 {
  1886. return out, metadata, awsAwsjson11_deserializeOpErrorDescribeHandshake(response, &metadata)
  1887. }
  1888. output := &DescribeHandshakeOutput{}
  1889. out.Result = output
  1890. var buff [1024]byte
  1891. ringBuffer := smithyio.NewRingBuffer(buff[:])
  1892. body := io.TeeReader(response.Body, ringBuffer)
  1893. decoder := json.NewDecoder(body)
  1894. decoder.UseNumber()
  1895. var shape interface{}
  1896. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  1897. var snapshot bytes.Buffer
  1898. io.Copy(&snapshot, ringBuffer)
  1899. err = &smithy.DeserializationError{
  1900. Err: fmt.Errorf("failed to decode response body, %w", err),
  1901. Snapshot: snapshot.Bytes(),
  1902. }
  1903. return out, metadata, err
  1904. }
  1905. err = awsAwsjson11_deserializeOpDocumentDescribeHandshakeOutput(&output, shape)
  1906. if err != nil {
  1907. var snapshot bytes.Buffer
  1908. io.Copy(&snapshot, ringBuffer)
  1909. err = &smithy.DeserializationError{
  1910. Err: fmt.Errorf("failed to decode response body, %w", err),
  1911. Snapshot: snapshot.Bytes(),
  1912. }
  1913. return out, metadata, err
  1914. }
  1915. return out, metadata, err
  1916. }
  1917. func awsAwsjson11_deserializeOpErrorDescribeHandshake(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  1918. var errorBuffer bytes.Buffer
  1919. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  1920. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  1921. }
  1922. errorBody := bytes.NewReader(errorBuffer.Bytes())
  1923. errorCode := "UnknownError"
  1924. errorMessage := errorCode
  1925. headerCode := response.Header.Get("X-Amzn-ErrorType")
  1926. var buff [1024]byte
  1927. ringBuffer := smithyio.NewRingBuffer(buff[:])
  1928. body := io.TeeReader(errorBody, ringBuffer)
  1929. decoder := json.NewDecoder(body)
  1930. decoder.UseNumber()
  1931. bodyInfo, err := getProtocolErrorInfo(decoder)
  1932. if err != nil {
  1933. var snapshot bytes.Buffer
  1934. io.Copy(&snapshot, ringBuffer)
  1935. err = &smithy.DeserializationError{
  1936. Err: fmt.Errorf("failed to decode response body, %w", err),
  1937. Snapshot: snapshot.Bytes(),
  1938. }
  1939. return err
  1940. }
  1941. errorBody.Seek(0, io.SeekStart)
  1942. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  1943. errorCode = restjson.SanitizeErrorCode(typ)
  1944. }
  1945. if len(bodyInfo.Message) != 0 {
  1946. errorMessage = bodyInfo.Message
  1947. }
  1948. switch {
  1949. case strings.EqualFold("AccessDeniedException", errorCode):
  1950. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  1951. case strings.EqualFold("ConcurrentModificationException", errorCode):
  1952. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  1953. case strings.EqualFold("HandshakeNotFoundException", errorCode):
  1954. return awsAwsjson11_deserializeErrorHandshakeNotFoundException(response, errorBody)
  1955. case strings.EqualFold("InvalidInputException", errorCode):
  1956. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  1957. case strings.EqualFold("ServiceException", errorCode):
  1958. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  1959. case strings.EqualFold("TooManyRequestsException", errorCode):
  1960. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  1961. default:
  1962. genericError := &smithy.GenericAPIError{
  1963. Code: errorCode,
  1964. Message: errorMessage,
  1965. }
  1966. return genericError
  1967. }
  1968. }
  1969. type awsAwsjson11_deserializeOpDescribeOrganization struct {
  1970. }
  1971. func (*awsAwsjson11_deserializeOpDescribeOrganization) ID() string {
  1972. return "OperationDeserializer"
  1973. }
  1974. func (m *awsAwsjson11_deserializeOpDescribeOrganization) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  1975. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  1976. ) {
  1977. out, metadata, err = next.HandleDeserialize(ctx, in)
  1978. if err != nil {
  1979. return out, metadata, err
  1980. }
  1981. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  1982. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  1983. defer endTimer()
  1984. defer span.End()
  1985. response, ok := out.RawResponse.(*smithyhttp.Response)
  1986. if !ok {
  1987. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  1988. }
  1989. if response.StatusCode < 200 || response.StatusCode >= 300 {
  1990. return out, metadata, awsAwsjson11_deserializeOpErrorDescribeOrganization(response, &metadata)
  1991. }
  1992. output := &DescribeOrganizationOutput{}
  1993. out.Result = output
  1994. var buff [1024]byte
  1995. ringBuffer := smithyio.NewRingBuffer(buff[:])
  1996. body := io.TeeReader(response.Body, ringBuffer)
  1997. decoder := json.NewDecoder(body)
  1998. decoder.UseNumber()
  1999. var shape interface{}
  2000. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  2001. var snapshot bytes.Buffer
  2002. io.Copy(&snapshot, ringBuffer)
  2003. err = &smithy.DeserializationError{
  2004. Err: fmt.Errorf("failed to decode response body, %w", err),
  2005. Snapshot: snapshot.Bytes(),
  2006. }
  2007. return out, metadata, err
  2008. }
  2009. err = awsAwsjson11_deserializeOpDocumentDescribeOrganizationOutput(&output, shape)
  2010. if err != nil {
  2011. var snapshot bytes.Buffer
  2012. io.Copy(&snapshot, ringBuffer)
  2013. err = &smithy.DeserializationError{
  2014. Err: fmt.Errorf("failed to decode response body, %w", err),
  2015. Snapshot: snapshot.Bytes(),
  2016. }
  2017. return out, metadata, err
  2018. }
  2019. return out, metadata, err
  2020. }
  2021. func awsAwsjson11_deserializeOpErrorDescribeOrganization(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  2022. var errorBuffer bytes.Buffer
  2023. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  2024. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  2025. }
  2026. errorBody := bytes.NewReader(errorBuffer.Bytes())
  2027. errorCode := "UnknownError"
  2028. errorMessage := errorCode
  2029. headerCode := response.Header.Get("X-Amzn-ErrorType")
  2030. var buff [1024]byte
  2031. ringBuffer := smithyio.NewRingBuffer(buff[:])
  2032. body := io.TeeReader(errorBody, ringBuffer)
  2033. decoder := json.NewDecoder(body)
  2034. decoder.UseNumber()
  2035. bodyInfo, err := getProtocolErrorInfo(decoder)
  2036. if err != nil {
  2037. var snapshot bytes.Buffer
  2038. io.Copy(&snapshot, ringBuffer)
  2039. err = &smithy.DeserializationError{
  2040. Err: fmt.Errorf("failed to decode response body, %w", err),
  2041. Snapshot: snapshot.Bytes(),
  2042. }
  2043. return err
  2044. }
  2045. errorBody.Seek(0, io.SeekStart)
  2046. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  2047. errorCode = restjson.SanitizeErrorCode(typ)
  2048. }
  2049. if len(bodyInfo.Message) != 0 {
  2050. errorMessage = bodyInfo.Message
  2051. }
  2052. switch {
  2053. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  2054. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  2055. case strings.EqualFold("AccessDeniedException", errorCode):
  2056. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  2057. case strings.EqualFold("ConcurrentModificationException", errorCode):
  2058. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  2059. case strings.EqualFold("ServiceException", errorCode):
  2060. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  2061. case strings.EqualFold("TooManyRequestsException", errorCode):
  2062. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  2063. default:
  2064. genericError := &smithy.GenericAPIError{
  2065. Code: errorCode,
  2066. Message: errorMessage,
  2067. }
  2068. return genericError
  2069. }
  2070. }
  2071. type awsAwsjson11_deserializeOpDescribeOrganizationalUnit struct {
  2072. }
  2073. func (*awsAwsjson11_deserializeOpDescribeOrganizationalUnit) ID() string {
  2074. return "OperationDeserializer"
  2075. }
  2076. func (m *awsAwsjson11_deserializeOpDescribeOrganizationalUnit) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  2077. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  2078. ) {
  2079. out, metadata, err = next.HandleDeserialize(ctx, in)
  2080. if err != nil {
  2081. return out, metadata, err
  2082. }
  2083. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  2084. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  2085. defer endTimer()
  2086. defer span.End()
  2087. response, ok := out.RawResponse.(*smithyhttp.Response)
  2088. if !ok {
  2089. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  2090. }
  2091. if response.StatusCode < 200 || response.StatusCode >= 300 {
  2092. return out, metadata, awsAwsjson11_deserializeOpErrorDescribeOrganizationalUnit(response, &metadata)
  2093. }
  2094. output := &DescribeOrganizationalUnitOutput{}
  2095. out.Result = output
  2096. var buff [1024]byte
  2097. ringBuffer := smithyio.NewRingBuffer(buff[:])
  2098. body := io.TeeReader(response.Body, ringBuffer)
  2099. decoder := json.NewDecoder(body)
  2100. decoder.UseNumber()
  2101. var shape interface{}
  2102. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  2103. var snapshot bytes.Buffer
  2104. io.Copy(&snapshot, ringBuffer)
  2105. err = &smithy.DeserializationError{
  2106. Err: fmt.Errorf("failed to decode response body, %w", err),
  2107. Snapshot: snapshot.Bytes(),
  2108. }
  2109. return out, metadata, err
  2110. }
  2111. err = awsAwsjson11_deserializeOpDocumentDescribeOrganizationalUnitOutput(&output, shape)
  2112. if err != nil {
  2113. var snapshot bytes.Buffer
  2114. io.Copy(&snapshot, ringBuffer)
  2115. err = &smithy.DeserializationError{
  2116. Err: fmt.Errorf("failed to decode response body, %w", err),
  2117. Snapshot: snapshot.Bytes(),
  2118. }
  2119. return out, metadata, err
  2120. }
  2121. return out, metadata, err
  2122. }
  2123. func awsAwsjson11_deserializeOpErrorDescribeOrganizationalUnit(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  2124. var errorBuffer bytes.Buffer
  2125. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  2126. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  2127. }
  2128. errorBody := bytes.NewReader(errorBuffer.Bytes())
  2129. errorCode := "UnknownError"
  2130. errorMessage := errorCode
  2131. headerCode := response.Header.Get("X-Amzn-ErrorType")
  2132. var buff [1024]byte
  2133. ringBuffer := smithyio.NewRingBuffer(buff[:])
  2134. body := io.TeeReader(errorBody, ringBuffer)
  2135. decoder := json.NewDecoder(body)
  2136. decoder.UseNumber()
  2137. bodyInfo, err := getProtocolErrorInfo(decoder)
  2138. if err != nil {
  2139. var snapshot bytes.Buffer
  2140. io.Copy(&snapshot, ringBuffer)
  2141. err = &smithy.DeserializationError{
  2142. Err: fmt.Errorf("failed to decode response body, %w", err),
  2143. Snapshot: snapshot.Bytes(),
  2144. }
  2145. return err
  2146. }
  2147. errorBody.Seek(0, io.SeekStart)
  2148. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  2149. errorCode = restjson.SanitizeErrorCode(typ)
  2150. }
  2151. if len(bodyInfo.Message) != 0 {
  2152. errorMessage = bodyInfo.Message
  2153. }
  2154. switch {
  2155. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  2156. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  2157. case strings.EqualFold("AccessDeniedException", errorCode):
  2158. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  2159. case strings.EqualFold("InvalidInputException", errorCode):
  2160. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  2161. case strings.EqualFold("OrganizationalUnitNotFoundException", errorCode):
  2162. return awsAwsjson11_deserializeErrorOrganizationalUnitNotFoundException(response, errorBody)
  2163. case strings.EqualFold("ServiceException", errorCode):
  2164. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  2165. case strings.EqualFold("TooManyRequestsException", errorCode):
  2166. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  2167. default:
  2168. genericError := &smithy.GenericAPIError{
  2169. Code: errorCode,
  2170. Message: errorMessage,
  2171. }
  2172. return genericError
  2173. }
  2174. }
  2175. type awsAwsjson11_deserializeOpDescribePolicy struct {
  2176. }
  2177. func (*awsAwsjson11_deserializeOpDescribePolicy) ID() string {
  2178. return "OperationDeserializer"
  2179. }
  2180. func (m *awsAwsjson11_deserializeOpDescribePolicy) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  2181. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  2182. ) {
  2183. out, metadata, err = next.HandleDeserialize(ctx, in)
  2184. if err != nil {
  2185. return out, metadata, err
  2186. }
  2187. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  2188. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  2189. defer endTimer()
  2190. defer span.End()
  2191. response, ok := out.RawResponse.(*smithyhttp.Response)
  2192. if !ok {
  2193. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  2194. }
  2195. if response.StatusCode < 200 || response.StatusCode >= 300 {
  2196. return out, metadata, awsAwsjson11_deserializeOpErrorDescribePolicy(response, &metadata)
  2197. }
  2198. output := &DescribePolicyOutput{}
  2199. out.Result = output
  2200. var buff [1024]byte
  2201. ringBuffer := smithyio.NewRingBuffer(buff[:])
  2202. body := io.TeeReader(response.Body, ringBuffer)
  2203. decoder := json.NewDecoder(body)
  2204. decoder.UseNumber()
  2205. var shape interface{}
  2206. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  2207. var snapshot bytes.Buffer
  2208. io.Copy(&snapshot, ringBuffer)
  2209. err = &smithy.DeserializationError{
  2210. Err: fmt.Errorf("failed to decode response body, %w", err),
  2211. Snapshot: snapshot.Bytes(),
  2212. }
  2213. return out, metadata, err
  2214. }
  2215. err = awsAwsjson11_deserializeOpDocumentDescribePolicyOutput(&output, shape)
  2216. if err != nil {
  2217. var snapshot bytes.Buffer
  2218. io.Copy(&snapshot, ringBuffer)
  2219. err = &smithy.DeserializationError{
  2220. Err: fmt.Errorf("failed to decode response body, %w", err),
  2221. Snapshot: snapshot.Bytes(),
  2222. }
  2223. return out, metadata, err
  2224. }
  2225. return out, metadata, err
  2226. }
  2227. func awsAwsjson11_deserializeOpErrorDescribePolicy(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  2228. var errorBuffer bytes.Buffer
  2229. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  2230. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  2231. }
  2232. errorBody := bytes.NewReader(errorBuffer.Bytes())
  2233. errorCode := "UnknownError"
  2234. errorMessage := errorCode
  2235. headerCode := response.Header.Get("X-Amzn-ErrorType")
  2236. var buff [1024]byte
  2237. ringBuffer := smithyio.NewRingBuffer(buff[:])
  2238. body := io.TeeReader(errorBody, ringBuffer)
  2239. decoder := json.NewDecoder(body)
  2240. decoder.UseNumber()
  2241. bodyInfo, err := getProtocolErrorInfo(decoder)
  2242. if err != nil {
  2243. var snapshot bytes.Buffer
  2244. io.Copy(&snapshot, ringBuffer)
  2245. err = &smithy.DeserializationError{
  2246. Err: fmt.Errorf("failed to decode response body, %w", err),
  2247. Snapshot: snapshot.Bytes(),
  2248. }
  2249. return err
  2250. }
  2251. errorBody.Seek(0, io.SeekStart)
  2252. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  2253. errorCode = restjson.SanitizeErrorCode(typ)
  2254. }
  2255. if len(bodyInfo.Message) != 0 {
  2256. errorMessage = bodyInfo.Message
  2257. }
  2258. switch {
  2259. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  2260. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  2261. case strings.EqualFold("AccessDeniedException", errorCode):
  2262. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  2263. case strings.EqualFold("InvalidInputException", errorCode):
  2264. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  2265. case strings.EqualFold("PolicyNotFoundException", errorCode):
  2266. return awsAwsjson11_deserializeErrorPolicyNotFoundException(response, errorBody)
  2267. case strings.EqualFold("ServiceException", errorCode):
  2268. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  2269. case strings.EqualFold("TooManyRequestsException", errorCode):
  2270. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  2271. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  2272. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  2273. default:
  2274. genericError := &smithy.GenericAPIError{
  2275. Code: errorCode,
  2276. Message: errorMessage,
  2277. }
  2278. return genericError
  2279. }
  2280. }
  2281. type awsAwsjson11_deserializeOpDescribeResourcePolicy struct {
  2282. }
  2283. func (*awsAwsjson11_deserializeOpDescribeResourcePolicy) ID() string {
  2284. return "OperationDeserializer"
  2285. }
  2286. func (m *awsAwsjson11_deserializeOpDescribeResourcePolicy) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  2287. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  2288. ) {
  2289. out, metadata, err = next.HandleDeserialize(ctx, in)
  2290. if err != nil {
  2291. return out, metadata, err
  2292. }
  2293. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  2294. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  2295. defer endTimer()
  2296. defer span.End()
  2297. response, ok := out.RawResponse.(*smithyhttp.Response)
  2298. if !ok {
  2299. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  2300. }
  2301. if response.StatusCode < 200 || response.StatusCode >= 300 {
  2302. return out, metadata, awsAwsjson11_deserializeOpErrorDescribeResourcePolicy(response, &metadata)
  2303. }
  2304. output := &DescribeResourcePolicyOutput{}
  2305. out.Result = output
  2306. var buff [1024]byte
  2307. ringBuffer := smithyio.NewRingBuffer(buff[:])
  2308. body := io.TeeReader(response.Body, ringBuffer)
  2309. decoder := json.NewDecoder(body)
  2310. decoder.UseNumber()
  2311. var shape interface{}
  2312. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  2313. var snapshot bytes.Buffer
  2314. io.Copy(&snapshot, ringBuffer)
  2315. err = &smithy.DeserializationError{
  2316. Err: fmt.Errorf("failed to decode response body, %w", err),
  2317. Snapshot: snapshot.Bytes(),
  2318. }
  2319. return out, metadata, err
  2320. }
  2321. err = awsAwsjson11_deserializeOpDocumentDescribeResourcePolicyOutput(&output, shape)
  2322. if err != nil {
  2323. var snapshot bytes.Buffer
  2324. io.Copy(&snapshot, ringBuffer)
  2325. err = &smithy.DeserializationError{
  2326. Err: fmt.Errorf("failed to decode response body, %w", err),
  2327. Snapshot: snapshot.Bytes(),
  2328. }
  2329. return out, metadata, err
  2330. }
  2331. return out, metadata, err
  2332. }
  2333. func awsAwsjson11_deserializeOpErrorDescribeResourcePolicy(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  2334. var errorBuffer bytes.Buffer
  2335. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  2336. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  2337. }
  2338. errorBody := bytes.NewReader(errorBuffer.Bytes())
  2339. errorCode := "UnknownError"
  2340. errorMessage := errorCode
  2341. headerCode := response.Header.Get("X-Amzn-ErrorType")
  2342. var buff [1024]byte
  2343. ringBuffer := smithyio.NewRingBuffer(buff[:])
  2344. body := io.TeeReader(errorBody, ringBuffer)
  2345. decoder := json.NewDecoder(body)
  2346. decoder.UseNumber()
  2347. bodyInfo, err := getProtocolErrorInfo(decoder)
  2348. if err != nil {
  2349. var snapshot bytes.Buffer
  2350. io.Copy(&snapshot, ringBuffer)
  2351. err = &smithy.DeserializationError{
  2352. Err: fmt.Errorf("failed to decode response body, %w", err),
  2353. Snapshot: snapshot.Bytes(),
  2354. }
  2355. return err
  2356. }
  2357. errorBody.Seek(0, io.SeekStart)
  2358. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  2359. errorCode = restjson.SanitizeErrorCode(typ)
  2360. }
  2361. if len(bodyInfo.Message) != 0 {
  2362. errorMessage = bodyInfo.Message
  2363. }
  2364. switch {
  2365. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  2366. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  2367. case strings.EqualFold("AccessDeniedException", errorCode):
  2368. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  2369. case strings.EqualFold("ConstraintViolationException", errorCode):
  2370. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  2371. case strings.EqualFold("ResourcePolicyNotFoundException", errorCode):
  2372. return awsAwsjson11_deserializeErrorResourcePolicyNotFoundException(response, errorBody)
  2373. case strings.EqualFold("ServiceException", errorCode):
  2374. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  2375. case strings.EqualFold("TooManyRequestsException", errorCode):
  2376. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  2377. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  2378. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  2379. default:
  2380. genericError := &smithy.GenericAPIError{
  2381. Code: errorCode,
  2382. Message: errorMessage,
  2383. }
  2384. return genericError
  2385. }
  2386. }
  2387. type awsAwsjson11_deserializeOpDescribeResponsibilityTransfer struct {
  2388. }
  2389. func (*awsAwsjson11_deserializeOpDescribeResponsibilityTransfer) ID() string {
  2390. return "OperationDeserializer"
  2391. }
  2392. func (m *awsAwsjson11_deserializeOpDescribeResponsibilityTransfer) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  2393. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  2394. ) {
  2395. out, metadata, err = next.HandleDeserialize(ctx, in)
  2396. if err != nil {
  2397. return out, metadata, err
  2398. }
  2399. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  2400. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  2401. defer endTimer()
  2402. defer span.End()
  2403. response, ok := out.RawResponse.(*smithyhttp.Response)
  2404. if !ok {
  2405. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  2406. }
  2407. if response.StatusCode < 200 || response.StatusCode >= 300 {
  2408. return out, metadata, awsAwsjson11_deserializeOpErrorDescribeResponsibilityTransfer(response, &metadata)
  2409. }
  2410. output := &DescribeResponsibilityTransferOutput{}
  2411. out.Result = output
  2412. var buff [1024]byte
  2413. ringBuffer := smithyio.NewRingBuffer(buff[:])
  2414. body := io.TeeReader(response.Body, ringBuffer)
  2415. decoder := json.NewDecoder(body)
  2416. decoder.UseNumber()
  2417. var shape interface{}
  2418. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  2419. var snapshot bytes.Buffer
  2420. io.Copy(&snapshot, ringBuffer)
  2421. err = &smithy.DeserializationError{
  2422. Err: fmt.Errorf("failed to decode response body, %w", err),
  2423. Snapshot: snapshot.Bytes(),
  2424. }
  2425. return out, metadata, err
  2426. }
  2427. err = awsAwsjson11_deserializeOpDocumentDescribeResponsibilityTransferOutput(&output, shape)
  2428. if err != nil {
  2429. var snapshot bytes.Buffer
  2430. io.Copy(&snapshot, ringBuffer)
  2431. err = &smithy.DeserializationError{
  2432. Err: fmt.Errorf("failed to decode response body, %w", err),
  2433. Snapshot: snapshot.Bytes(),
  2434. }
  2435. return out, metadata, err
  2436. }
  2437. return out, metadata, err
  2438. }
  2439. func awsAwsjson11_deserializeOpErrorDescribeResponsibilityTransfer(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  2440. var errorBuffer bytes.Buffer
  2441. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  2442. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  2443. }
  2444. errorBody := bytes.NewReader(errorBuffer.Bytes())
  2445. errorCode := "UnknownError"
  2446. errorMessage := errorCode
  2447. headerCode := response.Header.Get("X-Amzn-ErrorType")
  2448. var buff [1024]byte
  2449. ringBuffer := smithyio.NewRingBuffer(buff[:])
  2450. body := io.TeeReader(errorBody, ringBuffer)
  2451. decoder := json.NewDecoder(body)
  2452. decoder.UseNumber()
  2453. bodyInfo, err := getProtocolErrorInfo(decoder)
  2454. if err != nil {
  2455. var snapshot bytes.Buffer
  2456. io.Copy(&snapshot, ringBuffer)
  2457. err = &smithy.DeserializationError{
  2458. Err: fmt.Errorf("failed to decode response body, %w", err),
  2459. Snapshot: snapshot.Bytes(),
  2460. }
  2461. return err
  2462. }
  2463. errorBody.Seek(0, io.SeekStart)
  2464. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  2465. errorCode = restjson.SanitizeErrorCode(typ)
  2466. }
  2467. if len(bodyInfo.Message) != 0 {
  2468. errorMessage = bodyInfo.Message
  2469. }
  2470. switch {
  2471. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  2472. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  2473. case strings.EqualFold("AccessDeniedException", errorCode):
  2474. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  2475. case strings.EqualFold("InvalidInputException", errorCode):
  2476. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  2477. case strings.EqualFold("ResponsibilityTransferNotFoundException", errorCode):
  2478. return awsAwsjson11_deserializeErrorResponsibilityTransferNotFoundException(response, errorBody)
  2479. case strings.EqualFold("ServiceException", errorCode):
  2480. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  2481. case strings.EqualFold("TooManyRequestsException", errorCode):
  2482. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  2483. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  2484. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  2485. default:
  2486. genericError := &smithy.GenericAPIError{
  2487. Code: errorCode,
  2488. Message: errorMessage,
  2489. }
  2490. return genericError
  2491. }
  2492. }
  2493. type awsAwsjson11_deserializeOpDetachPolicy struct {
  2494. }
  2495. func (*awsAwsjson11_deserializeOpDetachPolicy) ID() string {
  2496. return "OperationDeserializer"
  2497. }
  2498. func (m *awsAwsjson11_deserializeOpDetachPolicy) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  2499. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  2500. ) {
  2501. out, metadata, err = next.HandleDeserialize(ctx, in)
  2502. if err != nil {
  2503. return out, metadata, err
  2504. }
  2505. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  2506. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  2507. defer endTimer()
  2508. defer span.End()
  2509. response, ok := out.RawResponse.(*smithyhttp.Response)
  2510. if !ok {
  2511. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  2512. }
  2513. if response.StatusCode < 200 || response.StatusCode >= 300 {
  2514. return out, metadata, awsAwsjson11_deserializeOpErrorDetachPolicy(response, &metadata)
  2515. }
  2516. output := &DetachPolicyOutput{}
  2517. out.Result = output
  2518. if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
  2519. return out, metadata, &smithy.DeserializationError{
  2520. Err: fmt.Errorf("failed to discard response body, %w", err),
  2521. }
  2522. }
  2523. return out, metadata, err
  2524. }
  2525. func awsAwsjson11_deserializeOpErrorDetachPolicy(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  2526. var errorBuffer bytes.Buffer
  2527. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  2528. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  2529. }
  2530. errorBody := bytes.NewReader(errorBuffer.Bytes())
  2531. errorCode := "UnknownError"
  2532. errorMessage := errorCode
  2533. headerCode := response.Header.Get("X-Amzn-ErrorType")
  2534. var buff [1024]byte
  2535. ringBuffer := smithyio.NewRingBuffer(buff[:])
  2536. body := io.TeeReader(errorBody, ringBuffer)
  2537. decoder := json.NewDecoder(body)
  2538. decoder.UseNumber()
  2539. bodyInfo, err := getProtocolErrorInfo(decoder)
  2540. if err != nil {
  2541. var snapshot bytes.Buffer
  2542. io.Copy(&snapshot, ringBuffer)
  2543. err = &smithy.DeserializationError{
  2544. Err: fmt.Errorf("failed to decode response body, %w", err),
  2545. Snapshot: snapshot.Bytes(),
  2546. }
  2547. return err
  2548. }
  2549. errorBody.Seek(0, io.SeekStart)
  2550. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  2551. errorCode = restjson.SanitizeErrorCode(typ)
  2552. }
  2553. if len(bodyInfo.Message) != 0 {
  2554. errorMessage = bodyInfo.Message
  2555. }
  2556. switch {
  2557. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  2558. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  2559. case strings.EqualFold("AccessDeniedException", errorCode):
  2560. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  2561. case strings.EqualFold("ConcurrentModificationException", errorCode):
  2562. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  2563. case strings.EqualFold("ConstraintViolationException", errorCode):
  2564. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  2565. case strings.EqualFold("InvalidInputException", errorCode):
  2566. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  2567. case strings.EqualFold("PolicyChangesInProgressException", errorCode):
  2568. return awsAwsjson11_deserializeErrorPolicyChangesInProgressException(response, errorBody)
  2569. case strings.EqualFold("PolicyNotAttachedException", errorCode):
  2570. return awsAwsjson11_deserializeErrorPolicyNotAttachedException(response, errorBody)
  2571. case strings.EqualFold("PolicyNotFoundException", errorCode):
  2572. return awsAwsjson11_deserializeErrorPolicyNotFoundException(response, errorBody)
  2573. case strings.EqualFold("ServiceException", errorCode):
  2574. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  2575. case strings.EqualFold("TargetNotFoundException", errorCode):
  2576. return awsAwsjson11_deserializeErrorTargetNotFoundException(response, errorBody)
  2577. case strings.EqualFold("TooManyRequestsException", errorCode):
  2578. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  2579. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  2580. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  2581. default:
  2582. genericError := &smithy.GenericAPIError{
  2583. Code: errorCode,
  2584. Message: errorMessage,
  2585. }
  2586. return genericError
  2587. }
  2588. }
  2589. type awsAwsjson11_deserializeOpDisableAWSServiceAccess struct {
  2590. }
  2591. func (*awsAwsjson11_deserializeOpDisableAWSServiceAccess) ID() string {
  2592. return "OperationDeserializer"
  2593. }
  2594. func (m *awsAwsjson11_deserializeOpDisableAWSServiceAccess) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  2595. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  2596. ) {
  2597. out, metadata, err = next.HandleDeserialize(ctx, in)
  2598. if err != nil {
  2599. return out, metadata, err
  2600. }
  2601. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  2602. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  2603. defer endTimer()
  2604. defer span.End()
  2605. response, ok := out.RawResponse.(*smithyhttp.Response)
  2606. if !ok {
  2607. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  2608. }
  2609. if response.StatusCode < 200 || response.StatusCode >= 300 {
  2610. return out, metadata, awsAwsjson11_deserializeOpErrorDisableAWSServiceAccess(response, &metadata)
  2611. }
  2612. output := &DisableAWSServiceAccessOutput{}
  2613. out.Result = output
  2614. if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
  2615. return out, metadata, &smithy.DeserializationError{
  2616. Err: fmt.Errorf("failed to discard response body, %w", err),
  2617. }
  2618. }
  2619. return out, metadata, err
  2620. }
  2621. func awsAwsjson11_deserializeOpErrorDisableAWSServiceAccess(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  2622. var errorBuffer bytes.Buffer
  2623. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  2624. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  2625. }
  2626. errorBody := bytes.NewReader(errorBuffer.Bytes())
  2627. errorCode := "UnknownError"
  2628. errorMessage := errorCode
  2629. headerCode := response.Header.Get("X-Amzn-ErrorType")
  2630. var buff [1024]byte
  2631. ringBuffer := smithyio.NewRingBuffer(buff[:])
  2632. body := io.TeeReader(errorBody, ringBuffer)
  2633. decoder := json.NewDecoder(body)
  2634. decoder.UseNumber()
  2635. bodyInfo, err := getProtocolErrorInfo(decoder)
  2636. if err != nil {
  2637. var snapshot bytes.Buffer
  2638. io.Copy(&snapshot, ringBuffer)
  2639. err = &smithy.DeserializationError{
  2640. Err: fmt.Errorf("failed to decode response body, %w", err),
  2641. Snapshot: snapshot.Bytes(),
  2642. }
  2643. return err
  2644. }
  2645. errorBody.Seek(0, io.SeekStart)
  2646. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  2647. errorCode = restjson.SanitizeErrorCode(typ)
  2648. }
  2649. if len(bodyInfo.Message) != 0 {
  2650. errorMessage = bodyInfo.Message
  2651. }
  2652. switch {
  2653. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  2654. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  2655. case strings.EqualFold("AccessDeniedException", errorCode):
  2656. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  2657. case strings.EqualFold("ConcurrentModificationException", errorCode):
  2658. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  2659. case strings.EqualFold("ConstraintViolationException", errorCode):
  2660. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  2661. case strings.EqualFold("InvalidInputException", errorCode):
  2662. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  2663. case strings.EqualFold("ServiceException", errorCode):
  2664. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  2665. case strings.EqualFold("TooManyRequestsException", errorCode):
  2666. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  2667. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  2668. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  2669. default:
  2670. genericError := &smithy.GenericAPIError{
  2671. Code: errorCode,
  2672. Message: errorMessage,
  2673. }
  2674. return genericError
  2675. }
  2676. }
  2677. type awsAwsjson11_deserializeOpDisablePolicyType struct {
  2678. }
  2679. func (*awsAwsjson11_deserializeOpDisablePolicyType) ID() string {
  2680. return "OperationDeserializer"
  2681. }
  2682. func (m *awsAwsjson11_deserializeOpDisablePolicyType) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  2683. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  2684. ) {
  2685. out, metadata, err = next.HandleDeserialize(ctx, in)
  2686. if err != nil {
  2687. return out, metadata, err
  2688. }
  2689. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  2690. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  2691. defer endTimer()
  2692. defer span.End()
  2693. response, ok := out.RawResponse.(*smithyhttp.Response)
  2694. if !ok {
  2695. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  2696. }
  2697. if response.StatusCode < 200 || response.StatusCode >= 300 {
  2698. return out, metadata, awsAwsjson11_deserializeOpErrorDisablePolicyType(response, &metadata)
  2699. }
  2700. output := &DisablePolicyTypeOutput{}
  2701. out.Result = output
  2702. var buff [1024]byte
  2703. ringBuffer := smithyio.NewRingBuffer(buff[:])
  2704. body := io.TeeReader(response.Body, ringBuffer)
  2705. decoder := json.NewDecoder(body)
  2706. decoder.UseNumber()
  2707. var shape interface{}
  2708. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  2709. var snapshot bytes.Buffer
  2710. io.Copy(&snapshot, ringBuffer)
  2711. err = &smithy.DeserializationError{
  2712. Err: fmt.Errorf("failed to decode response body, %w", err),
  2713. Snapshot: snapshot.Bytes(),
  2714. }
  2715. return out, metadata, err
  2716. }
  2717. err = awsAwsjson11_deserializeOpDocumentDisablePolicyTypeOutput(&output, shape)
  2718. if err != nil {
  2719. var snapshot bytes.Buffer
  2720. io.Copy(&snapshot, ringBuffer)
  2721. err = &smithy.DeserializationError{
  2722. Err: fmt.Errorf("failed to decode response body, %w", err),
  2723. Snapshot: snapshot.Bytes(),
  2724. }
  2725. return out, metadata, err
  2726. }
  2727. return out, metadata, err
  2728. }
  2729. func awsAwsjson11_deserializeOpErrorDisablePolicyType(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  2730. var errorBuffer bytes.Buffer
  2731. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  2732. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  2733. }
  2734. errorBody := bytes.NewReader(errorBuffer.Bytes())
  2735. errorCode := "UnknownError"
  2736. errorMessage := errorCode
  2737. headerCode := response.Header.Get("X-Amzn-ErrorType")
  2738. var buff [1024]byte
  2739. ringBuffer := smithyio.NewRingBuffer(buff[:])
  2740. body := io.TeeReader(errorBody, ringBuffer)
  2741. decoder := json.NewDecoder(body)
  2742. decoder.UseNumber()
  2743. bodyInfo, err := getProtocolErrorInfo(decoder)
  2744. if err != nil {
  2745. var snapshot bytes.Buffer
  2746. io.Copy(&snapshot, ringBuffer)
  2747. err = &smithy.DeserializationError{
  2748. Err: fmt.Errorf("failed to decode response body, %w", err),
  2749. Snapshot: snapshot.Bytes(),
  2750. }
  2751. return err
  2752. }
  2753. errorBody.Seek(0, io.SeekStart)
  2754. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  2755. errorCode = restjson.SanitizeErrorCode(typ)
  2756. }
  2757. if len(bodyInfo.Message) != 0 {
  2758. errorMessage = bodyInfo.Message
  2759. }
  2760. switch {
  2761. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  2762. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  2763. case strings.EqualFold("AccessDeniedException", errorCode):
  2764. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  2765. case strings.EqualFold("ConcurrentModificationException", errorCode):
  2766. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  2767. case strings.EqualFold("ConstraintViolationException", errorCode):
  2768. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  2769. case strings.EqualFold("InvalidInputException", errorCode):
  2770. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  2771. case strings.EqualFold("PolicyChangesInProgressException", errorCode):
  2772. return awsAwsjson11_deserializeErrorPolicyChangesInProgressException(response, errorBody)
  2773. case strings.EqualFold("PolicyTypeNotEnabledException", errorCode):
  2774. return awsAwsjson11_deserializeErrorPolicyTypeNotEnabledException(response, errorBody)
  2775. case strings.EqualFold("RootNotFoundException", errorCode):
  2776. return awsAwsjson11_deserializeErrorRootNotFoundException(response, errorBody)
  2777. case strings.EqualFold("ServiceException", errorCode):
  2778. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  2779. case strings.EqualFold("TooManyRequestsException", errorCode):
  2780. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  2781. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  2782. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  2783. default:
  2784. genericError := &smithy.GenericAPIError{
  2785. Code: errorCode,
  2786. Message: errorMessage,
  2787. }
  2788. return genericError
  2789. }
  2790. }
  2791. type awsAwsjson11_deserializeOpEnableAllFeatures struct {
  2792. }
  2793. func (*awsAwsjson11_deserializeOpEnableAllFeatures) ID() string {
  2794. return "OperationDeserializer"
  2795. }
  2796. func (m *awsAwsjson11_deserializeOpEnableAllFeatures) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  2797. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  2798. ) {
  2799. out, metadata, err = next.HandleDeserialize(ctx, in)
  2800. if err != nil {
  2801. return out, metadata, err
  2802. }
  2803. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  2804. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  2805. defer endTimer()
  2806. defer span.End()
  2807. response, ok := out.RawResponse.(*smithyhttp.Response)
  2808. if !ok {
  2809. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  2810. }
  2811. if response.StatusCode < 200 || response.StatusCode >= 300 {
  2812. return out, metadata, awsAwsjson11_deserializeOpErrorEnableAllFeatures(response, &metadata)
  2813. }
  2814. output := &EnableAllFeaturesOutput{}
  2815. out.Result = output
  2816. var buff [1024]byte
  2817. ringBuffer := smithyio.NewRingBuffer(buff[:])
  2818. body := io.TeeReader(response.Body, ringBuffer)
  2819. decoder := json.NewDecoder(body)
  2820. decoder.UseNumber()
  2821. var shape interface{}
  2822. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  2823. var snapshot bytes.Buffer
  2824. io.Copy(&snapshot, ringBuffer)
  2825. err = &smithy.DeserializationError{
  2826. Err: fmt.Errorf("failed to decode response body, %w", err),
  2827. Snapshot: snapshot.Bytes(),
  2828. }
  2829. return out, metadata, err
  2830. }
  2831. err = awsAwsjson11_deserializeOpDocumentEnableAllFeaturesOutput(&output, shape)
  2832. if err != nil {
  2833. var snapshot bytes.Buffer
  2834. io.Copy(&snapshot, ringBuffer)
  2835. err = &smithy.DeserializationError{
  2836. Err: fmt.Errorf("failed to decode response body, %w", err),
  2837. Snapshot: snapshot.Bytes(),
  2838. }
  2839. return out, metadata, err
  2840. }
  2841. return out, metadata, err
  2842. }
  2843. func awsAwsjson11_deserializeOpErrorEnableAllFeatures(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  2844. var errorBuffer bytes.Buffer
  2845. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  2846. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  2847. }
  2848. errorBody := bytes.NewReader(errorBuffer.Bytes())
  2849. errorCode := "UnknownError"
  2850. errorMessage := errorCode
  2851. headerCode := response.Header.Get("X-Amzn-ErrorType")
  2852. var buff [1024]byte
  2853. ringBuffer := smithyio.NewRingBuffer(buff[:])
  2854. body := io.TeeReader(errorBody, ringBuffer)
  2855. decoder := json.NewDecoder(body)
  2856. decoder.UseNumber()
  2857. bodyInfo, err := getProtocolErrorInfo(decoder)
  2858. if err != nil {
  2859. var snapshot bytes.Buffer
  2860. io.Copy(&snapshot, ringBuffer)
  2861. err = &smithy.DeserializationError{
  2862. Err: fmt.Errorf("failed to decode response body, %w", err),
  2863. Snapshot: snapshot.Bytes(),
  2864. }
  2865. return err
  2866. }
  2867. errorBody.Seek(0, io.SeekStart)
  2868. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  2869. errorCode = restjson.SanitizeErrorCode(typ)
  2870. }
  2871. if len(bodyInfo.Message) != 0 {
  2872. errorMessage = bodyInfo.Message
  2873. }
  2874. switch {
  2875. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  2876. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  2877. case strings.EqualFold("AccessDeniedException", errorCode):
  2878. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  2879. case strings.EqualFold("ConcurrentModificationException", errorCode):
  2880. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  2881. case strings.EqualFold("ConstraintViolationException", errorCode):
  2882. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  2883. case strings.EqualFold("HandshakeConstraintViolationException", errorCode):
  2884. return awsAwsjson11_deserializeErrorHandshakeConstraintViolationException(response, errorBody)
  2885. case strings.EqualFold("InvalidInputException", errorCode):
  2886. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  2887. case strings.EqualFold("ServiceException", errorCode):
  2888. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  2889. case strings.EqualFold("TooManyRequestsException", errorCode):
  2890. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  2891. default:
  2892. genericError := &smithy.GenericAPIError{
  2893. Code: errorCode,
  2894. Message: errorMessage,
  2895. }
  2896. return genericError
  2897. }
  2898. }
  2899. type awsAwsjson11_deserializeOpEnableAWSServiceAccess struct {
  2900. }
  2901. func (*awsAwsjson11_deserializeOpEnableAWSServiceAccess) ID() string {
  2902. return "OperationDeserializer"
  2903. }
  2904. func (m *awsAwsjson11_deserializeOpEnableAWSServiceAccess) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  2905. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  2906. ) {
  2907. out, metadata, err = next.HandleDeserialize(ctx, in)
  2908. if err != nil {
  2909. return out, metadata, err
  2910. }
  2911. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  2912. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  2913. defer endTimer()
  2914. defer span.End()
  2915. response, ok := out.RawResponse.(*smithyhttp.Response)
  2916. if !ok {
  2917. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  2918. }
  2919. if response.StatusCode < 200 || response.StatusCode >= 300 {
  2920. return out, metadata, awsAwsjson11_deserializeOpErrorEnableAWSServiceAccess(response, &metadata)
  2921. }
  2922. output := &EnableAWSServiceAccessOutput{}
  2923. out.Result = output
  2924. if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
  2925. return out, metadata, &smithy.DeserializationError{
  2926. Err: fmt.Errorf("failed to discard response body, %w", err),
  2927. }
  2928. }
  2929. return out, metadata, err
  2930. }
  2931. func awsAwsjson11_deserializeOpErrorEnableAWSServiceAccess(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  2932. var errorBuffer bytes.Buffer
  2933. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  2934. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  2935. }
  2936. errorBody := bytes.NewReader(errorBuffer.Bytes())
  2937. errorCode := "UnknownError"
  2938. errorMessage := errorCode
  2939. headerCode := response.Header.Get("X-Amzn-ErrorType")
  2940. var buff [1024]byte
  2941. ringBuffer := smithyio.NewRingBuffer(buff[:])
  2942. body := io.TeeReader(errorBody, ringBuffer)
  2943. decoder := json.NewDecoder(body)
  2944. decoder.UseNumber()
  2945. bodyInfo, err := getProtocolErrorInfo(decoder)
  2946. if err != nil {
  2947. var snapshot bytes.Buffer
  2948. io.Copy(&snapshot, ringBuffer)
  2949. err = &smithy.DeserializationError{
  2950. Err: fmt.Errorf("failed to decode response body, %w", err),
  2951. Snapshot: snapshot.Bytes(),
  2952. }
  2953. return err
  2954. }
  2955. errorBody.Seek(0, io.SeekStart)
  2956. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  2957. errorCode = restjson.SanitizeErrorCode(typ)
  2958. }
  2959. if len(bodyInfo.Message) != 0 {
  2960. errorMessage = bodyInfo.Message
  2961. }
  2962. switch {
  2963. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  2964. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  2965. case strings.EqualFold("AccessDeniedException", errorCode):
  2966. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  2967. case strings.EqualFold("ConcurrentModificationException", errorCode):
  2968. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  2969. case strings.EqualFold("ConstraintViolationException", errorCode):
  2970. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  2971. case strings.EqualFold("InvalidInputException", errorCode):
  2972. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  2973. case strings.EqualFold("ServiceException", errorCode):
  2974. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  2975. case strings.EqualFold("TooManyRequestsException", errorCode):
  2976. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  2977. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  2978. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  2979. default:
  2980. genericError := &smithy.GenericAPIError{
  2981. Code: errorCode,
  2982. Message: errorMessage,
  2983. }
  2984. return genericError
  2985. }
  2986. }
  2987. type awsAwsjson11_deserializeOpEnablePolicyType struct {
  2988. }
  2989. func (*awsAwsjson11_deserializeOpEnablePolicyType) ID() string {
  2990. return "OperationDeserializer"
  2991. }
  2992. func (m *awsAwsjson11_deserializeOpEnablePolicyType) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  2993. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  2994. ) {
  2995. out, metadata, err = next.HandleDeserialize(ctx, in)
  2996. if err != nil {
  2997. return out, metadata, err
  2998. }
  2999. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  3000. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  3001. defer endTimer()
  3002. defer span.End()
  3003. response, ok := out.RawResponse.(*smithyhttp.Response)
  3004. if !ok {
  3005. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  3006. }
  3007. if response.StatusCode < 200 || response.StatusCode >= 300 {
  3008. return out, metadata, awsAwsjson11_deserializeOpErrorEnablePolicyType(response, &metadata)
  3009. }
  3010. output := &EnablePolicyTypeOutput{}
  3011. out.Result = output
  3012. var buff [1024]byte
  3013. ringBuffer := smithyio.NewRingBuffer(buff[:])
  3014. body := io.TeeReader(response.Body, ringBuffer)
  3015. decoder := json.NewDecoder(body)
  3016. decoder.UseNumber()
  3017. var shape interface{}
  3018. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  3019. var snapshot bytes.Buffer
  3020. io.Copy(&snapshot, ringBuffer)
  3021. err = &smithy.DeserializationError{
  3022. Err: fmt.Errorf("failed to decode response body, %w", err),
  3023. Snapshot: snapshot.Bytes(),
  3024. }
  3025. return out, metadata, err
  3026. }
  3027. err = awsAwsjson11_deserializeOpDocumentEnablePolicyTypeOutput(&output, shape)
  3028. if err != nil {
  3029. var snapshot bytes.Buffer
  3030. io.Copy(&snapshot, ringBuffer)
  3031. err = &smithy.DeserializationError{
  3032. Err: fmt.Errorf("failed to decode response body, %w", err),
  3033. Snapshot: snapshot.Bytes(),
  3034. }
  3035. return out, metadata, err
  3036. }
  3037. return out, metadata, err
  3038. }
  3039. func awsAwsjson11_deserializeOpErrorEnablePolicyType(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  3040. var errorBuffer bytes.Buffer
  3041. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  3042. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  3043. }
  3044. errorBody := bytes.NewReader(errorBuffer.Bytes())
  3045. errorCode := "UnknownError"
  3046. errorMessage := errorCode
  3047. headerCode := response.Header.Get("X-Amzn-ErrorType")
  3048. var buff [1024]byte
  3049. ringBuffer := smithyio.NewRingBuffer(buff[:])
  3050. body := io.TeeReader(errorBody, ringBuffer)
  3051. decoder := json.NewDecoder(body)
  3052. decoder.UseNumber()
  3053. bodyInfo, err := getProtocolErrorInfo(decoder)
  3054. if err != nil {
  3055. var snapshot bytes.Buffer
  3056. io.Copy(&snapshot, ringBuffer)
  3057. err = &smithy.DeserializationError{
  3058. Err: fmt.Errorf("failed to decode response body, %w", err),
  3059. Snapshot: snapshot.Bytes(),
  3060. }
  3061. return err
  3062. }
  3063. errorBody.Seek(0, io.SeekStart)
  3064. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  3065. errorCode = restjson.SanitizeErrorCode(typ)
  3066. }
  3067. if len(bodyInfo.Message) != 0 {
  3068. errorMessage = bodyInfo.Message
  3069. }
  3070. switch {
  3071. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  3072. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  3073. case strings.EqualFold("AccessDeniedException", errorCode):
  3074. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  3075. case strings.EqualFold("ConcurrentModificationException", errorCode):
  3076. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  3077. case strings.EqualFold("ConstraintViolationException", errorCode):
  3078. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  3079. case strings.EqualFold("InvalidInputException", errorCode):
  3080. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  3081. case strings.EqualFold("PolicyChangesInProgressException", errorCode):
  3082. return awsAwsjson11_deserializeErrorPolicyChangesInProgressException(response, errorBody)
  3083. case strings.EqualFold("PolicyTypeAlreadyEnabledException", errorCode):
  3084. return awsAwsjson11_deserializeErrorPolicyTypeAlreadyEnabledException(response, errorBody)
  3085. case strings.EqualFold("PolicyTypeNotAvailableForOrganizationException", errorCode):
  3086. return awsAwsjson11_deserializeErrorPolicyTypeNotAvailableForOrganizationException(response, errorBody)
  3087. case strings.EqualFold("RootNotFoundException", errorCode):
  3088. return awsAwsjson11_deserializeErrorRootNotFoundException(response, errorBody)
  3089. case strings.EqualFold("ServiceException", errorCode):
  3090. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  3091. case strings.EqualFold("TooManyRequestsException", errorCode):
  3092. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  3093. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  3094. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  3095. default:
  3096. genericError := &smithy.GenericAPIError{
  3097. Code: errorCode,
  3098. Message: errorMessage,
  3099. }
  3100. return genericError
  3101. }
  3102. }
  3103. type awsAwsjson11_deserializeOpInviteAccountToOrganization struct {
  3104. }
  3105. func (*awsAwsjson11_deserializeOpInviteAccountToOrganization) ID() string {
  3106. return "OperationDeserializer"
  3107. }
  3108. func (m *awsAwsjson11_deserializeOpInviteAccountToOrganization) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  3109. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  3110. ) {
  3111. out, metadata, err = next.HandleDeserialize(ctx, in)
  3112. if err != nil {
  3113. return out, metadata, err
  3114. }
  3115. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  3116. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  3117. defer endTimer()
  3118. defer span.End()
  3119. response, ok := out.RawResponse.(*smithyhttp.Response)
  3120. if !ok {
  3121. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  3122. }
  3123. if response.StatusCode < 200 || response.StatusCode >= 300 {
  3124. return out, metadata, awsAwsjson11_deserializeOpErrorInviteAccountToOrganization(response, &metadata)
  3125. }
  3126. output := &InviteAccountToOrganizationOutput{}
  3127. out.Result = output
  3128. var buff [1024]byte
  3129. ringBuffer := smithyio.NewRingBuffer(buff[:])
  3130. body := io.TeeReader(response.Body, ringBuffer)
  3131. decoder := json.NewDecoder(body)
  3132. decoder.UseNumber()
  3133. var shape interface{}
  3134. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  3135. var snapshot bytes.Buffer
  3136. io.Copy(&snapshot, ringBuffer)
  3137. err = &smithy.DeserializationError{
  3138. Err: fmt.Errorf("failed to decode response body, %w", err),
  3139. Snapshot: snapshot.Bytes(),
  3140. }
  3141. return out, metadata, err
  3142. }
  3143. err = awsAwsjson11_deserializeOpDocumentInviteAccountToOrganizationOutput(&output, shape)
  3144. if err != nil {
  3145. var snapshot bytes.Buffer
  3146. io.Copy(&snapshot, ringBuffer)
  3147. err = &smithy.DeserializationError{
  3148. Err: fmt.Errorf("failed to decode response body, %w", err),
  3149. Snapshot: snapshot.Bytes(),
  3150. }
  3151. return out, metadata, err
  3152. }
  3153. return out, metadata, err
  3154. }
  3155. func awsAwsjson11_deserializeOpErrorInviteAccountToOrganization(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  3156. var errorBuffer bytes.Buffer
  3157. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  3158. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  3159. }
  3160. errorBody := bytes.NewReader(errorBuffer.Bytes())
  3161. errorCode := "UnknownError"
  3162. errorMessage := errorCode
  3163. headerCode := response.Header.Get("X-Amzn-ErrorType")
  3164. var buff [1024]byte
  3165. ringBuffer := smithyio.NewRingBuffer(buff[:])
  3166. body := io.TeeReader(errorBody, ringBuffer)
  3167. decoder := json.NewDecoder(body)
  3168. decoder.UseNumber()
  3169. bodyInfo, err := getProtocolErrorInfo(decoder)
  3170. if err != nil {
  3171. var snapshot bytes.Buffer
  3172. io.Copy(&snapshot, ringBuffer)
  3173. err = &smithy.DeserializationError{
  3174. Err: fmt.Errorf("failed to decode response body, %w", err),
  3175. Snapshot: snapshot.Bytes(),
  3176. }
  3177. return err
  3178. }
  3179. errorBody.Seek(0, io.SeekStart)
  3180. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  3181. errorCode = restjson.SanitizeErrorCode(typ)
  3182. }
  3183. if len(bodyInfo.Message) != 0 {
  3184. errorMessage = bodyInfo.Message
  3185. }
  3186. switch {
  3187. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  3188. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  3189. case strings.EqualFold("AccessDeniedException", errorCode):
  3190. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  3191. case strings.EqualFold("AccountOwnerNotVerifiedException", errorCode):
  3192. return awsAwsjson11_deserializeErrorAccountOwnerNotVerifiedException(response, errorBody)
  3193. case strings.EqualFold("ConcurrentModificationException", errorCode):
  3194. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  3195. case strings.EqualFold("ConstraintViolationException", errorCode):
  3196. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  3197. case strings.EqualFold("DuplicateHandshakeException", errorCode):
  3198. return awsAwsjson11_deserializeErrorDuplicateHandshakeException(response, errorBody)
  3199. case strings.EqualFold("FinalizingOrganizationException", errorCode):
  3200. return awsAwsjson11_deserializeErrorFinalizingOrganizationException(response, errorBody)
  3201. case strings.EqualFold("HandshakeConstraintViolationException", errorCode):
  3202. return awsAwsjson11_deserializeErrorHandshakeConstraintViolationException(response, errorBody)
  3203. case strings.EqualFold("InvalidInputException", errorCode):
  3204. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  3205. case strings.EqualFold("ServiceException", errorCode):
  3206. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  3207. case strings.EqualFold("TooManyRequestsException", errorCode):
  3208. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  3209. default:
  3210. genericError := &smithy.GenericAPIError{
  3211. Code: errorCode,
  3212. Message: errorMessage,
  3213. }
  3214. return genericError
  3215. }
  3216. }
  3217. type awsAwsjson11_deserializeOpInviteOrganizationToTransferResponsibility struct {
  3218. }
  3219. func (*awsAwsjson11_deserializeOpInviteOrganizationToTransferResponsibility) ID() string {
  3220. return "OperationDeserializer"
  3221. }
  3222. func (m *awsAwsjson11_deserializeOpInviteOrganizationToTransferResponsibility) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  3223. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  3224. ) {
  3225. out, metadata, err = next.HandleDeserialize(ctx, in)
  3226. if err != nil {
  3227. return out, metadata, err
  3228. }
  3229. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  3230. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  3231. defer endTimer()
  3232. defer span.End()
  3233. response, ok := out.RawResponse.(*smithyhttp.Response)
  3234. if !ok {
  3235. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  3236. }
  3237. if response.StatusCode < 200 || response.StatusCode >= 300 {
  3238. return out, metadata, awsAwsjson11_deserializeOpErrorInviteOrganizationToTransferResponsibility(response, &metadata)
  3239. }
  3240. output := &InviteOrganizationToTransferResponsibilityOutput{}
  3241. out.Result = output
  3242. var buff [1024]byte
  3243. ringBuffer := smithyio.NewRingBuffer(buff[:])
  3244. body := io.TeeReader(response.Body, ringBuffer)
  3245. decoder := json.NewDecoder(body)
  3246. decoder.UseNumber()
  3247. var shape interface{}
  3248. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  3249. var snapshot bytes.Buffer
  3250. io.Copy(&snapshot, ringBuffer)
  3251. err = &smithy.DeserializationError{
  3252. Err: fmt.Errorf("failed to decode response body, %w", err),
  3253. Snapshot: snapshot.Bytes(),
  3254. }
  3255. return out, metadata, err
  3256. }
  3257. err = awsAwsjson11_deserializeOpDocumentInviteOrganizationToTransferResponsibilityOutput(&output, shape)
  3258. if err != nil {
  3259. var snapshot bytes.Buffer
  3260. io.Copy(&snapshot, ringBuffer)
  3261. err = &smithy.DeserializationError{
  3262. Err: fmt.Errorf("failed to decode response body, %w", err),
  3263. Snapshot: snapshot.Bytes(),
  3264. }
  3265. return out, metadata, err
  3266. }
  3267. return out, metadata, err
  3268. }
  3269. func awsAwsjson11_deserializeOpErrorInviteOrganizationToTransferResponsibility(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  3270. var errorBuffer bytes.Buffer
  3271. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  3272. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  3273. }
  3274. errorBody := bytes.NewReader(errorBuffer.Bytes())
  3275. errorCode := "UnknownError"
  3276. errorMessage := errorCode
  3277. headerCode := response.Header.Get("X-Amzn-ErrorType")
  3278. var buff [1024]byte
  3279. ringBuffer := smithyio.NewRingBuffer(buff[:])
  3280. body := io.TeeReader(errorBody, ringBuffer)
  3281. decoder := json.NewDecoder(body)
  3282. decoder.UseNumber()
  3283. bodyInfo, err := getProtocolErrorInfo(decoder)
  3284. if err != nil {
  3285. var snapshot bytes.Buffer
  3286. io.Copy(&snapshot, ringBuffer)
  3287. err = &smithy.DeserializationError{
  3288. Err: fmt.Errorf("failed to decode response body, %w", err),
  3289. Snapshot: snapshot.Bytes(),
  3290. }
  3291. return err
  3292. }
  3293. errorBody.Seek(0, io.SeekStart)
  3294. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  3295. errorCode = restjson.SanitizeErrorCode(typ)
  3296. }
  3297. if len(bodyInfo.Message) != 0 {
  3298. errorMessage = bodyInfo.Message
  3299. }
  3300. switch {
  3301. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  3302. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  3303. case strings.EqualFold("AccessDeniedException", errorCode):
  3304. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  3305. case strings.EqualFold("ConcurrentModificationException", errorCode):
  3306. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  3307. case strings.EqualFold("ConstraintViolationException", errorCode):
  3308. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  3309. case strings.EqualFold("DuplicateHandshakeException", errorCode):
  3310. return awsAwsjson11_deserializeErrorDuplicateHandshakeException(response, errorBody)
  3311. case strings.EqualFold("HandshakeConstraintViolationException", errorCode):
  3312. return awsAwsjson11_deserializeErrorHandshakeConstraintViolationException(response, errorBody)
  3313. case strings.EqualFold("InvalidInputException", errorCode):
  3314. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  3315. case strings.EqualFold("ServiceException", errorCode):
  3316. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  3317. case strings.EqualFold("TooManyRequestsException", errorCode):
  3318. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  3319. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  3320. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  3321. default:
  3322. genericError := &smithy.GenericAPIError{
  3323. Code: errorCode,
  3324. Message: errorMessage,
  3325. }
  3326. return genericError
  3327. }
  3328. }
  3329. type awsAwsjson11_deserializeOpLeaveOrganization struct {
  3330. }
  3331. func (*awsAwsjson11_deserializeOpLeaveOrganization) ID() string {
  3332. return "OperationDeserializer"
  3333. }
  3334. func (m *awsAwsjson11_deserializeOpLeaveOrganization) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  3335. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  3336. ) {
  3337. out, metadata, err = next.HandleDeserialize(ctx, in)
  3338. if err != nil {
  3339. return out, metadata, err
  3340. }
  3341. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  3342. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  3343. defer endTimer()
  3344. defer span.End()
  3345. response, ok := out.RawResponse.(*smithyhttp.Response)
  3346. if !ok {
  3347. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  3348. }
  3349. if response.StatusCode < 200 || response.StatusCode >= 300 {
  3350. return out, metadata, awsAwsjson11_deserializeOpErrorLeaveOrganization(response, &metadata)
  3351. }
  3352. output := &LeaveOrganizationOutput{}
  3353. out.Result = output
  3354. if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
  3355. return out, metadata, &smithy.DeserializationError{
  3356. Err: fmt.Errorf("failed to discard response body, %w", err),
  3357. }
  3358. }
  3359. return out, metadata, err
  3360. }
  3361. func awsAwsjson11_deserializeOpErrorLeaveOrganization(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  3362. var errorBuffer bytes.Buffer
  3363. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  3364. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  3365. }
  3366. errorBody := bytes.NewReader(errorBuffer.Bytes())
  3367. errorCode := "UnknownError"
  3368. errorMessage := errorCode
  3369. headerCode := response.Header.Get("X-Amzn-ErrorType")
  3370. var buff [1024]byte
  3371. ringBuffer := smithyio.NewRingBuffer(buff[:])
  3372. body := io.TeeReader(errorBody, ringBuffer)
  3373. decoder := json.NewDecoder(body)
  3374. decoder.UseNumber()
  3375. bodyInfo, err := getProtocolErrorInfo(decoder)
  3376. if err != nil {
  3377. var snapshot bytes.Buffer
  3378. io.Copy(&snapshot, ringBuffer)
  3379. err = &smithy.DeserializationError{
  3380. Err: fmt.Errorf("failed to decode response body, %w", err),
  3381. Snapshot: snapshot.Bytes(),
  3382. }
  3383. return err
  3384. }
  3385. errorBody.Seek(0, io.SeekStart)
  3386. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  3387. errorCode = restjson.SanitizeErrorCode(typ)
  3388. }
  3389. if len(bodyInfo.Message) != 0 {
  3390. errorMessage = bodyInfo.Message
  3391. }
  3392. switch {
  3393. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  3394. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  3395. case strings.EqualFold("AccessDeniedException", errorCode):
  3396. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  3397. case strings.EqualFold("AccountNotFoundException", errorCode):
  3398. return awsAwsjson11_deserializeErrorAccountNotFoundException(response, errorBody)
  3399. case strings.EqualFold("ConcurrentModificationException", errorCode):
  3400. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  3401. case strings.EqualFold("ConstraintViolationException", errorCode):
  3402. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  3403. case strings.EqualFold("InvalidInputException", errorCode):
  3404. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  3405. case strings.EqualFold("MasterCannotLeaveOrganizationException", errorCode):
  3406. return awsAwsjson11_deserializeErrorMasterCannotLeaveOrganizationException(response, errorBody)
  3407. case strings.EqualFold("ServiceException", errorCode):
  3408. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  3409. case strings.EqualFold("TooManyRequestsException", errorCode):
  3410. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  3411. default:
  3412. genericError := &smithy.GenericAPIError{
  3413. Code: errorCode,
  3414. Message: errorMessage,
  3415. }
  3416. return genericError
  3417. }
  3418. }
  3419. type awsAwsjson11_deserializeOpListAccounts struct {
  3420. }
  3421. func (*awsAwsjson11_deserializeOpListAccounts) ID() string {
  3422. return "OperationDeserializer"
  3423. }
  3424. func (m *awsAwsjson11_deserializeOpListAccounts) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  3425. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  3426. ) {
  3427. out, metadata, err = next.HandleDeserialize(ctx, in)
  3428. if err != nil {
  3429. return out, metadata, err
  3430. }
  3431. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  3432. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  3433. defer endTimer()
  3434. defer span.End()
  3435. response, ok := out.RawResponse.(*smithyhttp.Response)
  3436. if !ok {
  3437. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  3438. }
  3439. if response.StatusCode < 200 || response.StatusCode >= 300 {
  3440. return out, metadata, awsAwsjson11_deserializeOpErrorListAccounts(response, &metadata)
  3441. }
  3442. output := &ListAccountsOutput{}
  3443. out.Result = output
  3444. var buff [1024]byte
  3445. ringBuffer := smithyio.NewRingBuffer(buff[:])
  3446. body := io.TeeReader(response.Body, ringBuffer)
  3447. decoder := json.NewDecoder(body)
  3448. decoder.UseNumber()
  3449. var shape interface{}
  3450. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  3451. var snapshot bytes.Buffer
  3452. io.Copy(&snapshot, ringBuffer)
  3453. err = &smithy.DeserializationError{
  3454. Err: fmt.Errorf("failed to decode response body, %w", err),
  3455. Snapshot: snapshot.Bytes(),
  3456. }
  3457. return out, metadata, err
  3458. }
  3459. err = awsAwsjson11_deserializeOpDocumentListAccountsOutput(&output, shape)
  3460. if err != nil {
  3461. var snapshot bytes.Buffer
  3462. io.Copy(&snapshot, ringBuffer)
  3463. err = &smithy.DeserializationError{
  3464. Err: fmt.Errorf("failed to decode response body, %w", err),
  3465. Snapshot: snapshot.Bytes(),
  3466. }
  3467. return out, metadata, err
  3468. }
  3469. return out, metadata, err
  3470. }
  3471. func awsAwsjson11_deserializeOpErrorListAccounts(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  3472. var errorBuffer bytes.Buffer
  3473. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  3474. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  3475. }
  3476. errorBody := bytes.NewReader(errorBuffer.Bytes())
  3477. errorCode := "UnknownError"
  3478. errorMessage := errorCode
  3479. headerCode := response.Header.Get("X-Amzn-ErrorType")
  3480. var buff [1024]byte
  3481. ringBuffer := smithyio.NewRingBuffer(buff[:])
  3482. body := io.TeeReader(errorBody, ringBuffer)
  3483. decoder := json.NewDecoder(body)
  3484. decoder.UseNumber()
  3485. bodyInfo, err := getProtocolErrorInfo(decoder)
  3486. if err != nil {
  3487. var snapshot bytes.Buffer
  3488. io.Copy(&snapshot, ringBuffer)
  3489. err = &smithy.DeserializationError{
  3490. Err: fmt.Errorf("failed to decode response body, %w", err),
  3491. Snapshot: snapshot.Bytes(),
  3492. }
  3493. return err
  3494. }
  3495. errorBody.Seek(0, io.SeekStart)
  3496. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  3497. errorCode = restjson.SanitizeErrorCode(typ)
  3498. }
  3499. if len(bodyInfo.Message) != 0 {
  3500. errorMessage = bodyInfo.Message
  3501. }
  3502. switch {
  3503. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  3504. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  3505. case strings.EqualFold("AccessDeniedException", errorCode):
  3506. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  3507. case strings.EqualFold("InvalidInputException", errorCode):
  3508. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  3509. case strings.EqualFold("ServiceException", errorCode):
  3510. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  3511. case strings.EqualFold("TooManyRequestsException", errorCode):
  3512. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  3513. default:
  3514. genericError := &smithy.GenericAPIError{
  3515. Code: errorCode,
  3516. Message: errorMessage,
  3517. }
  3518. return genericError
  3519. }
  3520. }
  3521. type awsAwsjson11_deserializeOpListAccountsForParent struct {
  3522. }
  3523. func (*awsAwsjson11_deserializeOpListAccountsForParent) ID() string {
  3524. return "OperationDeserializer"
  3525. }
  3526. func (m *awsAwsjson11_deserializeOpListAccountsForParent) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  3527. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  3528. ) {
  3529. out, metadata, err = next.HandleDeserialize(ctx, in)
  3530. if err != nil {
  3531. return out, metadata, err
  3532. }
  3533. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  3534. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  3535. defer endTimer()
  3536. defer span.End()
  3537. response, ok := out.RawResponse.(*smithyhttp.Response)
  3538. if !ok {
  3539. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  3540. }
  3541. if response.StatusCode < 200 || response.StatusCode >= 300 {
  3542. return out, metadata, awsAwsjson11_deserializeOpErrorListAccountsForParent(response, &metadata)
  3543. }
  3544. output := &ListAccountsForParentOutput{}
  3545. out.Result = output
  3546. var buff [1024]byte
  3547. ringBuffer := smithyio.NewRingBuffer(buff[:])
  3548. body := io.TeeReader(response.Body, ringBuffer)
  3549. decoder := json.NewDecoder(body)
  3550. decoder.UseNumber()
  3551. var shape interface{}
  3552. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  3553. var snapshot bytes.Buffer
  3554. io.Copy(&snapshot, ringBuffer)
  3555. err = &smithy.DeserializationError{
  3556. Err: fmt.Errorf("failed to decode response body, %w", err),
  3557. Snapshot: snapshot.Bytes(),
  3558. }
  3559. return out, metadata, err
  3560. }
  3561. err = awsAwsjson11_deserializeOpDocumentListAccountsForParentOutput(&output, shape)
  3562. if err != nil {
  3563. var snapshot bytes.Buffer
  3564. io.Copy(&snapshot, ringBuffer)
  3565. err = &smithy.DeserializationError{
  3566. Err: fmt.Errorf("failed to decode response body, %w", err),
  3567. Snapshot: snapshot.Bytes(),
  3568. }
  3569. return out, metadata, err
  3570. }
  3571. return out, metadata, err
  3572. }
  3573. func awsAwsjson11_deserializeOpErrorListAccountsForParent(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  3574. var errorBuffer bytes.Buffer
  3575. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  3576. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  3577. }
  3578. errorBody := bytes.NewReader(errorBuffer.Bytes())
  3579. errorCode := "UnknownError"
  3580. errorMessage := errorCode
  3581. headerCode := response.Header.Get("X-Amzn-ErrorType")
  3582. var buff [1024]byte
  3583. ringBuffer := smithyio.NewRingBuffer(buff[:])
  3584. body := io.TeeReader(errorBody, ringBuffer)
  3585. decoder := json.NewDecoder(body)
  3586. decoder.UseNumber()
  3587. bodyInfo, err := getProtocolErrorInfo(decoder)
  3588. if err != nil {
  3589. var snapshot bytes.Buffer
  3590. io.Copy(&snapshot, ringBuffer)
  3591. err = &smithy.DeserializationError{
  3592. Err: fmt.Errorf("failed to decode response body, %w", err),
  3593. Snapshot: snapshot.Bytes(),
  3594. }
  3595. return err
  3596. }
  3597. errorBody.Seek(0, io.SeekStart)
  3598. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  3599. errorCode = restjson.SanitizeErrorCode(typ)
  3600. }
  3601. if len(bodyInfo.Message) != 0 {
  3602. errorMessage = bodyInfo.Message
  3603. }
  3604. switch {
  3605. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  3606. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  3607. case strings.EqualFold("AccessDeniedException", errorCode):
  3608. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  3609. case strings.EqualFold("InvalidInputException", errorCode):
  3610. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  3611. case strings.EqualFold("ParentNotFoundException", errorCode):
  3612. return awsAwsjson11_deserializeErrorParentNotFoundException(response, errorBody)
  3613. case strings.EqualFold("ServiceException", errorCode):
  3614. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  3615. case strings.EqualFold("TooManyRequestsException", errorCode):
  3616. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  3617. default:
  3618. genericError := &smithy.GenericAPIError{
  3619. Code: errorCode,
  3620. Message: errorMessage,
  3621. }
  3622. return genericError
  3623. }
  3624. }
  3625. type awsAwsjson11_deserializeOpListAccountsWithInvalidEffectivePolicy struct {
  3626. }
  3627. func (*awsAwsjson11_deserializeOpListAccountsWithInvalidEffectivePolicy) ID() string {
  3628. return "OperationDeserializer"
  3629. }
  3630. func (m *awsAwsjson11_deserializeOpListAccountsWithInvalidEffectivePolicy) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  3631. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  3632. ) {
  3633. out, metadata, err = next.HandleDeserialize(ctx, in)
  3634. if err != nil {
  3635. return out, metadata, err
  3636. }
  3637. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  3638. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  3639. defer endTimer()
  3640. defer span.End()
  3641. response, ok := out.RawResponse.(*smithyhttp.Response)
  3642. if !ok {
  3643. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  3644. }
  3645. if response.StatusCode < 200 || response.StatusCode >= 300 {
  3646. return out, metadata, awsAwsjson11_deserializeOpErrorListAccountsWithInvalidEffectivePolicy(response, &metadata)
  3647. }
  3648. output := &ListAccountsWithInvalidEffectivePolicyOutput{}
  3649. out.Result = output
  3650. var buff [1024]byte
  3651. ringBuffer := smithyio.NewRingBuffer(buff[:])
  3652. body := io.TeeReader(response.Body, ringBuffer)
  3653. decoder := json.NewDecoder(body)
  3654. decoder.UseNumber()
  3655. var shape interface{}
  3656. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  3657. var snapshot bytes.Buffer
  3658. io.Copy(&snapshot, ringBuffer)
  3659. err = &smithy.DeserializationError{
  3660. Err: fmt.Errorf("failed to decode response body, %w", err),
  3661. Snapshot: snapshot.Bytes(),
  3662. }
  3663. return out, metadata, err
  3664. }
  3665. err = awsAwsjson11_deserializeOpDocumentListAccountsWithInvalidEffectivePolicyOutput(&output, shape)
  3666. if err != nil {
  3667. var snapshot bytes.Buffer
  3668. io.Copy(&snapshot, ringBuffer)
  3669. err = &smithy.DeserializationError{
  3670. Err: fmt.Errorf("failed to decode response body, %w", err),
  3671. Snapshot: snapshot.Bytes(),
  3672. }
  3673. return out, metadata, err
  3674. }
  3675. return out, metadata, err
  3676. }
  3677. func awsAwsjson11_deserializeOpErrorListAccountsWithInvalidEffectivePolicy(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  3678. var errorBuffer bytes.Buffer
  3679. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  3680. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  3681. }
  3682. errorBody := bytes.NewReader(errorBuffer.Bytes())
  3683. errorCode := "UnknownError"
  3684. errorMessage := errorCode
  3685. headerCode := response.Header.Get("X-Amzn-ErrorType")
  3686. var buff [1024]byte
  3687. ringBuffer := smithyio.NewRingBuffer(buff[:])
  3688. body := io.TeeReader(errorBody, ringBuffer)
  3689. decoder := json.NewDecoder(body)
  3690. decoder.UseNumber()
  3691. bodyInfo, err := getProtocolErrorInfo(decoder)
  3692. if err != nil {
  3693. var snapshot bytes.Buffer
  3694. io.Copy(&snapshot, ringBuffer)
  3695. err = &smithy.DeserializationError{
  3696. Err: fmt.Errorf("failed to decode response body, %w", err),
  3697. Snapshot: snapshot.Bytes(),
  3698. }
  3699. return err
  3700. }
  3701. errorBody.Seek(0, io.SeekStart)
  3702. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  3703. errorCode = restjson.SanitizeErrorCode(typ)
  3704. }
  3705. if len(bodyInfo.Message) != 0 {
  3706. errorMessage = bodyInfo.Message
  3707. }
  3708. switch {
  3709. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  3710. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  3711. case strings.EqualFold("AccessDeniedException", errorCode):
  3712. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  3713. case strings.EqualFold("ConstraintViolationException", errorCode):
  3714. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  3715. case strings.EqualFold("EffectivePolicyNotFoundException", errorCode):
  3716. return awsAwsjson11_deserializeErrorEffectivePolicyNotFoundException(response, errorBody)
  3717. case strings.EqualFold("InvalidInputException", errorCode):
  3718. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  3719. case strings.EqualFold("ServiceException", errorCode):
  3720. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  3721. case strings.EqualFold("TooManyRequestsException", errorCode):
  3722. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  3723. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  3724. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  3725. default:
  3726. genericError := &smithy.GenericAPIError{
  3727. Code: errorCode,
  3728. Message: errorMessage,
  3729. }
  3730. return genericError
  3731. }
  3732. }
  3733. type awsAwsjson11_deserializeOpListAWSServiceAccessForOrganization struct {
  3734. }
  3735. func (*awsAwsjson11_deserializeOpListAWSServiceAccessForOrganization) ID() string {
  3736. return "OperationDeserializer"
  3737. }
  3738. func (m *awsAwsjson11_deserializeOpListAWSServiceAccessForOrganization) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  3739. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  3740. ) {
  3741. out, metadata, err = next.HandleDeserialize(ctx, in)
  3742. if err != nil {
  3743. return out, metadata, err
  3744. }
  3745. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  3746. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  3747. defer endTimer()
  3748. defer span.End()
  3749. response, ok := out.RawResponse.(*smithyhttp.Response)
  3750. if !ok {
  3751. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  3752. }
  3753. if response.StatusCode < 200 || response.StatusCode >= 300 {
  3754. return out, metadata, awsAwsjson11_deserializeOpErrorListAWSServiceAccessForOrganization(response, &metadata)
  3755. }
  3756. output := &ListAWSServiceAccessForOrganizationOutput{}
  3757. out.Result = output
  3758. var buff [1024]byte
  3759. ringBuffer := smithyio.NewRingBuffer(buff[:])
  3760. body := io.TeeReader(response.Body, ringBuffer)
  3761. decoder := json.NewDecoder(body)
  3762. decoder.UseNumber()
  3763. var shape interface{}
  3764. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  3765. var snapshot bytes.Buffer
  3766. io.Copy(&snapshot, ringBuffer)
  3767. err = &smithy.DeserializationError{
  3768. Err: fmt.Errorf("failed to decode response body, %w", err),
  3769. Snapshot: snapshot.Bytes(),
  3770. }
  3771. return out, metadata, err
  3772. }
  3773. err = awsAwsjson11_deserializeOpDocumentListAWSServiceAccessForOrganizationOutput(&output, shape)
  3774. if err != nil {
  3775. var snapshot bytes.Buffer
  3776. io.Copy(&snapshot, ringBuffer)
  3777. err = &smithy.DeserializationError{
  3778. Err: fmt.Errorf("failed to decode response body, %w", err),
  3779. Snapshot: snapshot.Bytes(),
  3780. }
  3781. return out, metadata, err
  3782. }
  3783. return out, metadata, err
  3784. }
  3785. func awsAwsjson11_deserializeOpErrorListAWSServiceAccessForOrganization(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  3786. var errorBuffer bytes.Buffer
  3787. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  3788. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  3789. }
  3790. errorBody := bytes.NewReader(errorBuffer.Bytes())
  3791. errorCode := "UnknownError"
  3792. errorMessage := errorCode
  3793. headerCode := response.Header.Get("X-Amzn-ErrorType")
  3794. var buff [1024]byte
  3795. ringBuffer := smithyio.NewRingBuffer(buff[:])
  3796. body := io.TeeReader(errorBody, ringBuffer)
  3797. decoder := json.NewDecoder(body)
  3798. decoder.UseNumber()
  3799. bodyInfo, err := getProtocolErrorInfo(decoder)
  3800. if err != nil {
  3801. var snapshot bytes.Buffer
  3802. io.Copy(&snapshot, ringBuffer)
  3803. err = &smithy.DeserializationError{
  3804. Err: fmt.Errorf("failed to decode response body, %w", err),
  3805. Snapshot: snapshot.Bytes(),
  3806. }
  3807. return err
  3808. }
  3809. errorBody.Seek(0, io.SeekStart)
  3810. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  3811. errorCode = restjson.SanitizeErrorCode(typ)
  3812. }
  3813. if len(bodyInfo.Message) != 0 {
  3814. errorMessage = bodyInfo.Message
  3815. }
  3816. switch {
  3817. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  3818. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  3819. case strings.EqualFold("AccessDeniedException", errorCode):
  3820. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  3821. case strings.EqualFold("ConstraintViolationException", errorCode):
  3822. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  3823. case strings.EqualFold("InvalidInputException", errorCode):
  3824. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  3825. case strings.EqualFold("ServiceException", errorCode):
  3826. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  3827. case strings.EqualFold("TooManyRequestsException", errorCode):
  3828. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  3829. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  3830. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  3831. default:
  3832. genericError := &smithy.GenericAPIError{
  3833. Code: errorCode,
  3834. Message: errorMessage,
  3835. }
  3836. return genericError
  3837. }
  3838. }
  3839. type awsAwsjson11_deserializeOpListChildren struct {
  3840. }
  3841. func (*awsAwsjson11_deserializeOpListChildren) ID() string {
  3842. return "OperationDeserializer"
  3843. }
  3844. func (m *awsAwsjson11_deserializeOpListChildren) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  3845. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  3846. ) {
  3847. out, metadata, err = next.HandleDeserialize(ctx, in)
  3848. if err != nil {
  3849. return out, metadata, err
  3850. }
  3851. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  3852. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  3853. defer endTimer()
  3854. defer span.End()
  3855. response, ok := out.RawResponse.(*smithyhttp.Response)
  3856. if !ok {
  3857. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  3858. }
  3859. if response.StatusCode < 200 || response.StatusCode >= 300 {
  3860. return out, metadata, awsAwsjson11_deserializeOpErrorListChildren(response, &metadata)
  3861. }
  3862. output := &ListChildrenOutput{}
  3863. out.Result = output
  3864. var buff [1024]byte
  3865. ringBuffer := smithyio.NewRingBuffer(buff[:])
  3866. body := io.TeeReader(response.Body, ringBuffer)
  3867. decoder := json.NewDecoder(body)
  3868. decoder.UseNumber()
  3869. var shape interface{}
  3870. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  3871. var snapshot bytes.Buffer
  3872. io.Copy(&snapshot, ringBuffer)
  3873. err = &smithy.DeserializationError{
  3874. Err: fmt.Errorf("failed to decode response body, %w", err),
  3875. Snapshot: snapshot.Bytes(),
  3876. }
  3877. return out, metadata, err
  3878. }
  3879. err = awsAwsjson11_deserializeOpDocumentListChildrenOutput(&output, shape)
  3880. if err != nil {
  3881. var snapshot bytes.Buffer
  3882. io.Copy(&snapshot, ringBuffer)
  3883. err = &smithy.DeserializationError{
  3884. Err: fmt.Errorf("failed to decode response body, %w", err),
  3885. Snapshot: snapshot.Bytes(),
  3886. }
  3887. return out, metadata, err
  3888. }
  3889. return out, metadata, err
  3890. }
  3891. func awsAwsjson11_deserializeOpErrorListChildren(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  3892. var errorBuffer bytes.Buffer
  3893. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  3894. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  3895. }
  3896. errorBody := bytes.NewReader(errorBuffer.Bytes())
  3897. errorCode := "UnknownError"
  3898. errorMessage := errorCode
  3899. headerCode := response.Header.Get("X-Amzn-ErrorType")
  3900. var buff [1024]byte
  3901. ringBuffer := smithyio.NewRingBuffer(buff[:])
  3902. body := io.TeeReader(errorBody, ringBuffer)
  3903. decoder := json.NewDecoder(body)
  3904. decoder.UseNumber()
  3905. bodyInfo, err := getProtocolErrorInfo(decoder)
  3906. if err != nil {
  3907. var snapshot bytes.Buffer
  3908. io.Copy(&snapshot, ringBuffer)
  3909. err = &smithy.DeserializationError{
  3910. Err: fmt.Errorf("failed to decode response body, %w", err),
  3911. Snapshot: snapshot.Bytes(),
  3912. }
  3913. return err
  3914. }
  3915. errorBody.Seek(0, io.SeekStart)
  3916. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  3917. errorCode = restjson.SanitizeErrorCode(typ)
  3918. }
  3919. if len(bodyInfo.Message) != 0 {
  3920. errorMessage = bodyInfo.Message
  3921. }
  3922. switch {
  3923. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  3924. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  3925. case strings.EqualFold("AccessDeniedException", errorCode):
  3926. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  3927. case strings.EqualFold("InvalidInputException", errorCode):
  3928. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  3929. case strings.EqualFold("ParentNotFoundException", errorCode):
  3930. return awsAwsjson11_deserializeErrorParentNotFoundException(response, errorBody)
  3931. case strings.EqualFold("ServiceException", errorCode):
  3932. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  3933. case strings.EqualFold("TooManyRequestsException", errorCode):
  3934. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  3935. default:
  3936. genericError := &smithy.GenericAPIError{
  3937. Code: errorCode,
  3938. Message: errorMessage,
  3939. }
  3940. return genericError
  3941. }
  3942. }
  3943. type awsAwsjson11_deserializeOpListCreateAccountStatus struct {
  3944. }
  3945. func (*awsAwsjson11_deserializeOpListCreateAccountStatus) ID() string {
  3946. return "OperationDeserializer"
  3947. }
  3948. func (m *awsAwsjson11_deserializeOpListCreateAccountStatus) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  3949. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  3950. ) {
  3951. out, metadata, err = next.HandleDeserialize(ctx, in)
  3952. if err != nil {
  3953. return out, metadata, err
  3954. }
  3955. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  3956. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  3957. defer endTimer()
  3958. defer span.End()
  3959. response, ok := out.RawResponse.(*smithyhttp.Response)
  3960. if !ok {
  3961. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  3962. }
  3963. if response.StatusCode < 200 || response.StatusCode >= 300 {
  3964. return out, metadata, awsAwsjson11_deserializeOpErrorListCreateAccountStatus(response, &metadata)
  3965. }
  3966. output := &ListCreateAccountStatusOutput{}
  3967. out.Result = output
  3968. var buff [1024]byte
  3969. ringBuffer := smithyio.NewRingBuffer(buff[:])
  3970. body := io.TeeReader(response.Body, ringBuffer)
  3971. decoder := json.NewDecoder(body)
  3972. decoder.UseNumber()
  3973. var shape interface{}
  3974. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  3975. var snapshot bytes.Buffer
  3976. io.Copy(&snapshot, ringBuffer)
  3977. err = &smithy.DeserializationError{
  3978. Err: fmt.Errorf("failed to decode response body, %w", err),
  3979. Snapshot: snapshot.Bytes(),
  3980. }
  3981. return out, metadata, err
  3982. }
  3983. err = awsAwsjson11_deserializeOpDocumentListCreateAccountStatusOutput(&output, shape)
  3984. if err != nil {
  3985. var snapshot bytes.Buffer
  3986. io.Copy(&snapshot, ringBuffer)
  3987. err = &smithy.DeserializationError{
  3988. Err: fmt.Errorf("failed to decode response body, %w", err),
  3989. Snapshot: snapshot.Bytes(),
  3990. }
  3991. return out, metadata, err
  3992. }
  3993. return out, metadata, err
  3994. }
  3995. func awsAwsjson11_deserializeOpErrorListCreateAccountStatus(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  3996. var errorBuffer bytes.Buffer
  3997. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  3998. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  3999. }
  4000. errorBody := bytes.NewReader(errorBuffer.Bytes())
  4001. errorCode := "UnknownError"
  4002. errorMessage := errorCode
  4003. headerCode := response.Header.Get("X-Amzn-ErrorType")
  4004. var buff [1024]byte
  4005. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4006. body := io.TeeReader(errorBody, ringBuffer)
  4007. decoder := json.NewDecoder(body)
  4008. decoder.UseNumber()
  4009. bodyInfo, err := getProtocolErrorInfo(decoder)
  4010. if err != nil {
  4011. var snapshot bytes.Buffer
  4012. io.Copy(&snapshot, ringBuffer)
  4013. err = &smithy.DeserializationError{
  4014. Err: fmt.Errorf("failed to decode response body, %w", err),
  4015. Snapshot: snapshot.Bytes(),
  4016. }
  4017. return err
  4018. }
  4019. errorBody.Seek(0, io.SeekStart)
  4020. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  4021. errorCode = restjson.SanitizeErrorCode(typ)
  4022. }
  4023. if len(bodyInfo.Message) != 0 {
  4024. errorMessage = bodyInfo.Message
  4025. }
  4026. switch {
  4027. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  4028. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  4029. case strings.EqualFold("AccessDeniedException", errorCode):
  4030. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  4031. case strings.EqualFold("InvalidInputException", errorCode):
  4032. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  4033. case strings.EqualFold("ServiceException", errorCode):
  4034. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  4035. case strings.EqualFold("TooManyRequestsException", errorCode):
  4036. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  4037. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  4038. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  4039. default:
  4040. genericError := &smithy.GenericAPIError{
  4041. Code: errorCode,
  4042. Message: errorMessage,
  4043. }
  4044. return genericError
  4045. }
  4046. }
  4047. type awsAwsjson11_deserializeOpListDelegatedAdministrators struct {
  4048. }
  4049. func (*awsAwsjson11_deserializeOpListDelegatedAdministrators) ID() string {
  4050. return "OperationDeserializer"
  4051. }
  4052. func (m *awsAwsjson11_deserializeOpListDelegatedAdministrators) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  4053. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  4054. ) {
  4055. out, metadata, err = next.HandleDeserialize(ctx, in)
  4056. if err != nil {
  4057. return out, metadata, err
  4058. }
  4059. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  4060. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  4061. defer endTimer()
  4062. defer span.End()
  4063. response, ok := out.RawResponse.(*smithyhttp.Response)
  4064. if !ok {
  4065. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  4066. }
  4067. if response.StatusCode < 200 || response.StatusCode >= 300 {
  4068. return out, metadata, awsAwsjson11_deserializeOpErrorListDelegatedAdministrators(response, &metadata)
  4069. }
  4070. output := &ListDelegatedAdministratorsOutput{}
  4071. out.Result = output
  4072. var buff [1024]byte
  4073. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4074. body := io.TeeReader(response.Body, ringBuffer)
  4075. decoder := json.NewDecoder(body)
  4076. decoder.UseNumber()
  4077. var shape interface{}
  4078. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  4079. var snapshot bytes.Buffer
  4080. io.Copy(&snapshot, ringBuffer)
  4081. err = &smithy.DeserializationError{
  4082. Err: fmt.Errorf("failed to decode response body, %w", err),
  4083. Snapshot: snapshot.Bytes(),
  4084. }
  4085. return out, metadata, err
  4086. }
  4087. err = awsAwsjson11_deserializeOpDocumentListDelegatedAdministratorsOutput(&output, shape)
  4088. if err != nil {
  4089. var snapshot bytes.Buffer
  4090. io.Copy(&snapshot, ringBuffer)
  4091. err = &smithy.DeserializationError{
  4092. Err: fmt.Errorf("failed to decode response body, %w", err),
  4093. Snapshot: snapshot.Bytes(),
  4094. }
  4095. return out, metadata, err
  4096. }
  4097. return out, metadata, err
  4098. }
  4099. func awsAwsjson11_deserializeOpErrorListDelegatedAdministrators(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  4100. var errorBuffer bytes.Buffer
  4101. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  4102. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  4103. }
  4104. errorBody := bytes.NewReader(errorBuffer.Bytes())
  4105. errorCode := "UnknownError"
  4106. errorMessage := errorCode
  4107. headerCode := response.Header.Get("X-Amzn-ErrorType")
  4108. var buff [1024]byte
  4109. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4110. body := io.TeeReader(errorBody, ringBuffer)
  4111. decoder := json.NewDecoder(body)
  4112. decoder.UseNumber()
  4113. bodyInfo, err := getProtocolErrorInfo(decoder)
  4114. if err != nil {
  4115. var snapshot bytes.Buffer
  4116. io.Copy(&snapshot, ringBuffer)
  4117. err = &smithy.DeserializationError{
  4118. Err: fmt.Errorf("failed to decode response body, %w", err),
  4119. Snapshot: snapshot.Bytes(),
  4120. }
  4121. return err
  4122. }
  4123. errorBody.Seek(0, io.SeekStart)
  4124. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  4125. errorCode = restjson.SanitizeErrorCode(typ)
  4126. }
  4127. if len(bodyInfo.Message) != 0 {
  4128. errorMessage = bodyInfo.Message
  4129. }
  4130. switch {
  4131. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  4132. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  4133. case strings.EqualFold("AccessDeniedException", errorCode):
  4134. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  4135. case strings.EqualFold("ConstraintViolationException", errorCode):
  4136. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  4137. case strings.EqualFold("InvalidInputException", errorCode):
  4138. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  4139. case strings.EqualFold("ServiceException", errorCode):
  4140. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  4141. case strings.EqualFold("TooManyRequestsException", errorCode):
  4142. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  4143. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  4144. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  4145. default:
  4146. genericError := &smithy.GenericAPIError{
  4147. Code: errorCode,
  4148. Message: errorMessage,
  4149. }
  4150. return genericError
  4151. }
  4152. }
  4153. type awsAwsjson11_deserializeOpListDelegatedServicesForAccount struct {
  4154. }
  4155. func (*awsAwsjson11_deserializeOpListDelegatedServicesForAccount) ID() string {
  4156. return "OperationDeserializer"
  4157. }
  4158. func (m *awsAwsjson11_deserializeOpListDelegatedServicesForAccount) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  4159. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  4160. ) {
  4161. out, metadata, err = next.HandleDeserialize(ctx, in)
  4162. if err != nil {
  4163. return out, metadata, err
  4164. }
  4165. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  4166. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  4167. defer endTimer()
  4168. defer span.End()
  4169. response, ok := out.RawResponse.(*smithyhttp.Response)
  4170. if !ok {
  4171. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  4172. }
  4173. if response.StatusCode < 200 || response.StatusCode >= 300 {
  4174. return out, metadata, awsAwsjson11_deserializeOpErrorListDelegatedServicesForAccount(response, &metadata)
  4175. }
  4176. output := &ListDelegatedServicesForAccountOutput{}
  4177. out.Result = output
  4178. var buff [1024]byte
  4179. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4180. body := io.TeeReader(response.Body, ringBuffer)
  4181. decoder := json.NewDecoder(body)
  4182. decoder.UseNumber()
  4183. var shape interface{}
  4184. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  4185. var snapshot bytes.Buffer
  4186. io.Copy(&snapshot, ringBuffer)
  4187. err = &smithy.DeserializationError{
  4188. Err: fmt.Errorf("failed to decode response body, %w", err),
  4189. Snapshot: snapshot.Bytes(),
  4190. }
  4191. return out, metadata, err
  4192. }
  4193. err = awsAwsjson11_deserializeOpDocumentListDelegatedServicesForAccountOutput(&output, shape)
  4194. if err != nil {
  4195. var snapshot bytes.Buffer
  4196. io.Copy(&snapshot, ringBuffer)
  4197. err = &smithy.DeserializationError{
  4198. Err: fmt.Errorf("failed to decode response body, %w", err),
  4199. Snapshot: snapshot.Bytes(),
  4200. }
  4201. return out, metadata, err
  4202. }
  4203. return out, metadata, err
  4204. }
  4205. func awsAwsjson11_deserializeOpErrorListDelegatedServicesForAccount(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  4206. var errorBuffer bytes.Buffer
  4207. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  4208. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  4209. }
  4210. errorBody := bytes.NewReader(errorBuffer.Bytes())
  4211. errorCode := "UnknownError"
  4212. errorMessage := errorCode
  4213. headerCode := response.Header.Get("X-Amzn-ErrorType")
  4214. var buff [1024]byte
  4215. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4216. body := io.TeeReader(errorBody, ringBuffer)
  4217. decoder := json.NewDecoder(body)
  4218. decoder.UseNumber()
  4219. bodyInfo, err := getProtocolErrorInfo(decoder)
  4220. if err != nil {
  4221. var snapshot bytes.Buffer
  4222. io.Copy(&snapshot, ringBuffer)
  4223. err = &smithy.DeserializationError{
  4224. Err: fmt.Errorf("failed to decode response body, %w", err),
  4225. Snapshot: snapshot.Bytes(),
  4226. }
  4227. return err
  4228. }
  4229. errorBody.Seek(0, io.SeekStart)
  4230. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  4231. errorCode = restjson.SanitizeErrorCode(typ)
  4232. }
  4233. if len(bodyInfo.Message) != 0 {
  4234. errorMessage = bodyInfo.Message
  4235. }
  4236. switch {
  4237. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  4238. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  4239. case strings.EqualFold("AccessDeniedException", errorCode):
  4240. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  4241. case strings.EqualFold("AccountNotFoundException", errorCode):
  4242. return awsAwsjson11_deserializeErrorAccountNotFoundException(response, errorBody)
  4243. case strings.EqualFold("AccountNotRegisteredException", errorCode):
  4244. return awsAwsjson11_deserializeErrorAccountNotRegisteredException(response, errorBody)
  4245. case strings.EqualFold("ConstraintViolationException", errorCode):
  4246. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  4247. case strings.EqualFold("InvalidInputException", errorCode):
  4248. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  4249. case strings.EqualFold("ServiceException", errorCode):
  4250. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  4251. case strings.EqualFold("TooManyRequestsException", errorCode):
  4252. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  4253. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  4254. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  4255. default:
  4256. genericError := &smithy.GenericAPIError{
  4257. Code: errorCode,
  4258. Message: errorMessage,
  4259. }
  4260. return genericError
  4261. }
  4262. }
  4263. type awsAwsjson11_deserializeOpListEffectivePolicyValidationErrors struct {
  4264. }
  4265. func (*awsAwsjson11_deserializeOpListEffectivePolicyValidationErrors) ID() string {
  4266. return "OperationDeserializer"
  4267. }
  4268. func (m *awsAwsjson11_deserializeOpListEffectivePolicyValidationErrors) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  4269. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  4270. ) {
  4271. out, metadata, err = next.HandleDeserialize(ctx, in)
  4272. if err != nil {
  4273. return out, metadata, err
  4274. }
  4275. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  4276. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  4277. defer endTimer()
  4278. defer span.End()
  4279. response, ok := out.RawResponse.(*smithyhttp.Response)
  4280. if !ok {
  4281. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  4282. }
  4283. if response.StatusCode < 200 || response.StatusCode >= 300 {
  4284. return out, metadata, awsAwsjson11_deserializeOpErrorListEffectivePolicyValidationErrors(response, &metadata)
  4285. }
  4286. output := &ListEffectivePolicyValidationErrorsOutput{}
  4287. out.Result = output
  4288. var buff [1024]byte
  4289. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4290. body := io.TeeReader(response.Body, ringBuffer)
  4291. decoder := json.NewDecoder(body)
  4292. decoder.UseNumber()
  4293. var shape interface{}
  4294. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  4295. var snapshot bytes.Buffer
  4296. io.Copy(&snapshot, ringBuffer)
  4297. err = &smithy.DeserializationError{
  4298. Err: fmt.Errorf("failed to decode response body, %w", err),
  4299. Snapshot: snapshot.Bytes(),
  4300. }
  4301. return out, metadata, err
  4302. }
  4303. err = awsAwsjson11_deserializeOpDocumentListEffectivePolicyValidationErrorsOutput(&output, shape)
  4304. if err != nil {
  4305. var snapshot bytes.Buffer
  4306. io.Copy(&snapshot, ringBuffer)
  4307. err = &smithy.DeserializationError{
  4308. Err: fmt.Errorf("failed to decode response body, %w", err),
  4309. Snapshot: snapshot.Bytes(),
  4310. }
  4311. return out, metadata, err
  4312. }
  4313. return out, metadata, err
  4314. }
  4315. func awsAwsjson11_deserializeOpErrorListEffectivePolicyValidationErrors(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  4316. var errorBuffer bytes.Buffer
  4317. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  4318. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  4319. }
  4320. errorBody := bytes.NewReader(errorBuffer.Bytes())
  4321. errorCode := "UnknownError"
  4322. errorMessage := errorCode
  4323. headerCode := response.Header.Get("X-Amzn-ErrorType")
  4324. var buff [1024]byte
  4325. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4326. body := io.TeeReader(errorBody, ringBuffer)
  4327. decoder := json.NewDecoder(body)
  4328. decoder.UseNumber()
  4329. bodyInfo, err := getProtocolErrorInfo(decoder)
  4330. if err != nil {
  4331. var snapshot bytes.Buffer
  4332. io.Copy(&snapshot, ringBuffer)
  4333. err = &smithy.DeserializationError{
  4334. Err: fmt.Errorf("failed to decode response body, %w", err),
  4335. Snapshot: snapshot.Bytes(),
  4336. }
  4337. return err
  4338. }
  4339. errorBody.Seek(0, io.SeekStart)
  4340. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  4341. errorCode = restjson.SanitizeErrorCode(typ)
  4342. }
  4343. if len(bodyInfo.Message) != 0 {
  4344. errorMessage = bodyInfo.Message
  4345. }
  4346. switch {
  4347. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  4348. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  4349. case strings.EqualFold("AccessDeniedException", errorCode):
  4350. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  4351. case strings.EqualFold("AccountNotFoundException", errorCode):
  4352. return awsAwsjson11_deserializeErrorAccountNotFoundException(response, errorBody)
  4353. case strings.EqualFold("ConstraintViolationException", errorCode):
  4354. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  4355. case strings.EqualFold("EffectivePolicyNotFoundException", errorCode):
  4356. return awsAwsjson11_deserializeErrorEffectivePolicyNotFoundException(response, errorBody)
  4357. case strings.EqualFold("InvalidInputException", errorCode):
  4358. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  4359. case strings.EqualFold("ServiceException", errorCode):
  4360. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  4361. case strings.EqualFold("TooManyRequestsException", errorCode):
  4362. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  4363. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  4364. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  4365. default:
  4366. genericError := &smithy.GenericAPIError{
  4367. Code: errorCode,
  4368. Message: errorMessage,
  4369. }
  4370. return genericError
  4371. }
  4372. }
  4373. type awsAwsjson11_deserializeOpListHandshakesForAccount struct {
  4374. }
  4375. func (*awsAwsjson11_deserializeOpListHandshakesForAccount) ID() string {
  4376. return "OperationDeserializer"
  4377. }
  4378. func (m *awsAwsjson11_deserializeOpListHandshakesForAccount) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  4379. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  4380. ) {
  4381. out, metadata, err = next.HandleDeserialize(ctx, in)
  4382. if err != nil {
  4383. return out, metadata, err
  4384. }
  4385. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  4386. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  4387. defer endTimer()
  4388. defer span.End()
  4389. response, ok := out.RawResponse.(*smithyhttp.Response)
  4390. if !ok {
  4391. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  4392. }
  4393. if response.StatusCode < 200 || response.StatusCode >= 300 {
  4394. return out, metadata, awsAwsjson11_deserializeOpErrorListHandshakesForAccount(response, &metadata)
  4395. }
  4396. output := &ListHandshakesForAccountOutput{}
  4397. out.Result = output
  4398. var buff [1024]byte
  4399. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4400. body := io.TeeReader(response.Body, ringBuffer)
  4401. decoder := json.NewDecoder(body)
  4402. decoder.UseNumber()
  4403. var shape interface{}
  4404. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  4405. var snapshot bytes.Buffer
  4406. io.Copy(&snapshot, ringBuffer)
  4407. err = &smithy.DeserializationError{
  4408. Err: fmt.Errorf("failed to decode response body, %w", err),
  4409. Snapshot: snapshot.Bytes(),
  4410. }
  4411. return out, metadata, err
  4412. }
  4413. err = awsAwsjson11_deserializeOpDocumentListHandshakesForAccountOutput(&output, shape)
  4414. if err != nil {
  4415. var snapshot bytes.Buffer
  4416. io.Copy(&snapshot, ringBuffer)
  4417. err = &smithy.DeserializationError{
  4418. Err: fmt.Errorf("failed to decode response body, %w", err),
  4419. Snapshot: snapshot.Bytes(),
  4420. }
  4421. return out, metadata, err
  4422. }
  4423. return out, metadata, err
  4424. }
  4425. func awsAwsjson11_deserializeOpErrorListHandshakesForAccount(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  4426. var errorBuffer bytes.Buffer
  4427. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  4428. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  4429. }
  4430. errorBody := bytes.NewReader(errorBuffer.Bytes())
  4431. errorCode := "UnknownError"
  4432. errorMessage := errorCode
  4433. headerCode := response.Header.Get("X-Amzn-ErrorType")
  4434. var buff [1024]byte
  4435. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4436. body := io.TeeReader(errorBody, ringBuffer)
  4437. decoder := json.NewDecoder(body)
  4438. decoder.UseNumber()
  4439. bodyInfo, err := getProtocolErrorInfo(decoder)
  4440. if err != nil {
  4441. var snapshot bytes.Buffer
  4442. io.Copy(&snapshot, ringBuffer)
  4443. err = &smithy.DeserializationError{
  4444. Err: fmt.Errorf("failed to decode response body, %w", err),
  4445. Snapshot: snapshot.Bytes(),
  4446. }
  4447. return err
  4448. }
  4449. errorBody.Seek(0, io.SeekStart)
  4450. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  4451. errorCode = restjson.SanitizeErrorCode(typ)
  4452. }
  4453. if len(bodyInfo.Message) != 0 {
  4454. errorMessage = bodyInfo.Message
  4455. }
  4456. switch {
  4457. case strings.EqualFold("AccessDeniedException", errorCode):
  4458. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  4459. case strings.EqualFold("ConcurrentModificationException", errorCode):
  4460. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  4461. case strings.EqualFold("InvalidInputException", errorCode):
  4462. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  4463. case strings.EqualFold("ServiceException", errorCode):
  4464. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  4465. case strings.EqualFold("TooManyRequestsException", errorCode):
  4466. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  4467. default:
  4468. genericError := &smithy.GenericAPIError{
  4469. Code: errorCode,
  4470. Message: errorMessage,
  4471. }
  4472. return genericError
  4473. }
  4474. }
  4475. type awsAwsjson11_deserializeOpListHandshakesForOrganization struct {
  4476. }
  4477. func (*awsAwsjson11_deserializeOpListHandshakesForOrganization) ID() string {
  4478. return "OperationDeserializer"
  4479. }
  4480. func (m *awsAwsjson11_deserializeOpListHandshakesForOrganization) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  4481. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  4482. ) {
  4483. out, metadata, err = next.HandleDeserialize(ctx, in)
  4484. if err != nil {
  4485. return out, metadata, err
  4486. }
  4487. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  4488. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  4489. defer endTimer()
  4490. defer span.End()
  4491. response, ok := out.RawResponse.(*smithyhttp.Response)
  4492. if !ok {
  4493. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  4494. }
  4495. if response.StatusCode < 200 || response.StatusCode >= 300 {
  4496. return out, metadata, awsAwsjson11_deserializeOpErrorListHandshakesForOrganization(response, &metadata)
  4497. }
  4498. output := &ListHandshakesForOrganizationOutput{}
  4499. out.Result = output
  4500. var buff [1024]byte
  4501. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4502. body := io.TeeReader(response.Body, ringBuffer)
  4503. decoder := json.NewDecoder(body)
  4504. decoder.UseNumber()
  4505. var shape interface{}
  4506. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  4507. var snapshot bytes.Buffer
  4508. io.Copy(&snapshot, ringBuffer)
  4509. err = &smithy.DeserializationError{
  4510. Err: fmt.Errorf("failed to decode response body, %w", err),
  4511. Snapshot: snapshot.Bytes(),
  4512. }
  4513. return out, metadata, err
  4514. }
  4515. err = awsAwsjson11_deserializeOpDocumentListHandshakesForOrganizationOutput(&output, shape)
  4516. if err != nil {
  4517. var snapshot bytes.Buffer
  4518. io.Copy(&snapshot, ringBuffer)
  4519. err = &smithy.DeserializationError{
  4520. Err: fmt.Errorf("failed to decode response body, %w", err),
  4521. Snapshot: snapshot.Bytes(),
  4522. }
  4523. return out, metadata, err
  4524. }
  4525. return out, metadata, err
  4526. }
  4527. func awsAwsjson11_deserializeOpErrorListHandshakesForOrganization(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  4528. var errorBuffer bytes.Buffer
  4529. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  4530. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  4531. }
  4532. errorBody := bytes.NewReader(errorBuffer.Bytes())
  4533. errorCode := "UnknownError"
  4534. errorMessage := errorCode
  4535. headerCode := response.Header.Get("X-Amzn-ErrorType")
  4536. var buff [1024]byte
  4537. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4538. body := io.TeeReader(errorBody, ringBuffer)
  4539. decoder := json.NewDecoder(body)
  4540. decoder.UseNumber()
  4541. bodyInfo, err := getProtocolErrorInfo(decoder)
  4542. if err != nil {
  4543. var snapshot bytes.Buffer
  4544. io.Copy(&snapshot, ringBuffer)
  4545. err = &smithy.DeserializationError{
  4546. Err: fmt.Errorf("failed to decode response body, %w", err),
  4547. Snapshot: snapshot.Bytes(),
  4548. }
  4549. return err
  4550. }
  4551. errorBody.Seek(0, io.SeekStart)
  4552. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  4553. errorCode = restjson.SanitizeErrorCode(typ)
  4554. }
  4555. if len(bodyInfo.Message) != 0 {
  4556. errorMessage = bodyInfo.Message
  4557. }
  4558. switch {
  4559. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  4560. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  4561. case strings.EqualFold("AccessDeniedException", errorCode):
  4562. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  4563. case strings.EqualFold("ConcurrentModificationException", errorCode):
  4564. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  4565. case strings.EqualFold("InvalidInputException", errorCode):
  4566. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  4567. case strings.EqualFold("ServiceException", errorCode):
  4568. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  4569. case strings.EqualFold("TooManyRequestsException", errorCode):
  4570. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  4571. default:
  4572. genericError := &smithy.GenericAPIError{
  4573. Code: errorCode,
  4574. Message: errorMessage,
  4575. }
  4576. return genericError
  4577. }
  4578. }
  4579. type awsAwsjson11_deserializeOpListInboundResponsibilityTransfers struct {
  4580. }
  4581. func (*awsAwsjson11_deserializeOpListInboundResponsibilityTransfers) ID() string {
  4582. return "OperationDeserializer"
  4583. }
  4584. func (m *awsAwsjson11_deserializeOpListInboundResponsibilityTransfers) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  4585. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  4586. ) {
  4587. out, metadata, err = next.HandleDeserialize(ctx, in)
  4588. if err != nil {
  4589. return out, metadata, err
  4590. }
  4591. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  4592. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  4593. defer endTimer()
  4594. defer span.End()
  4595. response, ok := out.RawResponse.(*smithyhttp.Response)
  4596. if !ok {
  4597. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  4598. }
  4599. if response.StatusCode < 200 || response.StatusCode >= 300 {
  4600. return out, metadata, awsAwsjson11_deserializeOpErrorListInboundResponsibilityTransfers(response, &metadata)
  4601. }
  4602. output := &ListInboundResponsibilityTransfersOutput{}
  4603. out.Result = output
  4604. var buff [1024]byte
  4605. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4606. body := io.TeeReader(response.Body, ringBuffer)
  4607. decoder := json.NewDecoder(body)
  4608. decoder.UseNumber()
  4609. var shape interface{}
  4610. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  4611. var snapshot bytes.Buffer
  4612. io.Copy(&snapshot, ringBuffer)
  4613. err = &smithy.DeserializationError{
  4614. Err: fmt.Errorf("failed to decode response body, %w", err),
  4615. Snapshot: snapshot.Bytes(),
  4616. }
  4617. return out, metadata, err
  4618. }
  4619. err = awsAwsjson11_deserializeOpDocumentListInboundResponsibilityTransfersOutput(&output, shape)
  4620. if err != nil {
  4621. var snapshot bytes.Buffer
  4622. io.Copy(&snapshot, ringBuffer)
  4623. err = &smithy.DeserializationError{
  4624. Err: fmt.Errorf("failed to decode response body, %w", err),
  4625. Snapshot: snapshot.Bytes(),
  4626. }
  4627. return out, metadata, err
  4628. }
  4629. return out, metadata, err
  4630. }
  4631. func awsAwsjson11_deserializeOpErrorListInboundResponsibilityTransfers(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  4632. var errorBuffer bytes.Buffer
  4633. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  4634. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  4635. }
  4636. errorBody := bytes.NewReader(errorBuffer.Bytes())
  4637. errorCode := "UnknownError"
  4638. errorMessage := errorCode
  4639. headerCode := response.Header.Get("X-Amzn-ErrorType")
  4640. var buff [1024]byte
  4641. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4642. body := io.TeeReader(errorBody, ringBuffer)
  4643. decoder := json.NewDecoder(body)
  4644. decoder.UseNumber()
  4645. bodyInfo, err := getProtocolErrorInfo(decoder)
  4646. if err != nil {
  4647. var snapshot bytes.Buffer
  4648. io.Copy(&snapshot, ringBuffer)
  4649. err = &smithy.DeserializationError{
  4650. Err: fmt.Errorf("failed to decode response body, %w", err),
  4651. Snapshot: snapshot.Bytes(),
  4652. }
  4653. return err
  4654. }
  4655. errorBody.Seek(0, io.SeekStart)
  4656. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  4657. errorCode = restjson.SanitizeErrorCode(typ)
  4658. }
  4659. if len(bodyInfo.Message) != 0 {
  4660. errorMessage = bodyInfo.Message
  4661. }
  4662. switch {
  4663. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  4664. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  4665. case strings.EqualFold("AccessDeniedException", errorCode):
  4666. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  4667. case strings.EqualFold("ConstraintViolationException", errorCode):
  4668. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  4669. case strings.EqualFold("InvalidInputException", errorCode):
  4670. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  4671. case strings.EqualFold("ResponsibilityTransferNotFoundException", errorCode):
  4672. return awsAwsjson11_deserializeErrorResponsibilityTransferNotFoundException(response, errorBody)
  4673. case strings.EqualFold("ServiceException", errorCode):
  4674. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  4675. case strings.EqualFold("TooManyRequestsException", errorCode):
  4676. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  4677. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  4678. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  4679. default:
  4680. genericError := &smithy.GenericAPIError{
  4681. Code: errorCode,
  4682. Message: errorMessage,
  4683. }
  4684. return genericError
  4685. }
  4686. }
  4687. type awsAwsjson11_deserializeOpListOrganizationalUnitsForParent struct {
  4688. }
  4689. func (*awsAwsjson11_deserializeOpListOrganizationalUnitsForParent) ID() string {
  4690. return "OperationDeserializer"
  4691. }
  4692. func (m *awsAwsjson11_deserializeOpListOrganizationalUnitsForParent) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  4693. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  4694. ) {
  4695. out, metadata, err = next.HandleDeserialize(ctx, in)
  4696. if err != nil {
  4697. return out, metadata, err
  4698. }
  4699. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  4700. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  4701. defer endTimer()
  4702. defer span.End()
  4703. response, ok := out.RawResponse.(*smithyhttp.Response)
  4704. if !ok {
  4705. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  4706. }
  4707. if response.StatusCode < 200 || response.StatusCode >= 300 {
  4708. return out, metadata, awsAwsjson11_deserializeOpErrorListOrganizationalUnitsForParent(response, &metadata)
  4709. }
  4710. output := &ListOrganizationalUnitsForParentOutput{}
  4711. out.Result = output
  4712. var buff [1024]byte
  4713. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4714. body := io.TeeReader(response.Body, ringBuffer)
  4715. decoder := json.NewDecoder(body)
  4716. decoder.UseNumber()
  4717. var shape interface{}
  4718. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  4719. var snapshot bytes.Buffer
  4720. io.Copy(&snapshot, ringBuffer)
  4721. err = &smithy.DeserializationError{
  4722. Err: fmt.Errorf("failed to decode response body, %w", err),
  4723. Snapshot: snapshot.Bytes(),
  4724. }
  4725. return out, metadata, err
  4726. }
  4727. err = awsAwsjson11_deserializeOpDocumentListOrganizationalUnitsForParentOutput(&output, shape)
  4728. if err != nil {
  4729. var snapshot bytes.Buffer
  4730. io.Copy(&snapshot, ringBuffer)
  4731. err = &smithy.DeserializationError{
  4732. Err: fmt.Errorf("failed to decode response body, %w", err),
  4733. Snapshot: snapshot.Bytes(),
  4734. }
  4735. return out, metadata, err
  4736. }
  4737. return out, metadata, err
  4738. }
  4739. func awsAwsjson11_deserializeOpErrorListOrganizationalUnitsForParent(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  4740. var errorBuffer bytes.Buffer
  4741. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  4742. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  4743. }
  4744. errorBody := bytes.NewReader(errorBuffer.Bytes())
  4745. errorCode := "UnknownError"
  4746. errorMessage := errorCode
  4747. headerCode := response.Header.Get("X-Amzn-ErrorType")
  4748. var buff [1024]byte
  4749. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4750. body := io.TeeReader(errorBody, ringBuffer)
  4751. decoder := json.NewDecoder(body)
  4752. decoder.UseNumber()
  4753. bodyInfo, err := getProtocolErrorInfo(decoder)
  4754. if err != nil {
  4755. var snapshot bytes.Buffer
  4756. io.Copy(&snapshot, ringBuffer)
  4757. err = &smithy.DeserializationError{
  4758. Err: fmt.Errorf("failed to decode response body, %w", err),
  4759. Snapshot: snapshot.Bytes(),
  4760. }
  4761. return err
  4762. }
  4763. errorBody.Seek(0, io.SeekStart)
  4764. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  4765. errorCode = restjson.SanitizeErrorCode(typ)
  4766. }
  4767. if len(bodyInfo.Message) != 0 {
  4768. errorMessage = bodyInfo.Message
  4769. }
  4770. switch {
  4771. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  4772. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  4773. case strings.EqualFold("AccessDeniedException", errorCode):
  4774. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  4775. case strings.EqualFold("InvalidInputException", errorCode):
  4776. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  4777. case strings.EqualFold("ParentNotFoundException", errorCode):
  4778. return awsAwsjson11_deserializeErrorParentNotFoundException(response, errorBody)
  4779. case strings.EqualFold("ServiceException", errorCode):
  4780. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  4781. case strings.EqualFold("TooManyRequestsException", errorCode):
  4782. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  4783. default:
  4784. genericError := &smithy.GenericAPIError{
  4785. Code: errorCode,
  4786. Message: errorMessage,
  4787. }
  4788. return genericError
  4789. }
  4790. }
  4791. type awsAwsjson11_deserializeOpListOutboundResponsibilityTransfers struct {
  4792. }
  4793. func (*awsAwsjson11_deserializeOpListOutboundResponsibilityTransfers) ID() string {
  4794. return "OperationDeserializer"
  4795. }
  4796. func (m *awsAwsjson11_deserializeOpListOutboundResponsibilityTransfers) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  4797. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  4798. ) {
  4799. out, metadata, err = next.HandleDeserialize(ctx, in)
  4800. if err != nil {
  4801. return out, metadata, err
  4802. }
  4803. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  4804. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  4805. defer endTimer()
  4806. defer span.End()
  4807. response, ok := out.RawResponse.(*smithyhttp.Response)
  4808. if !ok {
  4809. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  4810. }
  4811. if response.StatusCode < 200 || response.StatusCode >= 300 {
  4812. return out, metadata, awsAwsjson11_deserializeOpErrorListOutboundResponsibilityTransfers(response, &metadata)
  4813. }
  4814. output := &ListOutboundResponsibilityTransfersOutput{}
  4815. out.Result = output
  4816. var buff [1024]byte
  4817. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4818. body := io.TeeReader(response.Body, ringBuffer)
  4819. decoder := json.NewDecoder(body)
  4820. decoder.UseNumber()
  4821. var shape interface{}
  4822. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  4823. var snapshot bytes.Buffer
  4824. io.Copy(&snapshot, ringBuffer)
  4825. err = &smithy.DeserializationError{
  4826. Err: fmt.Errorf("failed to decode response body, %w", err),
  4827. Snapshot: snapshot.Bytes(),
  4828. }
  4829. return out, metadata, err
  4830. }
  4831. err = awsAwsjson11_deserializeOpDocumentListOutboundResponsibilityTransfersOutput(&output, shape)
  4832. if err != nil {
  4833. var snapshot bytes.Buffer
  4834. io.Copy(&snapshot, ringBuffer)
  4835. err = &smithy.DeserializationError{
  4836. Err: fmt.Errorf("failed to decode response body, %w", err),
  4837. Snapshot: snapshot.Bytes(),
  4838. }
  4839. return out, metadata, err
  4840. }
  4841. return out, metadata, err
  4842. }
  4843. func awsAwsjson11_deserializeOpErrorListOutboundResponsibilityTransfers(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  4844. var errorBuffer bytes.Buffer
  4845. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  4846. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  4847. }
  4848. errorBody := bytes.NewReader(errorBuffer.Bytes())
  4849. errorCode := "UnknownError"
  4850. errorMessage := errorCode
  4851. headerCode := response.Header.Get("X-Amzn-ErrorType")
  4852. var buff [1024]byte
  4853. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4854. body := io.TeeReader(errorBody, ringBuffer)
  4855. decoder := json.NewDecoder(body)
  4856. decoder.UseNumber()
  4857. bodyInfo, err := getProtocolErrorInfo(decoder)
  4858. if err != nil {
  4859. var snapshot bytes.Buffer
  4860. io.Copy(&snapshot, ringBuffer)
  4861. err = &smithy.DeserializationError{
  4862. Err: fmt.Errorf("failed to decode response body, %w", err),
  4863. Snapshot: snapshot.Bytes(),
  4864. }
  4865. return err
  4866. }
  4867. errorBody.Seek(0, io.SeekStart)
  4868. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  4869. errorCode = restjson.SanitizeErrorCode(typ)
  4870. }
  4871. if len(bodyInfo.Message) != 0 {
  4872. errorMessage = bodyInfo.Message
  4873. }
  4874. switch {
  4875. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  4876. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  4877. case strings.EqualFold("AccessDeniedException", errorCode):
  4878. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  4879. case strings.EqualFold("ConstraintViolationException", errorCode):
  4880. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  4881. case strings.EqualFold("InvalidInputException", errorCode):
  4882. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  4883. case strings.EqualFold("ServiceException", errorCode):
  4884. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  4885. case strings.EqualFold("TooManyRequestsException", errorCode):
  4886. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  4887. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  4888. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  4889. default:
  4890. genericError := &smithy.GenericAPIError{
  4891. Code: errorCode,
  4892. Message: errorMessage,
  4893. }
  4894. return genericError
  4895. }
  4896. }
  4897. type awsAwsjson11_deserializeOpListParents struct {
  4898. }
  4899. func (*awsAwsjson11_deserializeOpListParents) ID() string {
  4900. return "OperationDeserializer"
  4901. }
  4902. func (m *awsAwsjson11_deserializeOpListParents) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  4903. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  4904. ) {
  4905. out, metadata, err = next.HandleDeserialize(ctx, in)
  4906. if err != nil {
  4907. return out, metadata, err
  4908. }
  4909. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  4910. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  4911. defer endTimer()
  4912. defer span.End()
  4913. response, ok := out.RawResponse.(*smithyhttp.Response)
  4914. if !ok {
  4915. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  4916. }
  4917. if response.StatusCode < 200 || response.StatusCode >= 300 {
  4918. return out, metadata, awsAwsjson11_deserializeOpErrorListParents(response, &metadata)
  4919. }
  4920. output := &ListParentsOutput{}
  4921. out.Result = output
  4922. var buff [1024]byte
  4923. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4924. body := io.TeeReader(response.Body, ringBuffer)
  4925. decoder := json.NewDecoder(body)
  4926. decoder.UseNumber()
  4927. var shape interface{}
  4928. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  4929. var snapshot bytes.Buffer
  4930. io.Copy(&snapshot, ringBuffer)
  4931. err = &smithy.DeserializationError{
  4932. Err: fmt.Errorf("failed to decode response body, %w", err),
  4933. Snapshot: snapshot.Bytes(),
  4934. }
  4935. return out, metadata, err
  4936. }
  4937. err = awsAwsjson11_deserializeOpDocumentListParentsOutput(&output, shape)
  4938. if err != nil {
  4939. var snapshot bytes.Buffer
  4940. io.Copy(&snapshot, ringBuffer)
  4941. err = &smithy.DeserializationError{
  4942. Err: fmt.Errorf("failed to decode response body, %w", err),
  4943. Snapshot: snapshot.Bytes(),
  4944. }
  4945. return out, metadata, err
  4946. }
  4947. return out, metadata, err
  4948. }
  4949. func awsAwsjson11_deserializeOpErrorListParents(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  4950. var errorBuffer bytes.Buffer
  4951. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  4952. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  4953. }
  4954. errorBody := bytes.NewReader(errorBuffer.Bytes())
  4955. errorCode := "UnknownError"
  4956. errorMessage := errorCode
  4957. headerCode := response.Header.Get("X-Amzn-ErrorType")
  4958. var buff [1024]byte
  4959. ringBuffer := smithyio.NewRingBuffer(buff[:])
  4960. body := io.TeeReader(errorBody, ringBuffer)
  4961. decoder := json.NewDecoder(body)
  4962. decoder.UseNumber()
  4963. bodyInfo, err := getProtocolErrorInfo(decoder)
  4964. if err != nil {
  4965. var snapshot bytes.Buffer
  4966. io.Copy(&snapshot, ringBuffer)
  4967. err = &smithy.DeserializationError{
  4968. Err: fmt.Errorf("failed to decode response body, %w", err),
  4969. Snapshot: snapshot.Bytes(),
  4970. }
  4971. return err
  4972. }
  4973. errorBody.Seek(0, io.SeekStart)
  4974. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  4975. errorCode = restjson.SanitizeErrorCode(typ)
  4976. }
  4977. if len(bodyInfo.Message) != 0 {
  4978. errorMessage = bodyInfo.Message
  4979. }
  4980. switch {
  4981. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  4982. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  4983. case strings.EqualFold("AccessDeniedException", errorCode):
  4984. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  4985. case strings.EqualFold("ChildNotFoundException", errorCode):
  4986. return awsAwsjson11_deserializeErrorChildNotFoundException(response, errorBody)
  4987. case strings.EqualFold("InvalidInputException", errorCode):
  4988. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  4989. case strings.EqualFold("ServiceException", errorCode):
  4990. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  4991. case strings.EqualFold("TooManyRequestsException", errorCode):
  4992. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  4993. default:
  4994. genericError := &smithy.GenericAPIError{
  4995. Code: errorCode,
  4996. Message: errorMessage,
  4997. }
  4998. return genericError
  4999. }
  5000. }
  5001. type awsAwsjson11_deserializeOpListPolicies struct {
  5002. }
  5003. func (*awsAwsjson11_deserializeOpListPolicies) ID() string {
  5004. return "OperationDeserializer"
  5005. }
  5006. func (m *awsAwsjson11_deserializeOpListPolicies) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  5007. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  5008. ) {
  5009. out, metadata, err = next.HandleDeserialize(ctx, in)
  5010. if err != nil {
  5011. return out, metadata, err
  5012. }
  5013. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  5014. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  5015. defer endTimer()
  5016. defer span.End()
  5017. response, ok := out.RawResponse.(*smithyhttp.Response)
  5018. if !ok {
  5019. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  5020. }
  5021. if response.StatusCode < 200 || response.StatusCode >= 300 {
  5022. return out, metadata, awsAwsjson11_deserializeOpErrorListPolicies(response, &metadata)
  5023. }
  5024. output := &ListPoliciesOutput{}
  5025. out.Result = output
  5026. var buff [1024]byte
  5027. ringBuffer := smithyio.NewRingBuffer(buff[:])
  5028. body := io.TeeReader(response.Body, ringBuffer)
  5029. decoder := json.NewDecoder(body)
  5030. decoder.UseNumber()
  5031. var shape interface{}
  5032. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  5033. var snapshot bytes.Buffer
  5034. io.Copy(&snapshot, ringBuffer)
  5035. err = &smithy.DeserializationError{
  5036. Err: fmt.Errorf("failed to decode response body, %w", err),
  5037. Snapshot: snapshot.Bytes(),
  5038. }
  5039. return out, metadata, err
  5040. }
  5041. err = awsAwsjson11_deserializeOpDocumentListPoliciesOutput(&output, shape)
  5042. if err != nil {
  5043. var snapshot bytes.Buffer
  5044. io.Copy(&snapshot, ringBuffer)
  5045. err = &smithy.DeserializationError{
  5046. Err: fmt.Errorf("failed to decode response body, %w", err),
  5047. Snapshot: snapshot.Bytes(),
  5048. }
  5049. return out, metadata, err
  5050. }
  5051. return out, metadata, err
  5052. }
  5053. func awsAwsjson11_deserializeOpErrorListPolicies(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  5054. var errorBuffer bytes.Buffer
  5055. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  5056. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  5057. }
  5058. errorBody := bytes.NewReader(errorBuffer.Bytes())
  5059. errorCode := "UnknownError"
  5060. errorMessage := errorCode
  5061. headerCode := response.Header.Get("X-Amzn-ErrorType")
  5062. var buff [1024]byte
  5063. ringBuffer := smithyio.NewRingBuffer(buff[:])
  5064. body := io.TeeReader(errorBody, ringBuffer)
  5065. decoder := json.NewDecoder(body)
  5066. decoder.UseNumber()
  5067. bodyInfo, err := getProtocolErrorInfo(decoder)
  5068. if err != nil {
  5069. var snapshot bytes.Buffer
  5070. io.Copy(&snapshot, ringBuffer)
  5071. err = &smithy.DeserializationError{
  5072. Err: fmt.Errorf("failed to decode response body, %w", err),
  5073. Snapshot: snapshot.Bytes(),
  5074. }
  5075. return err
  5076. }
  5077. errorBody.Seek(0, io.SeekStart)
  5078. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  5079. errorCode = restjson.SanitizeErrorCode(typ)
  5080. }
  5081. if len(bodyInfo.Message) != 0 {
  5082. errorMessage = bodyInfo.Message
  5083. }
  5084. switch {
  5085. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  5086. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  5087. case strings.EqualFold("AccessDeniedException", errorCode):
  5088. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  5089. case strings.EqualFold("InvalidInputException", errorCode):
  5090. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  5091. case strings.EqualFold("ServiceException", errorCode):
  5092. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  5093. case strings.EqualFold("TooManyRequestsException", errorCode):
  5094. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  5095. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  5096. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  5097. default:
  5098. genericError := &smithy.GenericAPIError{
  5099. Code: errorCode,
  5100. Message: errorMessage,
  5101. }
  5102. return genericError
  5103. }
  5104. }
  5105. type awsAwsjson11_deserializeOpListPoliciesForTarget struct {
  5106. }
  5107. func (*awsAwsjson11_deserializeOpListPoliciesForTarget) ID() string {
  5108. return "OperationDeserializer"
  5109. }
  5110. func (m *awsAwsjson11_deserializeOpListPoliciesForTarget) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  5111. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  5112. ) {
  5113. out, metadata, err = next.HandleDeserialize(ctx, in)
  5114. if err != nil {
  5115. return out, metadata, err
  5116. }
  5117. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  5118. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  5119. defer endTimer()
  5120. defer span.End()
  5121. response, ok := out.RawResponse.(*smithyhttp.Response)
  5122. if !ok {
  5123. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  5124. }
  5125. if response.StatusCode < 200 || response.StatusCode >= 300 {
  5126. return out, metadata, awsAwsjson11_deserializeOpErrorListPoliciesForTarget(response, &metadata)
  5127. }
  5128. output := &ListPoliciesForTargetOutput{}
  5129. out.Result = output
  5130. var buff [1024]byte
  5131. ringBuffer := smithyio.NewRingBuffer(buff[:])
  5132. body := io.TeeReader(response.Body, ringBuffer)
  5133. decoder := json.NewDecoder(body)
  5134. decoder.UseNumber()
  5135. var shape interface{}
  5136. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  5137. var snapshot bytes.Buffer
  5138. io.Copy(&snapshot, ringBuffer)
  5139. err = &smithy.DeserializationError{
  5140. Err: fmt.Errorf("failed to decode response body, %w", err),
  5141. Snapshot: snapshot.Bytes(),
  5142. }
  5143. return out, metadata, err
  5144. }
  5145. err = awsAwsjson11_deserializeOpDocumentListPoliciesForTargetOutput(&output, shape)
  5146. if err != nil {
  5147. var snapshot bytes.Buffer
  5148. io.Copy(&snapshot, ringBuffer)
  5149. err = &smithy.DeserializationError{
  5150. Err: fmt.Errorf("failed to decode response body, %w", err),
  5151. Snapshot: snapshot.Bytes(),
  5152. }
  5153. return out, metadata, err
  5154. }
  5155. return out, metadata, err
  5156. }
  5157. func awsAwsjson11_deserializeOpErrorListPoliciesForTarget(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  5158. var errorBuffer bytes.Buffer
  5159. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  5160. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  5161. }
  5162. errorBody := bytes.NewReader(errorBuffer.Bytes())
  5163. errorCode := "UnknownError"
  5164. errorMessage := errorCode
  5165. headerCode := response.Header.Get("X-Amzn-ErrorType")
  5166. var buff [1024]byte
  5167. ringBuffer := smithyio.NewRingBuffer(buff[:])
  5168. body := io.TeeReader(errorBody, ringBuffer)
  5169. decoder := json.NewDecoder(body)
  5170. decoder.UseNumber()
  5171. bodyInfo, err := getProtocolErrorInfo(decoder)
  5172. if err != nil {
  5173. var snapshot bytes.Buffer
  5174. io.Copy(&snapshot, ringBuffer)
  5175. err = &smithy.DeserializationError{
  5176. Err: fmt.Errorf("failed to decode response body, %w", err),
  5177. Snapshot: snapshot.Bytes(),
  5178. }
  5179. return err
  5180. }
  5181. errorBody.Seek(0, io.SeekStart)
  5182. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  5183. errorCode = restjson.SanitizeErrorCode(typ)
  5184. }
  5185. if len(bodyInfo.Message) != 0 {
  5186. errorMessage = bodyInfo.Message
  5187. }
  5188. switch {
  5189. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  5190. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  5191. case strings.EqualFold("AccessDeniedException", errorCode):
  5192. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  5193. case strings.EqualFold("InvalidInputException", errorCode):
  5194. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  5195. case strings.EqualFold("ServiceException", errorCode):
  5196. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  5197. case strings.EqualFold("TargetNotFoundException", errorCode):
  5198. return awsAwsjson11_deserializeErrorTargetNotFoundException(response, errorBody)
  5199. case strings.EqualFold("TooManyRequestsException", errorCode):
  5200. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  5201. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  5202. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  5203. default:
  5204. genericError := &smithy.GenericAPIError{
  5205. Code: errorCode,
  5206. Message: errorMessage,
  5207. }
  5208. return genericError
  5209. }
  5210. }
  5211. type awsAwsjson11_deserializeOpListRoots struct {
  5212. }
  5213. func (*awsAwsjson11_deserializeOpListRoots) ID() string {
  5214. return "OperationDeserializer"
  5215. }
  5216. func (m *awsAwsjson11_deserializeOpListRoots) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  5217. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  5218. ) {
  5219. out, metadata, err = next.HandleDeserialize(ctx, in)
  5220. if err != nil {
  5221. return out, metadata, err
  5222. }
  5223. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  5224. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  5225. defer endTimer()
  5226. defer span.End()
  5227. response, ok := out.RawResponse.(*smithyhttp.Response)
  5228. if !ok {
  5229. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  5230. }
  5231. if response.StatusCode < 200 || response.StatusCode >= 300 {
  5232. return out, metadata, awsAwsjson11_deserializeOpErrorListRoots(response, &metadata)
  5233. }
  5234. output := &ListRootsOutput{}
  5235. out.Result = output
  5236. var buff [1024]byte
  5237. ringBuffer := smithyio.NewRingBuffer(buff[:])
  5238. body := io.TeeReader(response.Body, ringBuffer)
  5239. decoder := json.NewDecoder(body)
  5240. decoder.UseNumber()
  5241. var shape interface{}
  5242. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  5243. var snapshot bytes.Buffer
  5244. io.Copy(&snapshot, ringBuffer)
  5245. err = &smithy.DeserializationError{
  5246. Err: fmt.Errorf("failed to decode response body, %w", err),
  5247. Snapshot: snapshot.Bytes(),
  5248. }
  5249. return out, metadata, err
  5250. }
  5251. err = awsAwsjson11_deserializeOpDocumentListRootsOutput(&output, shape)
  5252. if err != nil {
  5253. var snapshot bytes.Buffer
  5254. io.Copy(&snapshot, ringBuffer)
  5255. err = &smithy.DeserializationError{
  5256. Err: fmt.Errorf("failed to decode response body, %w", err),
  5257. Snapshot: snapshot.Bytes(),
  5258. }
  5259. return out, metadata, err
  5260. }
  5261. return out, metadata, err
  5262. }
  5263. func awsAwsjson11_deserializeOpErrorListRoots(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  5264. var errorBuffer bytes.Buffer
  5265. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  5266. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  5267. }
  5268. errorBody := bytes.NewReader(errorBuffer.Bytes())
  5269. errorCode := "UnknownError"
  5270. errorMessage := errorCode
  5271. headerCode := response.Header.Get("X-Amzn-ErrorType")
  5272. var buff [1024]byte
  5273. ringBuffer := smithyio.NewRingBuffer(buff[:])
  5274. body := io.TeeReader(errorBody, ringBuffer)
  5275. decoder := json.NewDecoder(body)
  5276. decoder.UseNumber()
  5277. bodyInfo, err := getProtocolErrorInfo(decoder)
  5278. if err != nil {
  5279. var snapshot bytes.Buffer
  5280. io.Copy(&snapshot, ringBuffer)
  5281. err = &smithy.DeserializationError{
  5282. Err: fmt.Errorf("failed to decode response body, %w", err),
  5283. Snapshot: snapshot.Bytes(),
  5284. }
  5285. return err
  5286. }
  5287. errorBody.Seek(0, io.SeekStart)
  5288. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  5289. errorCode = restjson.SanitizeErrorCode(typ)
  5290. }
  5291. if len(bodyInfo.Message) != 0 {
  5292. errorMessage = bodyInfo.Message
  5293. }
  5294. switch {
  5295. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  5296. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  5297. case strings.EqualFold("AccessDeniedException", errorCode):
  5298. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  5299. case strings.EqualFold("InvalidInputException", errorCode):
  5300. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  5301. case strings.EqualFold("ServiceException", errorCode):
  5302. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  5303. case strings.EqualFold("TooManyRequestsException", errorCode):
  5304. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  5305. default:
  5306. genericError := &smithy.GenericAPIError{
  5307. Code: errorCode,
  5308. Message: errorMessage,
  5309. }
  5310. return genericError
  5311. }
  5312. }
  5313. type awsAwsjson11_deserializeOpListTagsForResource struct {
  5314. }
  5315. func (*awsAwsjson11_deserializeOpListTagsForResource) ID() string {
  5316. return "OperationDeserializer"
  5317. }
  5318. func (m *awsAwsjson11_deserializeOpListTagsForResource) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  5319. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  5320. ) {
  5321. out, metadata, err = next.HandleDeserialize(ctx, in)
  5322. if err != nil {
  5323. return out, metadata, err
  5324. }
  5325. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  5326. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  5327. defer endTimer()
  5328. defer span.End()
  5329. response, ok := out.RawResponse.(*smithyhttp.Response)
  5330. if !ok {
  5331. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  5332. }
  5333. if response.StatusCode < 200 || response.StatusCode >= 300 {
  5334. return out, metadata, awsAwsjson11_deserializeOpErrorListTagsForResource(response, &metadata)
  5335. }
  5336. output := &ListTagsForResourceOutput{}
  5337. out.Result = output
  5338. var buff [1024]byte
  5339. ringBuffer := smithyio.NewRingBuffer(buff[:])
  5340. body := io.TeeReader(response.Body, ringBuffer)
  5341. decoder := json.NewDecoder(body)
  5342. decoder.UseNumber()
  5343. var shape interface{}
  5344. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  5345. var snapshot bytes.Buffer
  5346. io.Copy(&snapshot, ringBuffer)
  5347. err = &smithy.DeserializationError{
  5348. Err: fmt.Errorf("failed to decode response body, %w", err),
  5349. Snapshot: snapshot.Bytes(),
  5350. }
  5351. return out, metadata, err
  5352. }
  5353. err = awsAwsjson11_deserializeOpDocumentListTagsForResourceOutput(&output, shape)
  5354. if err != nil {
  5355. var snapshot bytes.Buffer
  5356. io.Copy(&snapshot, ringBuffer)
  5357. err = &smithy.DeserializationError{
  5358. Err: fmt.Errorf("failed to decode response body, %w", err),
  5359. Snapshot: snapshot.Bytes(),
  5360. }
  5361. return out, metadata, err
  5362. }
  5363. return out, metadata, err
  5364. }
  5365. func awsAwsjson11_deserializeOpErrorListTagsForResource(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  5366. var errorBuffer bytes.Buffer
  5367. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  5368. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  5369. }
  5370. errorBody := bytes.NewReader(errorBuffer.Bytes())
  5371. errorCode := "UnknownError"
  5372. errorMessage := errorCode
  5373. headerCode := response.Header.Get("X-Amzn-ErrorType")
  5374. var buff [1024]byte
  5375. ringBuffer := smithyio.NewRingBuffer(buff[:])
  5376. body := io.TeeReader(errorBody, ringBuffer)
  5377. decoder := json.NewDecoder(body)
  5378. decoder.UseNumber()
  5379. bodyInfo, err := getProtocolErrorInfo(decoder)
  5380. if err != nil {
  5381. var snapshot bytes.Buffer
  5382. io.Copy(&snapshot, ringBuffer)
  5383. err = &smithy.DeserializationError{
  5384. Err: fmt.Errorf("failed to decode response body, %w", err),
  5385. Snapshot: snapshot.Bytes(),
  5386. }
  5387. return err
  5388. }
  5389. errorBody.Seek(0, io.SeekStart)
  5390. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  5391. errorCode = restjson.SanitizeErrorCode(typ)
  5392. }
  5393. if len(bodyInfo.Message) != 0 {
  5394. errorMessage = bodyInfo.Message
  5395. }
  5396. switch {
  5397. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  5398. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  5399. case strings.EqualFold("AccessDeniedException", errorCode):
  5400. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  5401. case strings.EqualFold("InvalidInputException", errorCode):
  5402. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  5403. case strings.EqualFold("ServiceException", errorCode):
  5404. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  5405. case strings.EqualFold("TargetNotFoundException", errorCode):
  5406. return awsAwsjson11_deserializeErrorTargetNotFoundException(response, errorBody)
  5407. case strings.EqualFold("TooManyRequestsException", errorCode):
  5408. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  5409. default:
  5410. genericError := &smithy.GenericAPIError{
  5411. Code: errorCode,
  5412. Message: errorMessage,
  5413. }
  5414. return genericError
  5415. }
  5416. }
  5417. type awsAwsjson11_deserializeOpListTargetsForPolicy struct {
  5418. }
  5419. func (*awsAwsjson11_deserializeOpListTargetsForPolicy) ID() string {
  5420. return "OperationDeserializer"
  5421. }
  5422. func (m *awsAwsjson11_deserializeOpListTargetsForPolicy) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  5423. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  5424. ) {
  5425. out, metadata, err = next.HandleDeserialize(ctx, in)
  5426. if err != nil {
  5427. return out, metadata, err
  5428. }
  5429. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  5430. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  5431. defer endTimer()
  5432. defer span.End()
  5433. response, ok := out.RawResponse.(*smithyhttp.Response)
  5434. if !ok {
  5435. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  5436. }
  5437. if response.StatusCode < 200 || response.StatusCode >= 300 {
  5438. return out, metadata, awsAwsjson11_deserializeOpErrorListTargetsForPolicy(response, &metadata)
  5439. }
  5440. output := &ListTargetsForPolicyOutput{}
  5441. out.Result = output
  5442. var buff [1024]byte
  5443. ringBuffer := smithyio.NewRingBuffer(buff[:])
  5444. body := io.TeeReader(response.Body, ringBuffer)
  5445. decoder := json.NewDecoder(body)
  5446. decoder.UseNumber()
  5447. var shape interface{}
  5448. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  5449. var snapshot bytes.Buffer
  5450. io.Copy(&snapshot, ringBuffer)
  5451. err = &smithy.DeserializationError{
  5452. Err: fmt.Errorf("failed to decode response body, %w", err),
  5453. Snapshot: snapshot.Bytes(),
  5454. }
  5455. return out, metadata, err
  5456. }
  5457. err = awsAwsjson11_deserializeOpDocumentListTargetsForPolicyOutput(&output, shape)
  5458. if err != nil {
  5459. var snapshot bytes.Buffer
  5460. io.Copy(&snapshot, ringBuffer)
  5461. err = &smithy.DeserializationError{
  5462. Err: fmt.Errorf("failed to decode response body, %w", err),
  5463. Snapshot: snapshot.Bytes(),
  5464. }
  5465. return out, metadata, err
  5466. }
  5467. return out, metadata, err
  5468. }
  5469. func awsAwsjson11_deserializeOpErrorListTargetsForPolicy(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  5470. var errorBuffer bytes.Buffer
  5471. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  5472. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  5473. }
  5474. errorBody := bytes.NewReader(errorBuffer.Bytes())
  5475. errorCode := "UnknownError"
  5476. errorMessage := errorCode
  5477. headerCode := response.Header.Get("X-Amzn-ErrorType")
  5478. var buff [1024]byte
  5479. ringBuffer := smithyio.NewRingBuffer(buff[:])
  5480. body := io.TeeReader(errorBody, ringBuffer)
  5481. decoder := json.NewDecoder(body)
  5482. decoder.UseNumber()
  5483. bodyInfo, err := getProtocolErrorInfo(decoder)
  5484. if err != nil {
  5485. var snapshot bytes.Buffer
  5486. io.Copy(&snapshot, ringBuffer)
  5487. err = &smithy.DeserializationError{
  5488. Err: fmt.Errorf("failed to decode response body, %w", err),
  5489. Snapshot: snapshot.Bytes(),
  5490. }
  5491. return err
  5492. }
  5493. errorBody.Seek(0, io.SeekStart)
  5494. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  5495. errorCode = restjson.SanitizeErrorCode(typ)
  5496. }
  5497. if len(bodyInfo.Message) != 0 {
  5498. errorMessage = bodyInfo.Message
  5499. }
  5500. switch {
  5501. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  5502. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  5503. case strings.EqualFold("AccessDeniedException", errorCode):
  5504. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  5505. case strings.EqualFold("InvalidInputException", errorCode):
  5506. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  5507. case strings.EqualFold("PolicyNotFoundException", errorCode):
  5508. return awsAwsjson11_deserializeErrorPolicyNotFoundException(response, errorBody)
  5509. case strings.EqualFold("ServiceException", errorCode):
  5510. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  5511. case strings.EqualFold("TooManyRequestsException", errorCode):
  5512. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  5513. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  5514. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  5515. default:
  5516. genericError := &smithy.GenericAPIError{
  5517. Code: errorCode,
  5518. Message: errorMessage,
  5519. }
  5520. return genericError
  5521. }
  5522. }
  5523. type awsAwsjson11_deserializeOpMoveAccount struct {
  5524. }
  5525. func (*awsAwsjson11_deserializeOpMoveAccount) ID() string {
  5526. return "OperationDeserializer"
  5527. }
  5528. func (m *awsAwsjson11_deserializeOpMoveAccount) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  5529. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  5530. ) {
  5531. out, metadata, err = next.HandleDeserialize(ctx, in)
  5532. if err != nil {
  5533. return out, metadata, err
  5534. }
  5535. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  5536. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  5537. defer endTimer()
  5538. defer span.End()
  5539. response, ok := out.RawResponse.(*smithyhttp.Response)
  5540. if !ok {
  5541. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  5542. }
  5543. if response.StatusCode < 200 || response.StatusCode >= 300 {
  5544. return out, metadata, awsAwsjson11_deserializeOpErrorMoveAccount(response, &metadata)
  5545. }
  5546. output := &MoveAccountOutput{}
  5547. out.Result = output
  5548. if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
  5549. return out, metadata, &smithy.DeserializationError{
  5550. Err: fmt.Errorf("failed to discard response body, %w", err),
  5551. }
  5552. }
  5553. return out, metadata, err
  5554. }
  5555. func awsAwsjson11_deserializeOpErrorMoveAccount(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  5556. var errorBuffer bytes.Buffer
  5557. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  5558. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  5559. }
  5560. errorBody := bytes.NewReader(errorBuffer.Bytes())
  5561. errorCode := "UnknownError"
  5562. errorMessage := errorCode
  5563. headerCode := response.Header.Get("X-Amzn-ErrorType")
  5564. var buff [1024]byte
  5565. ringBuffer := smithyio.NewRingBuffer(buff[:])
  5566. body := io.TeeReader(errorBody, ringBuffer)
  5567. decoder := json.NewDecoder(body)
  5568. decoder.UseNumber()
  5569. bodyInfo, err := getProtocolErrorInfo(decoder)
  5570. if err != nil {
  5571. var snapshot bytes.Buffer
  5572. io.Copy(&snapshot, ringBuffer)
  5573. err = &smithy.DeserializationError{
  5574. Err: fmt.Errorf("failed to decode response body, %w", err),
  5575. Snapshot: snapshot.Bytes(),
  5576. }
  5577. return err
  5578. }
  5579. errorBody.Seek(0, io.SeekStart)
  5580. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  5581. errorCode = restjson.SanitizeErrorCode(typ)
  5582. }
  5583. if len(bodyInfo.Message) != 0 {
  5584. errorMessage = bodyInfo.Message
  5585. }
  5586. switch {
  5587. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  5588. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  5589. case strings.EqualFold("AccessDeniedException", errorCode):
  5590. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  5591. case strings.EqualFold("AccountNotFoundException", errorCode):
  5592. return awsAwsjson11_deserializeErrorAccountNotFoundException(response, errorBody)
  5593. case strings.EqualFold("ConcurrentModificationException", errorCode):
  5594. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  5595. case strings.EqualFold("DestinationParentNotFoundException", errorCode):
  5596. return awsAwsjson11_deserializeErrorDestinationParentNotFoundException(response, errorBody)
  5597. case strings.EqualFold("DuplicateAccountException", errorCode):
  5598. return awsAwsjson11_deserializeErrorDuplicateAccountException(response, errorBody)
  5599. case strings.EqualFold("InvalidInputException", errorCode):
  5600. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  5601. case strings.EqualFold("ServiceException", errorCode):
  5602. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  5603. case strings.EqualFold("SourceParentNotFoundException", errorCode):
  5604. return awsAwsjson11_deserializeErrorSourceParentNotFoundException(response, errorBody)
  5605. case strings.EqualFold("TooManyRequestsException", errorCode):
  5606. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  5607. default:
  5608. genericError := &smithy.GenericAPIError{
  5609. Code: errorCode,
  5610. Message: errorMessage,
  5611. }
  5612. return genericError
  5613. }
  5614. }
  5615. type awsAwsjson11_deserializeOpPutResourcePolicy struct {
  5616. }
  5617. func (*awsAwsjson11_deserializeOpPutResourcePolicy) ID() string {
  5618. return "OperationDeserializer"
  5619. }
  5620. func (m *awsAwsjson11_deserializeOpPutResourcePolicy) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  5621. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  5622. ) {
  5623. out, metadata, err = next.HandleDeserialize(ctx, in)
  5624. if err != nil {
  5625. return out, metadata, err
  5626. }
  5627. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  5628. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  5629. defer endTimer()
  5630. defer span.End()
  5631. response, ok := out.RawResponse.(*smithyhttp.Response)
  5632. if !ok {
  5633. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  5634. }
  5635. if response.StatusCode < 200 || response.StatusCode >= 300 {
  5636. return out, metadata, awsAwsjson11_deserializeOpErrorPutResourcePolicy(response, &metadata)
  5637. }
  5638. output := &PutResourcePolicyOutput{}
  5639. out.Result = output
  5640. var buff [1024]byte
  5641. ringBuffer := smithyio.NewRingBuffer(buff[:])
  5642. body := io.TeeReader(response.Body, ringBuffer)
  5643. decoder := json.NewDecoder(body)
  5644. decoder.UseNumber()
  5645. var shape interface{}
  5646. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  5647. var snapshot bytes.Buffer
  5648. io.Copy(&snapshot, ringBuffer)
  5649. err = &smithy.DeserializationError{
  5650. Err: fmt.Errorf("failed to decode response body, %w", err),
  5651. Snapshot: snapshot.Bytes(),
  5652. }
  5653. return out, metadata, err
  5654. }
  5655. err = awsAwsjson11_deserializeOpDocumentPutResourcePolicyOutput(&output, shape)
  5656. if err != nil {
  5657. var snapshot bytes.Buffer
  5658. io.Copy(&snapshot, ringBuffer)
  5659. err = &smithy.DeserializationError{
  5660. Err: fmt.Errorf("failed to decode response body, %w", err),
  5661. Snapshot: snapshot.Bytes(),
  5662. }
  5663. return out, metadata, err
  5664. }
  5665. return out, metadata, err
  5666. }
  5667. func awsAwsjson11_deserializeOpErrorPutResourcePolicy(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  5668. var errorBuffer bytes.Buffer
  5669. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  5670. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  5671. }
  5672. errorBody := bytes.NewReader(errorBuffer.Bytes())
  5673. errorCode := "UnknownError"
  5674. errorMessage := errorCode
  5675. headerCode := response.Header.Get("X-Amzn-ErrorType")
  5676. var buff [1024]byte
  5677. ringBuffer := smithyio.NewRingBuffer(buff[:])
  5678. body := io.TeeReader(errorBody, ringBuffer)
  5679. decoder := json.NewDecoder(body)
  5680. decoder.UseNumber()
  5681. bodyInfo, err := getProtocolErrorInfo(decoder)
  5682. if err != nil {
  5683. var snapshot bytes.Buffer
  5684. io.Copy(&snapshot, ringBuffer)
  5685. err = &smithy.DeserializationError{
  5686. Err: fmt.Errorf("failed to decode response body, %w", err),
  5687. Snapshot: snapshot.Bytes(),
  5688. }
  5689. return err
  5690. }
  5691. errorBody.Seek(0, io.SeekStart)
  5692. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  5693. errorCode = restjson.SanitizeErrorCode(typ)
  5694. }
  5695. if len(bodyInfo.Message) != 0 {
  5696. errorMessage = bodyInfo.Message
  5697. }
  5698. switch {
  5699. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  5700. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  5701. case strings.EqualFold("AccessDeniedException", errorCode):
  5702. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  5703. case strings.EqualFold("ConcurrentModificationException", errorCode):
  5704. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  5705. case strings.EqualFold("ConstraintViolationException", errorCode):
  5706. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  5707. case strings.EqualFold("InvalidInputException", errorCode):
  5708. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  5709. case strings.EqualFold("ServiceException", errorCode):
  5710. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  5711. case strings.EqualFold("TooManyRequestsException", errorCode):
  5712. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  5713. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  5714. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  5715. default:
  5716. genericError := &smithy.GenericAPIError{
  5717. Code: errorCode,
  5718. Message: errorMessage,
  5719. }
  5720. return genericError
  5721. }
  5722. }
  5723. type awsAwsjson11_deserializeOpRegisterDelegatedAdministrator struct {
  5724. }
  5725. func (*awsAwsjson11_deserializeOpRegisterDelegatedAdministrator) ID() string {
  5726. return "OperationDeserializer"
  5727. }
  5728. func (m *awsAwsjson11_deserializeOpRegisterDelegatedAdministrator) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  5729. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  5730. ) {
  5731. out, metadata, err = next.HandleDeserialize(ctx, in)
  5732. if err != nil {
  5733. return out, metadata, err
  5734. }
  5735. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  5736. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  5737. defer endTimer()
  5738. defer span.End()
  5739. response, ok := out.RawResponse.(*smithyhttp.Response)
  5740. if !ok {
  5741. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  5742. }
  5743. if response.StatusCode < 200 || response.StatusCode >= 300 {
  5744. return out, metadata, awsAwsjson11_deserializeOpErrorRegisterDelegatedAdministrator(response, &metadata)
  5745. }
  5746. output := &RegisterDelegatedAdministratorOutput{}
  5747. out.Result = output
  5748. if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
  5749. return out, metadata, &smithy.DeserializationError{
  5750. Err: fmt.Errorf("failed to discard response body, %w", err),
  5751. }
  5752. }
  5753. return out, metadata, err
  5754. }
  5755. func awsAwsjson11_deserializeOpErrorRegisterDelegatedAdministrator(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  5756. var errorBuffer bytes.Buffer
  5757. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  5758. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  5759. }
  5760. errorBody := bytes.NewReader(errorBuffer.Bytes())
  5761. errorCode := "UnknownError"
  5762. errorMessage := errorCode
  5763. headerCode := response.Header.Get("X-Amzn-ErrorType")
  5764. var buff [1024]byte
  5765. ringBuffer := smithyio.NewRingBuffer(buff[:])
  5766. body := io.TeeReader(errorBody, ringBuffer)
  5767. decoder := json.NewDecoder(body)
  5768. decoder.UseNumber()
  5769. bodyInfo, err := getProtocolErrorInfo(decoder)
  5770. if err != nil {
  5771. var snapshot bytes.Buffer
  5772. io.Copy(&snapshot, ringBuffer)
  5773. err = &smithy.DeserializationError{
  5774. Err: fmt.Errorf("failed to decode response body, %w", err),
  5775. Snapshot: snapshot.Bytes(),
  5776. }
  5777. return err
  5778. }
  5779. errorBody.Seek(0, io.SeekStart)
  5780. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  5781. errorCode = restjson.SanitizeErrorCode(typ)
  5782. }
  5783. if len(bodyInfo.Message) != 0 {
  5784. errorMessage = bodyInfo.Message
  5785. }
  5786. switch {
  5787. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  5788. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  5789. case strings.EqualFold("AccessDeniedException", errorCode):
  5790. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  5791. case strings.EqualFold("AccountAlreadyRegisteredException", errorCode):
  5792. return awsAwsjson11_deserializeErrorAccountAlreadyRegisteredException(response, errorBody)
  5793. case strings.EqualFold("AccountNotFoundException", errorCode):
  5794. return awsAwsjson11_deserializeErrorAccountNotFoundException(response, errorBody)
  5795. case strings.EqualFold("ConcurrentModificationException", errorCode):
  5796. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  5797. case strings.EqualFold("ConstraintViolationException", errorCode):
  5798. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  5799. case strings.EqualFold("InvalidInputException", errorCode):
  5800. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  5801. case strings.EqualFold("ServiceException", errorCode):
  5802. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  5803. case strings.EqualFold("TooManyRequestsException", errorCode):
  5804. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  5805. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  5806. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  5807. default:
  5808. genericError := &smithy.GenericAPIError{
  5809. Code: errorCode,
  5810. Message: errorMessage,
  5811. }
  5812. return genericError
  5813. }
  5814. }
  5815. type awsAwsjson11_deserializeOpRemoveAccountFromOrganization struct {
  5816. }
  5817. func (*awsAwsjson11_deserializeOpRemoveAccountFromOrganization) ID() string {
  5818. return "OperationDeserializer"
  5819. }
  5820. func (m *awsAwsjson11_deserializeOpRemoveAccountFromOrganization) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  5821. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  5822. ) {
  5823. out, metadata, err = next.HandleDeserialize(ctx, in)
  5824. if err != nil {
  5825. return out, metadata, err
  5826. }
  5827. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  5828. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  5829. defer endTimer()
  5830. defer span.End()
  5831. response, ok := out.RawResponse.(*smithyhttp.Response)
  5832. if !ok {
  5833. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  5834. }
  5835. if response.StatusCode < 200 || response.StatusCode >= 300 {
  5836. return out, metadata, awsAwsjson11_deserializeOpErrorRemoveAccountFromOrganization(response, &metadata)
  5837. }
  5838. output := &RemoveAccountFromOrganizationOutput{}
  5839. out.Result = output
  5840. if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
  5841. return out, metadata, &smithy.DeserializationError{
  5842. Err: fmt.Errorf("failed to discard response body, %w", err),
  5843. }
  5844. }
  5845. return out, metadata, err
  5846. }
  5847. func awsAwsjson11_deserializeOpErrorRemoveAccountFromOrganization(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  5848. var errorBuffer bytes.Buffer
  5849. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  5850. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  5851. }
  5852. errorBody := bytes.NewReader(errorBuffer.Bytes())
  5853. errorCode := "UnknownError"
  5854. errorMessage := errorCode
  5855. headerCode := response.Header.Get("X-Amzn-ErrorType")
  5856. var buff [1024]byte
  5857. ringBuffer := smithyio.NewRingBuffer(buff[:])
  5858. body := io.TeeReader(errorBody, ringBuffer)
  5859. decoder := json.NewDecoder(body)
  5860. decoder.UseNumber()
  5861. bodyInfo, err := getProtocolErrorInfo(decoder)
  5862. if err != nil {
  5863. var snapshot bytes.Buffer
  5864. io.Copy(&snapshot, ringBuffer)
  5865. err = &smithy.DeserializationError{
  5866. Err: fmt.Errorf("failed to decode response body, %w", err),
  5867. Snapshot: snapshot.Bytes(),
  5868. }
  5869. return err
  5870. }
  5871. errorBody.Seek(0, io.SeekStart)
  5872. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  5873. errorCode = restjson.SanitizeErrorCode(typ)
  5874. }
  5875. if len(bodyInfo.Message) != 0 {
  5876. errorMessage = bodyInfo.Message
  5877. }
  5878. switch {
  5879. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  5880. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  5881. case strings.EqualFold("AccessDeniedException", errorCode):
  5882. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  5883. case strings.EqualFold("AccountNotFoundException", errorCode):
  5884. return awsAwsjson11_deserializeErrorAccountNotFoundException(response, errorBody)
  5885. case strings.EqualFold("ConcurrentModificationException", errorCode):
  5886. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  5887. case strings.EqualFold("ConstraintViolationException", errorCode):
  5888. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  5889. case strings.EqualFold("InvalidInputException", errorCode):
  5890. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  5891. case strings.EqualFold("MasterCannotLeaveOrganizationException", errorCode):
  5892. return awsAwsjson11_deserializeErrorMasterCannotLeaveOrganizationException(response, errorBody)
  5893. case strings.EqualFold("ServiceException", errorCode):
  5894. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  5895. case strings.EqualFold("TooManyRequestsException", errorCode):
  5896. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  5897. default:
  5898. genericError := &smithy.GenericAPIError{
  5899. Code: errorCode,
  5900. Message: errorMessage,
  5901. }
  5902. return genericError
  5903. }
  5904. }
  5905. type awsAwsjson11_deserializeOpTagResource struct {
  5906. }
  5907. func (*awsAwsjson11_deserializeOpTagResource) ID() string {
  5908. return "OperationDeserializer"
  5909. }
  5910. func (m *awsAwsjson11_deserializeOpTagResource) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  5911. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  5912. ) {
  5913. out, metadata, err = next.HandleDeserialize(ctx, in)
  5914. if err != nil {
  5915. return out, metadata, err
  5916. }
  5917. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  5918. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  5919. defer endTimer()
  5920. defer span.End()
  5921. response, ok := out.RawResponse.(*smithyhttp.Response)
  5922. if !ok {
  5923. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  5924. }
  5925. if response.StatusCode < 200 || response.StatusCode >= 300 {
  5926. return out, metadata, awsAwsjson11_deserializeOpErrorTagResource(response, &metadata)
  5927. }
  5928. output := &TagResourceOutput{}
  5929. out.Result = output
  5930. if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
  5931. return out, metadata, &smithy.DeserializationError{
  5932. Err: fmt.Errorf("failed to discard response body, %w", err),
  5933. }
  5934. }
  5935. return out, metadata, err
  5936. }
  5937. func awsAwsjson11_deserializeOpErrorTagResource(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  5938. var errorBuffer bytes.Buffer
  5939. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  5940. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  5941. }
  5942. errorBody := bytes.NewReader(errorBuffer.Bytes())
  5943. errorCode := "UnknownError"
  5944. errorMessage := errorCode
  5945. headerCode := response.Header.Get("X-Amzn-ErrorType")
  5946. var buff [1024]byte
  5947. ringBuffer := smithyio.NewRingBuffer(buff[:])
  5948. body := io.TeeReader(errorBody, ringBuffer)
  5949. decoder := json.NewDecoder(body)
  5950. decoder.UseNumber()
  5951. bodyInfo, err := getProtocolErrorInfo(decoder)
  5952. if err != nil {
  5953. var snapshot bytes.Buffer
  5954. io.Copy(&snapshot, ringBuffer)
  5955. err = &smithy.DeserializationError{
  5956. Err: fmt.Errorf("failed to decode response body, %w", err),
  5957. Snapshot: snapshot.Bytes(),
  5958. }
  5959. return err
  5960. }
  5961. errorBody.Seek(0, io.SeekStart)
  5962. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  5963. errorCode = restjson.SanitizeErrorCode(typ)
  5964. }
  5965. if len(bodyInfo.Message) != 0 {
  5966. errorMessage = bodyInfo.Message
  5967. }
  5968. switch {
  5969. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  5970. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  5971. case strings.EqualFold("AccessDeniedException", errorCode):
  5972. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  5973. case strings.EqualFold("ConcurrentModificationException", errorCode):
  5974. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  5975. case strings.EqualFold("ConstraintViolationException", errorCode):
  5976. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  5977. case strings.EqualFold("InvalidInputException", errorCode):
  5978. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  5979. case strings.EqualFold("ServiceException", errorCode):
  5980. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  5981. case strings.EqualFold("TargetNotFoundException", errorCode):
  5982. return awsAwsjson11_deserializeErrorTargetNotFoundException(response, errorBody)
  5983. case strings.EqualFold("TooManyRequestsException", errorCode):
  5984. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  5985. default:
  5986. genericError := &smithy.GenericAPIError{
  5987. Code: errorCode,
  5988. Message: errorMessage,
  5989. }
  5990. return genericError
  5991. }
  5992. }
  5993. type awsAwsjson11_deserializeOpTerminateResponsibilityTransfer struct {
  5994. }
  5995. func (*awsAwsjson11_deserializeOpTerminateResponsibilityTransfer) ID() string {
  5996. return "OperationDeserializer"
  5997. }
  5998. func (m *awsAwsjson11_deserializeOpTerminateResponsibilityTransfer) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  5999. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  6000. ) {
  6001. out, metadata, err = next.HandleDeserialize(ctx, in)
  6002. if err != nil {
  6003. return out, metadata, err
  6004. }
  6005. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  6006. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  6007. defer endTimer()
  6008. defer span.End()
  6009. response, ok := out.RawResponse.(*smithyhttp.Response)
  6010. if !ok {
  6011. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  6012. }
  6013. if response.StatusCode < 200 || response.StatusCode >= 300 {
  6014. return out, metadata, awsAwsjson11_deserializeOpErrorTerminateResponsibilityTransfer(response, &metadata)
  6015. }
  6016. output := &TerminateResponsibilityTransferOutput{}
  6017. out.Result = output
  6018. var buff [1024]byte
  6019. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6020. body := io.TeeReader(response.Body, ringBuffer)
  6021. decoder := json.NewDecoder(body)
  6022. decoder.UseNumber()
  6023. var shape interface{}
  6024. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6025. var snapshot bytes.Buffer
  6026. io.Copy(&snapshot, ringBuffer)
  6027. err = &smithy.DeserializationError{
  6028. Err: fmt.Errorf("failed to decode response body, %w", err),
  6029. Snapshot: snapshot.Bytes(),
  6030. }
  6031. return out, metadata, err
  6032. }
  6033. err = awsAwsjson11_deserializeOpDocumentTerminateResponsibilityTransferOutput(&output, shape)
  6034. if err != nil {
  6035. var snapshot bytes.Buffer
  6036. io.Copy(&snapshot, ringBuffer)
  6037. err = &smithy.DeserializationError{
  6038. Err: fmt.Errorf("failed to decode response body, %w", err),
  6039. Snapshot: snapshot.Bytes(),
  6040. }
  6041. return out, metadata, err
  6042. }
  6043. return out, metadata, err
  6044. }
  6045. func awsAwsjson11_deserializeOpErrorTerminateResponsibilityTransfer(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  6046. var errorBuffer bytes.Buffer
  6047. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  6048. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  6049. }
  6050. errorBody := bytes.NewReader(errorBuffer.Bytes())
  6051. errorCode := "UnknownError"
  6052. errorMessage := errorCode
  6053. headerCode := response.Header.Get("X-Amzn-ErrorType")
  6054. var buff [1024]byte
  6055. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6056. body := io.TeeReader(errorBody, ringBuffer)
  6057. decoder := json.NewDecoder(body)
  6058. decoder.UseNumber()
  6059. bodyInfo, err := getProtocolErrorInfo(decoder)
  6060. if err != nil {
  6061. var snapshot bytes.Buffer
  6062. io.Copy(&snapshot, ringBuffer)
  6063. err = &smithy.DeserializationError{
  6064. Err: fmt.Errorf("failed to decode response body, %w", err),
  6065. Snapshot: snapshot.Bytes(),
  6066. }
  6067. return err
  6068. }
  6069. errorBody.Seek(0, io.SeekStart)
  6070. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  6071. errorCode = restjson.SanitizeErrorCode(typ)
  6072. }
  6073. if len(bodyInfo.Message) != 0 {
  6074. errorMessage = bodyInfo.Message
  6075. }
  6076. switch {
  6077. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  6078. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  6079. case strings.EqualFold("AccessDeniedException", errorCode):
  6080. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  6081. case strings.EqualFold("ConcurrentModificationException", errorCode):
  6082. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  6083. case strings.EqualFold("ConstraintViolationException", errorCode):
  6084. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  6085. case strings.EqualFold("InvalidInputException", errorCode):
  6086. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  6087. case strings.EqualFold("InvalidResponsibilityTransferTransitionException", errorCode):
  6088. return awsAwsjson11_deserializeErrorInvalidResponsibilityTransferTransitionException(response, errorBody)
  6089. case strings.EqualFold("ResponsibilityTransferAlreadyInStatusException", errorCode):
  6090. return awsAwsjson11_deserializeErrorResponsibilityTransferAlreadyInStatusException(response, errorBody)
  6091. case strings.EqualFold("ResponsibilityTransferNotFoundException", errorCode):
  6092. return awsAwsjson11_deserializeErrorResponsibilityTransferNotFoundException(response, errorBody)
  6093. case strings.EqualFold("ServiceException", errorCode):
  6094. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  6095. case strings.EqualFold("TooManyRequestsException", errorCode):
  6096. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  6097. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  6098. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  6099. default:
  6100. genericError := &smithy.GenericAPIError{
  6101. Code: errorCode,
  6102. Message: errorMessage,
  6103. }
  6104. return genericError
  6105. }
  6106. }
  6107. type awsAwsjson11_deserializeOpUntagResource struct {
  6108. }
  6109. func (*awsAwsjson11_deserializeOpUntagResource) ID() string {
  6110. return "OperationDeserializer"
  6111. }
  6112. func (m *awsAwsjson11_deserializeOpUntagResource) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  6113. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  6114. ) {
  6115. out, metadata, err = next.HandleDeserialize(ctx, in)
  6116. if err != nil {
  6117. return out, metadata, err
  6118. }
  6119. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  6120. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  6121. defer endTimer()
  6122. defer span.End()
  6123. response, ok := out.RawResponse.(*smithyhttp.Response)
  6124. if !ok {
  6125. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  6126. }
  6127. if response.StatusCode < 200 || response.StatusCode >= 300 {
  6128. return out, metadata, awsAwsjson11_deserializeOpErrorUntagResource(response, &metadata)
  6129. }
  6130. output := &UntagResourceOutput{}
  6131. out.Result = output
  6132. if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
  6133. return out, metadata, &smithy.DeserializationError{
  6134. Err: fmt.Errorf("failed to discard response body, %w", err),
  6135. }
  6136. }
  6137. return out, metadata, err
  6138. }
  6139. func awsAwsjson11_deserializeOpErrorUntagResource(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  6140. var errorBuffer bytes.Buffer
  6141. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  6142. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  6143. }
  6144. errorBody := bytes.NewReader(errorBuffer.Bytes())
  6145. errorCode := "UnknownError"
  6146. errorMessage := errorCode
  6147. headerCode := response.Header.Get("X-Amzn-ErrorType")
  6148. var buff [1024]byte
  6149. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6150. body := io.TeeReader(errorBody, ringBuffer)
  6151. decoder := json.NewDecoder(body)
  6152. decoder.UseNumber()
  6153. bodyInfo, err := getProtocolErrorInfo(decoder)
  6154. if err != nil {
  6155. var snapshot bytes.Buffer
  6156. io.Copy(&snapshot, ringBuffer)
  6157. err = &smithy.DeserializationError{
  6158. Err: fmt.Errorf("failed to decode response body, %w", err),
  6159. Snapshot: snapshot.Bytes(),
  6160. }
  6161. return err
  6162. }
  6163. errorBody.Seek(0, io.SeekStart)
  6164. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  6165. errorCode = restjson.SanitizeErrorCode(typ)
  6166. }
  6167. if len(bodyInfo.Message) != 0 {
  6168. errorMessage = bodyInfo.Message
  6169. }
  6170. switch {
  6171. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  6172. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  6173. case strings.EqualFold("AccessDeniedException", errorCode):
  6174. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  6175. case strings.EqualFold("ConcurrentModificationException", errorCode):
  6176. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  6177. case strings.EqualFold("ConstraintViolationException", errorCode):
  6178. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  6179. case strings.EqualFold("InvalidInputException", errorCode):
  6180. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  6181. case strings.EqualFold("ServiceException", errorCode):
  6182. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  6183. case strings.EqualFold("TargetNotFoundException", errorCode):
  6184. return awsAwsjson11_deserializeErrorTargetNotFoundException(response, errorBody)
  6185. case strings.EqualFold("TooManyRequestsException", errorCode):
  6186. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  6187. default:
  6188. genericError := &smithy.GenericAPIError{
  6189. Code: errorCode,
  6190. Message: errorMessage,
  6191. }
  6192. return genericError
  6193. }
  6194. }
  6195. type awsAwsjson11_deserializeOpUpdateOrganizationalUnit struct {
  6196. }
  6197. func (*awsAwsjson11_deserializeOpUpdateOrganizationalUnit) ID() string {
  6198. return "OperationDeserializer"
  6199. }
  6200. func (m *awsAwsjson11_deserializeOpUpdateOrganizationalUnit) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  6201. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  6202. ) {
  6203. out, metadata, err = next.HandleDeserialize(ctx, in)
  6204. if err != nil {
  6205. return out, metadata, err
  6206. }
  6207. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  6208. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  6209. defer endTimer()
  6210. defer span.End()
  6211. response, ok := out.RawResponse.(*smithyhttp.Response)
  6212. if !ok {
  6213. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  6214. }
  6215. if response.StatusCode < 200 || response.StatusCode >= 300 {
  6216. return out, metadata, awsAwsjson11_deserializeOpErrorUpdateOrganizationalUnit(response, &metadata)
  6217. }
  6218. output := &UpdateOrganizationalUnitOutput{}
  6219. out.Result = output
  6220. var buff [1024]byte
  6221. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6222. body := io.TeeReader(response.Body, ringBuffer)
  6223. decoder := json.NewDecoder(body)
  6224. decoder.UseNumber()
  6225. var shape interface{}
  6226. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6227. var snapshot bytes.Buffer
  6228. io.Copy(&snapshot, ringBuffer)
  6229. err = &smithy.DeserializationError{
  6230. Err: fmt.Errorf("failed to decode response body, %w", err),
  6231. Snapshot: snapshot.Bytes(),
  6232. }
  6233. return out, metadata, err
  6234. }
  6235. err = awsAwsjson11_deserializeOpDocumentUpdateOrganizationalUnitOutput(&output, shape)
  6236. if err != nil {
  6237. var snapshot bytes.Buffer
  6238. io.Copy(&snapshot, ringBuffer)
  6239. err = &smithy.DeserializationError{
  6240. Err: fmt.Errorf("failed to decode response body, %w", err),
  6241. Snapshot: snapshot.Bytes(),
  6242. }
  6243. return out, metadata, err
  6244. }
  6245. return out, metadata, err
  6246. }
  6247. func awsAwsjson11_deserializeOpErrorUpdateOrganizationalUnit(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  6248. var errorBuffer bytes.Buffer
  6249. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  6250. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  6251. }
  6252. errorBody := bytes.NewReader(errorBuffer.Bytes())
  6253. errorCode := "UnknownError"
  6254. errorMessage := errorCode
  6255. headerCode := response.Header.Get("X-Amzn-ErrorType")
  6256. var buff [1024]byte
  6257. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6258. body := io.TeeReader(errorBody, ringBuffer)
  6259. decoder := json.NewDecoder(body)
  6260. decoder.UseNumber()
  6261. bodyInfo, err := getProtocolErrorInfo(decoder)
  6262. if err != nil {
  6263. var snapshot bytes.Buffer
  6264. io.Copy(&snapshot, ringBuffer)
  6265. err = &smithy.DeserializationError{
  6266. Err: fmt.Errorf("failed to decode response body, %w", err),
  6267. Snapshot: snapshot.Bytes(),
  6268. }
  6269. return err
  6270. }
  6271. errorBody.Seek(0, io.SeekStart)
  6272. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  6273. errorCode = restjson.SanitizeErrorCode(typ)
  6274. }
  6275. if len(bodyInfo.Message) != 0 {
  6276. errorMessage = bodyInfo.Message
  6277. }
  6278. switch {
  6279. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  6280. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  6281. case strings.EqualFold("AccessDeniedException", errorCode):
  6282. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  6283. case strings.EqualFold("ConcurrentModificationException", errorCode):
  6284. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  6285. case strings.EqualFold("DuplicateOrganizationalUnitException", errorCode):
  6286. return awsAwsjson11_deserializeErrorDuplicateOrganizationalUnitException(response, errorBody)
  6287. case strings.EqualFold("InvalidInputException", errorCode):
  6288. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  6289. case strings.EqualFold("OrganizationalUnitNotFoundException", errorCode):
  6290. return awsAwsjson11_deserializeErrorOrganizationalUnitNotFoundException(response, errorBody)
  6291. case strings.EqualFold("ServiceException", errorCode):
  6292. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  6293. case strings.EqualFold("TooManyRequestsException", errorCode):
  6294. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  6295. default:
  6296. genericError := &smithy.GenericAPIError{
  6297. Code: errorCode,
  6298. Message: errorMessage,
  6299. }
  6300. return genericError
  6301. }
  6302. }
  6303. type awsAwsjson11_deserializeOpUpdatePolicy struct {
  6304. }
  6305. func (*awsAwsjson11_deserializeOpUpdatePolicy) ID() string {
  6306. return "OperationDeserializer"
  6307. }
  6308. func (m *awsAwsjson11_deserializeOpUpdatePolicy) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  6309. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  6310. ) {
  6311. out, metadata, err = next.HandleDeserialize(ctx, in)
  6312. if err != nil {
  6313. return out, metadata, err
  6314. }
  6315. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  6316. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  6317. defer endTimer()
  6318. defer span.End()
  6319. response, ok := out.RawResponse.(*smithyhttp.Response)
  6320. if !ok {
  6321. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  6322. }
  6323. if response.StatusCode < 200 || response.StatusCode >= 300 {
  6324. return out, metadata, awsAwsjson11_deserializeOpErrorUpdatePolicy(response, &metadata)
  6325. }
  6326. output := &UpdatePolicyOutput{}
  6327. out.Result = output
  6328. var buff [1024]byte
  6329. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6330. body := io.TeeReader(response.Body, ringBuffer)
  6331. decoder := json.NewDecoder(body)
  6332. decoder.UseNumber()
  6333. var shape interface{}
  6334. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6335. var snapshot bytes.Buffer
  6336. io.Copy(&snapshot, ringBuffer)
  6337. err = &smithy.DeserializationError{
  6338. Err: fmt.Errorf("failed to decode response body, %w", err),
  6339. Snapshot: snapshot.Bytes(),
  6340. }
  6341. return out, metadata, err
  6342. }
  6343. err = awsAwsjson11_deserializeOpDocumentUpdatePolicyOutput(&output, shape)
  6344. if err != nil {
  6345. var snapshot bytes.Buffer
  6346. io.Copy(&snapshot, ringBuffer)
  6347. err = &smithy.DeserializationError{
  6348. Err: fmt.Errorf("failed to decode response body, %w", err),
  6349. Snapshot: snapshot.Bytes(),
  6350. }
  6351. return out, metadata, err
  6352. }
  6353. return out, metadata, err
  6354. }
  6355. func awsAwsjson11_deserializeOpErrorUpdatePolicy(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  6356. var errorBuffer bytes.Buffer
  6357. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  6358. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  6359. }
  6360. errorBody := bytes.NewReader(errorBuffer.Bytes())
  6361. errorCode := "UnknownError"
  6362. errorMessage := errorCode
  6363. headerCode := response.Header.Get("X-Amzn-ErrorType")
  6364. var buff [1024]byte
  6365. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6366. body := io.TeeReader(errorBody, ringBuffer)
  6367. decoder := json.NewDecoder(body)
  6368. decoder.UseNumber()
  6369. bodyInfo, err := getProtocolErrorInfo(decoder)
  6370. if err != nil {
  6371. var snapshot bytes.Buffer
  6372. io.Copy(&snapshot, ringBuffer)
  6373. err = &smithy.DeserializationError{
  6374. Err: fmt.Errorf("failed to decode response body, %w", err),
  6375. Snapshot: snapshot.Bytes(),
  6376. }
  6377. return err
  6378. }
  6379. errorBody.Seek(0, io.SeekStart)
  6380. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  6381. errorCode = restjson.SanitizeErrorCode(typ)
  6382. }
  6383. if len(bodyInfo.Message) != 0 {
  6384. errorMessage = bodyInfo.Message
  6385. }
  6386. switch {
  6387. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  6388. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  6389. case strings.EqualFold("AccessDeniedException", errorCode):
  6390. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  6391. case strings.EqualFold("ConcurrentModificationException", errorCode):
  6392. return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
  6393. case strings.EqualFold("ConstraintViolationException", errorCode):
  6394. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  6395. case strings.EqualFold("DuplicatePolicyException", errorCode):
  6396. return awsAwsjson11_deserializeErrorDuplicatePolicyException(response, errorBody)
  6397. case strings.EqualFold("InvalidInputException", errorCode):
  6398. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  6399. case strings.EqualFold("MalformedPolicyDocumentException", errorCode):
  6400. return awsAwsjson11_deserializeErrorMalformedPolicyDocumentException(response, errorBody)
  6401. case strings.EqualFold("PolicyChangesInProgressException", errorCode):
  6402. return awsAwsjson11_deserializeErrorPolicyChangesInProgressException(response, errorBody)
  6403. case strings.EqualFold("PolicyNotFoundException", errorCode):
  6404. return awsAwsjson11_deserializeErrorPolicyNotFoundException(response, errorBody)
  6405. case strings.EqualFold("ServiceException", errorCode):
  6406. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  6407. case strings.EqualFold("TooManyRequestsException", errorCode):
  6408. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  6409. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  6410. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  6411. default:
  6412. genericError := &smithy.GenericAPIError{
  6413. Code: errorCode,
  6414. Message: errorMessage,
  6415. }
  6416. return genericError
  6417. }
  6418. }
  6419. type awsAwsjson11_deserializeOpUpdateResponsibilityTransfer struct {
  6420. }
  6421. func (*awsAwsjson11_deserializeOpUpdateResponsibilityTransfer) ID() string {
  6422. return "OperationDeserializer"
  6423. }
  6424. func (m *awsAwsjson11_deserializeOpUpdateResponsibilityTransfer) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
  6425. out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
  6426. ) {
  6427. out, metadata, err = next.HandleDeserialize(ctx, in)
  6428. if err != nil {
  6429. return out, metadata, err
  6430. }
  6431. _, span := tracing.StartSpan(ctx, "OperationDeserializer")
  6432. endTimer := startMetricTimer(ctx, "client.call.deserialization_duration")
  6433. defer endTimer()
  6434. defer span.End()
  6435. response, ok := out.RawResponse.(*smithyhttp.Response)
  6436. if !ok {
  6437. return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
  6438. }
  6439. if response.StatusCode < 200 || response.StatusCode >= 300 {
  6440. return out, metadata, awsAwsjson11_deserializeOpErrorUpdateResponsibilityTransfer(response, &metadata)
  6441. }
  6442. output := &UpdateResponsibilityTransferOutput{}
  6443. out.Result = output
  6444. var buff [1024]byte
  6445. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6446. body := io.TeeReader(response.Body, ringBuffer)
  6447. decoder := json.NewDecoder(body)
  6448. decoder.UseNumber()
  6449. var shape interface{}
  6450. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6451. var snapshot bytes.Buffer
  6452. io.Copy(&snapshot, ringBuffer)
  6453. err = &smithy.DeserializationError{
  6454. Err: fmt.Errorf("failed to decode response body, %w", err),
  6455. Snapshot: snapshot.Bytes(),
  6456. }
  6457. return out, metadata, err
  6458. }
  6459. err = awsAwsjson11_deserializeOpDocumentUpdateResponsibilityTransferOutput(&output, shape)
  6460. if err != nil {
  6461. var snapshot bytes.Buffer
  6462. io.Copy(&snapshot, ringBuffer)
  6463. err = &smithy.DeserializationError{
  6464. Err: fmt.Errorf("failed to decode response body, %w", err),
  6465. Snapshot: snapshot.Bytes(),
  6466. }
  6467. return out, metadata, err
  6468. }
  6469. return out, metadata, err
  6470. }
  6471. func awsAwsjson11_deserializeOpErrorUpdateResponsibilityTransfer(response *smithyhttp.Response, metadata *middleware.Metadata) error {
  6472. var errorBuffer bytes.Buffer
  6473. if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
  6474. return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
  6475. }
  6476. errorBody := bytes.NewReader(errorBuffer.Bytes())
  6477. errorCode := "UnknownError"
  6478. errorMessage := errorCode
  6479. headerCode := response.Header.Get("X-Amzn-ErrorType")
  6480. var buff [1024]byte
  6481. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6482. body := io.TeeReader(errorBody, ringBuffer)
  6483. decoder := json.NewDecoder(body)
  6484. decoder.UseNumber()
  6485. bodyInfo, err := getProtocolErrorInfo(decoder)
  6486. if err != nil {
  6487. var snapshot bytes.Buffer
  6488. io.Copy(&snapshot, ringBuffer)
  6489. err = &smithy.DeserializationError{
  6490. Err: fmt.Errorf("failed to decode response body, %w", err),
  6491. Snapshot: snapshot.Bytes(),
  6492. }
  6493. return err
  6494. }
  6495. errorBody.Seek(0, io.SeekStart)
  6496. if typ, ok := resolveProtocolErrorType(headerCode, bodyInfo); ok {
  6497. errorCode = restjson.SanitizeErrorCode(typ)
  6498. }
  6499. if len(bodyInfo.Message) != 0 {
  6500. errorMessage = bodyInfo.Message
  6501. }
  6502. switch {
  6503. case strings.EqualFold("AWSOrganizationsNotInUseException", errorCode):
  6504. return awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response, errorBody)
  6505. case strings.EqualFold("AccessDeniedException", errorCode):
  6506. return awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
  6507. case strings.EqualFold("ConstraintViolationException", errorCode):
  6508. return awsAwsjson11_deserializeErrorConstraintViolationException(response, errorBody)
  6509. case strings.EqualFold("InvalidInputException", errorCode):
  6510. return awsAwsjson11_deserializeErrorInvalidInputException(response, errorBody)
  6511. case strings.EqualFold("ResponsibilityTransferNotFoundException", errorCode):
  6512. return awsAwsjson11_deserializeErrorResponsibilityTransferNotFoundException(response, errorBody)
  6513. case strings.EqualFold("ServiceException", errorCode):
  6514. return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
  6515. case strings.EqualFold("TooManyRequestsException", errorCode):
  6516. return awsAwsjson11_deserializeErrorTooManyRequestsException(response, errorBody)
  6517. case strings.EqualFold("UnsupportedAPIEndpointException", errorCode):
  6518. return awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response, errorBody)
  6519. default:
  6520. genericError := &smithy.GenericAPIError{
  6521. Code: errorCode,
  6522. Message: errorMessage,
  6523. }
  6524. return genericError
  6525. }
  6526. }
  6527. func awsAwsjson11_deserializeErrorAccessDeniedException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  6528. var buff [1024]byte
  6529. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6530. body := io.TeeReader(errorBody, ringBuffer)
  6531. decoder := json.NewDecoder(body)
  6532. decoder.UseNumber()
  6533. var shape interface{}
  6534. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6535. var snapshot bytes.Buffer
  6536. io.Copy(&snapshot, ringBuffer)
  6537. err = &smithy.DeserializationError{
  6538. Err: fmt.Errorf("failed to decode response body, %w", err),
  6539. Snapshot: snapshot.Bytes(),
  6540. }
  6541. return err
  6542. }
  6543. output := &types.AccessDeniedException{}
  6544. err := awsAwsjson11_deserializeDocumentAccessDeniedException(&output, shape)
  6545. if err != nil {
  6546. var snapshot bytes.Buffer
  6547. io.Copy(&snapshot, ringBuffer)
  6548. err = &smithy.DeserializationError{
  6549. Err: fmt.Errorf("failed to decode response body, %w", err),
  6550. Snapshot: snapshot.Bytes(),
  6551. }
  6552. return err
  6553. }
  6554. errorBody.Seek(0, io.SeekStart)
  6555. return output
  6556. }
  6557. func awsAwsjson11_deserializeErrorAccessDeniedForDependencyException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  6558. var buff [1024]byte
  6559. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6560. body := io.TeeReader(errorBody, ringBuffer)
  6561. decoder := json.NewDecoder(body)
  6562. decoder.UseNumber()
  6563. var shape interface{}
  6564. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6565. var snapshot bytes.Buffer
  6566. io.Copy(&snapshot, ringBuffer)
  6567. err = &smithy.DeserializationError{
  6568. Err: fmt.Errorf("failed to decode response body, %w", err),
  6569. Snapshot: snapshot.Bytes(),
  6570. }
  6571. return err
  6572. }
  6573. output := &types.AccessDeniedForDependencyException{}
  6574. err := awsAwsjson11_deserializeDocumentAccessDeniedForDependencyException(&output, shape)
  6575. if err != nil {
  6576. var snapshot bytes.Buffer
  6577. io.Copy(&snapshot, ringBuffer)
  6578. err = &smithy.DeserializationError{
  6579. Err: fmt.Errorf("failed to decode response body, %w", err),
  6580. Snapshot: snapshot.Bytes(),
  6581. }
  6582. return err
  6583. }
  6584. errorBody.Seek(0, io.SeekStart)
  6585. return output
  6586. }
  6587. func awsAwsjson11_deserializeErrorAccountAlreadyClosedException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  6588. var buff [1024]byte
  6589. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6590. body := io.TeeReader(errorBody, ringBuffer)
  6591. decoder := json.NewDecoder(body)
  6592. decoder.UseNumber()
  6593. var shape interface{}
  6594. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6595. var snapshot bytes.Buffer
  6596. io.Copy(&snapshot, ringBuffer)
  6597. err = &smithy.DeserializationError{
  6598. Err: fmt.Errorf("failed to decode response body, %w", err),
  6599. Snapshot: snapshot.Bytes(),
  6600. }
  6601. return err
  6602. }
  6603. output := &types.AccountAlreadyClosedException{}
  6604. err := awsAwsjson11_deserializeDocumentAccountAlreadyClosedException(&output, shape)
  6605. if err != nil {
  6606. var snapshot bytes.Buffer
  6607. io.Copy(&snapshot, ringBuffer)
  6608. err = &smithy.DeserializationError{
  6609. Err: fmt.Errorf("failed to decode response body, %w", err),
  6610. Snapshot: snapshot.Bytes(),
  6611. }
  6612. return err
  6613. }
  6614. errorBody.Seek(0, io.SeekStart)
  6615. return output
  6616. }
  6617. func awsAwsjson11_deserializeErrorAccountAlreadyRegisteredException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  6618. var buff [1024]byte
  6619. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6620. body := io.TeeReader(errorBody, ringBuffer)
  6621. decoder := json.NewDecoder(body)
  6622. decoder.UseNumber()
  6623. var shape interface{}
  6624. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6625. var snapshot bytes.Buffer
  6626. io.Copy(&snapshot, ringBuffer)
  6627. err = &smithy.DeserializationError{
  6628. Err: fmt.Errorf("failed to decode response body, %w", err),
  6629. Snapshot: snapshot.Bytes(),
  6630. }
  6631. return err
  6632. }
  6633. output := &types.AccountAlreadyRegisteredException{}
  6634. err := awsAwsjson11_deserializeDocumentAccountAlreadyRegisteredException(&output, shape)
  6635. if err != nil {
  6636. var snapshot bytes.Buffer
  6637. io.Copy(&snapshot, ringBuffer)
  6638. err = &smithy.DeserializationError{
  6639. Err: fmt.Errorf("failed to decode response body, %w", err),
  6640. Snapshot: snapshot.Bytes(),
  6641. }
  6642. return err
  6643. }
  6644. errorBody.Seek(0, io.SeekStart)
  6645. return output
  6646. }
  6647. func awsAwsjson11_deserializeErrorAccountNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  6648. var buff [1024]byte
  6649. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6650. body := io.TeeReader(errorBody, ringBuffer)
  6651. decoder := json.NewDecoder(body)
  6652. decoder.UseNumber()
  6653. var shape interface{}
  6654. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6655. var snapshot bytes.Buffer
  6656. io.Copy(&snapshot, ringBuffer)
  6657. err = &smithy.DeserializationError{
  6658. Err: fmt.Errorf("failed to decode response body, %w", err),
  6659. Snapshot: snapshot.Bytes(),
  6660. }
  6661. return err
  6662. }
  6663. output := &types.AccountNotFoundException{}
  6664. err := awsAwsjson11_deserializeDocumentAccountNotFoundException(&output, shape)
  6665. if err != nil {
  6666. var snapshot bytes.Buffer
  6667. io.Copy(&snapshot, ringBuffer)
  6668. err = &smithy.DeserializationError{
  6669. Err: fmt.Errorf("failed to decode response body, %w", err),
  6670. Snapshot: snapshot.Bytes(),
  6671. }
  6672. return err
  6673. }
  6674. errorBody.Seek(0, io.SeekStart)
  6675. return output
  6676. }
  6677. func awsAwsjson11_deserializeErrorAccountNotRegisteredException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  6678. var buff [1024]byte
  6679. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6680. body := io.TeeReader(errorBody, ringBuffer)
  6681. decoder := json.NewDecoder(body)
  6682. decoder.UseNumber()
  6683. var shape interface{}
  6684. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6685. var snapshot bytes.Buffer
  6686. io.Copy(&snapshot, ringBuffer)
  6687. err = &smithy.DeserializationError{
  6688. Err: fmt.Errorf("failed to decode response body, %w", err),
  6689. Snapshot: snapshot.Bytes(),
  6690. }
  6691. return err
  6692. }
  6693. output := &types.AccountNotRegisteredException{}
  6694. err := awsAwsjson11_deserializeDocumentAccountNotRegisteredException(&output, shape)
  6695. if err != nil {
  6696. var snapshot bytes.Buffer
  6697. io.Copy(&snapshot, ringBuffer)
  6698. err = &smithy.DeserializationError{
  6699. Err: fmt.Errorf("failed to decode response body, %w", err),
  6700. Snapshot: snapshot.Bytes(),
  6701. }
  6702. return err
  6703. }
  6704. errorBody.Seek(0, io.SeekStart)
  6705. return output
  6706. }
  6707. func awsAwsjson11_deserializeErrorAccountOwnerNotVerifiedException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  6708. var buff [1024]byte
  6709. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6710. body := io.TeeReader(errorBody, ringBuffer)
  6711. decoder := json.NewDecoder(body)
  6712. decoder.UseNumber()
  6713. var shape interface{}
  6714. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6715. var snapshot bytes.Buffer
  6716. io.Copy(&snapshot, ringBuffer)
  6717. err = &smithy.DeserializationError{
  6718. Err: fmt.Errorf("failed to decode response body, %w", err),
  6719. Snapshot: snapshot.Bytes(),
  6720. }
  6721. return err
  6722. }
  6723. output := &types.AccountOwnerNotVerifiedException{}
  6724. err := awsAwsjson11_deserializeDocumentAccountOwnerNotVerifiedException(&output, shape)
  6725. if err != nil {
  6726. var snapshot bytes.Buffer
  6727. io.Copy(&snapshot, ringBuffer)
  6728. err = &smithy.DeserializationError{
  6729. Err: fmt.Errorf("failed to decode response body, %w", err),
  6730. Snapshot: snapshot.Bytes(),
  6731. }
  6732. return err
  6733. }
  6734. errorBody.Seek(0, io.SeekStart)
  6735. return output
  6736. }
  6737. func awsAwsjson11_deserializeErrorAlreadyInOrganizationException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  6738. var buff [1024]byte
  6739. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6740. body := io.TeeReader(errorBody, ringBuffer)
  6741. decoder := json.NewDecoder(body)
  6742. decoder.UseNumber()
  6743. var shape interface{}
  6744. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6745. var snapshot bytes.Buffer
  6746. io.Copy(&snapshot, ringBuffer)
  6747. err = &smithy.DeserializationError{
  6748. Err: fmt.Errorf("failed to decode response body, %w", err),
  6749. Snapshot: snapshot.Bytes(),
  6750. }
  6751. return err
  6752. }
  6753. output := &types.AlreadyInOrganizationException{}
  6754. err := awsAwsjson11_deserializeDocumentAlreadyInOrganizationException(&output, shape)
  6755. if err != nil {
  6756. var snapshot bytes.Buffer
  6757. io.Copy(&snapshot, ringBuffer)
  6758. err = &smithy.DeserializationError{
  6759. Err: fmt.Errorf("failed to decode response body, %w", err),
  6760. Snapshot: snapshot.Bytes(),
  6761. }
  6762. return err
  6763. }
  6764. errorBody.Seek(0, io.SeekStart)
  6765. return output
  6766. }
  6767. func awsAwsjson11_deserializeErrorAWSOrganizationsNotInUseException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  6768. var buff [1024]byte
  6769. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6770. body := io.TeeReader(errorBody, ringBuffer)
  6771. decoder := json.NewDecoder(body)
  6772. decoder.UseNumber()
  6773. var shape interface{}
  6774. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6775. var snapshot bytes.Buffer
  6776. io.Copy(&snapshot, ringBuffer)
  6777. err = &smithy.DeserializationError{
  6778. Err: fmt.Errorf("failed to decode response body, %w", err),
  6779. Snapshot: snapshot.Bytes(),
  6780. }
  6781. return err
  6782. }
  6783. output := &types.AWSOrganizationsNotInUseException{}
  6784. err := awsAwsjson11_deserializeDocumentAWSOrganizationsNotInUseException(&output, shape)
  6785. if err != nil {
  6786. var snapshot bytes.Buffer
  6787. io.Copy(&snapshot, ringBuffer)
  6788. err = &smithy.DeserializationError{
  6789. Err: fmt.Errorf("failed to decode response body, %w", err),
  6790. Snapshot: snapshot.Bytes(),
  6791. }
  6792. return err
  6793. }
  6794. errorBody.Seek(0, io.SeekStart)
  6795. return output
  6796. }
  6797. func awsAwsjson11_deserializeErrorChildNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  6798. var buff [1024]byte
  6799. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6800. body := io.TeeReader(errorBody, ringBuffer)
  6801. decoder := json.NewDecoder(body)
  6802. decoder.UseNumber()
  6803. var shape interface{}
  6804. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6805. var snapshot bytes.Buffer
  6806. io.Copy(&snapshot, ringBuffer)
  6807. err = &smithy.DeserializationError{
  6808. Err: fmt.Errorf("failed to decode response body, %w", err),
  6809. Snapshot: snapshot.Bytes(),
  6810. }
  6811. return err
  6812. }
  6813. output := &types.ChildNotFoundException{}
  6814. err := awsAwsjson11_deserializeDocumentChildNotFoundException(&output, shape)
  6815. if err != nil {
  6816. var snapshot bytes.Buffer
  6817. io.Copy(&snapshot, ringBuffer)
  6818. err = &smithy.DeserializationError{
  6819. Err: fmt.Errorf("failed to decode response body, %w", err),
  6820. Snapshot: snapshot.Bytes(),
  6821. }
  6822. return err
  6823. }
  6824. errorBody.Seek(0, io.SeekStart)
  6825. return output
  6826. }
  6827. func awsAwsjson11_deserializeErrorConcurrentModificationException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  6828. var buff [1024]byte
  6829. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6830. body := io.TeeReader(errorBody, ringBuffer)
  6831. decoder := json.NewDecoder(body)
  6832. decoder.UseNumber()
  6833. var shape interface{}
  6834. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6835. var snapshot bytes.Buffer
  6836. io.Copy(&snapshot, ringBuffer)
  6837. err = &smithy.DeserializationError{
  6838. Err: fmt.Errorf("failed to decode response body, %w", err),
  6839. Snapshot: snapshot.Bytes(),
  6840. }
  6841. return err
  6842. }
  6843. output := &types.ConcurrentModificationException{}
  6844. err := awsAwsjson11_deserializeDocumentConcurrentModificationException(&output, shape)
  6845. if err != nil {
  6846. var snapshot bytes.Buffer
  6847. io.Copy(&snapshot, ringBuffer)
  6848. err = &smithy.DeserializationError{
  6849. Err: fmt.Errorf("failed to decode response body, %w", err),
  6850. Snapshot: snapshot.Bytes(),
  6851. }
  6852. return err
  6853. }
  6854. errorBody.Seek(0, io.SeekStart)
  6855. return output
  6856. }
  6857. func awsAwsjson11_deserializeErrorConflictException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  6858. var buff [1024]byte
  6859. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6860. body := io.TeeReader(errorBody, ringBuffer)
  6861. decoder := json.NewDecoder(body)
  6862. decoder.UseNumber()
  6863. var shape interface{}
  6864. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6865. var snapshot bytes.Buffer
  6866. io.Copy(&snapshot, ringBuffer)
  6867. err = &smithy.DeserializationError{
  6868. Err: fmt.Errorf("failed to decode response body, %w", err),
  6869. Snapshot: snapshot.Bytes(),
  6870. }
  6871. return err
  6872. }
  6873. output := &types.ConflictException{}
  6874. err := awsAwsjson11_deserializeDocumentConflictException(&output, shape)
  6875. if err != nil {
  6876. var snapshot bytes.Buffer
  6877. io.Copy(&snapshot, ringBuffer)
  6878. err = &smithy.DeserializationError{
  6879. Err: fmt.Errorf("failed to decode response body, %w", err),
  6880. Snapshot: snapshot.Bytes(),
  6881. }
  6882. return err
  6883. }
  6884. errorBody.Seek(0, io.SeekStart)
  6885. return output
  6886. }
  6887. func awsAwsjson11_deserializeErrorConstraintViolationException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  6888. var buff [1024]byte
  6889. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6890. body := io.TeeReader(errorBody, ringBuffer)
  6891. decoder := json.NewDecoder(body)
  6892. decoder.UseNumber()
  6893. var shape interface{}
  6894. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6895. var snapshot bytes.Buffer
  6896. io.Copy(&snapshot, ringBuffer)
  6897. err = &smithy.DeserializationError{
  6898. Err: fmt.Errorf("failed to decode response body, %w", err),
  6899. Snapshot: snapshot.Bytes(),
  6900. }
  6901. return err
  6902. }
  6903. output := &types.ConstraintViolationException{}
  6904. err := awsAwsjson11_deserializeDocumentConstraintViolationException(&output, shape)
  6905. if err != nil {
  6906. var snapshot bytes.Buffer
  6907. io.Copy(&snapshot, ringBuffer)
  6908. err = &smithy.DeserializationError{
  6909. Err: fmt.Errorf("failed to decode response body, %w", err),
  6910. Snapshot: snapshot.Bytes(),
  6911. }
  6912. return err
  6913. }
  6914. errorBody.Seek(0, io.SeekStart)
  6915. return output
  6916. }
  6917. func awsAwsjson11_deserializeErrorCreateAccountStatusNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  6918. var buff [1024]byte
  6919. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6920. body := io.TeeReader(errorBody, ringBuffer)
  6921. decoder := json.NewDecoder(body)
  6922. decoder.UseNumber()
  6923. var shape interface{}
  6924. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6925. var snapshot bytes.Buffer
  6926. io.Copy(&snapshot, ringBuffer)
  6927. err = &smithy.DeserializationError{
  6928. Err: fmt.Errorf("failed to decode response body, %w", err),
  6929. Snapshot: snapshot.Bytes(),
  6930. }
  6931. return err
  6932. }
  6933. output := &types.CreateAccountStatusNotFoundException{}
  6934. err := awsAwsjson11_deserializeDocumentCreateAccountStatusNotFoundException(&output, shape)
  6935. if err != nil {
  6936. var snapshot bytes.Buffer
  6937. io.Copy(&snapshot, ringBuffer)
  6938. err = &smithy.DeserializationError{
  6939. Err: fmt.Errorf("failed to decode response body, %w", err),
  6940. Snapshot: snapshot.Bytes(),
  6941. }
  6942. return err
  6943. }
  6944. errorBody.Seek(0, io.SeekStart)
  6945. return output
  6946. }
  6947. func awsAwsjson11_deserializeErrorDestinationParentNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  6948. var buff [1024]byte
  6949. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6950. body := io.TeeReader(errorBody, ringBuffer)
  6951. decoder := json.NewDecoder(body)
  6952. decoder.UseNumber()
  6953. var shape interface{}
  6954. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6955. var snapshot bytes.Buffer
  6956. io.Copy(&snapshot, ringBuffer)
  6957. err = &smithy.DeserializationError{
  6958. Err: fmt.Errorf("failed to decode response body, %w", err),
  6959. Snapshot: snapshot.Bytes(),
  6960. }
  6961. return err
  6962. }
  6963. output := &types.DestinationParentNotFoundException{}
  6964. err := awsAwsjson11_deserializeDocumentDestinationParentNotFoundException(&output, shape)
  6965. if err != nil {
  6966. var snapshot bytes.Buffer
  6967. io.Copy(&snapshot, ringBuffer)
  6968. err = &smithy.DeserializationError{
  6969. Err: fmt.Errorf("failed to decode response body, %w", err),
  6970. Snapshot: snapshot.Bytes(),
  6971. }
  6972. return err
  6973. }
  6974. errorBody.Seek(0, io.SeekStart)
  6975. return output
  6976. }
  6977. func awsAwsjson11_deserializeErrorDuplicateAccountException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  6978. var buff [1024]byte
  6979. ringBuffer := smithyio.NewRingBuffer(buff[:])
  6980. body := io.TeeReader(errorBody, ringBuffer)
  6981. decoder := json.NewDecoder(body)
  6982. decoder.UseNumber()
  6983. var shape interface{}
  6984. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  6985. var snapshot bytes.Buffer
  6986. io.Copy(&snapshot, ringBuffer)
  6987. err = &smithy.DeserializationError{
  6988. Err: fmt.Errorf("failed to decode response body, %w", err),
  6989. Snapshot: snapshot.Bytes(),
  6990. }
  6991. return err
  6992. }
  6993. output := &types.DuplicateAccountException{}
  6994. err := awsAwsjson11_deserializeDocumentDuplicateAccountException(&output, shape)
  6995. if err != nil {
  6996. var snapshot bytes.Buffer
  6997. io.Copy(&snapshot, ringBuffer)
  6998. err = &smithy.DeserializationError{
  6999. Err: fmt.Errorf("failed to decode response body, %w", err),
  7000. Snapshot: snapshot.Bytes(),
  7001. }
  7002. return err
  7003. }
  7004. errorBody.Seek(0, io.SeekStart)
  7005. return output
  7006. }
  7007. func awsAwsjson11_deserializeErrorDuplicateHandshakeException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7008. var buff [1024]byte
  7009. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7010. body := io.TeeReader(errorBody, ringBuffer)
  7011. decoder := json.NewDecoder(body)
  7012. decoder.UseNumber()
  7013. var shape interface{}
  7014. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7015. var snapshot bytes.Buffer
  7016. io.Copy(&snapshot, ringBuffer)
  7017. err = &smithy.DeserializationError{
  7018. Err: fmt.Errorf("failed to decode response body, %w", err),
  7019. Snapshot: snapshot.Bytes(),
  7020. }
  7021. return err
  7022. }
  7023. output := &types.DuplicateHandshakeException{}
  7024. err := awsAwsjson11_deserializeDocumentDuplicateHandshakeException(&output, shape)
  7025. if err != nil {
  7026. var snapshot bytes.Buffer
  7027. io.Copy(&snapshot, ringBuffer)
  7028. err = &smithy.DeserializationError{
  7029. Err: fmt.Errorf("failed to decode response body, %w", err),
  7030. Snapshot: snapshot.Bytes(),
  7031. }
  7032. return err
  7033. }
  7034. errorBody.Seek(0, io.SeekStart)
  7035. return output
  7036. }
  7037. func awsAwsjson11_deserializeErrorDuplicateOrganizationalUnitException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7038. var buff [1024]byte
  7039. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7040. body := io.TeeReader(errorBody, ringBuffer)
  7041. decoder := json.NewDecoder(body)
  7042. decoder.UseNumber()
  7043. var shape interface{}
  7044. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7045. var snapshot bytes.Buffer
  7046. io.Copy(&snapshot, ringBuffer)
  7047. err = &smithy.DeserializationError{
  7048. Err: fmt.Errorf("failed to decode response body, %w", err),
  7049. Snapshot: snapshot.Bytes(),
  7050. }
  7051. return err
  7052. }
  7053. output := &types.DuplicateOrganizationalUnitException{}
  7054. err := awsAwsjson11_deserializeDocumentDuplicateOrganizationalUnitException(&output, shape)
  7055. if err != nil {
  7056. var snapshot bytes.Buffer
  7057. io.Copy(&snapshot, ringBuffer)
  7058. err = &smithy.DeserializationError{
  7059. Err: fmt.Errorf("failed to decode response body, %w", err),
  7060. Snapshot: snapshot.Bytes(),
  7061. }
  7062. return err
  7063. }
  7064. errorBody.Seek(0, io.SeekStart)
  7065. return output
  7066. }
  7067. func awsAwsjson11_deserializeErrorDuplicatePolicyAttachmentException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7068. var buff [1024]byte
  7069. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7070. body := io.TeeReader(errorBody, ringBuffer)
  7071. decoder := json.NewDecoder(body)
  7072. decoder.UseNumber()
  7073. var shape interface{}
  7074. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7075. var snapshot bytes.Buffer
  7076. io.Copy(&snapshot, ringBuffer)
  7077. err = &smithy.DeserializationError{
  7078. Err: fmt.Errorf("failed to decode response body, %w", err),
  7079. Snapshot: snapshot.Bytes(),
  7080. }
  7081. return err
  7082. }
  7083. output := &types.DuplicatePolicyAttachmentException{}
  7084. err := awsAwsjson11_deserializeDocumentDuplicatePolicyAttachmentException(&output, shape)
  7085. if err != nil {
  7086. var snapshot bytes.Buffer
  7087. io.Copy(&snapshot, ringBuffer)
  7088. err = &smithy.DeserializationError{
  7089. Err: fmt.Errorf("failed to decode response body, %w", err),
  7090. Snapshot: snapshot.Bytes(),
  7091. }
  7092. return err
  7093. }
  7094. errorBody.Seek(0, io.SeekStart)
  7095. return output
  7096. }
  7097. func awsAwsjson11_deserializeErrorDuplicatePolicyException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7098. var buff [1024]byte
  7099. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7100. body := io.TeeReader(errorBody, ringBuffer)
  7101. decoder := json.NewDecoder(body)
  7102. decoder.UseNumber()
  7103. var shape interface{}
  7104. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7105. var snapshot bytes.Buffer
  7106. io.Copy(&snapshot, ringBuffer)
  7107. err = &smithy.DeserializationError{
  7108. Err: fmt.Errorf("failed to decode response body, %w", err),
  7109. Snapshot: snapshot.Bytes(),
  7110. }
  7111. return err
  7112. }
  7113. output := &types.DuplicatePolicyException{}
  7114. err := awsAwsjson11_deserializeDocumentDuplicatePolicyException(&output, shape)
  7115. if err != nil {
  7116. var snapshot bytes.Buffer
  7117. io.Copy(&snapshot, ringBuffer)
  7118. err = &smithy.DeserializationError{
  7119. Err: fmt.Errorf("failed to decode response body, %w", err),
  7120. Snapshot: snapshot.Bytes(),
  7121. }
  7122. return err
  7123. }
  7124. errorBody.Seek(0, io.SeekStart)
  7125. return output
  7126. }
  7127. func awsAwsjson11_deserializeErrorEffectivePolicyNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7128. var buff [1024]byte
  7129. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7130. body := io.TeeReader(errorBody, ringBuffer)
  7131. decoder := json.NewDecoder(body)
  7132. decoder.UseNumber()
  7133. var shape interface{}
  7134. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7135. var snapshot bytes.Buffer
  7136. io.Copy(&snapshot, ringBuffer)
  7137. err = &smithy.DeserializationError{
  7138. Err: fmt.Errorf("failed to decode response body, %w", err),
  7139. Snapshot: snapshot.Bytes(),
  7140. }
  7141. return err
  7142. }
  7143. output := &types.EffectivePolicyNotFoundException{}
  7144. err := awsAwsjson11_deserializeDocumentEffectivePolicyNotFoundException(&output, shape)
  7145. if err != nil {
  7146. var snapshot bytes.Buffer
  7147. io.Copy(&snapshot, ringBuffer)
  7148. err = &smithy.DeserializationError{
  7149. Err: fmt.Errorf("failed to decode response body, %w", err),
  7150. Snapshot: snapshot.Bytes(),
  7151. }
  7152. return err
  7153. }
  7154. errorBody.Seek(0, io.SeekStart)
  7155. return output
  7156. }
  7157. func awsAwsjson11_deserializeErrorFinalizingOrganizationException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7158. var buff [1024]byte
  7159. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7160. body := io.TeeReader(errorBody, ringBuffer)
  7161. decoder := json.NewDecoder(body)
  7162. decoder.UseNumber()
  7163. var shape interface{}
  7164. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7165. var snapshot bytes.Buffer
  7166. io.Copy(&snapshot, ringBuffer)
  7167. err = &smithy.DeserializationError{
  7168. Err: fmt.Errorf("failed to decode response body, %w", err),
  7169. Snapshot: snapshot.Bytes(),
  7170. }
  7171. return err
  7172. }
  7173. output := &types.FinalizingOrganizationException{}
  7174. err := awsAwsjson11_deserializeDocumentFinalizingOrganizationException(&output, shape)
  7175. if err != nil {
  7176. var snapshot bytes.Buffer
  7177. io.Copy(&snapshot, ringBuffer)
  7178. err = &smithy.DeserializationError{
  7179. Err: fmt.Errorf("failed to decode response body, %w", err),
  7180. Snapshot: snapshot.Bytes(),
  7181. }
  7182. return err
  7183. }
  7184. errorBody.Seek(0, io.SeekStart)
  7185. return output
  7186. }
  7187. func awsAwsjson11_deserializeErrorHandshakeAlreadyInStateException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7188. var buff [1024]byte
  7189. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7190. body := io.TeeReader(errorBody, ringBuffer)
  7191. decoder := json.NewDecoder(body)
  7192. decoder.UseNumber()
  7193. var shape interface{}
  7194. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7195. var snapshot bytes.Buffer
  7196. io.Copy(&snapshot, ringBuffer)
  7197. err = &smithy.DeserializationError{
  7198. Err: fmt.Errorf("failed to decode response body, %w", err),
  7199. Snapshot: snapshot.Bytes(),
  7200. }
  7201. return err
  7202. }
  7203. output := &types.HandshakeAlreadyInStateException{}
  7204. err := awsAwsjson11_deserializeDocumentHandshakeAlreadyInStateException(&output, shape)
  7205. if err != nil {
  7206. var snapshot bytes.Buffer
  7207. io.Copy(&snapshot, ringBuffer)
  7208. err = &smithy.DeserializationError{
  7209. Err: fmt.Errorf("failed to decode response body, %w", err),
  7210. Snapshot: snapshot.Bytes(),
  7211. }
  7212. return err
  7213. }
  7214. errorBody.Seek(0, io.SeekStart)
  7215. return output
  7216. }
  7217. func awsAwsjson11_deserializeErrorHandshakeConstraintViolationException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7218. var buff [1024]byte
  7219. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7220. body := io.TeeReader(errorBody, ringBuffer)
  7221. decoder := json.NewDecoder(body)
  7222. decoder.UseNumber()
  7223. var shape interface{}
  7224. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7225. var snapshot bytes.Buffer
  7226. io.Copy(&snapshot, ringBuffer)
  7227. err = &smithy.DeserializationError{
  7228. Err: fmt.Errorf("failed to decode response body, %w", err),
  7229. Snapshot: snapshot.Bytes(),
  7230. }
  7231. return err
  7232. }
  7233. output := &types.HandshakeConstraintViolationException{}
  7234. err := awsAwsjson11_deserializeDocumentHandshakeConstraintViolationException(&output, shape)
  7235. if err != nil {
  7236. var snapshot bytes.Buffer
  7237. io.Copy(&snapshot, ringBuffer)
  7238. err = &smithy.DeserializationError{
  7239. Err: fmt.Errorf("failed to decode response body, %w", err),
  7240. Snapshot: snapshot.Bytes(),
  7241. }
  7242. return err
  7243. }
  7244. errorBody.Seek(0, io.SeekStart)
  7245. return output
  7246. }
  7247. func awsAwsjson11_deserializeErrorHandshakeNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7248. var buff [1024]byte
  7249. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7250. body := io.TeeReader(errorBody, ringBuffer)
  7251. decoder := json.NewDecoder(body)
  7252. decoder.UseNumber()
  7253. var shape interface{}
  7254. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7255. var snapshot bytes.Buffer
  7256. io.Copy(&snapshot, ringBuffer)
  7257. err = &smithy.DeserializationError{
  7258. Err: fmt.Errorf("failed to decode response body, %w", err),
  7259. Snapshot: snapshot.Bytes(),
  7260. }
  7261. return err
  7262. }
  7263. output := &types.HandshakeNotFoundException{}
  7264. err := awsAwsjson11_deserializeDocumentHandshakeNotFoundException(&output, shape)
  7265. if err != nil {
  7266. var snapshot bytes.Buffer
  7267. io.Copy(&snapshot, ringBuffer)
  7268. err = &smithy.DeserializationError{
  7269. Err: fmt.Errorf("failed to decode response body, %w", err),
  7270. Snapshot: snapshot.Bytes(),
  7271. }
  7272. return err
  7273. }
  7274. errorBody.Seek(0, io.SeekStart)
  7275. return output
  7276. }
  7277. func awsAwsjson11_deserializeErrorInvalidHandshakeTransitionException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7278. var buff [1024]byte
  7279. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7280. body := io.TeeReader(errorBody, ringBuffer)
  7281. decoder := json.NewDecoder(body)
  7282. decoder.UseNumber()
  7283. var shape interface{}
  7284. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7285. var snapshot bytes.Buffer
  7286. io.Copy(&snapshot, ringBuffer)
  7287. err = &smithy.DeserializationError{
  7288. Err: fmt.Errorf("failed to decode response body, %w", err),
  7289. Snapshot: snapshot.Bytes(),
  7290. }
  7291. return err
  7292. }
  7293. output := &types.InvalidHandshakeTransitionException{}
  7294. err := awsAwsjson11_deserializeDocumentInvalidHandshakeTransitionException(&output, shape)
  7295. if err != nil {
  7296. var snapshot bytes.Buffer
  7297. io.Copy(&snapshot, ringBuffer)
  7298. err = &smithy.DeserializationError{
  7299. Err: fmt.Errorf("failed to decode response body, %w", err),
  7300. Snapshot: snapshot.Bytes(),
  7301. }
  7302. return err
  7303. }
  7304. errorBody.Seek(0, io.SeekStart)
  7305. return output
  7306. }
  7307. func awsAwsjson11_deserializeErrorInvalidInputException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7308. var buff [1024]byte
  7309. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7310. body := io.TeeReader(errorBody, ringBuffer)
  7311. decoder := json.NewDecoder(body)
  7312. decoder.UseNumber()
  7313. var shape interface{}
  7314. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7315. var snapshot bytes.Buffer
  7316. io.Copy(&snapshot, ringBuffer)
  7317. err = &smithy.DeserializationError{
  7318. Err: fmt.Errorf("failed to decode response body, %w", err),
  7319. Snapshot: snapshot.Bytes(),
  7320. }
  7321. return err
  7322. }
  7323. output := &types.InvalidInputException{}
  7324. err := awsAwsjson11_deserializeDocumentInvalidInputException(&output, shape)
  7325. if err != nil {
  7326. var snapshot bytes.Buffer
  7327. io.Copy(&snapshot, ringBuffer)
  7328. err = &smithy.DeserializationError{
  7329. Err: fmt.Errorf("failed to decode response body, %w", err),
  7330. Snapshot: snapshot.Bytes(),
  7331. }
  7332. return err
  7333. }
  7334. errorBody.Seek(0, io.SeekStart)
  7335. return output
  7336. }
  7337. func awsAwsjson11_deserializeErrorInvalidResponsibilityTransferTransitionException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7338. var buff [1024]byte
  7339. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7340. body := io.TeeReader(errorBody, ringBuffer)
  7341. decoder := json.NewDecoder(body)
  7342. decoder.UseNumber()
  7343. var shape interface{}
  7344. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7345. var snapshot bytes.Buffer
  7346. io.Copy(&snapshot, ringBuffer)
  7347. err = &smithy.DeserializationError{
  7348. Err: fmt.Errorf("failed to decode response body, %w", err),
  7349. Snapshot: snapshot.Bytes(),
  7350. }
  7351. return err
  7352. }
  7353. output := &types.InvalidResponsibilityTransferTransitionException{}
  7354. err := awsAwsjson11_deserializeDocumentInvalidResponsibilityTransferTransitionException(&output, shape)
  7355. if err != nil {
  7356. var snapshot bytes.Buffer
  7357. io.Copy(&snapshot, ringBuffer)
  7358. err = &smithy.DeserializationError{
  7359. Err: fmt.Errorf("failed to decode response body, %w", err),
  7360. Snapshot: snapshot.Bytes(),
  7361. }
  7362. return err
  7363. }
  7364. errorBody.Seek(0, io.SeekStart)
  7365. return output
  7366. }
  7367. func awsAwsjson11_deserializeErrorMalformedPolicyDocumentException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7368. var buff [1024]byte
  7369. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7370. body := io.TeeReader(errorBody, ringBuffer)
  7371. decoder := json.NewDecoder(body)
  7372. decoder.UseNumber()
  7373. var shape interface{}
  7374. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7375. var snapshot bytes.Buffer
  7376. io.Copy(&snapshot, ringBuffer)
  7377. err = &smithy.DeserializationError{
  7378. Err: fmt.Errorf("failed to decode response body, %w", err),
  7379. Snapshot: snapshot.Bytes(),
  7380. }
  7381. return err
  7382. }
  7383. output := &types.MalformedPolicyDocumentException{}
  7384. err := awsAwsjson11_deserializeDocumentMalformedPolicyDocumentException(&output, shape)
  7385. if err != nil {
  7386. var snapshot bytes.Buffer
  7387. io.Copy(&snapshot, ringBuffer)
  7388. err = &smithy.DeserializationError{
  7389. Err: fmt.Errorf("failed to decode response body, %w", err),
  7390. Snapshot: snapshot.Bytes(),
  7391. }
  7392. return err
  7393. }
  7394. errorBody.Seek(0, io.SeekStart)
  7395. return output
  7396. }
  7397. func awsAwsjson11_deserializeErrorMasterCannotLeaveOrganizationException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7398. var buff [1024]byte
  7399. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7400. body := io.TeeReader(errorBody, ringBuffer)
  7401. decoder := json.NewDecoder(body)
  7402. decoder.UseNumber()
  7403. var shape interface{}
  7404. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7405. var snapshot bytes.Buffer
  7406. io.Copy(&snapshot, ringBuffer)
  7407. err = &smithy.DeserializationError{
  7408. Err: fmt.Errorf("failed to decode response body, %w", err),
  7409. Snapshot: snapshot.Bytes(),
  7410. }
  7411. return err
  7412. }
  7413. output := &types.MasterCannotLeaveOrganizationException{}
  7414. err := awsAwsjson11_deserializeDocumentMasterCannotLeaveOrganizationException(&output, shape)
  7415. if err != nil {
  7416. var snapshot bytes.Buffer
  7417. io.Copy(&snapshot, ringBuffer)
  7418. err = &smithy.DeserializationError{
  7419. Err: fmt.Errorf("failed to decode response body, %w", err),
  7420. Snapshot: snapshot.Bytes(),
  7421. }
  7422. return err
  7423. }
  7424. errorBody.Seek(0, io.SeekStart)
  7425. return output
  7426. }
  7427. func awsAwsjson11_deserializeErrorOrganizationalUnitNotEmptyException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7428. var buff [1024]byte
  7429. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7430. body := io.TeeReader(errorBody, ringBuffer)
  7431. decoder := json.NewDecoder(body)
  7432. decoder.UseNumber()
  7433. var shape interface{}
  7434. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7435. var snapshot bytes.Buffer
  7436. io.Copy(&snapshot, ringBuffer)
  7437. err = &smithy.DeserializationError{
  7438. Err: fmt.Errorf("failed to decode response body, %w", err),
  7439. Snapshot: snapshot.Bytes(),
  7440. }
  7441. return err
  7442. }
  7443. output := &types.OrganizationalUnitNotEmptyException{}
  7444. err := awsAwsjson11_deserializeDocumentOrganizationalUnitNotEmptyException(&output, shape)
  7445. if err != nil {
  7446. var snapshot bytes.Buffer
  7447. io.Copy(&snapshot, ringBuffer)
  7448. err = &smithy.DeserializationError{
  7449. Err: fmt.Errorf("failed to decode response body, %w", err),
  7450. Snapshot: snapshot.Bytes(),
  7451. }
  7452. return err
  7453. }
  7454. errorBody.Seek(0, io.SeekStart)
  7455. return output
  7456. }
  7457. func awsAwsjson11_deserializeErrorOrganizationalUnitNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7458. var buff [1024]byte
  7459. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7460. body := io.TeeReader(errorBody, ringBuffer)
  7461. decoder := json.NewDecoder(body)
  7462. decoder.UseNumber()
  7463. var shape interface{}
  7464. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7465. var snapshot bytes.Buffer
  7466. io.Copy(&snapshot, ringBuffer)
  7467. err = &smithy.DeserializationError{
  7468. Err: fmt.Errorf("failed to decode response body, %w", err),
  7469. Snapshot: snapshot.Bytes(),
  7470. }
  7471. return err
  7472. }
  7473. output := &types.OrganizationalUnitNotFoundException{}
  7474. err := awsAwsjson11_deserializeDocumentOrganizationalUnitNotFoundException(&output, shape)
  7475. if err != nil {
  7476. var snapshot bytes.Buffer
  7477. io.Copy(&snapshot, ringBuffer)
  7478. err = &smithy.DeserializationError{
  7479. Err: fmt.Errorf("failed to decode response body, %w", err),
  7480. Snapshot: snapshot.Bytes(),
  7481. }
  7482. return err
  7483. }
  7484. errorBody.Seek(0, io.SeekStart)
  7485. return output
  7486. }
  7487. func awsAwsjson11_deserializeErrorOrganizationNotEmptyException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7488. var buff [1024]byte
  7489. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7490. body := io.TeeReader(errorBody, ringBuffer)
  7491. decoder := json.NewDecoder(body)
  7492. decoder.UseNumber()
  7493. var shape interface{}
  7494. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7495. var snapshot bytes.Buffer
  7496. io.Copy(&snapshot, ringBuffer)
  7497. err = &smithy.DeserializationError{
  7498. Err: fmt.Errorf("failed to decode response body, %w", err),
  7499. Snapshot: snapshot.Bytes(),
  7500. }
  7501. return err
  7502. }
  7503. output := &types.OrganizationNotEmptyException{}
  7504. err := awsAwsjson11_deserializeDocumentOrganizationNotEmptyException(&output, shape)
  7505. if err != nil {
  7506. var snapshot bytes.Buffer
  7507. io.Copy(&snapshot, ringBuffer)
  7508. err = &smithy.DeserializationError{
  7509. Err: fmt.Errorf("failed to decode response body, %w", err),
  7510. Snapshot: snapshot.Bytes(),
  7511. }
  7512. return err
  7513. }
  7514. errorBody.Seek(0, io.SeekStart)
  7515. return output
  7516. }
  7517. func awsAwsjson11_deserializeErrorParentNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7518. var buff [1024]byte
  7519. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7520. body := io.TeeReader(errorBody, ringBuffer)
  7521. decoder := json.NewDecoder(body)
  7522. decoder.UseNumber()
  7523. var shape interface{}
  7524. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7525. var snapshot bytes.Buffer
  7526. io.Copy(&snapshot, ringBuffer)
  7527. err = &smithy.DeserializationError{
  7528. Err: fmt.Errorf("failed to decode response body, %w", err),
  7529. Snapshot: snapshot.Bytes(),
  7530. }
  7531. return err
  7532. }
  7533. output := &types.ParentNotFoundException{}
  7534. err := awsAwsjson11_deserializeDocumentParentNotFoundException(&output, shape)
  7535. if err != nil {
  7536. var snapshot bytes.Buffer
  7537. io.Copy(&snapshot, ringBuffer)
  7538. err = &smithy.DeserializationError{
  7539. Err: fmt.Errorf("failed to decode response body, %w", err),
  7540. Snapshot: snapshot.Bytes(),
  7541. }
  7542. return err
  7543. }
  7544. errorBody.Seek(0, io.SeekStart)
  7545. return output
  7546. }
  7547. func awsAwsjson11_deserializeErrorPolicyChangesInProgressException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7548. var buff [1024]byte
  7549. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7550. body := io.TeeReader(errorBody, ringBuffer)
  7551. decoder := json.NewDecoder(body)
  7552. decoder.UseNumber()
  7553. var shape interface{}
  7554. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7555. var snapshot bytes.Buffer
  7556. io.Copy(&snapshot, ringBuffer)
  7557. err = &smithy.DeserializationError{
  7558. Err: fmt.Errorf("failed to decode response body, %w", err),
  7559. Snapshot: snapshot.Bytes(),
  7560. }
  7561. return err
  7562. }
  7563. output := &types.PolicyChangesInProgressException{}
  7564. err := awsAwsjson11_deserializeDocumentPolicyChangesInProgressException(&output, shape)
  7565. if err != nil {
  7566. var snapshot bytes.Buffer
  7567. io.Copy(&snapshot, ringBuffer)
  7568. err = &smithy.DeserializationError{
  7569. Err: fmt.Errorf("failed to decode response body, %w", err),
  7570. Snapshot: snapshot.Bytes(),
  7571. }
  7572. return err
  7573. }
  7574. errorBody.Seek(0, io.SeekStart)
  7575. return output
  7576. }
  7577. func awsAwsjson11_deserializeErrorPolicyInUseException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7578. var buff [1024]byte
  7579. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7580. body := io.TeeReader(errorBody, ringBuffer)
  7581. decoder := json.NewDecoder(body)
  7582. decoder.UseNumber()
  7583. var shape interface{}
  7584. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7585. var snapshot bytes.Buffer
  7586. io.Copy(&snapshot, ringBuffer)
  7587. err = &smithy.DeserializationError{
  7588. Err: fmt.Errorf("failed to decode response body, %w", err),
  7589. Snapshot: snapshot.Bytes(),
  7590. }
  7591. return err
  7592. }
  7593. output := &types.PolicyInUseException{}
  7594. err := awsAwsjson11_deserializeDocumentPolicyInUseException(&output, shape)
  7595. if err != nil {
  7596. var snapshot bytes.Buffer
  7597. io.Copy(&snapshot, ringBuffer)
  7598. err = &smithy.DeserializationError{
  7599. Err: fmt.Errorf("failed to decode response body, %w", err),
  7600. Snapshot: snapshot.Bytes(),
  7601. }
  7602. return err
  7603. }
  7604. errorBody.Seek(0, io.SeekStart)
  7605. return output
  7606. }
  7607. func awsAwsjson11_deserializeErrorPolicyNotAttachedException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7608. var buff [1024]byte
  7609. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7610. body := io.TeeReader(errorBody, ringBuffer)
  7611. decoder := json.NewDecoder(body)
  7612. decoder.UseNumber()
  7613. var shape interface{}
  7614. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7615. var snapshot bytes.Buffer
  7616. io.Copy(&snapshot, ringBuffer)
  7617. err = &smithy.DeserializationError{
  7618. Err: fmt.Errorf("failed to decode response body, %w", err),
  7619. Snapshot: snapshot.Bytes(),
  7620. }
  7621. return err
  7622. }
  7623. output := &types.PolicyNotAttachedException{}
  7624. err := awsAwsjson11_deserializeDocumentPolicyNotAttachedException(&output, shape)
  7625. if err != nil {
  7626. var snapshot bytes.Buffer
  7627. io.Copy(&snapshot, ringBuffer)
  7628. err = &smithy.DeserializationError{
  7629. Err: fmt.Errorf("failed to decode response body, %w", err),
  7630. Snapshot: snapshot.Bytes(),
  7631. }
  7632. return err
  7633. }
  7634. errorBody.Seek(0, io.SeekStart)
  7635. return output
  7636. }
  7637. func awsAwsjson11_deserializeErrorPolicyNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7638. var buff [1024]byte
  7639. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7640. body := io.TeeReader(errorBody, ringBuffer)
  7641. decoder := json.NewDecoder(body)
  7642. decoder.UseNumber()
  7643. var shape interface{}
  7644. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7645. var snapshot bytes.Buffer
  7646. io.Copy(&snapshot, ringBuffer)
  7647. err = &smithy.DeserializationError{
  7648. Err: fmt.Errorf("failed to decode response body, %w", err),
  7649. Snapshot: snapshot.Bytes(),
  7650. }
  7651. return err
  7652. }
  7653. output := &types.PolicyNotFoundException{}
  7654. err := awsAwsjson11_deserializeDocumentPolicyNotFoundException(&output, shape)
  7655. if err != nil {
  7656. var snapshot bytes.Buffer
  7657. io.Copy(&snapshot, ringBuffer)
  7658. err = &smithy.DeserializationError{
  7659. Err: fmt.Errorf("failed to decode response body, %w", err),
  7660. Snapshot: snapshot.Bytes(),
  7661. }
  7662. return err
  7663. }
  7664. errorBody.Seek(0, io.SeekStart)
  7665. return output
  7666. }
  7667. func awsAwsjson11_deserializeErrorPolicyTypeAlreadyEnabledException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7668. var buff [1024]byte
  7669. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7670. body := io.TeeReader(errorBody, ringBuffer)
  7671. decoder := json.NewDecoder(body)
  7672. decoder.UseNumber()
  7673. var shape interface{}
  7674. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7675. var snapshot bytes.Buffer
  7676. io.Copy(&snapshot, ringBuffer)
  7677. err = &smithy.DeserializationError{
  7678. Err: fmt.Errorf("failed to decode response body, %w", err),
  7679. Snapshot: snapshot.Bytes(),
  7680. }
  7681. return err
  7682. }
  7683. output := &types.PolicyTypeAlreadyEnabledException{}
  7684. err := awsAwsjson11_deserializeDocumentPolicyTypeAlreadyEnabledException(&output, shape)
  7685. if err != nil {
  7686. var snapshot bytes.Buffer
  7687. io.Copy(&snapshot, ringBuffer)
  7688. err = &smithy.DeserializationError{
  7689. Err: fmt.Errorf("failed to decode response body, %w", err),
  7690. Snapshot: snapshot.Bytes(),
  7691. }
  7692. return err
  7693. }
  7694. errorBody.Seek(0, io.SeekStart)
  7695. return output
  7696. }
  7697. func awsAwsjson11_deserializeErrorPolicyTypeNotAvailableForOrganizationException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7698. var buff [1024]byte
  7699. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7700. body := io.TeeReader(errorBody, ringBuffer)
  7701. decoder := json.NewDecoder(body)
  7702. decoder.UseNumber()
  7703. var shape interface{}
  7704. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7705. var snapshot bytes.Buffer
  7706. io.Copy(&snapshot, ringBuffer)
  7707. err = &smithy.DeserializationError{
  7708. Err: fmt.Errorf("failed to decode response body, %w", err),
  7709. Snapshot: snapshot.Bytes(),
  7710. }
  7711. return err
  7712. }
  7713. output := &types.PolicyTypeNotAvailableForOrganizationException{}
  7714. err := awsAwsjson11_deserializeDocumentPolicyTypeNotAvailableForOrganizationException(&output, shape)
  7715. if err != nil {
  7716. var snapshot bytes.Buffer
  7717. io.Copy(&snapshot, ringBuffer)
  7718. err = &smithy.DeserializationError{
  7719. Err: fmt.Errorf("failed to decode response body, %w", err),
  7720. Snapshot: snapshot.Bytes(),
  7721. }
  7722. return err
  7723. }
  7724. errorBody.Seek(0, io.SeekStart)
  7725. return output
  7726. }
  7727. func awsAwsjson11_deserializeErrorPolicyTypeNotEnabledException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7728. var buff [1024]byte
  7729. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7730. body := io.TeeReader(errorBody, ringBuffer)
  7731. decoder := json.NewDecoder(body)
  7732. decoder.UseNumber()
  7733. var shape interface{}
  7734. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7735. var snapshot bytes.Buffer
  7736. io.Copy(&snapshot, ringBuffer)
  7737. err = &smithy.DeserializationError{
  7738. Err: fmt.Errorf("failed to decode response body, %w", err),
  7739. Snapshot: snapshot.Bytes(),
  7740. }
  7741. return err
  7742. }
  7743. output := &types.PolicyTypeNotEnabledException{}
  7744. err := awsAwsjson11_deserializeDocumentPolicyTypeNotEnabledException(&output, shape)
  7745. if err != nil {
  7746. var snapshot bytes.Buffer
  7747. io.Copy(&snapshot, ringBuffer)
  7748. err = &smithy.DeserializationError{
  7749. Err: fmt.Errorf("failed to decode response body, %w", err),
  7750. Snapshot: snapshot.Bytes(),
  7751. }
  7752. return err
  7753. }
  7754. errorBody.Seek(0, io.SeekStart)
  7755. return output
  7756. }
  7757. func awsAwsjson11_deserializeErrorResourcePolicyNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7758. var buff [1024]byte
  7759. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7760. body := io.TeeReader(errorBody, ringBuffer)
  7761. decoder := json.NewDecoder(body)
  7762. decoder.UseNumber()
  7763. var shape interface{}
  7764. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7765. var snapshot bytes.Buffer
  7766. io.Copy(&snapshot, ringBuffer)
  7767. err = &smithy.DeserializationError{
  7768. Err: fmt.Errorf("failed to decode response body, %w", err),
  7769. Snapshot: snapshot.Bytes(),
  7770. }
  7771. return err
  7772. }
  7773. output := &types.ResourcePolicyNotFoundException{}
  7774. err := awsAwsjson11_deserializeDocumentResourcePolicyNotFoundException(&output, shape)
  7775. if err != nil {
  7776. var snapshot bytes.Buffer
  7777. io.Copy(&snapshot, ringBuffer)
  7778. err = &smithy.DeserializationError{
  7779. Err: fmt.Errorf("failed to decode response body, %w", err),
  7780. Snapshot: snapshot.Bytes(),
  7781. }
  7782. return err
  7783. }
  7784. errorBody.Seek(0, io.SeekStart)
  7785. return output
  7786. }
  7787. func awsAwsjson11_deserializeErrorResponsibilityTransferAlreadyInStatusException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7788. var buff [1024]byte
  7789. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7790. body := io.TeeReader(errorBody, ringBuffer)
  7791. decoder := json.NewDecoder(body)
  7792. decoder.UseNumber()
  7793. var shape interface{}
  7794. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7795. var snapshot bytes.Buffer
  7796. io.Copy(&snapshot, ringBuffer)
  7797. err = &smithy.DeserializationError{
  7798. Err: fmt.Errorf("failed to decode response body, %w", err),
  7799. Snapshot: snapshot.Bytes(),
  7800. }
  7801. return err
  7802. }
  7803. output := &types.ResponsibilityTransferAlreadyInStatusException{}
  7804. err := awsAwsjson11_deserializeDocumentResponsibilityTransferAlreadyInStatusException(&output, shape)
  7805. if err != nil {
  7806. var snapshot bytes.Buffer
  7807. io.Copy(&snapshot, ringBuffer)
  7808. err = &smithy.DeserializationError{
  7809. Err: fmt.Errorf("failed to decode response body, %w", err),
  7810. Snapshot: snapshot.Bytes(),
  7811. }
  7812. return err
  7813. }
  7814. errorBody.Seek(0, io.SeekStart)
  7815. return output
  7816. }
  7817. func awsAwsjson11_deserializeErrorResponsibilityTransferNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7818. var buff [1024]byte
  7819. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7820. body := io.TeeReader(errorBody, ringBuffer)
  7821. decoder := json.NewDecoder(body)
  7822. decoder.UseNumber()
  7823. var shape interface{}
  7824. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7825. var snapshot bytes.Buffer
  7826. io.Copy(&snapshot, ringBuffer)
  7827. err = &smithy.DeserializationError{
  7828. Err: fmt.Errorf("failed to decode response body, %w", err),
  7829. Snapshot: snapshot.Bytes(),
  7830. }
  7831. return err
  7832. }
  7833. output := &types.ResponsibilityTransferNotFoundException{}
  7834. err := awsAwsjson11_deserializeDocumentResponsibilityTransferNotFoundException(&output, shape)
  7835. if err != nil {
  7836. var snapshot bytes.Buffer
  7837. io.Copy(&snapshot, ringBuffer)
  7838. err = &smithy.DeserializationError{
  7839. Err: fmt.Errorf("failed to decode response body, %w", err),
  7840. Snapshot: snapshot.Bytes(),
  7841. }
  7842. return err
  7843. }
  7844. errorBody.Seek(0, io.SeekStart)
  7845. return output
  7846. }
  7847. func awsAwsjson11_deserializeErrorRootNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7848. var buff [1024]byte
  7849. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7850. body := io.TeeReader(errorBody, ringBuffer)
  7851. decoder := json.NewDecoder(body)
  7852. decoder.UseNumber()
  7853. var shape interface{}
  7854. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7855. var snapshot bytes.Buffer
  7856. io.Copy(&snapshot, ringBuffer)
  7857. err = &smithy.DeserializationError{
  7858. Err: fmt.Errorf("failed to decode response body, %w", err),
  7859. Snapshot: snapshot.Bytes(),
  7860. }
  7861. return err
  7862. }
  7863. output := &types.RootNotFoundException{}
  7864. err := awsAwsjson11_deserializeDocumentRootNotFoundException(&output, shape)
  7865. if err != nil {
  7866. var snapshot bytes.Buffer
  7867. io.Copy(&snapshot, ringBuffer)
  7868. err = &smithy.DeserializationError{
  7869. Err: fmt.Errorf("failed to decode response body, %w", err),
  7870. Snapshot: snapshot.Bytes(),
  7871. }
  7872. return err
  7873. }
  7874. errorBody.Seek(0, io.SeekStart)
  7875. return output
  7876. }
  7877. func awsAwsjson11_deserializeErrorServiceException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7878. var buff [1024]byte
  7879. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7880. body := io.TeeReader(errorBody, ringBuffer)
  7881. decoder := json.NewDecoder(body)
  7882. decoder.UseNumber()
  7883. var shape interface{}
  7884. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7885. var snapshot bytes.Buffer
  7886. io.Copy(&snapshot, ringBuffer)
  7887. err = &smithy.DeserializationError{
  7888. Err: fmt.Errorf("failed to decode response body, %w", err),
  7889. Snapshot: snapshot.Bytes(),
  7890. }
  7891. return err
  7892. }
  7893. output := &types.ServiceException{}
  7894. err := awsAwsjson11_deserializeDocumentServiceException(&output, shape)
  7895. if err != nil {
  7896. var snapshot bytes.Buffer
  7897. io.Copy(&snapshot, ringBuffer)
  7898. err = &smithy.DeserializationError{
  7899. Err: fmt.Errorf("failed to decode response body, %w", err),
  7900. Snapshot: snapshot.Bytes(),
  7901. }
  7902. return err
  7903. }
  7904. errorBody.Seek(0, io.SeekStart)
  7905. return output
  7906. }
  7907. func awsAwsjson11_deserializeErrorSourceParentNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7908. var buff [1024]byte
  7909. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7910. body := io.TeeReader(errorBody, ringBuffer)
  7911. decoder := json.NewDecoder(body)
  7912. decoder.UseNumber()
  7913. var shape interface{}
  7914. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7915. var snapshot bytes.Buffer
  7916. io.Copy(&snapshot, ringBuffer)
  7917. err = &smithy.DeserializationError{
  7918. Err: fmt.Errorf("failed to decode response body, %w", err),
  7919. Snapshot: snapshot.Bytes(),
  7920. }
  7921. return err
  7922. }
  7923. output := &types.SourceParentNotFoundException{}
  7924. err := awsAwsjson11_deserializeDocumentSourceParentNotFoundException(&output, shape)
  7925. if err != nil {
  7926. var snapshot bytes.Buffer
  7927. io.Copy(&snapshot, ringBuffer)
  7928. err = &smithy.DeserializationError{
  7929. Err: fmt.Errorf("failed to decode response body, %w", err),
  7930. Snapshot: snapshot.Bytes(),
  7931. }
  7932. return err
  7933. }
  7934. errorBody.Seek(0, io.SeekStart)
  7935. return output
  7936. }
  7937. func awsAwsjson11_deserializeErrorTargetNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7938. var buff [1024]byte
  7939. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7940. body := io.TeeReader(errorBody, ringBuffer)
  7941. decoder := json.NewDecoder(body)
  7942. decoder.UseNumber()
  7943. var shape interface{}
  7944. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7945. var snapshot bytes.Buffer
  7946. io.Copy(&snapshot, ringBuffer)
  7947. err = &smithy.DeserializationError{
  7948. Err: fmt.Errorf("failed to decode response body, %w", err),
  7949. Snapshot: snapshot.Bytes(),
  7950. }
  7951. return err
  7952. }
  7953. output := &types.TargetNotFoundException{}
  7954. err := awsAwsjson11_deserializeDocumentTargetNotFoundException(&output, shape)
  7955. if err != nil {
  7956. var snapshot bytes.Buffer
  7957. io.Copy(&snapshot, ringBuffer)
  7958. err = &smithy.DeserializationError{
  7959. Err: fmt.Errorf("failed to decode response body, %w", err),
  7960. Snapshot: snapshot.Bytes(),
  7961. }
  7962. return err
  7963. }
  7964. errorBody.Seek(0, io.SeekStart)
  7965. return output
  7966. }
  7967. func awsAwsjson11_deserializeErrorTooManyRequestsException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7968. var buff [1024]byte
  7969. ringBuffer := smithyio.NewRingBuffer(buff[:])
  7970. body := io.TeeReader(errorBody, ringBuffer)
  7971. decoder := json.NewDecoder(body)
  7972. decoder.UseNumber()
  7973. var shape interface{}
  7974. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  7975. var snapshot bytes.Buffer
  7976. io.Copy(&snapshot, ringBuffer)
  7977. err = &smithy.DeserializationError{
  7978. Err: fmt.Errorf("failed to decode response body, %w", err),
  7979. Snapshot: snapshot.Bytes(),
  7980. }
  7981. return err
  7982. }
  7983. output := &types.TooManyRequestsException{}
  7984. err := awsAwsjson11_deserializeDocumentTooManyRequestsException(&output, shape)
  7985. if err != nil {
  7986. var snapshot bytes.Buffer
  7987. io.Copy(&snapshot, ringBuffer)
  7988. err = &smithy.DeserializationError{
  7989. Err: fmt.Errorf("failed to decode response body, %w", err),
  7990. Snapshot: snapshot.Bytes(),
  7991. }
  7992. return err
  7993. }
  7994. errorBody.Seek(0, io.SeekStart)
  7995. return output
  7996. }
  7997. func awsAwsjson11_deserializeErrorUnsupportedAPIEndpointException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
  7998. var buff [1024]byte
  7999. ringBuffer := smithyio.NewRingBuffer(buff[:])
  8000. body := io.TeeReader(errorBody, ringBuffer)
  8001. decoder := json.NewDecoder(body)
  8002. decoder.UseNumber()
  8003. var shape interface{}
  8004. if err := decoder.Decode(&shape); err != nil && err != io.EOF {
  8005. var snapshot bytes.Buffer
  8006. io.Copy(&snapshot, ringBuffer)
  8007. err = &smithy.DeserializationError{
  8008. Err: fmt.Errorf("failed to decode response body, %w", err),
  8009. Snapshot: snapshot.Bytes(),
  8010. }
  8011. return err
  8012. }
  8013. output := &types.UnsupportedAPIEndpointException{}
  8014. err := awsAwsjson11_deserializeDocumentUnsupportedAPIEndpointException(&output, shape)
  8015. if err != nil {
  8016. var snapshot bytes.Buffer
  8017. io.Copy(&snapshot, ringBuffer)
  8018. err = &smithy.DeserializationError{
  8019. Err: fmt.Errorf("failed to decode response body, %w", err),
  8020. Snapshot: snapshot.Bytes(),
  8021. }
  8022. return err
  8023. }
  8024. errorBody.Seek(0, io.SeekStart)
  8025. return output
  8026. }
  8027. func awsAwsjson11_deserializeDocumentAccessDeniedException(v **types.AccessDeniedException, value interface{}) error {
  8028. if v == nil {
  8029. return fmt.Errorf("unexpected nil of type %T", v)
  8030. }
  8031. if value == nil {
  8032. return nil
  8033. }
  8034. shape, ok := value.(map[string]interface{})
  8035. if !ok {
  8036. return fmt.Errorf("unexpected JSON type %v", value)
  8037. }
  8038. var sv *types.AccessDeniedException
  8039. if *v == nil {
  8040. sv = &types.AccessDeniedException{}
  8041. } else {
  8042. sv = *v
  8043. }
  8044. for key, value := range shape {
  8045. switch key {
  8046. case "message", "Message":
  8047. if value != nil {
  8048. jtv, ok := value.(string)
  8049. if !ok {
  8050. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  8051. }
  8052. sv.Message = ptr.String(jtv)
  8053. }
  8054. default:
  8055. _, _ = key, value
  8056. }
  8057. }
  8058. *v = sv
  8059. return nil
  8060. }
  8061. func awsAwsjson11_deserializeDocumentAccessDeniedForDependencyException(v **types.AccessDeniedForDependencyException, value interface{}) error {
  8062. if v == nil {
  8063. return fmt.Errorf("unexpected nil of type %T", v)
  8064. }
  8065. if value == nil {
  8066. return nil
  8067. }
  8068. shape, ok := value.(map[string]interface{})
  8069. if !ok {
  8070. return fmt.Errorf("unexpected JSON type %v", value)
  8071. }
  8072. var sv *types.AccessDeniedForDependencyException
  8073. if *v == nil {
  8074. sv = &types.AccessDeniedForDependencyException{}
  8075. } else {
  8076. sv = *v
  8077. }
  8078. for key, value := range shape {
  8079. switch key {
  8080. case "message", "Message":
  8081. if value != nil {
  8082. jtv, ok := value.(string)
  8083. if !ok {
  8084. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  8085. }
  8086. sv.Message = ptr.String(jtv)
  8087. }
  8088. case "Reason":
  8089. if value != nil {
  8090. jtv, ok := value.(string)
  8091. if !ok {
  8092. return fmt.Errorf("expected AccessDeniedForDependencyExceptionReason to be of type string, got %T instead", value)
  8093. }
  8094. sv.Reason = types.AccessDeniedForDependencyExceptionReason(jtv)
  8095. }
  8096. default:
  8097. _, _ = key, value
  8098. }
  8099. }
  8100. *v = sv
  8101. return nil
  8102. }
  8103. func awsAwsjson11_deserializeDocumentAccount(v **types.Account, value interface{}) error {
  8104. if v == nil {
  8105. return fmt.Errorf("unexpected nil of type %T", v)
  8106. }
  8107. if value == nil {
  8108. return nil
  8109. }
  8110. shape, ok := value.(map[string]interface{})
  8111. if !ok {
  8112. return fmt.Errorf("unexpected JSON type %v", value)
  8113. }
  8114. var sv *types.Account
  8115. if *v == nil {
  8116. sv = &types.Account{}
  8117. } else {
  8118. sv = *v
  8119. }
  8120. for key, value := range shape {
  8121. switch key {
  8122. case "Arn":
  8123. if value != nil {
  8124. jtv, ok := value.(string)
  8125. if !ok {
  8126. return fmt.Errorf("expected AccountArn to be of type string, got %T instead", value)
  8127. }
  8128. sv.Arn = ptr.String(jtv)
  8129. }
  8130. case "Email":
  8131. if value != nil {
  8132. jtv, ok := value.(string)
  8133. if !ok {
  8134. return fmt.Errorf("expected Email to be of type string, got %T instead", value)
  8135. }
  8136. sv.Email = ptr.String(jtv)
  8137. }
  8138. case "Id":
  8139. if value != nil {
  8140. jtv, ok := value.(string)
  8141. if !ok {
  8142. return fmt.Errorf("expected AccountId to be of type string, got %T instead", value)
  8143. }
  8144. sv.Id = ptr.String(jtv)
  8145. }
  8146. case "JoinedMethod":
  8147. if value != nil {
  8148. jtv, ok := value.(string)
  8149. if !ok {
  8150. return fmt.Errorf("expected AccountJoinedMethod to be of type string, got %T instead", value)
  8151. }
  8152. sv.JoinedMethod = types.AccountJoinedMethod(jtv)
  8153. }
  8154. case "JoinedTimestamp":
  8155. if value != nil {
  8156. switch jtv := value.(type) {
  8157. case json.Number:
  8158. f64, err := jtv.Float64()
  8159. if err != nil {
  8160. return err
  8161. }
  8162. sv.JoinedTimestamp = ptr.Time(smithytime.ParseEpochSeconds(f64))
  8163. default:
  8164. return fmt.Errorf("expected Timestamp to be a JSON Number, got %T instead", value)
  8165. }
  8166. }
  8167. case "Name":
  8168. if value != nil {
  8169. jtv, ok := value.(string)
  8170. if !ok {
  8171. return fmt.Errorf("expected AccountName to be of type string, got %T instead", value)
  8172. }
  8173. sv.Name = ptr.String(jtv)
  8174. }
  8175. case "Paths":
  8176. if err := awsAwsjson11_deserializeDocumentPaths(&sv.Paths, value); err != nil {
  8177. return err
  8178. }
  8179. case "State":
  8180. if value != nil {
  8181. jtv, ok := value.(string)
  8182. if !ok {
  8183. return fmt.Errorf("expected AccountState to be of type string, got %T instead", value)
  8184. }
  8185. sv.State = types.AccountState(jtv)
  8186. }
  8187. case "Status":
  8188. if value != nil {
  8189. jtv, ok := value.(string)
  8190. if !ok {
  8191. return fmt.Errorf("expected AccountStatus to be of type string, got %T instead", value)
  8192. }
  8193. sv.Status = types.AccountStatus(jtv)
  8194. }
  8195. default:
  8196. _, _ = key, value
  8197. }
  8198. }
  8199. *v = sv
  8200. return nil
  8201. }
  8202. func awsAwsjson11_deserializeDocumentAccountAlreadyClosedException(v **types.AccountAlreadyClosedException, value interface{}) error {
  8203. if v == nil {
  8204. return fmt.Errorf("unexpected nil of type %T", v)
  8205. }
  8206. if value == nil {
  8207. return nil
  8208. }
  8209. shape, ok := value.(map[string]interface{})
  8210. if !ok {
  8211. return fmt.Errorf("unexpected JSON type %v", value)
  8212. }
  8213. var sv *types.AccountAlreadyClosedException
  8214. if *v == nil {
  8215. sv = &types.AccountAlreadyClosedException{}
  8216. } else {
  8217. sv = *v
  8218. }
  8219. for key, value := range shape {
  8220. switch key {
  8221. case "message", "Message":
  8222. if value != nil {
  8223. jtv, ok := value.(string)
  8224. if !ok {
  8225. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  8226. }
  8227. sv.Message = ptr.String(jtv)
  8228. }
  8229. default:
  8230. _, _ = key, value
  8231. }
  8232. }
  8233. *v = sv
  8234. return nil
  8235. }
  8236. func awsAwsjson11_deserializeDocumentAccountAlreadyRegisteredException(v **types.AccountAlreadyRegisteredException, value interface{}) error {
  8237. if v == nil {
  8238. return fmt.Errorf("unexpected nil of type %T", v)
  8239. }
  8240. if value == nil {
  8241. return nil
  8242. }
  8243. shape, ok := value.(map[string]interface{})
  8244. if !ok {
  8245. return fmt.Errorf("unexpected JSON type %v", value)
  8246. }
  8247. var sv *types.AccountAlreadyRegisteredException
  8248. if *v == nil {
  8249. sv = &types.AccountAlreadyRegisteredException{}
  8250. } else {
  8251. sv = *v
  8252. }
  8253. for key, value := range shape {
  8254. switch key {
  8255. case "message", "Message":
  8256. if value != nil {
  8257. jtv, ok := value.(string)
  8258. if !ok {
  8259. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  8260. }
  8261. sv.Message = ptr.String(jtv)
  8262. }
  8263. default:
  8264. _, _ = key, value
  8265. }
  8266. }
  8267. *v = sv
  8268. return nil
  8269. }
  8270. func awsAwsjson11_deserializeDocumentAccountNotFoundException(v **types.AccountNotFoundException, value interface{}) error {
  8271. if v == nil {
  8272. return fmt.Errorf("unexpected nil of type %T", v)
  8273. }
  8274. if value == nil {
  8275. return nil
  8276. }
  8277. shape, ok := value.(map[string]interface{})
  8278. if !ok {
  8279. return fmt.Errorf("unexpected JSON type %v", value)
  8280. }
  8281. var sv *types.AccountNotFoundException
  8282. if *v == nil {
  8283. sv = &types.AccountNotFoundException{}
  8284. } else {
  8285. sv = *v
  8286. }
  8287. for key, value := range shape {
  8288. switch key {
  8289. case "message", "Message":
  8290. if value != nil {
  8291. jtv, ok := value.(string)
  8292. if !ok {
  8293. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  8294. }
  8295. sv.Message = ptr.String(jtv)
  8296. }
  8297. default:
  8298. _, _ = key, value
  8299. }
  8300. }
  8301. *v = sv
  8302. return nil
  8303. }
  8304. func awsAwsjson11_deserializeDocumentAccountNotRegisteredException(v **types.AccountNotRegisteredException, value interface{}) error {
  8305. if v == nil {
  8306. return fmt.Errorf("unexpected nil of type %T", v)
  8307. }
  8308. if value == nil {
  8309. return nil
  8310. }
  8311. shape, ok := value.(map[string]interface{})
  8312. if !ok {
  8313. return fmt.Errorf("unexpected JSON type %v", value)
  8314. }
  8315. var sv *types.AccountNotRegisteredException
  8316. if *v == nil {
  8317. sv = &types.AccountNotRegisteredException{}
  8318. } else {
  8319. sv = *v
  8320. }
  8321. for key, value := range shape {
  8322. switch key {
  8323. case "message", "Message":
  8324. if value != nil {
  8325. jtv, ok := value.(string)
  8326. if !ok {
  8327. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  8328. }
  8329. sv.Message = ptr.String(jtv)
  8330. }
  8331. default:
  8332. _, _ = key, value
  8333. }
  8334. }
  8335. *v = sv
  8336. return nil
  8337. }
  8338. func awsAwsjson11_deserializeDocumentAccountOwnerNotVerifiedException(v **types.AccountOwnerNotVerifiedException, value interface{}) error {
  8339. if v == nil {
  8340. return fmt.Errorf("unexpected nil of type %T", v)
  8341. }
  8342. if value == nil {
  8343. return nil
  8344. }
  8345. shape, ok := value.(map[string]interface{})
  8346. if !ok {
  8347. return fmt.Errorf("unexpected JSON type %v", value)
  8348. }
  8349. var sv *types.AccountOwnerNotVerifiedException
  8350. if *v == nil {
  8351. sv = &types.AccountOwnerNotVerifiedException{}
  8352. } else {
  8353. sv = *v
  8354. }
  8355. for key, value := range shape {
  8356. switch key {
  8357. case "message", "Message":
  8358. if value != nil {
  8359. jtv, ok := value.(string)
  8360. if !ok {
  8361. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  8362. }
  8363. sv.Message = ptr.String(jtv)
  8364. }
  8365. default:
  8366. _, _ = key, value
  8367. }
  8368. }
  8369. *v = sv
  8370. return nil
  8371. }
  8372. func awsAwsjson11_deserializeDocumentAccounts(v *[]types.Account, value interface{}) error {
  8373. if v == nil {
  8374. return fmt.Errorf("unexpected nil of type %T", v)
  8375. }
  8376. if value == nil {
  8377. return nil
  8378. }
  8379. shape, ok := value.([]interface{})
  8380. if !ok {
  8381. return fmt.Errorf("unexpected JSON type %v", value)
  8382. }
  8383. var cv []types.Account
  8384. if *v == nil {
  8385. cv = []types.Account{}
  8386. } else {
  8387. cv = *v
  8388. }
  8389. for _, value := range shape {
  8390. var col types.Account
  8391. destAddr := &col
  8392. if err := awsAwsjson11_deserializeDocumentAccount(&destAddr, value); err != nil {
  8393. return err
  8394. }
  8395. col = *destAddr
  8396. cv = append(cv, col)
  8397. }
  8398. *v = cv
  8399. return nil
  8400. }
  8401. func awsAwsjson11_deserializeDocumentAlreadyInOrganizationException(v **types.AlreadyInOrganizationException, value interface{}) error {
  8402. if v == nil {
  8403. return fmt.Errorf("unexpected nil of type %T", v)
  8404. }
  8405. if value == nil {
  8406. return nil
  8407. }
  8408. shape, ok := value.(map[string]interface{})
  8409. if !ok {
  8410. return fmt.Errorf("unexpected JSON type %v", value)
  8411. }
  8412. var sv *types.AlreadyInOrganizationException
  8413. if *v == nil {
  8414. sv = &types.AlreadyInOrganizationException{}
  8415. } else {
  8416. sv = *v
  8417. }
  8418. for key, value := range shape {
  8419. switch key {
  8420. case "message", "Message":
  8421. if value != nil {
  8422. jtv, ok := value.(string)
  8423. if !ok {
  8424. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  8425. }
  8426. sv.Message = ptr.String(jtv)
  8427. }
  8428. default:
  8429. _, _ = key, value
  8430. }
  8431. }
  8432. *v = sv
  8433. return nil
  8434. }
  8435. func awsAwsjson11_deserializeDocumentAWSOrganizationsNotInUseException(v **types.AWSOrganizationsNotInUseException, value interface{}) error {
  8436. if v == nil {
  8437. return fmt.Errorf("unexpected nil of type %T", v)
  8438. }
  8439. if value == nil {
  8440. return nil
  8441. }
  8442. shape, ok := value.(map[string]interface{})
  8443. if !ok {
  8444. return fmt.Errorf("unexpected JSON type %v", value)
  8445. }
  8446. var sv *types.AWSOrganizationsNotInUseException
  8447. if *v == nil {
  8448. sv = &types.AWSOrganizationsNotInUseException{}
  8449. } else {
  8450. sv = *v
  8451. }
  8452. for key, value := range shape {
  8453. switch key {
  8454. case "message", "Message":
  8455. if value != nil {
  8456. jtv, ok := value.(string)
  8457. if !ok {
  8458. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  8459. }
  8460. sv.Message = ptr.String(jtv)
  8461. }
  8462. default:
  8463. _, _ = key, value
  8464. }
  8465. }
  8466. *v = sv
  8467. return nil
  8468. }
  8469. func awsAwsjson11_deserializeDocumentChild(v **types.Child, value interface{}) error {
  8470. if v == nil {
  8471. return fmt.Errorf("unexpected nil of type %T", v)
  8472. }
  8473. if value == nil {
  8474. return nil
  8475. }
  8476. shape, ok := value.(map[string]interface{})
  8477. if !ok {
  8478. return fmt.Errorf("unexpected JSON type %v", value)
  8479. }
  8480. var sv *types.Child
  8481. if *v == nil {
  8482. sv = &types.Child{}
  8483. } else {
  8484. sv = *v
  8485. }
  8486. for key, value := range shape {
  8487. switch key {
  8488. case "Id":
  8489. if value != nil {
  8490. jtv, ok := value.(string)
  8491. if !ok {
  8492. return fmt.Errorf("expected ChildId to be of type string, got %T instead", value)
  8493. }
  8494. sv.Id = ptr.String(jtv)
  8495. }
  8496. case "Type":
  8497. if value != nil {
  8498. jtv, ok := value.(string)
  8499. if !ok {
  8500. return fmt.Errorf("expected ChildType to be of type string, got %T instead", value)
  8501. }
  8502. sv.Type = types.ChildType(jtv)
  8503. }
  8504. default:
  8505. _, _ = key, value
  8506. }
  8507. }
  8508. *v = sv
  8509. return nil
  8510. }
  8511. func awsAwsjson11_deserializeDocumentChildNotFoundException(v **types.ChildNotFoundException, value interface{}) error {
  8512. if v == nil {
  8513. return fmt.Errorf("unexpected nil of type %T", v)
  8514. }
  8515. if value == nil {
  8516. return nil
  8517. }
  8518. shape, ok := value.(map[string]interface{})
  8519. if !ok {
  8520. return fmt.Errorf("unexpected JSON type %v", value)
  8521. }
  8522. var sv *types.ChildNotFoundException
  8523. if *v == nil {
  8524. sv = &types.ChildNotFoundException{}
  8525. } else {
  8526. sv = *v
  8527. }
  8528. for key, value := range shape {
  8529. switch key {
  8530. case "message", "Message":
  8531. if value != nil {
  8532. jtv, ok := value.(string)
  8533. if !ok {
  8534. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  8535. }
  8536. sv.Message = ptr.String(jtv)
  8537. }
  8538. default:
  8539. _, _ = key, value
  8540. }
  8541. }
  8542. *v = sv
  8543. return nil
  8544. }
  8545. func awsAwsjson11_deserializeDocumentChildren(v *[]types.Child, value interface{}) error {
  8546. if v == nil {
  8547. return fmt.Errorf("unexpected nil of type %T", v)
  8548. }
  8549. if value == nil {
  8550. return nil
  8551. }
  8552. shape, ok := value.([]interface{})
  8553. if !ok {
  8554. return fmt.Errorf("unexpected JSON type %v", value)
  8555. }
  8556. var cv []types.Child
  8557. if *v == nil {
  8558. cv = []types.Child{}
  8559. } else {
  8560. cv = *v
  8561. }
  8562. for _, value := range shape {
  8563. var col types.Child
  8564. destAddr := &col
  8565. if err := awsAwsjson11_deserializeDocumentChild(&destAddr, value); err != nil {
  8566. return err
  8567. }
  8568. col = *destAddr
  8569. cv = append(cv, col)
  8570. }
  8571. *v = cv
  8572. return nil
  8573. }
  8574. func awsAwsjson11_deserializeDocumentConcurrentModificationException(v **types.ConcurrentModificationException, value interface{}) error {
  8575. if v == nil {
  8576. return fmt.Errorf("unexpected nil of type %T", v)
  8577. }
  8578. if value == nil {
  8579. return nil
  8580. }
  8581. shape, ok := value.(map[string]interface{})
  8582. if !ok {
  8583. return fmt.Errorf("unexpected JSON type %v", value)
  8584. }
  8585. var sv *types.ConcurrentModificationException
  8586. if *v == nil {
  8587. sv = &types.ConcurrentModificationException{}
  8588. } else {
  8589. sv = *v
  8590. }
  8591. for key, value := range shape {
  8592. switch key {
  8593. case "message", "Message":
  8594. if value != nil {
  8595. jtv, ok := value.(string)
  8596. if !ok {
  8597. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  8598. }
  8599. sv.Message = ptr.String(jtv)
  8600. }
  8601. default:
  8602. _, _ = key, value
  8603. }
  8604. }
  8605. *v = sv
  8606. return nil
  8607. }
  8608. func awsAwsjson11_deserializeDocumentConflictException(v **types.ConflictException, value interface{}) error {
  8609. if v == nil {
  8610. return fmt.Errorf("unexpected nil of type %T", v)
  8611. }
  8612. if value == nil {
  8613. return nil
  8614. }
  8615. shape, ok := value.(map[string]interface{})
  8616. if !ok {
  8617. return fmt.Errorf("unexpected JSON type %v", value)
  8618. }
  8619. var sv *types.ConflictException
  8620. if *v == nil {
  8621. sv = &types.ConflictException{}
  8622. } else {
  8623. sv = *v
  8624. }
  8625. for key, value := range shape {
  8626. switch key {
  8627. case "message", "Message":
  8628. if value != nil {
  8629. jtv, ok := value.(string)
  8630. if !ok {
  8631. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  8632. }
  8633. sv.Message = ptr.String(jtv)
  8634. }
  8635. default:
  8636. _, _ = key, value
  8637. }
  8638. }
  8639. *v = sv
  8640. return nil
  8641. }
  8642. func awsAwsjson11_deserializeDocumentConstraintViolationException(v **types.ConstraintViolationException, value interface{}) error {
  8643. if v == nil {
  8644. return fmt.Errorf("unexpected nil of type %T", v)
  8645. }
  8646. if value == nil {
  8647. return nil
  8648. }
  8649. shape, ok := value.(map[string]interface{})
  8650. if !ok {
  8651. return fmt.Errorf("unexpected JSON type %v", value)
  8652. }
  8653. var sv *types.ConstraintViolationException
  8654. if *v == nil {
  8655. sv = &types.ConstraintViolationException{}
  8656. } else {
  8657. sv = *v
  8658. }
  8659. for key, value := range shape {
  8660. switch key {
  8661. case "message", "Message":
  8662. if value != nil {
  8663. jtv, ok := value.(string)
  8664. if !ok {
  8665. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  8666. }
  8667. sv.Message = ptr.String(jtv)
  8668. }
  8669. case "Reason":
  8670. if value != nil {
  8671. jtv, ok := value.(string)
  8672. if !ok {
  8673. return fmt.Errorf("expected ConstraintViolationExceptionReason to be of type string, got %T instead", value)
  8674. }
  8675. sv.Reason = types.ConstraintViolationExceptionReason(jtv)
  8676. }
  8677. default:
  8678. _, _ = key, value
  8679. }
  8680. }
  8681. *v = sv
  8682. return nil
  8683. }
  8684. func awsAwsjson11_deserializeDocumentCreateAccountStatus(v **types.CreateAccountStatus, value interface{}) error {
  8685. if v == nil {
  8686. return fmt.Errorf("unexpected nil of type %T", v)
  8687. }
  8688. if value == nil {
  8689. return nil
  8690. }
  8691. shape, ok := value.(map[string]interface{})
  8692. if !ok {
  8693. return fmt.Errorf("unexpected JSON type %v", value)
  8694. }
  8695. var sv *types.CreateAccountStatus
  8696. if *v == nil {
  8697. sv = &types.CreateAccountStatus{}
  8698. } else {
  8699. sv = *v
  8700. }
  8701. for key, value := range shape {
  8702. switch key {
  8703. case "AccountId":
  8704. if value != nil {
  8705. jtv, ok := value.(string)
  8706. if !ok {
  8707. return fmt.Errorf("expected AccountId to be of type string, got %T instead", value)
  8708. }
  8709. sv.AccountId = ptr.String(jtv)
  8710. }
  8711. case "AccountName":
  8712. if value != nil {
  8713. jtv, ok := value.(string)
  8714. if !ok {
  8715. return fmt.Errorf("expected CreateAccountName to be of type string, got %T instead", value)
  8716. }
  8717. sv.AccountName = ptr.String(jtv)
  8718. }
  8719. case "CompletedTimestamp":
  8720. if value != nil {
  8721. switch jtv := value.(type) {
  8722. case json.Number:
  8723. f64, err := jtv.Float64()
  8724. if err != nil {
  8725. return err
  8726. }
  8727. sv.CompletedTimestamp = ptr.Time(smithytime.ParseEpochSeconds(f64))
  8728. default:
  8729. return fmt.Errorf("expected Timestamp to be a JSON Number, got %T instead", value)
  8730. }
  8731. }
  8732. case "FailureReason":
  8733. if value != nil {
  8734. jtv, ok := value.(string)
  8735. if !ok {
  8736. return fmt.Errorf("expected CreateAccountFailureReason to be of type string, got %T instead", value)
  8737. }
  8738. sv.FailureReason = types.CreateAccountFailureReason(jtv)
  8739. }
  8740. case "GovCloudAccountId":
  8741. if value != nil {
  8742. jtv, ok := value.(string)
  8743. if !ok {
  8744. return fmt.Errorf("expected AccountId to be of type string, got %T instead", value)
  8745. }
  8746. sv.GovCloudAccountId = ptr.String(jtv)
  8747. }
  8748. case "Id":
  8749. if value != nil {
  8750. jtv, ok := value.(string)
  8751. if !ok {
  8752. return fmt.Errorf("expected CreateAccountRequestId to be of type string, got %T instead", value)
  8753. }
  8754. sv.Id = ptr.String(jtv)
  8755. }
  8756. case "RequestedTimestamp":
  8757. if value != nil {
  8758. switch jtv := value.(type) {
  8759. case json.Number:
  8760. f64, err := jtv.Float64()
  8761. if err != nil {
  8762. return err
  8763. }
  8764. sv.RequestedTimestamp = ptr.Time(smithytime.ParseEpochSeconds(f64))
  8765. default:
  8766. return fmt.Errorf("expected Timestamp to be a JSON Number, got %T instead", value)
  8767. }
  8768. }
  8769. case "State":
  8770. if value != nil {
  8771. jtv, ok := value.(string)
  8772. if !ok {
  8773. return fmt.Errorf("expected CreateAccountState to be of type string, got %T instead", value)
  8774. }
  8775. sv.State = types.CreateAccountState(jtv)
  8776. }
  8777. default:
  8778. _, _ = key, value
  8779. }
  8780. }
  8781. *v = sv
  8782. return nil
  8783. }
  8784. func awsAwsjson11_deserializeDocumentCreateAccountStatuses(v *[]types.CreateAccountStatus, value interface{}) error {
  8785. if v == nil {
  8786. return fmt.Errorf("unexpected nil of type %T", v)
  8787. }
  8788. if value == nil {
  8789. return nil
  8790. }
  8791. shape, ok := value.([]interface{})
  8792. if !ok {
  8793. return fmt.Errorf("unexpected JSON type %v", value)
  8794. }
  8795. var cv []types.CreateAccountStatus
  8796. if *v == nil {
  8797. cv = []types.CreateAccountStatus{}
  8798. } else {
  8799. cv = *v
  8800. }
  8801. for _, value := range shape {
  8802. var col types.CreateAccountStatus
  8803. destAddr := &col
  8804. if err := awsAwsjson11_deserializeDocumentCreateAccountStatus(&destAddr, value); err != nil {
  8805. return err
  8806. }
  8807. col = *destAddr
  8808. cv = append(cv, col)
  8809. }
  8810. *v = cv
  8811. return nil
  8812. }
  8813. func awsAwsjson11_deserializeDocumentCreateAccountStatusNotFoundException(v **types.CreateAccountStatusNotFoundException, value interface{}) error {
  8814. if v == nil {
  8815. return fmt.Errorf("unexpected nil of type %T", v)
  8816. }
  8817. if value == nil {
  8818. return nil
  8819. }
  8820. shape, ok := value.(map[string]interface{})
  8821. if !ok {
  8822. return fmt.Errorf("unexpected JSON type %v", value)
  8823. }
  8824. var sv *types.CreateAccountStatusNotFoundException
  8825. if *v == nil {
  8826. sv = &types.CreateAccountStatusNotFoundException{}
  8827. } else {
  8828. sv = *v
  8829. }
  8830. for key, value := range shape {
  8831. switch key {
  8832. case "message", "Message":
  8833. if value != nil {
  8834. jtv, ok := value.(string)
  8835. if !ok {
  8836. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  8837. }
  8838. sv.Message = ptr.String(jtv)
  8839. }
  8840. default:
  8841. _, _ = key, value
  8842. }
  8843. }
  8844. *v = sv
  8845. return nil
  8846. }
  8847. func awsAwsjson11_deserializeDocumentDelegatedAdministrator(v **types.DelegatedAdministrator, value interface{}) error {
  8848. if v == nil {
  8849. return fmt.Errorf("unexpected nil of type %T", v)
  8850. }
  8851. if value == nil {
  8852. return nil
  8853. }
  8854. shape, ok := value.(map[string]interface{})
  8855. if !ok {
  8856. return fmt.Errorf("unexpected JSON type %v", value)
  8857. }
  8858. var sv *types.DelegatedAdministrator
  8859. if *v == nil {
  8860. sv = &types.DelegatedAdministrator{}
  8861. } else {
  8862. sv = *v
  8863. }
  8864. for key, value := range shape {
  8865. switch key {
  8866. case "Arn":
  8867. if value != nil {
  8868. jtv, ok := value.(string)
  8869. if !ok {
  8870. return fmt.Errorf("expected AccountArn to be of type string, got %T instead", value)
  8871. }
  8872. sv.Arn = ptr.String(jtv)
  8873. }
  8874. case "DelegationEnabledDate":
  8875. if value != nil {
  8876. switch jtv := value.(type) {
  8877. case json.Number:
  8878. f64, err := jtv.Float64()
  8879. if err != nil {
  8880. return err
  8881. }
  8882. sv.DelegationEnabledDate = ptr.Time(smithytime.ParseEpochSeconds(f64))
  8883. default:
  8884. return fmt.Errorf("expected Timestamp to be a JSON Number, got %T instead", value)
  8885. }
  8886. }
  8887. case "Email":
  8888. if value != nil {
  8889. jtv, ok := value.(string)
  8890. if !ok {
  8891. return fmt.Errorf("expected Email to be of type string, got %T instead", value)
  8892. }
  8893. sv.Email = ptr.String(jtv)
  8894. }
  8895. case "Id":
  8896. if value != nil {
  8897. jtv, ok := value.(string)
  8898. if !ok {
  8899. return fmt.Errorf("expected AccountId to be of type string, got %T instead", value)
  8900. }
  8901. sv.Id = ptr.String(jtv)
  8902. }
  8903. case "JoinedMethod":
  8904. if value != nil {
  8905. jtv, ok := value.(string)
  8906. if !ok {
  8907. return fmt.Errorf("expected AccountJoinedMethod to be of type string, got %T instead", value)
  8908. }
  8909. sv.JoinedMethod = types.AccountJoinedMethod(jtv)
  8910. }
  8911. case "JoinedTimestamp":
  8912. if value != nil {
  8913. switch jtv := value.(type) {
  8914. case json.Number:
  8915. f64, err := jtv.Float64()
  8916. if err != nil {
  8917. return err
  8918. }
  8919. sv.JoinedTimestamp = ptr.Time(smithytime.ParseEpochSeconds(f64))
  8920. default:
  8921. return fmt.Errorf("expected Timestamp to be a JSON Number, got %T instead", value)
  8922. }
  8923. }
  8924. case "Name":
  8925. if value != nil {
  8926. jtv, ok := value.(string)
  8927. if !ok {
  8928. return fmt.Errorf("expected AccountName to be of type string, got %T instead", value)
  8929. }
  8930. sv.Name = ptr.String(jtv)
  8931. }
  8932. case "State":
  8933. if value != nil {
  8934. jtv, ok := value.(string)
  8935. if !ok {
  8936. return fmt.Errorf("expected AccountState to be of type string, got %T instead", value)
  8937. }
  8938. sv.State = types.AccountState(jtv)
  8939. }
  8940. case "Status":
  8941. if value != nil {
  8942. jtv, ok := value.(string)
  8943. if !ok {
  8944. return fmt.Errorf("expected AccountStatus to be of type string, got %T instead", value)
  8945. }
  8946. sv.Status = types.AccountStatus(jtv)
  8947. }
  8948. default:
  8949. _, _ = key, value
  8950. }
  8951. }
  8952. *v = sv
  8953. return nil
  8954. }
  8955. func awsAwsjson11_deserializeDocumentDelegatedAdministrators(v *[]types.DelegatedAdministrator, value interface{}) error {
  8956. if v == nil {
  8957. return fmt.Errorf("unexpected nil of type %T", v)
  8958. }
  8959. if value == nil {
  8960. return nil
  8961. }
  8962. shape, ok := value.([]interface{})
  8963. if !ok {
  8964. return fmt.Errorf("unexpected JSON type %v", value)
  8965. }
  8966. var cv []types.DelegatedAdministrator
  8967. if *v == nil {
  8968. cv = []types.DelegatedAdministrator{}
  8969. } else {
  8970. cv = *v
  8971. }
  8972. for _, value := range shape {
  8973. var col types.DelegatedAdministrator
  8974. destAddr := &col
  8975. if err := awsAwsjson11_deserializeDocumentDelegatedAdministrator(&destAddr, value); err != nil {
  8976. return err
  8977. }
  8978. col = *destAddr
  8979. cv = append(cv, col)
  8980. }
  8981. *v = cv
  8982. return nil
  8983. }
  8984. func awsAwsjson11_deserializeDocumentDelegatedService(v **types.DelegatedService, value interface{}) error {
  8985. if v == nil {
  8986. return fmt.Errorf("unexpected nil of type %T", v)
  8987. }
  8988. if value == nil {
  8989. return nil
  8990. }
  8991. shape, ok := value.(map[string]interface{})
  8992. if !ok {
  8993. return fmt.Errorf("unexpected JSON type %v", value)
  8994. }
  8995. var sv *types.DelegatedService
  8996. if *v == nil {
  8997. sv = &types.DelegatedService{}
  8998. } else {
  8999. sv = *v
  9000. }
  9001. for key, value := range shape {
  9002. switch key {
  9003. case "DelegationEnabledDate":
  9004. if value != nil {
  9005. switch jtv := value.(type) {
  9006. case json.Number:
  9007. f64, err := jtv.Float64()
  9008. if err != nil {
  9009. return err
  9010. }
  9011. sv.DelegationEnabledDate = ptr.Time(smithytime.ParseEpochSeconds(f64))
  9012. default:
  9013. return fmt.Errorf("expected Timestamp to be a JSON Number, got %T instead", value)
  9014. }
  9015. }
  9016. case "ServicePrincipal":
  9017. if value != nil {
  9018. jtv, ok := value.(string)
  9019. if !ok {
  9020. return fmt.Errorf("expected ServicePrincipal to be of type string, got %T instead", value)
  9021. }
  9022. sv.ServicePrincipal = ptr.String(jtv)
  9023. }
  9024. default:
  9025. _, _ = key, value
  9026. }
  9027. }
  9028. *v = sv
  9029. return nil
  9030. }
  9031. func awsAwsjson11_deserializeDocumentDelegatedServices(v *[]types.DelegatedService, value interface{}) error {
  9032. if v == nil {
  9033. return fmt.Errorf("unexpected nil of type %T", v)
  9034. }
  9035. if value == nil {
  9036. return nil
  9037. }
  9038. shape, ok := value.([]interface{})
  9039. if !ok {
  9040. return fmt.Errorf("unexpected JSON type %v", value)
  9041. }
  9042. var cv []types.DelegatedService
  9043. if *v == nil {
  9044. cv = []types.DelegatedService{}
  9045. } else {
  9046. cv = *v
  9047. }
  9048. for _, value := range shape {
  9049. var col types.DelegatedService
  9050. destAddr := &col
  9051. if err := awsAwsjson11_deserializeDocumentDelegatedService(&destAddr, value); err != nil {
  9052. return err
  9053. }
  9054. col = *destAddr
  9055. cv = append(cv, col)
  9056. }
  9057. *v = cv
  9058. return nil
  9059. }
  9060. func awsAwsjson11_deserializeDocumentDestinationParentNotFoundException(v **types.DestinationParentNotFoundException, value interface{}) error {
  9061. if v == nil {
  9062. return fmt.Errorf("unexpected nil of type %T", v)
  9063. }
  9064. if value == nil {
  9065. return nil
  9066. }
  9067. shape, ok := value.(map[string]interface{})
  9068. if !ok {
  9069. return fmt.Errorf("unexpected JSON type %v", value)
  9070. }
  9071. var sv *types.DestinationParentNotFoundException
  9072. if *v == nil {
  9073. sv = &types.DestinationParentNotFoundException{}
  9074. } else {
  9075. sv = *v
  9076. }
  9077. for key, value := range shape {
  9078. switch key {
  9079. case "message", "Message":
  9080. if value != nil {
  9081. jtv, ok := value.(string)
  9082. if !ok {
  9083. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  9084. }
  9085. sv.Message = ptr.String(jtv)
  9086. }
  9087. default:
  9088. _, _ = key, value
  9089. }
  9090. }
  9091. *v = sv
  9092. return nil
  9093. }
  9094. func awsAwsjson11_deserializeDocumentDuplicateAccountException(v **types.DuplicateAccountException, value interface{}) error {
  9095. if v == nil {
  9096. return fmt.Errorf("unexpected nil of type %T", v)
  9097. }
  9098. if value == nil {
  9099. return nil
  9100. }
  9101. shape, ok := value.(map[string]interface{})
  9102. if !ok {
  9103. return fmt.Errorf("unexpected JSON type %v", value)
  9104. }
  9105. var sv *types.DuplicateAccountException
  9106. if *v == nil {
  9107. sv = &types.DuplicateAccountException{}
  9108. } else {
  9109. sv = *v
  9110. }
  9111. for key, value := range shape {
  9112. switch key {
  9113. case "message", "Message":
  9114. if value != nil {
  9115. jtv, ok := value.(string)
  9116. if !ok {
  9117. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  9118. }
  9119. sv.Message = ptr.String(jtv)
  9120. }
  9121. default:
  9122. _, _ = key, value
  9123. }
  9124. }
  9125. *v = sv
  9126. return nil
  9127. }
  9128. func awsAwsjson11_deserializeDocumentDuplicateHandshakeException(v **types.DuplicateHandshakeException, value interface{}) error {
  9129. if v == nil {
  9130. return fmt.Errorf("unexpected nil of type %T", v)
  9131. }
  9132. if value == nil {
  9133. return nil
  9134. }
  9135. shape, ok := value.(map[string]interface{})
  9136. if !ok {
  9137. return fmt.Errorf("unexpected JSON type %v", value)
  9138. }
  9139. var sv *types.DuplicateHandshakeException
  9140. if *v == nil {
  9141. sv = &types.DuplicateHandshakeException{}
  9142. } else {
  9143. sv = *v
  9144. }
  9145. for key, value := range shape {
  9146. switch key {
  9147. case "message", "Message":
  9148. if value != nil {
  9149. jtv, ok := value.(string)
  9150. if !ok {
  9151. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  9152. }
  9153. sv.Message = ptr.String(jtv)
  9154. }
  9155. default:
  9156. _, _ = key, value
  9157. }
  9158. }
  9159. *v = sv
  9160. return nil
  9161. }
  9162. func awsAwsjson11_deserializeDocumentDuplicateOrganizationalUnitException(v **types.DuplicateOrganizationalUnitException, value interface{}) error {
  9163. if v == nil {
  9164. return fmt.Errorf("unexpected nil of type %T", v)
  9165. }
  9166. if value == nil {
  9167. return nil
  9168. }
  9169. shape, ok := value.(map[string]interface{})
  9170. if !ok {
  9171. return fmt.Errorf("unexpected JSON type %v", value)
  9172. }
  9173. var sv *types.DuplicateOrganizationalUnitException
  9174. if *v == nil {
  9175. sv = &types.DuplicateOrganizationalUnitException{}
  9176. } else {
  9177. sv = *v
  9178. }
  9179. for key, value := range shape {
  9180. switch key {
  9181. case "message", "Message":
  9182. if value != nil {
  9183. jtv, ok := value.(string)
  9184. if !ok {
  9185. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  9186. }
  9187. sv.Message = ptr.String(jtv)
  9188. }
  9189. default:
  9190. _, _ = key, value
  9191. }
  9192. }
  9193. *v = sv
  9194. return nil
  9195. }
  9196. func awsAwsjson11_deserializeDocumentDuplicatePolicyAttachmentException(v **types.DuplicatePolicyAttachmentException, value interface{}) error {
  9197. if v == nil {
  9198. return fmt.Errorf("unexpected nil of type %T", v)
  9199. }
  9200. if value == nil {
  9201. return nil
  9202. }
  9203. shape, ok := value.(map[string]interface{})
  9204. if !ok {
  9205. return fmt.Errorf("unexpected JSON type %v", value)
  9206. }
  9207. var sv *types.DuplicatePolicyAttachmentException
  9208. if *v == nil {
  9209. sv = &types.DuplicatePolicyAttachmentException{}
  9210. } else {
  9211. sv = *v
  9212. }
  9213. for key, value := range shape {
  9214. switch key {
  9215. case "message", "Message":
  9216. if value != nil {
  9217. jtv, ok := value.(string)
  9218. if !ok {
  9219. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  9220. }
  9221. sv.Message = ptr.String(jtv)
  9222. }
  9223. default:
  9224. _, _ = key, value
  9225. }
  9226. }
  9227. *v = sv
  9228. return nil
  9229. }
  9230. func awsAwsjson11_deserializeDocumentDuplicatePolicyException(v **types.DuplicatePolicyException, value interface{}) error {
  9231. if v == nil {
  9232. return fmt.Errorf("unexpected nil of type %T", v)
  9233. }
  9234. if value == nil {
  9235. return nil
  9236. }
  9237. shape, ok := value.(map[string]interface{})
  9238. if !ok {
  9239. return fmt.Errorf("unexpected JSON type %v", value)
  9240. }
  9241. var sv *types.DuplicatePolicyException
  9242. if *v == nil {
  9243. sv = &types.DuplicatePolicyException{}
  9244. } else {
  9245. sv = *v
  9246. }
  9247. for key, value := range shape {
  9248. switch key {
  9249. case "message", "Message":
  9250. if value != nil {
  9251. jtv, ok := value.(string)
  9252. if !ok {
  9253. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  9254. }
  9255. sv.Message = ptr.String(jtv)
  9256. }
  9257. default:
  9258. _, _ = key, value
  9259. }
  9260. }
  9261. *v = sv
  9262. return nil
  9263. }
  9264. func awsAwsjson11_deserializeDocumentEffectivePolicy(v **types.EffectivePolicy, value interface{}) error {
  9265. if v == nil {
  9266. return fmt.Errorf("unexpected nil of type %T", v)
  9267. }
  9268. if value == nil {
  9269. return nil
  9270. }
  9271. shape, ok := value.(map[string]interface{})
  9272. if !ok {
  9273. return fmt.Errorf("unexpected JSON type %v", value)
  9274. }
  9275. var sv *types.EffectivePolicy
  9276. if *v == nil {
  9277. sv = &types.EffectivePolicy{}
  9278. } else {
  9279. sv = *v
  9280. }
  9281. for key, value := range shape {
  9282. switch key {
  9283. case "LastUpdatedTimestamp":
  9284. if value != nil {
  9285. switch jtv := value.(type) {
  9286. case json.Number:
  9287. f64, err := jtv.Float64()
  9288. if err != nil {
  9289. return err
  9290. }
  9291. sv.LastUpdatedTimestamp = ptr.Time(smithytime.ParseEpochSeconds(f64))
  9292. default:
  9293. return fmt.Errorf("expected Timestamp to be a JSON Number, got %T instead", value)
  9294. }
  9295. }
  9296. case "PolicyContent":
  9297. if value != nil {
  9298. jtv, ok := value.(string)
  9299. if !ok {
  9300. return fmt.Errorf("expected PolicyContent to be of type string, got %T instead", value)
  9301. }
  9302. sv.PolicyContent = ptr.String(jtv)
  9303. }
  9304. case "PolicyType":
  9305. if value != nil {
  9306. jtv, ok := value.(string)
  9307. if !ok {
  9308. return fmt.Errorf("expected EffectivePolicyType to be of type string, got %T instead", value)
  9309. }
  9310. sv.PolicyType = types.EffectivePolicyType(jtv)
  9311. }
  9312. case "TargetId":
  9313. if value != nil {
  9314. jtv, ok := value.(string)
  9315. if !ok {
  9316. return fmt.Errorf("expected PolicyTargetId to be of type string, got %T instead", value)
  9317. }
  9318. sv.TargetId = ptr.String(jtv)
  9319. }
  9320. default:
  9321. _, _ = key, value
  9322. }
  9323. }
  9324. *v = sv
  9325. return nil
  9326. }
  9327. func awsAwsjson11_deserializeDocumentEffectivePolicyNotFoundException(v **types.EffectivePolicyNotFoundException, value interface{}) error {
  9328. if v == nil {
  9329. return fmt.Errorf("unexpected nil of type %T", v)
  9330. }
  9331. if value == nil {
  9332. return nil
  9333. }
  9334. shape, ok := value.(map[string]interface{})
  9335. if !ok {
  9336. return fmt.Errorf("unexpected JSON type %v", value)
  9337. }
  9338. var sv *types.EffectivePolicyNotFoundException
  9339. if *v == nil {
  9340. sv = &types.EffectivePolicyNotFoundException{}
  9341. } else {
  9342. sv = *v
  9343. }
  9344. for key, value := range shape {
  9345. switch key {
  9346. case "message", "Message":
  9347. if value != nil {
  9348. jtv, ok := value.(string)
  9349. if !ok {
  9350. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  9351. }
  9352. sv.Message = ptr.String(jtv)
  9353. }
  9354. default:
  9355. _, _ = key, value
  9356. }
  9357. }
  9358. *v = sv
  9359. return nil
  9360. }
  9361. func awsAwsjson11_deserializeDocumentEffectivePolicyValidationError(v **types.EffectivePolicyValidationError, value interface{}) error {
  9362. if v == nil {
  9363. return fmt.Errorf("unexpected nil of type %T", v)
  9364. }
  9365. if value == nil {
  9366. return nil
  9367. }
  9368. shape, ok := value.(map[string]interface{})
  9369. if !ok {
  9370. return fmt.Errorf("unexpected JSON type %v", value)
  9371. }
  9372. var sv *types.EffectivePolicyValidationError
  9373. if *v == nil {
  9374. sv = &types.EffectivePolicyValidationError{}
  9375. } else {
  9376. sv = *v
  9377. }
  9378. for key, value := range shape {
  9379. switch key {
  9380. case "ContributingPolicies":
  9381. if err := awsAwsjson11_deserializeDocumentPolicyIds(&sv.ContributingPolicies, value); err != nil {
  9382. return err
  9383. }
  9384. case "ErrorCode":
  9385. if value != nil {
  9386. jtv, ok := value.(string)
  9387. if !ok {
  9388. return fmt.Errorf("expected ErrorCode to be of type string, got %T instead", value)
  9389. }
  9390. sv.ErrorCode = ptr.String(jtv)
  9391. }
  9392. case "ErrorMessage":
  9393. if value != nil {
  9394. jtv, ok := value.(string)
  9395. if !ok {
  9396. return fmt.Errorf("expected ErrorMessage to be of type string, got %T instead", value)
  9397. }
  9398. sv.ErrorMessage = ptr.String(jtv)
  9399. }
  9400. case "PathToError":
  9401. if value != nil {
  9402. jtv, ok := value.(string)
  9403. if !ok {
  9404. return fmt.Errorf("expected PathToError to be of type string, got %T instead", value)
  9405. }
  9406. sv.PathToError = ptr.String(jtv)
  9407. }
  9408. default:
  9409. _, _ = key, value
  9410. }
  9411. }
  9412. *v = sv
  9413. return nil
  9414. }
  9415. func awsAwsjson11_deserializeDocumentEffectivePolicyValidationErrors(v *[]types.EffectivePolicyValidationError, value interface{}) error {
  9416. if v == nil {
  9417. return fmt.Errorf("unexpected nil of type %T", v)
  9418. }
  9419. if value == nil {
  9420. return nil
  9421. }
  9422. shape, ok := value.([]interface{})
  9423. if !ok {
  9424. return fmt.Errorf("unexpected JSON type %v", value)
  9425. }
  9426. var cv []types.EffectivePolicyValidationError
  9427. if *v == nil {
  9428. cv = []types.EffectivePolicyValidationError{}
  9429. } else {
  9430. cv = *v
  9431. }
  9432. for _, value := range shape {
  9433. var col types.EffectivePolicyValidationError
  9434. destAddr := &col
  9435. if err := awsAwsjson11_deserializeDocumentEffectivePolicyValidationError(&destAddr, value); err != nil {
  9436. return err
  9437. }
  9438. col = *destAddr
  9439. cv = append(cv, col)
  9440. }
  9441. *v = cv
  9442. return nil
  9443. }
  9444. func awsAwsjson11_deserializeDocumentEnabledServicePrincipal(v **types.EnabledServicePrincipal, value interface{}) error {
  9445. if v == nil {
  9446. return fmt.Errorf("unexpected nil of type %T", v)
  9447. }
  9448. if value == nil {
  9449. return nil
  9450. }
  9451. shape, ok := value.(map[string]interface{})
  9452. if !ok {
  9453. return fmt.Errorf("unexpected JSON type %v", value)
  9454. }
  9455. var sv *types.EnabledServicePrincipal
  9456. if *v == nil {
  9457. sv = &types.EnabledServicePrincipal{}
  9458. } else {
  9459. sv = *v
  9460. }
  9461. for key, value := range shape {
  9462. switch key {
  9463. case "DateEnabled":
  9464. if value != nil {
  9465. switch jtv := value.(type) {
  9466. case json.Number:
  9467. f64, err := jtv.Float64()
  9468. if err != nil {
  9469. return err
  9470. }
  9471. sv.DateEnabled = ptr.Time(smithytime.ParseEpochSeconds(f64))
  9472. default:
  9473. return fmt.Errorf("expected Timestamp to be a JSON Number, got %T instead", value)
  9474. }
  9475. }
  9476. case "ServicePrincipal":
  9477. if value != nil {
  9478. jtv, ok := value.(string)
  9479. if !ok {
  9480. return fmt.Errorf("expected ServicePrincipal to be of type string, got %T instead", value)
  9481. }
  9482. sv.ServicePrincipal = ptr.String(jtv)
  9483. }
  9484. default:
  9485. _, _ = key, value
  9486. }
  9487. }
  9488. *v = sv
  9489. return nil
  9490. }
  9491. func awsAwsjson11_deserializeDocumentEnabledServicePrincipals(v *[]types.EnabledServicePrincipal, value interface{}) error {
  9492. if v == nil {
  9493. return fmt.Errorf("unexpected nil of type %T", v)
  9494. }
  9495. if value == nil {
  9496. return nil
  9497. }
  9498. shape, ok := value.([]interface{})
  9499. if !ok {
  9500. return fmt.Errorf("unexpected JSON type %v", value)
  9501. }
  9502. var cv []types.EnabledServicePrincipal
  9503. if *v == nil {
  9504. cv = []types.EnabledServicePrincipal{}
  9505. } else {
  9506. cv = *v
  9507. }
  9508. for _, value := range shape {
  9509. var col types.EnabledServicePrincipal
  9510. destAddr := &col
  9511. if err := awsAwsjson11_deserializeDocumentEnabledServicePrincipal(&destAddr, value); err != nil {
  9512. return err
  9513. }
  9514. col = *destAddr
  9515. cv = append(cv, col)
  9516. }
  9517. *v = cv
  9518. return nil
  9519. }
  9520. func awsAwsjson11_deserializeDocumentFinalizingOrganizationException(v **types.FinalizingOrganizationException, value interface{}) error {
  9521. if v == nil {
  9522. return fmt.Errorf("unexpected nil of type %T", v)
  9523. }
  9524. if value == nil {
  9525. return nil
  9526. }
  9527. shape, ok := value.(map[string]interface{})
  9528. if !ok {
  9529. return fmt.Errorf("unexpected JSON type %v", value)
  9530. }
  9531. var sv *types.FinalizingOrganizationException
  9532. if *v == nil {
  9533. sv = &types.FinalizingOrganizationException{}
  9534. } else {
  9535. sv = *v
  9536. }
  9537. for key, value := range shape {
  9538. switch key {
  9539. case "message", "Message":
  9540. if value != nil {
  9541. jtv, ok := value.(string)
  9542. if !ok {
  9543. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  9544. }
  9545. sv.Message = ptr.String(jtv)
  9546. }
  9547. default:
  9548. _, _ = key, value
  9549. }
  9550. }
  9551. *v = sv
  9552. return nil
  9553. }
  9554. func awsAwsjson11_deserializeDocumentHandshake(v **types.Handshake, value interface{}) error {
  9555. if v == nil {
  9556. return fmt.Errorf("unexpected nil of type %T", v)
  9557. }
  9558. if value == nil {
  9559. return nil
  9560. }
  9561. shape, ok := value.(map[string]interface{})
  9562. if !ok {
  9563. return fmt.Errorf("unexpected JSON type %v", value)
  9564. }
  9565. var sv *types.Handshake
  9566. if *v == nil {
  9567. sv = &types.Handshake{}
  9568. } else {
  9569. sv = *v
  9570. }
  9571. for key, value := range shape {
  9572. switch key {
  9573. case "Action":
  9574. if value != nil {
  9575. jtv, ok := value.(string)
  9576. if !ok {
  9577. return fmt.Errorf("expected ActionType to be of type string, got %T instead", value)
  9578. }
  9579. sv.Action = types.ActionType(jtv)
  9580. }
  9581. case "Arn":
  9582. if value != nil {
  9583. jtv, ok := value.(string)
  9584. if !ok {
  9585. return fmt.Errorf("expected HandshakeArn to be of type string, got %T instead", value)
  9586. }
  9587. sv.Arn = ptr.String(jtv)
  9588. }
  9589. case "ExpirationTimestamp":
  9590. if value != nil {
  9591. switch jtv := value.(type) {
  9592. case json.Number:
  9593. f64, err := jtv.Float64()
  9594. if err != nil {
  9595. return err
  9596. }
  9597. sv.ExpirationTimestamp = ptr.Time(smithytime.ParseEpochSeconds(f64))
  9598. default:
  9599. return fmt.Errorf("expected Timestamp to be a JSON Number, got %T instead", value)
  9600. }
  9601. }
  9602. case "Id":
  9603. if value != nil {
  9604. jtv, ok := value.(string)
  9605. if !ok {
  9606. return fmt.Errorf("expected HandshakeId to be of type string, got %T instead", value)
  9607. }
  9608. sv.Id = ptr.String(jtv)
  9609. }
  9610. case "Parties":
  9611. if err := awsAwsjson11_deserializeDocumentHandshakeParties(&sv.Parties, value); err != nil {
  9612. return err
  9613. }
  9614. case "RequestedTimestamp":
  9615. if value != nil {
  9616. switch jtv := value.(type) {
  9617. case json.Number:
  9618. f64, err := jtv.Float64()
  9619. if err != nil {
  9620. return err
  9621. }
  9622. sv.RequestedTimestamp = ptr.Time(smithytime.ParseEpochSeconds(f64))
  9623. default:
  9624. return fmt.Errorf("expected Timestamp to be a JSON Number, got %T instead", value)
  9625. }
  9626. }
  9627. case "Resources":
  9628. if err := awsAwsjson11_deserializeDocumentHandshakeResources(&sv.Resources, value); err != nil {
  9629. return err
  9630. }
  9631. case "State":
  9632. if value != nil {
  9633. jtv, ok := value.(string)
  9634. if !ok {
  9635. return fmt.Errorf("expected HandshakeState to be of type string, got %T instead", value)
  9636. }
  9637. sv.State = types.HandshakeState(jtv)
  9638. }
  9639. default:
  9640. _, _ = key, value
  9641. }
  9642. }
  9643. *v = sv
  9644. return nil
  9645. }
  9646. func awsAwsjson11_deserializeDocumentHandshakeAlreadyInStateException(v **types.HandshakeAlreadyInStateException, value interface{}) error {
  9647. if v == nil {
  9648. return fmt.Errorf("unexpected nil of type %T", v)
  9649. }
  9650. if value == nil {
  9651. return nil
  9652. }
  9653. shape, ok := value.(map[string]interface{})
  9654. if !ok {
  9655. return fmt.Errorf("unexpected JSON type %v", value)
  9656. }
  9657. var sv *types.HandshakeAlreadyInStateException
  9658. if *v == nil {
  9659. sv = &types.HandshakeAlreadyInStateException{}
  9660. } else {
  9661. sv = *v
  9662. }
  9663. for key, value := range shape {
  9664. switch key {
  9665. case "message", "Message":
  9666. if value != nil {
  9667. jtv, ok := value.(string)
  9668. if !ok {
  9669. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  9670. }
  9671. sv.Message = ptr.String(jtv)
  9672. }
  9673. default:
  9674. _, _ = key, value
  9675. }
  9676. }
  9677. *v = sv
  9678. return nil
  9679. }
  9680. func awsAwsjson11_deserializeDocumentHandshakeConstraintViolationException(v **types.HandshakeConstraintViolationException, value interface{}) error {
  9681. if v == nil {
  9682. return fmt.Errorf("unexpected nil of type %T", v)
  9683. }
  9684. if value == nil {
  9685. return nil
  9686. }
  9687. shape, ok := value.(map[string]interface{})
  9688. if !ok {
  9689. return fmt.Errorf("unexpected JSON type %v", value)
  9690. }
  9691. var sv *types.HandshakeConstraintViolationException
  9692. if *v == nil {
  9693. sv = &types.HandshakeConstraintViolationException{}
  9694. } else {
  9695. sv = *v
  9696. }
  9697. for key, value := range shape {
  9698. switch key {
  9699. case "message", "Message":
  9700. if value != nil {
  9701. jtv, ok := value.(string)
  9702. if !ok {
  9703. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  9704. }
  9705. sv.Message = ptr.String(jtv)
  9706. }
  9707. case "Reason":
  9708. if value != nil {
  9709. jtv, ok := value.(string)
  9710. if !ok {
  9711. return fmt.Errorf("expected HandshakeConstraintViolationExceptionReason to be of type string, got %T instead", value)
  9712. }
  9713. sv.Reason = types.HandshakeConstraintViolationExceptionReason(jtv)
  9714. }
  9715. default:
  9716. _, _ = key, value
  9717. }
  9718. }
  9719. *v = sv
  9720. return nil
  9721. }
  9722. func awsAwsjson11_deserializeDocumentHandshakeNotFoundException(v **types.HandshakeNotFoundException, value interface{}) error {
  9723. if v == nil {
  9724. return fmt.Errorf("unexpected nil of type %T", v)
  9725. }
  9726. if value == nil {
  9727. return nil
  9728. }
  9729. shape, ok := value.(map[string]interface{})
  9730. if !ok {
  9731. return fmt.Errorf("unexpected JSON type %v", value)
  9732. }
  9733. var sv *types.HandshakeNotFoundException
  9734. if *v == nil {
  9735. sv = &types.HandshakeNotFoundException{}
  9736. } else {
  9737. sv = *v
  9738. }
  9739. for key, value := range shape {
  9740. switch key {
  9741. case "message", "Message":
  9742. if value != nil {
  9743. jtv, ok := value.(string)
  9744. if !ok {
  9745. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  9746. }
  9747. sv.Message = ptr.String(jtv)
  9748. }
  9749. default:
  9750. _, _ = key, value
  9751. }
  9752. }
  9753. *v = sv
  9754. return nil
  9755. }
  9756. func awsAwsjson11_deserializeDocumentHandshakeParties(v *[]types.HandshakeParty, value interface{}) error {
  9757. if v == nil {
  9758. return fmt.Errorf("unexpected nil of type %T", v)
  9759. }
  9760. if value == nil {
  9761. return nil
  9762. }
  9763. shape, ok := value.([]interface{})
  9764. if !ok {
  9765. return fmt.Errorf("unexpected JSON type %v", value)
  9766. }
  9767. var cv []types.HandshakeParty
  9768. if *v == nil {
  9769. cv = []types.HandshakeParty{}
  9770. } else {
  9771. cv = *v
  9772. }
  9773. for _, value := range shape {
  9774. var col types.HandshakeParty
  9775. destAddr := &col
  9776. if err := awsAwsjson11_deserializeDocumentHandshakeParty(&destAddr, value); err != nil {
  9777. return err
  9778. }
  9779. col = *destAddr
  9780. cv = append(cv, col)
  9781. }
  9782. *v = cv
  9783. return nil
  9784. }
  9785. func awsAwsjson11_deserializeDocumentHandshakeParty(v **types.HandshakeParty, value interface{}) error {
  9786. if v == nil {
  9787. return fmt.Errorf("unexpected nil of type %T", v)
  9788. }
  9789. if value == nil {
  9790. return nil
  9791. }
  9792. shape, ok := value.(map[string]interface{})
  9793. if !ok {
  9794. return fmt.Errorf("unexpected JSON type %v", value)
  9795. }
  9796. var sv *types.HandshakeParty
  9797. if *v == nil {
  9798. sv = &types.HandshakeParty{}
  9799. } else {
  9800. sv = *v
  9801. }
  9802. for key, value := range shape {
  9803. switch key {
  9804. case "Id":
  9805. if value != nil {
  9806. jtv, ok := value.(string)
  9807. if !ok {
  9808. return fmt.Errorf("expected HandshakePartyId to be of type string, got %T instead", value)
  9809. }
  9810. sv.Id = ptr.String(jtv)
  9811. }
  9812. case "Type":
  9813. if value != nil {
  9814. jtv, ok := value.(string)
  9815. if !ok {
  9816. return fmt.Errorf("expected HandshakePartyType to be of type string, got %T instead", value)
  9817. }
  9818. sv.Type = types.HandshakePartyType(jtv)
  9819. }
  9820. default:
  9821. _, _ = key, value
  9822. }
  9823. }
  9824. *v = sv
  9825. return nil
  9826. }
  9827. func awsAwsjson11_deserializeDocumentHandshakeResource(v **types.HandshakeResource, value interface{}) error {
  9828. if v == nil {
  9829. return fmt.Errorf("unexpected nil of type %T", v)
  9830. }
  9831. if value == nil {
  9832. return nil
  9833. }
  9834. shape, ok := value.(map[string]interface{})
  9835. if !ok {
  9836. return fmt.Errorf("unexpected JSON type %v", value)
  9837. }
  9838. var sv *types.HandshakeResource
  9839. if *v == nil {
  9840. sv = &types.HandshakeResource{}
  9841. } else {
  9842. sv = *v
  9843. }
  9844. for key, value := range shape {
  9845. switch key {
  9846. case "Resources":
  9847. if err := awsAwsjson11_deserializeDocumentHandshakeResources(&sv.Resources, value); err != nil {
  9848. return err
  9849. }
  9850. case "Type":
  9851. if value != nil {
  9852. jtv, ok := value.(string)
  9853. if !ok {
  9854. return fmt.Errorf("expected HandshakeResourceType to be of type string, got %T instead", value)
  9855. }
  9856. sv.Type = types.HandshakeResourceType(jtv)
  9857. }
  9858. case "Value":
  9859. if value != nil {
  9860. jtv, ok := value.(string)
  9861. if !ok {
  9862. return fmt.Errorf("expected HandshakeResourceValue to be of type string, got %T instead", value)
  9863. }
  9864. sv.Value = ptr.String(jtv)
  9865. }
  9866. default:
  9867. _, _ = key, value
  9868. }
  9869. }
  9870. *v = sv
  9871. return nil
  9872. }
  9873. func awsAwsjson11_deserializeDocumentHandshakeResources(v *[]types.HandshakeResource, value interface{}) error {
  9874. if v == nil {
  9875. return fmt.Errorf("unexpected nil of type %T", v)
  9876. }
  9877. if value == nil {
  9878. return nil
  9879. }
  9880. shape, ok := value.([]interface{})
  9881. if !ok {
  9882. return fmt.Errorf("unexpected JSON type %v", value)
  9883. }
  9884. var cv []types.HandshakeResource
  9885. if *v == nil {
  9886. cv = []types.HandshakeResource{}
  9887. } else {
  9888. cv = *v
  9889. }
  9890. for _, value := range shape {
  9891. var col types.HandshakeResource
  9892. destAddr := &col
  9893. if err := awsAwsjson11_deserializeDocumentHandshakeResource(&destAddr, value); err != nil {
  9894. return err
  9895. }
  9896. col = *destAddr
  9897. cv = append(cv, col)
  9898. }
  9899. *v = cv
  9900. return nil
  9901. }
  9902. func awsAwsjson11_deserializeDocumentHandshakes(v *[]types.Handshake, value interface{}) error {
  9903. if v == nil {
  9904. return fmt.Errorf("unexpected nil of type %T", v)
  9905. }
  9906. if value == nil {
  9907. return nil
  9908. }
  9909. shape, ok := value.([]interface{})
  9910. if !ok {
  9911. return fmt.Errorf("unexpected JSON type %v", value)
  9912. }
  9913. var cv []types.Handshake
  9914. if *v == nil {
  9915. cv = []types.Handshake{}
  9916. } else {
  9917. cv = *v
  9918. }
  9919. for _, value := range shape {
  9920. var col types.Handshake
  9921. destAddr := &col
  9922. if err := awsAwsjson11_deserializeDocumentHandshake(&destAddr, value); err != nil {
  9923. return err
  9924. }
  9925. col = *destAddr
  9926. cv = append(cv, col)
  9927. }
  9928. *v = cv
  9929. return nil
  9930. }
  9931. func awsAwsjson11_deserializeDocumentInvalidHandshakeTransitionException(v **types.InvalidHandshakeTransitionException, value interface{}) error {
  9932. if v == nil {
  9933. return fmt.Errorf("unexpected nil of type %T", v)
  9934. }
  9935. if value == nil {
  9936. return nil
  9937. }
  9938. shape, ok := value.(map[string]interface{})
  9939. if !ok {
  9940. return fmt.Errorf("unexpected JSON type %v", value)
  9941. }
  9942. var sv *types.InvalidHandshakeTransitionException
  9943. if *v == nil {
  9944. sv = &types.InvalidHandshakeTransitionException{}
  9945. } else {
  9946. sv = *v
  9947. }
  9948. for key, value := range shape {
  9949. switch key {
  9950. case "message", "Message":
  9951. if value != nil {
  9952. jtv, ok := value.(string)
  9953. if !ok {
  9954. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  9955. }
  9956. sv.Message = ptr.String(jtv)
  9957. }
  9958. default:
  9959. _, _ = key, value
  9960. }
  9961. }
  9962. *v = sv
  9963. return nil
  9964. }
  9965. func awsAwsjson11_deserializeDocumentInvalidInputException(v **types.InvalidInputException, value interface{}) error {
  9966. if v == nil {
  9967. return fmt.Errorf("unexpected nil of type %T", v)
  9968. }
  9969. if value == nil {
  9970. return nil
  9971. }
  9972. shape, ok := value.(map[string]interface{})
  9973. if !ok {
  9974. return fmt.Errorf("unexpected JSON type %v", value)
  9975. }
  9976. var sv *types.InvalidInputException
  9977. if *v == nil {
  9978. sv = &types.InvalidInputException{}
  9979. } else {
  9980. sv = *v
  9981. }
  9982. for key, value := range shape {
  9983. switch key {
  9984. case "message", "Message":
  9985. if value != nil {
  9986. jtv, ok := value.(string)
  9987. if !ok {
  9988. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  9989. }
  9990. sv.Message = ptr.String(jtv)
  9991. }
  9992. case "Reason":
  9993. if value != nil {
  9994. jtv, ok := value.(string)
  9995. if !ok {
  9996. return fmt.Errorf("expected InvalidInputExceptionReason to be of type string, got %T instead", value)
  9997. }
  9998. sv.Reason = types.InvalidInputExceptionReason(jtv)
  9999. }
  10000. default:
  10001. _, _ = key, value
  10002. }
  10003. }
  10004. *v = sv
  10005. return nil
  10006. }
  10007. func awsAwsjson11_deserializeDocumentInvalidResponsibilityTransferTransitionException(v **types.InvalidResponsibilityTransferTransitionException, value interface{}) error {
  10008. if v == nil {
  10009. return fmt.Errorf("unexpected nil of type %T", v)
  10010. }
  10011. if value == nil {
  10012. return nil
  10013. }
  10014. shape, ok := value.(map[string]interface{})
  10015. if !ok {
  10016. return fmt.Errorf("unexpected JSON type %v", value)
  10017. }
  10018. var sv *types.InvalidResponsibilityTransferTransitionException
  10019. if *v == nil {
  10020. sv = &types.InvalidResponsibilityTransferTransitionException{}
  10021. } else {
  10022. sv = *v
  10023. }
  10024. for key, value := range shape {
  10025. switch key {
  10026. case "message", "Message":
  10027. if value != nil {
  10028. jtv, ok := value.(string)
  10029. if !ok {
  10030. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  10031. }
  10032. sv.Message = ptr.String(jtv)
  10033. }
  10034. default:
  10035. _, _ = key, value
  10036. }
  10037. }
  10038. *v = sv
  10039. return nil
  10040. }
  10041. func awsAwsjson11_deserializeDocumentMalformedPolicyDocumentException(v **types.MalformedPolicyDocumentException, value interface{}) error {
  10042. if v == nil {
  10043. return fmt.Errorf("unexpected nil of type %T", v)
  10044. }
  10045. if value == nil {
  10046. return nil
  10047. }
  10048. shape, ok := value.(map[string]interface{})
  10049. if !ok {
  10050. return fmt.Errorf("unexpected JSON type %v", value)
  10051. }
  10052. var sv *types.MalformedPolicyDocumentException
  10053. if *v == nil {
  10054. sv = &types.MalformedPolicyDocumentException{}
  10055. } else {
  10056. sv = *v
  10057. }
  10058. for key, value := range shape {
  10059. switch key {
  10060. case "message", "Message":
  10061. if value != nil {
  10062. jtv, ok := value.(string)
  10063. if !ok {
  10064. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  10065. }
  10066. sv.Message = ptr.String(jtv)
  10067. }
  10068. default:
  10069. _, _ = key, value
  10070. }
  10071. }
  10072. *v = sv
  10073. return nil
  10074. }
  10075. func awsAwsjson11_deserializeDocumentMasterCannotLeaveOrganizationException(v **types.MasterCannotLeaveOrganizationException, value interface{}) error {
  10076. if v == nil {
  10077. return fmt.Errorf("unexpected nil of type %T", v)
  10078. }
  10079. if value == nil {
  10080. return nil
  10081. }
  10082. shape, ok := value.(map[string]interface{})
  10083. if !ok {
  10084. return fmt.Errorf("unexpected JSON type %v", value)
  10085. }
  10086. var sv *types.MasterCannotLeaveOrganizationException
  10087. if *v == nil {
  10088. sv = &types.MasterCannotLeaveOrganizationException{}
  10089. } else {
  10090. sv = *v
  10091. }
  10092. for key, value := range shape {
  10093. switch key {
  10094. case "message", "Message":
  10095. if value != nil {
  10096. jtv, ok := value.(string)
  10097. if !ok {
  10098. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  10099. }
  10100. sv.Message = ptr.String(jtv)
  10101. }
  10102. default:
  10103. _, _ = key, value
  10104. }
  10105. }
  10106. *v = sv
  10107. return nil
  10108. }
  10109. func awsAwsjson11_deserializeDocumentOrganization(v **types.Organization, value interface{}) error {
  10110. if v == nil {
  10111. return fmt.Errorf("unexpected nil of type %T", v)
  10112. }
  10113. if value == nil {
  10114. return nil
  10115. }
  10116. shape, ok := value.(map[string]interface{})
  10117. if !ok {
  10118. return fmt.Errorf("unexpected JSON type %v", value)
  10119. }
  10120. var sv *types.Organization
  10121. if *v == nil {
  10122. sv = &types.Organization{}
  10123. } else {
  10124. sv = *v
  10125. }
  10126. for key, value := range shape {
  10127. switch key {
  10128. case "Arn":
  10129. if value != nil {
  10130. jtv, ok := value.(string)
  10131. if !ok {
  10132. return fmt.Errorf("expected OrganizationArn to be of type string, got %T instead", value)
  10133. }
  10134. sv.Arn = ptr.String(jtv)
  10135. }
  10136. case "AvailablePolicyTypes":
  10137. if err := awsAwsjson11_deserializeDocumentPolicyTypes(&sv.AvailablePolicyTypes, value); err != nil {
  10138. return err
  10139. }
  10140. case "FeatureSet":
  10141. if value != nil {
  10142. jtv, ok := value.(string)
  10143. if !ok {
  10144. return fmt.Errorf("expected OrganizationFeatureSet to be of type string, got %T instead", value)
  10145. }
  10146. sv.FeatureSet = types.OrganizationFeatureSet(jtv)
  10147. }
  10148. case "Id":
  10149. if value != nil {
  10150. jtv, ok := value.(string)
  10151. if !ok {
  10152. return fmt.Errorf("expected OrganizationId to be of type string, got %T instead", value)
  10153. }
  10154. sv.Id = ptr.String(jtv)
  10155. }
  10156. case "MasterAccountArn":
  10157. if value != nil {
  10158. jtv, ok := value.(string)
  10159. if !ok {
  10160. return fmt.Errorf("expected AccountArn to be of type string, got %T instead", value)
  10161. }
  10162. sv.MasterAccountArn = ptr.String(jtv)
  10163. }
  10164. case "MasterAccountEmail":
  10165. if value != nil {
  10166. jtv, ok := value.(string)
  10167. if !ok {
  10168. return fmt.Errorf("expected Email to be of type string, got %T instead", value)
  10169. }
  10170. sv.MasterAccountEmail = ptr.String(jtv)
  10171. }
  10172. case "MasterAccountId":
  10173. if value != nil {
  10174. jtv, ok := value.(string)
  10175. if !ok {
  10176. return fmt.Errorf("expected AccountId to be of type string, got %T instead", value)
  10177. }
  10178. sv.MasterAccountId = ptr.String(jtv)
  10179. }
  10180. default:
  10181. _, _ = key, value
  10182. }
  10183. }
  10184. *v = sv
  10185. return nil
  10186. }
  10187. func awsAwsjson11_deserializeDocumentOrganizationalUnit(v **types.OrganizationalUnit, value interface{}) error {
  10188. if v == nil {
  10189. return fmt.Errorf("unexpected nil of type %T", v)
  10190. }
  10191. if value == nil {
  10192. return nil
  10193. }
  10194. shape, ok := value.(map[string]interface{})
  10195. if !ok {
  10196. return fmt.Errorf("unexpected JSON type %v", value)
  10197. }
  10198. var sv *types.OrganizationalUnit
  10199. if *v == nil {
  10200. sv = &types.OrganizationalUnit{}
  10201. } else {
  10202. sv = *v
  10203. }
  10204. for key, value := range shape {
  10205. switch key {
  10206. case "Arn":
  10207. if value != nil {
  10208. jtv, ok := value.(string)
  10209. if !ok {
  10210. return fmt.Errorf("expected OrganizationalUnitArn to be of type string, got %T instead", value)
  10211. }
  10212. sv.Arn = ptr.String(jtv)
  10213. }
  10214. case "Id":
  10215. if value != nil {
  10216. jtv, ok := value.(string)
  10217. if !ok {
  10218. return fmt.Errorf("expected OrganizationalUnitId to be of type string, got %T instead", value)
  10219. }
  10220. sv.Id = ptr.String(jtv)
  10221. }
  10222. case "Name":
  10223. if value != nil {
  10224. jtv, ok := value.(string)
  10225. if !ok {
  10226. return fmt.Errorf("expected OrganizationalUnitName to be of type string, got %T instead", value)
  10227. }
  10228. sv.Name = ptr.String(jtv)
  10229. }
  10230. case "Path":
  10231. if value != nil {
  10232. jtv, ok := value.(string)
  10233. if !ok {
  10234. return fmt.Errorf("expected Path to be of type string, got %T instead", value)
  10235. }
  10236. sv.Path = ptr.String(jtv)
  10237. }
  10238. default:
  10239. _, _ = key, value
  10240. }
  10241. }
  10242. *v = sv
  10243. return nil
  10244. }
  10245. func awsAwsjson11_deserializeDocumentOrganizationalUnitNotEmptyException(v **types.OrganizationalUnitNotEmptyException, value interface{}) error {
  10246. if v == nil {
  10247. return fmt.Errorf("unexpected nil of type %T", v)
  10248. }
  10249. if value == nil {
  10250. return nil
  10251. }
  10252. shape, ok := value.(map[string]interface{})
  10253. if !ok {
  10254. return fmt.Errorf("unexpected JSON type %v", value)
  10255. }
  10256. var sv *types.OrganizationalUnitNotEmptyException
  10257. if *v == nil {
  10258. sv = &types.OrganizationalUnitNotEmptyException{}
  10259. } else {
  10260. sv = *v
  10261. }
  10262. for key, value := range shape {
  10263. switch key {
  10264. case "message", "Message":
  10265. if value != nil {
  10266. jtv, ok := value.(string)
  10267. if !ok {
  10268. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  10269. }
  10270. sv.Message = ptr.String(jtv)
  10271. }
  10272. default:
  10273. _, _ = key, value
  10274. }
  10275. }
  10276. *v = sv
  10277. return nil
  10278. }
  10279. func awsAwsjson11_deserializeDocumentOrganizationalUnitNotFoundException(v **types.OrganizationalUnitNotFoundException, value interface{}) error {
  10280. if v == nil {
  10281. return fmt.Errorf("unexpected nil of type %T", v)
  10282. }
  10283. if value == nil {
  10284. return nil
  10285. }
  10286. shape, ok := value.(map[string]interface{})
  10287. if !ok {
  10288. return fmt.Errorf("unexpected JSON type %v", value)
  10289. }
  10290. var sv *types.OrganizationalUnitNotFoundException
  10291. if *v == nil {
  10292. sv = &types.OrganizationalUnitNotFoundException{}
  10293. } else {
  10294. sv = *v
  10295. }
  10296. for key, value := range shape {
  10297. switch key {
  10298. case "message", "Message":
  10299. if value != nil {
  10300. jtv, ok := value.(string)
  10301. if !ok {
  10302. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  10303. }
  10304. sv.Message = ptr.String(jtv)
  10305. }
  10306. default:
  10307. _, _ = key, value
  10308. }
  10309. }
  10310. *v = sv
  10311. return nil
  10312. }
  10313. func awsAwsjson11_deserializeDocumentOrganizationalUnits(v *[]types.OrganizationalUnit, value interface{}) error {
  10314. if v == nil {
  10315. return fmt.Errorf("unexpected nil of type %T", v)
  10316. }
  10317. if value == nil {
  10318. return nil
  10319. }
  10320. shape, ok := value.([]interface{})
  10321. if !ok {
  10322. return fmt.Errorf("unexpected JSON type %v", value)
  10323. }
  10324. var cv []types.OrganizationalUnit
  10325. if *v == nil {
  10326. cv = []types.OrganizationalUnit{}
  10327. } else {
  10328. cv = *v
  10329. }
  10330. for _, value := range shape {
  10331. var col types.OrganizationalUnit
  10332. destAddr := &col
  10333. if err := awsAwsjson11_deserializeDocumentOrganizationalUnit(&destAddr, value); err != nil {
  10334. return err
  10335. }
  10336. col = *destAddr
  10337. cv = append(cv, col)
  10338. }
  10339. *v = cv
  10340. return nil
  10341. }
  10342. func awsAwsjson11_deserializeDocumentOrganizationNotEmptyException(v **types.OrganizationNotEmptyException, value interface{}) error {
  10343. if v == nil {
  10344. return fmt.Errorf("unexpected nil of type %T", v)
  10345. }
  10346. if value == nil {
  10347. return nil
  10348. }
  10349. shape, ok := value.(map[string]interface{})
  10350. if !ok {
  10351. return fmt.Errorf("unexpected JSON type %v", value)
  10352. }
  10353. var sv *types.OrganizationNotEmptyException
  10354. if *v == nil {
  10355. sv = &types.OrganizationNotEmptyException{}
  10356. } else {
  10357. sv = *v
  10358. }
  10359. for key, value := range shape {
  10360. switch key {
  10361. case "message", "Message":
  10362. if value != nil {
  10363. jtv, ok := value.(string)
  10364. if !ok {
  10365. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  10366. }
  10367. sv.Message = ptr.String(jtv)
  10368. }
  10369. default:
  10370. _, _ = key, value
  10371. }
  10372. }
  10373. *v = sv
  10374. return nil
  10375. }
  10376. func awsAwsjson11_deserializeDocumentParent(v **types.Parent, value interface{}) error {
  10377. if v == nil {
  10378. return fmt.Errorf("unexpected nil of type %T", v)
  10379. }
  10380. if value == nil {
  10381. return nil
  10382. }
  10383. shape, ok := value.(map[string]interface{})
  10384. if !ok {
  10385. return fmt.Errorf("unexpected JSON type %v", value)
  10386. }
  10387. var sv *types.Parent
  10388. if *v == nil {
  10389. sv = &types.Parent{}
  10390. } else {
  10391. sv = *v
  10392. }
  10393. for key, value := range shape {
  10394. switch key {
  10395. case "Id":
  10396. if value != nil {
  10397. jtv, ok := value.(string)
  10398. if !ok {
  10399. return fmt.Errorf("expected ParentId to be of type string, got %T instead", value)
  10400. }
  10401. sv.Id = ptr.String(jtv)
  10402. }
  10403. case "Type":
  10404. if value != nil {
  10405. jtv, ok := value.(string)
  10406. if !ok {
  10407. return fmt.Errorf("expected ParentType to be of type string, got %T instead", value)
  10408. }
  10409. sv.Type = types.ParentType(jtv)
  10410. }
  10411. default:
  10412. _, _ = key, value
  10413. }
  10414. }
  10415. *v = sv
  10416. return nil
  10417. }
  10418. func awsAwsjson11_deserializeDocumentParentNotFoundException(v **types.ParentNotFoundException, value interface{}) error {
  10419. if v == nil {
  10420. return fmt.Errorf("unexpected nil of type %T", v)
  10421. }
  10422. if value == nil {
  10423. return nil
  10424. }
  10425. shape, ok := value.(map[string]interface{})
  10426. if !ok {
  10427. return fmt.Errorf("unexpected JSON type %v", value)
  10428. }
  10429. var sv *types.ParentNotFoundException
  10430. if *v == nil {
  10431. sv = &types.ParentNotFoundException{}
  10432. } else {
  10433. sv = *v
  10434. }
  10435. for key, value := range shape {
  10436. switch key {
  10437. case "message", "Message":
  10438. if value != nil {
  10439. jtv, ok := value.(string)
  10440. if !ok {
  10441. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  10442. }
  10443. sv.Message = ptr.String(jtv)
  10444. }
  10445. default:
  10446. _, _ = key, value
  10447. }
  10448. }
  10449. *v = sv
  10450. return nil
  10451. }
  10452. func awsAwsjson11_deserializeDocumentParents(v *[]types.Parent, value interface{}) error {
  10453. if v == nil {
  10454. return fmt.Errorf("unexpected nil of type %T", v)
  10455. }
  10456. if value == nil {
  10457. return nil
  10458. }
  10459. shape, ok := value.([]interface{})
  10460. if !ok {
  10461. return fmt.Errorf("unexpected JSON type %v", value)
  10462. }
  10463. var cv []types.Parent
  10464. if *v == nil {
  10465. cv = []types.Parent{}
  10466. } else {
  10467. cv = *v
  10468. }
  10469. for _, value := range shape {
  10470. var col types.Parent
  10471. destAddr := &col
  10472. if err := awsAwsjson11_deserializeDocumentParent(&destAddr, value); err != nil {
  10473. return err
  10474. }
  10475. col = *destAddr
  10476. cv = append(cv, col)
  10477. }
  10478. *v = cv
  10479. return nil
  10480. }
  10481. func awsAwsjson11_deserializeDocumentPaths(v *[]string, value interface{}) error {
  10482. if v == nil {
  10483. return fmt.Errorf("unexpected nil of type %T", v)
  10484. }
  10485. if value == nil {
  10486. return nil
  10487. }
  10488. shape, ok := value.([]interface{})
  10489. if !ok {
  10490. return fmt.Errorf("unexpected JSON type %v", value)
  10491. }
  10492. var cv []string
  10493. if *v == nil {
  10494. cv = []string{}
  10495. } else {
  10496. cv = *v
  10497. }
  10498. for _, value := range shape {
  10499. var col string
  10500. if value != nil {
  10501. jtv, ok := value.(string)
  10502. if !ok {
  10503. return fmt.Errorf("expected Path to be of type string, got %T instead", value)
  10504. }
  10505. col = jtv
  10506. }
  10507. cv = append(cv, col)
  10508. }
  10509. *v = cv
  10510. return nil
  10511. }
  10512. func awsAwsjson11_deserializeDocumentPolicies(v *[]types.PolicySummary, value interface{}) error {
  10513. if v == nil {
  10514. return fmt.Errorf("unexpected nil of type %T", v)
  10515. }
  10516. if value == nil {
  10517. return nil
  10518. }
  10519. shape, ok := value.([]interface{})
  10520. if !ok {
  10521. return fmt.Errorf("unexpected JSON type %v", value)
  10522. }
  10523. var cv []types.PolicySummary
  10524. if *v == nil {
  10525. cv = []types.PolicySummary{}
  10526. } else {
  10527. cv = *v
  10528. }
  10529. for _, value := range shape {
  10530. var col types.PolicySummary
  10531. destAddr := &col
  10532. if err := awsAwsjson11_deserializeDocumentPolicySummary(&destAddr, value); err != nil {
  10533. return err
  10534. }
  10535. col = *destAddr
  10536. cv = append(cv, col)
  10537. }
  10538. *v = cv
  10539. return nil
  10540. }
  10541. func awsAwsjson11_deserializeDocumentPolicy(v **types.Policy, value interface{}) error {
  10542. if v == nil {
  10543. return fmt.Errorf("unexpected nil of type %T", v)
  10544. }
  10545. if value == nil {
  10546. return nil
  10547. }
  10548. shape, ok := value.(map[string]interface{})
  10549. if !ok {
  10550. return fmt.Errorf("unexpected JSON type %v", value)
  10551. }
  10552. var sv *types.Policy
  10553. if *v == nil {
  10554. sv = &types.Policy{}
  10555. } else {
  10556. sv = *v
  10557. }
  10558. for key, value := range shape {
  10559. switch key {
  10560. case "Content":
  10561. if value != nil {
  10562. jtv, ok := value.(string)
  10563. if !ok {
  10564. return fmt.Errorf("expected PolicyContent to be of type string, got %T instead", value)
  10565. }
  10566. sv.Content = ptr.String(jtv)
  10567. }
  10568. case "PolicySummary":
  10569. if err := awsAwsjson11_deserializeDocumentPolicySummary(&sv.PolicySummary, value); err != nil {
  10570. return err
  10571. }
  10572. default:
  10573. _, _ = key, value
  10574. }
  10575. }
  10576. *v = sv
  10577. return nil
  10578. }
  10579. func awsAwsjson11_deserializeDocumentPolicyChangesInProgressException(v **types.PolicyChangesInProgressException, value interface{}) error {
  10580. if v == nil {
  10581. return fmt.Errorf("unexpected nil of type %T", v)
  10582. }
  10583. if value == nil {
  10584. return nil
  10585. }
  10586. shape, ok := value.(map[string]interface{})
  10587. if !ok {
  10588. return fmt.Errorf("unexpected JSON type %v", value)
  10589. }
  10590. var sv *types.PolicyChangesInProgressException
  10591. if *v == nil {
  10592. sv = &types.PolicyChangesInProgressException{}
  10593. } else {
  10594. sv = *v
  10595. }
  10596. for key, value := range shape {
  10597. switch key {
  10598. case "message", "Message":
  10599. if value != nil {
  10600. jtv, ok := value.(string)
  10601. if !ok {
  10602. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  10603. }
  10604. sv.Message = ptr.String(jtv)
  10605. }
  10606. default:
  10607. _, _ = key, value
  10608. }
  10609. }
  10610. *v = sv
  10611. return nil
  10612. }
  10613. func awsAwsjson11_deserializeDocumentPolicyIds(v *[]string, value interface{}) error {
  10614. if v == nil {
  10615. return fmt.Errorf("unexpected nil of type %T", v)
  10616. }
  10617. if value == nil {
  10618. return nil
  10619. }
  10620. shape, ok := value.([]interface{})
  10621. if !ok {
  10622. return fmt.Errorf("unexpected JSON type %v", value)
  10623. }
  10624. var cv []string
  10625. if *v == nil {
  10626. cv = []string{}
  10627. } else {
  10628. cv = *v
  10629. }
  10630. for _, value := range shape {
  10631. var col string
  10632. if value != nil {
  10633. jtv, ok := value.(string)
  10634. if !ok {
  10635. return fmt.Errorf("expected PolicyId to be of type string, got %T instead", value)
  10636. }
  10637. col = jtv
  10638. }
  10639. cv = append(cv, col)
  10640. }
  10641. *v = cv
  10642. return nil
  10643. }
  10644. func awsAwsjson11_deserializeDocumentPolicyInUseException(v **types.PolicyInUseException, value interface{}) error {
  10645. if v == nil {
  10646. return fmt.Errorf("unexpected nil of type %T", v)
  10647. }
  10648. if value == nil {
  10649. return nil
  10650. }
  10651. shape, ok := value.(map[string]interface{})
  10652. if !ok {
  10653. return fmt.Errorf("unexpected JSON type %v", value)
  10654. }
  10655. var sv *types.PolicyInUseException
  10656. if *v == nil {
  10657. sv = &types.PolicyInUseException{}
  10658. } else {
  10659. sv = *v
  10660. }
  10661. for key, value := range shape {
  10662. switch key {
  10663. case "message", "Message":
  10664. if value != nil {
  10665. jtv, ok := value.(string)
  10666. if !ok {
  10667. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  10668. }
  10669. sv.Message = ptr.String(jtv)
  10670. }
  10671. default:
  10672. _, _ = key, value
  10673. }
  10674. }
  10675. *v = sv
  10676. return nil
  10677. }
  10678. func awsAwsjson11_deserializeDocumentPolicyNotAttachedException(v **types.PolicyNotAttachedException, value interface{}) error {
  10679. if v == nil {
  10680. return fmt.Errorf("unexpected nil of type %T", v)
  10681. }
  10682. if value == nil {
  10683. return nil
  10684. }
  10685. shape, ok := value.(map[string]interface{})
  10686. if !ok {
  10687. return fmt.Errorf("unexpected JSON type %v", value)
  10688. }
  10689. var sv *types.PolicyNotAttachedException
  10690. if *v == nil {
  10691. sv = &types.PolicyNotAttachedException{}
  10692. } else {
  10693. sv = *v
  10694. }
  10695. for key, value := range shape {
  10696. switch key {
  10697. case "message", "Message":
  10698. if value != nil {
  10699. jtv, ok := value.(string)
  10700. if !ok {
  10701. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  10702. }
  10703. sv.Message = ptr.String(jtv)
  10704. }
  10705. default:
  10706. _, _ = key, value
  10707. }
  10708. }
  10709. *v = sv
  10710. return nil
  10711. }
  10712. func awsAwsjson11_deserializeDocumentPolicyNotFoundException(v **types.PolicyNotFoundException, value interface{}) error {
  10713. if v == nil {
  10714. return fmt.Errorf("unexpected nil of type %T", v)
  10715. }
  10716. if value == nil {
  10717. return nil
  10718. }
  10719. shape, ok := value.(map[string]interface{})
  10720. if !ok {
  10721. return fmt.Errorf("unexpected JSON type %v", value)
  10722. }
  10723. var sv *types.PolicyNotFoundException
  10724. if *v == nil {
  10725. sv = &types.PolicyNotFoundException{}
  10726. } else {
  10727. sv = *v
  10728. }
  10729. for key, value := range shape {
  10730. switch key {
  10731. case "message", "Message":
  10732. if value != nil {
  10733. jtv, ok := value.(string)
  10734. if !ok {
  10735. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  10736. }
  10737. sv.Message = ptr.String(jtv)
  10738. }
  10739. default:
  10740. _, _ = key, value
  10741. }
  10742. }
  10743. *v = sv
  10744. return nil
  10745. }
  10746. func awsAwsjson11_deserializeDocumentPolicySummary(v **types.PolicySummary, value interface{}) error {
  10747. if v == nil {
  10748. return fmt.Errorf("unexpected nil of type %T", v)
  10749. }
  10750. if value == nil {
  10751. return nil
  10752. }
  10753. shape, ok := value.(map[string]interface{})
  10754. if !ok {
  10755. return fmt.Errorf("unexpected JSON type %v", value)
  10756. }
  10757. var sv *types.PolicySummary
  10758. if *v == nil {
  10759. sv = &types.PolicySummary{}
  10760. } else {
  10761. sv = *v
  10762. }
  10763. for key, value := range shape {
  10764. switch key {
  10765. case "Arn":
  10766. if value != nil {
  10767. jtv, ok := value.(string)
  10768. if !ok {
  10769. return fmt.Errorf("expected PolicyArn to be of type string, got %T instead", value)
  10770. }
  10771. sv.Arn = ptr.String(jtv)
  10772. }
  10773. case "AwsManaged":
  10774. if value != nil {
  10775. jtv, ok := value.(bool)
  10776. if !ok {
  10777. return fmt.Errorf("expected AwsManagedPolicy to be of type *bool, got %T instead", value)
  10778. }
  10779. sv.AwsManaged = jtv
  10780. }
  10781. case "Description":
  10782. if value != nil {
  10783. jtv, ok := value.(string)
  10784. if !ok {
  10785. return fmt.Errorf("expected PolicyDescription to be of type string, got %T instead", value)
  10786. }
  10787. sv.Description = ptr.String(jtv)
  10788. }
  10789. case "Id":
  10790. if value != nil {
  10791. jtv, ok := value.(string)
  10792. if !ok {
  10793. return fmt.Errorf("expected PolicyId to be of type string, got %T instead", value)
  10794. }
  10795. sv.Id = ptr.String(jtv)
  10796. }
  10797. case "Name":
  10798. if value != nil {
  10799. jtv, ok := value.(string)
  10800. if !ok {
  10801. return fmt.Errorf("expected PolicyName to be of type string, got %T instead", value)
  10802. }
  10803. sv.Name = ptr.String(jtv)
  10804. }
  10805. case "Type":
  10806. if value != nil {
  10807. jtv, ok := value.(string)
  10808. if !ok {
  10809. return fmt.Errorf("expected PolicyType to be of type string, got %T instead", value)
  10810. }
  10811. sv.Type = types.PolicyType(jtv)
  10812. }
  10813. default:
  10814. _, _ = key, value
  10815. }
  10816. }
  10817. *v = sv
  10818. return nil
  10819. }
  10820. func awsAwsjson11_deserializeDocumentPolicyTargets(v *[]types.PolicyTargetSummary, value interface{}) error {
  10821. if v == nil {
  10822. return fmt.Errorf("unexpected nil of type %T", v)
  10823. }
  10824. if value == nil {
  10825. return nil
  10826. }
  10827. shape, ok := value.([]interface{})
  10828. if !ok {
  10829. return fmt.Errorf("unexpected JSON type %v", value)
  10830. }
  10831. var cv []types.PolicyTargetSummary
  10832. if *v == nil {
  10833. cv = []types.PolicyTargetSummary{}
  10834. } else {
  10835. cv = *v
  10836. }
  10837. for _, value := range shape {
  10838. var col types.PolicyTargetSummary
  10839. destAddr := &col
  10840. if err := awsAwsjson11_deserializeDocumentPolicyTargetSummary(&destAddr, value); err != nil {
  10841. return err
  10842. }
  10843. col = *destAddr
  10844. cv = append(cv, col)
  10845. }
  10846. *v = cv
  10847. return nil
  10848. }
  10849. func awsAwsjson11_deserializeDocumentPolicyTargetSummary(v **types.PolicyTargetSummary, value interface{}) error {
  10850. if v == nil {
  10851. return fmt.Errorf("unexpected nil of type %T", v)
  10852. }
  10853. if value == nil {
  10854. return nil
  10855. }
  10856. shape, ok := value.(map[string]interface{})
  10857. if !ok {
  10858. return fmt.Errorf("unexpected JSON type %v", value)
  10859. }
  10860. var sv *types.PolicyTargetSummary
  10861. if *v == nil {
  10862. sv = &types.PolicyTargetSummary{}
  10863. } else {
  10864. sv = *v
  10865. }
  10866. for key, value := range shape {
  10867. switch key {
  10868. case "Arn":
  10869. if value != nil {
  10870. jtv, ok := value.(string)
  10871. if !ok {
  10872. return fmt.Errorf("expected GenericArn to be of type string, got %T instead", value)
  10873. }
  10874. sv.Arn = ptr.String(jtv)
  10875. }
  10876. case "Name":
  10877. if value != nil {
  10878. jtv, ok := value.(string)
  10879. if !ok {
  10880. return fmt.Errorf("expected TargetName to be of type string, got %T instead", value)
  10881. }
  10882. sv.Name = ptr.String(jtv)
  10883. }
  10884. case "TargetId":
  10885. if value != nil {
  10886. jtv, ok := value.(string)
  10887. if !ok {
  10888. return fmt.Errorf("expected PolicyTargetId to be of type string, got %T instead", value)
  10889. }
  10890. sv.TargetId = ptr.String(jtv)
  10891. }
  10892. case "Type":
  10893. if value != nil {
  10894. jtv, ok := value.(string)
  10895. if !ok {
  10896. return fmt.Errorf("expected TargetType to be of type string, got %T instead", value)
  10897. }
  10898. sv.Type = types.TargetType(jtv)
  10899. }
  10900. default:
  10901. _, _ = key, value
  10902. }
  10903. }
  10904. *v = sv
  10905. return nil
  10906. }
  10907. func awsAwsjson11_deserializeDocumentPolicyTypeAlreadyEnabledException(v **types.PolicyTypeAlreadyEnabledException, value interface{}) error {
  10908. if v == nil {
  10909. return fmt.Errorf("unexpected nil of type %T", v)
  10910. }
  10911. if value == nil {
  10912. return nil
  10913. }
  10914. shape, ok := value.(map[string]interface{})
  10915. if !ok {
  10916. return fmt.Errorf("unexpected JSON type %v", value)
  10917. }
  10918. var sv *types.PolicyTypeAlreadyEnabledException
  10919. if *v == nil {
  10920. sv = &types.PolicyTypeAlreadyEnabledException{}
  10921. } else {
  10922. sv = *v
  10923. }
  10924. for key, value := range shape {
  10925. switch key {
  10926. case "message", "Message":
  10927. if value != nil {
  10928. jtv, ok := value.(string)
  10929. if !ok {
  10930. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  10931. }
  10932. sv.Message = ptr.String(jtv)
  10933. }
  10934. default:
  10935. _, _ = key, value
  10936. }
  10937. }
  10938. *v = sv
  10939. return nil
  10940. }
  10941. func awsAwsjson11_deserializeDocumentPolicyTypeNotAvailableForOrganizationException(v **types.PolicyTypeNotAvailableForOrganizationException, value interface{}) error {
  10942. if v == nil {
  10943. return fmt.Errorf("unexpected nil of type %T", v)
  10944. }
  10945. if value == nil {
  10946. return nil
  10947. }
  10948. shape, ok := value.(map[string]interface{})
  10949. if !ok {
  10950. return fmt.Errorf("unexpected JSON type %v", value)
  10951. }
  10952. var sv *types.PolicyTypeNotAvailableForOrganizationException
  10953. if *v == nil {
  10954. sv = &types.PolicyTypeNotAvailableForOrganizationException{}
  10955. } else {
  10956. sv = *v
  10957. }
  10958. for key, value := range shape {
  10959. switch key {
  10960. case "message", "Message":
  10961. if value != nil {
  10962. jtv, ok := value.(string)
  10963. if !ok {
  10964. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  10965. }
  10966. sv.Message = ptr.String(jtv)
  10967. }
  10968. default:
  10969. _, _ = key, value
  10970. }
  10971. }
  10972. *v = sv
  10973. return nil
  10974. }
  10975. func awsAwsjson11_deserializeDocumentPolicyTypeNotEnabledException(v **types.PolicyTypeNotEnabledException, value interface{}) error {
  10976. if v == nil {
  10977. return fmt.Errorf("unexpected nil of type %T", v)
  10978. }
  10979. if value == nil {
  10980. return nil
  10981. }
  10982. shape, ok := value.(map[string]interface{})
  10983. if !ok {
  10984. return fmt.Errorf("unexpected JSON type %v", value)
  10985. }
  10986. var sv *types.PolicyTypeNotEnabledException
  10987. if *v == nil {
  10988. sv = &types.PolicyTypeNotEnabledException{}
  10989. } else {
  10990. sv = *v
  10991. }
  10992. for key, value := range shape {
  10993. switch key {
  10994. case "message", "Message":
  10995. if value != nil {
  10996. jtv, ok := value.(string)
  10997. if !ok {
  10998. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  10999. }
  11000. sv.Message = ptr.String(jtv)
  11001. }
  11002. default:
  11003. _, _ = key, value
  11004. }
  11005. }
  11006. *v = sv
  11007. return nil
  11008. }
  11009. func awsAwsjson11_deserializeDocumentPolicyTypes(v *[]types.PolicyTypeSummary, value interface{}) error {
  11010. if v == nil {
  11011. return fmt.Errorf("unexpected nil of type %T", v)
  11012. }
  11013. if value == nil {
  11014. return nil
  11015. }
  11016. shape, ok := value.([]interface{})
  11017. if !ok {
  11018. return fmt.Errorf("unexpected JSON type %v", value)
  11019. }
  11020. var cv []types.PolicyTypeSummary
  11021. if *v == nil {
  11022. cv = []types.PolicyTypeSummary{}
  11023. } else {
  11024. cv = *v
  11025. }
  11026. for _, value := range shape {
  11027. var col types.PolicyTypeSummary
  11028. destAddr := &col
  11029. if err := awsAwsjson11_deserializeDocumentPolicyTypeSummary(&destAddr, value); err != nil {
  11030. return err
  11031. }
  11032. col = *destAddr
  11033. cv = append(cv, col)
  11034. }
  11035. *v = cv
  11036. return nil
  11037. }
  11038. func awsAwsjson11_deserializeDocumentPolicyTypeSummary(v **types.PolicyTypeSummary, value interface{}) error {
  11039. if v == nil {
  11040. return fmt.Errorf("unexpected nil of type %T", v)
  11041. }
  11042. if value == nil {
  11043. return nil
  11044. }
  11045. shape, ok := value.(map[string]interface{})
  11046. if !ok {
  11047. return fmt.Errorf("unexpected JSON type %v", value)
  11048. }
  11049. var sv *types.PolicyTypeSummary
  11050. if *v == nil {
  11051. sv = &types.PolicyTypeSummary{}
  11052. } else {
  11053. sv = *v
  11054. }
  11055. for key, value := range shape {
  11056. switch key {
  11057. case "Status":
  11058. if value != nil {
  11059. jtv, ok := value.(string)
  11060. if !ok {
  11061. return fmt.Errorf("expected PolicyTypeStatus to be of type string, got %T instead", value)
  11062. }
  11063. sv.Status = types.PolicyTypeStatus(jtv)
  11064. }
  11065. case "Type":
  11066. if value != nil {
  11067. jtv, ok := value.(string)
  11068. if !ok {
  11069. return fmt.Errorf("expected PolicyType to be of type string, got %T instead", value)
  11070. }
  11071. sv.Type = types.PolicyType(jtv)
  11072. }
  11073. default:
  11074. _, _ = key, value
  11075. }
  11076. }
  11077. *v = sv
  11078. return nil
  11079. }
  11080. func awsAwsjson11_deserializeDocumentResourcePolicy(v **types.ResourcePolicy, value interface{}) error {
  11081. if v == nil {
  11082. return fmt.Errorf("unexpected nil of type %T", v)
  11083. }
  11084. if value == nil {
  11085. return nil
  11086. }
  11087. shape, ok := value.(map[string]interface{})
  11088. if !ok {
  11089. return fmt.Errorf("unexpected JSON type %v", value)
  11090. }
  11091. var sv *types.ResourcePolicy
  11092. if *v == nil {
  11093. sv = &types.ResourcePolicy{}
  11094. } else {
  11095. sv = *v
  11096. }
  11097. for key, value := range shape {
  11098. switch key {
  11099. case "Content":
  11100. if value != nil {
  11101. jtv, ok := value.(string)
  11102. if !ok {
  11103. return fmt.Errorf("expected ResourcePolicyContent to be of type string, got %T instead", value)
  11104. }
  11105. sv.Content = ptr.String(jtv)
  11106. }
  11107. case "ResourcePolicySummary":
  11108. if err := awsAwsjson11_deserializeDocumentResourcePolicySummary(&sv.ResourcePolicySummary, value); err != nil {
  11109. return err
  11110. }
  11111. default:
  11112. _, _ = key, value
  11113. }
  11114. }
  11115. *v = sv
  11116. return nil
  11117. }
  11118. func awsAwsjson11_deserializeDocumentResourcePolicyNotFoundException(v **types.ResourcePolicyNotFoundException, value interface{}) error {
  11119. if v == nil {
  11120. return fmt.Errorf("unexpected nil of type %T", v)
  11121. }
  11122. if value == nil {
  11123. return nil
  11124. }
  11125. shape, ok := value.(map[string]interface{})
  11126. if !ok {
  11127. return fmt.Errorf("unexpected JSON type %v", value)
  11128. }
  11129. var sv *types.ResourcePolicyNotFoundException
  11130. if *v == nil {
  11131. sv = &types.ResourcePolicyNotFoundException{}
  11132. } else {
  11133. sv = *v
  11134. }
  11135. for key, value := range shape {
  11136. switch key {
  11137. case "message", "Message":
  11138. if value != nil {
  11139. jtv, ok := value.(string)
  11140. if !ok {
  11141. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  11142. }
  11143. sv.Message = ptr.String(jtv)
  11144. }
  11145. default:
  11146. _, _ = key, value
  11147. }
  11148. }
  11149. *v = sv
  11150. return nil
  11151. }
  11152. func awsAwsjson11_deserializeDocumentResourcePolicySummary(v **types.ResourcePolicySummary, value interface{}) error {
  11153. if v == nil {
  11154. return fmt.Errorf("unexpected nil of type %T", v)
  11155. }
  11156. if value == nil {
  11157. return nil
  11158. }
  11159. shape, ok := value.(map[string]interface{})
  11160. if !ok {
  11161. return fmt.Errorf("unexpected JSON type %v", value)
  11162. }
  11163. var sv *types.ResourcePolicySummary
  11164. if *v == nil {
  11165. sv = &types.ResourcePolicySummary{}
  11166. } else {
  11167. sv = *v
  11168. }
  11169. for key, value := range shape {
  11170. switch key {
  11171. case "Arn":
  11172. if value != nil {
  11173. jtv, ok := value.(string)
  11174. if !ok {
  11175. return fmt.Errorf("expected ResourcePolicyArn to be of type string, got %T instead", value)
  11176. }
  11177. sv.Arn = ptr.String(jtv)
  11178. }
  11179. case "Id":
  11180. if value != nil {
  11181. jtv, ok := value.(string)
  11182. if !ok {
  11183. return fmt.Errorf("expected ResourcePolicyId to be of type string, got %T instead", value)
  11184. }
  11185. sv.Id = ptr.String(jtv)
  11186. }
  11187. default:
  11188. _, _ = key, value
  11189. }
  11190. }
  11191. *v = sv
  11192. return nil
  11193. }
  11194. func awsAwsjson11_deserializeDocumentResponsibilityTransfer(v **types.ResponsibilityTransfer, value interface{}) error {
  11195. if v == nil {
  11196. return fmt.Errorf("unexpected nil of type %T", v)
  11197. }
  11198. if value == nil {
  11199. return nil
  11200. }
  11201. shape, ok := value.(map[string]interface{})
  11202. if !ok {
  11203. return fmt.Errorf("unexpected JSON type %v", value)
  11204. }
  11205. var sv *types.ResponsibilityTransfer
  11206. if *v == nil {
  11207. sv = &types.ResponsibilityTransfer{}
  11208. } else {
  11209. sv = *v
  11210. }
  11211. for key, value := range shape {
  11212. switch key {
  11213. case "ActiveHandshakeId":
  11214. if value != nil {
  11215. jtv, ok := value.(string)
  11216. if !ok {
  11217. return fmt.Errorf("expected HandshakeId to be of type string, got %T instead", value)
  11218. }
  11219. sv.ActiveHandshakeId = ptr.String(jtv)
  11220. }
  11221. case "Arn":
  11222. if value != nil {
  11223. jtv, ok := value.(string)
  11224. if !ok {
  11225. return fmt.Errorf("expected ResponsibilityTransferArn to be of type string, got %T instead", value)
  11226. }
  11227. sv.Arn = ptr.String(jtv)
  11228. }
  11229. case "EndTimestamp":
  11230. if value != nil {
  11231. switch jtv := value.(type) {
  11232. case json.Number:
  11233. f64, err := jtv.Float64()
  11234. if err != nil {
  11235. return err
  11236. }
  11237. sv.EndTimestamp = ptr.Time(smithytime.ParseEpochSeconds(f64))
  11238. default:
  11239. return fmt.Errorf("expected Timestamp to be a JSON Number, got %T instead", value)
  11240. }
  11241. }
  11242. case "Id":
  11243. if value != nil {
  11244. jtv, ok := value.(string)
  11245. if !ok {
  11246. return fmt.Errorf("expected ResponsibilityTransferId to be of type string, got %T instead", value)
  11247. }
  11248. sv.Id = ptr.String(jtv)
  11249. }
  11250. case "Name":
  11251. if value != nil {
  11252. jtv, ok := value.(string)
  11253. if !ok {
  11254. return fmt.Errorf("expected ResponsibilityTransferName to be of type string, got %T instead", value)
  11255. }
  11256. sv.Name = ptr.String(jtv)
  11257. }
  11258. case "Source":
  11259. if err := awsAwsjson11_deserializeDocumentTransferParticipant(&sv.Source, value); err != nil {
  11260. return err
  11261. }
  11262. case "StartTimestamp":
  11263. if value != nil {
  11264. switch jtv := value.(type) {
  11265. case json.Number:
  11266. f64, err := jtv.Float64()
  11267. if err != nil {
  11268. return err
  11269. }
  11270. sv.StartTimestamp = ptr.Time(smithytime.ParseEpochSeconds(f64))
  11271. default:
  11272. return fmt.Errorf("expected Timestamp to be a JSON Number, got %T instead", value)
  11273. }
  11274. }
  11275. case "Status":
  11276. if value != nil {
  11277. jtv, ok := value.(string)
  11278. if !ok {
  11279. return fmt.Errorf("expected ResponsibilityTransferStatus to be of type string, got %T instead", value)
  11280. }
  11281. sv.Status = types.ResponsibilityTransferStatus(jtv)
  11282. }
  11283. case "Target":
  11284. if err := awsAwsjson11_deserializeDocumentTransferParticipant(&sv.Target, value); err != nil {
  11285. return err
  11286. }
  11287. case "Type":
  11288. if value != nil {
  11289. jtv, ok := value.(string)
  11290. if !ok {
  11291. return fmt.Errorf("expected ResponsibilityTransferType to be of type string, got %T instead", value)
  11292. }
  11293. sv.Type = types.ResponsibilityTransferType(jtv)
  11294. }
  11295. default:
  11296. _, _ = key, value
  11297. }
  11298. }
  11299. *v = sv
  11300. return nil
  11301. }
  11302. func awsAwsjson11_deserializeDocumentResponsibilityTransferAlreadyInStatusException(v **types.ResponsibilityTransferAlreadyInStatusException, value interface{}) error {
  11303. if v == nil {
  11304. return fmt.Errorf("unexpected nil of type %T", v)
  11305. }
  11306. if value == nil {
  11307. return nil
  11308. }
  11309. shape, ok := value.(map[string]interface{})
  11310. if !ok {
  11311. return fmt.Errorf("unexpected JSON type %v", value)
  11312. }
  11313. var sv *types.ResponsibilityTransferAlreadyInStatusException
  11314. if *v == nil {
  11315. sv = &types.ResponsibilityTransferAlreadyInStatusException{}
  11316. } else {
  11317. sv = *v
  11318. }
  11319. for key, value := range shape {
  11320. switch key {
  11321. case "message", "Message":
  11322. if value != nil {
  11323. jtv, ok := value.(string)
  11324. if !ok {
  11325. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  11326. }
  11327. sv.Message = ptr.String(jtv)
  11328. }
  11329. default:
  11330. _, _ = key, value
  11331. }
  11332. }
  11333. *v = sv
  11334. return nil
  11335. }
  11336. func awsAwsjson11_deserializeDocumentResponsibilityTransferNotFoundException(v **types.ResponsibilityTransferNotFoundException, value interface{}) error {
  11337. if v == nil {
  11338. return fmt.Errorf("unexpected nil of type %T", v)
  11339. }
  11340. if value == nil {
  11341. return nil
  11342. }
  11343. shape, ok := value.(map[string]interface{})
  11344. if !ok {
  11345. return fmt.Errorf("unexpected JSON type %v", value)
  11346. }
  11347. var sv *types.ResponsibilityTransferNotFoundException
  11348. if *v == nil {
  11349. sv = &types.ResponsibilityTransferNotFoundException{}
  11350. } else {
  11351. sv = *v
  11352. }
  11353. for key, value := range shape {
  11354. switch key {
  11355. case "message", "Message":
  11356. if value != nil {
  11357. jtv, ok := value.(string)
  11358. if !ok {
  11359. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  11360. }
  11361. sv.Message = ptr.String(jtv)
  11362. }
  11363. default:
  11364. _, _ = key, value
  11365. }
  11366. }
  11367. *v = sv
  11368. return nil
  11369. }
  11370. func awsAwsjson11_deserializeDocumentResponsibilityTransfers(v *[]types.ResponsibilityTransfer, value interface{}) error {
  11371. if v == nil {
  11372. return fmt.Errorf("unexpected nil of type %T", v)
  11373. }
  11374. if value == nil {
  11375. return nil
  11376. }
  11377. shape, ok := value.([]interface{})
  11378. if !ok {
  11379. return fmt.Errorf("unexpected JSON type %v", value)
  11380. }
  11381. var cv []types.ResponsibilityTransfer
  11382. if *v == nil {
  11383. cv = []types.ResponsibilityTransfer{}
  11384. } else {
  11385. cv = *v
  11386. }
  11387. for _, value := range shape {
  11388. var col types.ResponsibilityTransfer
  11389. destAddr := &col
  11390. if err := awsAwsjson11_deserializeDocumentResponsibilityTransfer(&destAddr, value); err != nil {
  11391. return err
  11392. }
  11393. col = *destAddr
  11394. cv = append(cv, col)
  11395. }
  11396. *v = cv
  11397. return nil
  11398. }
  11399. func awsAwsjson11_deserializeDocumentRoot(v **types.Root, value interface{}) error {
  11400. if v == nil {
  11401. return fmt.Errorf("unexpected nil of type %T", v)
  11402. }
  11403. if value == nil {
  11404. return nil
  11405. }
  11406. shape, ok := value.(map[string]interface{})
  11407. if !ok {
  11408. return fmt.Errorf("unexpected JSON type %v", value)
  11409. }
  11410. var sv *types.Root
  11411. if *v == nil {
  11412. sv = &types.Root{}
  11413. } else {
  11414. sv = *v
  11415. }
  11416. for key, value := range shape {
  11417. switch key {
  11418. case "Arn":
  11419. if value != nil {
  11420. jtv, ok := value.(string)
  11421. if !ok {
  11422. return fmt.Errorf("expected RootArn to be of type string, got %T instead", value)
  11423. }
  11424. sv.Arn = ptr.String(jtv)
  11425. }
  11426. case "Id":
  11427. if value != nil {
  11428. jtv, ok := value.(string)
  11429. if !ok {
  11430. return fmt.Errorf("expected RootId to be of type string, got %T instead", value)
  11431. }
  11432. sv.Id = ptr.String(jtv)
  11433. }
  11434. case "Name":
  11435. if value != nil {
  11436. jtv, ok := value.(string)
  11437. if !ok {
  11438. return fmt.Errorf("expected RootName to be of type string, got %T instead", value)
  11439. }
  11440. sv.Name = ptr.String(jtv)
  11441. }
  11442. case "PolicyTypes":
  11443. if err := awsAwsjson11_deserializeDocumentPolicyTypes(&sv.PolicyTypes, value); err != nil {
  11444. return err
  11445. }
  11446. default:
  11447. _, _ = key, value
  11448. }
  11449. }
  11450. *v = sv
  11451. return nil
  11452. }
  11453. func awsAwsjson11_deserializeDocumentRootNotFoundException(v **types.RootNotFoundException, value interface{}) error {
  11454. if v == nil {
  11455. return fmt.Errorf("unexpected nil of type %T", v)
  11456. }
  11457. if value == nil {
  11458. return nil
  11459. }
  11460. shape, ok := value.(map[string]interface{})
  11461. if !ok {
  11462. return fmt.Errorf("unexpected JSON type %v", value)
  11463. }
  11464. var sv *types.RootNotFoundException
  11465. if *v == nil {
  11466. sv = &types.RootNotFoundException{}
  11467. } else {
  11468. sv = *v
  11469. }
  11470. for key, value := range shape {
  11471. switch key {
  11472. case "message", "Message":
  11473. if value != nil {
  11474. jtv, ok := value.(string)
  11475. if !ok {
  11476. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  11477. }
  11478. sv.Message = ptr.String(jtv)
  11479. }
  11480. default:
  11481. _, _ = key, value
  11482. }
  11483. }
  11484. *v = sv
  11485. return nil
  11486. }
  11487. func awsAwsjson11_deserializeDocumentRoots(v *[]types.Root, value interface{}) error {
  11488. if v == nil {
  11489. return fmt.Errorf("unexpected nil of type %T", v)
  11490. }
  11491. if value == nil {
  11492. return nil
  11493. }
  11494. shape, ok := value.([]interface{})
  11495. if !ok {
  11496. return fmt.Errorf("unexpected JSON type %v", value)
  11497. }
  11498. var cv []types.Root
  11499. if *v == nil {
  11500. cv = []types.Root{}
  11501. } else {
  11502. cv = *v
  11503. }
  11504. for _, value := range shape {
  11505. var col types.Root
  11506. destAddr := &col
  11507. if err := awsAwsjson11_deserializeDocumentRoot(&destAddr, value); err != nil {
  11508. return err
  11509. }
  11510. col = *destAddr
  11511. cv = append(cv, col)
  11512. }
  11513. *v = cv
  11514. return nil
  11515. }
  11516. func awsAwsjson11_deserializeDocumentServiceException(v **types.ServiceException, value interface{}) error {
  11517. if v == nil {
  11518. return fmt.Errorf("unexpected nil of type %T", v)
  11519. }
  11520. if value == nil {
  11521. return nil
  11522. }
  11523. shape, ok := value.(map[string]interface{})
  11524. if !ok {
  11525. return fmt.Errorf("unexpected JSON type %v", value)
  11526. }
  11527. var sv *types.ServiceException
  11528. if *v == nil {
  11529. sv = &types.ServiceException{}
  11530. } else {
  11531. sv = *v
  11532. }
  11533. for key, value := range shape {
  11534. switch key {
  11535. case "message", "Message":
  11536. if value != nil {
  11537. jtv, ok := value.(string)
  11538. if !ok {
  11539. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  11540. }
  11541. sv.Message = ptr.String(jtv)
  11542. }
  11543. default:
  11544. _, _ = key, value
  11545. }
  11546. }
  11547. *v = sv
  11548. return nil
  11549. }
  11550. func awsAwsjson11_deserializeDocumentSourceParentNotFoundException(v **types.SourceParentNotFoundException, value interface{}) error {
  11551. if v == nil {
  11552. return fmt.Errorf("unexpected nil of type %T", v)
  11553. }
  11554. if value == nil {
  11555. return nil
  11556. }
  11557. shape, ok := value.(map[string]interface{})
  11558. if !ok {
  11559. return fmt.Errorf("unexpected JSON type %v", value)
  11560. }
  11561. var sv *types.SourceParentNotFoundException
  11562. if *v == nil {
  11563. sv = &types.SourceParentNotFoundException{}
  11564. } else {
  11565. sv = *v
  11566. }
  11567. for key, value := range shape {
  11568. switch key {
  11569. case "message", "Message":
  11570. if value != nil {
  11571. jtv, ok := value.(string)
  11572. if !ok {
  11573. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  11574. }
  11575. sv.Message = ptr.String(jtv)
  11576. }
  11577. default:
  11578. _, _ = key, value
  11579. }
  11580. }
  11581. *v = sv
  11582. return nil
  11583. }
  11584. func awsAwsjson11_deserializeDocumentTag(v **types.Tag, value interface{}) error {
  11585. if v == nil {
  11586. return fmt.Errorf("unexpected nil of type %T", v)
  11587. }
  11588. if value == nil {
  11589. return nil
  11590. }
  11591. shape, ok := value.(map[string]interface{})
  11592. if !ok {
  11593. return fmt.Errorf("unexpected JSON type %v", value)
  11594. }
  11595. var sv *types.Tag
  11596. if *v == nil {
  11597. sv = &types.Tag{}
  11598. } else {
  11599. sv = *v
  11600. }
  11601. for key, value := range shape {
  11602. switch key {
  11603. case "Key":
  11604. if value != nil {
  11605. jtv, ok := value.(string)
  11606. if !ok {
  11607. return fmt.Errorf("expected TagKey to be of type string, got %T instead", value)
  11608. }
  11609. sv.Key = ptr.String(jtv)
  11610. }
  11611. case "Value":
  11612. if value != nil {
  11613. jtv, ok := value.(string)
  11614. if !ok {
  11615. return fmt.Errorf("expected TagValue to be of type string, got %T instead", value)
  11616. }
  11617. sv.Value = ptr.String(jtv)
  11618. }
  11619. default:
  11620. _, _ = key, value
  11621. }
  11622. }
  11623. *v = sv
  11624. return nil
  11625. }
  11626. func awsAwsjson11_deserializeDocumentTags(v *[]types.Tag, value interface{}) error {
  11627. if v == nil {
  11628. return fmt.Errorf("unexpected nil of type %T", v)
  11629. }
  11630. if value == nil {
  11631. return nil
  11632. }
  11633. shape, ok := value.([]interface{})
  11634. if !ok {
  11635. return fmt.Errorf("unexpected JSON type %v", value)
  11636. }
  11637. var cv []types.Tag
  11638. if *v == nil {
  11639. cv = []types.Tag{}
  11640. } else {
  11641. cv = *v
  11642. }
  11643. for _, value := range shape {
  11644. var col types.Tag
  11645. destAddr := &col
  11646. if err := awsAwsjson11_deserializeDocumentTag(&destAddr, value); err != nil {
  11647. return err
  11648. }
  11649. col = *destAddr
  11650. cv = append(cv, col)
  11651. }
  11652. *v = cv
  11653. return nil
  11654. }
  11655. func awsAwsjson11_deserializeDocumentTargetNotFoundException(v **types.TargetNotFoundException, value interface{}) error {
  11656. if v == nil {
  11657. return fmt.Errorf("unexpected nil of type %T", v)
  11658. }
  11659. if value == nil {
  11660. return nil
  11661. }
  11662. shape, ok := value.(map[string]interface{})
  11663. if !ok {
  11664. return fmt.Errorf("unexpected JSON type %v", value)
  11665. }
  11666. var sv *types.TargetNotFoundException
  11667. if *v == nil {
  11668. sv = &types.TargetNotFoundException{}
  11669. } else {
  11670. sv = *v
  11671. }
  11672. for key, value := range shape {
  11673. switch key {
  11674. case "message", "Message":
  11675. if value != nil {
  11676. jtv, ok := value.(string)
  11677. if !ok {
  11678. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  11679. }
  11680. sv.Message = ptr.String(jtv)
  11681. }
  11682. default:
  11683. _, _ = key, value
  11684. }
  11685. }
  11686. *v = sv
  11687. return nil
  11688. }
  11689. func awsAwsjson11_deserializeDocumentTooManyRequestsException(v **types.TooManyRequestsException, value interface{}) error {
  11690. if v == nil {
  11691. return fmt.Errorf("unexpected nil of type %T", v)
  11692. }
  11693. if value == nil {
  11694. return nil
  11695. }
  11696. shape, ok := value.(map[string]interface{})
  11697. if !ok {
  11698. return fmt.Errorf("unexpected JSON type %v", value)
  11699. }
  11700. var sv *types.TooManyRequestsException
  11701. if *v == nil {
  11702. sv = &types.TooManyRequestsException{}
  11703. } else {
  11704. sv = *v
  11705. }
  11706. for key, value := range shape {
  11707. switch key {
  11708. case "message", "Message":
  11709. if value != nil {
  11710. jtv, ok := value.(string)
  11711. if !ok {
  11712. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  11713. }
  11714. sv.Message = ptr.String(jtv)
  11715. }
  11716. case "Type":
  11717. if value != nil {
  11718. jtv, ok := value.(string)
  11719. if !ok {
  11720. return fmt.Errorf("expected ExceptionType to be of type string, got %T instead", value)
  11721. }
  11722. sv.Type = ptr.String(jtv)
  11723. }
  11724. default:
  11725. _, _ = key, value
  11726. }
  11727. }
  11728. *v = sv
  11729. return nil
  11730. }
  11731. func awsAwsjson11_deserializeDocumentTransferParticipant(v **types.TransferParticipant, value interface{}) error {
  11732. if v == nil {
  11733. return fmt.Errorf("unexpected nil of type %T", v)
  11734. }
  11735. if value == nil {
  11736. return nil
  11737. }
  11738. shape, ok := value.(map[string]interface{})
  11739. if !ok {
  11740. return fmt.Errorf("unexpected JSON type %v", value)
  11741. }
  11742. var sv *types.TransferParticipant
  11743. if *v == nil {
  11744. sv = &types.TransferParticipant{}
  11745. } else {
  11746. sv = *v
  11747. }
  11748. for key, value := range shape {
  11749. switch key {
  11750. case "ManagementAccountEmail":
  11751. if value != nil {
  11752. jtv, ok := value.(string)
  11753. if !ok {
  11754. return fmt.Errorf("expected Email to be of type string, got %T instead", value)
  11755. }
  11756. sv.ManagementAccountEmail = ptr.String(jtv)
  11757. }
  11758. case "ManagementAccountId":
  11759. if value != nil {
  11760. jtv, ok := value.(string)
  11761. if !ok {
  11762. return fmt.Errorf("expected AccountId to be of type string, got %T instead", value)
  11763. }
  11764. sv.ManagementAccountId = ptr.String(jtv)
  11765. }
  11766. default:
  11767. _, _ = key, value
  11768. }
  11769. }
  11770. *v = sv
  11771. return nil
  11772. }
  11773. func awsAwsjson11_deserializeDocumentUnsupportedAPIEndpointException(v **types.UnsupportedAPIEndpointException, value interface{}) error {
  11774. if v == nil {
  11775. return fmt.Errorf("unexpected nil of type %T", v)
  11776. }
  11777. if value == nil {
  11778. return nil
  11779. }
  11780. shape, ok := value.(map[string]interface{})
  11781. if !ok {
  11782. return fmt.Errorf("unexpected JSON type %v", value)
  11783. }
  11784. var sv *types.UnsupportedAPIEndpointException
  11785. if *v == nil {
  11786. sv = &types.UnsupportedAPIEndpointException{}
  11787. } else {
  11788. sv = *v
  11789. }
  11790. for key, value := range shape {
  11791. switch key {
  11792. case "message", "Message":
  11793. if value != nil {
  11794. jtv, ok := value.(string)
  11795. if !ok {
  11796. return fmt.Errorf("expected ExceptionMessage to be of type string, got %T instead", value)
  11797. }
  11798. sv.Message = ptr.String(jtv)
  11799. }
  11800. default:
  11801. _, _ = key, value
  11802. }
  11803. }
  11804. *v = sv
  11805. return nil
  11806. }
  11807. func awsAwsjson11_deserializeOpDocumentAcceptHandshakeOutput(v **AcceptHandshakeOutput, value interface{}) error {
  11808. if v == nil {
  11809. return fmt.Errorf("unexpected nil of type %T", v)
  11810. }
  11811. if value == nil {
  11812. return nil
  11813. }
  11814. shape, ok := value.(map[string]interface{})
  11815. if !ok {
  11816. return fmt.Errorf("unexpected JSON type %v", value)
  11817. }
  11818. var sv *AcceptHandshakeOutput
  11819. if *v == nil {
  11820. sv = &AcceptHandshakeOutput{}
  11821. } else {
  11822. sv = *v
  11823. }
  11824. for key, value := range shape {
  11825. switch key {
  11826. case "Handshake":
  11827. if err := awsAwsjson11_deserializeDocumentHandshake(&sv.Handshake, value); err != nil {
  11828. return err
  11829. }
  11830. default:
  11831. _, _ = key, value
  11832. }
  11833. }
  11834. *v = sv
  11835. return nil
  11836. }
  11837. func awsAwsjson11_deserializeOpDocumentCancelHandshakeOutput(v **CancelHandshakeOutput, value interface{}) error {
  11838. if v == nil {
  11839. return fmt.Errorf("unexpected nil of type %T", v)
  11840. }
  11841. if value == nil {
  11842. return nil
  11843. }
  11844. shape, ok := value.(map[string]interface{})
  11845. if !ok {
  11846. return fmt.Errorf("unexpected JSON type %v", value)
  11847. }
  11848. var sv *CancelHandshakeOutput
  11849. if *v == nil {
  11850. sv = &CancelHandshakeOutput{}
  11851. } else {
  11852. sv = *v
  11853. }
  11854. for key, value := range shape {
  11855. switch key {
  11856. case "Handshake":
  11857. if err := awsAwsjson11_deserializeDocumentHandshake(&sv.Handshake, value); err != nil {
  11858. return err
  11859. }
  11860. default:
  11861. _, _ = key, value
  11862. }
  11863. }
  11864. *v = sv
  11865. return nil
  11866. }
  11867. func awsAwsjson11_deserializeOpDocumentCreateAccountOutput(v **CreateAccountOutput, value interface{}) error {
  11868. if v == nil {
  11869. return fmt.Errorf("unexpected nil of type %T", v)
  11870. }
  11871. if value == nil {
  11872. return nil
  11873. }
  11874. shape, ok := value.(map[string]interface{})
  11875. if !ok {
  11876. return fmt.Errorf("unexpected JSON type %v", value)
  11877. }
  11878. var sv *CreateAccountOutput
  11879. if *v == nil {
  11880. sv = &CreateAccountOutput{}
  11881. } else {
  11882. sv = *v
  11883. }
  11884. for key, value := range shape {
  11885. switch key {
  11886. case "CreateAccountStatus":
  11887. if err := awsAwsjson11_deserializeDocumentCreateAccountStatus(&sv.CreateAccountStatus, value); err != nil {
  11888. return err
  11889. }
  11890. default:
  11891. _, _ = key, value
  11892. }
  11893. }
  11894. *v = sv
  11895. return nil
  11896. }
  11897. func awsAwsjson11_deserializeOpDocumentCreateGovCloudAccountOutput(v **CreateGovCloudAccountOutput, value interface{}) error {
  11898. if v == nil {
  11899. return fmt.Errorf("unexpected nil of type %T", v)
  11900. }
  11901. if value == nil {
  11902. return nil
  11903. }
  11904. shape, ok := value.(map[string]interface{})
  11905. if !ok {
  11906. return fmt.Errorf("unexpected JSON type %v", value)
  11907. }
  11908. var sv *CreateGovCloudAccountOutput
  11909. if *v == nil {
  11910. sv = &CreateGovCloudAccountOutput{}
  11911. } else {
  11912. sv = *v
  11913. }
  11914. for key, value := range shape {
  11915. switch key {
  11916. case "CreateAccountStatus":
  11917. if err := awsAwsjson11_deserializeDocumentCreateAccountStatus(&sv.CreateAccountStatus, value); err != nil {
  11918. return err
  11919. }
  11920. default:
  11921. _, _ = key, value
  11922. }
  11923. }
  11924. *v = sv
  11925. return nil
  11926. }
  11927. func awsAwsjson11_deserializeOpDocumentCreateOrganizationalUnitOutput(v **CreateOrganizationalUnitOutput, value interface{}) error {
  11928. if v == nil {
  11929. return fmt.Errorf("unexpected nil of type %T", v)
  11930. }
  11931. if value == nil {
  11932. return nil
  11933. }
  11934. shape, ok := value.(map[string]interface{})
  11935. if !ok {
  11936. return fmt.Errorf("unexpected JSON type %v", value)
  11937. }
  11938. var sv *CreateOrganizationalUnitOutput
  11939. if *v == nil {
  11940. sv = &CreateOrganizationalUnitOutput{}
  11941. } else {
  11942. sv = *v
  11943. }
  11944. for key, value := range shape {
  11945. switch key {
  11946. case "OrganizationalUnit":
  11947. if err := awsAwsjson11_deserializeDocumentOrganizationalUnit(&sv.OrganizationalUnit, value); err != nil {
  11948. return err
  11949. }
  11950. default:
  11951. _, _ = key, value
  11952. }
  11953. }
  11954. *v = sv
  11955. return nil
  11956. }
  11957. func awsAwsjson11_deserializeOpDocumentCreateOrganizationOutput(v **CreateOrganizationOutput, value interface{}) error {
  11958. if v == nil {
  11959. return fmt.Errorf("unexpected nil of type %T", v)
  11960. }
  11961. if value == nil {
  11962. return nil
  11963. }
  11964. shape, ok := value.(map[string]interface{})
  11965. if !ok {
  11966. return fmt.Errorf("unexpected JSON type %v", value)
  11967. }
  11968. var sv *CreateOrganizationOutput
  11969. if *v == nil {
  11970. sv = &CreateOrganizationOutput{}
  11971. } else {
  11972. sv = *v
  11973. }
  11974. for key, value := range shape {
  11975. switch key {
  11976. case "Organization":
  11977. if err := awsAwsjson11_deserializeDocumentOrganization(&sv.Organization, value); err != nil {
  11978. return err
  11979. }
  11980. default:
  11981. _, _ = key, value
  11982. }
  11983. }
  11984. *v = sv
  11985. return nil
  11986. }
  11987. func awsAwsjson11_deserializeOpDocumentCreatePolicyOutput(v **CreatePolicyOutput, value interface{}) error {
  11988. if v == nil {
  11989. return fmt.Errorf("unexpected nil of type %T", v)
  11990. }
  11991. if value == nil {
  11992. return nil
  11993. }
  11994. shape, ok := value.(map[string]interface{})
  11995. if !ok {
  11996. return fmt.Errorf("unexpected JSON type %v", value)
  11997. }
  11998. var sv *CreatePolicyOutput
  11999. if *v == nil {
  12000. sv = &CreatePolicyOutput{}
  12001. } else {
  12002. sv = *v
  12003. }
  12004. for key, value := range shape {
  12005. switch key {
  12006. case "Policy":
  12007. if err := awsAwsjson11_deserializeDocumentPolicy(&sv.Policy, value); err != nil {
  12008. return err
  12009. }
  12010. default:
  12011. _, _ = key, value
  12012. }
  12013. }
  12014. *v = sv
  12015. return nil
  12016. }
  12017. func awsAwsjson11_deserializeOpDocumentDeclineHandshakeOutput(v **DeclineHandshakeOutput, value interface{}) error {
  12018. if v == nil {
  12019. return fmt.Errorf("unexpected nil of type %T", v)
  12020. }
  12021. if value == nil {
  12022. return nil
  12023. }
  12024. shape, ok := value.(map[string]interface{})
  12025. if !ok {
  12026. return fmt.Errorf("unexpected JSON type %v", value)
  12027. }
  12028. var sv *DeclineHandshakeOutput
  12029. if *v == nil {
  12030. sv = &DeclineHandshakeOutput{}
  12031. } else {
  12032. sv = *v
  12033. }
  12034. for key, value := range shape {
  12035. switch key {
  12036. case "Handshake":
  12037. if err := awsAwsjson11_deserializeDocumentHandshake(&sv.Handshake, value); err != nil {
  12038. return err
  12039. }
  12040. default:
  12041. _, _ = key, value
  12042. }
  12043. }
  12044. *v = sv
  12045. return nil
  12046. }
  12047. func awsAwsjson11_deserializeOpDocumentDescribeAccountOutput(v **DescribeAccountOutput, value interface{}) error {
  12048. if v == nil {
  12049. return fmt.Errorf("unexpected nil of type %T", v)
  12050. }
  12051. if value == nil {
  12052. return nil
  12053. }
  12054. shape, ok := value.(map[string]interface{})
  12055. if !ok {
  12056. return fmt.Errorf("unexpected JSON type %v", value)
  12057. }
  12058. var sv *DescribeAccountOutput
  12059. if *v == nil {
  12060. sv = &DescribeAccountOutput{}
  12061. } else {
  12062. sv = *v
  12063. }
  12064. for key, value := range shape {
  12065. switch key {
  12066. case "Account":
  12067. if err := awsAwsjson11_deserializeDocumentAccount(&sv.Account, value); err != nil {
  12068. return err
  12069. }
  12070. default:
  12071. _, _ = key, value
  12072. }
  12073. }
  12074. *v = sv
  12075. return nil
  12076. }
  12077. func awsAwsjson11_deserializeOpDocumentDescribeCreateAccountStatusOutput(v **DescribeCreateAccountStatusOutput, value interface{}) error {
  12078. if v == nil {
  12079. return fmt.Errorf("unexpected nil of type %T", v)
  12080. }
  12081. if value == nil {
  12082. return nil
  12083. }
  12084. shape, ok := value.(map[string]interface{})
  12085. if !ok {
  12086. return fmt.Errorf("unexpected JSON type %v", value)
  12087. }
  12088. var sv *DescribeCreateAccountStatusOutput
  12089. if *v == nil {
  12090. sv = &DescribeCreateAccountStatusOutput{}
  12091. } else {
  12092. sv = *v
  12093. }
  12094. for key, value := range shape {
  12095. switch key {
  12096. case "CreateAccountStatus":
  12097. if err := awsAwsjson11_deserializeDocumentCreateAccountStatus(&sv.CreateAccountStatus, value); err != nil {
  12098. return err
  12099. }
  12100. default:
  12101. _, _ = key, value
  12102. }
  12103. }
  12104. *v = sv
  12105. return nil
  12106. }
  12107. func awsAwsjson11_deserializeOpDocumentDescribeEffectivePolicyOutput(v **DescribeEffectivePolicyOutput, value interface{}) error {
  12108. if v == nil {
  12109. return fmt.Errorf("unexpected nil of type %T", v)
  12110. }
  12111. if value == nil {
  12112. return nil
  12113. }
  12114. shape, ok := value.(map[string]interface{})
  12115. if !ok {
  12116. return fmt.Errorf("unexpected JSON type %v", value)
  12117. }
  12118. var sv *DescribeEffectivePolicyOutput
  12119. if *v == nil {
  12120. sv = &DescribeEffectivePolicyOutput{}
  12121. } else {
  12122. sv = *v
  12123. }
  12124. for key, value := range shape {
  12125. switch key {
  12126. case "EffectivePolicy":
  12127. if err := awsAwsjson11_deserializeDocumentEffectivePolicy(&sv.EffectivePolicy, value); err != nil {
  12128. return err
  12129. }
  12130. default:
  12131. _, _ = key, value
  12132. }
  12133. }
  12134. *v = sv
  12135. return nil
  12136. }
  12137. func awsAwsjson11_deserializeOpDocumentDescribeHandshakeOutput(v **DescribeHandshakeOutput, value interface{}) error {
  12138. if v == nil {
  12139. return fmt.Errorf("unexpected nil of type %T", v)
  12140. }
  12141. if value == nil {
  12142. return nil
  12143. }
  12144. shape, ok := value.(map[string]interface{})
  12145. if !ok {
  12146. return fmt.Errorf("unexpected JSON type %v", value)
  12147. }
  12148. var sv *DescribeHandshakeOutput
  12149. if *v == nil {
  12150. sv = &DescribeHandshakeOutput{}
  12151. } else {
  12152. sv = *v
  12153. }
  12154. for key, value := range shape {
  12155. switch key {
  12156. case "Handshake":
  12157. if err := awsAwsjson11_deserializeDocumentHandshake(&sv.Handshake, value); err != nil {
  12158. return err
  12159. }
  12160. default:
  12161. _, _ = key, value
  12162. }
  12163. }
  12164. *v = sv
  12165. return nil
  12166. }
  12167. func awsAwsjson11_deserializeOpDocumentDescribeOrganizationalUnitOutput(v **DescribeOrganizationalUnitOutput, value interface{}) error {
  12168. if v == nil {
  12169. return fmt.Errorf("unexpected nil of type %T", v)
  12170. }
  12171. if value == nil {
  12172. return nil
  12173. }
  12174. shape, ok := value.(map[string]interface{})
  12175. if !ok {
  12176. return fmt.Errorf("unexpected JSON type %v", value)
  12177. }
  12178. var sv *DescribeOrganizationalUnitOutput
  12179. if *v == nil {
  12180. sv = &DescribeOrganizationalUnitOutput{}
  12181. } else {
  12182. sv = *v
  12183. }
  12184. for key, value := range shape {
  12185. switch key {
  12186. case "OrganizationalUnit":
  12187. if err := awsAwsjson11_deserializeDocumentOrganizationalUnit(&sv.OrganizationalUnit, value); err != nil {
  12188. return err
  12189. }
  12190. default:
  12191. _, _ = key, value
  12192. }
  12193. }
  12194. *v = sv
  12195. return nil
  12196. }
  12197. func awsAwsjson11_deserializeOpDocumentDescribeOrganizationOutput(v **DescribeOrganizationOutput, value interface{}) error {
  12198. if v == nil {
  12199. return fmt.Errorf("unexpected nil of type %T", v)
  12200. }
  12201. if value == nil {
  12202. return nil
  12203. }
  12204. shape, ok := value.(map[string]interface{})
  12205. if !ok {
  12206. return fmt.Errorf("unexpected JSON type %v", value)
  12207. }
  12208. var sv *DescribeOrganizationOutput
  12209. if *v == nil {
  12210. sv = &DescribeOrganizationOutput{}
  12211. } else {
  12212. sv = *v
  12213. }
  12214. for key, value := range shape {
  12215. switch key {
  12216. case "Organization":
  12217. if err := awsAwsjson11_deserializeDocumentOrganization(&sv.Organization, value); err != nil {
  12218. return err
  12219. }
  12220. default:
  12221. _, _ = key, value
  12222. }
  12223. }
  12224. *v = sv
  12225. return nil
  12226. }
  12227. func awsAwsjson11_deserializeOpDocumentDescribePolicyOutput(v **DescribePolicyOutput, value interface{}) error {
  12228. if v == nil {
  12229. return fmt.Errorf("unexpected nil of type %T", v)
  12230. }
  12231. if value == nil {
  12232. return nil
  12233. }
  12234. shape, ok := value.(map[string]interface{})
  12235. if !ok {
  12236. return fmt.Errorf("unexpected JSON type %v", value)
  12237. }
  12238. var sv *DescribePolicyOutput
  12239. if *v == nil {
  12240. sv = &DescribePolicyOutput{}
  12241. } else {
  12242. sv = *v
  12243. }
  12244. for key, value := range shape {
  12245. switch key {
  12246. case "Policy":
  12247. if err := awsAwsjson11_deserializeDocumentPolicy(&sv.Policy, value); err != nil {
  12248. return err
  12249. }
  12250. default:
  12251. _, _ = key, value
  12252. }
  12253. }
  12254. *v = sv
  12255. return nil
  12256. }
  12257. func awsAwsjson11_deserializeOpDocumentDescribeResourcePolicyOutput(v **DescribeResourcePolicyOutput, value interface{}) error {
  12258. if v == nil {
  12259. return fmt.Errorf("unexpected nil of type %T", v)
  12260. }
  12261. if value == nil {
  12262. return nil
  12263. }
  12264. shape, ok := value.(map[string]interface{})
  12265. if !ok {
  12266. return fmt.Errorf("unexpected JSON type %v", value)
  12267. }
  12268. var sv *DescribeResourcePolicyOutput
  12269. if *v == nil {
  12270. sv = &DescribeResourcePolicyOutput{}
  12271. } else {
  12272. sv = *v
  12273. }
  12274. for key, value := range shape {
  12275. switch key {
  12276. case "ResourcePolicy":
  12277. if err := awsAwsjson11_deserializeDocumentResourcePolicy(&sv.ResourcePolicy, value); err != nil {
  12278. return err
  12279. }
  12280. default:
  12281. _, _ = key, value
  12282. }
  12283. }
  12284. *v = sv
  12285. return nil
  12286. }
  12287. func awsAwsjson11_deserializeOpDocumentDescribeResponsibilityTransferOutput(v **DescribeResponsibilityTransferOutput, value interface{}) error {
  12288. if v == nil {
  12289. return fmt.Errorf("unexpected nil of type %T", v)
  12290. }
  12291. if value == nil {
  12292. return nil
  12293. }
  12294. shape, ok := value.(map[string]interface{})
  12295. if !ok {
  12296. return fmt.Errorf("unexpected JSON type %v", value)
  12297. }
  12298. var sv *DescribeResponsibilityTransferOutput
  12299. if *v == nil {
  12300. sv = &DescribeResponsibilityTransferOutput{}
  12301. } else {
  12302. sv = *v
  12303. }
  12304. for key, value := range shape {
  12305. switch key {
  12306. case "ResponsibilityTransfer":
  12307. if err := awsAwsjson11_deserializeDocumentResponsibilityTransfer(&sv.ResponsibilityTransfer, value); err != nil {
  12308. return err
  12309. }
  12310. default:
  12311. _, _ = key, value
  12312. }
  12313. }
  12314. *v = sv
  12315. return nil
  12316. }
  12317. func awsAwsjson11_deserializeOpDocumentDisablePolicyTypeOutput(v **DisablePolicyTypeOutput, value interface{}) error {
  12318. if v == nil {
  12319. return fmt.Errorf("unexpected nil of type %T", v)
  12320. }
  12321. if value == nil {
  12322. return nil
  12323. }
  12324. shape, ok := value.(map[string]interface{})
  12325. if !ok {
  12326. return fmt.Errorf("unexpected JSON type %v", value)
  12327. }
  12328. var sv *DisablePolicyTypeOutput
  12329. if *v == nil {
  12330. sv = &DisablePolicyTypeOutput{}
  12331. } else {
  12332. sv = *v
  12333. }
  12334. for key, value := range shape {
  12335. switch key {
  12336. case "Root":
  12337. if err := awsAwsjson11_deserializeDocumentRoot(&sv.Root, value); err != nil {
  12338. return err
  12339. }
  12340. default:
  12341. _, _ = key, value
  12342. }
  12343. }
  12344. *v = sv
  12345. return nil
  12346. }
  12347. func awsAwsjson11_deserializeOpDocumentEnableAllFeaturesOutput(v **EnableAllFeaturesOutput, value interface{}) error {
  12348. if v == nil {
  12349. return fmt.Errorf("unexpected nil of type %T", v)
  12350. }
  12351. if value == nil {
  12352. return nil
  12353. }
  12354. shape, ok := value.(map[string]interface{})
  12355. if !ok {
  12356. return fmt.Errorf("unexpected JSON type %v", value)
  12357. }
  12358. var sv *EnableAllFeaturesOutput
  12359. if *v == nil {
  12360. sv = &EnableAllFeaturesOutput{}
  12361. } else {
  12362. sv = *v
  12363. }
  12364. for key, value := range shape {
  12365. switch key {
  12366. case "Handshake":
  12367. if err := awsAwsjson11_deserializeDocumentHandshake(&sv.Handshake, value); err != nil {
  12368. return err
  12369. }
  12370. default:
  12371. _, _ = key, value
  12372. }
  12373. }
  12374. *v = sv
  12375. return nil
  12376. }
  12377. func awsAwsjson11_deserializeOpDocumentEnablePolicyTypeOutput(v **EnablePolicyTypeOutput, value interface{}) error {
  12378. if v == nil {
  12379. return fmt.Errorf("unexpected nil of type %T", v)
  12380. }
  12381. if value == nil {
  12382. return nil
  12383. }
  12384. shape, ok := value.(map[string]interface{})
  12385. if !ok {
  12386. return fmt.Errorf("unexpected JSON type %v", value)
  12387. }
  12388. var sv *EnablePolicyTypeOutput
  12389. if *v == nil {
  12390. sv = &EnablePolicyTypeOutput{}
  12391. } else {
  12392. sv = *v
  12393. }
  12394. for key, value := range shape {
  12395. switch key {
  12396. case "Root":
  12397. if err := awsAwsjson11_deserializeDocumentRoot(&sv.Root, value); err != nil {
  12398. return err
  12399. }
  12400. default:
  12401. _, _ = key, value
  12402. }
  12403. }
  12404. *v = sv
  12405. return nil
  12406. }
  12407. func awsAwsjson11_deserializeOpDocumentInviteAccountToOrganizationOutput(v **InviteAccountToOrganizationOutput, value interface{}) error {
  12408. if v == nil {
  12409. return fmt.Errorf("unexpected nil of type %T", v)
  12410. }
  12411. if value == nil {
  12412. return nil
  12413. }
  12414. shape, ok := value.(map[string]interface{})
  12415. if !ok {
  12416. return fmt.Errorf("unexpected JSON type %v", value)
  12417. }
  12418. var sv *InviteAccountToOrganizationOutput
  12419. if *v == nil {
  12420. sv = &InviteAccountToOrganizationOutput{}
  12421. } else {
  12422. sv = *v
  12423. }
  12424. for key, value := range shape {
  12425. switch key {
  12426. case "Handshake":
  12427. if err := awsAwsjson11_deserializeDocumentHandshake(&sv.Handshake, value); err != nil {
  12428. return err
  12429. }
  12430. default:
  12431. _, _ = key, value
  12432. }
  12433. }
  12434. *v = sv
  12435. return nil
  12436. }
  12437. func awsAwsjson11_deserializeOpDocumentInviteOrganizationToTransferResponsibilityOutput(v **InviteOrganizationToTransferResponsibilityOutput, value interface{}) error {
  12438. if v == nil {
  12439. return fmt.Errorf("unexpected nil of type %T", v)
  12440. }
  12441. if value == nil {
  12442. return nil
  12443. }
  12444. shape, ok := value.(map[string]interface{})
  12445. if !ok {
  12446. return fmt.Errorf("unexpected JSON type %v", value)
  12447. }
  12448. var sv *InviteOrganizationToTransferResponsibilityOutput
  12449. if *v == nil {
  12450. sv = &InviteOrganizationToTransferResponsibilityOutput{}
  12451. } else {
  12452. sv = *v
  12453. }
  12454. for key, value := range shape {
  12455. switch key {
  12456. case "Handshake":
  12457. if err := awsAwsjson11_deserializeDocumentHandshake(&sv.Handshake, value); err != nil {
  12458. return err
  12459. }
  12460. default:
  12461. _, _ = key, value
  12462. }
  12463. }
  12464. *v = sv
  12465. return nil
  12466. }
  12467. func awsAwsjson11_deserializeOpDocumentListAccountsForParentOutput(v **ListAccountsForParentOutput, value interface{}) error {
  12468. if v == nil {
  12469. return fmt.Errorf("unexpected nil of type %T", v)
  12470. }
  12471. if value == nil {
  12472. return nil
  12473. }
  12474. shape, ok := value.(map[string]interface{})
  12475. if !ok {
  12476. return fmt.Errorf("unexpected JSON type %v", value)
  12477. }
  12478. var sv *ListAccountsForParentOutput
  12479. if *v == nil {
  12480. sv = &ListAccountsForParentOutput{}
  12481. } else {
  12482. sv = *v
  12483. }
  12484. for key, value := range shape {
  12485. switch key {
  12486. case "Accounts":
  12487. if err := awsAwsjson11_deserializeDocumentAccounts(&sv.Accounts, value); err != nil {
  12488. return err
  12489. }
  12490. case "NextToken":
  12491. if value != nil {
  12492. jtv, ok := value.(string)
  12493. if !ok {
  12494. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  12495. }
  12496. sv.NextToken = ptr.String(jtv)
  12497. }
  12498. default:
  12499. _, _ = key, value
  12500. }
  12501. }
  12502. *v = sv
  12503. return nil
  12504. }
  12505. func awsAwsjson11_deserializeOpDocumentListAccountsOutput(v **ListAccountsOutput, value interface{}) error {
  12506. if v == nil {
  12507. return fmt.Errorf("unexpected nil of type %T", v)
  12508. }
  12509. if value == nil {
  12510. return nil
  12511. }
  12512. shape, ok := value.(map[string]interface{})
  12513. if !ok {
  12514. return fmt.Errorf("unexpected JSON type %v", value)
  12515. }
  12516. var sv *ListAccountsOutput
  12517. if *v == nil {
  12518. sv = &ListAccountsOutput{}
  12519. } else {
  12520. sv = *v
  12521. }
  12522. for key, value := range shape {
  12523. switch key {
  12524. case "Accounts":
  12525. if err := awsAwsjson11_deserializeDocumentAccounts(&sv.Accounts, value); err != nil {
  12526. return err
  12527. }
  12528. case "NextToken":
  12529. if value != nil {
  12530. jtv, ok := value.(string)
  12531. if !ok {
  12532. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  12533. }
  12534. sv.NextToken = ptr.String(jtv)
  12535. }
  12536. default:
  12537. _, _ = key, value
  12538. }
  12539. }
  12540. *v = sv
  12541. return nil
  12542. }
  12543. func awsAwsjson11_deserializeOpDocumentListAccountsWithInvalidEffectivePolicyOutput(v **ListAccountsWithInvalidEffectivePolicyOutput, value interface{}) error {
  12544. if v == nil {
  12545. return fmt.Errorf("unexpected nil of type %T", v)
  12546. }
  12547. if value == nil {
  12548. return nil
  12549. }
  12550. shape, ok := value.(map[string]interface{})
  12551. if !ok {
  12552. return fmt.Errorf("unexpected JSON type %v", value)
  12553. }
  12554. var sv *ListAccountsWithInvalidEffectivePolicyOutput
  12555. if *v == nil {
  12556. sv = &ListAccountsWithInvalidEffectivePolicyOutput{}
  12557. } else {
  12558. sv = *v
  12559. }
  12560. for key, value := range shape {
  12561. switch key {
  12562. case "Accounts":
  12563. if err := awsAwsjson11_deserializeDocumentAccounts(&sv.Accounts, value); err != nil {
  12564. return err
  12565. }
  12566. case "NextToken":
  12567. if value != nil {
  12568. jtv, ok := value.(string)
  12569. if !ok {
  12570. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  12571. }
  12572. sv.NextToken = ptr.String(jtv)
  12573. }
  12574. case "PolicyType":
  12575. if value != nil {
  12576. jtv, ok := value.(string)
  12577. if !ok {
  12578. return fmt.Errorf("expected EffectivePolicyType to be of type string, got %T instead", value)
  12579. }
  12580. sv.PolicyType = types.EffectivePolicyType(jtv)
  12581. }
  12582. default:
  12583. _, _ = key, value
  12584. }
  12585. }
  12586. *v = sv
  12587. return nil
  12588. }
  12589. func awsAwsjson11_deserializeOpDocumentListAWSServiceAccessForOrganizationOutput(v **ListAWSServiceAccessForOrganizationOutput, value interface{}) error {
  12590. if v == nil {
  12591. return fmt.Errorf("unexpected nil of type %T", v)
  12592. }
  12593. if value == nil {
  12594. return nil
  12595. }
  12596. shape, ok := value.(map[string]interface{})
  12597. if !ok {
  12598. return fmt.Errorf("unexpected JSON type %v", value)
  12599. }
  12600. var sv *ListAWSServiceAccessForOrganizationOutput
  12601. if *v == nil {
  12602. sv = &ListAWSServiceAccessForOrganizationOutput{}
  12603. } else {
  12604. sv = *v
  12605. }
  12606. for key, value := range shape {
  12607. switch key {
  12608. case "EnabledServicePrincipals":
  12609. if err := awsAwsjson11_deserializeDocumentEnabledServicePrincipals(&sv.EnabledServicePrincipals, value); err != nil {
  12610. return err
  12611. }
  12612. case "NextToken":
  12613. if value != nil {
  12614. jtv, ok := value.(string)
  12615. if !ok {
  12616. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  12617. }
  12618. sv.NextToken = ptr.String(jtv)
  12619. }
  12620. default:
  12621. _, _ = key, value
  12622. }
  12623. }
  12624. *v = sv
  12625. return nil
  12626. }
  12627. func awsAwsjson11_deserializeOpDocumentListChildrenOutput(v **ListChildrenOutput, value interface{}) error {
  12628. if v == nil {
  12629. return fmt.Errorf("unexpected nil of type %T", v)
  12630. }
  12631. if value == nil {
  12632. return nil
  12633. }
  12634. shape, ok := value.(map[string]interface{})
  12635. if !ok {
  12636. return fmt.Errorf("unexpected JSON type %v", value)
  12637. }
  12638. var sv *ListChildrenOutput
  12639. if *v == nil {
  12640. sv = &ListChildrenOutput{}
  12641. } else {
  12642. sv = *v
  12643. }
  12644. for key, value := range shape {
  12645. switch key {
  12646. case "Children":
  12647. if err := awsAwsjson11_deserializeDocumentChildren(&sv.Children, value); err != nil {
  12648. return err
  12649. }
  12650. case "NextToken":
  12651. if value != nil {
  12652. jtv, ok := value.(string)
  12653. if !ok {
  12654. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  12655. }
  12656. sv.NextToken = ptr.String(jtv)
  12657. }
  12658. default:
  12659. _, _ = key, value
  12660. }
  12661. }
  12662. *v = sv
  12663. return nil
  12664. }
  12665. func awsAwsjson11_deserializeOpDocumentListCreateAccountStatusOutput(v **ListCreateAccountStatusOutput, value interface{}) error {
  12666. if v == nil {
  12667. return fmt.Errorf("unexpected nil of type %T", v)
  12668. }
  12669. if value == nil {
  12670. return nil
  12671. }
  12672. shape, ok := value.(map[string]interface{})
  12673. if !ok {
  12674. return fmt.Errorf("unexpected JSON type %v", value)
  12675. }
  12676. var sv *ListCreateAccountStatusOutput
  12677. if *v == nil {
  12678. sv = &ListCreateAccountStatusOutput{}
  12679. } else {
  12680. sv = *v
  12681. }
  12682. for key, value := range shape {
  12683. switch key {
  12684. case "CreateAccountStatuses":
  12685. if err := awsAwsjson11_deserializeDocumentCreateAccountStatuses(&sv.CreateAccountStatuses, value); err != nil {
  12686. return err
  12687. }
  12688. case "NextToken":
  12689. if value != nil {
  12690. jtv, ok := value.(string)
  12691. if !ok {
  12692. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  12693. }
  12694. sv.NextToken = ptr.String(jtv)
  12695. }
  12696. default:
  12697. _, _ = key, value
  12698. }
  12699. }
  12700. *v = sv
  12701. return nil
  12702. }
  12703. func awsAwsjson11_deserializeOpDocumentListDelegatedAdministratorsOutput(v **ListDelegatedAdministratorsOutput, value interface{}) error {
  12704. if v == nil {
  12705. return fmt.Errorf("unexpected nil of type %T", v)
  12706. }
  12707. if value == nil {
  12708. return nil
  12709. }
  12710. shape, ok := value.(map[string]interface{})
  12711. if !ok {
  12712. return fmt.Errorf("unexpected JSON type %v", value)
  12713. }
  12714. var sv *ListDelegatedAdministratorsOutput
  12715. if *v == nil {
  12716. sv = &ListDelegatedAdministratorsOutput{}
  12717. } else {
  12718. sv = *v
  12719. }
  12720. for key, value := range shape {
  12721. switch key {
  12722. case "DelegatedAdministrators":
  12723. if err := awsAwsjson11_deserializeDocumentDelegatedAdministrators(&sv.DelegatedAdministrators, value); err != nil {
  12724. return err
  12725. }
  12726. case "NextToken":
  12727. if value != nil {
  12728. jtv, ok := value.(string)
  12729. if !ok {
  12730. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  12731. }
  12732. sv.NextToken = ptr.String(jtv)
  12733. }
  12734. default:
  12735. _, _ = key, value
  12736. }
  12737. }
  12738. *v = sv
  12739. return nil
  12740. }
  12741. func awsAwsjson11_deserializeOpDocumentListDelegatedServicesForAccountOutput(v **ListDelegatedServicesForAccountOutput, value interface{}) error {
  12742. if v == nil {
  12743. return fmt.Errorf("unexpected nil of type %T", v)
  12744. }
  12745. if value == nil {
  12746. return nil
  12747. }
  12748. shape, ok := value.(map[string]interface{})
  12749. if !ok {
  12750. return fmt.Errorf("unexpected JSON type %v", value)
  12751. }
  12752. var sv *ListDelegatedServicesForAccountOutput
  12753. if *v == nil {
  12754. sv = &ListDelegatedServicesForAccountOutput{}
  12755. } else {
  12756. sv = *v
  12757. }
  12758. for key, value := range shape {
  12759. switch key {
  12760. case "DelegatedServices":
  12761. if err := awsAwsjson11_deserializeDocumentDelegatedServices(&sv.DelegatedServices, value); err != nil {
  12762. return err
  12763. }
  12764. case "NextToken":
  12765. if value != nil {
  12766. jtv, ok := value.(string)
  12767. if !ok {
  12768. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  12769. }
  12770. sv.NextToken = ptr.String(jtv)
  12771. }
  12772. default:
  12773. _, _ = key, value
  12774. }
  12775. }
  12776. *v = sv
  12777. return nil
  12778. }
  12779. func awsAwsjson11_deserializeOpDocumentListEffectivePolicyValidationErrorsOutput(v **ListEffectivePolicyValidationErrorsOutput, value interface{}) error {
  12780. if v == nil {
  12781. return fmt.Errorf("unexpected nil of type %T", v)
  12782. }
  12783. if value == nil {
  12784. return nil
  12785. }
  12786. shape, ok := value.(map[string]interface{})
  12787. if !ok {
  12788. return fmt.Errorf("unexpected JSON type %v", value)
  12789. }
  12790. var sv *ListEffectivePolicyValidationErrorsOutput
  12791. if *v == nil {
  12792. sv = &ListEffectivePolicyValidationErrorsOutput{}
  12793. } else {
  12794. sv = *v
  12795. }
  12796. for key, value := range shape {
  12797. switch key {
  12798. case "AccountId":
  12799. if value != nil {
  12800. jtv, ok := value.(string)
  12801. if !ok {
  12802. return fmt.Errorf("expected AccountId to be of type string, got %T instead", value)
  12803. }
  12804. sv.AccountId = ptr.String(jtv)
  12805. }
  12806. case "EffectivePolicyValidationErrors":
  12807. if err := awsAwsjson11_deserializeDocumentEffectivePolicyValidationErrors(&sv.EffectivePolicyValidationErrors, value); err != nil {
  12808. return err
  12809. }
  12810. case "EvaluationTimestamp":
  12811. if value != nil {
  12812. switch jtv := value.(type) {
  12813. case json.Number:
  12814. f64, err := jtv.Float64()
  12815. if err != nil {
  12816. return err
  12817. }
  12818. sv.EvaluationTimestamp = ptr.Time(smithytime.ParseEpochSeconds(f64))
  12819. default:
  12820. return fmt.Errorf("expected Timestamp to be a JSON Number, got %T instead", value)
  12821. }
  12822. }
  12823. case "NextToken":
  12824. if value != nil {
  12825. jtv, ok := value.(string)
  12826. if !ok {
  12827. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  12828. }
  12829. sv.NextToken = ptr.String(jtv)
  12830. }
  12831. case "Path":
  12832. if value != nil {
  12833. jtv, ok := value.(string)
  12834. if !ok {
  12835. return fmt.Errorf("expected Path to be of type string, got %T instead", value)
  12836. }
  12837. sv.Path = ptr.String(jtv)
  12838. }
  12839. case "PolicyType":
  12840. if value != nil {
  12841. jtv, ok := value.(string)
  12842. if !ok {
  12843. return fmt.Errorf("expected EffectivePolicyType to be of type string, got %T instead", value)
  12844. }
  12845. sv.PolicyType = types.EffectivePolicyType(jtv)
  12846. }
  12847. default:
  12848. _, _ = key, value
  12849. }
  12850. }
  12851. *v = sv
  12852. return nil
  12853. }
  12854. func awsAwsjson11_deserializeOpDocumentListHandshakesForAccountOutput(v **ListHandshakesForAccountOutput, value interface{}) error {
  12855. if v == nil {
  12856. return fmt.Errorf("unexpected nil of type %T", v)
  12857. }
  12858. if value == nil {
  12859. return nil
  12860. }
  12861. shape, ok := value.(map[string]interface{})
  12862. if !ok {
  12863. return fmt.Errorf("unexpected JSON type %v", value)
  12864. }
  12865. var sv *ListHandshakesForAccountOutput
  12866. if *v == nil {
  12867. sv = &ListHandshakesForAccountOutput{}
  12868. } else {
  12869. sv = *v
  12870. }
  12871. for key, value := range shape {
  12872. switch key {
  12873. case "Handshakes":
  12874. if err := awsAwsjson11_deserializeDocumentHandshakes(&sv.Handshakes, value); err != nil {
  12875. return err
  12876. }
  12877. case "NextToken":
  12878. if value != nil {
  12879. jtv, ok := value.(string)
  12880. if !ok {
  12881. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  12882. }
  12883. sv.NextToken = ptr.String(jtv)
  12884. }
  12885. default:
  12886. _, _ = key, value
  12887. }
  12888. }
  12889. *v = sv
  12890. return nil
  12891. }
  12892. func awsAwsjson11_deserializeOpDocumentListHandshakesForOrganizationOutput(v **ListHandshakesForOrganizationOutput, value interface{}) error {
  12893. if v == nil {
  12894. return fmt.Errorf("unexpected nil of type %T", v)
  12895. }
  12896. if value == nil {
  12897. return nil
  12898. }
  12899. shape, ok := value.(map[string]interface{})
  12900. if !ok {
  12901. return fmt.Errorf("unexpected JSON type %v", value)
  12902. }
  12903. var sv *ListHandshakesForOrganizationOutput
  12904. if *v == nil {
  12905. sv = &ListHandshakesForOrganizationOutput{}
  12906. } else {
  12907. sv = *v
  12908. }
  12909. for key, value := range shape {
  12910. switch key {
  12911. case "Handshakes":
  12912. if err := awsAwsjson11_deserializeDocumentHandshakes(&sv.Handshakes, value); err != nil {
  12913. return err
  12914. }
  12915. case "NextToken":
  12916. if value != nil {
  12917. jtv, ok := value.(string)
  12918. if !ok {
  12919. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  12920. }
  12921. sv.NextToken = ptr.String(jtv)
  12922. }
  12923. default:
  12924. _, _ = key, value
  12925. }
  12926. }
  12927. *v = sv
  12928. return nil
  12929. }
  12930. func awsAwsjson11_deserializeOpDocumentListInboundResponsibilityTransfersOutput(v **ListInboundResponsibilityTransfersOutput, value interface{}) error {
  12931. if v == nil {
  12932. return fmt.Errorf("unexpected nil of type %T", v)
  12933. }
  12934. if value == nil {
  12935. return nil
  12936. }
  12937. shape, ok := value.(map[string]interface{})
  12938. if !ok {
  12939. return fmt.Errorf("unexpected JSON type %v", value)
  12940. }
  12941. var sv *ListInboundResponsibilityTransfersOutput
  12942. if *v == nil {
  12943. sv = &ListInboundResponsibilityTransfersOutput{}
  12944. } else {
  12945. sv = *v
  12946. }
  12947. for key, value := range shape {
  12948. switch key {
  12949. case "NextToken":
  12950. if value != nil {
  12951. jtv, ok := value.(string)
  12952. if !ok {
  12953. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  12954. }
  12955. sv.NextToken = ptr.String(jtv)
  12956. }
  12957. case "ResponsibilityTransfers":
  12958. if err := awsAwsjson11_deserializeDocumentResponsibilityTransfers(&sv.ResponsibilityTransfers, value); err != nil {
  12959. return err
  12960. }
  12961. default:
  12962. _, _ = key, value
  12963. }
  12964. }
  12965. *v = sv
  12966. return nil
  12967. }
  12968. func awsAwsjson11_deserializeOpDocumentListOrganizationalUnitsForParentOutput(v **ListOrganizationalUnitsForParentOutput, value interface{}) error {
  12969. if v == nil {
  12970. return fmt.Errorf("unexpected nil of type %T", v)
  12971. }
  12972. if value == nil {
  12973. return nil
  12974. }
  12975. shape, ok := value.(map[string]interface{})
  12976. if !ok {
  12977. return fmt.Errorf("unexpected JSON type %v", value)
  12978. }
  12979. var sv *ListOrganizationalUnitsForParentOutput
  12980. if *v == nil {
  12981. sv = &ListOrganizationalUnitsForParentOutput{}
  12982. } else {
  12983. sv = *v
  12984. }
  12985. for key, value := range shape {
  12986. switch key {
  12987. case "NextToken":
  12988. if value != nil {
  12989. jtv, ok := value.(string)
  12990. if !ok {
  12991. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  12992. }
  12993. sv.NextToken = ptr.String(jtv)
  12994. }
  12995. case "OrganizationalUnits":
  12996. if err := awsAwsjson11_deserializeDocumentOrganizationalUnits(&sv.OrganizationalUnits, value); err != nil {
  12997. return err
  12998. }
  12999. default:
  13000. _, _ = key, value
  13001. }
  13002. }
  13003. *v = sv
  13004. return nil
  13005. }
  13006. func awsAwsjson11_deserializeOpDocumentListOutboundResponsibilityTransfersOutput(v **ListOutboundResponsibilityTransfersOutput, value interface{}) error {
  13007. if v == nil {
  13008. return fmt.Errorf("unexpected nil of type %T", v)
  13009. }
  13010. if value == nil {
  13011. return nil
  13012. }
  13013. shape, ok := value.(map[string]interface{})
  13014. if !ok {
  13015. return fmt.Errorf("unexpected JSON type %v", value)
  13016. }
  13017. var sv *ListOutboundResponsibilityTransfersOutput
  13018. if *v == nil {
  13019. sv = &ListOutboundResponsibilityTransfersOutput{}
  13020. } else {
  13021. sv = *v
  13022. }
  13023. for key, value := range shape {
  13024. switch key {
  13025. case "NextToken":
  13026. if value != nil {
  13027. jtv, ok := value.(string)
  13028. if !ok {
  13029. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  13030. }
  13031. sv.NextToken = ptr.String(jtv)
  13032. }
  13033. case "ResponsibilityTransfers":
  13034. if err := awsAwsjson11_deserializeDocumentResponsibilityTransfers(&sv.ResponsibilityTransfers, value); err != nil {
  13035. return err
  13036. }
  13037. default:
  13038. _, _ = key, value
  13039. }
  13040. }
  13041. *v = sv
  13042. return nil
  13043. }
  13044. func awsAwsjson11_deserializeOpDocumentListParentsOutput(v **ListParentsOutput, value interface{}) error {
  13045. if v == nil {
  13046. return fmt.Errorf("unexpected nil of type %T", v)
  13047. }
  13048. if value == nil {
  13049. return nil
  13050. }
  13051. shape, ok := value.(map[string]interface{})
  13052. if !ok {
  13053. return fmt.Errorf("unexpected JSON type %v", value)
  13054. }
  13055. var sv *ListParentsOutput
  13056. if *v == nil {
  13057. sv = &ListParentsOutput{}
  13058. } else {
  13059. sv = *v
  13060. }
  13061. for key, value := range shape {
  13062. switch key {
  13063. case "NextToken":
  13064. if value != nil {
  13065. jtv, ok := value.(string)
  13066. if !ok {
  13067. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  13068. }
  13069. sv.NextToken = ptr.String(jtv)
  13070. }
  13071. case "Parents":
  13072. if err := awsAwsjson11_deserializeDocumentParents(&sv.Parents, value); err != nil {
  13073. return err
  13074. }
  13075. default:
  13076. _, _ = key, value
  13077. }
  13078. }
  13079. *v = sv
  13080. return nil
  13081. }
  13082. func awsAwsjson11_deserializeOpDocumentListPoliciesForTargetOutput(v **ListPoliciesForTargetOutput, value interface{}) error {
  13083. if v == nil {
  13084. return fmt.Errorf("unexpected nil of type %T", v)
  13085. }
  13086. if value == nil {
  13087. return nil
  13088. }
  13089. shape, ok := value.(map[string]interface{})
  13090. if !ok {
  13091. return fmt.Errorf("unexpected JSON type %v", value)
  13092. }
  13093. var sv *ListPoliciesForTargetOutput
  13094. if *v == nil {
  13095. sv = &ListPoliciesForTargetOutput{}
  13096. } else {
  13097. sv = *v
  13098. }
  13099. for key, value := range shape {
  13100. switch key {
  13101. case "NextToken":
  13102. if value != nil {
  13103. jtv, ok := value.(string)
  13104. if !ok {
  13105. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  13106. }
  13107. sv.NextToken = ptr.String(jtv)
  13108. }
  13109. case "Policies":
  13110. if err := awsAwsjson11_deserializeDocumentPolicies(&sv.Policies, value); err != nil {
  13111. return err
  13112. }
  13113. default:
  13114. _, _ = key, value
  13115. }
  13116. }
  13117. *v = sv
  13118. return nil
  13119. }
  13120. func awsAwsjson11_deserializeOpDocumentListPoliciesOutput(v **ListPoliciesOutput, value interface{}) error {
  13121. if v == nil {
  13122. return fmt.Errorf("unexpected nil of type %T", v)
  13123. }
  13124. if value == nil {
  13125. return nil
  13126. }
  13127. shape, ok := value.(map[string]interface{})
  13128. if !ok {
  13129. return fmt.Errorf("unexpected JSON type %v", value)
  13130. }
  13131. var sv *ListPoliciesOutput
  13132. if *v == nil {
  13133. sv = &ListPoliciesOutput{}
  13134. } else {
  13135. sv = *v
  13136. }
  13137. for key, value := range shape {
  13138. switch key {
  13139. case "NextToken":
  13140. if value != nil {
  13141. jtv, ok := value.(string)
  13142. if !ok {
  13143. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  13144. }
  13145. sv.NextToken = ptr.String(jtv)
  13146. }
  13147. case "Policies":
  13148. if err := awsAwsjson11_deserializeDocumentPolicies(&sv.Policies, value); err != nil {
  13149. return err
  13150. }
  13151. default:
  13152. _, _ = key, value
  13153. }
  13154. }
  13155. *v = sv
  13156. return nil
  13157. }
  13158. func awsAwsjson11_deserializeOpDocumentListRootsOutput(v **ListRootsOutput, value interface{}) error {
  13159. if v == nil {
  13160. return fmt.Errorf("unexpected nil of type %T", v)
  13161. }
  13162. if value == nil {
  13163. return nil
  13164. }
  13165. shape, ok := value.(map[string]interface{})
  13166. if !ok {
  13167. return fmt.Errorf("unexpected JSON type %v", value)
  13168. }
  13169. var sv *ListRootsOutput
  13170. if *v == nil {
  13171. sv = &ListRootsOutput{}
  13172. } else {
  13173. sv = *v
  13174. }
  13175. for key, value := range shape {
  13176. switch key {
  13177. case "NextToken":
  13178. if value != nil {
  13179. jtv, ok := value.(string)
  13180. if !ok {
  13181. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  13182. }
  13183. sv.NextToken = ptr.String(jtv)
  13184. }
  13185. case "Roots":
  13186. if err := awsAwsjson11_deserializeDocumentRoots(&sv.Roots, value); err != nil {
  13187. return err
  13188. }
  13189. default:
  13190. _, _ = key, value
  13191. }
  13192. }
  13193. *v = sv
  13194. return nil
  13195. }
  13196. func awsAwsjson11_deserializeOpDocumentListTagsForResourceOutput(v **ListTagsForResourceOutput, value interface{}) error {
  13197. if v == nil {
  13198. return fmt.Errorf("unexpected nil of type %T", v)
  13199. }
  13200. if value == nil {
  13201. return nil
  13202. }
  13203. shape, ok := value.(map[string]interface{})
  13204. if !ok {
  13205. return fmt.Errorf("unexpected JSON type %v", value)
  13206. }
  13207. var sv *ListTagsForResourceOutput
  13208. if *v == nil {
  13209. sv = &ListTagsForResourceOutput{}
  13210. } else {
  13211. sv = *v
  13212. }
  13213. for key, value := range shape {
  13214. switch key {
  13215. case "NextToken":
  13216. if value != nil {
  13217. jtv, ok := value.(string)
  13218. if !ok {
  13219. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  13220. }
  13221. sv.NextToken = ptr.String(jtv)
  13222. }
  13223. case "Tags":
  13224. if err := awsAwsjson11_deserializeDocumentTags(&sv.Tags, value); err != nil {
  13225. return err
  13226. }
  13227. default:
  13228. _, _ = key, value
  13229. }
  13230. }
  13231. *v = sv
  13232. return nil
  13233. }
  13234. func awsAwsjson11_deserializeOpDocumentListTargetsForPolicyOutput(v **ListTargetsForPolicyOutput, value interface{}) error {
  13235. if v == nil {
  13236. return fmt.Errorf("unexpected nil of type %T", v)
  13237. }
  13238. if value == nil {
  13239. return nil
  13240. }
  13241. shape, ok := value.(map[string]interface{})
  13242. if !ok {
  13243. return fmt.Errorf("unexpected JSON type %v", value)
  13244. }
  13245. var sv *ListTargetsForPolicyOutput
  13246. if *v == nil {
  13247. sv = &ListTargetsForPolicyOutput{}
  13248. } else {
  13249. sv = *v
  13250. }
  13251. for key, value := range shape {
  13252. switch key {
  13253. case "NextToken":
  13254. if value != nil {
  13255. jtv, ok := value.(string)
  13256. if !ok {
  13257. return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
  13258. }
  13259. sv.NextToken = ptr.String(jtv)
  13260. }
  13261. case "Targets":
  13262. if err := awsAwsjson11_deserializeDocumentPolicyTargets(&sv.Targets, value); err != nil {
  13263. return err
  13264. }
  13265. default:
  13266. _, _ = key, value
  13267. }
  13268. }
  13269. *v = sv
  13270. return nil
  13271. }
  13272. func awsAwsjson11_deserializeOpDocumentPutResourcePolicyOutput(v **PutResourcePolicyOutput, value interface{}) error {
  13273. if v == nil {
  13274. return fmt.Errorf("unexpected nil of type %T", v)
  13275. }
  13276. if value == nil {
  13277. return nil
  13278. }
  13279. shape, ok := value.(map[string]interface{})
  13280. if !ok {
  13281. return fmt.Errorf("unexpected JSON type %v", value)
  13282. }
  13283. var sv *PutResourcePolicyOutput
  13284. if *v == nil {
  13285. sv = &PutResourcePolicyOutput{}
  13286. } else {
  13287. sv = *v
  13288. }
  13289. for key, value := range shape {
  13290. switch key {
  13291. case "ResourcePolicy":
  13292. if err := awsAwsjson11_deserializeDocumentResourcePolicy(&sv.ResourcePolicy, value); err != nil {
  13293. return err
  13294. }
  13295. default:
  13296. _, _ = key, value
  13297. }
  13298. }
  13299. *v = sv
  13300. return nil
  13301. }
  13302. func awsAwsjson11_deserializeOpDocumentTerminateResponsibilityTransferOutput(v **TerminateResponsibilityTransferOutput, value interface{}) error {
  13303. if v == nil {
  13304. return fmt.Errorf("unexpected nil of type %T", v)
  13305. }
  13306. if value == nil {
  13307. return nil
  13308. }
  13309. shape, ok := value.(map[string]interface{})
  13310. if !ok {
  13311. return fmt.Errorf("unexpected JSON type %v", value)
  13312. }
  13313. var sv *TerminateResponsibilityTransferOutput
  13314. if *v == nil {
  13315. sv = &TerminateResponsibilityTransferOutput{}
  13316. } else {
  13317. sv = *v
  13318. }
  13319. for key, value := range shape {
  13320. switch key {
  13321. case "ResponsibilityTransfer":
  13322. if err := awsAwsjson11_deserializeDocumentResponsibilityTransfer(&sv.ResponsibilityTransfer, value); err != nil {
  13323. return err
  13324. }
  13325. default:
  13326. _, _ = key, value
  13327. }
  13328. }
  13329. *v = sv
  13330. return nil
  13331. }
  13332. func awsAwsjson11_deserializeOpDocumentUpdateOrganizationalUnitOutput(v **UpdateOrganizationalUnitOutput, value interface{}) error {
  13333. if v == nil {
  13334. return fmt.Errorf("unexpected nil of type %T", v)
  13335. }
  13336. if value == nil {
  13337. return nil
  13338. }
  13339. shape, ok := value.(map[string]interface{})
  13340. if !ok {
  13341. return fmt.Errorf("unexpected JSON type %v", value)
  13342. }
  13343. var sv *UpdateOrganizationalUnitOutput
  13344. if *v == nil {
  13345. sv = &UpdateOrganizationalUnitOutput{}
  13346. } else {
  13347. sv = *v
  13348. }
  13349. for key, value := range shape {
  13350. switch key {
  13351. case "OrganizationalUnit":
  13352. if err := awsAwsjson11_deserializeDocumentOrganizationalUnit(&sv.OrganizationalUnit, value); err != nil {
  13353. return err
  13354. }
  13355. default:
  13356. _, _ = key, value
  13357. }
  13358. }
  13359. *v = sv
  13360. return nil
  13361. }
  13362. func awsAwsjson11_deserializeOpDocumentUpdatePolicyOutput(v **UpdatePolicyOutput, value interface{}) error {
  13363. if v == nil {
  13364. return fmt.Errorf("unexpected nil of type %T", v)
  13365. }
  13366. if value == nil {
  13367. return nil
  13368. }
  13369. shape, ok := value.(map[string]interface{})
  13370. if !ok {
  13371. return fmt.Errorf("unexpected JSON type %v", value)
  13372. }
  13373. var sv *UpdatePolicyOutput
  13374. if *v == nil {
  13375. sv = &UpdatePolicyOutput{}
  13376. } else {
  13377. sv = *v
  13378. }
  13379. for key, value := range shape {
  13380. switch key {
  13381. case "Policy":
  13382. if err := awsAwsjson11_deserializeDocumentPolicy(&sv.Policy, value); err != nil {
  13383. return err
  13384. }
  13385. default:
  13386. _, _ = key, value
  13387. }
  13388. }
  13389. *v = sv
  13390. return nil
  13391. }
  13392. func awsAwsjson11_deserializeOpDocumentUpdateResponsibilityTransferOutput(v **UpdateResponsibilityTransferOutput, value interface{}) error {
  13393. if v == nil {
  13394. return fmt.Errorf("unexpected nil of type %T", v)
  13395. }
  13396. if value == nil {
  13397. return nil
  13398. }
  13399. shape, ok := value.(map[string]interface{})
  13400. if !ok {
  13401. return fmt.Errorf("unexpected JSON type %v", value)
  13402. }
  13403. var sv *UpdateResponsibilityTransferOutput
  13404. if *v == nil {
  13405. sv = &UpdateResponsibilityTransferOutput{}
  13406. } else {
  13407. sv = *v
  13408. }
  13409. for key, value := range shape {
  13410. switch key {
  13411. case "ResponsibilityTransfer":
  13412. if err := awsAwsjson11_deserializeDocumentResponsibilityTransfer(&sv.ResponsibilityTransfer, value); err != nil {
  13413. return err
  13414. }
  13415. default:
  13416. _, _ = key, value
  13417. }
  13418. }
  13419. *v = sv
  13420. return nil
  13421. }
  13422. type protocolErrorInfo struct {
  13423. Type string `json:"__type"`
  13424. Message string
  13425. Code any // nonstandard for awsjson but some services do present the type here
  13426. }
  13427. func getProtocolErrorInfo(decoder *json.Decoder) (protocolErrorInfo, error) {
  13428. var errInfo protocolErrorInfo
  13429. if err := decoder.Decode(&errInfo); err != nil {
  13430. if err == io.EOF {
  13431. return errInfo, nil
  13432. }
  13433. return errInfo, err
  13434. }
  13435. return errInfo, nil
  13436. }
  13437. func resolveProtocolErrorType(headerType string, bodyInfo protocolErrorInfo) (string, bool) {
  13438. if len(headerType) != 0 {
  13439. return headerType, true
  13440. } else if len(bodyInfo.Type) != 0 {
  13441. return bodyInfo.Type, true
  13442. } else if code, ok := bodyInfo.Code.(string); ok && len(code) != 0 {
  13443. return code, true
  13444. }
  13445. return "", false
  13446. }