build_test.go 285 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041
  1. package restxml_test
  2. import (
  3. "bytes"
  4. "encoding/json"
  5. "encoding/xml"
  6. "fmt"
  7. "io"
  8. "io/ioutil"
  9. "net/http"
  10. "net/url"
  11. "reflect"
  12. "testing"
  13. "time"
  14. "github.com/aws/aws-sdk-go/aws"
  15. "github.com/aws/aws-sdk-go/aws/client"
  16. "github.com/aws/aws-sdk-go/aws/client/metadata"
  17. "github.com/aws/aws-sdk-go/aws/request"
  18. "github.com/aws/aws-sdk-go/aws/signer/v4"
  19. "github.com/aws/aws-sdk-go/awstesting"
  20. "github.com/aws/aws-sdk-go/awstesting/unit"
  21. "github.com/aws/aws-sdk-go/private/protocol"
  22. "github.com/aws/aws-sdk-go/private/protocol/restxml"
  23. "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil"
  24. "github.com/aws/aws-sdk-go/private/util"
  25. )
  26. var _ bytes.Buffer // always import bytes
  27. var _ http.Request
  28. var _ json.Marshaler
  29. var _ time.Time
  30. var _ xmlutil.XMLNode
  31. var _ xml.Attr
  32. var _ = ioutil.Discard
  33. var _ = util.Trim("")
  34. var _ = url.Values{}
  35. var _ = io.EOF
  36. var _ = aws.String
  37. var _ = fmt.Println
  38. var _ = reflect.Value{}
  39. func init() {
  40. protocol.RandReader = &awstesting.ZeroReader{}
  41. }
  42. // InputService1ProtocolTest provides the API operation methods for making requests to
  43. // . See this package's package overview docs
  44. // for details on the service.
  45. //
  46. // InputService1ProtocolTest methods are safe to use concurrently. It is not safe to
  47. // modify mutate any of the struct's properties though.
  48. type InputService1ProtocolTest struct {
  49. *client.Client
  50. }
  51. // New creates a new instance of the InputService1ProtocolTest client with a session.
  52. // If additional configuration is needed for the client instance use the optional
  53. // aws.Config parameter to add your extra config.
  54. //
  55. // Example:
  56. // // Create a InputService1ProtocolTest client from just a session.
  57. // svc := inputservice1protocoltest.New(mySession)
  58. //
  59. // // Create a InputService1ProtocolTest client with additional configuration
  60. // svc := inputservice1protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  61. func NewInputService1ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService1ProtocolTest {
  62. c := p.ClientConfig("inputservice1protocoltest", cfgs...)
  63. return newInputService1ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  64. }
  65. // newClient creates, initializes and returns a new service client instance.
  66. func newInputService1ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService1ProtocolTest {
  67. svc := &InputService1ProtocolTest{
  68. Client: client.New(
  69. cfg,
  70. metadata.ClientInfo{
  71. ServiceName: "InputService1ProtocolTest",
  72. ServiceID: "InputService1ProtocolTest",
  73. SigningName: signingName,
  74. SigningRegion: signingRegion,
  75. Endpoint: endpoint,
  76. APIVersion: "2014-01-01",
  77. },
  78. handlers,
  79. ),
  80. }
  81. // Handlers
  82. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  83. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  84. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  85. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  86. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  87. return svc
  88. }
  89. // newRequest creates a new request for a InputService1ProtocolTest operation and runs any
  90. // custom request initialization.
  91. func (c *InputService1ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  92. req := c.NewRequest(op, params, data)
  93. return req
  94. }
  95. const opInputService1TestCaseOperation1 = "OperationName"
  96. // InputService1TestCaseOperation1Request generates a "aws/request.Request" representing the
  97. // client's request for the InputService1TestCaseOperation1 operation. The "output" return
  98. // value will be populated with the request's response once the request completes
  99. // successfully.
  100. //
  101. // Use "Send" method on the returned Request to send the API call to the service.
  102. // the "output" return value is not valid until after Send returns without error.
  103. //
  104. // See InputService1TestCaseOperation1 for more information on using the InputService1TestCaseOperation1
  105. // API call, and error handling.
  106. //
  107. // This method is useful when you want to inject custom logic or configuration
  108. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  109. //
  110. //
  111. // // Example sending a request using the InputService1TestCaseOperation1Request method.
  112. // req, resp := client.InputService1TestCaseOperation1Request(params)
  113. //
  114. // err := req.Send()
  115. // if err == nil { // resp is now filled
  116. // fmt.Println(resp)
  117. // }
  118. func (c *InputService1ProtocolTest) InputService1TestCaseOperation1Request(input *InputService1TestShapeInputService1TestCaseOperation1Input) (req *request.Request, output *InputService1TestShapeInputService1TestCaseOperation1Output) {
  119. op := &request.Operation{
  120. Name: opInputService1TestCaseOperation1,
  121. HTTPMethod: "POST",
  122. HTTPPath: "/2014-01-01/hostedzone",
  123. }
  124. if input == nil {
  125. input = &InputService1TestShapeInputService1TestCaseOperation1Input{}
  126. }
  127. output = &InputService1TestShapeInputService1TestCaseOperation1Output{}
  128. req = c.newRequest(op, input, output)
  129. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  130. return
  131. }
  132. // InputService1TestCaseOperation1 API operation for .
  133. //
  134. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  135. // with awserr.Error's Code and Message methods to get detailed information about
  136. // the error.
  137. //
  138. // See the AWS API reference guide for 's
  139. // API operation InputService1TestCaseOperation1 for usage and error information.
  140. func (c *InputService1ProtocolTest) InputService1TestCaseOperation1(input *InputService1TestShapeInputService1TestCaseOperation1Input) (*InputService1TestShapeInputService1TestCaseOperation1Output, error) {
  141. req, out := c.InputService1TestCaseOperation1Request(input)
  142. return out, req.Send()
  143. }
  144. // InputService1TestCaseOperation1WithContext is the same as InputService1TestCaseOperation1 with the addition of
  145. // the ability to pass a context and additional request options.
  146. //
  147. // See InputService1TestCaseOperation1 for details on how to use this API operation.
  148. //
  149. // The context must be non-nil and will be used for request cancellation. If
  150. // the context is nil a panic will occur. In the future the SDK may create
  151. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  152. // for more information on using Contexts.
  153. func (c *InputService1ProtocolTest) InputService1TestCaseOperation1WithContext(ctx aws.Context, input *InputService1TestShapeInputService1TestCaseOperation1Input, opts ...request.Option) (*InputService1TestShapeInputService1TestCaseOperation1Output, error) {
  154. req, out := c.InputService1TestCaseOperation1Request(input)
  155. req.SetContext(ctx)
  156. req.ApplyOptions(opts...)
  157. return out, req.Send()
  158. }
  159. const opInputService1TestCaseOperation2 = "OperationName"
  160. // InputService1TestCaseOperation2Request generates a "aws/request.Request" representing the
  161. // client's request for the InputService1TestCaseOperation2 operation. The "output" return
  162. // value will be populated with the request's response once the request completes
  163. // successfully.
  164. //
  165. // Use "Send" method on the returned Request to send the API call to the service.
  166. // the "output" return value is not valid until after Send returns without error.
  167. //
  168. // See InputService1TestCaseOperation2 for more information on using the InputService1TestCaseOperation2
  169. // API call, and error handling.
  170. //
  171. // This method is useful when you want to inject custom logic or configuration
  172. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  173. //
  174. //
  175. // // Example sending a request using the InputService1TestCaseOperation2Request method.
  176. // req, resp := client.InputService1TestCaseOperation2Request(params)
  177. //
  178. // err := req.Send()
  179. // if err == nil { // resp is now filled
  180. // fmt.Println(resp)
  181. // }
  182. func (c *InputService1ProtocolTest) InputService1TestCaseOperation2Request(input *InputService1TestShapeInputService1TestCaseOperation2Input) (req *request.Request, output *InputService1TestShapeInputService1TestCaseOperation2Output) {
  183. op := &request.Operation{
  184. Name: opInputService1TestCaseOperation2,
  185. HTTPMethod: "PUT",
  186. HTTPPath: "/2014-01-01/hostedzone",
  187. }
  188. if input == nil {
  189. input = &InputService1TestShapeInputService1TestCaseOperation2Input{}
  190. }
  191. output = &InputService1TestShapeInputService1TestCaseOperation2Output{}
  192. req = c.newRequest(op, input, output)
  193. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  194. return
  195. }
  196. // InputService1TestCaseOperation2 API operation for .
  197. //
  198. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  199. // with awserr.Error's Code and Message methods to get detailed information about
  200. // the error.
  201. //
  202. // See the AWS API reference guide for 's
  203. // API operation InputService1TestCaseOperation2 for usage and error information.
  204. func (c *InputService1ProtocolTest) InputService1TestCaseOperation2(input *InputService1TestShapeInputService1TestCaseOperation2Input) (*InputService1TestShapeInputService1TestCaseOperation2Output, error) {
  205. req, out := c.InputService1TestCaseOperation2Request(input)
  206. return out, req.Send()
  207. }
  208. // InputService1TestCaseOperation2WithContext is the same as InputService1TestCaseOperation2 with the addition of
  209. // the ability to pass a context and additional request options.
  210. //
  211. // See InputService1TestCaseOperation2 for details on how to use this API operation.
  212. //
  213. // The context must be non-nil and will be used for request cancellation. If
  214. // the context is nil a panic will occur. In the future the SDK may create
  215. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  216. // for more information on using Contexts.
  217. func (c *InputService1ProtocolTest) InputService1TestCaseOperation2WithContext(ctx aws.Context, input *InputService1TestShapeInputService1TestCaseOperation2Input, opts ...request.Option) (*InputService1TestShapeInputService1TestCaseOperation2Output, error) {
  218. req, out := c.InputService1TestCaseOperation2Request(input)
  219. req.SetContext(ctx)
  220. req.ApplyOptions(opts...)
  221. return out, req.Send()
  222. }
  223. const opInputService1TestCaseOperation3 = "OperationName"
  224. // InputService1TestCaseOperation3Request generates a "aws/request.Request" representing the
  225. // client's request for the InputService1TestCaseOperation3 operation. The "output" return
  226. // value will be populated with the request's response once the request completes
  227. // successfully.
  228. //
  229. // Use "Send" method on the returned Request to send the API call to the service.
  230. // the "output" return value is not valid until after Send returns without error.
  231. //
  232. // See InputService1TestCaseOperation3 for more information on using the InputService1TestCaseOperation3
  233. // API call, and error handling.
  234. //
  235. // This method is useful when you want to inject custom logic or configuration
  236. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  237. //
  238. //
  239. // // Example sending a request using the InputService1TestCaseOperation3Request method.
  240. // req, resp := client.InputService1TestCaseOperation3Request(params)
  241. //
  242. // err := req.Send()
  243. // if err == nil { // resp is now filled
  244. // fmt.Println(resp)
  245. // }
  246. func (c *InputService1ProtocolTest) InputService1TestCaseOperation3Request(input *InputService1TestShapeInputService1TestCaseOperation3Input) (req *request.Request, output *InputService1TestShapeInputService1TestCaseOperation3Output) {
  247. op := &request.Operation{
  248. Name: opInputService1TestCaseOperation3,
  249. HTTPMethod: "GET",
  250. HTTPPath: "/2014-01-01/hostedzone",
  251. }
  252. if input == nil {
  253. input = &InputService1TestShapeInputService1TestCaseOperation3Input{}
  254. }
  255. output = &InputService1TestShapeInputService1TestCaseOperation3Output{}
  256. req = c.newRequest(op, input, output)
  257. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  258. return
  259. }
  260. // InputService1TestCaseOperation3 API operation for .
  261. //
  262. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  263. // with awserr.Error's Code and Message methods to get detailed information about
  264. // the error.
  265. //
  266. // See the AWS API reference guide for 's
  267. // API operation InputService1TestCaseOperation3 for usage and error information.
  268. func (c *InputService1ProtocolTest) InputService1TestCaseOperation3(input *InputService1TestShapeInputService1TestCaseOperation3Input) (*InputService1TestShapeInputService1TestCaseOperation3Output, error) {
  269. req, out := c.InputService1TestCaseOperation3Request(input)
  270. return out, req.Send()
  271. }
  272. // InputService1TestCaseOperation3WithContext is the same as InputService1TestCaseOperation3 with the addition of
  273. // the ability to pass a context and additional request options.
  274. //
  275. // See InputService1TestCaseOperation3 for details on how to use this API operation.
  276. //
  277. // The context must be non-nil and will be used for request cancellation. If
  278. // the context is nil a panic will occur. In the future the SDK may create
  279. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  280. // for more information on using Contexts.
  281. func (c *InputService1ProtocolTest) InputService1TestCaseOperation3WithContext(ctx aws.Context, input *InputService1TestShapeInputService1TestCaseOperation3Input, opts ...request.Option) (*InputService1TestShapeInputService1TestCaseOperation3Output, error) {
  282. req, out := c.InputService1TestCaseOperation3Request(input)
  283. req.SetContext(ctx)
  284. req.ApplyOptions(opts...)
  285. return out, req.Send()
  286. }
  287. type InputService1TestShapeInputService1TestCaseOperation1Input struct {
  288. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  289. Description *string `type:"string"`
  290. Name *string `type:"string"`
  291. }
  292. // SetDescription sets the Description field's value.
  293. func (s *InputService1TestShapeInputService1TestCaseOperation1Input) SetDescription(v string) *InputService1TestShapeInputService1TestCaseOperation1Input {
  294. s.Description = &v
  295. return s
  296. }
  297. // SetName sets the Name field's value.
  298. func (s *InputService1TestShapeInputService1TestCaseOperation1Input) SetName(v string) *InputService1TestShapeInputService1TestCaseOperation1Input {
  299. s.Name = &v
  300. return s
  301. }
  302. type InputService1TestShapeInputService1TestCaseOperation1Output struct {
  303. _ struct{} `type:"structure"`
  304. }
  305. type InputService1TestShapeInputService1TestCaseOperation2Input struct {
  306. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  307. Description *string `type:"string"`
  308. Name *string `type:"string"`
  309. }
  310. // SetDescription sets the Description field's value.
  311. func (s *InputService1TestShapeInputService1TestCaseOperation2Input) SetDescription(v string) *InputService1TestShapeInputService1TestCaseOperation2Input {
  312. s.Description = &v
  313. return s
  314. }
  315. // SetName sets the Name field's value.
  316. func (s *InputService1TestShapeInputService1TestCaseOperation2Input) SetName(v string) *InputService1TestShapeInputService1TestCaseOperation2Input {
  317. s.Name = &v
  318. return s
  319. }
  320. type InputService1TestShapeInputService1TestCaseOperation2Output struct {
  321. _ struct{} `type:"structure"`
  322. }
  323. type InputService1TestShapeInputService1TestCaseOperation3Input struct {
  324. _ struct{} `type:"structure"`
  325. }
  326. type InputService1TestShapeInputService1TestCaseOperation3Output struct {
  327. _ struct{} `type:"structure"`
  328. }
  329. // InputService2ProtocolTest provides the API operation methods for making requests to
  330. // . See this package's package overview docs
  331. // for details on the service.
  332. //
  333. // InputService2ProtocolTest methods are safe to use concurrently. It is not safe to
  334. // modify mutate any of the struct's properties though.
  335. type InputService2ProtocolTest struct {
  336. *client.Client
  337. }
  338. // New creates a new instance of the InputService2ProtocolTest client with a session.
  339. // If additional configuration is needed for the client instance use the optional
  340. // aws.Config parameter to add your extra config.
  341. //
  342. // Example:
  343. // // Create a InputService2ProtocolTest client from just a session.
  344. // svc := inputservice2protocoltest.New(mySession)
  345. //
  346. // // Create a InputService2ProtocolTest client with additional configuration
  347. // svc := inputservice2protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  348. func NewInputService2ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService2ProtocolTest {
  349. c := p.ClientConfig("inputservice2protocoltest", cfgs...)
  350. return newInputService2ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  351. }
  352. // newClient creates, initializes and returns a new service client instance.
  353. func newInputService2ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService2ProtocolTest {
  354. svc := &InputService2ProtocolTest{
  355. Client: client.New(
  356. cfg,
  357. metadata.ClientInfo{
  358. ServiceName: "InputService2ProtocolTest",
  359. ServiceID: "InputService2ProtocolTest",
  360. SigningName: signingName,
  361. SigningRegion: signingRegion,
  362. Endpoint: endpoint,
  363. APIVersion: "2014-01-01",
  364. },
  365. handlers,
  366. ),
  367. }
  368. // Handlers
  369. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  370. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  371. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  372. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  373. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  374. return svc
  375. }
  376. // newRequest creates a new request for a InputService2ProtocolTest operation and runs any
  377. // custom request initialization.
  378. func (c *InputService2ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  379. req := c.NewRequest(op, params, data)
  380. return req
  381. }
  382. const opInputService2TestCaseOperation1 = "OperationName"
  383. // InputService2TestCaseOperation1Request generates a "aws/request.Request" representing the
  384. // client's request for the InputService2TestCaseOperation1 operation. The "output" return
  385. // value will be populated with the request's response once the request completes
  386. // successfully.
  387. //
  388. // Use "Send" method on the returned Request to send the API call to the service.
  389. // the "output" return value is not valid until after Send returns without error.
  390. //
  391. // See InputService2TestCaseOperation1 for more information on using the InputService2TestCaseOperation1
  392. // API call, and error handling.
  393. //
  394. // This method is useful when you want to inject custom logic or configuration
  395. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  396. //
  397. //
  398. // // Example sending a request using the InputService2TestCaseOperation1Request method.
  399. // req, resp := client.InputService2TestCaseOperation1Request(params)
  400. //
  401. // err := req.Send()
  402. // if err == nil { // resp is now filled
  403. // fmt.Println(resp)
  404. // }
  405. func (c *InputService2ProtocolTest) InputService2TestCaseOperation1Request(input *InputService2TestShapeInputService2TestCaseOperation1Input) (req *request.Request, output *InputService2TestShapeInputService2TestCaseOperation1Output) {
  406. op := &request.Operation{
  407. Name: opInputService2TestCaseOperation1,
  408. HTTPMethod: "POST",
  409. HTTPPath: "/2014-01-01/hostedzone",
  410. }
  411. if input == nil {
  412. input = &InputService2TestShapeInputService2TestCaseOperation1Input{}
  413. }
  414. output = &InputService2TestShapeInputService2TestCaseOperation1Output{}
  415. req = c.newRequest(op, input, output)
  416. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  417. return
  418. }
  419. // InputService2TestCaseOperation1 API operation for .
  420. //
  421. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  422. // with awserr.Error's Code and Message methods to get detailed information about
  423. // the error.
  424. //
  425. // See the AWS API reference guide for 's
  426. // API operation InputService2TestCaseOperation1 for usage and error information.
  427. func (c *InputService2ProtocolTest) InputService2TestCaseOperation1(input *InputService2TestShapeInputService2TestCaseOperation1Input) (*InputService2TestShapeInputService2TestCaseOperation1Output, error) {
  428. req, out := c.InputService2TestCaseOperation1Request(input)
  429. return out, req.Send()
  430. }
  431. // InputService2TestCaseOperation1WithContext is the same as InputService2TestCaseOperation1 with the addition of
  432. // the ability to pass a context and additional request options.
  433. //
  434. // See InputService2TestCaseOperation1 for details on how to use this API operation.
  435. //
  436. // The context must be non-nil and will be used for request cancellation. If
  437. // the context is nil a panic will occur. In the future the SDK may create
  438. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  439. // for more information on using Contexts.
  440. func (c *InputService2ProtocolTest) InputService2TestCaseOperation1WithContext(ctx aws.Context, input *InputService2TestShapeInputService2TestCaseOperation1Input, opts ...request.Option) (*InputService2TestShapeInputService2TestCaseOperation1Output, error) {
  441. req, out := c.InputService2TestCaseOperation1Request(input)
  442. req.SetContext(ctx)
  443. req.ApplyOptions(opts...)
  444. return out, req.Send()
  445. }
  446. type InputService2TestShapeInputService2TestCaseOperation1Input struct {
  447. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  448. First *bool `type:"boolean"`
  449. Fourth *int64 `type:"integer"`
  450. Second *bool `type:"boolean"`
  451. Third *float64 `type:"float"`
  452. }
  453. // SetFirst sets the First field's value.
  454. func (s *InputService2TestShapeInputService2TestCaseOperation1Input) SetFirst(v bool) *InputService2TestShapeInputService2TestCaseOperation1Input {
  455. s.First = &v
  456. return s
  457. }
  458. // SetFourth sets the Fourth field's value.
  459. func (s *InputService2TestShapeInputService2TestCaseOperation1Input) SetFourth(v int64) *InputService2TestShapeInputService2TestCaseOperation1Input {
  460. s.Fourth = &v
  461. return s
  462. }
  463. // SetSecond sets the Second field's value.
  464. func (s *InputService2TestShapeInputService2TestCaseOperation1Input) SetSecond(v bool) *InputService2TestShapeInputService2TestCaseOperation1Input {
  465. s.Second = &v
  466. return s
  467. }
  468. // SetThird sets the Third field's value.
  469. func (s *InputService2TestShapeInputService2TestCaseOperation1Input) SetThird(v float64) *InputService2TestShapeInputService2TestCaseOperation1Input {
  470. s.Third = &v
  471. return s
  472. }
  473. type InputService2TestShapeInputService2TestCaseOperation1Output struct {
  474. _ struct{} `type:"structure"`
  475. }
  476. // InputService3ProtocolTest provides the API operation methods for making requests to
  477. // . See this package's package overview docs
  478. // for details on the service.
  479. //
  480. // InputService3ProtocolTest methods are safe to use concurrently. It is not safe to
  481. // modify mutate any of the struct's properties though.
  482. type InputService3ProtocolTest struct {
  483. *client.Client
  484. }
  485. // New creates a new instance of the InputService3ProtocolTest client with a session.
  486. // If additional configuration is needed for the client instance use the optional
  487. // aws.Config parameter to add your extra config.
  488. //
  489. // Example:
  490. // // Create a InputService3ProtocolTest client from just a session.
  491. // svc := inputservice3protocoltest.New(mySession)
  492. //
  493. // // Create a InputService3ProtocolTest client with additional configuration
  494. // svc := inputservice3protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  495. func NewInputService3ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService3ProtocolTest {
  496. c := p.ClientConfig("inputservice3protocoltest", cfgs...)
  497. return newInputService3ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  498. }
  499. // newClient creates, initializes and returns a new service client instance.
  500. func newInputService3ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService3ProtocolTest {
  501. svc := &InputService3ProtocolTest{
  502. Client: client.New(
  503. cfg,
  504. metadata.ClientInfo{
  505. ServiceName: "InputService3ProtocolTest",
  506. ServiceID: "InputService3ProtocolTest",
  507. SigningName: signingName,
  508. SigningRegion: signingRegion,
  509. Endpoint: endpoint,
  510. APIVersion: "2014-01-01",
  511. },
  512. handlers,
  513. ),
  514. }
  515. // Handlers
  516. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  517. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  518. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  519. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  520. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  521. return svc
  522. }
  523. // newRequest creates a new request for a InputService3ProtocolTest operation and runs any
  524. // custom request initialization.
  525. func (c *InputService3ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  526. req := c.NewRequest(op, params, data)
  527. return req
  528. }
  529. const opInputService3TestCaseOperation1 = "OperationName"
  530. // InputService3TestCaseOperation1Request generates a "aws/request.Request" representing the
  531. // client's request for the InputService3TestCaseOperation1 operation. The "output" return
  532. // value will be populated with the request's response once the request completes
  533. // successfully.
  534. //
  535. // Use "Send" method on the returned Request to send the API call to the service.
  536. // the "output" return value is not valid until after Send returns without error.
  537. //
  538. // See InputService3TestCaseOperation1 for more information on using the InputService3TestCaseOperation1
  539. // API call, and error handling.
  540. //
  541. // This method is useful when you want to inject custom logic or configuration
  542. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  543. //
  544. //
  545. // // Example sending a request using the InputService3TestCaseOperation1Request method.
  546. // req, resp := client.InputService3TestCaseOperation1Request(params)
  547. //
  548. // err := req.Send()
  549. // if err == nil { // resp is now filled
  550. // fmt.Println(resp)
  551. // }
  552. func (c *InputService3ProtocolTest) InputService3TestCaseOperation1Request(input *InputService3TestShapeInputService3TestCaseOperation1Input) (req *request.Request, output *InputService3TestShapeInputService3TestCaseOperation1Output) {
  553. op := &request.Operation{
  554. Name: opInputService3TestCaseOperation1,
  555. HTTPMethod: "POST",
  556. HTTPPath: "/2014-01-01/hostedzone",
  557. }
  558. if input == nil {
  559. input = &InputService3TestShapeInputService3TestCaseOperation1Input{}
  560. }
  561. output = &InputService3TestShapeInputService3TestCaseOperation1Output{}
  562. req = c.newRequest(op, input, output)
  563. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  564. return
  565. }
  566. // InputService3TestCaseOperation1 API operation for .
  567. //
  568. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  569. // with awserr.Error's Code and Message methods to get detailed information about
  570. // the error.
  571. //
  572. // See the AWS API reference guide for 's
  573. // API operation InputService3TestCaseOperation1 for usage and error information.
  574. func (c *InputService3ProtocolTest) InputService3TestCaseOperation1(input *InputService3TestShapeInputService3TestCaseOperation1Input) (*InputService3TestShapeInputService3TestCaseOperation1Output, error) {
  575. req, out := c.InputService3TestCaseOperation1Request(input)
  576. return out, req.Send()
  577. }
  578. // InputService3TestCaseOperation1WithContext is the same as InputService3TestCaseOperation1 with the addition of
  579. // the ability to pass a context and additional request options.
  580. //
  581. // See InputService3TestCaseOperation1 for details on how to use this API operation.
  582. //
  583. // The context must be non-nil and will be used for request cancellation. If
  584. // the context is nil a panic will occur. In the future the SDK may create
  585. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  586. // for more information on using Contexts.
  587. func (c *InputService3ProtocolTest) InputService3TestCaseOperation1WithContext(ctx aws.Context, input *InputService3TestShapeInputService3TestCaseOperation1Input, opts ...request.Option) (*InputService3TestShapeInputService3TestCaseOperation1Output, error) {
  588. req, out := c.InputService3TestCaseOperation1Request(input)
  589. req.SetContext(ctx)
  590. req.ApplyOptions(opts...)
  591. return out, req.Send()
  592. }
  593. const opInputService3TestCaseOperation2 = "OperationName"
  594. // InputService3TestCaseOperation2Request generates a "aws/request.Request" representing the
  595. // client's request for the InputService3TestCaseOperation2 operation. The "output" return
  596. // value will be populated with the request's response once the request completes
  597. // successfully.
  598. //
  599. // Use "Send" method on the returned Request to send the API call to the service.
  600. // the "output" return value is not valid until after Send returns without error.
  601. //
  602. // See InputService3TestCaseOperation2 for more information on using the InputService3TestCaseOperation2
  603. // API call, and error handling.
  604. //
  605. // This method is useful when you want to inject custom logic or configuration
  606. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  607. //
  608. //
  609. // // Example sending a request using the InputService3TestCaseOperation2Request method.
  610. // req, resp := client.InputService3TestCaseOperation2Request(params)
  611. //
  612. // err := req.Send()
  613. // if err == nil { // resp is now filled
  614. // fmt.Println(resp)
  615. // }
  616. func (c *InputService3ProtocolTest) InputService3TestCaseOperation2Request(input *InputService3TestShapeInputService3TestCaseOperation2Input) (req *request.Request, output *InputService3TestShapeInputService3TestCaseOperation2Output) {
  617. op := &request.Operation{
  618. Name: opInputService3TestCaseOperation2,
  619. HTTPMethod: "POST",
  620. HTTPPath: "/2014-01-01/hostedzone",
  621. }
  622. if input == nil {
  623. input = &InputService3TestShapeInputService3TestCaseOperation2Input{}
  624. }
  625. output = &InputService3TestShapeInputService3TestCaseOperation2Output{}
  626. req = c.newRequest(op, input, output)
  627. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  628. return
  629. }
  630. // InputService3TestCaseOperation2 API operation for .
  631. //
  632. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  633. // with awserr.Error's Code and Message methods to get detailed information about
  634. // the error.
  635. //
  636. // See the AWS API reference guide for 's
  637. // API operation InputService3TestCaseOperation2 for usage and error information.
  638. func (c *InputService3ProtocolTest) InputService3TestCaseOperation2(input *InputService3TestShapeInputService3TestCaseOperation2Input) (*InputService3TestShapeInputService3TestCaseOperation2Output, error) {
  639. req, out := c.InputService3TestCaseOperation2Request(input)
  640. return out, req.Send()
  641. }
  642. // InputService3TestCaseOperation2WithContext is the same as InputService3TestCaseOperation2 with the addition of
  643. // the ability to pass a context and additional request options.
  644. //
  645. // See InputService3TestCaseOperation2 for details on how to use this API operation.
  646. //
  647. // The context must be non-nil and will be used for request cancellation. If
  648. // the context is nil a panic will occur. In the future the SDK may create
  649. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  650. // for more information on using Contexts.
  651. func (c *InputService3ProtocolTest) InputService3TestCaseOperation2WithContext(ctx aws.Context, input *InputService3TestShapeInputService3TestCaseOperation2Input, opts ...request.Option) (*InputService3TestShapeInputService3TestCaseOperation2Output, error) {
  652. req, out := c.InputService3TestCaseOperation2Request(input)
  653. req.SetContext(ctx)
  654. req.ApplyOptions(opts...)
  655. return out, req.Send()
  656. }
  657. type InputService3TestShapeInputService3TestCaseOperation1Input struct {
  658. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  659. Description *string `type:"string"`
  660. SubStructure *InputService3TestShapeSubStructure `type:"structure"`
  661. }
  662. // SetDescription sets the Description field's value.
  663. func (s *InputService3TestShapeInputService3TestCaseOperation1Input) SetDescription(v string) *InputService3TestShapeInputService3TestCaseOperation1Input {
  664. s.Description = &v
  665. return s
  666. }
  667. // SetSubStructure sets the SubStructure field's value.
  668. func (s *InputService3TestShapeInputService3TestCaseOperation1Input) SetSubStructure(v *InputService3TestShapeSubStructure) *InputService3TestShapeInputService3TestCaseOperation1Input {
  669. s.SubStructure = v
  670. return s
  671. }
  672. type InputService3TestShapeInputService3TestCaseOperation1Output struct {
  673. _ struct{} `type:"structure"`
  674. }
  675. type InputService3TestShapeInputService3TestCaseOperation2Input struct {
  676. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  677. Description *string `type:"string"`
  678. SubStructure *InputService3TestShapeSubStructure `type:"structure"`
  679. }
  680. // SetDescription sets the Description field's value.
  681. func (s *InputService3TestShapeInputService3TestCaseOperation2Input) SetDescription(v string) *InputService3TestShapeInputService3TestCaseOperation2Input {
  682. s.Description = &v
  683. return s
  684. }
  685. // SetSubStructure sets the SubStructure field's value.
  686. func (s *InputService3TestShapeInputService3TestCaseOperation2Input) SetSubStructure(v *InputService3TestShapeSubStructure) *InputService3TestShapeInputService3TestCaseOperation2Input {
  687. s.SubStructure = v
  688. return s
  689. }
  690. type InputService3TestShapeInputService3TestCaseOperation2Output struct {
  691. _ struct{} `type:"structure"`
  692. }
  693. type InputService3TestShapeSubStructure struct {
  694. _ struct{} `type:"structure"`
  695. Bar *string `type:"string"`
  696. Foo *string `type:"string"`
  697. }
  698. // SetBar sets the Bar field's value.
  699. func (s *InputService3TestShapeSubStructure) SetBar(v string) *InputService3TestShapeSubStructure {
  700. s.Bar = &v
  701. return s
  702. }
  703. // SetFoo sets the Foo field's value.
  704. func (s *InputService3TestShapeSubStructure) SetFoo(v string) *InputService3TestShapeSubStructure {
  705. s.Foo = &v
  706. return s
  707. }
  708. // InputService4ProtocolTest provides the API operation methods for making requests to
  709. // . See this package's package overview docs
  710. // for details on the service.
  711. //
  712. // InputService4ProtocolTest methods are safe to use concurrently. It is not safe to
  713. // modify mutate any of the struct's properties though.
  714. type InputService4ProtocolTest struct {
  715. *client.Client
  716. }
  717. // New creates a new instance of the InputService4ProtocolTest client with a session.
  718. // If additional configuration is needed for the client instance use the optional
  719. // aws.Config parameter to add your extra config.
  720. //
  721. // Example:
  722. // // Create a InputService4ProtocolTest client from just a session.
  723. // svc := inputservice4protocoltest.New(mySession)
  724. //
  725. // // Create a InputService4ProtocolTest client with additional configuration
  726. // svc := inputservice4protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  727. func NewInputService4ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService4ProtocolTest {
  728. c := p.ClientConfig("inputservice4protocoltest", cfgs...)
  729. return newInputService4ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  730. }
  731. // newClient creates, initializes and returns a new service client instance.
  732. func newInputService4ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService4ProtocolTest {
  733. svc := &InputService4ProtocolTest{
  734. Client: client.New(
  735. cfg,
  736. metadata.ClientInfo{
  737. ServiceName: "InputService4ProtocolTest",
  738. ServiceID: "InputService4ProtocolTest",
  739. SigningName: signingName,
  740. SigningRegion: signingRegion,
  741. Endpoint: endpoint,
  742. APIVersion: "2014-01-01",
  743. },
  744. handlers,
  745. ),
  746. }
  747. // Handlers
  748. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  749. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  750. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  751. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  752. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  753. return svc
  754. }
  755. // newRequest creates a new request for a InputService4ProtocolTest operation and runs any
  756. // custom request initialization.
  757. func (c *InputService4ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  758. req := c.NewRequest(op, params, data)
  759. return req
  760. }
  761. const opInputService4TestCaseOperation1 = "OperationName"
  762. // InputService4TestCaseOperation1Request generates a "aws/request.Request" representing the
  763. // client's request for the InputService4TestCaseOperation1 operation. The "output" return
  764. // value will be populated with the request's response once the request completes
  765. // successfully.
  766. //
  767. // Use "Send" method on the returned Request to send the API call to the service.
  768. // the "output" return value is not valid until after Send returns without error.
  769. //
  770. // See InputService4TestCaseOperation1 for more information on using the InputService4TestCaseOperation1
  771. // API call, and error handling.
  772. //
  773. // This method is useful when you want to inject custom logic or configuration
  774. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  775. //
  776. //
  777. // // Example sending a request using the InputService4TestCaseOperation1Request method.
  778. // req, resp := client.InputService4TestCaseOperation1Request(params)
  779. //
  780. // err := req.Send()
  781. // if err == nil { // resp is now filled
  782. // fmt.Println(resp)
  783. // }
  784. func (c *InputService4ProtocolTest) InputService4TestCaseOperation1Request(input *InputService4TestShapeInputService4TestCaseOperation1Input) (req *request.Request, output *InputService4TestShapeInputService4TestCaseOperation1Output) {
  785. op := &request.Operation{
  786. Name: opInputService4TestCaseOperation1,
  787. HTTPMethod: "POST",
  788. HTTPPath: "/2014-01-01/hostedzone",
  789. }
  790. if input == nil {
  791. input = &InputService4TestShapeInputService4TestCaseOperation1Input{}
  792. }
  793. output = &InputService4TestShapeInputService4TestCaseOperation1Output{}
  794. req = c.newRequest(op, input, output)
  795. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  796. return
  797. }
  798. // InputService4TestCaseOperation1 API operation for .
  799. //
  800. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  801. // with awserr.Error's Code and Message methods to get detailed information about
  802. // the error.
  803. //
  804. // See the AWS API reference guide for 's
  805. // API operation InputService4TestCaseOperation1 for usage and error information.
  806. func (c *InputService4ProtocolTest) InputService4TestCaseOperation1(input *InputService4TestShapeInputService4TestCaseOperation1Input) (*InputService4TestShapeInputService4TestCaseOperation1Output, error) {
  807. req, out := c.InputService4TestCaseOperation1Request(input)
  808. return out, req.Send()
  809. }
  810. // InputService4TestCaseOperation1WithContext is the same as InputService4TestCaseOperation1 with the addition of
  811. // the ability to pass a context and additional request options.
  812. //
  813. // See InputService4TestCaseOperation1 for details on how to use this API operation.
  814. //
  815. // The context must be non-nil and will be used for request cancellation. If
  816. // the context is nil a panic will occur. In the future the SDK may create
  817. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  818. // for more information on using Contexts.
  819. func (c *InputService4ProtocolTest) InputService4TestCaseOperation1WithContext(ctx aws.Context, input *InputService4TestShapeInputService4TestCaseOperation1Input, opts ...request.Option) (*InputService4TestShapeInputService4TestCaseOperation1Output, error) {
  820. req, out := c.InputService4TestCaseOperation1Request(input)
  821. req.SetContext(ctx)
  822. req.ApplyOptions(opts...)
  823. return out, req.Send()
  824. }
  825. type InputService4TestShapeInputService4TestCaseOperation1Input struct {
  826. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  827. Description *string `type:"string"`
  828. SubStructure *InputService4TestShapeSubStructure `type:"structure"`
  829. }
  830. // SetDescription sets the Description field's value.
  831. func (s *InputService4TestShapeInputService4TestCaseOperation1Input) SetDescription(v string) *InputService4TestShapeInputService4TestCaseOperation1Input {
  832. s.Description = &v
  833. return s
  834. }
  835. // SetSubStructure sets the SubStructure field's value.
  836. func (s *InputService4TestShapeInputService4TestCaseOperation1Input) SetSubStructure(v *InputService4TestShapeSubStructure) *InputService4TestShapeInputService4TestCaseOperation1Input {
  837. s.SubStructure = v
  838. return s
  839. }
  840. type InputService4TestShapeInputService4TestCaseOperation1Output struct {
  841. _ struct{} `type:"structure"`
  842. }
  843. type InputService4TestShapeSubStructure struct {
  844. _ struct{} `type:"structure"`
  845. Bar *string `type:"string"`
  846. Foo *string `type:"string"`
  847. }
  848. // SetBar sets the Bar field's value.
  849. func (s *InputService4TestShapeSubStructure) SetBar(v string) *InputService4TestShapeSubStructure {
  850. s.Bar = &v
  851. return s
  852. }
  853. // SetFoo sets the Foo field's value.
  854. func (s *InputService4TestShapeSubStructure) SetFoo(v string) *InputService4TestShapeSubStructure {
  855. s.Foo = &v
  856. return s
  857. }
  858. // InputService5ProtocolTest provides the API operation methods for making requests to
  859. // . See this package's package overview docs
  860. // for details on the service.
  861. //
  862. // InputService5ProtocolTest methods are safe to use concurrently. It is not safe to
  863. // modify mutate any of the struct's properties though.
  864. type InputService5ProtocolTest struct {
  865. *client.Client
  866. }
  867. // New creates a new instance of the InputService5ProtocolTest client with a session.
  868. // If additional configuration is needed for the client instance use the optional
  869. // aws.Config parameter to add your extra config.
  870. //
  871. // Example:
  872. // // Create a InputService5ProtocolTest client from just a session.
  873. // svc := inputservice5protocoltest.New(mySession)
  874. //
  875. // // Create a InputService5ProtocolTest client with additional configuration
  876. // svc := inputservice5protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  877. func NewInputService5ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService5ProtocolTest {
  878. c := p.ClientConfig("inputservice5protocoltest", cfgs...)
  879. return newInputService5ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  880. }
  881. // newClient creates, initializes and returns a new service client instance.
  882. func newInputService5ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService5ProtocolTest {
  883. svc := &InputService5ProtocolTest{
  884. Client: client.New(
  885. cfg,
  886. metadata.ClientInfo{
  887. ServiceName: "InputService5ProtocolTest",
  888. ServiceID: "InputService5ProtocolTest",
  889. SigningName: signingName,
  890. SigningRegion: signingRegion,
  891. Endpoint: endpoint,
  892. APIVersion: "2014-01-01",
  893. },
  894. handlers,
  895. ),
  896. }
  897. // Handlers
  898. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  899. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  900. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  901. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  902. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  903. return svc
  904. }
  905. // newRequest creates a new request for a InputService5ProtocolTest operation and runs any
  906. // custom request initialization.
  907. func (c *InputService5ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  908. req := c.NewRequest(op, params, data)
  909. return req
  910. }
  911. const opInputService5TestCaseOperation1 = "OperationName"
  912. // InputService5TestCaseOperation1Request generates a "aws/request.Request" representing the
  913. // client's request for the InputService5TestCaseOperation1 operation. The "output" return
  914. // value will be populated with the request's response once the request completes
  915. // successfully.
  916. //
  917. // Use "Send" method on the returned Request to send the API call to the service.
  918. // the "output" return value is not valid until after Send returns without error.
  919. //
  920. // See InputService5TestCaseOperation1 for more information on using the InputService5TestCaseOperation1
  921. // API call, and error handling.
  922. //
  923. // This method is useful when you want to inject custom logic or configuration
  924. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  925. //
  926. //
  927. // // Example sending a request using the InputService5TestCaseOperation1Request method.
  928. // req, resp := client.InputService5TestCaseOperation1Request(params)
  929. //
  930. // err := req.Send()
  931. // if err == nil { // resp is now filled
  932. // fmt.Println(resp)
  933. // }
  934. func (c *InputService5ProtocolTest) InputService5TestCaseOperation1Request(input *InputService5TestShapeInputService5TestCaseOperation1Input) (req *request.Request, output *InputService5TestShapeInputService5TestCaseOperation1Output) {
  935. op := &request.Operation{
  936. Name: opInputService5TestCaseOperation1,
  937. HTTPMethod: "POST",
  938. HTTPPath: "/2014-01-01/hostedzone",
  939. }
  940. if input == nil {
  941. input = &InputService5TestShapeInputService5TestCaseOperation1Input{}
  942. }
  943. output = &InputService5TestShapeInputService5TestCaseOperation1Output{}
  944. req = c.newRequest(op, input, output)
  945. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  946. return
  947. }
  948. // InputService5TestCaseOperation1 API operation for .
  949. //
  950. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  951. // with awserr.Error's Code and Message methods to get detailed information about
  952. // the error.
  953. //
  954. // See the AWS API reference guide for 's
  955. // API operation InputService5TestCaseOperation1 for usage and error information.
  956. func (c *InputService5ProtocolTest) InputService5TestCaseOperation1(input *InputService5TestShapeInputService5TestCaseOperation1Input) (*InputService5TestShapeInputService5TestCaseOperation1Output, error) {
  957. req, out := c.InputService5TestCaseOperation1Request(input)
  958. return out, req.Send()
  959. }
  960. // InputService5TestCaseOperation1WithContext is the same as InputService5TestCaseOperation1 with the addition of
  961. // the ability to pass a context and additional request options.
  962. //
  963. // See InputService5TestCaseOperation1 for details on how to use this API operation.
  964. //
  965. // The context must be non-nil and will be used for request cancellation. If
  966. // the context is nil a panic will occur. In the future the SDK may create
  967. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  968. // for more information on using Contexts.
  969. func (c *InputService5ProtocolTest) InputService5TestCaseOperation1WithContext(ctx aws.Context, input *InputService5TestShapeInputService5TestCaseOperation1Input, opts ...request.Option) (*InputService5TestShapeInputService5TestCaseOperation1Output, error) {
  970. req, out := c.InputService5TestCaseOperation1Request(input)
  971. req.SetContext(ctx)
  972. req.ApplyOptions(opts...)
  973. return out, req.Send()
  974. }
  975. type InputService5TestShapeInputService5TestCaseOperation1Input struct {
  976. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  977. ListParam []*string `type:"list"`
  978. }
  979. // SetListParam sets the ListParam field's value.
  980. func (s *InputService5TestShapeInputService5TestCaseOperation1Input) SetListParam(v []*string) *InputService5TestShapeInputService5TestCaseOperation1Input {
  981. s.ListParam = v
  982. return s
  983. }
  984. type InputService5TestShapeInputService5TestCaseOperation1Output struct {
  985. _ struct{} `type:"structure"`
  986. }
  987. // InputService6ProtocolTest provides the API operation methods for making requests to
  988. // . See this package's package overview docs
  989. // for details on the service.
  990. //
  991. // InputService6ProtocolTest methods are safe to use concurrently. It is not safe to
  992. // modify mutate any of the struct's properties though.
  993. type InputService6ProtocolTest struct {
  994. *client.Client
  995. }
  996. // New creates a new instance of the InputService6ProtocolTest client with a session.
  997. // If additional configuration is needed for the client instance use the optional
  998. // aws.Config parameter to add your extra config.
  999. //
  1000. // Example:
  1001. // // Create a InputService6ProtocolTest client from just a session.
  1002. // svc := inputservice6protocoltest.New(mySession)
  1003. //
  1004. // // Create a InputService6ProtocolTest client with additional configuration
  1005. // svc := inputservice6protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  1006. func NewInputService6ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService6ProtocolTest {
  1007. c := p.ClientConfig("inputservice6protocoltest", cfgs...)
  1008. return newInputService6ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  1009. }
  1010. // newClient creates, initializes and returns a new service client instance.
  1011. func newInputService6ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService6ProtocolTest {
  1012. svc := &InputService6ProtocolTest{
  1013. Client: client.New(
  1014. cfg,
  1015. metadata.ClientInfo{
  1016. ServiceName: "InputService6ProtocolTest",
  1017. ServiceID: "InputService6ProtocolTest",
  1018. SigningName: signingName,
  1019. SigningRegion: signingRegion,
  1020. Endpoint: endpoint,
  1021. APIVersion: "2014-01-01",
  1022. },
  1023. handlers,
  1024. ),
  1025. }
  1026. // Handlers
  1027. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  1028. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  1029. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  1030. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  1031. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  1032. return svc
  1033. }
  1034. // newRequest creates a new request for a InputService6ProtocolTest operation and runs any
  1035. // custom request initialization.
  1036. func (c *InputService6ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  1037. req := c.NewRequest(op, params, data)
  1038. return req
  1039. }
  1040. const opInputService6TestCaseOperation1 = "OperationName"
  1041. // InputService6TestCaseOperation1Request generates a "aws/request.Request" representing the
  1042. // client's request for the InputService6TestCaseOperation1 operation. The "output" return
  1043. // value will be populated with the request's response once the request completes
  1044. // successfully.
  1045. //
  1046. // Use "Send" method on the returned Request to send the API call to the service.
  1047. // the "output" return value is not valid until after Send returns without error.
  1048. //
  1049. // See InputService6TestCaseOperation1 for more information on using the InputService6TestCaseOperation1
  1050. // API call, and error handling.
  1051. //
  1052. // This method is useful when you want to inject custom logic or configuration
  1053. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1054. //
  1055. //
  1056. // // Example sending a request using the InputService6TestCaseOperation1Request method.
  1057. // req, resp := client.InputService6TestCaseOperation1Request(params)
  1058. //
  1059. // err := req.Send()
  1060. // if err == nil { // resp is now filled
  1061. // fmt.Println(resp)
  1062. // }
  1063. func (c *InputService6ProtocolTest) InputService6TestCaseOperation1Request(input *InputService6TestShapeInputService6TestCaseOperation1Input) (req *request.Request, output *InputService6TestShapeInputService6TestCaseOperation1Output) {
  1064. op := &request.Operation{
  1065. Name: opInputService6TestCaseOperation1,
  1066. HTTPMethod: "POST",
  1067. HTTPPath: "/2014-01-01/hostedzone",
  1068. }
  1069. if input == nil {
  1070. input = &InputService6TestShapeInputService6TestCaseOperation1Input{}
  1071. }
  1072. output = &InputService6TestShapeInputService6TestCaseOperation1Output{}
  1073. req = c.newRequest(op, input, output)
  1074. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1075. return
  1076. }
  1077. // InputService6TestCaseOperation1 API operation for .
  1078. //
  1079. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1080. // with awserr.Error's Code and Message methods to get detailed information about
  1081. // the error.
  1082. //
  1083. // See the AWS API reference guide for 's
  1084. // API operation InputService6TestCaseOperation1 for usage and error information.
  1085. func (c *InputService6ProtocolTest) InputService6TestCaseOperation1(input *InputService6TestShapeInputService6TestCaseOperation1Input) (*InputService6TestShapeInputService6TestCaseOperation1Output, error) {
  1086. req, out := c.InputService6TestCaseOperation1Request(input)
  1087. return out, req.Send()
  1088. }
  1089. // InputService6TestCaseOperation1WithContext is the same as InputService6TestCaseOperation1 with the addition of
  1090. // the ability to pass a context and additional request options.
  1091. //
  1092. // See InputService6TestCaseOperation1 for details on how to use this API operation.
  1093. //
  1094. // The context must be non-nil and will be used for request cancellation. If
  1095. // the context is nil a panic will occur. In the future the SDK may create
  1096. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1097. // for more information on using Contexts.
  1098. func (c *InputService6ProtocolTest) InputService6TestCaseOperation1WithContext(ctx aws.Context, input *InputService6TestShapeInputService6TestCaseOperation1Input, opts ...request.Option) (*InputService6TestShapeInputService6TestCaseOperation1Output, error) {
  1099. req, out := c.InputService6TestCaseOperation1Request(input)
  1100. req.SetContext(ctx)
  1101. req.ApplyOptions(opts...)
  1102. return out, req.Send()
  1103. }
  1104. type InputService6TestShapeInputService6TestCaseOperation1Input struct {
  1105. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  1106. ListParam []*string `locationName:"AlternateName" locationNameList:"NotMember" type:"list"`
  1107. }
  1108. // SetListParam sets the ListParam field's value.
  1109. func (s *InputService6TestShapeInputService6TestCaseOperation1Input) SetListParam(v []*string) *InputService6TestShapeInputService6TestCaseOperation1Input {
  1110. s.ListParam = v
  1111. return s
  1112. }
  1113. type InputService6TestShapeInputService6TestCaseOperation1Output struct {
  1114. _ struct{} `type:"structure"`
  1115. }
  1116. // InputService7ProtocolTest provides the API operation methods for making requests to
  1117. // . See this package's package overview docs
  1118. // for details on the service.
  1119. //
  1120. // InputService7ProtocolTest methods are safe to use concurrently. It is not safe to
  1121. // modify mutate any of the struct's properties though.
  1122. type InputService7ProtocolTest struct {
  1123. *client.Client
  1124. }
  1125. // New creates a new instance of the InputService7ProtocolTest client with a session.
  1126. // If additional configuration is needed for the client instance use the optional
  1127. // aws.Config parameter to add your extra config.
  1128. //
  1129. // Example:
  1130. // // Create a InputService7ProtocolTest client from just a session.
  1131. // svc := inputservice7protocoltest.New(mySession)
  1132. //
  1133. // // Create a InputService7ProtocolTest client with additional configuration
  1134. // svc := inputservice7protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  1135. func NewInputService7ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService7ProtocolTest {
  1136. c := p.ClientConfig("inputservice7protocoltest", cfgs...)
  1137. return newInputService7ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  1138. }
  1139. // newClient creates, initializes and returns a new service client instance.
  1140. func newInputService7ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService7ProtocolTest {
  1141. svc := &InputService7ProtocolTest{
  1142. Client: client.New(
  1143. cfg,
  1144. metadata.ClientInfo{
  1145. ServiceName: "InputService7ProtocolTest",
  1146. ServiceID: "InputService7ProtocolTest",
  1147. SigningName: signingName,
  1148. SigningRegion: signingRegion,
  1149. Endpoint: endpoint,
  1150. APIVersion: "2014-01-01",
  1151. },
  1152. handlers,
  1153. ),
  1154. }
  1155. // Handlers
  1156. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  1157. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  1158. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  1159. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  1160. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  1161. return svc
  1162. }
  1163. // newRequest creates a new request for a InputService7ProtocolTest operation and runs any
  1164. // custom request initialization.
  1165. func (c *InputService7ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  1166. req := c.NewRequest(op, params, data)
  1167. return req
  1168. }
  1169. const opInputService7TestCaseOperation1 = "OperationName"
  1170. // InputService7TestCaseOperation1Request generates a "aws/request.Request" representing the
  1171. // client's request for the InputService7TestCaseOperation1 operation. The "output" return
  1172. // value will be populated with the request's response once the request completes
  1173. // successfully.
  1174. //
  1175. // Use "Send" method on the returned Request to send the API call to the service.
  1176. // the "output" return value is not valid until after Send returns without error.
  1177. //
  1178. // See InputService7TestCaseOperation1 for more information on using the InputService7TestCaseOperation1
  1179. // API call, and error handling.
  1180. //
  1181. // This method is useful when you want to inject custom logic or configuration
  1182. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1183. //
  1184. //
  1185. // // Example sending a request using the InputService7TestCaseOperation1Request method.
  1186. // req, resp := client.InputService7TestCaseOperation1Request(params)
  1187. //
  1188. // err := req.Send()
  1189. // if err == nil { // resp is now filled
  1190. // fmt.Println(resp)
  1191. // }
  1192. func (c *InputService7ProtocolTest) InputService7TestCaseOperation1Request(input *InputService7TestShapeInputService7TestCaseOperation1Input) (req *request.Request, output *InputService7TestShapeInputService7TestCaseOperation1Output) {
  1193. op := &request.Operation{
  1194. Name: opInputService7TestCaseOperation1,
  1195. HTTPMethod: "POST",
  1196. HTTPPath: "/2014-01-01/hostedzone",
  1197. }
  1198. if input == nil {
  1199. input = &InputService7TestShapeInputService7TestCaseOperation1Input{}
  1200. }
  1201. output = &InputService7TestShapeInputService7TestCaseOperation1Output{}
  1202. req = c.newRequest(op, input, output)
  1203. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1204. return
  1205. }
  1206. // InputService7TestCaseOperation1 API operation for .
  1207. //
  1208. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1209. // with awserr.Error's Code and Message methods to get detailed information about
  1210. // the error.
  1211. //
  1212. // See the AWS API reference guide for 's
  1213. // API operation InputService7TestCaseOperation1 for usage and error information.
  1214. func (c *InputService7ProtocolTest) InputService7TestCaseOperation1(input *InputService7TestShapeInputService7TestCaseOperation1Input) (*InputService7TestShapeInputService7TestCaseOperation1Output, error) {
  1215. req, out := c.InputService7TestCaseOperation1Request(input)
  1216. return out, req.Send()
  1217. }
  1218. // InputService7TestCaseOperation1WithContext is the same as InputService7TestCaseOperation1 with the addition of
  1219. // the ability to pass a context and additional request options.
  1220. //
  1221. // See InputService7TestCaseOperation1 for details on how to use this API operation.
  1222. //
  1223. // The context must be non-nil and will be used for request cancellation. If
  1224. // the context is nil a panic will occur. In the future the SDK may create
  1225. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1226. // for more information on using Contexts.
  1227. func (c *InputService7ProtocolTest) InputService7TestCaseOperation1WithContext(ctx aws.Context, input *InputService7TestShapeInputService7TestCaseOperation1Input, opts ...request.Option) (*InputService7TestShapeInputService7TestCaseOperation1Output, error) {
  1228. req, out := c.InputService7TestCaseOperation1Request(input)
  1229. req.SetContext(ctx)
  1230. req.ApplyOptions(opts...)
  1231. return out, req.Send()
  1232. }
  1233. type InputService7TestShapeInputService7TestCaseOperation1Input struct {
  1234. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  1235. ListParam []*string `type:"list" flattened:"true"`
  1236. }
  1237. // SetListParam sets the ListParam field's value.
  1238. func (s *InputService7TestShapeInputService7TestCaseOperation1Input) SetListParam(v []*string) *InputService7TestShapeInputService7TestCaseOperation1Input {
  1239. s.ListParam = v
  1240. return s
  1241. }
  1242. type InputService7TestShapeInputService7TestCaseOperation1Output struct {
  1243. _ struct{} `type:"structure"`
  1244. }
  1245. // InputService8ProtocolTest provides the API operation methods for making requests to
  1246. // . See this package's package overview docs
  1247. // for details on the service.
  1248. //
  1249. // InputService8ProtocolTest methods are safe to use concurrently. It is not safe to
  1250. // modify mutate any of the struct's properties though.
  1251. type InputService8ProtocolTest struct {
  1252. *client.Client
  1253. }
  1254. // New creates a new instance of the InputService8ProtocolTest client with a session.
  1255. // If additional configuration is needed for the client instance use the optional
  1256. // aws.Config parameter to add your extra config.
  1257. //
  1258. // Example:
  1259. // // Create a InputService8ProtocolTest client from just a session.
  1260. // svc := inputservice8protocoltest.New(mySession)
  1261. //
  1262. // // Create a InputService8ProtocolTest client with additional configuration
  1263. // svc := inputservice8protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  1264. func NewInputService8ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService8ProtocolTest {
  1265. c := p.ClientConfig("inputservice8protocoltest", cfgs...)
  1266. return newInputService8ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  1267. }
  1268. // newClient creates, initializes and returns a new service client instance.
  1269. func newInputService8ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService8ProtocolTest {
  1270. svc := &InputService8ProtocolTest{
  1271. Client: client.New(
  1272. cfg,
  1273. metadata.ClientInfo{
  1274. ServiceName: "InputService8ProtocolTest",
  1275. ServiceID: "InputService8ProtocolTest",
  1276. SigningName: signingName,
  1277. SigningRegion: signingRegion,
  1278. Endpoint: endpoint,
  1279. APIVersion: "2014-01-01",
  1280. },
  1281. handlers,
  1282. ),
  1283. }
  1284. // Handlers
  1285. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  1286. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  1287. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  1288. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  1289. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  1290. return svc
  1291. }
  1292. // newRequest creates a new request for a InputService8ProtocolTest operation and runs any
  1293. // custom request initialization.
  1294. func (c *InputService8ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  1295. req := c.NewRequest(op, params, data)
  1296. return req
  1297. }
  1298. const opInputService8TestCaseOperation1 = "OperationName"
  1299. // InputService8TestCaseOperation1Request generates a "aws/request.Request" representing the
  1300. // client's request for the InputService8TestCaseOperation1 operation. The "output" return
  1301. // value will be populated with the request's response once the request completes
  1302. // successfully.
  1303. //
  1304. // Use "Send" method on the returned Request to send the API call to the service.
  1305. // the "output" return value is not valid until after Send returns without error.
  1306. //
  1307. // See InputService8TestCaseOperation1 for more information on using the InputService8TestCaseOperation1
  1308. // API call, and error handling.
  1309. //
  1310. // This method is useful when you want to inject custom logic or configuration
  1311. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1312. //
  1313. //
  1314. // // Example sending a request using the InputService8TestCaseOperation1Request method.
  1315. // req, resp := client.InputService8TestCaseOperation1Request(params)
  1316. //
  1317. // err := req.Send()
  1318. // if err == nil { // resp is now filled
  1319. // fmt.Println(resp)
  1320. // }
  1321. func (c *InputService8ProtocolTest) InputService8TestCaseOperation1Request(input *InputService8TestShapeInputService8TestCaseOperation1Input) (req *request.Request, output *InputService8TestShapeInputService8TestCaseOperation1Output) {
  1322. op := &request.Operation{
  1323. Name: opInputService8TestCaseOperation1,
  1324. HTTPMethod: "POST",
  1325. HTTPPath: "/2014-01-01/hostedzone",
  1326. }
  1327. if input == nil {
  1328. input = &InputService8TestShapeInputService8TestCaseOperation1Input{}
  1329. }
  1330. output = &InputService8TestShapeInputService8TestCaseOperation1Output{}
  1331. req = c.newRequest(op, input, output)
  1332. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1333. return
  1334. }
  1335. // InputService8TestCaseOperation1 API operation for .
  1336. //
  1337. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1338. // with awserr.Error's Code and Message methods to get detailed information about
  1339. // the error.
  1340. //
  1341. // See the AWS API reference guide for 's
  1342. // API operation InputService8TestCaseOperation1 for usage and error information.
  1343. func (c *InputService8ProtocolTest) InputService8TestCaseOperation1(input *InputService8TestShapeInputService8TestCaseOperation1Input) (*InputService8TestShapeInputService8TestCaseOperation1Output, error) {
  1344. req, out := c.InputService8TestCaseOperation1Request(input)
  1345. return out, req.Send()
  1346. }
  1347. // InputService8TestCaseOperation1WithContext is the same as InputService8TestCaseOperation1 with the addition of
  1348. // the ability to pass a context and additional request options.
  1349. //
  1350. // See InputService8TestCaseOperation1 for details on how to use this API operation.
  1351. //
  1352. // The context must be non-nil and will be used for request cancellation. If
  1353. // the context is nil a panic will occur. In the future the SDK may create
  1354. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1355. // for more information on using Contexts.
  1356. func (c *InputService8ProtocolTest) InputService8TestCaseOperation1WithContext(ctx aws.Context, input *InputService8TestShapeInputService8TestCaseOperation1Input, opts ...request.Option) (*InputService8TestShapeInputService8TestCaseOperation1Output, error) {
  1357. req, out := c.InputService8TestCaseOperation1Request(input)
  1358. req.SetContext(ctx)
  1359. req.ApplyOptions(opts...)
  1360. return out, req.Send()
  1361. }
  1362. type InputService8TestShapeInputService8TestCaseOperation1Input struct {
  1363. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  1364. ListParam []*string `locationName:"item" type:"list" flattened:"true"`
  1365. }
  1366. // SetListParam sets the ListParam field's value.
  1367. func (s *InputService8TestShapeInputService8TestCaseOperation1Input) SetListParam(v []*string) *InputService8TestShapeInputService8TestCaseOperation1Input {
  1368. s.ListParam = v
  1369. return s
  1370. }
  1371. type InputService8TestShapeInputService8TestCaseOperation1Output struct {
  1372. _ struct{} `type:"structure"`
  1373. }
  1374. // InputService9ProtocolTest provides the API operation methods for making requests to
  1375. // . See this package's package overview docs
  1376. // for details on the service.
  1377. //
  1378. // InputService9ProtocolTest methods are safe to use concurrently. It is not safe to
  1379. // modify mutate any of the struct's properties though.
  1380. type InputService9ProtocolTest struct {
  1381. *client.Client
  1382. }
  1383. // New creates a new instance of the InputService9ProtocolTest client with a session.
  1384. // If additional configuration is needed for the client instance use the optional
  1385. // aws.Config parameter to add your extra config.
  1386. //
  1387. // Example:
  1388. // // Create a InputService9ProtocolTest client from just a session.
  1389. // svc := inputservice9protocoltest.New(mySession)
  1390. //
  1391. // // Create a InputService9ProtocolTest client with additional configuration
  1392. // svc := inputservice9protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  1393. func NewInputService9ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService9ProtocolTest {
  1394. c := p.ClientConfig("inputservice9protocoltest", cfgs...)
  1395. return newInputService9ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  1396. }
  1397. // newClient creates, initializes and returns a new service client instance.
  1398. func newInputService9ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService9ProtocolTest {
  1399. svc := &InputService9ProtocolTest{
  1400. Client: client.New(
  1401. cfg,
  1402. metadata.ClientInfo{
  1403. ServiceName: "InputService9ProtocolTest",
  1404. ServiceID: "InputService9ProtocolTest",
  1405. SigningName: signingName,
  1406. SigningRegion: signingRegion,
  1407. Endpoint: endpoint,
  1408. APIVersion: "2014-01-01",
  1409. },
  1410. handlers,
  1411. ),
  1412. }
  1413. // Handlers
  1414. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  1415. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  1416. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  1417. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  1418. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  1419. return svc
  1420. }
  1421. // newRequest creates a new request for a InputService9ProtocolTest operation and runs any
  1422. // custom request initialization.
  1423. func (c *InputService9ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  1424. req := c.NewRequest(op, params, data)
  1425. return req
  1426. }
  1427. const opInputService9TestCaseOperation1 = "OperationName"
  1428. // InputService9TestCaseOperation1Request generates a "aws/request.Request" representing the
  1429. // client's request for the InputService9TestCaseOperation1 operation. The "output" return
  1430. // value will be populated with the request's response once the request completes
  1431. // successfully.
  1432. //
  1433. // Use "Send" method on the returned Request to send the API call to the service.
  1434. // the "output" return value is not valid until after Send returns without error.
  1435. //
  1436. // See InputService9TestCaseOperation1 for more information on using the InputService9TestCaseOperation1
  1437. // API call, and error handling.
  1438. //
  1439. // This method is useful when you want to inject custom logic or configuration
  1440. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1441. //
  1442. //
  1443. // // Example sending a request using the InputService9TestCaseOperation1Request method.
  1444. // req, resp := client.InputService9TestCaseOperation1Request(params)
  1445. //
  1446. // err := req.Send()
  1447. // if err == nil { // resp is now filled
  1448. // fmt.Println(resp)
  1449. // }
  1450. func (c *InputService9ProtocolTest) InputService9TestCaseOperation1Request(input *InputService9TestShapeInputService9TestCaseOperation1Input) (req *request.Request, output *InputService9TestShapeInputService9TestCaseOperation1Output) {
  1451. op := &request.Operation{
  1452. Name: opInputService9TestCaseOperation1,
  1453. HTTPMethod: "POST",
  1454. HTTPPath: "/2014-01-01/hostedzone",
  1455. }
  1456. if input == nil {
  1457. input = &InputService9TestShapeInputService9TestCaseOperation1Input{}
  1458. }
  1459. output = &InputService9TestShapeInputService9TestCaseOperation1Output{}
  1460. req = c.newRequest(op, input, output)
  1461. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1462. return
  1463. }
  1464. // InputService9TestCaseOperation1 API operation for .
  1465. //
  1466. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1467. // with awserr.Error's Code and Message methods to get detailed information about
  1468. // the error.
  1469. //
  1470. // See the AWS API reference guide for 's
  1471. // API operation InputService9TestCaseOperation1 for usage and error information.
  1472. func (c *InputService9ProtocolTest) InputService9TestCaseOperation1(input *InputService9TestShapeInputService9TestCaseOperation1Input) (*InputService9TestShapeInputService9TestCaseOperation1Output, error) {
  1473. req, out := c.InputService9TestCaseOperation1Request(input)
  1474. return out, req.Send()
  1475. }
  1476. // InputService9TestCaseOperation1WithContext is the same as InputService9TestCaseOperation1 with the addition of
  1477. // the ability to pass a context and additional request options.
  1478. //
  1479. // See InputService9TestCaseOperation1 for details on how to use this API operation.
  1480. //
  1481. // The context must be non-nil and will be used for request cancellation. If
  1482. // the context is nil a panic will occur. In the future the SDK may create
  1483. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1484. // for more information on using Contexts.
  1485. func (c *InputService9ProtocolTest) InputService9TestCaseOperation1WithContext(ctx aws.Context, input *InputService9TestShapeInputService9TestCaseOperation1Input, opts ...request.Option) (*InputService9TestShapeInputService9TestCaseOperation1Output, error) {
  1486. req, out := c.InputService9TestCaseOperation1Request(input)
  1487. req.SetContext(ctx)
  1488. req.ApplyOptions(opts...)
  1489. return out, req.Send()
  1490. }
  1491. type InputService9TestShapeInputService9TestCaseOperation1Input struct {
  1492. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  1493. ListParam []*InputService9TestShapeSingleFieldStruct `locationName:"item" type:"list" flattened:"true"`
  1494. }
  1495. // SetListParam sets the ListParam field's value.
  1496. func (s *InputService9TestShapeInputService9TestCaseOperation1Input) SetListParam(v []*InputService9TestShapeSingleFieldStruct) *InputService9TestShapeInputService9TestCaseOperation1Input {
  1497. s.ListParam = v
  1498. return s
  1499. }
  1500. type InputService9TestShapeInputService9TestCaseOperation1Output struct {
  1501. _ struct{} `type:"structure"`
  1502. }
  1503. type InputService9TestShapeSingleFieldStruct struct {
  1504. _ struct{} `type:"structure"`
  1505. Element *string `locationName:"value" type:"string"`
  1506. }
  1507. // SetElement sets the Element field's value.
  1508. func (s *InputService9TestShapeSingleFieldStruct) SetElement(v string) *InputService9TestShapeSingleFieldStruct {
  1509. s.Element = &v
  1510. return s
  1511. }
  1512. // InputService10ProtocolTest provides the API operation methods for making requests to
  1513. // . See this package's package overview docs
  1514. // for details on the service.
  1515. //
  1516. // InputService10ProtocolTest methods are safe to use concurrently. It is not safe to
  1517. // modify mutate any of the struct's properties though.
  1518. type InputService10ProtocolTest struct {
  1519. *client.Client
  1520. }
  1521. // New creates a new instance of the InputService10ProtocolTest client with a session.
  1522. // If additional configuration is needed for the client instance use the optional
  1523. // aws.Config parameter to add your extra config.
  1524. //
  1525. // Example:
  1526. // // Create a InputService10ProtocolTest client from just a session.
  1527. // svc := inputservice10protocoltest.New(mySession)
  1528. //
  1529. // // Create a InputService10ProtocolTest client with additional configuration
  1530. // svc := inputservice10protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  1531. func NewInputService10ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService10ProtocolTest {
  1532. c := p.ClientConfig("inputservice10protocoltest", cfgs...)
  1533. return newInputService10ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  1534. }
  1535. // newClient creates, initializes and returns a new service client instance.
  1536. func newInputService10ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService10ProtocolTest {
  1537. svc := &InputService10ProtocolTest{
  1538. Client: client.New(
  1539. cfg,
  1540. metadata.ClientInfo{
  1541. ServiceName: "InputService10ProtocolTest",
  1542. ServiceID: "InputService10ProtocolTest",
  1543. SigningName: signingName,
  1544. SigningRegion: signingRegion,
  1545. Endpoint: endpoint,
  1546. APIVersion: "2014-01-01",
  1547. },
  1548. handlers,
  1549. ),
  1550. }
  1551. // Handlers
  1552. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  1553. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  1554. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  1555. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  1556. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  1557. return svc
  1558. }
  1559. // newRequest creates a new request for a InputService10ProtocolTest operation and runs any
  1560. // custom request initialization.
  1561. func (c *InputService10ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  1562. req := c.NewRequest(op, params, data)
  1563. return req
  1564. }
  1565. const opInputService10TestCaseOperation1 = "OperationName"
  1566. // InputService10TestCaseOperation1Request generates a "aws/request.Request" representing the
  1567. // client's request for the InputService10TestCaseOperation1 operation. The "output" return
  1568. // value will be populated with the request's response once the request completes
  1569. // successfully.
  1570. //
  1571. // Use "Send" method on the returned Request to send the API call to the service.
  1572. // the "output" return value is not valid until after Send returns without error.
  1573. //
  1574. // See InputService10TestCaseOperation1 for more information on using the InputService10TestCaseOperation1
  1575. // API call, and error handling.
  1576. //
  1577. // This method is useful when you want to inject custom logic or configuration
  1578. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1579. //
  1580. //
  1581. // // Example sending a request using the InputService10TestCaseOperation1Request method.
  1582. // req, resp := client.InputService10TestCaseOperation1Request(params)
  1583. //
  1584. // err := req.Send()
  1585. // if err == nil { // resp is now filled
  1586. // fmt.Println(resp)
  1587. // }
  1588. func (c *InputService10ProtocolTest) InputService10TestCaseOperation1Request(input *InputService10TestShapeInputService10TestCaseOperation1Input) (req *request.Request, output *InputService10TestShapeInputService10TestCaseOperation1Output) {
  1589. op := &request.Operation{
  1590. Name: opInputService10TestCaseOperation1,
  1591. HTTPMethod: "POST",
  1592. HTTPPath: "/2014-01-01/hostedzone",
  1593. }
  1594. if input == nil {
  1595. input = &InputService10TestShapeInputService10TestCaseOperation1Input{}
  1596. }
  1597. output = &InputService10TestShapeInputService10TestCaseOperation1Output{}
  1598. req = c.newRequest(op, input, output)
  1599. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1600. return
  1601. }
  1602. // InputService10TestCaseOperation1 API operation for .
  1603. //
  1604. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1605. // with awserr.Error's Code and Message methods to get detailed information about
  1606. // the error.
  1607. //
  1608. // See the AWS API reference guide for 's
  1609. // API operation InputService10TestCaseOperation1 for usage and error information.
  1610. func (c *InputService10ProtocolTest) InputService10TestCaseOperation1(input *InputService10TestShapeInputService10TestCaseOperation1Input) (*InputService10TestShapeInputService10TestCaseOperation1Output, error) {
  1611. req, out := c.InputService10TestCaseOperation1Request(input)
  1612. return out, req.Send()
  1613. }
  1614. // InputService10TestCaseOperation1WithContext is the same as InputService10TestCaseOperation1 with the addition of
  1615. // the ability to pass a context and additional request options.
  1616. //
  1617. // See InputService10TestCaseOperation1 for details on how to use this API operation.
  1618. //
  1619. // The context must be non-nil and will be used for request cancellation. If
  1620. // the context is nil a panic will occur. In the future the SDK may create
  1621. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1622. // for more information on using Contexts.
  1623. func (c *InputService10ProtocolTest) InputService10TestCaseOperation1WithContext(ctx aws.Context, input *InputService10TestShapeInputService10TestCaseOperation1Input, opts ...request.Option) (*InputService10TestShapeInputService10TestCaseOperation1Output, error) {
  1624. req, out := c.InputService10TestCaseOperation1Request(input)
  1625. req.SetContext(ctx)
  1626. req.ApplyOptions(opts...)
  1627. return out, req.Send()
  1628. }
  1629. type InputService10TestShapeInputService10TestCaseOperation1Input struct {
  1630. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  1631. StructureParam *InputService10TestShapeStructureShape `type:"structure"`
  1632. }
  1633. // SetStructureParam sets the StructureParam field's value.
  1634. func (s *InputService10TestShapeInputService10TestCaseOperation1Input) SetStructureParam(v *InputService10TestShapeStructureShape) *InputService10TestShapeInputService10TestCaseOperation1Input {
  1635. s.StructureParam = v
  1636. return s
  1637. }
  1638. type InputService10TestShapeInputService10TestCaseOperation1Output struct {
  1639. _ struct{} `type:"structure"`
  1640. }
  1641. type InputService10TestShapeStructureShape struct {
  1642. _ struct{} `type:"structure"`
  1643. // B is automatically base64 encoded/decoded by the SDK.
  1644. B []byte `locationName:"b" type:"blob"`
  1645. }
  1646. // SetB sets the B field's value.
  1647. func (s *InputService10TestShapeStructureShape) SetB(v []byte) *InputService10TestShapeStructureShape {
  1648. s.B = v
  1649. return s
  1650. }
  1651. // InputService11ProtocolTest provides the API operation methods for making requests to
  1652. // . See this package's package overview docs
  1653. // for details on the service.
  1654. //
  1655. // InputService11ProtocolTest methods are safe to use concurrently. It is not safe to
  1656. // modify mutate any of the struct's properties though.
  1657. type InputService11ProtocolTest struct {
  1658. *client.Client
  1659. }
  1660. // New creates a new instance of the InputService11ProtocolTest client with a session.
  1661. // If additional configuration is needed for the client instance use the optional
  1662. // aws.Config parameter to add your extra config.
  1663. //
  1664. // Example:
  1665. // // Create a InputService11ProtocolTest client from just a session.
  1666. // svc := inputservice11protocoltest.New(mySession)
  1667. //
  1668. // // Create a InputService11ProtocolTest client with additional configuration
  1669. // svc := inputservice11protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  1670. func NewInputService11ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService11ProtocolTest {
  1671. c := p.ClientConfig("inputservice11protocoltest", cfgs...)
  1672. return newInputService11ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  1673. }
  1674. // newClient creates, initializes and returns a new service client instance.
  1675. func newInputService11ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService11ProtocolTest {
  1676. svc := &InputService11ProtocolTest{
  1677. Client: client.New(
  1678. cfg,
  1679. metadata.ClientInfo{
  1680. ServiceName: "InputService11ProtocolTest",
  1681. ServiceID: "InputService11ProtocolTest",
  1682. SigningName: signingName,
  1683. SigningRegion: signingRegion,
  1684. Endpoint: endpoint,
  1685. APIVersion: "2014-01-01",
  1686. },
  1687. handlers,
  1688. ),
  1689. }
  1690. // Handlers
  1691. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  1692. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  1693. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  1694. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  1695. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  1696. return svc
  1697. }
  1698. // newRequest creates a new request for a InputService11ProtocolTest operation and runs any
  1699. // custom request initialization.
  1700. func (c *InputService11ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  1701. req := c.NewRequest(op, params, data)
  1702. return req
  1703. }
  1704. const opInputService11TestCaseOperation1 = "OperationName"
  1705. // InputService11TestCaseOperation1Request generates a "aws/request.Request" representing the
  1706. // client's request for the InputService11TestCaseOperation1 operation. The "output" return
  1707. // value will be populated with the request's response once the request completes
  1708. // successfully.
  1709. //
  1710. // Use "Send" method on the returned Request to send the API call to the service.
  1711. // the "output" return value is not valid until after Send returns without error.
  1712. //
  1713. // See InputService11TestCaseOperation1 for more information on using the InputService11TestCaseOperation1
  1714. // API call, and error handling.
  1715. //
  1716. // This method is useful when you want to inject custom logic or configuration
  1717. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1718. //
  1719. //
  1720. // // Example sending a request using the InputService11TestCaseOperation1Request method.
  1721. // req, resp := client.InputService11TestCaseOperation1Request(params)
  1722. //
  1723. // err := req.Send()
  1724. // if err == nil { // resp is now filled
  1725. // fmt.Println(resp)
  1726. // }
  1727. func (c *InputService11ProtocolTest) InputService11TestCaseOperation1Request(input *InputService11TestShapeInputService11TestCaseOperation1Input) (req *request.Request, output *InputService11TestShapeInputService11TestCaseOperation1Output) {
  1728. op := &request.Operation{
  1729. Name: opInputService11TestCaseOperation1,
  1730. HTTPMethod: "POST",
  1731. HTTPPath: "/2014-01-01/hostedzone",
  1732. }
  1733. if input == nil {
  1734. input = &InputService11TestShapeInputService11TestCaseOperation1Input{}
  1735. }
  1736. output = &InputService11TestShapeInputService11TestCaseOperation1Output{}
  1737. req = c.newRequest(op, input, output)
  1738. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1739. return
  1740. }
  1741. // InputService11TestCaseOperation1 API operation for .
  1742. //
  1743. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1744. // with awserr.Error's Code and Message methods to get detailed information about
  1745. // the error.
  1746. //
  1747. // See the AWS API reference guide for 's
  1748. // API operation InputService11TestCaseOperation1 for usage and error information.
  1749. func (c *InputService11ProtocolTest) InputService11TestCaseOperation1(input *InputService11TestShapeInputService11TestCaseOperation1Input) (*InputService11TestShapeInputService11TestCaseOperation1Output, error) {
  1750. req, out := c.InputService11TestCaseOperation1Request(input)
  1751. return out, req.Send()
  1752. }
  1753. // InputService11TestCaseOperation1WithContext is the same as InputService11TestCaseOperation1 with the addition of
  1754. // the ability to pass a context and additional request options.
  1755. //
  1756. // See InputService11TestCaseOperation1 for details on how to use this API operation.
  1757. //
  1758. // The context must be non-nil and will be used for request cancellation. If
  1759. // the context is nil a panic will occur. In the future the SDK may create
  1760. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1761. // for more information on using Contexts.
  1762. func (c *InputService11ProtocolTest) InputService11TestCaseOperation1WithContext(ctx aws.Context, input *InputService11TestShapeInputService11TestCaseOperation1Input, opts ...request.Option) (*InputService11TestShapeInputService11TestCaseOperation1Output, error) {
  1763. req, out := c.InputService11TestCaseOperation1Request(input)
  1764. req.SetContext(ctx)
  1765. req.ApplyOptions(opts...)
  1766. return out, req.Send()
  1767. }
  1768. type InputService11TestShapeInputService11TestCaseOperation1Input struct {
  1769. _ struct{} `locationName:"TimestampStructure" type:"structure" xmlURI:"https://foo/"`
  1770. TimeArg *time.Time `type:"timestamp"`
  1771. TimeArgInHeader *time.Time `location:"header" locationName:"x-amz-timearg" type:"timestamp"`
  1772. TimeArgInQuery *time.Time `location:"querystring" locationName:"TimeQuery" type:"timestamp"`
  1773. TimeCustom *time.Time `type:"timestamp" timestampFormat:"rfc822"`
  1774. TimeCustomInHeader *time.Time `location:"header" locationName:"x-amz-timecustom-header" type:"timestamp" timestampFormat:"unixTimestamp"`
  1775. TimeCustomInQuery *time.Time `location:"querystring" locationName:"TimeCustomQuery" type:"timestamp" timestampFormat:"unixTimestamp"`
  1776. TimeFormat *time.Time `type:"timestamp" timestampFormat:"rfc822"`
  1777. TimeFormatInHeader *time.Time `location:"header" locationName:"x-amz-timeformat-header" type:"timestamp" timestampFormat:"unixTimestamp"`
  1778. TimeFormatInQuery *time.Time `location:"querystring" locationName:"TimeFormatQuery" type:"timestamp" timestampFormat:"unixTimestamp"`
  1779. }
  1780. // SetTimeArg sets the TimeArg field's value.
  1781. func (s *InputService11TestShapeInputService11TestCaseOperation1Input) SetTimeArg(v time.Time) *InputService11TestShapeInputService11TestCaseOperation1Input {
  1782. s.TimeArg = &v
  1783. return s
  1784. }
  1785. // SetTimeArgInHeader sets the TimeArgInHeader field's value.
  1786. func (s *InputService11TestShapeInputService11TestCaseOperation1Input) SetTimeArgInHeader(v time.Time) *InputService11TestShapeInputService11TestCaseOperation1Input {
  1787. s.TimeArgInHeader = &v
  1788. return s
  1789. }
  1790. // SetTimeArgInQuery sets the TimeArgInQuery field's value.
  1791. func (s *InputService11TestShapeInputService11TestCaseOperation1Input) SetTimeArgInQuery(v time.Time) *InputService11TestShapeInputService11TestCaseOperation1Input {
  1792. s.TimeArgInQuery = &v
  1793. return s
  1794. }
  1795. // SetTimeCustom sets the TimeCustom field's value.
  1796. func (s *InputService11TestShapeInputService11TestCaseOperation1Input) SetTimeCustom(v time.Time) *InputService11TestShapeInputService11TestCaseOperation1Input {
  1797. s.TimeCustom = &v
  1798. return s
  1799. }
  1800. // SetTimeCustomInHeader sets the TimeCustomInHeader field's value.
  1801. func (s *InputService11TestShapeInputService11TestCaseOperation1Input) SetTimeCustomInHeader(v time.Time) *InputService11TestShapeInputService11TestCaseOperation1Input {
  1802. s.TimeCustomInHeader = &v
  1803. return s
  1804. }
  1805. // SetTimeCustomInQuery sets the TimeCustomInQuery field's value.
  1806. func (s *InputService11TestShapeInputService11TestCaseOperation1Input) SetTimeCustomInQuery(v time.Time) *InputService11TestShapeInputService11TestCaseOperation1Input {
  1807. s.TimeCustomInQuery = &v
  1808. return s
  1809. }
  1810. // SetTimeFormat sets the TimeFormat field's value.
  1811. func (s *InputService11TestShapeInputService11TestCaseOperation1Input) SetTimeFormat(v time.Time) *InputService11TestShapeInputService11TestCaseOperation1Input {
  1812. s.TimeFormat = &v
  1813. return s
  1814. }
  1815. // SetTimeFormatInHeader sets the TimeFormatInHeader field's value.
  1816. func (s *InputService11TestShapeInputService11TestCaseOperation1Input) SetTimeFormatInHeader(v time.Time) *InputService11TestShapeInputService11TestCaseOperation1Input {
  1817. s.TimeFormatInHeader = &v
  1818. return s
  1819. }
  1820. // SetTimeFormatInQuery sets the TimeFormatInQuery field's value.
  1821. func (s *InputService11TestShapeInputService11TestCaseOperation1Input) SetTimeFormatInQuery(v time.Time) *InputService11TestShapeInputService11TestCaseOperation1Input {
  1822. s.TimeFormatInQuery = &v
  1823. return s
  1824. }
  1825. type InputService11TestShapeInputService11TestCaseOperation1Output struct {
  1826. _ struct{} `type:"structure"`
  1827. }
  1828. // InputService12ProtocolTest provides the API operation methods for making requests to
  1829. // . See this package's package overview docs
  1830. // for details on the service.
  1831. //
  1832. // InputService12ProtocolTest methods are safe to use concurrently. It is not safe to
  1833. // modify mutate any of the struct's properties though.
  1834. type InputService12ProtocolTest struct {
  1835. *client.Client
  1836. }
  1837. // New creates a new instance of the InputService12ProtocolTest client with a session.
  1838. // If additional configuration is needed for the client instance use the optional
  1839. // aws.Config parameter to add your extra config.
  1840. //
  1841. // Example:
  1842. // // Create a InputService12ProtocolTest client from just a session.
  1843. // svc := inputservice12protocoltest.New(mySession)
  1844. //
  1845. // // Create a InputService12ProtocolTest client with additional configuration
  1846. // svc := inputservice12protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  1847. func NewInputService12ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService12ProtocolTest {
  1848. c := p.ClientConfig("inputservice12protocoltest", cfgs...)
  1849. return newInputService12ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  1850. }
  1851. // newClient creates, initializes and returns a new service client instance.
  1852. func newInputService12ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService12ProtocolTest {
  1853. svc := &InputService12ProtocolTest{
  1854. Client: client.New(
  1855. cfg,
  1856. metadata.ClientInfo{
  1857. ServiceName: "InputService12ProtocolTest",
  1858. ServiceID: "InputService12ProtocolTest",
  1859. SigningName: signingName,
  1860. SigningRegion: signingRegion,
  1861. Endpoint: endpoint,
  1862. APIVersion: "2014-01-01",
  1863. },
  1864. handlers,
  1865. ),
  1866. }
  1867. // Handlers
  1868. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  1869. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  1870. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  1871. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  1872. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  1873. return svc
  1874. }
  1875. // newRequest creates a new request for a InputService12ProtocolTest operation and runs any
  1876. // custom request initialization.
  1877. func (c *InputService12ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  1878. req := c.NewRequest(op, params, data)
  1879. return req
  1880. }
  1881. const opInputService12TestCaseOperation1 = "OperationName"
  1882. // InputService12TestCaseOperation1Request generates a "aws/request.Request" representing the
  1883. // client's request for the InputService12TestCaseOperation1 operation. The "output" return
  1884. // value will be populated with the request's response once the request completes
  1885. // successfully.
  1886. //
  1887. // Use "Send" method on the returned Request to send the API call to the service.
  1888. // the "output" return value is not valid until after Send returns without error.
  1889. //
  1890. // See InputService12TestCaseOperation1 for more information on using the InputService12TestCaseOperation1
  1891. // API call, and error handling.
  1892. //
  1893. // This method is useful when you want to inject custom logic or configuration
  1894. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1895. //
  1896. //
  1897. // // Example sending a request using the InputService12TestCaseOperation1Request method.
  1898. // req, resp := client.InputService12TestCaseOperation1Request(params)
  1899. //
  1900. // err := req.Send()
  1901. // if err == nil { // resp is now filled
  1902. // fmt.Println(resp)
  1903. // }
  1904. func (c *InputService12ProtocolTest) InputService12TestCaseOperation1Request(input *InputService12TestShapeInputService12TestCaseOperation1Input) (req *request.Request, output *InputService12TestShapeInputService12TestCaseOperation1Output) {
  1905. op := &request.Operation{
  1906. Name: opInputService12TestCaseOperation1,
  1907. HTTPMethod: "POST",
  1908. HTTPPath: "/",
  1909. }
  1910. if input == nil {
  1911. input = &InputService12TestShapeInputService12TestCaseOperation1Input{}
  1912. }
  1913. output = &InputService12TestShapeInputService12TestCaseOperation1Output{}
  1914. req = c.newRequest(op, input, output)
  1915. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1916. return
  1917. }
  1918. // InputService12TestCaseOperation1 API operation for .
  1919. //
  1920. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1921. // with awserr.Error's Code and Message methods to get detailed information about
  1922. // the error.
  1923. //
  1924. // See the AWS API reference guide for 's
  1925. // API operation InputService12TestCaseOperation1 for usage and error information.
  1926. func (c *InputService12ProtocolTest) InputService12TestCaseOperation1(input *InputService12TestShapeInputService12TestCaseOperation1Input) (*InputService12TestShapeInputService12TestCaseOperation1Output, error) {
  1927. req, out := c.InputService12TestCaseOperation1Request(input)
  1928. return out, req.Send()
  1929. }
  1930. // InputService12TestCaseOperation1WithContext is the same as InputService12TestCaseOperation1 with the addition of
  1931. // the ability to pass a context and additional request options.
  1932. //
  1933. // See InputService12TestCaseOperation1 for details on how to use this API operation.
  1934. //
  1935. // The context must be non-nil and will be used for request cancellation. If
  1936. // the context is nil a panic will occur. In the future the SDK may create
  1937. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1938. // for more information on using Contexts.
  1939. func (c *InputService12ProtocolTest) InputService12TestCaseOperation1WithContext(ctx aws.Context, input *InputService12TestShapeInputService12TestCaseOperation1Input, opts ...request.Option) (*InputService12TestShapeInputService12TestCaseOperation1Output, error) {
  1940. req, out := c.InputService12TestCaseOperation1Request(input)
  1941. req.SetContext(ctx)
  1942. req.ApplyOptions(opts...)
  1943. return out, req.Send()
  1944. }
  1945. type InputService12TestShapeInputService12TestCaseOperation1Input struct {
  1946. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  1947. Foo map[string]*string `location:"headers" locationName:"x-foo-" type:"map"`
  1948. }
  1949. // SetFoo sets the Foo field's value.
  1950. func (s *InputService12TestShapeInputService12TestCaseOperation1Input) SetFoo(v map[string]*string) *InputService12TestShapeInputService12TestCaseOperation1Input {
  1951. s.Foo = v
  1952. return s
  1953. }
  1954. type InputService12TestShapeInputService12TestCaseOperation1Output struct {
  1955. _ struct{} `type:"structure"`
  1956. }
  1957. // InputService13ProtocolTest provides the API operation methods for making requests to
  1958. // . See this package's package overview docs
  1959. // for details on the service.
  1960. //
  1961. // InputService13ProtocolTest methods are safe to use concurrently. It is not safe to
  1962. // modify mutate any of the struct's properties though.
  1963. type InputService13ProtocolTest struct {
  1964. *client.Client
  1965. }
  1966. // New creates a new instance of the InputService13ProtocolTest client with a session.
  1967. // If additional configuration is needed for the client instance use the optional
  1968. // aws.Config parameter to add your extra config.
  1969. //
  1970. // Example:
  1971. // // Create a InputService13ProtocolTest client from just a session.
  1972. // svc := inputservice13protocoltest.New(mySession)
  1973. //
  1974. // // Create a InputService13ProtocolTest client with additional configuration
  1975. // svc := inputservice13protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  1976. func NewInputService13ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService13ProtocolTest {
  1977. c := p.ClientConfig("inputservice13protocoltest", cfgs...)
  1978. return newInputService13ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  1979. }
  1980. // newClient creates, initializes and returns a new service client instance.
  1981. func newInputService13ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService13ProtocolTest {
  1982. svc := &InputService13ProtocolTest{
  1983. Client: client.New(
  1984. cfg,
  1985. metadata.ClientInfo{
  1986. ServiceName: "InputService13ProtocolTest",
  1987. ServiceID: "InputService13ProtocolTest",
  1988. SigningName: signingName,
  1989. SigningRegion: signingRegion,
  1990. Endpoint: endpoint,
  1991. APIVersion: "2014-01-01",
  1992. },
  1993. handlers,
  1994. ),
  1995. }
  1996. // Handlers
  1997. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  1998. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  1999. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  2000. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  2001. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  2002. return svc
  2003. }
  2004. // newRequest creates a new request for a InputService13ProtocolTest operation and runs any
  2005. // custom request initialization.
  2006. func (c *InputService13ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  2007. req := c.NewRequest(op, params, data)
  2008. return req
  2009. }
  2010. const opInputService13TestCaseOperation1 = "OperationName"
  2011. // InputService13TestCaseOperation1Request generates a "aws/request.Request" representing the
  2012. // client's request for the InputService13TestCaseOperation1 operation. The "output" return
  2013. // value will be populated with the request's response once the request completes
  2014. // successfully.
  2015. //
  2016. // Use "Send" method on the returned Request to send the API call to the service.
  2017. // the "output" return value is not valid until after Send returns without error.
  2018. //
  2019. // See InputService13TestCaseOperation1 for more information on using the InputService13TestCaseOperation1
  2020. // API call, and error handling.
  2021. //
  2022. // This method is useful when you want to inject custom logic or configuration
  2023. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2024. //
  2025. //
  2026. // // Example sending a request using the InputService13TestCaseOperation1Request method.
  2027. // req, resp := client.InputService13TestCaseOperation1Request(params)
  2028. //
  2029. // err := req.Send()
  2030. // if err == nil { // resp is now filled
  2031. // fmt.Println(resp)
  2032. // }
  2033. func (c *InputService13ProtocolTest) InputService13TestCaseOperation1Request(input *InputService13TestShapeInputService13TestCaseOperation1Input) (req *request.Request, output *InputService13TestShapeInputService13TestCaseOperation1Output) {
  2034. op := &request.Operation{
  2035. Name: opInputService13TestCaseOperation1,
  2036. HTTPMethod: "GET",
  2037. HTTPPath: "/path",
  2038. }
  2039. if input == nil {
  2040. input = &InputService13TestShapeInputService13TestCaseOperation1Input{}
  2041. }
  2042. output = &InputService13TestShapeInputService13TestCaseOperation1Output{}
  2043. req = c.newRequest(op, input, output)
  2044. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2045. return
  2046. }
  2047. // InputService13TestCaseOperation1 API operation for .
  2048. //
  2049. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2050. // with awserr.Error's Code and Message methods to get detailed information about
  2051. // the error.
  2052. //
  2053. // See the AWS API reference guide for 's
  2054. // API operation InputService13TestCaseOperation1 for usage and error information.
  2055. func (c *InputService13ProtocolTest) InputService13TestCaseOperation1(input *InputService13TestShapeInputService13TestCaseOperation1Input) (*InputService13TestShapeInputService13TestCaseOperation1Output, error) {
  2056. req, out := c.InputService13TestCaseOperation1Request(input)
  2057. return out, req.Send()
  2058. }
  2059. // InputService13TestCaseOperation1WithContext is the same as InputService13TestCaseOperation1 with the addition of
  2060. // the ability to pass a context and additional request options.
  2061. //
  2062. // See InputService13TestCaseOperation1 for details on how to use this API operation.
  2063. //
  2064. // The context must be non-nil and will be used for request cancellation. If
  2065. // the context is nil a panic will occur. In the future the SDK may create
  2066. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2067. // for more information on using Contexts.
  2068. func (c *InputService13ProtocolTest) InputService13TestCaseOperation1WithContext(ctx aws.Context, input *InputService13TestShapeInputService13TestCaseOperation1Input, opts ...request.Option) (*InputService13TestShapeInputService13TestCaseOperation1Output, error) {
  2069. req, out := c.InputService13TestCaseOperation1Request(input)
  2070. req.SetContext(ctx)
  2071. req.ApplyOptions(opts...)
  2072. return out, req.Send()
  2073. }
  2074. type InputService13TestShapeInputService13TestCaseOperation1Input struct {
  2075. _ struct{} `type:"structure"`
  2076. Items []*string `location:"querystring" locationName:"item" type:"list"`
  2077. }
  2078. // SetItems sets the Items field's value.
  2079. func (s *InputService13TestShapeInputService13TestCaseOperation1Input) SetItems(v []*string) *InputService13TestShapeInputService13TestCaseOperation1Input {
  2080. s.Items = v
  2081. return s
  2082. }
  2083. type InputService13TestShapeInputService13TestCaseOperation1Output struct {
  2084. _ struct{} `type:"structure"`
  2085. }
  2086. // InputService14ProtocolTest provides the API operation methods for making requests to
  2087. // . See this package's package overview docs
  2088. // for details on the service.
  2089. //
  2090. // InputService14ProtocolTest methods are safe to use concurrently. It is not safe to
  2091. // modify mutate any of the struct's properties though.
  2092. type InputService14ProtocolTest struct {
  2093. *client.Client
  2094. }
  2095. // New creates a new instance of the InputService14ProtocolTest client with a session.
  2096. // If additional configuration is needed for the client instance use the optional
  2097. // aws.Config parameter to add your extra config.
  2098. //
  2099. // Example:
  2100. // // Create a InputService14ProtocolTest client from just a session.
  2101. // svc := inputservice14protocoltest.New(mySession)
  2102. //
  2103. // // Create a InputService14ProtocolTest client with additional configuration
  2104. // svc := inputservice14protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  2105. func NewInputService14ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService14ProtocolTest {
  2106. c := p.ClientConfig("inputservice14protocoltest", cfgs...)
  2107. return newInputService14ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  2108. }
  2109. // newClient creates, initializes and returns a new service client instance.
  2110. func newInputService14ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService14ProtocolTest {
  2111. svc := &InputService14ProtocolTest{
  2112. Client: client.New(
  2113. cfg,
  2114. metadata.ClientInfo{
  2115. ServiceName: "InputService14ProtocolTest",
  2116. ServiceID: "InputService14ProtocolTest",
  2117. SigningName: signingName,
  2118. SigningRegion: signingRegion,
  2119. Endpoint: endpoint,
  2120. APIVersion: "2014-01-01",
  2121. },
  2122. handlers,
  2123. ),
  2124. }
  2125. // Handlers
  2126. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  2127. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  2128. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  2129. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  2130. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  2131. return svc
  2132. }
  2133. // newRequest creates a new request for a InputService14ProtocolTest operation and runs any
  2134. // custom request initialization.
  2135. func (c *InputService14ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  2136. req := c.NewRequest(op, params, data)
  2137. return req
  2138. }
  2139. const opInputService14TestCaseOperation1 = "OperationName"
  2140. // InputService14TestCaseOperation1Request generates a "aws/request.Request" representing the
  2141. // client's request for the InputService14TestCaseOperation1 operation. The "output" return
  2142. // value will be populated with the request's response once the request completes
  2143. // successfully.
  2144. //
  2145. // Use "Send" method on the returned Request to send the API call to the service.
  2146. // the "output" return value is not valid until after Send returns without error.
  2147. //
  2148. // See InputService14TestCaseOperation1 for more information on using the InputService14TestCaseOperation1
  2149. // API call, and error handling.
  2150. //
  2151. // This method is useful when you want to inject custom logic or configuration
  2152. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2153. //
  2154. //
  2155. // // Example sending a request using the InputService14TestCaseOperation1Request method.
  2156. // req, resp := client.InputService14TestCaseOperation1Request(params)
  2157. //
  2158. // err := req.Send()
  2159. // if err == nil { // resp is now filled
  2160. // fmt.Println(resp)
  2161. // }
  2162. func (c *InputService14ProtocolTest) InputService14TestCaseOperation1Request(input *InputService14TestShapeInputService14TestCaseOperation1Input) (req *request.Request, output *InputService14TestShapeInputService14TestCaseOperation1Output) {
  2163. op := &request.Operation{
  2164. Name: opInputService14TestCaseOperation1,
  2165. HTTPMethod: "GET",
  2166. HTTPPath: "/2014-01-01/jobsByPipeline/{PipelineId}",
  2167. }
  2168. if input == nil {
  2169. input = &InputService14TestShapeInputService14TestCaseOperation1Input{}
  2170. }
  2171. output = &InputService14TestShapeInputService14TestCaseOperation1Output{}
  2172. req = c.newRequest(op, input, output)
  2173. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2174. return
  2175. }
  2176. // InputService14TestCaseOperation1 API operation for .
  2177. //
  2178. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2179. // with awserr.Error's Code and Message methods to get detailed information about
  2180. // the error.
  2181. //
  2182. // See the AWS API reference guide for 's
  2183. // API operation InputService14TestCaseOperation1 for usage and error information.
  2184. func (c *InputService14ProtocolTest) InputService14TestCaseOperation1(input *InputService14TestShapeInputService14TestCaseOperation1Input) (*InputService14TestShapeInputService14TestCaseOperation1Output, error) {
  2185. req, out := c.InputService14TestCaseOperation1Request(input)
  2186. return out, req.Send()
  2187. }
  2188. // InputService14TestCaseOperation1WithContext is the same as InputService14TestCaseOperation1 with the addition of
  2189. // the ability to pass a context and additional request options.
  2190. //
  2191. // See InputService14TestCaseOperation1 for details on how to use this API operation.
  2192. //
  2193. // The context must be non-nil and will be used for request cancellation. If
  2194. // the context is nil a panic will occur. In the future the SDK may create
  2195. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2196. // for more information on using Contexts.
  2197. func (c *InputService14ProtocolTest) InputService14TestCaseOperation1WithContext(ctx aws.Context, input *InputService14TestShapeInputService14TestCaseOperation1Input, opts ...request.Option) (*InputService14TestShapeInputService14TestCaseOperation1Output, error) {
  2198. req, out := c.InputService14TestCaseOperation1Request(input)
  2199. req.SetContext(ctx)
  2200. req.ApplyOptions(opts...)
  2201. return out, req.Send()
  2202. }
  2203. type InputService14TestShapeInputService14TestCaseOperation1Input struct {
  2204. _ struct{} `type:"structure"`
  2205. // PipelineId is a required field
  2206. PipelineId *string `location:"uri" type:"string" required:"true"`
  2207. QueryDoc map[string]*string `location:"querystring" type:"map"`
  2208. }
  2209. // Validate inspects the fields of the type to determine if they are valid.
  2210. func (s *InputService14TestShapeInputService14TestCaseOperation1Input) Validate() error {
  2211. invalidParams := request.ErrInvalidParams{Context: "InputService14TestShapeInputService14TestCaseOperation1Input"}
  2212. if s.PipelineId == nil {
  2213. invalidParams.Add(request.NewErrParamRequired("PipelineId"))
  2214. }
  2215. if s.PipelineId != nil && len(*s.PipelineId) < 1 {
  2216. invalidParams.Add(request.NewErrParamMinLen("PipelineId", 1))
  2217. }
  2218. if invalidParams.Len() > 0 {
  2219. return invalidParams
  2220. }
  2221. return nil
  2222. }
  2223. // SetPipelineId sets the PipelineId field's value.
  2224. func (s *InputService14TestShapeInputService14TestCaseOperation1Input) SetPipelineId(v string) *InputService14TestShapeInputService14TestCaseOperation1Input {
  2225. s.PipelineId = &v
  2226. return s
  2227. }
  2228. // SetQueryDoc sets the QueryDoc field's value.
  2229. func (s *InputService14TestShapeInputService14TestCaseOperation1Input) SetQueryDoc(v map[string]*string) *InputService14TestShapeInputService14TestCaseOperation1Input {
  2230. s.QueryDoc = v
  2231. return s
  2232. }
  2233. type InputService14TestShapeInputService14TestCaseOperation1Output struct {
  2234. _ struct{} `type:"structure"`
  2235. }
  2236. // InputService15ProtocolTest provides the API operation methods for making requests to
  2237. // . See this package's package overview docs
  2238. // for details on the service.
  2239. //
  2240. // InputService15ProtocolTest methods are safe to use concurrently. It is not safe to
  2241. // modify mutate any of the struct's properties though.
  2242. type InputService15ProtocolTest struct {
  2243. *client.Client
  2244. }
  2245. // New creates a new instance of the InputService15ProtocolTest client with a session.
  2246. // If additional configuration is needed for the client instance use the optional
  2247. // aws.Config parameter to add your extra config.
  2248. //
  2249. // Example:
  2250. // // Create a InputService15ProtocolTest client from just a session.
  2251. // svc := inputservice15protocoltest.New(mySession)
  2252. //
  2253. // // Create a InputService15ProtocolTest client with additional configuration
  2254. // svc := inputservice15protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  2255. func NewInputService15ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService15ProtocolTest {
  2256. c := p.ClientConfig("inputservice15protocoltest", cfgs...)
  2257. return newInputService15ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  2258. }
  2259. // newClient creates, initializes and returns a new service client instance.
  2260. func newInputService15ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService15ProtocolTest {
  2261. svc := &InputService15ProtocolTest{
  2262. Client: client.New(
  2263. cfg,
  2264. metadata.ClientInfo{
  2265. ServiceName: "InputService15ProtocolTest",
  2266. ServiceID: "InputService15ProtocolTest",
  2267. SigningName: signingName,
  2268. SigningRegion: signingRegion,
  2269. Endpoint: endpoint,
  2270. APIVersion: "2014-01-01",
  2271. },
  2272. handlers,
  2273. ),
  2274. }
  2275. // Handlers
  2276. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  2277. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  2278. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  2279. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  2280. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  2281. return svc
  2282. }
  2283. // newRequest creates a new request for a InputService15ProtocolTest operation and runs any
  2284. // custom request initialization.
  2285. func (c *InputService15ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  2286. req := c.NewRequest(op, params, data)
  2287. return req
  2288. }
  2289. const opInputService15TestCaseOperation1 = "OperationName"
  2290. // InputService15TestCaseOperation1Request generates a "aws/request.Request" representing the
  2291. // client's request for the InputService15TestCaseOperation1 operation. The "output" return
  2292. // value will be populated with the request's response once the request completes
  2293. // successfully.
  2294. //
  2295. // Use "Send" method on the returned Request to send the API call to the service.
  2296. // the "output" return value is not valid until after Send returns without error.
  2297. //
  2298. // See InputService15TestCaseOperation1 for more information on using the InputService15TestCaseOperation1
  2299. // API call, and error handling.
  2300. //
  2301. // This method is useful when you want to inject custom logic or configuration
  2302. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2303. //
  2304. //
  2305. // // Example sending a request using the InputService15TestCaseOperation1Request method.
  2306. // req, resp := client.InputService15TestCaseOperation1Request(params)
  2307. //
  2308. // err := req.Send()
  2309. // if err == nil { // resp is now filled
  2310. // fmt.Println(resp)
  2311. // }
  2312. func (c *InputService15ProtocolTest) InputService15TestCaseOperation1Request(input *InputService15TestShapeInputService15TestCaseOperation1Input) (req *request.Request, output *InputService15TestShapeInputService15TestCaseOperation1Output) {
  2313. op := &request.Operation{
  2314. Name: opInputService15TestCaseOperation1,
  2315. HTTPMethod: "GET",
  2316. HTTPPath: "/2014-01-01/jobsByPipeline/{PipelineId}",
  2317. }
  2318. if input == nil {
  2319. input = &InputService15TestShapeInputService15TestCaseOperation1Input{}
  2320. }
  2321. output = &InputService15TestShapeInputService15TestCaseOperation1Output{}
  2322. req = c.newRequest(op, input, output)
  2323. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2324. return
  2325. }
  2326. // InputService15TestCaseOperation1 API operation for .
  2327. //
  2328. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2329. // with awserr.Error's Code and Message methods to get detailed information about
  2330. // the error.
  2331. //
  2332. // See the AWS API reference guide for 's
  2333. // API operation InputService15TestCaseOperation1 for usage and error information.
  2334. func (c *InputService15ProtocolTest) InputService15TestCaseOperation1(input *InputService15TestShapeInputService15TestCaseOperation1Input) (*InputService15TestShapeInputService15TestCaseOperation1Output, error) {
  2335. req, out := c.InputService15TestCaseOperation1Request(input)
  2336. return out, req.Send()
  2337. }
  2338. // InputService15TestCaseOperation1WithContext is the same as InputService15TestCaseOperation1 with the addition of
  2339. // the ability to pass a context and additional request options.
  2340. //
  2341. // See InputService15TestCaseOperation1 for details on how to use this API operation.
  2342. //
  2343. // The context must be non-nil and will be used for request cancellation. If
  2344. // the context is nil a panic will occur. In the future the SDK may create
  2345. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2346. // for more information on using Contexts.
  2347. func (c *InputService15ProtocolTest) InputService15TestCaseOperation1WithContext(ctx aws.Context, input *InputService15TestShapeInputService15TestCaseOperation1Input, opts ...request.Option) (*InputService15TestShapeInputService15TestCaseOperation1Output, error) {
  2348. req, out := c.InputService15TestCaseOperation1Request(input)
  2349. req.SetContext(ctx)
  2350. req.ApplyOptions(opts...)
  2351. return out, req.Send()
  2352. }
  2353. type InputService15TestShapeInputService15TestCaseOperation1Input struct {
  2354. _ struct{} `type:"structure"`
  2355. // PipelineId is a required field
  2356. PipelineId *string `location:"uri" type:"string" required:"true"`
  2357. QueryDoc map[string][]*string `location:"querystring" type:"map"`
  2358. }
  2359. // Validate inspects the fields of the type to determine if they are valid.
  2360. func (s *InputService15TestShapeInputService15TestCaseOperation1Input) Validate() error {
  2361. invalidParams := request.ErrInvalidParams{Context: "InputService15TestShapeInputService15TestCaseOperation1Input"}
  2362. if s.PipelineId == nil {
  2363. invalidParams.Add(request.NewErrParamRequired("PipelineId"))
  2364. }
  2365. if s.PipelineId != nil && len(*s.PipelineId) < 1 {
  2366. invalidParams.Add(request.NewErrParamMinLen("PipelineId", 1))
  2367. }
  2368. if invalidParams.Len() > 0 {
  2369. return invalidParams
  2370. }
  2371. return nil
  2372. }
  2373. // SetPipelineId sets the PipelineId field's value.
  2374. func (s *InputService15TestShapeInputService15TestCaseOperation1Input) SetPipelineId(v string) *InputService15TestShapeInputService15TestCaseOperation1Input {
  2375. s.PipelineId = &v
  2376. return s
  2377. }
  2378. // SetQueryDoc sets the QueryDoc field's value.
  2379. func (s *InputService15TestShapeInputService15TestCaseOperation1Input) SetQueryDoc(v map[string][]*string) *InputService15TestShapeInputService15TestCaseOperation1Input {
  2380. s.QueryDoc = v
  2381. return s
  2382. }
  2383. type InputService15TestShapeInputService15TestCaseOperation1Output struct {
  2384. _ struct{} `type:"structure"`
  2385. }
  2386. // InputService16ProtocolTest provides the API operation methods for making requests to
  2387. // . See this package's package overview docs
  2388. // for details on the service.
  2389. //
  2390. // InputService16ProtocolTest methods are safe to use concurrently. It is not safe to
  2391. // modify mutate any of the struct's properties though.
  2392. type InputService16ProtocolTest struct {
  2393. *client.Client
  2394. }
  2395. // New creates a new instance of the InputService16ProtocolTest client with a session.
  2396. // If additional configuration is needed for the client instance use the optional
  2397. // aws.Config parameter to add your extra config.
  2398. //
  2399. // Example:
  2400. // // Create a InputService16ProtocolTest client from just a session.
  2401. // svc := inputservice16protocoltest.New(mySession)
  2402. //
  2403. // // Create a InputService16ProtocolTest client with additional configuration
  2404. // svc := inputservice16protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  2405. func NewInputService16ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService16ProtocolTest {
  2406. c := p.ClientConfig("inputservice16protocoltest", cfgs...)
  2407. return newInputService16ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  2408. }
  2409. // newClient creates, initializes and returns a new service client instance.
  2410. func newInputService16ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService16ProtocolTest {
  2411. svc := &InputService16ProtocolTest{
  2412. Client: client.New(
  2413. cfg,
  2414. metadata.ClientInfo{
  2415. ServiceName: "InputService16ProtocolTest",
  2416. ServiceID: "InputService16ProtocolTest",
  2417. SigningName: signingName,
  2418. SigningRegion: signingRegion,
  2419. Endpoint: endpoint,
  2420. APIVersion: "2014-01-01",
  2421. },
  2422. handlers,
  2423. ),
  2424. }
  2425. // Handlers
  2426. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  2427. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  2428. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  2429. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  2430. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  2431. return svc
  2432. }
  2433. // newRequest creates a new request for a InputService16ProtocolTest operation and runs any
  2434. // custom request initialization.
  2435. func (c *InputService16ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  2436. req := c.NewRequest(op, params, data)
  2437. return req
  2438. }
  2439. const opInputService16TestCaseOperation1 = "OperationName"
  2440. // InputService16TestCaseOperation1Request generates a "aws/request.Request" representing the
  2441. // client's request for the InputService16TestCaseOperation1 operation. The "output" return
  2442. // value will be populated with the request's response once the request completes
  2443. // successfully.
  2444. //
  2445. // Use "Send" method on the returned Request to send the API call to the service.
  2446. // the "output" return value is not valid until after Send returns without error.
  2447. //
  2448. // See InputService16TestCaseOperation1 for more information on using the InputService16TestCaseOperation1
  2449. // API call, and error handling.
  2450. //
  2451. // This method is useful when you want to inject custom logic or configuration
  2452. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2453. //
  2454. //
  2455. // // Example sending a request using the InputService16TestCaseOperation1Request method.
  2456. // req, resp := client.InputService16TestCaseOperation1Request(params)
  2457. //
  2458. // err := req.Send()
  2459. // if err == nil { // resp is now filled
  2460. // fmt.Println(resp)
  2461. // }
  2462. func (c *InputService16ProtocolTest) InputService16TestCaseOperation1Request(input *InputService16TestShapeInputService16TestCaseOperation1Input) (req *request.Request, output *InputService16TestShapeInputService16TestCaseOperation1Output) {
  2463. op := &request.Operation{
  2464. Name: opInputService16TestCaseOperation1,
  2465. HTTPMethod: "GET",
  2466. HTTPPath: "/path",
  2467. }
  2468. if input == nil {
  2469. input = &InputService16TestShapeInputService16TestCaseOperation1Input{}
  2470. }
  2471. output = &InputService16TestShapeInputService16TestCaseOperation1Output{}
  2472. req = c.newRequest(op, input, output)
  2473. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2474. return
  2475. }
  2476. // InputService16TestCaseOperation1 API operation for .
  2477. //
  2478. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2479. // with awserr.Error's Code and Message methods to get detailed information about
  2480. // the error.
  2481. //
  2482. // See the AWS API reference guide for 's
  2483. // API operation InputService16TestCaseOperation1 for usage and error information.
  2484. func (c *InputService16ProtocolTest) InputService16TestCaseOperation1(input *InputService16TestShapeInputService16TestCaseOperation1Input) (*InputService16TestShapeInputService16TestCaseOperation1Output, error) {
  2485. req, out := c.InputService16TestCaseOperation1Request(input)
  2486. return out, req.Send()
  2487. }
  2488. // InputService16TestCaseOperation1WithContext is the same as InputService16TestCaseOperation1 with the addition of
  2489. // the ability to pass a context and additional request options.
  2490. //
  2491. // See InputService16TestCaseOperation1 for details on how to use this API operation.
  2492. //
  2493. // The context must be non-nil and will be used for request cancellation. If
  2494. // the context is nil a panic will occur. In the future the SDK may create
  2495. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2496. // for more information on using Contexts.
  2497. func (c *InputService16ProtocolTest) InputService16TestCaseOperation1WithContext(ctx aws.Context, input *InputService16TestShapeInputService16TestCaseOperation1Input, opts ...request.Option) (*InputService16TestShapeInputService16TestCaseOperation1Output, error) {
  2498. req, out := c.InputService16TestCaseOperation1Request(input)
  2499. req.SetContext(ctx)
  2500. req.ApplyOptions(opts...)
  2501. return out, req.Send()
  2502. }
  2503. const opInputService16TestCaseOperation2 = "OperationName"
  2504. // InputService16TestCaseOperation2Request generates a "aws/request.Request" representing the
  2505. // client's request for the InputService16TestCaseOperation2 operation. The "output" return
  2506. // value will be populated with the request's response once the request completes
  2507. // successfully.
  2508. //
  2509. // Use "Send" method on the returned Request to send the API call to the service.
  2510. // the "output" return value is not valid until after Send returns without error.
  2511. //
  2512. // See InputService16TestCaseOperation2 for more information on using the InputService16TestCaseOperation2
  2513. // API call, and error handling.
  2514. //
  2515. // This method is useful when you want to inject custom logic or configuration
  2516. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2517. //
  2518. //
  2519. // // Example sending a request using the InputService16TestCaseOperation2Request method.
  2520. // req, resp := client.InputService16TestCaseOperation2Request(params)
  2521. //
  2522. // err := req.Send()
  2523. // if err == nil { // resp is now filled
  2524. // fmt.Println(resp)
  2525. // }
  2526. func (c *InputService16ProtocolTest) InputService16TestCaseOperation2Request(input *InputService16TestShapeInputService16TestCaseOperation2Input) (req *request.Request, output *InputService16TestShapeInputService16TestCaseOperation2Output) {
  2527. op := &request.Operation{
  2528. Name: opInputService16TestCaseOperation2,
  2529. HTTPMethod: "GET",
  2530. HTTPPath: "/path",
  2531. }
  2532. if input == nil {
  2533. input = &InputService16TestShapeInputService16TestCaseOperation2Input{}
  2534. }
  2535. output = &InputService16TestShapeInputService16TestCaseOperation2Output{}
  2536. req = c.newRequest(op, input, output)
  2537. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2538. return
  2539. }
  2540. // InputService16TestCaseOperation2 API operation for .
  2541. //
  2542. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2543. // with awserr.Error's Code and Message methods to get detailed information about
  2544. // the error.
  2545. //
  2546. // See the AWS API reference guide for 's
  2547. // API operation InputService16TestCaseOperation2 for usage and error information.
  2548. func (c *InputService16ProtocolTest) InputService16TestCaseOperation2(input *InputService16TestShapeInputService16TestCaseOperation2Input) (*InputService16TestShapeInputService16TestCaseOperation2Output, error) {
  2549. req, out := c.InputService16TestCaseOperation2Request(input)
  2550. return out, req.Send()
  2551. }
  2552. // InputService16TestCaseOperation2WithContext is the same as InputService16TestCaseOperation2 with the addition of
  2553. // the ability to pass a context and additional request options.
  2554. //
  2555. // See InputService16TestCaseOperation2 for details on how to use this API operation.
  2556. //
  2557. // The context must be non-nil and will be used for request cancellation. If
  2558. // the context is nil a panic will occur. In the future the SDK may create
  2559. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2560. // for more information on using Contexts.
  2561. func (c *InputService16ProtocolTest) InputService16TestCaseOperation2WithContext(ctx aws.Context, input *InputService16TestShapeInputService16TestCaseOperation2Input, opts ...request.Option) (*InputService16TestShapeInputService16TestCaseOperation2Output, error) {
  2562. req, out := c.InputService16TestCaseOperation2Request(input)
  2563. req.SetContext(ctx)
  2564. req.ApplyOptions(opts...)
  2565. return out, req.Send()
  2566. }
  2567. type InputService16TestShapeInputService16TestCaseOperation1Input struct {
  2568. _ struct{} `type:"structure"`
  2569. BoolQuery *bool `location:"querystring" locationName:"bool-query" type:"boolean"`
  2570. }
  2571. // SetBoolQuery sets the BoolQuery field's value.
  2572. func (s *InputService16TestShapeInputService16TestCaseOperation1Input) SetBoolQuery(v bool) *InputService16TestShapeInputService16TestCaseOperation1Input {
  2573. s.BoolQuery = &v
  2574. return s
  2575. }
  2576. type InputService16TestShapeInputService16TestCaseOperation1Output struct {
  2577. _ struct{} `type:"structure"`
  2578. }
  2579. type InputService16TestShapeInputService16TestCaseOperation2Input struct {
  2580. _ struct{} `type:"structure"`
  2581. BoolQuery *bool `location:"querystring" locationName:"bool-query" type:"boolean"`
  2582. }
  2583. // SetBoolQuery sets the BoolQuery field's value.
  2584. func (s *InputService16TestShapeInputService16TestCaseOperation2Input) SetBoolQuery(v bool) *InputService16TestShapeInputService16TestCaseOperation2Input {
  2585. s.BoolQuery = &v
  2586. return s
  2587. }
  2588. type InputService16TestShapeInputService16TestCaseOperation2Output struct {
  2589. _ struct{} `type:"structure"`
  2590. }
  2591. // InputService17ProtocolTest provides the API operation methods for making requests to
  2592. // . See this package's package overview docs
  2593. // for details on the service.
  2594. //
  2595. // InputService17ProtocolTest methods are safe to use concurrently. It is not safe to
  2596. // modify mutate any of the struct's properties though.
  2597. type InputService17ProtocolTest struct {
  2598. *client.Client
  2599. }
  2600. // New creates a new instance of the InputService17ProtocolTest client with a session.
  2601. // If additional configuration is needed for the client instance use the optional
  2602. // aws.Config parameter to add your extra config.
  2603. //
  2604. // Example:
  2605. // // Create a InputService17ProtocolTest client from just a session.
  2606. // svc := inputservice17protocoltest.New(mySession)
  2607. //
  2608. // // Create a InputService17ProtocolTest client with additional configuration
  2609. // svc := inputservice17protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  2610. func NewInputService17ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService17ProtocolTest {
  2611. c := p.ClientConfig("inputservice17protocoltest", cfgs...)
  2612. return newInputService17ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  2613. }
  2614. // newClient creates, initializes and returns a new service client instance.
  2615. func newInputService17ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService17ProtocolTest {
  2616. svc := &InputService17ProtocolTest{
  2617. Client: client.New(
  2618. cfg,
  2619. metadata.ClientInfo{
  2620. ServiceName: "InputService17ProtocolTest",
  2621. ServiceID: "InputService17ProtocolTest",
  2622. SigningName: signingName,
  2623. SigningRegion: signingRegion,
  2624. Endpoint: endpoint,
  2625. APIVersion: "2014-01-01",
  2626. },
  2627. handlers,
  2628. ),
  2629. }
  2630. // Handlers
  2631. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  2632. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  2633. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  2634. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  2635. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  2636. return svc
  2637. }
  2638. // newRequest creates a new request for a InputService17ProtocolTest operation and runs any
  2639. // custom request initialization.
  2640. func (c *InputService17ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  2641. req := c.NewRequest(op, params, data)
  2642. return req
  2643. }
  2644. const opInputService17TestCaseOperation1 = "OperationName"
  2645. // InputService17TestCaseOperation1Request generates a "aws/request.Request" representing the
  2646. // client's request for the InputService17TestCaseOperation1 operation. The "output" return
  2647. // value will be populated with the request's response once the request completes
  2648. // successfully.
  2649. //
  2650. // Use "Send" method on the returned Request to send the API call to the service.
  2651. // the "output" return value is not valid until after Send returns without error.
  2652. //
  2653. // See InputService17TestCaseOperation1 for more information on using the InputService17TestCaseOperation1
  2654. // API call, and error handling.
  2655. //
  2656. // This method is useful when you want to inject custom logic or configuration
  2657. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2658. //
  2659. //
  2660. // // Example sending a request using the InputService17TestCaseOperation1Request method.
  2661. // req, resp := client.InputService17TestCaseOperation1Request(params)
  2662. //
  2663. // err := req.Send()
  2664. // if err == nil { // resp is now filled
  2665. // fmt.Println(resp)
  2666. // }
  2667. func (c *InputService17ProtocolTest) InputService17TestCaseOperation1Request(input *InputService17TestShapeInputService17TestCaseOperation1Input) (req *request.Request, output *InputService17TestShapeInputService17TestCaseOperation1Output) {
  2668. op := &request.Operation{
  2669. Name: opInputService17TestCaseOperation1,
  2670. HTTPMethod: "POST",
  2671. HTTPPath: "/",
  2672. }
  2673. if input == nil {
  2674. input = &InputService17TestShapeInputService17TestCaseOperation1Input{}
  2675. }
  2676. output = &InputService17TestShapeInputService17TestCaseOperation1Output{}
  2677. req = c.newRequest(op, input, output)
  2678. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2679. return
  2680. }
  2681. // InputService17TestCaseOperation1 API operation for .
  2682. //
  2683. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2684. // with awserr.Error's Code and Message methods to get detailed information about
  2685. // the error.
  2686. //
  2687. // See the AWS API reference guide for 's
  2688. // API operation InputService17TestCaseOperation1 for usage and error information.
  2689. func (c *InputService17ProtocolTest) InputService17TestCaseOperation1(input *InputService17TestShapeInputService17TestCaseOperation1Input) (*InputService17TestShapeInputService17TestCaseOperation1Output, error) {
  2690. req, out := c.InputService17TestCaseOperation1Request(input)
  2691. return out, req.Send()
  2692. }
  2693. // InputService17TestCaseOperation1WithContext is the same as InputService17TestCaseOperation1 with the addition of
  2694. // the ability to pass a context and additional request options.
  2695. //
  2696. // See InputService17TestCaseOperation1 for details on how to use this API operation.
  2697. //
  2698. // The context must be non-nil and will be used for request cancellation. If
  2699. // the context is nil a panic will occur. In the future the SDK may create
  2700. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2701. // for more information on using Contexts.
  2702. func (c *InputService17ProtocolTest) InputService17TestCaseOperation1WithContext(ctx aws.Context, input *InputService17TestShapeInputService17TestCaseOperation1Input, opts ...request.Option) (*InputService17TestShapeInputService17TestCaseOperation1Output, error) {
  2703. req, out := c.InputService17TestCaseOperation1Request(input)
  2704. req.SetContext(ctx)
  2705. req.ApplyOptions(opts...)
  2706. return out, req.Send()
  2707. }
  2708. type InputService17TestShapeInputService17TestCaseOperation1Input struct {
  2709. _ struct{} `type:"structure" payload:"Foo"`
  2710. Foo *string `locationName:"foo" type:"string"`
  2711. }
  2712. // SetFoo sets the Foo field's value.
  2713. func (s *InputService17TestShapeInputService17TestCaseOperation1Input) SetFoo(v string) *InputService17TestShapeInputService17TestCaseOperation1Input {
  2714. s.Foo = &v
  2715. return s
  2716. }
  2717. type InputService17TestShapeInputService17TestCaseOperation1Output struct {
  2718. _ struct{} `type:"structure"`
  2719. }
  2720. // InputService18ProtocolTest provides the API operation methods for making requests to
  2721. // . See this package's package overview docs
  2722. // for details on the service.
  2723. //
  2724. // InputService18ProtocolTest methods are safe to use concurrently. It is not safe to
  2725. // modify mutate any of the struct's properties though.
  2726. type InputService18ProtocolTest struct {
  2727. *client.Client
  2728. }
  2729. // New creates a new instance of the InputService18ProtocolTest client with a session.
  2730. // If additional configuration is needed for the client instance use the optional
  2731. // aws.Config parameter to add your extra config.
  2732. //
  2733. // Example:
  2734. // // Create a InputService18ProtocolTest client from just a session.
  2735. // svc := inputservice18protocoltest.New(mySession)
  2736. //
  2737. // // Create a InputService18ProtocolTest client with additional configuration
  2738. // svc := inputservice18protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  2739. func NewInputService18ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService18ProtocolTest {
  2740. c := p.ClientConfig("inputservice18protocoltest", cfgs...)
  2741. return newInputService18ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  2742. }
  2743. // newClient creates, initializes and returns a new service client instance.
  2744. func newInputService18ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService18ProtocolTest {
  2745. svc := &InputService18ProtocolTest{
  2746. Client: client.New(
  2747. cfg,
  2748. metadata.ClientInfo{
  2749. ServiceName: "InputService18ProtocolTest",
  2750. ServiceID: "InputService18ProtocolTest",
  2751. SigningName: signingName,
  2752. SigningRegion: signingRegion,
  2753. Endpoint: endpoint,
  2754. APIVersion: "2014-01-01",
  2755. },
  2756. handlers,
  2757. ),
  2758. }
  2759. // Handlers
  2760. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  2761. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  2762. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  2763. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  2764. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  2765. return svc
  2766. }
  2767. // newRequest creates a new request for a InputService18ProtocolTest operation and runs any
  2768. // custom request initialization.
  2769. func (c *InputService18ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  2770. req := c.NewRequest(op, params, data)
  2771. return req
  2772. }
  2773. const opInputService18TestCaseOperation1 = "OperationName"
  2774. // InputService18TestCaseOperation1Request generates a "aws/request.Request" representing the
  2775. // client's request for the InputService18TestCaseOperation1 operation. The "output" return
  2776. // value will be populated with the request's response once the request completes
  2777. // successfully.
  2778. //
  2779. // Use "Send" method on the returned Request to send the API call to the service.
  2780. // the "output" return value is not valid until after Send returns without error.
  2781. //
  2782. // See InputService18TestCaseOperation1 for more information on using the InputService18TestCaseOperation1
  2783. // API call, and error handling.
  2784. //
  2785. // This method is useful when you want to inject custom logic or configuration
  2786. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2787. //
  2788. //
  2789. // // Example sending a request using the InputService18TestCaseOperation1Request method.
  2790. // req, resp := client.InputService18TestCaseOperation1Request(params)
  2791. //
  2792. // err := req.Send()
  2793. // if err == nil { // resp is now filled
  2794. // fmt.Println(resp)
  2795. // }
  2796. func (c *InputService18ProtocolTest) InputService18TestCaseOperation1Request(input *InputService18TestShapeInputService18TestCaseOperation1Input) (req *request.Request, output *InputService18TestShapeInputService18TestCaseOperation1Output) {
  2797. op := &request.Operation{
  2798. Name: opInputService18TestCaseOperation1,
  2799. HTTPMethod: "POST",
  2800. HTTPPath: "/",
  2801. }
  2802. if input == nil {
  2803. input = &InputService18TestShapeInputService18TestCaseOperation1Input{}
  2804. }
  2805. output = &InputService18TestShapeInputService18TestCaseOperation1Output{}
  2806. req = c.newRequest(op, input, output)
  2807. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2808. return
  2809. }
  2810. // InputService18TestCaseOperation1 API operation for .
  2811. //
  2812. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2813. // with awserr.Error's Code and Message methods to get detailed information about
  2814. // the error.
  2815. //
  2816. // See the AWS API reference guide for 's
  2817. // API operation InputService18TestCaseOperation1 for usage and error information.
  2818. func (c *InputService18ProtocolTest) InputService18TestCaseOperation1(input *InputService18TestShapeInputService18TestCaseOperation1Input) (*InputService18TestShapeInputService18TestCaseOperation1Output, error) {
  2819. req, out := c.InputService18TestCaseOperation1Request(input)
  2820. return out, req.Send()
  2821. }
  2822. // InputService18TestCaseOperation1WithContext is the same as InputService18TestCaseOperation1 with the addition of
  2823. // the ability to pass a context and additional request options.
  2824. //
  2825. // See InputService18TestCaseOperation1 for details on how to use this API operation.
  2826. //
  2827. // The context must be non-nil and will be used for request cancellation. If
  2828. // the context is nil a panic will occur. In the future the SDK may create
  2829. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2830. // for more information on using Contexts.
  2831. func (c *InputService18ProtocolTest) InputService18TestCaseOperation1WithContext(ctx aws.Context, input *InputService18TestShapeInputService18TestCaseOperation1Input, opts ...request.Option) (*InputService18TestShapeInputService18TestCaseOperation1Output, error) {
  2832. req, out := c.InputService18TestCaseOperation1Request(input)
  2833. req.SetContext(ctx)
  2834. req.ApplyOptions(opts...)
  2835. return out, req.Send()
  2836. }
  2837. const opInputService18TestCaseOperation2 = "OperationName"
  2838. // InputService18TestCaseOperation2Request generates a "aws/request.Request" representing the
  2839. // client's request for the InputService18TestCaseOperation2 operation. The "output" return
  2840. // value will be populated with the request's response once the request completes
  2841. // successfully.
  2842. //
  2843. // Use "Send" method on the returned Request to send the API call to the service.
  2844. // the "output" return value is not valid until after Send returns without error.
  2845. //
  2846. // See InputService18TestCaseOperation2 for more information on using the InputService18TestCaseOperation2
  2847. // API call, and error handling.
  2848. //
  2849. // This method is useful when you want to inject custom logic or configuration
  2850. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2851. //
  2852. //
  2853. // // Example sending a request using the InputService18TestCaseOperation2Request method.
  2854. // req, resp := client.InputService18TestCaseOperation2Request(params)
  2855. //
  2856. // err := req.Send()
  2857. // if err == nil { // resp is now filled
  2858. // fmt.Println(resp)
  2859. // }
  2860. func (c *InputService18ProtocolTest) InputService18TestCaseOperation2Request(input *InputService18TestShapeInputService18TestCaseOperation2Input) (req *request.Request, output *InputService18TestShapeInputService18TestCaseOperation2Output) {
  2861. op := &request.Operation{
  2862. Name: opInputService18TestCaseOperation2,
  2863. HTTPMethod: "POST",
  2864. HTTPPath: "/",
  2865. }
  2866. if input == nil {
  2867. input = &InputService18TestShapeInputService18TestCaseOperation2Input{}
  2868. }
  2869. output = &InputService18TestShapeInputService18TestCaseOperation2Output{}
  2870. req = c.newRequest(op, input, output)
  2871. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2872. return
  2873. }
  2874. // InputService18TestCaseOperation2 API operation for .
  2875. //
  2876. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2877. // with awserr.Error's Code and Message methods to get detailed information about
  2878. // the error.
  2879. //
  2880. // See the AWS API reference guide for 's
  2881. // API operation InputService18TestCaseOperation2 for usage and error information.
  2882. func (c *InputService18ProtocolTest) InputService18TestCaseOperation2(input *InputService18TestShapeInputService18TestCaseOperation2Input) (*InputService18TestShapeInputService18TestCaseOperation2Output, error) {
  2883. req, out := c.InputService18TestCaseOperation2Request(input)
  2884. return out, req.Send()
  2885. }
  2886. // InputService18TestCaseOperation2WithContext is the same as InputService18TestCaseOperation2 with the addition of
  2887. // the ability to pass a context and additional request options.
  2888. //
  2889. // See InputService18TestCaseOperation2 for details on how to use this API operation.
  2890. //
  2891. // The context must be non-nil and will be used for request cancellation. If
  2892. // the context is nil a panic will occur. In the future the SDK may create
  2893. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2894. // for more information on using Contexts.
  2895. func (c *InputService18ProtocolTest) InputService18TestCaseOperation2WithContext(ctx aws.Context, input *InputService18TestShapeInputService18TestCaseOperation2Input, opts ...request.Option) (*InputService18TestShapeInputService18TestCaseOperation2Output, error) {
  2896. req, out := c.InputService18TestCaseOperation2Request(input)
  2897. req.SetContext(ctx)
  2898. req.ApplyOptions(opts...)
  2899. return out, req.Send()
  2900. }
  2901. type InputService18TestShapeInputService18TestCaseOperation1Input struct {
  2902. _ struct{} `type:"structure" payload:"Foo"`
  2903. Foo []byte `locationName:"foo" type:"blob"`
  2904. }
  2905. // SetFoo sets the Foo field's value.
  2906. func (s *InputService18TestShapeInputService18TestCaseOperation1Input) SetFoo(v []byte) *InputService18TestShapeInputService18TestCaseOperation1Input {
  2907. s.Foo = v
  2908. return s
  2909. }
  2910. type InputService18TestShapeInputService18TestCaseOperation1Output struct {
  2911. _ struct{} `type:"structure"`
  2912. }
  2913. type InputService18TestShapeInputService18TestCaseOperation2Input struct {
  2914. _ struct{} `type:"structure" payload:"Foo"`
  2915. Foo []byte `locationName:"foo" type:"blob"`
  2916. }
  2917. // SetFoo sets the Foo field's value.
  2918. func (s *InputService18TestShapeInputService18TestCaseOperation2Input) SetFoo(v []byte) *InputService18TestShapeInputService18TestCaseOperation2Input {
  2919. s.Foo = v
  2920. return s
  2921. }
  2922. type InputService18TestShapeInputService18TestCaseOperation2Output struct {
  2923. _ struct{} `type:"structure"`
  2924. }
  2925. // InputService19ProtocolTest provides the API operation methods for making requests to
  2926. // . See this package's package overview docs
  2927. // for details on the service.
  2928. //
  2929. // InputService19ProtocolTest methods are safe to use concurrently. It is not safe to
  2930. // modify mutate any of the struct's properties though.
  2931. type InputService19ProtocolTest struct {
  2932. *client.Client
  2933. }
  2934. // New creates a new instance of the InputService19ProtocolTest client with a session.
  2935. // If additional configuration is needed for the client instance use the optional
  2936. // aws.Config parameter to add your extra config.
  2937. //
  2938. // Example:
  2939. // // Create a InputService19ProtocolTest client from just a session.
  2940. // svc := inputservice19protocoltest.New(mySession)
  2941. //
  2942. // // Create a InputService19ProtocolTest client with additional configuration
  2943. // svc := inputservice19protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  2944. func NewInputService19ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService19ProtocolTest {
  2945. c := p.ClientConfig("inputservice19protocoltest", cfgs...)
  2946. return newInputService19ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  2947. }
  2948. // newClient creates, initializes and returns a new service client instance.
  2949. func newInputService19ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService19ProtocolTest {
  2950. svc := &InputService19ProtocolTest{
  2951. Client: client.New(
  2952. cfg,
  2953. metadata.ClientInfo{
  2954. ServiceName: "InputService19ProtocolTest",
  2955. ServiceID: "InputService19ProtocolTest",
  2956. SigningName: signingName,
  2957. SigningRegion: signingRegion,
  2958. Endpoint: endpoint,
  2959. APIVersion: "2014-01-01",
  2960. },
  2961. handlers,
  2962. ),
  2963. }
  2964. // Handlers
  2965. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  2966. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  2967. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  2968. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  2969. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  2970. return svc
  2971. }
  2972. // newRequest creates a new request for a InputService19ProtocolTest operation and runs any
  2973. // custom request initialization.
  2974. func (c *InputService19ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  2975. req := c.NewRequest(op, params, data)
  2976. return req
  2977. }
  2978. const opInputService19TestCaseOperation1 = "OperationName"
  2979. // InputService19TestCaseOperation1Request generates a "aws/request.Request" representing the
  2980. // client's request for the InputService19TestCaseOperation1 operation. The "output" return
  2981. // value will be populated with the request's response once the request completes
  2982. // successfully.
  2983. //
  2984. // Use "Send" method on the returned Request to send the API call to the service.
  2985. // the "output" return value is not valid until after Send returns without error.
  2986. //
  2987. // See InputService19TestCaseOperation1 for more information on using the InputService19TestCaseOperation1
  2988. // API call, and error handling.
  2989. //
  2990. // This method is useful when you want to inject custom logic or configuration
  2991. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2992. //
  2993. //
  2994. // // Example sending a request using the InputService19TestCaseOperation1Request method.
  2995. // req, resp := client.InputService19TestCaseOperation1Request(params)
  2996. //
  2997. // err := req.Send()
  2998. // if err == nil { // resp is now filled
  2999. // fmt.Println(resp)
  3000. // }
  3001. func (c *InputService19ProtocolTest) InputService19TestCaseOperation1Request(input *InputService19TestShapeInputService19TestCaseOperation1Input) (req *request.Request, output *InputService19TestShapeInputService19TestCaseOperation1Output) {
  3002. op := &request.Operation{
  3003. Name: opInputService19TestCaseOperation1,
  3004. HTTPMethod: "POST",
  3005. HTTPPath: "/",
  3006. }
  3007. if input == nil {
  3008. input = &InputService19TestShapeInputService19TestCaseOperation1Input{}
  3009. }
  3010. output = &InputService19TestShapeInputService19TestCaseOperation1Output{}
  3011. req = c.newRequest(op, input, output)
  3012. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3013. return
  3014. }
  3015. // InputService19TestCaseOperation1 API operation for .
  3016. //
  3017. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3018. // with awserr.Error's Code and Message methods to get detailed information about
  3019. // the error.
  3020. //
  3021. // See the AWS API reference guide for 's
  3022. // API operation InputService19TestCaseOperation1 for usage and error information.
  3023. func (c *InputService19ProtocolTest) InputService19TestCaseOperation1(input *InputService19TestShapeInputService19TestCaseOperation1Input) (*InputService19TestShapeInputService19TestCaseOperation1Output, error) {
  3024. req, out := c.InputService19TestCaseOperation1Request(input)
  3025. return out, req.Send()
  3026. }
  3027. // InputService19TestCaseOperation1WithContext is the same as InputService19TestCaseOperation1 with the addition of
  3028. // the ability to pass a context and additional request options.
  3029. //
  3030. // See InputService19TestCaseOperation1 for details on how to use this API operation.
  3031. //
  3032. // The context must be non-nil and will be used for request cancellation. If
  3033. // the context is nil a panic will occur. In the future the SDK may create
  3034. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3035. // for more information on using Contexts.
  3036. func (c *InputService19ProtocolTest) InputService19TestCaseOperation1WithContext(ctx aws.Context, input *InputService19TestShapeInputService19TestCaseOperation1Input, opts ...request.Option) (*InputService19TestShapeInputService19TestCaseOperation1Output, error) {
  3037. req, out := c.InputService19TestCaseOperation1Request(input)
  3038. req.SetContext(ctx)
  3039. req.ApplyOptions(opts...)
  3040. return out, req.Send()
  3041. }
  3042. const opInputService19TestCaseOperation2 = "OperationName"
  3043. // InputService19TestCaseOperation2Request generates a "aws/request.Request" representing the
  3044. // client's request for the InputService19TestCaseOperation2 operation. The "output" return
  3045. // value will be populated with the request's response once the request completes
  3046. // successfully.
  3047. //
  3048. // Use "Send" method on the returned Request to send the API call to the service.
  3049. // the "output" return value is not valid until after Send returns without error.
  3050. //
  3051. // See InputService19TestCaseOperation2 for more information on using the InputService19TestCaseOperation2
  3052. // API call, and error handling.
  3053. //
  3054. // This method is useful when you want to inject custom logic or configuration
  3055. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3056. //
  3057. //
  3058. // // Example sending a request using the InputService19TestCaseOperation2Request method.
  3059. // req, resp := client.InputService19TestCaseOperation2Request(params)
  3060. //
  3061. // err := req.Send()
  3062. // if err == nil { // resp is now filled
  3063. // fmt.Println(resp)
  3064. // }
  3065. func (c *InputService19ProtocolTest) InputService19TestCaseOperation2Request(input *InputService19TestShapeInputService19TestCaseOperation2Input) (req *request.Request, output *InputService19TestShapeInputService19TestCaseOperation2Output) {
  3066. op := &request.Operation{
  3067. Name: opInputService19TestCaseOperation2,
  3068. HTTPMethod: "POST",
  3069. HTTPPath: "/",
  3070. }
  3071. if input == nil {
  3072. input = &InputService19TestShapeInputService19TestCaseOperation2Input{}
  3073. }
  3074. output = &InputService19TestShapeInputService19TestCaseOperation2Output{}
  3075. req = c.newRequest(op, input, output)
  3076. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3077. return
  3078. }
  3079. // InputService19TestCaseOperation2 API operation for .
  3080. //
  3081. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3082. // with awserr.Error's Code and Message methods to get detailed information about
  3083. // the error.
  3084. //
  3085. // See the AWS API reference guide for 's
  3086. // API operation InputService19TestCaseOperation2 for usage and error information.
  3087. func (c *InputService19ProtocolTest) InputService19TestCaseOperation2(input *InputService19TestShapeInputService19TestCaseOperation2Input) (*InputService19TestShapeInputService19TestCaseOperation2Output, error) {
  3088. req, out := c.InputService19TestCaseOperation2Request(input)
  3089. return out, req.Send()
  3090. }
  3091. // InputService19TestCaseOperation2WithContext is the same as InputService19TestCaseOperation2 with the addition of
  3092. // the ability to pass a context and additional request options.
  3093. //
  3094. // See InputService19TestCaseOperation2 for details on how to use this API operation.
  3095. //
  3096. // The context must be non-nil and will be used for request cancellation. If
  3097. // the context is nil a panic will occur. In the future the SDK may create
  3098. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3099. // for more information on using Contexts.
  3100. func (c *InputService19ProtocolTest) InputService19TestCaseOperation2WithContext(ctx aws.Context, input *InputService19TestShapeInputService19TestCaseOperation2Input, opts ...request.Option) (*InputService19TestShapeInputService19TestCaseOperation2Output, error) {
  3101. req, out := c.InputService19TestCaseOperation2Request(input)
  3102. req.SetContext(ctx)
  3103. req.ApplyOptions(opts...)
  3104. return out, req.Send()
  3105. }
  3106. const opInputService19TestCaseOperation3 = "OperationName"
  3107. // InputService19TestCaseOperation3Request generates a "aws/request.Request" representing the
  3108. // client's request for the InputService19TestCaseOperation3 operation. The "output" return
  3109. // value will be populated with the request's response once the request completes
  3110. // successfully.
  3111. //
  3112. // Use "Send" method on the returned Request to send the API call to the service.
  3113. // the "output" return value is not valid until after Send returns without error.
  3114. //
  3115. // See InputService19TestCaseOperation3 for more information on using the InputService19TestCaseOperation3
  3116. // API call, and error handling.
  3117. //
  3118. // This method is useful when you want to inject custom logic or configuration
  3119. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3120. //
  3121. //
  3122. // // Example sending a request using the InputService19TestCaseOperation3Request method.
  3123. // req, resp := client.InputService19TestCaseOperation3Request(params)
  3124. //
  3125. // err := req.Send()
  3126. // if err == nil { // resp is now filled
  3127. // fmt.Println(resp)
  3128. // }
  3129. func (c *InputService19ProtocolTest) InputService19TestCaseOperation3Request(input *InputService19TestShapeInputService19TestCaseOperation3Input) (req *request.Request, output *InputService19TestShapeInputService19TestCaseOperation3Output) {
  3130. op := &request.Operation{
  3131. Name: opInputService19TestCaseOperation3,
  3132. HTTPMethod: "POST",
  3133. HTTPPath: "/",
  3134. }
  3135. if input == nil {
  3136. input = &InputService19TestShapeInputService19TestCaseOperation3Input{}
  3137. }
  3138. output = &InputService19TestShapeInputService19TestCaseOperation3Output{}
  3139. req = c.newRequest(op, input, output)
  3140. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3141. return
  3142. }
  3143. // InputService19TestCaseOperation3 API operation for .
  3144. //
  3145. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3146. // with awserr.Error's Code and Message methods to get detailed information about
  3147. // the error.
  3148. //
  3149. // See the AWS API reference guide for 's
  3150. // API operation InputService19TestCaseOperation3 for usage and error information.
  3151. func (c *InputService19ProtocolTest) InputService19TestCaseOperation3(input *InputService19TestShapeInputService19TestCaseOperation3Input) (*InputService19TestShapeInputService19TestCaseOperation3Output, error) {
  3152. req, out := c.InputService19TestCaseOperation3Request(input)
  3153. return out, req.Send()
  3154. }
  3155. // InputService19TestCaseOperation3WithContext is the same as InputService19TestCaseOperation3 with the addition of
  3156. // the ability to pass a context and additional request options.
  3157. //
  3158. // See InputService19TestCaseOperation3 for details on how to use this API operation.
  3159. //
  3160. // The context must be non-nil and will be used for request cancellation. If
  3161. // the context is nil a panic will occur. In the future the SDK may create
  3162. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3163. // for more information on using Contexts.
  3164. func (c *InputService19ProtocolTest) InputService19TestCaseOperation3WithContext(ctx aws.Context, input *InputService19TestShapeInputService19TestCaseOperation3Input, opts ...request.Option) (*InputService19TestShapeInputService19TestCaseOperation3Output, error) {
  3165. req, out := c.InputService19TestCaseOperation3Request(input)
  3166. req.SetContext(ctx)
  3167. req.ApplyOptions(opts...)
  3168. return out, req.Send()
  3169. }
  3170. const opInputService19TestCaseOperation4 = "OperationName"
  3171. // InputService19TestCaseOperation4Request generates a "aws/request.Request" representing the
  3172. // client's request for the InputService19TestCaseOperation4 operation. The "output" return
  3173. // value will be populated with the request's response once the request completes
  3174. // successfully.
  3175. //
  3176. // Use "Send" method on the returned Request to send the API call to the service.
  3177. // the "output" return value is not valid until after Send returns without error.
  3178. //
  3179. // See InputService19TestCaseOperation4 for more information on using the InputService19TestCaseOperation4
  3180. // API call, and error handling.
  3181. //
  3182. // This method is useful when you want to inject custom logic or configuration
  3183. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3184. //
  3185. //
  3186. // // Example sending a request using the InputService19TestCaseOperation4Request method.
  3187. // req, resp := client.InputService19TestCaseOperation4Request(params)
  3188. //
  3189. // err := req.Send()
  3190. // if err == nil { // resp is now filled
  3191. // fmt.Println(resp)
  3192. // }
  3193. func (c *InputService19ProtocolTest) InputService19TestCaseOperation4Request(input *InputService19TestShapeInputService19TestCaseOperation4Input) (req *request.Request, output *InputService19TestShapeInputService19TestCaseOperation4Output) {
  3194. op := &request.Operation{
  3195. Name: opInputService19TestCaseOperation4,
  3196. HTTPMethod: "POST",
  3197. HTTPPath: "/",
  3198. }
  3199. if input == nil {
  3200. input = &InputService19TestShapeInputService19TestCaseOperation4Input{}
  3201. }
  3202. output = &InputService19TestShapeInputService19TestCaseOperation4Output{}
  3203. req = c.newRequest(op, input, output)
  3204. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3205. return
  3206. }
  3207. // InputService19TestCaseOperation4 API operation for .
  3208. //
  3209. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3210. // with awserr.Error's Code and Message methods to get detailed information about
  3211. // the error.
  3212. //
  3213. // See the AWS API reference guide for 's
  3214. // API operation InputService19TestCaseOperation4 for usage and error information.
  3215. func (c *InputService19ProtocolTest) InputService19TestCaseOperation4(input *InputService19TestShapeInputService19TestCaseOperation4Input) (*InputService19TestShapeInputService19TestCaseOperation4Output, error) {
  3216. req, out := c.InputService19TestCaseOperation4Request(input)
  3217. return out, req.Send()
  3218. }
  3219. // InputService19TestCaseOperation4WithContext is the same as InputService19TestCaseOperation4 with the addition of
  3220. // the ability to pass a context and additional request options.
  3221. //
  3222. // See InputService19TestCaseOperation4 for details on how to use this API operation.
  3223. //
  3224. // The context must be non-nil and will be used for request cancellation. If
  3225. // the context is nil a panic will occur. In the future the SDK may create
  3226. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3227. // for more information on using Contexts.
  3228. func (c *InputService19ProtocolTest) InputService19TestCaseOperation4WithContext(ctx aws.Context, input *InputService19TestShapeInputService19TestCaseOperation4Input, opts ...request.Option) (*InputService19TestShapeInputService19TestCaseOperation4Output, error) {
  3229. req, out := c.InputService19TestCaseOperation4Request(input)
  3230. req.SetContext(ctx)
  3231. req.ApplyOptions(opts...)
  3232. return out, req.Send()
  3233. }
  3234. type InputService19TestShapeFooShape struct {
  3235. _ struct{} `locationName:"foo" type:"structure"`
  3236. Baz *string `locationName:"baz" type:"string"`
  3237. }
  3238. // SetBaz sets the Baz field's value.
  3239. func (s *InputService19TestShapeFooShape) SetBaz(v string) *InputService19TestShapeFooShape {
  3240. s.Baz = &v
  3241. return s
  3242. }
  3243. type InputService19TestShapeInputService19TestCaseOperation1Input struct {
  3244. _ struct{} `type:"structure" payload:"Foo"`
  3245. Foo *InputService19TestShapeFooShape `locationName:"foo" type:"structure"`
  3246. }
  3247. // SetFoo sets the Foo field's value.
  3248. func (s *InputService19TestShapeInputService19TestCaseOperation1Input) SetFoo(v *InputService19TestShapeFooShape) *InputService19TestShapeInputService19TestCaseOperation1Input {
  3249. s.Foo = v
  3250. return s
  3251. }
  3252. type InputService19TestShapeInputService19TestCaseOperation1Output struct {
  3253. _ struct{} `type:"structure"`
  3254. }
  3255. type InputService19TestShapeInputService19TestCaseOperation2Input struct {
  3256. _ struct{} `type:"structure" payload:"Foo"`
  3257. Foo *InputService19TestShapeFooShape `locationName:"foo" type:"structure"`
  3258. }
  3259. // SetFoo sets the Foo field's value.
  3260. func (s *InputService19TestShapeInputService19TestCaseOperation2Input) SetFoo(v *InputService19TestShapeFooShape) *InputService19TestShapeInputService19TestCaseOperation2Input {
  3261. s.Foo = v
  3262. return s
  3263. }
  3264. type InputService19TestShapeInputService19TestCaseOperation2Output struct {
  3265. _ struct{} `type:"structure"`
  3266. }
  3267. type InputService19TestShapeInputService19TestCaseOperation3Input struct {
  3268. _ struct{} `type:"structure" payload:"Foo"`
  3269. Foo *InputService19TestShapeFooShape `locationName:"foo" type:"structure"`
  3270. }
  3271. // SetFoo sets the Foo field's value.
  3272. func (s *InputService19TestShapeInputService19TestCaseOperation3Input) SetFoo(v *InputService19TestShapeFooShape) *InputService19TestShapeInputService19TestCaseOperation3Input {
  3273. s.Foo = v
  3274. return s
  3275. }
  3276. type InputService19TestShapeInputService19TestCaseOperation3Output struct {
  3277. _ struct{} `type:"structure"`
  3278. }
  3279. type InputService19TestShapeInputService19TestCaseOperation4Input struct {
  3280. _ struct{} `type:"structure" payload:"Foo"`
  3281. Foo *InputService19TestShapeFooShape `locationName:"foo" type:"structure"`
  3282. }
  3283. // SetFoo sets the Foo field's value.
  3284. func (s *InputService19TestShapeInputService19TestCaseOperation4Input) SetFoo(v *InputService19TestShapeFooShape) *InputService19TestShapeInputService19TestCaseOperation4Input {
  3285. s.Foo = v
  3286. return s
  3287. }
  3288. type InputService19TestShapeInputService19TestCaseOperation4Output struct {
  3289. _ struct{} `type:"structure"`
  3290. }
  3291. // InputService20ProtocolTest provides the API operation methods for making requests to
  3292. // . See this package's package overview docs
  3293. // for details on the service.
  3294. //
  3295. // InputService20ProtocolTest methods are safe to use concurrently. It is not safe to
  3296. // modify mutate any of the struct's properties though.
  3297. type InputService20ProtocolTest struct {
  3298. *client.Client
  3299. }
  3300. // New creates a new instance of the InputService20ProtocolTest client with a session.
  3301. // If additional configuration is needed for the client instance use the optional
  3302. // aws.Config parameter to add your extra config.
  3303. //
  3304. // Example:
  3305. // // Create a InputService20ProtocolTest client from just a session.
  3306. // svc := inputservice20protocoltest.New(mySession)
  3307. //
  3308. // // Create a InputService20ProtocolTest client with additional configuration
  3309. // svc := inputservice20protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  3310. func NewInputService20ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService20ProtocolTest {
  3311. c := p.ClientConfig("inputservice20protocoltest", cfgs...)
  3312. return newInputService20ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  3313. }
  3314. // newClient creates, initializes and returns a new service client instance.
  3315. func newInputService20ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService20ProtocolTest {
  3316. svc := &InputService20ProtocolTest{
  3317. Client: client.New(
  3318. cfg,
  3319. metadata.ClientInfo{
  3320. ServiceName: "InputService20ProtocolTest",
  3321. ServiceID: "InputService20ProtocolTest",
  3322. SigningName: signingName,
  3323. SigningRegion: signingRegion,
  3324. Endpoint: endpoint,
  3325. APIVersion: "2014-01-01",
  3326. },
  3327. handlers,
  3328. ),
  3329. }
  3330. // Handlers
  3331. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  3332. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  3333. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  3334. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  3335. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  3336. return svc
  3337. }
  3338. // newRequest creates a new request for a InputService20ProtocolTest operation and runs any
  3339. // custom request initialization.
  3340. func (c *InputService20ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  3341. req := c.NewRequest(op, params, data)
  3342. return req
  3343. }
  3344. const opInputService20TestCaseOperation1 = "OperationName"
  3345. // InputService20TestCaseOperation1Request generates a "aws/request.Request" representing the
  3346. // client's request for the InputService20TestCaseOperation1 operation. The "output" return
  3347. // value will be populated with the request's response once the request completes
  3348. // successfully.
  3349. //
  3350. // Use "Send" method on the returned Request to send the API call to the service.
  3351. // the "output" return value is not valid until after Send returns without error.
  3352. //
  3353. // See InputService20TestCaseOperation1 for more information on using the InputService20TestCaseOperation1
  3354. // API call, and error handling.
  3355. //
  3356. // This method is useful when you want to inject custom logic or configuration
  3357. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3358. //
  3359. //
  3360. // // Example sending a request using the InputService20TestCaseOperation1Request method.
  3361. // req, resp := client.InputService20TestCaseOperation1Request(params)
  3362. //
  3363. // err := req.Send()
  3364. // if err == nil { // resp is now filled
  3365. // fmt.Println(resp)
  3366. // }
  3367. func (c *InputService20ProtocolTest) InputService20TestCaseOperation1Request(input *InputService20TestShapeInputService20TestCaseOperation1Input) (req *request.Request, output *InputService20TestShapeInputService20TestCaseOperation1Output) {
  3368. op := &request.Operation{
  3369. Name: opInputService20TestCaseOperation1,
  3370. HTTPMethod: "POST",
  3371. HTTPPath: "/",
  3372. }
  3373. if input == nil {
  3374. input = &InputService20TestShapeInputService20TestCaseOperation1Input{}
  3375. }
  3376. output = &InputService20TestShapeInputService20TestCaseOperation1Output{}
  3377. req = c.newRequest(op, input, output)
  3378. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3379. return
  3380. }
  3381. // InputService20TestCaseOperation1 API operation for .
  3382. //
  3383. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3384. // with awserr.Error's Code and Message methods to get detailed information about
  3385. // the error.
  3386. //
  3387. // See the AWS API reference guide for 's
  3388. // API operation InputService20TestCaseOperation1 for usage and error information.
  3389. func (c *InputService20ProtocolTest) InputService20TestCaseOperation1(input *InputService20TestShapeInputService20TestCaseOperation1Input) (*InputService20TestShapeInputService20TestCaseOperation1Output, error) {
  3390. req, out := c.InputService20TestCaseOperation1Request(input)
  3391. return out, req.Send()
  3392. }
  3393. // InputService20TestCaseOperation1WithContext is the same as InputService20TestCaseOperation1 with the addition of
  3394. // the ability to pass a context and additional request options.
  3395. //
  3396. // See InputService20TestCaseOperation1 for details on how to use this API operation.
  3397. //
  3398. // The context must be non-nil and will be used for request cancellation. If
  3399. // the context is nil a panic will occur. In the future the SDK may create
  3400. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3401. // for more information on using Contexts.
  3402. func (c *InputService20ProtocolTest) InputService20TestCaseOperation1WithContext(ctx aws.Context, input *InputService20TestShapeInputService20TestCaseOperation1Input, opts ...request.Option) (*InputService20TestShapeInputService20TestCaseOperation1Output, error) {
  3403. req, out := c.InputService20TestCaseOperation1Request(input)
  3404. req.SetContext(ctx)
  3405. req.ApplyOptions(opts...)
  3406. return out, req.Send()
  3407. }
  3408. type InputService20TestShapeGrant struct {
  3409. _ struct{} `locationName:"Grant" type:"structure"`
  3410. Grantee *InputService20TestShapeGrantee `type:"structure" xmlPrefix:"xsi" xmlURI:"http://www.w3.org/2001/XMLSchema-instance"`
  3411. }
  3412. // SetGrantee sets the Grantee field's value.
  3413. func (s *InputService20TestShapeGrant) SetGrantee(v *InputService20TestShapeGrantee) *InputService20TestShapeGrant {
  3414. s.Grantee = v
  3415. return s
  3416. }
  3417. type InputService20TestShapeGrantee struct {
  3418. _ struct{} `type:"structure" xmlPrefix:"xsi" xmlURI:"http://www.w3.org/2001/XMLSchema-instance"`
  3419. EmailAddress *string `type:"string"`
  3420. Type *string `locationName:"xsi:type" type:"string" xmlAttribute:"true"`
  3421. }
  3422. // SetEmailAddress sets the EmailAddress field's value.
  3423. func (s *InputService20TestShapeGrantee) SetEmailAddress(v string) *InputService20TestShapeGrantee {
  3424. s.EmailAddress = &v
  3425. return s
  3426. }
  3427. // SetType sets the Type field's value.
  3428. func (s *InputService20TestShapeGrantee) SetType(v string) *InputService20TestShapeGrantee {
  3429. s.Type = &v
  3430. return s
  3431. }
  3432. type InputService20TestShapeInputService20TestCaseOperation1Input struct {
  3433. _ struct{} `type:"structure" payload:"Grant"`
  3434. Grant *InputService20TestShapeGrant `locationName:"Grant" type:"structure"`
  3435. }
  3436. // SetGrant sets the Grant field's value.
  3437. func (s *InputService20TestShapeInputService20TestCaseOperation1Input) SetGrant(v *InputService20TestShapeGrant) *InputService20TestShapeInputService20TestCaseOperation1Input {
  3438. s.Grant = v
  3439. return s
  3440. }
  3441. type InputService20TestShapeInputService20TestCaseOperation1Output struct {
  3442. _ struct{} `type:"structure"`
  3443. }
  3444. // InputService21ProtocolTest provides the API operation methods for making requests to
  3445. // . See this package's package overview docs
  3446. // for details on the service.
  3447. //
  3448. // InputService21ProtocolTest methods are safe to use concurrently. It is not safe to
  3449. // modify mutate any of the struct's properties though.
  3450. type InputService21ProtocolTest struct {
  3451. *client.Client
  3452. }
  3453. // New creates a new instance of the InputService21ProtocolTest client with a session.
  3454. // If additional configuration is needed for the client instance use the optional
  3455. // aws.Config parameter to add your extra config.
  3456. //
  3457. // Example:
  3458. // // Create a InputService21ProtocolTest client from just a session.
  3459. // svc := inputservice21protocoltest.New(mySession)
  3460. //
  3461. // // Create a InputService21ProtocolTest client with additional configuration
  3462. // svc := inputservice21protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  3463. func NewInputService21ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService21ProtocolTest {
  3464. c := p.ClientConfig("inputservice21protocoltest", cfgs...)
  3465. return newInputService21ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  3466. }
  3467. // newClient creates, initializes and returns a new service client instance.
  3468. func newInputService21ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService21ProtocolTest {
  3469. svc := &InputService21ProtocolTest{
  3470. Client: client.New(
  3471. cfg,
  3472. metadata.ClientInfo{
  3473. ServiceName: "InputService21ProtocolTest",
  3474. ServiceID: "InputService21ProtocolTest",
  3475. SigningName: signingName,
  3476. SigningRegion: signingRegion,
  3477. Endpoint: endpoint,
  3478. APIVersion: "2014-01-01",
  3479. },
  3480. handlers,
  3481. ),
  3482. }
  3483. // Handlers
  3484. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  3485. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  3486. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  3487. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  3488. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  3489. return svc
  3490. }
  3491. // newRequest creates a new request for a InputService21ProtocolTest operation and runs any
  3492. // custom request initialization.
  3493. func (c *InputService21ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  3494. req := c.NewRequest(op, params, data)
  3495. return req
  3496. }
  3497. const opInputService21TestCaseOperation1 = "OperationName"
  3498. // InputService21TestCaseOperation1Request generates a "aws/request.Request" representing the
  3499. // client's request for the InputService21TestCaseOperation1 operation. The "output" return
  3500. // value will be populated with the request's response once the request completes
  3501. // successfully.
  3502. //
  3503. // Use "Send" method on the returned Request to send the API call to the service.
  3504. // the "output" return value is not valid until after Send returns without error.
  3505. //
  3506. // See InputService21TestCaseOperation1 for more information on using the InputService21TestCaseOperation1
  3507. // API call, and error handling.
  3508. //
  3509. // This method is useful when you want to inject custom logic or configuration
  3510. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3511. //
  3512. //
  3513. // // Example sending a request using the InputService21TestCaseOperation1Request method.
  3514. // req, resp := client.InputService21TestCaseOperation1Request(params)
  3515. //
  3516. // err := req.Send()
  3517. // if err == nil { // resp is now filled
  3518. // fmt.Println(resp)
  3519. // }
  3520. func (c *InputService21ProtocolTest) InputService21TestCaseOperation1Request(input *InputService21TestShapeInputService21TestCaseOperation1Input) (req *request.Request, output *InputService21TestShapeInputService21TestCaseOperation1Output) {
  3521. op := &request.Operation{
  3522. Name: opInputService21TestCaseOperation1,
  3523. HTTPMethod: "GET",
  3524. HTTPPath: "/{Bucket}/{Key+}",
  3525. }
  3526. if input == nil {
  3527. input = &InputService21TestShapeInputService21TestCaseOperation1Input{}
  3528. }
  3529. output = &InputService21TestShapeInputService21TestCaseOperation1Output{}
  3530. req = c.newRequest(op, input, output)
  3531. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3532. return
  3533. }
  3534. // InputService21TestCaseOperation1 API operation for .
  3535. //
  3536. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3537. // with awserr.Error's Code and Message methods to get detailed information about
  3538. // the error.
  3539. //
  3540. // See the AWS API reference guide for 's
  3541. // API operation InputService21TestCaseOperation1 for usage and error information.
  3542. func (c *InputService21ProtocolTest) InputService21TestCaseOperation1(input *InputService21TestShapeInputService21TestCaseOperation1Input) (*InputService21TestShapeInputService21TestCaseOperation1Output, error) {
  3543. req, out := c.InputService21TestCaseOperation1Request(input)
  3544. return out, req.Send()
  3545. }
  3546. // InputService21TestCaseOperation1WithContext is the same as InputService21TestCaseOperation1 with the addition of
  3547. // the ability to pass a context and additional request options.
  3548. //
  3549. // See InputService21TestCaseOperation1 for details on how to use this API operation.
  3550. //
  3551. // The context must be non-nil and will be used for request cancellation. If
  3552. // the context is nil a panic will occur. In the future the SDK may create
  3553. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3554. // for more information on using Contexts.
  3555. func (c *InputService21ProtocolTest) InputService21TestCaseOperation1WithContext(ctx aws.Context, input *InputService21TestShapeInputService21TestCaseOperation1Input, opts ...request.Option) (*InputService21TestShapeInputService21TestCaseOperation1Output, error) {
  3556. req, out := c.InputService21TestCaseOperation1Request(input)
  3557. req.SetContext(ctx)
  3558. req.ApplyOptions(opts...)
  3559. return out, req.Send()
  3560. }
  3561. type InputService21TestShapeInputService21TestCaseOperation1Input struct {
  3562. _ struct{} `type:"structure"`
  3563. // Bucket is a required field
  3564. Bucket *string `location:"uri" type:"string" required:"true"`
  3565. // Key is a required field
  3566. Key *string `location:"uri" type:"string" required:"true"`
  3567. }
  3568. // Validate inspects the fields of the type to determine if they are valid.
  3569. func (s *InputService21TestShapeInputService21TestCaseOperation1Input) Validate() error {
  3570. invalidParams := request.ErrInvalidParams{Context: "InputService21TestShapeInputService21TestCaseOperation1Input"}
  3571. if s.Bucket == nil {
  3572. invalidParams.Add(request.NewErrParamRequired("Bucket"))
  3573. }
  3574. if s.Bucket != nil && len(*s.Bucket) < 1 {
  3575. invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
  3576. }
  3577. if s.Key == nil {
  3578. invalidParams.Add(request.NewErrParamRequired("Key"))
  3579. }
  3580. if s.Key != nil && len(*s.Key) < 1 {
  3581. invalidParams.Add(request.NewErrParamMinLen("Key", 1))
  3582. }
  3583. if invalidParams.Len() > 0 {
  3584. return invalidParams
  3585. }
  3586. return nil
  3587. }
  3588. // SetBucket sets the Bucket field's value.
  3589. func (s *InputService21TestShapeInputService21TestCaseOperation1Input) SetBucket(v string) *InputService21TestShapeInputService21TestCaseOperation1Input {
  3590. s.Bucket = &v
  3591. return s
  3592. }
  3593. // SetKey sets the Key field's value.
  3594. func (s *InputService21TestShapeInputService21TestCaseOperation1Input) SetKey(v string) *InputService21TestShapeInputService21TestCaseOperation1Input {
  3595. s.Key = &v
  3596. return s
  3597. }
  3598. type InputService21TestShapeInputService21TestCaseOperation1Output struct {
  3599. _ struct{} `type:"structure"`
  3600. }
  3601. // InputService22ProtocolTest provides the API operation methods for making requests to
  3602. // . See this package's package overview docs
  3603. // for details on the service.
  3604. //
  3605. // InputService22ProtocolTest methods are safe to use concurrently. It is not safe to
  3606. // modify mutate any of the struct's properties though.
  3607. type InputService22ProtocolTest struct {
  3608. *client.Client
  3609. }
  3610. // New creates a new instance of the InputService22ProtocolTest client with a session.
  3611. // If additional configuration is needed for the client instance use the optional
  3612. // aws.Config parameter to add your extra config.
  3613. //
  3614. // Example:
  3615. // // Create a InputService22ProtocolTest client from just a session.
  3616. // svc := inputservice22protocoltest.New(mySession)
  3617. //
  3618. // // Create a InputService22ProtocolTest client with additional configuration
  3619. // svc := inputservice22protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  3620. func NewInputService22ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService22ProtocolTest {
  3621. c := p.ClientConfig("inputservice22protocoltest", cfgs...)
  3622. return newInputService22ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  3623. }
  3624. // newClient creates, initializes and returns a new service client instance.
  3625. func newInputService22ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService22ProtocolTest {
  3626. svc := &InputService22ProtocolTest{
  3627. Client: client.New(
  3628. cfg,
  3629. metadata.ClientInfo{
  3630. ServiceName: "InputService22ProtocolTest",
  3631. ServiceID: "InputService22ProtocolTest",
  3632. SigningName: signingName,
  3633. SigningRegion: signingRegion,
  3634. Endpoint: endpoint,
  3635. APIVersion: "2014-01-01",
  3636. },
  3637. handlers,
  3638. ),
  3639. }
  3640. // Handlers
  3641. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  3642. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  3643. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  3644. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  3645. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  3646. return svc
  3647. }
  3648. // newRequest creates a new request for a InputService22ProtocolTest operation and runs any
  3649. // custom request initialization.
  3650. func (c *InputService22ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  3651. req := c.NewRequest(op, params, data)
  3652. return req
  3653. }
  3654. const opInputService22TestCaseOperation1 = "OperationName"
  3655. // InputService22TestCaseOperation1Request generates a "aws/request.Request" representing the
  3656. // client's request for the InputService22TestCaseOperation1 operation. The "output" return
  3657. // value will be populated with the request's response once the request completes
  3658. // successfully.
  3659. //
  3660. // Use "Send" method on the returned Request to send the API call to the service.
  3661. // the "output" return value is not valid until after Send returns without error.
  3662. //
  3663. // See InputService22TestCaseOperation1 for more information on using the InputService22TestCaseOperation1
  3664. // API call, and error handling.
  3665. //
  3666. // This method is useful when you want to inject custom logic or configuration
  3667. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3668. //
  3669. //
  3670. // // Example sending a request using the InputService22TestCaseOperation1Request method.
  3671. // req, resp := client.InputService22TestCaseOperation1Request(params)
  3672. //
  3673. // err := req.Send()
  3674. // if err == nil { // resp is now filled
  3675. // fmt.Println(resp)
  3676. // }
  3677. func (c *InputService22ProtocolTest) InputService22TestCaseOperation1Request(input *InputService22TestShapeInputService22TestCaseOperation1Input) (req *request.Request, output *InputService22TestShapeInputService22TestCaseOperation1Output) {
  3678. op := &request.Operation{
  3679. Name: opInputService22TestCaseOperation1,
  3680. HTTPMethod: "POST",
  3681. HTTPPath: "/path",
  3682. }
  3683. if input == nil {
  3684. input = &InputService22TestShapeInputService22TestCaseOperation1Input{}
  3685. }
  3686. output = &InputService22TestShapeInputService22TestCaseOperation1Output{}
  3687. req = c.newRequest(op, input, output)
  3688. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3689. return
  3690. }
  3691. // InputService22TestCaseOperation1 API operation for .
  3692. //
  3693. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3694. // with awserr.Error's Code and Message methods to get detailed information about
  3695. // the error.
  3696. //
  3697. // See the AWS API reference guide for 's
  3698. // API operation InputService22TestCaseOperation1 for usage and error information.
  3699. func (c *InputService22ProtocolTest) InputService22TestCaseOperation1(input *InputService22TestShapeInputService22TestCaseOperation1Input) (*InputService22TestShapeInputService22TestCaseOperation1Output, error) {
  3700. req, out := c.InputService22TestCaseOperation1Request(input)
  3701. return out, req.Send()
  3702. }
  3703. // InputService22TestCaseOperation1WithContext is the same as InputService22TestCaseOperation1 with the addition of
  3704. // the ability to pass a context and additional request options.
  3705. //
  3706. // See InputService22TestCaseOperation1 for details on how to use this API operation.
  3707. //
  3708. // The context must be non-nil and will be used for request cancellation. If
  3709. // the context is nil a panic will occur. In the future the SDK may create
  3710. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3711. // for more information on using Contexts.
  3712. func (c *InputService22ProtocolTest) InputService22TestCaseOperation1WithContext(ctx aws.Context, input *InputService22TestShapeInputService22TestCaseOperation1Input, opts ...request.Option) (*InputService22TestShapeInputService22TestCaseOperation1Output, error) {
  3713. req, out := c.InputService22TestCaseOperation1Request(input)
  3714. req.SetContext(ctx)
  3715. req.ApplyOptions(opts...)
  3716. return out, req.Send()
  3717. }
  3718. const opInputService22TestCaseOperation2 = "OperationName"
  3719. // InputService22TestCaseOperation2Request generates a "aws/request.Request" representing the
  3720. // client's request for the InputService22TestCaseOperation2 operation. The "output" return
  3721. // value will be populated with the request's response once the request completes
  3722. // successfully.
  3723. //
  3724. // Use "Send" method on the returned Request to send the API call to the service.
  3725. // the "output" return value is not valid until after Send returns without error.
  3726. //
  3727. // See InputService22TestCaseOperation2 for more information on using the InputService22TestCaseOperation2
  3728. // API call, and error handling.
  3729. //
  3730. // This method is useful when you want to inject custom logic or configuration
  3731. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3732. //
  3733. //
  3734. // // Example sending a request using the InputService22TestCaseOperation2Request method.
  3735. // req, resp := client.InputService22TestCaseOperation2Request(params)
  3736. //
  3737. // err := req.Send()
  3738. // if err == nil { // resp is now filled
  3739. // fmt.Println(resp)
  3740. // }
  3741. func (c *InputService22ProtocolTest) InputService22TestCaseOperation2Request(input *InputService22TestShapeInputService22TestCaseOperation2Input) (req *request.Request, output *InputService22TestShapeInputService22TestCaseOperation2Output) {
  3742. op := &request.Operation{
  3743. Name: opInputService22TestCaseOperation2,
  3744. HTTPMethod: "POST",
  3745. HTTPPath: "/path?abc=mno",
  3746. }
  3747. if input == nil {
  3748. input = &InputService22TestShapeInputService22TestCaseOperation2Input{}
  3749. }
  3750. output = &InputService22TestShapeInputService22TestCaseOperation2Output{}
  3751. req = c.newRequest(op, input, output)
  3752. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3753. return
  3754. }
  3755. // InputService22TestCaseOperation2 API operation for .
  3756. //
  3757. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3758. // with awserr.Error's Code and Message methods to get detailed information about
  3759. // the error.
  3760. //
  3761. // See the AWS API reference guide for 's
  3762. // API operation InputService22TestCaseOperation2 for usage and error information.
  3763. func (c *InputService22ProtocolTest) InputService22TestCaseOperation2(input *InputService22TestShapeInputService22TestCaseOperation2Input) (*InputService22TestShapeInputService22TestCaseOperation2Output, error) {
  3764. req, out := c.InputService22TestCaseOperation2Request(input)
  3765. return out, req.Send()
  3766. }
  3767. // InputService22TestCaseOperation2WithContext is the same as InputService22TestCaseOperation2 with the addition of
  3768. // the ability to pass a context and additional request options.
  3769. //
  3770. // See InputService22TestCaseOperation2 for details on how to use this API operation.
  3771. //
  3772. // The context must be non-nil and will be used for request cancellation. If
  3773. // the context is nil a panic will occur. In the future the SDK may create
  3774. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3775. // for more information on using Contexts.
  3776. func (c *InputService22ProtocolTest) InputService22TestCaseOperation2WithContext(ctx aws.Context, input *InputService22TestShapeInputService22TestCaseOperation2Input, opts ...request.Option) (*InputService22TestShapeInputService22TestCaseOperation2Output, error) {
  3777. req, out := c.InputService22TestCaseOperation2Request(input)
  3778. req.SetContext(ctx)
  3779. req.ApplyOptions(opts...)
  3780. return out, req.Send()
  3781. }
  3782. type InputService22TestShapeInputService22TestCaseOperation1Input struct {
  3783. _ struct{} `type:"structure"`
  3784. Foo *string `location:"querystring" locationName:"param-name" type:"string"`
  3785. }
  3786. // SetFoo sets the Foo field's value.
  3787. func (s *InputService22TestShapeInputService22TestCaseOperation1Input) SetFoo(v string) *InputService22TestShapeInputService22TestCaseOperation1Input {
  3788. s.Foo = &v
  3789. return s
  3790. }
  3791. type InputService22TestShapeInputService22TestCaseOperation1Output struct {
  3792. _ struct{} `type:"structure"`
  3793. }
  3794. type InputService22TestShapeInputService22TestCaseOperation2Input struct {
  3795. _ struct{} `type:"structure"`
  3796. Foo *string `location:"querystring" locationName:"param-name" type:"string"`
  3797. }
  3798. // SetFoo sets the Foo field's value.
  3799. func (s *InputService22TestShapeInputService22TestCaseOperation2Input) SetFoo(v string) *InputService22TestShapeInputService22TestCaseOperation2Input {
  3800. s.Foo = &v
  3801. return s
  3802. }
  3803. type InputService22TestShapeInputService22TestCaseOperation2Output struct {
  3804. _ struct{} `type:"structure"`
  3805. }
  3806. // InputService23ProtocolTest provides the API operation methods for making requests to
  3807. // . See this package's package overview docs
  3808. // for details on the service.
  3809. //
  3810. // InputService23ProtocolTest methods are safe to use concurrently. It is not safe to
  3811. // modify mutate any of the struct's properties though.
  3812. type InputService23ProtocolTest struct {
  3813. *client.Client
  3814. }
  3815. // New creates a new instance of the InputService23ProtocolTest client with a session.
  3816. // If additional configuration is needed for the client instance use the optional
  3817. // aws.Config parameter to add your extra config.
  3818. //
  3819. // Example:
  3820. // // Create a InputService23ProtocolTest client from just a session.
  3821. // svc := inputservice23protocoltest.New(mySession)
  3822. //
  3823. // // Create a InputService23ProtocolTest client with additional configuration
  3824. // svc := inputservice23protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  3825. func NewInputService23ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService23ProtocolTest {
  3826. c := p.ClientConfig("inputservice23protocoltest", cfgs...)
  3827. return newInputService23ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  3828. }
  3829. // newClient creates, initializes and returns a new service client instance.
  3830. func newInputService23ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService23ProtocolTest {
  3831. svc := &InputService23ProtocolTest{
  3832. Client: client.New(
  3833. cfg,
  3834. metadata.ClientInfo{
  3835. ServiceName: "InputService23ProtocolTest",
  3836. ServiceID: "InputService23ProtocolTest",
  3837. SigningName: signingName,
  3838. SigningRegion: signingRegion,
  3839. Endpoint: endpoint,
  3840. APIVersion: "2014-01-01",
  3841. },
  3842. handlers,
  3843. ),
  3844. }
  3845. // Handlers
  3846. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  3847. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  3848. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  3849. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  3850. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  3851. return svc
  3852. }
  3853. // newRequest creates a new request for a InputService23ProtocolTest operation and runs any
  3854. // custom request initialization.
  3855. func (c *InputService23ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  3856. req := c.NewRequest(op, params, data)
  3857. return req
  3858. }
  3859. const opInputService23TestCaseOperation1 = "OperationName"
  3860. // InputService23TestCaseOperation1Request generates a "aws/request.Request" representing the
  3861. // client's request for the InputService23TestCaseOperation1 operation. The "output" return
  3862. // value will be populated with the request's response once the request completes
  3863. // successfully.
  3864. //
  3865. // Use "Send" method on the returned Request to send the API call to the service.
  3866. // the "output" return value is not valid until after Send returns without error.
  3867. //
  3868. // See InputService23TestCaseOperation1 for more information on using the InputService23TestCaseOperation1
  3869. // API call, and error handling.
  3870. //
  3871. // This method is useful when you want to inject custom logic or configuration
  3872. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3873. //
  3874. //
  3875. // // Example sending a request using the InputService23TestCaseOperation1Request method.
  3876. // req, resp := client.InputService23TestCaseOperation1Request(params)
  3877. //
  3878. // err := req.Send()
  3879. // if err == nil { // resp is now filled
  3880. // fmt.Println(resp)
  3881. // }
  3882. func (c *InputService23ProtocolTest) InputService23TestCaseOperation1Request(input *InputService23TestShapeInputService23TestCaseOperation1Input) (req *request.Request, output *InputService23TestShapeInputService23TestCaseOperation1Output) {
  3883. op := &request.Operation{
  3884. Name: opInputService23TestCaseOperation1,
  3885. HTTPMethod: "POST",
  3886. HTTPPath: "/path",
  3887. }
  3888. if input == nil {
  3889. input = &InputService23TestShapeInputService23TestCaseOperation1Input{}
  3890. }
  3891. output = &InputService23TestShapeInputService23TestCaseOperation1Output{}
  3892. req = c.newRequest(op, input, output)
  3893. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3894. return
  3895. }
  3896. // InputService23TestCaseOperation1 API operation for .
  3897. //
  3898. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3899. // with awserr.Error's Code and Message methods to get detailed information about
  3900. // the error.
  3901. //
  3902. // See the AWS API reference guide for 's
  3903. // API operation InputService23TestCaseOperation1 for usage and error information.
  3904. func (c *InputService23ProtocolTest) InputService23TestCaseOperation1(input *InputService23TestShapeInputService23TestCaseOperation1Input) (*InputService23TestShapeInputService23TestCaseOperation1Output, error) {
  3905. req, out := c.InputService23TestCaseOperation1Request(input)
  3906. return out, req.Send()
  3907. }
  3908. // InputService23TestCaseOperation1WithContext is the same as InputService23TestCaseOperation1 with the addition of
  3909. // the ability to pass a context and additional request options.
  3910. //
  3911. // See InputService23TestCaseOperation1 for details on how to use this API operation.
  3912. //
  3913. // The context must be non-nil and will be used for request cancellation. If
  3914. // the context is nil a panic will occur. In the future the SDK may create
  3915. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3916. // for more information on using Contexts.
  3917. func (c *InputService23ProtocolTest) InputService23TestCaseOperation1WithContext(ctx aws.Context, input *InputService23TestShapeInputService23TestCaseOperation1Input, opts ...request.Option) (*InputService23TestShapeInputService23TestCaseOperation1Output, error) {
  3918. req, out := c.InputService23TestCaseOperation1Request(input)
  3919. req.SetContext(ctx)
  3920. req.ApplyOptions(opts...)
  3921. return out, req.Send()
  3922. }
  3923. const opInputService23TestCaseOperation2 = "OperationName"
  3924. // InputService23TestCaseOperation2Request generates a "aws/request.Request" representing the
  3925. // client's request for the InputService23TestCaseOperation2 operation. The "output" return
  3926. // value will be populated with the request's response once the request completes
  3927. // successfully.
  3928. //
  3929. // Use "Send" method on the returned Request to send the API call to the service.
  3930. // the "output" return value is not valid until after Send returns without error.
  3931. //
  3932. // See InputService23TestCaseOperation2 for more information on using the InputService23TestCaseOperation2
  3933. // API call, and error handling.
  3934. //
  3935. // This method is useful when you want to inject custom logic or configuration
  3936. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3937. //
  3938. //
  3939. // // Example sending a request using the InputService23TestCaseOperation2Request method.
  3940. // req, resp := client.InputService23TestCaseOperation2Request(params)
  3941. //
  3942. // err := req.Send()
  3943. // if err == nil { // resp is now filled
  3944. // fmt.Println(resp)
  3945. // }
  3946. func (c *InputService23ProtocolTest) InputService23TestCaseOperation2Request(input *InputService23TestShapeInputService23TestCaseOperation2Input) (req *request.Request, output *InputService23TestShapeInputService23TestCaseOperation2Output) {
  3947. op := &request.Operation{
  3948. Name: opInputService23TestCaseOperation2,
  3949. HTTPMethod: "POST",
  3950. HTTPPath: "/path",
  3951. }
  3952. if input == nil {
  3953. input = &InputService23TestShapeInputService23TestCaseOperation2Input{}
  3954. }
  3955. output = &InputService23TestShapeInputService23TestCaseOperation2Output{}
  3956. req = c.newRequest(op, input, output)
  3957. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3958. return
  3959. }
  3960. // InputService23TestCaseOperation2 API operation for .
  3961. //
  3962. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3963. // with awserr.Error's Code and Message methods to get detailed information about
  3964. // the error.
  3965. //
  3966. // See the AWS API reference guide for 's
  3967. // API operation InputService23TestCaseOperation2 for usage and error information.
  3968. func (c *InputService23ProtocolTest) InputService23TestCaseOperation2(input *InputService23TestShapeInputService23TestCaseOperation2Input) (*InputService23TestShapeInputService23TestCaseOperation2Output, error) {
  3969. req, out := c.InputService23TestCaseOperation2Request(input)
  3970. return out, req.Send()
  3971. }
  3972. // InputService23TestCaseOperation2WithContext is the same as InputService23TestCaseOperation2 with the addition of
  3973. // the ability to pass a context and additional request options.
  3974. //
  3975. // See InputService23TestCaseOperation2 for details on how to use this API operation.
  3976. //
  3977. // The context must be non-nil and will be used for request cancellation. If
  3978. // the context is nil a panic will occur. In the future the SDK may create
  3979. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3980. // for more information on using Contexts.
  3981. func (c *InputService23ProtocolTest) InputService23TestCaseOperation2WithContext(ctx aws.Context, input *InputService23TestShapeInputService23TestCaseOperation2Input, opts ...request.Option) (*InputService23TestShapeInputService23TestCaseOperation2Output, error) {
  3982. req, out := c.InputService23TestCaseOperation2Request(input)
  3983. req.SetContext(ctx)
  3984. req.ApplyOptions(opts...)
  3985. return out, req.Send()
  3986. }
  3987. const opInputService23TestCaseOperation3 = "OperationName"
  3988. // InputService23TestCaseOperation3Request generates a "aws/request.Request" representing the
  3989. // client's request for the InputService23TestCaseOperation3 operation. The "output" return
  3990. // value will be populated with the request's response once the request completes
  3991. // successfully.
  3992. //
  3993. // Use "Send" method on the returned Request to send the API call to the service.
  3994. // the "output" return value is not valid until after Send returns without error.
  3995. //
  3996. // See InputService23TestCaseOperation3 for more information on using the InputService23TestCaseOperation3
  3997. // API call, and error handling.
  3998. //
  3999. // This method is useful when you want to inject custom logic or configuration
  4000. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4001. //
  4002. //
  4003. // // Example sending a request using the InputService23TestCaseOperation3Request method.
  4004. // req, resp := client.InputService23TestCaseOperation3Request(params)
  4005. //
  4006. // err := req.Send()
  4007. // if err == nil { // resp is now filled
  4008. // fmt.Println(resp)
  4009. // }
  4010. func (c *InputService23ProtocolTest) InputService23TestCaseOperation3Request(input *InputService23TestShapeInputService23TestCaseOperation3Input) (req *request.Request, output *InputService23TestShapeInputService23TestCaseOperation3Output) {
  4011. op := &request.Operation{
  4012. Name: opInputService23TestCaseOperation3,
  4013. HTTPMethod: "POST",
  4014. HTTPPath: "/path",
  4015. }
  4016. if input == nil {
  4017. input = &InputService23TestShapeInputService23TestCaseOperation3Input{}
  4018. }
  4019. output = &InputService23TestShapeInputService23TestCaseOperation3Output{}
  4020. req = c.newRequest(op, input, output)
  4021. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4022. return
  4023. }
  4024. // InputService23TestCaseOperation3 API operation for .
  4025. //
  4026. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4027. // with awserr.Error's Code and Message methods to get detailed information about
  4028. // the error.
  4029. //
  4030. // See the AWS API reference guide for 's
  4031. // API operation InputService23TestCaseOperation3 for usage and error information.
  4032. func (c *InputService23ProtocolTest) InputService23TestCaseOperation3(input *InputService23TestShapeInputService23TestCaseOperation3Input) (*InputService23TestShapeInputService23TestCaseOperation3Output, error) {
  4033. req, out := c.InputService23TestCaseOperation3Request(input)
  4034. return out, req.Send()
  4035. }
  4036. // InputService23TestCaseOperation3WithContext is the same as InputService23TestCaseOperation3 with the addition of
  4037. // the ability to pass a context and additional request options.
  4038. //
  4039. // See InputService23TestCaseOperation3 for details on how to use this API operation.
  4040. //
  4041. // The context must be non-nil and will be used for request cancellation. If
  4042. // the context is nil a panic will occur. In the future the SDK may create
  4043. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4044. // for more information on using Contexts.
  4045. func (c *InputService23ProtocolTest) InputService23TestCaseOperation3WithContext(ctx aws.Context, input *InputService23TestShapeInputService23TestCaseOperation3Input, opts ...request.Option) (*InputService23TestShapeInputService23TestCaseOperation3Output, error) {
  4046. req, out := c.InputService23TestCaseOperation3Request(input)
  4047. req.SetContext(ctx)
  4048. req.ApplyOptions(opts...)
  4049. return out, req.Send()
  4050. }
  4051. const opInputService23TestCaseOperation4 = "OperationName"
  4052. // InputService23TestCaseOperation4Request generates a "aws/request.Request" representing the
  4053. // client's request for the InputService23TestCaseOperation4 operation. The "output" return
  4054. // value will be populated with the request's response once the request completes
  4055. // successfully.
  4056. //
  4057. // Use "Send" method on the returned Request to send the API call to the service.
  4058. // the "output" return value is not valid until after Send returns without error.
  4059. //
  4060. // See InputService23TestCaseOperation4 for more information on using the InputService23TestCaseOperation4
  4061. // API call, and error handling.
  4062. //
  4063. // This method is useful when you want to inject custom logic or configuration
  4064. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4065. //
  4066. //
  4067. // // Example sending a request using the InputService23TestCaseOperation4Request method.
  4068. // req, resp := client.InputService23TestCaseOperation4Request(params)
  4069. //
  4070. // err := req.Send()
  4071. // if err == nil { // resp is now filled
  4072. // fmt.Println(resp)
  4073. // }
  4074. func (c *InputService23ProtocolTest) InputService23TestCaseOperation4Request(input *InputService23TestShapeInputService23TestCaseOperation4Input) (req *request.Request, output *InputService23TestShapeInputService23TestCaseOperation4Output) {
  4075. op := &request.Operation{
  4076. Name: opInputService23TestCaseOperation4,
  4077. HTTPMethod: "POST",
  4078. HTTPPath: "/path",
  4079. }
  4080. if input == nil {
  4081. input = &InputService23TestShapeInputService23TestCaseOperation4Input{}
  4082. }
  4083. output = &InputService23TestShapeInputService23TestCaseOperation4Output{}
  4084. req = c.newRequest(op, input, output)
  4085. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4086. return
  4087. }
  4088. // InputService23TestCaseOperation4 API operation for .
  4089. //
  4090. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4091. // with awserr.Error's Code and Message methods to get detailed information about
  4092. // the error.
  4093. //
  4094. // See the AWS API reference guide for 's
  4095. // API operation InputService23TestCaseOperation4 for usage and error information.
  4096. func (c *InputService23ProtocolTest) InputService23TestCaseOperation4(input *InputService23TestShapeInputService23TestCaseOperation4Input) (*InputService23TestShapeInputService23TestCaseOperation4Output, error) {
  4097. req, out := c.InputService23TestCaseOperation4Request(input)
  4098. return out, req.Send()
  4099. }
  4100. // InputService23TestCaseOperation4WithContext is the same as InputService23TestCaseOperation4 with the addition of
  4101. // the ability to pass a context and additional request options.
  4102. //
  4103. // See InputService23TestCaseOperation4 for details on how to use this API operation.
  4104. //
  4105. // The context must be non-nil and will be used for request cancellation. If
  4106. // the context is nil a panic will occur. In the future the SDK may create
  4107. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4108. // for more information on using Contexts.
  4109. func (c *InputService23ProtocolTest) InputService23TestCaseOperation4WithContext(ctx aws.Context, input *InputService23TestShapeInputService23TestCaseOperation4Input, opts ...request.Option) (*InputService23TestShapeInputService23TestCaseOperation4Output, error) {
  4110. req, out := c.InputService23TestCaseOperation4Request(input)
  4111. req.SetContext(ctx)
  4112. req.ApplyOptions(opts...)
  4113. return out, req.Send()
  4114. }
  4115. const opInputService23TestCaseOperation5 = "OperationName"
  4116. // InputService23TestCaseOperation5Request generates a "aws/request.Request" representing the
  4117. // client's request for the InputService23TestCaseOperation5 operation. The "output" return
  4118. // value will be populated with the request's response once the request completes
  4119. // successfully.
  4120. //
  4121. // Use "Send" method on the returned Request to send the API call to the service.
  4122. // the "output" return value is not valid until after Send returns without error.
  4123. //
  4124. // See InputService23TestCaseOperation5 for more information on using the InputService23TestCaseOperation5
  4125. // API call, and error handling.
  4126. //
  4127. // This method is useful when you want to inject custom logic or configuration
  4128. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4129. //
  4130. //
  4131. // // Example sending a request using the InputService23TestCaseOperation5Request method.
  4132. // req, resp := client.InputService23TestCaseOperation5Request(params)
  4133. //
  4134. // err := req.Send()
  4135. // if err == nil { // resp is now filled
  4136. // fmt.Println(resp)
  4137. // }
  4138. func (c *InputService23ProtocolTest) InputService23TestCaseOperation5Request(input *InputService23TestShapeInputService23TestCaseOperation5Input) (req *request.Request, output *InputService23TestShapeInputService23TestCaseOperation5Output) {
  4139. op := &request.Operation{
  4140. Name: opInputService23TestCaseOperation5,
  4141. HTTPMethod: "POST",
  4142. HTTPPath: "/path",
  4143. }
  4144. if input == nil {
  4145. input = &InputService23TestShapeInputService23TestCaseOperation5Input{}
  4146. }
  4147. output = &InputService23TestShapeInputService23TestCaseOperation5Output{}
  4148. req = c.newRequest(op, input, output)
  4149. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4150. return
  4151. }
  4152. // InputService23TestCaseOperation5 API operation for .
  4153. //
  4154. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4155. // with awserr.Error's Code and Message methods to get detailed information about
  4156. // the error.
  4157. //
  4158. // See the AWS API reference guide for 's
  4159. // API operation InputService23TestCaseOperation5 for usage and error information.
  4160. func (c *InputService23ProtocolTest) InputService23TestCaseOperation5(input *InputService23TestShapeInputService23TestCaseOperation5Input) (*InputService23TestShapeInputService23TestCaseOperation5Output, error) {
  4161. req, out := c.InputService23TestCaseOperation5Request(input)
  4162. return out, req.Send()
  4163. }
  4164. // InputService23TestCaseOperation5WithContext is the same as InputService23TestCaseOperation5 with the addition of
  4165. // the ability to pass a context and additional request options.
  4166. //
  4167. // See InputService23TestCaseOperation5 for details on how to use this API operation.
  4168. //
  4169. // The context must be non-nil and will be used for request cancellation. If
  4170. // the context is nil a panic will occur. In the future the SDK may create
  4171. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4172. // for more information on using Contexts.
  4173. func (c *InputService23ProtocolTest) InputService23TestCaseOperation5WithContext(ctx aws.Context, input *InputService23TestShapeInputService23TestCaseOperation5Input, opts ...request.Option) (*InputService23TestShapeInputService23TestCaseOperation5Output, error) {
  4174. req, out := c.InputService23TestCaseOperation5Request(input)
  4175. req.SetContext(ctx)
  4176. req.ApplyOptions(opts...)
  4177. return out, req.Send()
  4178. }
  4179. const opInputService23TestCaseOperation6 = "OperationName"
  4180. // InputService23TestCaseOperation6Request generates a "aws/request.Request" representing the
  4181. // client's request for the InputService23TestCaseOperation6 operation. The "output" return
  4182. // value will be populated with the request's response once the request completes
  4183. // successfully.
  4184. //
  4185. // Use "Send" method on the returned Request to send the API call to the service.
  4186. // the "output" return value is not valid until after Send returns without error.
  4187. //
  4188. // See InputService23TestCaseOperation6 for more information on using the InputService23TestCaseOperation6
  4189. // API call, and error handling.
  4190. //
  4191. // This method is useful when you want to inject custom logic or configuration
  4192. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4193. //
  4194. //
  4195. // // Example sending a request using the InputService23TestCaseOperation6Request method.
  4196. // req, resp := client.InputService23TestCaseOperation6Request(params)
  4197. //
  4198. // err := req.Send()
  4199. // if err == nil { // resp is now filled
  4200. // fmt.Println(resp)
  4201. // }
  4202. func (c *InputService23ProtocolTest) InputService23TestCaseOperation6Request(input *InputService23TestShapeInputService23TestCaseOperation6Input) (req *request.Request, output *InputService23TestShapeInputService23TestCaseOperation6Output) {
  4203. op := &request.Operation{
  4204. Name: opInputService23TestCaseOperation6,
  4205. HTTPMethod: "POST",
  4206. HTTPPath: "/path",
  4207. }
  4208. if input == nil {
  4209. input = &InputService23TestShapeInputService23TestCaseOperation6Input{}
  4210. }
  4211. output = &InputService23TestShapeInputService23TestCaseOperation6Output{}
  4212. req = c.newRequest(op, input, output)
  4213. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4214. return
  4215. }
  4216. // InputService23TestCaseOperation6 API operation for .
  4217. //
  4218. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4219. // with awserr.Error's Code and Message methods to get detailed information about
  4220. // the error.
  4221. //
  4222. // See the AWS API reference guide for 's
  4223. // API operation InputService23TestCaseOperation6 for usage and error information.
  4224. func (c *InputService23ProtocolTest) InputService23TestCaseOperation6(input *InputService23TestShapeInputService23TestCaseOperation6Input) (*InputService23TestShapeInputService23TestCaseOperation6Output, error) {
  4225. req, out := c.InputService23TestCaseOperation6Request(input)
  4226. return out, req.Send()
  4227. }
  4228. // InputService23TestCaseOperation6WithContext is the same as InputService23TestCaseOperation6 with the addition of
  4229. // the ability to pass a context and additional request options.
  4230. //
  4231. // See InputService23TestCaseOperation6 for details on how to use this API operation.
  4232. //
  4233. // The context must be non-nil and will be used for request cancellation. If
  4234. // the context is nil a panic will occur. In the future the SDK may create
  4235. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4236. // for more information on using Contexts.
  4237. func (c *InputService23ProtocolTest) InputService23TestCaseOperation6WithContext(ctx aws.Context, input *InputService23TestShapeInputService23TestCaseOperation6Input, opts ...request.Option) (*InputService23TestShapeInputService23TestCaseOperation6Output, error) {
  4238. req, out := c.InputService23TestCaseOperation6Request(input)
  4239. req.SetContext(ctx)
  4240. req.ApplyOptions(opts...)
  4241. return out, req.Send()
  4242. }
  4243. type InputService23TestShapeInputService23TestCaseOperation1Input struct {
  4244. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  4245. RecursiveStruct *InputService23TestShapeRecursiveStructType `type:"structure"`
  4246. }
  4247. // SetRecursiveStruct sets the RecursiveStruct field's value.
  4248. func (s *InputService23TestShapeInputService23TestCaseOperation1Input) SetRecursiveStruct(v *InputService23TestShapeRecursiveStructType) *InputService23TestShapeInputService23TestCaseOperation1Input {
  4249. s.RecursiveStruct = v
  4250. return s
  4251. }
  4252. type InputService23TestShapeInputService23TestCaseOperation1Output struct {
  4253. _ struct{} `type:"structure"`
  4254. }
  4255. type InputService23TestShapeInputService23TestCaseOperation2Input struct {
  4256. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  4257. RecursiveStruct *InputService23TestShapeRecursiveStructType `type:"structure"`
  4258. }
  4259. // SetRecursiveStruct sets the RecursiveStruct field's value.
  4260. func (s *InputService23TestShapeInputService23TestCaseOperation2Input) SetRecursiveStruct(v *InputService23TestShapeRecursiveStructType) *InputService23TestShapeInputService23TestCaseOperation2Input {
  4261. s.RecursiveStruct = v
  4262. return s
  4263. }
  4264. type InputService23TestShapeInputService23TestCaseOperation2Output struct {
  4265. _ struct{} `type:"structure"`
  4266. }
  4267. type InputService23TestShapeInputService23TestCaseOperation3Input struct {
  4268. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  4269. RecursiveStruct *InputService23TestShapeRecursiveStructType `type:"structure"`
  4270. }
  4271. // SetRecursiveStruct sets the RecursiveStruct field's value.
  4272. func (s *InputService23TestShapeInputService23TestCaseOperation3Input) SetRecursiveStruct(v *InputService23TestShapeRecursiveStructType) *InputService23TestShapeInputService23TestCaseOperation3Input {
  4273. s.RecursiveStruct = v
  4274. return s
  4275. }
  4276. type InputService23TestShapeInputService23TestCaseOperation3Output struct {
  4277. _ struct{} `type:"structure"`
  4278. }
  4279. type InputService23TestShapeInputService23TestCaseOperation4Input struct {
  4280. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  4281. RecursiveStruct *InputService23TestShapeRecursiveStructType `type:"structure"`
  4282. }
  4283. // SetRecursiveStruct sets the RecursiveStruct field's value.
  4284. func (s *InputService23TestShapeInputService23TestCaseOperation4Input) SetRecursiveStruct(v *InputService23TestShapeRecursiveStructType) *InputService23TestShapeInputService23TestCaseOperation4Input {
  4285. s.RecursiveStruct = v
  4286. return s
  4287. }
  4288. type InputService23TestShapeInputService23TestCaseOperation4Output struct {
  4289. _ struct{} `type:"structure"`
  4290. }
  4291. type InputService23TestShapeInputService23TestCaseOperation5Input struct {
  4292. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  4293. RecursiveStruct *InputService23TestShapeRecursiveStructType `type:"structure"`
  4294. }
  4295. // SetRecursiveStruct sets the RecursiveStruct field's value.
  4296. func (s *InputService23TestShapeInputService23TestCaseOperation5Input) SetRecursiveStruct(v *InputService23TestShapeRecursiveStructType) *InputService23TestShapeInputService23TestCaseOperation5Input {
  4297. s.RecursiveStruct = v
  4298. return s
  4299. }
  4300. type InputService23TestShapeInputService23TestCaseOperation5Output struct {
  4301. _ struct{} `type:"structure"`
  4302. }
  4303. type InputService23TestShapeInputService23TestCaseOperation6Input struct {
  4304. _ struct{} `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  4305. RecursiveStruct *InputService23TestShapeRecursiveStructType `type:"structure"`
  4306. }
  4307. // SetRecursiveStruct sets the RecursiveStruct field's value.
  4308. func (s *InputService23TestShapeInputService23TestCaseOperation6Input) SetRecursiveStruct(v *InputService23TestShapeRecursiveStructType) *InputService23TestShapeInputService23TestCaseOperation6Input {
  4309. s.RecursiveStruct = v
  4310. return s
  4311. }
  4312. type InputService23TestShapeInputService23TestCaseOperation6Output struct {
  4313. _ struct{} `type:"structure"`
  4314. }
  4315. type InputService23TestShapeRecursiveStructType struct {
  4316. _ struct{} `type:"structure"`
  4317. NoRecurse *string `type:"string"`
  4318. RecursiveList []*InputService23TestShapeRecursiveStructType `type:"list"`
  4319. RecursiveMap map[string]*InputService23TestShapeRecursiveStructType `type:"map"`
  4320. RecursiveStruct *InputService23TestShapeRecursiveStructType `type:"structure"`
  4321. }
  4322. // SetNoRecurse sets the NoRecurse field's value.
  4323. func (s *InputService23TestShapeRecursiveStructType) SetNoRecurse(v string) *InputService23TestShapeRecursiveStructType {
  4324. s.NoRecurse = &v
  4325. return s
  4326. }
  4327. // SetRecursiveList sets the RecursiveList field's value.
  4328. func (s *InputService23TestShapeRecursiveStructType) SetRecursiveList(v []*InputService23TestShapeRecursiveStructType) *InputService23TestShapeRecursiveStructType {
  4329. s.RecursiveList = v
  4330. return s
  4331. }
  4332. // SetRecursiveMap sets the RecursiveMap field's value.
  4333. func (s *InputService23TestShapeRecursiveStructType) SetRecursiveMap(v map[string]*InputService23TestShapeRecursiveStructType) *InputService23TestShapeRecursiveStructType {
  4334. s.RecursiveMap = v
  4335. return s
  4336. }
  4337. // SetRecursiveStruct sets the RecursiveStruct field's value.
  4338. func (s *InputService23TestShapeRecursiveStructType) SetRecursiveStruct(v *InputService23TestShapeRecursiveStructType) *InputService23TestShapeRecursiveStructType {
  4339. s.RecursiveStruct = v
  4340. return s
  4341. }
  4342. // InputService24ProtocolTest provides the API operation methods for making requests to
  4343. // . See this package's package overview docs
  4344. // for details on the service.
  4345. //
  4346. // InputService24ProtocolTest methods are safe to use concurrently. It is not safe to
  4347. // modify mutate any of the struct's properties though.
  4348. type InputService24ProtocolTest struct {
  4349. *client.Client
  4350. }
  4351. // New creates a new instance of the InputService24ProtocolTest client with a session.
  4352. // If additional configuration is needed for the client instance use the optional
  4353. // aws.Config parameter to add your extra config.
  4354. //
  4355. // Example:
  4356. // // Create a InputService24ProtocolTest client from just a session.
  4357. // svc := inputservice24protocoltest.New(mySession)
  4358. //
  4359. // // Create a InputService24ProtocolTest client with additional configuration
  4360. // svc := inputservice24protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  4361. func NewInputService24ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService24ProtocolTest {
  4362. c := p.ClientConfig("inputservice24protocoltest", cfgs...)
  4363. return newInputService24ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  4364. }
  4365. // newClient creates, initializes and returns a new service client instance.
  4366. func newInputService24ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService24ProtocolTest {
  4367. svc := &InputService24ProtocolTest{
  4368. Client: client.New(
  4369. cfg,
  4370. metadata.ClientInfo{
  4371. ServiceName: "InputService24ProtocolTest",
  4372. ServiceID: "InputService24ProtocolTest",
  4373. SigningName: signingName,
  4374. SigningRegion: signingRegion,
  4375. Endpoint: endpoint,
  4376. APIVersion: "2014-01-01",
  4377. },
  4378. handlers,
  4379. ),
  4380. }
  4381. // Handlers
  4382. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  4383. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  4384. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  4385. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  4386. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  4387. return svc
  4388. }
  4389. // newRequest creates a new request for a InputService24ProtocolTest operation and runs any
  4390. // custom request initialization.
  4391. func (c *InputService24ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  4392. req := c.NewRequest(op, params, data)
  4393. return req
  4394. }
  4395. const opInputService24TestCaseOperation1 = "OperationName"
  4396. // InputService24TestCaseOperation1Request generates a "aws/request.Request" representing the
  4397. // client's request for the InputService24TestCaseOperation1 operation. The "output" return
  4398. // value will be populated with the request's response once the request completes
  4399. // successfully.
  4400. //
  4401. // Use "Send" method on the returned Request to send the API call to the service.
  4402. // the "output" return value is not valid until after Send returns without error.
  4403. //
  4404. // See InputService24TestCaseOperation1 for more information on using the InputService24TestCaseOperation1
  4405. // API call, and error handling.
  4406. //
  4407. // This method is useful when you want to inject custom logic or configuration
  4408. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4409. //
  4410. //
  4411. // // Example sending a request using the InputService24TestCaseOperation1Request method.
  4412. // req, resp := client.InputService24TestCaseOperation1Request(params)
  4413. //
  4414. // err := req.Send()
  4415. // if err == nil { // resp is now filled
  4416. // fmt.Println(resp)
  4417. // }
  4418. func (c *InputService24ProtocolTest) InputService24TestCaseOperation1Request(input *InputService24TestShapeInputService24TestCaseOperation1Input) (req *request.Request, output *InputService24TestShapeInputService24TestCaseOperation1Output) {
  4419. op := &request.Operation{
  4420. Name: opInputService24TestCaseOperation1,
  4421. HTTPMethod: "POST",
  4422. HTTPPath: "/path",
  4423. }
  4424. if input == nil {
  4425. input = &InputService24TestShapeInputService24TestCaseOperation1Input{}
  4426. }
  4427. output = &InputService24TestShapeInputService24TestCaseOperation1Output{}
  4428. req = c.newRequest(op, input, output)
  4429. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4430. return
  4431. }
  4432. // InputService24TestCaseOperation1 API operation for .
  4433. //
  4434. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4435. // with awserr.Error's Code and Message methods to get detailed information about
  4436. // the error.
  4437. //
  4438. // See the AWS API reference guide for 's
  4439. // API operation InputService24TestCaseOperation1 for usage and error information.
  4440. func (c *InputService24ProtocolTest) InputService24TestCaseOperation1(input *InputService24TestShapeInputService24TestCaseOperation1Input) (*InputService24TestShapeInputService24TestCaseOperation1Output, error) {
  4441. req, out := c.InputService24TestCaseOperation1Request(input)
  4442. return out, req.Send()
  4443. }
  4444. // InputService24TestCaseOperation1WithContext is the same as InputService24TestCaseOperation1 with the addition of
  4445. // the ability to pass a context and additional request options.
  4446. //
  4447. // See InputService24TestCaseOperation1 for details on how to use this API operation.
  4448. //
  4449. // The context must be non-nil and will be used for request cancellation. If
  4450. // the context is nil a panic will occur. In the future the SDK may create
  4451. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4452. // for more information on using Contexts.
  4453. func (c *InputService24ProtocolTest) InputService24TestCaseOperation1WithContext(ctx aws.Context, input *InputService24TestShapeInputService24TestCaseOperation1Input, opts ...request.Option) (*InputService24TestShapeInputService24TestCaseOperation1Output, error) {
  4454. req, out := c.InputService24TestCaseOperation1Request(input)
  4455. req.SetContext(ctx)
  4456. req.ApplyOptions(opts...)
  4457. return out, req.Send()
  4458. }
  4459. const opInputService24TestCaseOperation2 = "OperationName"
  4460. // InputService24TestCaseOperation2Request generates a "aws/request.Request" representing the
  4461. // client's request for the InputService24TestCaseOperation2 operation. The "output" return
  4462. // value will be populated with the request's response once the request completes
  4463. // successfully.
  4464. //
  4465. // Use "Send" method on the returned Request to send the API call to the service.
  4466. // the "output" return value is not valid until after Send returns without error.
  4467. //
  4468. // See InputService24TestCaseOperation2 for more information on using the InputService24TestCaseOperation2
  4469. // API call, and error handling.
  4470. //
  4471. // This method is useful when you want to inject custom logic or configuration
  4472. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4473. //
  4474. //
  4475. // // Example sending a request using the InputService24TestCaseOperation2Request method.
  4476. // req, resp := client.InputService24TestCaseOperation2Request(params)
  4477. //
  4478. // err := req.Send()
  4479. // if err == nil { // resp is now filled
  4480. // fmt.Println(resp)
  4481. // }
  4482. func (c *InputService24ProtocolTest) InputService24TestCaseOperation2Request(input *InputService24TestShapeInputService24TestCaseOperation2Input) (req *request.Request, output *InputService24TestShapeInputService24TestCaseOperation2Output) {
  4483. op := &request.Operation{
  4484. Name: opInputService24TestCaseOperation2,
  4485. HTTPMethod: "POST",
  4486. HTTPPath: "/path",
  4487. }
  4488. if input == nil {
  4489. input = &InputService24TestShapeInputService24TestCaseOperation2Input{}
  4490. }
  4491. output = &InputService24TestShapeInputService24TestCaseOperation2Output{}
  4492. req = c.newRequest(op, input, output)
  4493. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4494. return
  4495. }
  4496. // InputService24TestCaseOperation2 API operation for .
  4497. //
  4498. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4499. // with awserr.Error's Code and Message methods to get detailed information about
  4500. // the error.
  4501. //
  4502. // See the AWS API reference guide for 's
  4503. // API operation InputService24TestCaseOperation2 for usage and error information.
  4504. func (c *InputService24ProtocolTest) InputService24TestCaseOperation2(input *InputService24TestShapeInputService24TestCaseOperation2Input) (*InputService24TestShapeInputService24TestCaseOperation2Output, error) {
  4505. req, out := c.InputService24TestCaseOperation2Request(input)
  4506. return out, req.Send()
  4507. }
  4508. // InputService24TestCaseOperation2WithContext is the same as InputService24TestCaseOperation2 with the addition of
  4509. // the ability to pass a context and additional request options.
  4510. //
  4511. // See InputService24TestCaseOperation2 for details on how to use this API operation.
  4512. //
  4513. // The context must be non-nil and will be used for request cancellation. If
  4514. // the context is nil a panic will occur. In the future the SDK may create
  4515. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4516. // for more information on using Contexts.
  4517. func (c *InputService24ProtocolTest) InputService24TestCaseOperation2WithContext(ctx aws.Context, input *InputService24TestShapeInputService24TestCaseOperation2Input, opts ...request.Option) (*InputService24TestShapeInputService24TestCaseOperation2Output, error) {
  4518. req, out := c.InputService24TestCaseOperation2Request(input)
  4519. req.SetContext(ctx)
  4520. req.ApplyOptions(opts...)
  4521. return out, req.Send()
  4522. }
  4523. type InputService24TestShapeInputService24TestCaseOperation1Input struct {
  4524. _ struct{} `type:"structure"`
  4525. Token *string `type:"string" idempotencyToken:"true"`
  4526. }
  4527. // SetToken sets the Token field's value.
  4528. func (s *InputService24TestShapeInputService24TestCaseOperation1Input) SetToken(v string) *InputService24TestShapeInputService24TestCaseOperation1Input {
  4529. s.Token = &v
  4530. return s
  4531. }
  4532. type InputService24TestShapeInputService24TestCaseOperation1Output struct {
  4533. _ struct{} `type:"structure"`
  4534. }
  4535. type InputService24TestShapeInputService24TestCaseOperation2Input struct {
  4536. _ struct{} `type:"structure"`
  4537. Token *string `type:"string" idempotencyToken:"true"`
  4538. }
  4539. // SetToken sets the Token field's value.
  4540. func (s *InputService24TestShapeInputService24TestCaseOperation2Input) SetToken(v string) *InputService24TestShapeInputService24TestCaseOperation2Input {
  4541. s.Token = &v
  4542. return s
  4543. }
  4544. type InputService24TestShapeInputService24TestCaseOperation2Output struct {
  4545. _ struct{} `type:"structure"`
  4546. }
  4547. // InputService25ProtocolTest provides the API operation methods for making requests to
  4548. // . See this package's package overview docs
  4549. // for details on the service.
  4550. //
  4551. // InputService25ProtocolTest methods are safe to use concurrently. It is not safe to
  4552. // modify mutate any of the struct's properties though.
  4553. type InputService25ProtocolTest struct {
  4554. *client.Client
  4555. }
  4556. // New creates a new instance of the InputService25ProtocolTest client with a session.
  4557. // If additional configuration is needed for the client instance use the optional
  4558. // aws.Config parameter to add your extra config.
  4559. //
  4560. // Example:
  4561. // // Create a InputService25ProtocolTest client from just a session.
  4562. // svc := inputservice25protocoltest.New(mySession)
  4563. //
  4564. // // Create a InputService25ProtocolTest client with additional configuration
  4565. // svc := inputservice25protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  4566. func NewInputService25ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService25ProtocolTest {
  4567. c := p.ClientConfig("inputservice25protocoltest", cfgs...)
  4568. return newInputService25ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  4569. }
  4570. // newClient creates, initializes and returns a new service client instance.
  4571. func newInputService25ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService25ProtocolTest {
  4572. svc := &InputService25ProtocolTest{
  4573. Client: client.New(
  4574. cfg,
  4575. metadata.ClientInfo{
  4576. ServiceName: "InputService25ProtocolTest",
  4577. ServiceID: "InputService25ProtocolTest",
  4578. SigningName: signingName,
  4579. SigningRegion: signingRegion,
  4580. Endpoint: endpoint,
  4581. APIVersion: "2014-01-01",
  4582. },
  4583. handlers,
  4584. ),
  4585. }
  4586. // Handlers
  4587. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  4588. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  4589. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  4590. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  4591. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  4592. return svc
  4593. }
  4594. // newRequest creates a new request for a InputService25ProtocolTest operation and runs any
  4595. // custom request initialization.
  4596. func (c *InputService25ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  4597. req := c.NewRequest(op, params, data)
  4598. return req
  4599. }
  4600. const opInputService25TestCaseOperation1 = "OperationName"
  4601. // InputService25TestCaseOperation1Request generates a "aws/request.Request" representing the
  4602. // client's request for the InputService25TestCaseOperation1 operation. The "output" return
  4603. // value will be populated with the request's response once the request completes
  4604. // successfully.
  4605. //
  4606. // Use "Send" method on the returned Request to send the API call to the service.
  4607. // the "output" return value is not valid until after Send returns without error.
  4608. //
  4609. // See InputService25TestCaseOperation1 for more information on using the InputService25TestCaseOperation1
  4610. // API call, and error handling.
  4611. //
  4612. // This method is useful when you want to inject custom logic or configuration
  4613. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4614. //
  4615. //
  4616. // // Example sending a request using the InputService25TestCaseOperation1Request method.
  4617. // req, resp := client.InputService25TestCaseOperation1Request(params)
  4618. //
  4619. // err := req.Send()
  4620. // if err == nil { // resp is now filled
  4621. // fmt.Println(resp)
  4622. // }
  4623. func (c *InputService25ProtocolTest) InputService25TestCaseOperation1Request(input *InputService25TestShapeInputService25TestCaseOperation1Input) (req *request.Request, output *InputService25TestShapeInputService25TestCaseOperation1Output) {
  4624. op := &request.Operation{
  4625. Name: opInputService25TestCaseOperation1,
  4626. HTTPMethod: "POST",
  4627. HTTPPath: "/Enum/{URIEnum}",
  4628. }
  4629. if input == nil {
  4630. input = &InputService25TestShapeInputService25TestCaseOperation1Input{}
  4631. }
  4632. output = &InputService25TestShapeInputService25TestCaseOperation1Output{}
  4633. req = c.newRequest(op, input, output)
  4634. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4635. return
  4636. }
  4637. // InputService25TestCaseOperation1 API operation for .
  4638. //
  4639. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4640. // with awserr.Error's Code and Message methods to get detailed information about
  4641. // the error.
  4642. //
  4643. // See the AWS API reference guide for 's
  4644. // API operation InputService25TestCaseOperation1 for usage and error information.
  4645. func (c *InputService25ProtocolTest) InputService25TestCaseOperation1(input *InputService25TestShapeInputService25TestCaseOperation1Input) (*InputService25TestShapeInputService25TestCaseOperation1Output, error) {
  4646. req, out := c.InputService25TestCaseOperation1Request(input)
  4647. return out, req.Send()
  4648. }
  4649. // InputService25TestCaseOperation1WithContext is the same as InputService25TestCaseOperation1 with the addition of
  4650. // the ability to pass a context and additional request options.
  4651. //
  4652. // See InputService25TestCaseOperation1 for details on how to use this API operation.
  4653. //
  4654. // The context must be non-nil and will be used for request cancellation. If
  4655. // the context is nil a panic will occur. In the future the SDK may create
  4656. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4657. // for more information on using Contexts.
  4658. func (c *InputService25ProtocolTest) InputService25TestCaseOperation1WithContext(ctx aws.Context, input *InputService25TestShapeInputService25TestCaseOperation1Input, opts ...request.Option) (*InputService25TestShapeInputService25TestCaseOperation1Output, error) {
  4659. req, out := c.InputService25TestCaseOperation1Request(input)
  4660. req.SetContext(ctx)
  4661. req.ApplyOptions(opts...)
  4662. return out, req.Send()
  4663. }
  4664. const opInputService25TestCaseOperation2 = "OperationName"
  4665. // InputService25TestCaseOperation2Request generates a "aws/request.Request" representing the
  4666. // client's request for the InputService25TestCaseOperation2 operation. The "output" return
  4667. // value will be populated with the request's response once the request completes
  4668. // successfully.
  4669. //
  4670. // Use "Send" method on the returned Request to send the API call to the service.
  4671. // the "output" return value is not valid until after Send returns without error.
  4672. //
  4673. // See InputService25TestCaseOperation2 for more information on using the InputService25TestCaseOperation2
  4674. // API call, and error handling.
  4675. //
  4676. // This method is useful when you want to inject custom logic or configuration
  4677. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4678. //
  4679. //
  4680. // // Example sending a request using the InputService25TestCaseOperation2Request method.
  4681. // req, resp := client.InputService25TestCaseOperation2Request(params)
  4682. //
  4683. // err := req.Send()
  4684. // if err == nil { // resp is now filled
  4685. // fmt.Println(resp)
  4686. // }
  4687. func (c *InputService25ProtocolTest) InputService25TestCaseOperation2Request(input *InputService25TestShapeInputService25TestCaseOperation2Input) (req *request.Request, output *InputService25TestShapeInputService25TestCaseOperation2Output) {
  4688. op := &request.Operation{
  4689. Name: opInputService25TestCaseOperation2,
  4690. HTTPMethod: "POST",
  4691. HTTPPath: "/Enum/{URIEnum}",
  4692. }
  4693. if input == nil {
  4694. input = &InputService25TestShapeInputService25TestCaseOperation2Input{}
  4695. }
  4696. output = &InputService25TestShapeInputService25TestCaseOperation2Output{}
  4697. req = c.newRequest(op, input, output)
  4698. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4699. return
  4700. }
  4701. // InputService25TestCaseOperation2 API operation for .
  4702. //
  4703. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4704. // with awserr.Error's Code and Message methods to get detailed information about
  4705. // the error.
  4706. //
  4707. // See the AWS API reference guide for 's
  4708. // API operation InputService25TestCaseOperation2 for usage and error information.
  4709. func (c *InputService25ProtocolTest) InputService25TestCaseOperation2(input *InputService25TestShapeInputService25TestCaseOperation2Input) (*InputService25TestShapeInputService25TestCaseOperation2Output, error) {
  4710. req, out := c.InputService25TestCaseOperation2Request(input)
  4711. return out, req.Send()
  4712. }
  4713. // InputService25TestCaseOperation2WithContext is the same as InputService25TestCaseOperation2 with the addition of
  4714. // the ability to pass a context and additional request options.
  4715. //
  4716. // See InputService25TestCaseOperation2 for details on how to use this API operation.
  4717. //
  4718. // The context must be non-nil and will be used for request cancellation. If
  4719. // the context is nil a panic will occur. In the future the SDK may create
  4720. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4721. // for more information on using Contexts.
  4722. func (c *InputService25ProtocolTest) InputService25TestCaseOperation2WithContext(ctx aws.Context, input *InputService25TestShapeInputService25TestCaseOperation2Input, opts ...request.Option) (*InputService25TestShapeInputService25TestCaseOperation2Output, error) {
  4723. req, out := c.InputService25TestCaseOperation2Request(input)
  4724. req.SetContext(ctx)
  4725. req.ApplyOptions(opts...)
  4726. return out, req.Send()
  4727. }
  4728. type InputService25TestShapeInputService25TestCaseOperation1Input struct {
  4729. _ struct{} `type:"structure"`
  4730. FooEnum *string `type:"string" enum:"InputService25TestShapeEnumType"`
  4731. HeaderEnum *string `location:"header" locationName:"x-amz-enum" type:"string" enum:"InputService25TestShapeEnumType"`
  4732. ListEnums []*string `type:"list"`
  4733. // URIFooEnum is a required field
  4734. URIFooEnum *string `location:"uri" locationName:"URIEnum" type:"string" required:"true" enum:"InputService25TestShapeEnumType"`
  4735. URIListEnums []*string `location:"querystring" locationName:"ListEnums" type:"list"`
  4736. }
  4737. // Validate inspects the fields of the type to determine if they are valid.
  4738. func (s *InputService25TestShapeInputService25TestCaseOperation1Input) Validate() error {
  4739. invalidParams := request.ErrInvalidParams{Context: "InputService25TestShapeInputService25TestCaseOperation1Input"}
  4740. if s.URIFooEnum == nil {
  4741. invalidParams.Add(request.NewErrParamRequired("URIFooEnum"))
  4742. }
  4743. if s.URIFooEnum != nil && len(*s.URIFooEnum) < 1 {
  4744. invalidParams.Add(request.NewErrParamMinLen("URIFooEnum", 1))
  4745. }
  4746. if invalidParams.Len() > 0 {
  4747. return invalidParams
  4748. }
  4749. return nil
  4750. }
  4751. // SetFooEnum sets the FooEnum field's value.
  4752. func (s *InputService25TestShapeInputService25TestCaseOperation1Input) SetFooEnum(v string) *InputService25TestShapeInputService25TestCaseOperation1Input {
  4753. s.FooEnum = &v
  4754. return s
  4755. }
  4756. // SetHeaderEnum sets the HeaderEnum field's value.
  4757. func (s *InputService25TestShapeInputService25TestCaseOperation1Input) SetHeaderEnum(v string) *InputService25TestShapeInputService25TestCaseOperation1Input {
  4758. s.HeaderEnum = &v
  4759. return s
  4760. }
  4761. // SetListEnums sets the ListEnums field's value.
  4762. func (s *InputService25TestShapeInputService25TestCaseOperation1Input) SetListEnums(v []*string) *InputService25TestShapeInputService25TestCaseOperation1Input {
  4763. s.ListEnums = v
  4764. return s
  4765. }
  4766. // SetURIFooEnum sets the URIFooEnum field's value.
  4767. func (s *InputService25TestShapeInputService25TestCaseOperation1Input) SetURIFooEnum(v string) *InputService25TestShapeInputService25TestCaseOperation1Input {
  4768. s.URIFooEnum = &v
  4769. return s
  4770. }
  4771. // SetURIListEnums sets the URIListEnums field's value.
  4772. func (s *InputService25TestShapeInputService25TestCaseOperation1Input) SetURIListEnums(v []*string) *InputService25TestShapeInputService25TestCaseOperation1Input {
  4773. s.URIListEnums = v
  4774. return s
  4775. }
  4776. type InputService25TestShapeInputService25TestCaseOperation1Output struct {
  4777. _ struct{} `type:"structure"`
  4778. }
  4779. type InputService25TestShapeInputService25TestCaseOperation2Input struct {
  4780. _ struct{} `type:"structure"`
  4781. FooEnum *string `type:"string" enum:"InputService25TestShapeEnumType"`
  4782. HeaderEnum *string `location:"header" locationName:"x-amz-enum" type:"string" enum:"InputService25TestShapeEnumType"`
  4783. ListEnums []*string `type:"list"`
  4784. // URIFooEnum is a required field
  4785. URIFooEnum *string `location:"uri" locationName:"URIEnum" type:"string" required:"true" enum:"InputService25TestShapeEnumType"`
  4786. URIListEnums []*string `location:"querystring" locationName:"ListEnums" type:"list"`
  4787. }
  4788. // Validate inspects the fields of the type to determine if they are valid.
  4789. func (s *InputService25TestShapeInputService25TestCaseOperation2Input) Validate() error {
  4790. invalidParams := request.ErrInvalidParams{Context: "InputService25TestShapeInputService25TestCaseOperation2Input"}
  4791. if s.URIFooEnum == nil {
  4792. invalidParams.Add(request.NewErrParamRequired("URIFooEnum"))
  4793. }
  4794. if s.URIFooEnum != nil && len(*s.URIFooEnum) < 1 {
  4795. invalidParams.Add(request.NewErrParamMinLen("URIFooEnum", 1))
  4796. }
  4797. if invalidParams.Len() > 0 {
  4798. return invalidParams
  4799. }
  4800. return nil
  4801. }
  4802. // SetFooEnum sets the FooEnum field's value.
  4803. func (s *InputService25TestShapeInputService25TestCaseOperation2Input) SetFooEnum(v string) *InputService25TestShapeInputService25TestCaseOperation2Input {
  4804. s.FooEnum = &v
  4805. return s
  4806. }
  4807. // SetHeaderEnum sets the HeaderEnum field's value.
  4808. func (s *InputService25TestShapeInputService25TestCaseOperation2Input) SetHeaderEnum(v string) *InputService25TestShapeInputService25TestCaseOperation2Input {
  4809. s.HeaderEnum = &v
  4810. return s
  4811. }
  4812. // SetListEnums sets the ListEnums field's value.
  4813. func (s *InputService25TestShapeInputService25TestCaseOperation2Input) SetListEnums(v []*string) *InputService25TestShapeInputService25TestCaseOperation2Input {
  4814. s.ListEnums = v
  4815. return s
  4816. }
  4817. // SetURIFooEnum sets the URIFooEnum field's value.
  4818. func (s *InputService25TestShapeInputService25TestCaseOperation2Input) SetURIFooEnum(v string) *InputService25TestShapeInputService25TestCaseOperation2Input {
  4819. s.URIFooEnum = &v
  4820. return s
  4821. }
  4822. // SetURIListEnums sets the URIListEnums field's value.
  4823. func (s *InputService25TestShapeInputService25TestCaseOperation2Input) SetURIListEnums(v []*string) *InputService25TestShapeInputService25TestCaseOperation2Input {
  4824. s.URIListEnums = v
  4825. return s
  4826. }
  4827. type InputService25TestShapeInputService25TestCaseOperation2Output struct {
  4828. _ struct{} `type:"structure"`
  4829. }
  4830. const (
  4831. // EnumTypeFoo is a InputService25TestShapeEnumType enum value
  4832. EnumTypeFoo = "foo"
  4833. // EnumTypeBar is a InputService25TestShapeEnumType enum value
  4834. EnumTypeBar = "bar"
  4835. // EnumType0 is a InputService25TestShapeEnumType enum value
  4836. EnumType0 = "0"
  4837. // EnumType1 is a InputService25TestShapeEnumType enum value
  4838. EnumType1 = "1"
  4839. )
  4840. // InputService26ProtocolTest provides the API operation methods for making requests to
  4841. // . See this package's package overview docs
  4842. // for details on the service.
  4843. //
  4844. // InputService26ProtocolTest methods are safe to use concurrently. It is not safe to
  4845. // modify mutate any of the struct's properties though.
  4846. type InputService26ProtocolTest struct {
  4847. *client.Client
  4848. }
  4849. // New creates a new instance of the InputService26ProtocolTest client with a session.
  4850. // If additional configuration is needed for the client instance use the optional
  4851. // aws.Config parameter to add your extra config.
  4852. //
  4853. // Example:
  4854. // // Create a InputService26ProtocolTest client from just a session.
  4855. // svc := inputservice26protocoltest.New(mySession)
  4856. //
  4857. // // Create a InputService26ProtocolTest client with additional configuration
  4858. // svc := inputservice26protocoltest.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
  4859. func NewInputService26ProtocolTest(p client.ConfigProvider, cfgs ...*aws.Config) *InputService26ProtocolTest {
  4860. c := p.ClientConfig("inputservice26protocoltest", cfgs...)
  4861. return newInputService26ProtocolTestClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
  4862. }
  4863. // newClient creates, initializes and returns a new service client instance.
  4864. func newInputService26ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *InputService26ProtocolTest {
  4865. svc := &InputService26ProtocolTest{
  4866. Client: client.New(
  4867. cfg,
  4868. metadata.ClientInfo{
  4869. ServiceName: "InputService26ProtocolTest",
  4870. ServiceID: "InputService26ProtocolTest",
  4871. SigningName: signingName,
  4872. SigningRegion: signingRegion,
  4873. Endpoint: endpoint,
  4874. APIVersion: "2014-01-01",
  4875. },
  4876. handlers,
  4877. ),
  4878. }
  4879. // Handlers
  4880. svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
  4881. svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
  4882. svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
  4883. svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
  4884. svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
  4885. return svc
  4886. }
  4887. // newRequest creates a new request for a InputService26ProtocolTest operation and runs any
  4888. // custom request initialization.
  4889. func (c *InputService26ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  4890. req := c.NewRequest(op, params, data)
  4891. return req
  4892. }
  4893. const opInputService26TestCaseOperation1 = "StaticOp"
  4894. // InputService26TestCaseOperation1Request generates a "aws/request.Request" representing the
  4895. // client's request for the InputService26TestCaseOperation1 operation. The "output" return
  4896. // value will be populated with the request's response once the request completes
  4897. // successfully.
  4898. //
  4899. // Use "Send" method on the returned Request to send the API call to the service.
  4900. // the "output" return value is not valid until after Send returns without error.
  4901. //
  4902. // See InputService26TestCaseOperation1 for more information on using the InputService26TestCaseOperation1
  4903. // API call, and error handling.
  4904. //
  4905. // This method is useful when you want to inject custom logic or configuration
  4906. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4907. //
  4908. //
  4909. // // Example sending a request using the InputService26TestCaseOperation1Request method.
  4910. // req, resp := client.InputService26TestCaseOperation1Request(params)
  4911. //
  4912. // err := req.Send()
  4913. // if err == nil { // resp is now filled
  4914. // fmt.Println(resp)
  4915. // }
  4916. func (c *InputService26ProtocolTest) InputService26TestCaseOperation1Request(input *InputService26TestShapeInputService26TestCaseOperation1Input) (req *request.Request, output *InputService26TestShapeInputService26TestCaseOperation1Output) {
  4917. op := &request.Operation{
  4918. Name: opInputService26TestCaseOperation1,
  4919. HTTPMethod: "POST",
  4920. HTTPPath: "/path",
  4921. }
  4922. if input == nil {
  4923. input = &InputService26TestShapeInputService26TestCaseOperation1Input{}
  4924. }
  4925. output = &InputService26TestShapeInputService26TestCaseOperation1Output{}
  4926. req = c.newRequest(op, input, output)
  4927. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4928. req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("data-", nil))
  4929. req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler)
  4930. return
  4931. }
  4932. // InputService26TestCaseOperation1 API operation for .
  4933. //
  4934. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4935. // with awserr.Error's Code and Message methods to get detailed information about
  4936. // the error.
  4937. //
  4938. // See the AWS API reference guide for 's
  4939. // API operation InputService26TestCaseOperation1 for usage and error information.
  4940. func (c *InputService26ProtocolTest) InputService26TestCaseOperation1(input *InputService26TestShapeInputService26TestCaseOperation1Input) (*InputService26TestShapeInputService26TestCaseOperation1Output, error) {
  4941. req, out := c.InputService26TestCaseOperation1Request(input)
  4942. return out, req.Send()
  4943. }
  4944. // InputService26TestCaseOperation1WithContext is the same as InputService26TestCaseOperation1 with the addition of
  4945. // the ability to pass a context and additional request options.
  4946. //
  4947. // See InputService26TestCaseOperation1 for details on how to use this API operation.
  4948. //
  4949. // The context must be non-nil and will be used for request cancellation. If
  4950. // the context is nil a panic will occur. In the future the SDK may create
  4951. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4952. // for more information on using Contexts.
  4953. func (c *InputService26ProtocolTest) InputService26TestCaseOperation1WithContext(ctx aws.Context, input *InputService26TestShapeInputService26TestCaseOperation1Input, opts ...request.Option) (*InputService26TestShapeInputService26TestCaseOperation1Output, error) {
  4954. req, out := c.InputService26TestCaseOperation1Request(input)
  4955. req.SetContext(ctx)
  4956. req.ApplyOptions(opts...)
  4957. return out, req.Send()
  4958. }
  4959. const opInputService26TestCaseOperation2 = "MemberRefOp"
  4960. // InputService26TestCaseOperation2Request generates a "aws/request.Request" representing the
  4961. // client's request for the InputService26TestCaseOperation2 operation. The "output" return
  4962. // value will be populated with the request's response once the request completes
  4963. // successfully.
  4964. //
  4965. // Use "Send" method on the returned Request to send the API call to the service.
  4966. // the "output" return value is not valid until after Send returns without error.
  4967. //
  4968. // See InputService26TestCaseOperation2 for more information on using the InputService26TestCaseOperation2
  4969. // API call, and error handling.
  4970. //
  4971. // This method is useful when you want to inject custom logic or configuration
  4972. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4973. //
  4974. //
  4975. // // Example sending a request using the InputService26TestCaseOperation2Request method.
  4976. // req, resp := client.InputService26TestCaseOperation2Request(params)
  4977. //
  4978. // err := req.Send()
  4979. // if err == nil { // resp is now filled
  4980. // fmt.Println(resp)
  4981. // }
  4982. func (c *InputService26ProtocolTest) InputService26TestCaseOperation2Request(input *InputService26TestShapeInputService26TestCaseOperation2Input) (req *request.Request, output *InputService26TestShapeInputService26TestCaseOperation2Output) {
  4983. op := &request.Operation{
  4984. Name: opInputService26TestCaseOperation2,
  4985. HTTPMethod: "GET",
  4986. HTTPPath: "/path",
  4987. }
  4988. if input == nil {
  4989. input = &InputService26TestShapeInputService26TestCaseOperation2Input{}
  4990. }
  4991. output = &InputService26TestShapeInputService26TestCaseOperation2Output{}
  4992. req = c.newRequest(op, input, output)
  4993. req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4994. req.Handlers.Build.PushBackNamed(protocol.NewHostPrefixHandler("foo-{Name}.", input.hostLabels))
  4995. req.Handlers.Build.PushBackNamed(protocol.ValidateEndpointHostHandler)
  4996. return
  4997. }
  4998. // InputService26TestCaseOperation2 API operation for .
  4999. //
  5000. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5001. // with awserr.Error's Code and Message methods to get detailed information about
  5002. // the error.
  5003. //
  5004. // See the AWS API reference guide for 's
  5005. // API operation InputService26TestCaseOperation2 for usage and error information.
  5006. func (c *InputService26ProtocolTest) InputService26TestCaseOperation2(input *InputService26TestShapeInputService26TestCaseOperation2Input) (*InputService26TestShapeInputService26TestCaseOperation2Output, error) {
  5007. req, out := c.InputService26TestCaseOperation2Request(input)
  5008. return out, req.Send()
  5009. }
  5010. // InputService26TestCaseOperation2WithContext is the same as InputService26TestCaseOperation2 with the addition of
  5011. // the ability to pass a context and additional request options.
  5012. //
  5013. // See InputService26TestCaseOperation2 for details on how to use this API operation.
  5014. //
  5015. // The context must be non-nil and will be used for request cancellation. If
  5016. // the context is nil a panic will occur. In the future the SDK may create
  5017. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5018. // for more information on using Contexts.
  5019. func (c *InputService26ProtocolTest) InputService26TestCaseOperation2WithContext(ctx aws.Context, input *InputService26TestShapeInputService26TestCaseOperation2Input, opts ...request.Option) (*InputService26TestShapeInputService26TestCaseOperation2Output, error) {
  5020. req, out := c.InputService26TestCaseOperation2Request(input)
  5021. req.SetContext(ctx)
  5022. req.ApplyOptions(opts...)
  5023. return out, req.Send()
  5024. }
  5025. type InputService26TestShapeInputService26TestCaseOperation1Input struct {
  5026. _ struct{} `locationName:"StaticOpRequest" type:"structure"`
  5027. Name *string `type:"string"`
  5028. }
  5029. // SetName sets the Name field's value.
  5030. func (s *InputService26TestShapeInputService26TestCaseOperation1Input) SetName(v string) *InputService26TestShapeInputService26TestCaseOperation1Input {
  5031. s.Name = &v
  5032. return s
  5033. }
  5034. type InputService26TestShapeInputService26TestCaseOperation1Output struct {
  5035. _ struct{} `type:"structure"`
  5036. }
  5037. type InputService26TestShapeInputService26TestCaseOperation2Input struct {
  5038. _ struct{} `locationName:"MemberRefOpRequest" type:"structure"`
  5039. // Name is a required field
  5040. Name *string `type:"string" required:"true"`
  5041. }
  5042. // Validate inspects the fields of the type to determine if they are valid.
  5043. func (s *InputService26TestShapeInputService26TestCaseOperation2Input) Validate() error {
  5044. invalidParams := request.ErrInvalidParams{Context: "InputService26TestShapeInputService26TestCaseOperation2Input"}
  5045. if s.Name == nil {
  5046. invalidParams.Add(request.NewErrParamRequired("Name"))
  5047. }
  5048. if s.Name != nil && len(*s.Name) < 1 {
  5049. invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  5050. }
  5051. if invalidParams.Len() > 0 {
  5052. return invalidParams
  5053. }
  5054. return nil
  5055. }
  5056. // SetName sets the Name field's value.
  5057. func (s *InputService26TestShapeInputService26TestCaseOperation2Input) SetName(v string) *InputService26TestShapeInputService26TestCaseOperation2Input {
  5058. s.Name = &v
  5059. return s
  5060. }
  5061. func (s *InputService26TestShapeInputService26TestCaseOperation2Input) hostLabels() map[string]string {
  5062. return map[string]string{
  5063. "Name": aws.StringValue(s.Name),
  5064. }
  5065. }
  5066. type InputService26TestShapeInputService26TestCaseOperation2Output struct {
  5067. _ struct{} `type:"structure"`
  5068. }
  5069. //
  5070. // Tests begin here
  5071. //
  5072. func TestInputService1ProtocolTestBasicXMLSerializationCase1(t *testing.T) {
  5073. svc := NewInputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5074. input := &InputService1TestShapeInputService1TestCaseOperation1Input{
  5075. Description: aws.String("bar"),
  5076. Name: aws.String("foo"),
  5077. }
  5078. req, _ := svc.InputService1TestCaseOperation1Request(input)
  5079. r := req.HTTPRequest
  5080. // build request
  5081. req.Build()
  5082. if req.Error != nil {
  5083. t.Errorf("expect no error, got %v", req.Error)
  5084. }
  5085. // assert body
  5086. if r.Body == nil {
  5087. t.Errorf("expect body not to be nil")
  5088. }
  5089. body := util.SortXML(r.Body)
  5090. awstesting.AssertXML(t, `<OperationRequest xmlns="https://foo/"><Description xmlns="https://foo/">bar</Description><Name xmlns="https://foo/">foo</Name></OperationRequest>`, util.Trim(string(body)), InputService1TestShapeInputService1TestCaseOperation1Input{})
  5091. // assert URL
  5092. awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  5093. // assert headers
  5094. }
  5095. func TestInputService1ProtocolTestBasicXMLSerializationCase2(t *testing.T) {
  5096. svc := NewInputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5097. input := &InputService1TestShapeInputService1TestCaseOperation2Input{
  5098. Description: aws.String("bar"),
  5099. Name: aws.String("foo"),
  5100. }
  5101. req, _ := svc.InputService1TestCaseOperation2Request(input)
  5102. r := req.HTTPRequest
  5103. // build request
  5104. req.Build()
  5105. if req.Error != nil {
  5106. t.Errorf("expect no error, got %v", req.Error)
  5107. }
  5108. // assert body
  5109. if r.Body == nil {
  5110. t.Errorf("expect body not to be nil")
  5111. }
  5112. body := util.SortXML(r.Body)
  5113. awstesting.AssertXML(t, `<OperationRequest xmlns="https://foo/"><Description xmlns="https://foo/">bar</Description><Name xmlns="https://foo/">foo</Name></OperationRequest>`, util.Trim(string(body)), InputService1TestShapeInputService1TestCaseOperation2Input{})
  5114. // assert URL
  5115. awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  5116. // assert headers
  5117. }
  5118. func TestInputService1ProtocolTestBasicXMLSerializationCase3(t *testing.T) {
  5119. svc := NewInputService1ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5120. input := &InputService1TestShapeInputService1TestCaseOperation3Input{}
  5121. req, _ := svc.InputService1TestCaseOperation3Request(input)
  5122. r := req.HTTPRequest
  5123. // build request
  5124. req.Build()
  5125. if req.Error != nil {
  5126. t.Errorf("expect no error, got %v", req.Error)
  5127. }
  5128. // assert URL
  5129. awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  5130. // assert headers
  5131. }
  5132. func TestInputService2ProtocolTestSerializeOtherScalarTypesCase1(t *testing.T) {
  5133. svc := NewInputService2ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5134. input := &InputService2TestShapeInputService2TestCaseOperation1Input{
  5135. First: aws.Bool(true),
  5136. Fourth: aws.Int64(3),
  5137. Second: aws.Bool(false),
  5138. Third: aws.Float64(1.2),
  5139. }
  5140. req, _ := svc.InputService2TestCaseOperation1Request(input)
  5141. r := req.HTTPRequest
  5142. // build request
  5143. req.Build()
  5144. if req.Error != nil {
  5145. t.Errorf("expect no error, got %v", req.Error)
  5146. }
  5147. // assert body
  5148. if r.Body == nil {
  5149. t.Errorf("expect body not to be nil")
  5150. }
  5151. body := util.SortXML(r.Body)
  5152. awstesting.AssertXML(t, `<OperationRequest xmlns="https://foo/"><First xmlns="https://foo/">true</First><Fourth xmlns="https://foo/">3</Fourth><Second xmlns="https://foo/">false</Second><Third xmlns="https://foo/">1.2</Third></OperationRequest>`, util.Trim(string(body)), InputService2TestShapeInputService2TestCaseOperation1Input{})
  5153. // assert URL
  5154. awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  5155. // assert headers
  5156. }
  5157. func TestInputService3ProtocolTestNestedStructuresCase1(t *testing.T) {
  5158. svc := NewInputService3ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5159. input := &InputService3TestShapeInputService3TestCaseOperation1Input{
  5160. Description: aws.String("baz"),
  5161. SubStructure: &InputService3TestShapeSubStructure{
  5162. Bar: aws.String("b"),
  5163. Foo: aws.String("a"),
  5164. },
  5165. }
  5166. req, _ := svc.InputService3TestCaseOperation1Request(input)
  5167. r := req.HTTPRequest
  5168. // build request
  5169. req.Build()
  5170. if req.Error != nil {
  5171. t.Errorf("expect no error, got %v", req.Error)
  5172. }
  5173. // assert body
  5174. if r.Body == nil {
  5175. t.Errorf("expect body not to be nil")
  5176. }
  5177. body := util.SortXML(r.Body)
  5178. awstesting.AssertXML(t, `<OperationRequest xmlns="https://foo/"><Description xmlns="https://foo/">baz</Description><SubStructure xmlns="https://foo/"><Bar xmlns="https://foo/">b</Bar><Foo xmlns="https://foo/">a</Foo></SubStructure></OperationRequest>`, util.Trim(string(body)), InputService3TestShapeInputService3TestCaseOperation1Input{})
  5179. // assert URL
  5180. awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  5181. // assert headers
  5182. }
  5183. func TestInputService3ProtocolTestNestedStructuresCase2(t *testing.T) {
  5184. svc := NewInputService3ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5185. input := &InputService3TestShapeInputService3TestCaseOperation2Input{
  5186. Description: aws.String("baz"),
  5187. SubStructure: &InputService3TestShapeSubStructure{
  5188. Foo: aws.String("a"),
  5189. },
  5190. }
  5191. req, _ := svc.InputService3TestCaseOperation2Request(input)
  5192. r := req.HTTPRequest
  5193. // build request
  5194. req.Build()
  5195. if req.Error != nil {
  5196. t.Errorf("expect no error, got %v", req.Error)
  5197. }
  5198. // assert body
  5199. if r.Body == nil {
  5200. t.Errorf("expect body not to be nil")
  5201. }
  5202. body := util.SortXML(r.Body)
  5203. awstesting.AssertXML(t, `<OperationRequest xmlns="https://foo/"><Description xmlns="https://foo/">baz</Description><SubStructure xmlns="https://foo/"><Foo xmlns="https://foo/">a</Foo></SubStructure></OperationRequest>`, util.Trim(string(body)), InputService3TestShapeInputService3TestCaseOperation2Input{})
  5204. // assert URL
  5205. awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  5206. // assert headers
  5207. }
  5208. func TestInputService4ProtocolTestNestedStructuresCase1(t *testing.T) {
  5209. svc := NewInputService4ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5210. input := &InputService4TestShapeInputService4TestCaseOperation1Input{
  5211. Description: aws.String("baz"),
  5212. SubStructure: &InputService4TestShapeSubStructure{},
  5213. }
  5214. req, _ := svc.InputService4TestCaseOperation1Request(input)
  5215. r := req.HTTPRequest
  5216. // build request
  5217. req.Build()
  5218. if req.Error != nil {
  5219. t.Errorf("expect no error, got %v", req.Error)
  5220. }
  5221. // assert body
  5222. if r.Body == nil {
  5223. t.Errorf("expect body not to be nil")
  5224. }
  5225. body := util.SortXML(r.Body)
  5226. awstesting.AssertXML(t, `<OperationRequest xmlns="https://foo/"><Description xmlns="https://foo/">baz</Description><SubStructure xmlns="https://foo/"></SubStructure></OperationRequest>`, util.Trim(string(body)), InputService4TestShapeInputService4TestCaseOperation1Input{})
  5227. // assert URL
  5228. awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  5229. // assert headers
  5230. }
  5231. func TestInputService5ProtocolTestNonFlattenedListsCase1(t *testing.T) {
  5232. svc := NewInputService5ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5233. input := &InputService5TestShapeInputService5TestCaseOperation1Input{
  5234. ListParam: []*string{
  5235. aws.String("one"),
  5236. aws.String("two"),
  5237. aws.String("three"),
  5238. },
  5239. }
  5240. req, _ := svc.InputService5TestCaseOperation1Request(input)
  5241. r := req.HTTPRequest
  5242. // build request
  5243. req.Build()
  5244. if req.Error != nil {
  5245. t.Errorf("expect no error, got %v", req.Error)
  5246. }
  5247. // assert body
  5248. if r.Body == nil {
  5249. t.Errorf("expect body not to be nil")
  5250. }
  5251. body := util.SortXML(r.Body)
  5252. awstesting.AssertXML(t, `<OperationRequest xmlns="https://foo/"><ListParam xmlns="https://foo/"><member xmlns="https://foo/">one</member><member xmlns="https://foo/">two</member><member xmlns="https://foo/">three</member></ListParam></OperationRequest>`, util.Trim(string(body)), InputService5TestShapeInputService5TestCaseOperation1Input{})
  5253. // assert URL
  5254. awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  5255. // assert headers
  5256. }
  5257. func TestInputService6ProtocolTestNonFlattenedListsWithLocationNameCase1(t *testing.T) {
  5258. svc := NewInputService6ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5259. input := &InputService6TestShapeInputService6TestCaseOperation1Input{
  5260. ListParam: []*string{
  5261. aws.String("one"),
  5262. aws.String("two"),
  5263. aws.String("three"),
  5264. },
  5265. }
  5266. req, _ := svc.InputService6TestCaseOperation1Request(input)
  5267. r := req.HTTPRequest
  5268. // build request
  5269. req.Build()
  5270. if req.Error != nil {
  5271. t.Errorf("expect no error, got %v", req.Error)
  5272. }
  5273. // assert body
  5274. if r.Body == nil {
  5275. t.Errorf("expect body not to be nil")
  5276. }
  5277. body := util.SortXML(r.Body)
  5278. awstesting.AssertXML(t, `<OperationRequest xmlns="https://foo/"><AlternateName xmlns="https://foo/"><NotMember xmlns="https://foo/">one</NotMember><NotMember xmlns="https://foo/">two</NotMember><NotMember xmlns="https://foo/">three</NotMember></AlternateName></OperationRequest>`, util.Trim(string(body)), InputService6TestShapeInputService6TestCaseOperation1Input{})
  5279. // assert URL
  5280. awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  5281. // assert headers
  5282. }
  5283. func TestInputService7ProtocolTestFlattenedListsCase1(t *testing.T) {
  5284. svc := NewInputService7ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5285. input := &InputService7TestShapeInputService7TestCaseOperation1Input{
  5286. ListParam: []*string{
  5287. aws.String("one"),
  5288. aws.String("two"),
  5289. aws.String("three"),
  5290. },
  5291. }
  5292. req, _ := svc.InputService7TestCaseOperation1Request(input)
  5293. r := req.HTTPRequest
  5294. // build request
  5295. req.Build()
  5296. if req.Error != nil {
  5297. t.Errorf("expect no error, got %v", req.Error)
  5298. }
  5299. // assert body
  5300. if r.Body == nil {
  5301. t.Errorf("expect body not to be nil")
  5302. }
  5303. body := util.SortXML(r.Body)
  5304. awstesting.AssertXML(t, `<OperationRequest xmlns="https://foo/"><ListParam xmlns="https://foo/">one</ListParam><ListParam xmlns="https://foo/">two</ListParam><ListParam xmlns="https://foo/">three</ListParam></OperationRequest>`, util.Trim(string(body)), InputService7TestShapeInputService7TestCaseOperation1Input{})
  5305. // assert URL
  5306. awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  5307. // assert headers
  5308. }
  5309. func TestInputService8ProtocolTestFlattenedListsWithLocationNameCase1(t *testing.T) {
  5310. svc := NewInputService8ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5311. input := &InputService8TestShapeInputService8TestCaseOperation1Input{
  5312. ListParam: []*string{
  5313. aws.String("one"),
  5314. aws.String("two"),
  5315. aws.String("three"),
  5316. },
  5317. }
  5318. req, _ := svc.InputService8TestCaseOperation1Request(input)
  5319. r := req.HTTPRequest
  5320. // build request
  5321. req.Build()
  5322. if req.Error != nil {
  5323. t.Errorf("expect no error, got %v", req.Error)
  5324. }
  5325. // assert body
  5326. if r.Body == nil {
  5327. t.Errorf("expect body not to be nil")
  5328. }
  5329. body := util.SortXML(r.Body)
  5330. awstesting.AssertXML(t, `<OperationRequest xmlns="https://foo/"><item xmlns="https://foo/">one</item><item xmlns="https://foo/">two</item><item xmlns="https://foo/">three</item></OperationRequest>`, util.Trim(string(body)), InputService8TestShapeInputService8TestCaseOperation1Input{})
  5331. // assert URL
  5332. awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  5333. // assert headers
  5334. }
  5335. func TestInputService9ProtocolTestListOfStructuresCase1(t *testing.T) {
  5336. svc := NewInputService9ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5337. input := &InputService9TestShapeInputService9TestCaseOperation1Input{
  5338. ListParam: []*InputService9TestShapeSingleFieldStruct{
  5339. {
  5340. Element: aws.String("one"),
  5341. },
  5342. {
  5343. Element: aws.String("two"),
  5344. },
  5345. {
  5346. Element: aws.String("three"),
  5347. },
  5348. },
  5349. }
  5350. req, _ := svc.InputService9TestCaseOperation1Request(input)
  5351. r := req.HTTPRequest
  5352. // build request
  5353. req.Build()
  5354. if req.Error != nil {
  5355. t.Errorf("expect no error, got %v", req.Error)
  5356. }
  5357. // assert body
  5358. if r.Body == nil {
  5359. t.Errorf("expect body not to be nil")
  5360. }
  5361. body := util.SortXML(r.Body)
  5362. awstesting.AssertXML(t, `<OperationRequest xmlns="https://foo/"><item xmlns="https://foo/"><value xmlns="https://foo/">one</value></item><item xmlns="https://foo/"><value xmlns="https://foo/">two</value></item><item xmlns="https://foo/"><value xmlns="https://foo/">three</value></item></OperationRequest>`, util.Trim(string(body)), InputService9TestShapeInputService9TestCaseOperation1Input{})
  5363. // assert URL
  5364. awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  5365. // assert headers
  5366. }
  5367. func TestInputService10ProtocolTestBlobShapesCase1(t *testing.T) {
  5368. svc := NewInputService10ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5369. input := &InputService10TestShapeInputService10TestCaseOperation1Input{
  5370. StructureParam: &InputService10TestShapeStructureShape{
  5371. B: []byte("foo"),
  5372. },
  5373. }
  5374. req, _ := svc.InputService10TestCaseOperation1Request(input)
  5375. r := req.HTTPRequest
  5376. // build request
  5377. req.Build()
  5378. if req.Error != nil {
  5379. t.Errorf("expect no error, got %v", req.Error)
  5380. }
  5381. // assert body
  5382. if r.Body == nil {
  5383. t.Errorf("expect body not to be nil")
  5384. }
  5385. body := util.SortXML(r.Body)
  5386. awstesting.AssertXML(t, `<OperationRequest xmlns="https://foo/"><StructureParam xmlns="https://foo/"><b xmlns="https://foo/">Zm9v</b></StructureParam></OperationRequest>`, util.Trim(string(body)), InputService10TestShapeInputService10TestCaseOperation1Input{})
  5387. // assert URL
  5388. awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  5389. // assert headers
  5390. }
  5391. func TestInputService11ProtocolTestTimestampShapesCase1(t *testing.T) {
  5392. svc := NewInputService11ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5393. input := &InputService11TestShapeInputService11TestCaseOperation1Input{
  5394. TimeArg: aws.Time(time.Unix(1422172800, 0)),
  5395. TimeArgInHeader: aws.Time(time.Unix(1422172800, 0)),
  5396. TimeArgInQuery: aws.Time(time.Unix(1422172800, 0)),
  5397. TimeCustom: aws.Time(time.Unix(1422172800, 0)),
  5398. TimeCustomInHeader: aws.Time(time.Unix(1422172800, 0)),
  5399. TimeCustomInQuery: aws.Time(time.Unix(1422172800, 0)),
  5400. TimeFormat: aws.Time(time.Unix(1422172800, 0)),
  5401. TimeFormatInHeader: aws.Time(time.Unix(1422172800, 0)),
  5402. TimeFormatInQuery: aws.Time(time.Unix(1422172800, 0)),
  5403. }
  5404. req, _ := svc.InputService11TestCaseOperation1Request(input)
  5405. r := req.HTTPRequest
  5406. // build request
  5407. req.Build()
  5408. if req.Error != nil {
  5409. t.Errorf("expect no error, got %v", req.Error)
  5410. }
  5411. // assert body
  5412. if r.Body == nil {
  5413. t.Errorf("expect body not to be nil")
  5414. }
  5415. body := util.SortXML(r.Body)
  5416. awstesting.AssertXML(t, `<TimestampStructure xmlns="https://foo/"><TimeArg xmlns="https://foo/">2015-01-25T08:00:00Z</TimeArg><TimeCustom xmlns="https://foo/">Sun, 25 Jan 2015 08:00:00 GMT</TimeCustom><TimeFormat xmlns="https://foo/">Sun, 25 Jan 2015 08:00:00 GMT</TimeFormat></TimestampStructure>`, util.Trim(string(body)), InputService11TestShapeInputService11TestCaseOperation1Input{})
  5417. // assert URL
  5418. awstesting.AssertURL(t, "https://test/2014-01-01/hostedzone?TimeQuery=2015-01-25T08%3A00%3A00Z&TimeCustomQuery=1422172800&TimeFormatQuery=1422172800", r.URL.String())
  5419. // assert headers
  5420. if e, a := "Sun, 25 Jan 2015 08:00:00 GMT", r.Header.Get("x-amz-timearg"); e != a {
  5421. t.Errorf("expect %v to be %v", e, a)
  5422. }
  5423. if e, a := "1422172800", r.Header.Get("x-amz-timecustom-header"); e != a {
  5424. t.Errorf("expect %v to be %v", e, a)
  5425. }
  5426. if e, a := "1422172800", r.Header.Get("x-amz-timeformat-header"); e != a {
  5427. t.Errorf("expect %v to be %v", e, a)
  5428. }
  5429. }
  5430. func TestInputService12ProtocolTestHeaderMapsCase1(t *testing.T) {
  5431. svc := NewInputService12ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5432. input := &InputService12TestShapeInputService12TestCaseOperation1Input{
  5433. Foo: map[string]*string{
  5434. "a": aws.String("b"),
  5435. "c": aws.String("d"),
  5436. },
  5437. }
  5438. req, _ := svc.InputService12TestCaseOperation1Request(input)
  5439. r := req.HTTPRequest
  5440. // build request
  5441. req.Build()
  5442. if req.Error != nil {
  5443. t.Errorf("expect no error, got %v", req.Error)
  5444. }
  5445. // assert URL
  5446. awstesting.AssertURL(t, "https://test/", r.URL.String())
  5447. // assert headers
  5448. if e, a := "b", r.Header.Get("x-foo-a"); e != a {
  5449. t.Errorf("expect %v to be %v", e, a)
  5450. }
  5451. if e, a := "d", r.Header.Get("x-foo-c"); e != a {
  5452. t.Errorf("expect %v to be %v", e, a)
  5453. }
  5454. }
  5455. func TestInputService13ProtocolTestQuerystringListOfStringsCase1(t *testing.T) {
  5456. svc := NewInputService13ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5457. input := &InputService13TestShapeInputService13TestCaseOperation1Input{
  5458. Items: []*string{
  5459. aws.String("value1"),
  5460. aws.String("value2"),
  5461. },
  5462. }
  5463. req, _ := svc.InputService13TestCaseOperation1Request(input)
  5464. r := req.HTTPRequest
  5465. // build request
  5466. req.Build()
  5467. if req.Error != nil {
  5468. t.Errorf("expect no error, got %v", req.Error)
  5469. }
  5470. // assert URL
  5471. awstesting.AssertURL(t, "https://test/path?item=value1&item=value2", r.URL.String())
  5472. // assert headers
  5473. }
  5474. func TestInputService14ProtocolTestStringToStringMapsInQuerystringCase1(t *testing.T) {
  5475. svc := NewInputService14ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5476. input := &InputService14TestShapeInputService14TestCaseOperation1Input{
  5477. PipelineId: aws.String("foo"),
  5478. QueryDoc: map[string]*string{
  5479. "bar": aws.String("baz"),
  5480. "fizz": aws.String("buzz"),
  5481. },
  5482. }
  5483. req, _ := svc.InputService14TestCaseOperation1Request(input)
  5484. r := req.HTTPRequest
  5485. // build request
  5486. req.Build()
  5487. if req.Error != nil {
  5488. t.Errorf("expect no error, got %v", req.Error)
  5489. }
  5490. // assert URL
  5491. awstesting.AssertURL(t, "https://test/2014-01-01/jobsByPipeline/foo?bar=baz&fizz=buzz", r.URL.String())
  5492. // assert headers
  5493. }
  5494. func TestInputService15ProtocolTestStringToStringListMapsInQuerystringCase1(t *testing.T) {
  5495. svc := NewInputService15ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5496. input := &InputService15TestShapeInputService15TestCaseOperation1Input{
  5497. PipelineId: aws.String("id"),
  5498. QueryDoc: map[string][]*string{
  5499. "fizz": {
  5500. aws.String("buzz"),
  5501. aws.String("pop"),
  5502. },
  5503. "foo": {
  5504. aws.String("bar"),
  5505. aws.String("baz"),
  5506. },
  5507. },
  5508. }
  5509. req, _ := svc.InputService15TestCaseOperation1Request(input)
  5510. r := req.HTTPRequest
  5511. // build request
  5512. req.Build()
  5513. if req.Error != nil {
  5514. t.Errorf("expect no error, got %v", req.Error)
  5515. }
  5516. // assert URL
  5517. awstesting.AssertURL(t, "https://test/2014-01-01/jobsByPipeline/id?foo=bar&foo=baz&fizz=buzz&fizz=pop", r.URL.String())
  5518. // assert headers
  5519. }
  5520. func TestInputService16ProtocolTestBooleanInQuerystringCase1(t *testing.T) {
  5521. svc := NewInputService16ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5522. input := &InputService16TestShapeInputService16TestCaseOperation1Input{
  5523. BoolQuery: aws.Bool(true),
  5524. }
  5525. req, _ := svc.InputService16TestCaseOperation1Request(input)
  5526. r := req.HTTPRequest
  5527. // build request
  5528. req.Build()
  5529. if req.Error != nil {
  5530. t.Errorf("expect no error, got %v", req.Error)
  5531. }
  5532. // assert URL
  5533. awstesting.AssertURL(t, "https://test/path?bool-query=true", r.URL.String())
  5534. // assert headers
  5535. }
  5536. func TestInputService16ProtocolTestBooleanInQuerystringCase2(t *testing.T) {
  5537. svc := NewInputService16ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5538. input := &InputService16TestShapeInputService16TestCaseOperation2Input{
  5539. BoolQuery: aws.Bool(false),
  5540. }
  5541. req, _ := svc.InputService16TestCaseOperation2Request(input)
  5542. r := req.HTTPRequest
  5543. // build request
  5544. req.Build()
  5545. if req.Error != nil {
  5546. t.Errorf("expect no error, got %v", req.Error)
  5547. }
  5548. // assert URL
  5549. awstesting.AssertURL(t, "https://test/path?bool-query=false", r.URL.String())
  5550. // assert headers
  5551. }
  5552. func TestInputService17ProtocolTestStringPayloadCase1(t *testing.T) {
  5553. svc := NewInputService17ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5554. input := &InputService17TestShapeInputService17TestCaseOperation1Input{
  5555. Foo: aws.String("bar"),
  5556. }
  5557. req, _ := svc.InputService17TestCaseOperation1Request(input)
  5558. r := req.HTTPRequest
  5559. // build request
  5560. req.Build()
  5561. if req.Error != nil {
  5562. t.Errorf("expect no error, got %v", req.Error)
  5563. }
  5564. // assert body
  5565. if r.Body == nil {
  5566. t.Errorf("expect body not to be nil")
  5567. }
  5568. body := util.SortXML(r.Body)
  5569. if e, a := "bar", util.Trim(string(body)); e != a {
  5570. t.Errorf("expect %v, got %v", e, a)
  5571. }
  5572. // assert URL
  5573. awstesting.AssertURL(t, "https://test/", r.URL.String())
  5574. // assert headers
  5575. }
  5576. func TestInputService18ProtocolTestBlobPayloadCase1(t *testing.T) {
  5577. svc := NewInputService18ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5578. input := &InputService18TestShapeInputService18TestCaseOperation1Input{
  5579. Foo: []byte("bar"),
  5580. }
  5581. req, _ := svc.InputService18TestCaseOperation1Request(input)
  5582. r := req.HTTPRequest
  5583. // build request
  5584. req.Build()
  5585. if req.Error != nil {
  5586. t.Errorf("expect no error, got %v", req.Error)
  5587. }
  5588. // assert body
  5589. if r.Body == nil {
  5590. t.Errorf("expect body not to be nil")
  5591. }
  5592. body := util.SortXML(r.Body)
  5593. if e, a := "bar", util.Trim(string(body)); e != a {
  5594. t.Errorf("expect %v, got %v", e, a)
  5595. }
  5596. // assert URL
  5597. awstesting.AssertURL(t, "https://test/", r.URL.String())
  5598. // assert headers
  5599. }
  5600. func TestInputService18ProtocolTestBlobPayloadCase2(t *testing.T) {
  5601. svc := NewInputService18ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5602. input := &InputService18TestShapeInputService18TestCaseOperation2Input{}
  5603. req, _ := svc.InputService18TestCaseOperation2Request(input)
  5604. r := req.HTTPRequest
  5605. // build request
  5606. req.Build()
  5607. if req.Error != nil {
  5608. t.Errorf("expect no error, got %v", req.Error)
  5609. }
  5610. // assert URL
  5611. awstesting.AssertURL(t, "https://test/", r.URL.String())
  5612. // assert headers
  5613. }
  5614. func TestInputService19ProtocolTestStructurePayloadCase1(t *testing.T) {
  5615. svc := NewInputService19ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5616. input := &InputService19TestShapeInputService19TestCaseOperation1Input{
  5617. Foo: &InputService19TestShapeFooShape{
  5618. Baz: aws.String("bar"),
  5619. },
  5620. }
  5621. req, _ := svc.InputService19TestCaseOperation1Request(input)
  5622. r := req.HTTPRequest
  5623. // build request
  5624. req.Build()
  5625. if req.Error != nil {
  5626. t.Errorf("expect no error, got %v", req.Error)
  5627. }
  5628. // assert body
  5629. if r.Body == nil {
  5630. t.Errorf("expect body not to be nil")
  5631. }
  5632. body := util.SortXML(r.Body)
  5633. awstesting.AssertXML(t, `<foo><baz>bar</baz></foo>`, util.Trim(string(body)), InputService19TestShapeInputService19TestCaseOperation1Input{})
  5634. // assert URL
  5635. awstesting.AssertURL(t, "https://test/", r.URL.String())
  5636. // assert headers
  5637. }
  5638. func TestInputService19ProtocolTestStructurePayloadCase2(t *testing.T) {
  5639. svc := NewInputService19ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5640. input := &InputService19TestShapeInputService19TestCaseOperation2Input{}
  5641. req, _ := svc.InputService19TestCaseOperation2Request(input)
  5642. r := req.HTTPRequest
  5643. // build request
  5644. req.Build()
  5645. if req.Error != nil {
  5646. t.Errorf("expect no error, got %v", req.Error)
  5647. }
  5648. // assert URL
  5649. awstesting.AssertURL(t, "https://test/", r.URL.String())
  5650. // assert headers
  5651. }
  5652. func TestInputService19ProtocolTestStructurePayloadCase3(t *testing.T) {
  5653. svc := NewInputService19ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5654. input := &InputService19TestShapeInputService19TestCaseOperation3Input{
  5655. Foo: &InputService19TestShapeFooShape{},
  5656. }
  5657. req, _ := svc.InputService19TestCaseOperation3Request(input)
  5658. r := req.HTTPRequest
  5659. // build request
  5660. req.Build()
  5661. if req.Error != nil {
  5662. t.Errorf("expect no error, got %v", req.Error)
  5663. }
  5664. // assert body
  5665. if r.Body == nil {
  5666. t.Errorf("expect body not to be nil")
  5667. }
  5668. body := util.SortXML(r.Body)
  5669. awstesting.AssertXML(t, `<foo></foo>`, util.Trim(string(body)), InputService19TestShapeInputService19TestCaseOperation3Input{})
  5670. // assert URL
  5671. awstesting.AssertURL(t, "https://test/", r.URL.String())
  5672. // assert headers
  5673. }
  5674. func TestInputService19ProtocolTestStructurePayloadCase4(t *testing.T) {
  5675. svc := NewInputService19ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5676. input := &InputService19TestShapeInputService19TestCaseOperation4Input{}
  5677. req, _ := svc.InputService19TestCaseOperation4Request(input)
  5678. r := req.HTTPRequest
  5679. // build request
  5680. req.Build()
  5681. if req.Error != nil {
  5682. t.Errorf("expect no error, got %v", req.Error)
  5683. }
  5684. // assert URL
  5685. awstesting.AssertURL(t, "https://test/", r.URL.String())
  5686. // assert headers
  5687. }
  5688. func TestInputService20ProtocolTestXMLAttributeCase1(t *testing.T) {
  5689. svc := NewInputService20ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5690. input := &InputService20TestShapeInputService20TestCaseOperation1Input{
  5691. Grant: &InputService20TestShapeGrant{
  5692. Grantee: &InputService20TestShapeGrantee{
  5693. EmailAddress: aws.String("foo@example.com"),
  5694. Type: aws.String("CanonicalUser"),
  5695. },
  5696. },
  5697. }
  5698. req, _ := svc.InputService20TestCaseOperation1Request(input)
  5699. r := req.HTTPRequest
  5700. // build request
  5701. req.Build()
  5702. if req.Error != nil {
  5703. t.Errorf("expect no error, got %v", req.Error)
  5704. }
  5705. // assert body
  5706. if r.Body == nil {
  5707. t.Errorf("expect body not to be nil")
  5708. }
  5709. body := util.SortXML(r.Body)
  5710. awstesting.AssertXML(t, `<Grant xmlns:_xmlns="xmlns" _xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:XMLSchema-instance="http://www.w3.org/2001/XMLSchema-instance" XMLSchema-instance:type="CanonicalUser"><Grantee><EmailAddress>foo@example.com</EmailAddress></Grantee></Grant>`, util.Trim(string(body)), InputService20TestShapeInputService20TestCaseOperation1Input{})
  5711. // assert URL
  5712. awstesting.AssertURL(t, "https://test/", r.URL.String())
  5713. // assert headers
  5714. }
  5715. func TestInputService21ProtocolTestGreedyKeysCase1(t *testing.T) {
  5716. svc := NewInputService21ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5717. input := &InputService21TestShapeInputService21TestCaseOperation1Input{
  5718. Bucket: aws.String("my/bucket"),
  5719. Key: aws.String("testing /123"),
  5720. }
  5721. req, _ := svc.InputService21TestCaseOperation1Request(input)
  5722. r := req.HTTPRequest
  5723. // build request
  5724. req.Build()
  5725. if req.Error != nil {
  5726. t.Errorf("expect no error, got %v", req.Error)
  5727. }
  5728. // assert URL
  5729. awstesting.AssertURL(t, "https://test/my%2Fbucket/testing%20/123", r.URL.String())
  5730. // assert headers
  5731. }
  5732. func TestInputService22ProtocolTestOmitsNullQueryParamsButSerializesEmptyStringsCase1(t *testing.T) {
  5733. svc := NewInputService22ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5734. input := &InputService22TestShapeInputService22TestCaseOperation1Input{}
  5735. req, _ := svc.InputService22TestCaseOperation1Request(input)
  5736. r := req.HTTPRequest
  5737. // build request
  5738. req.Build()
  5739. if req.Error != nil {
  5740. t.Errorf("expect no error, got %v", req.Error)
  5741. }
  5742. // assert URL
  5743. awstesting.AssertURL(t, "https://test/path", r.URL.String())
  5744. // assert headers
  5745. }
  5746. func TestInputService22ProtocolTestOmitsNullQueryParamsButSerializesEmptyStringsCase2(t *testing.T) {
  5747. svc := NewInputService22ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5748. input := &InputService22TestShapeInputService22TestCaseOperation2Input{
  5749. Foo: aws.String(""),
  5750. }
  5751. req, _ := svc.InputService22TestCaseOperation2Request(input)
  5752. r := req.HTTPRequest
  5753. // build request
  5754. req.Build()
  5755. if req.Error != nil {
  5756. t.Errorf("expect no error, got %v", req.Error)
  5757. }
  5758. // assert URL
  5759. awstesting.AssertURL(t, "https://test/path?abc=mno&param-name=", r.URL.String())
  5760. // assert headers
  5761. }
  5762. func TestInputService23ProtocolTestRecursiveShapesCase1(t *testing.T) {
  5763. svc := NewInputService23ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5764. input := &InputService23TestShapeInputService23TestCaseOperation1Input{
  5765. RecursiveStruct: &InputService23TestShapeRecursiveStructType{
  5766. NoRecurse: aws.String("foo"),
  5767. },
  5768. }
  5769. req, _ := svc.InputService23TestCaseOperation1Request(input)
  5770. r := req.HTTPRequest
  5771. // build request
  5772. req.Build()
  5773. if req.Error != nil {
  5774. t.Errorf("expect no error, got %v", req.Error)
  5775. }
  5776. // assert body
  5777. if r.Body == nil {
  5778. t.Errorf("expect body not to be nil")
  5779. }
  5780. body := util.SortXML(r.Body)
  5781. awstesting.AssertXML(t, `<OperationRequest xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><NoRecurse xmlns="https://foo/">foo</NoRecurse></RecursiveStruct></OperationRequest>`, util.Trim(string(body)), InputService23TestShapeInputService23TestCaseOperation1Input{})
  5782. // assert URL
  5783. awstesting.AssertURL(t, "https://test/path", r.URL.String())
  5784. // assert headers
  5785. }
  5786. func TestInputService23ProtocolTestRecursiveShapesCase2(t *testing.T) {
  5787. svc := NewInputService23ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5788. input := &InputService23TestShapeInputService23TestCaseOperation2Input{
  5789. RecursiveStruct: &InputService23TestShapeRecursiveStructType{
  5790. RecursiveStruct: &InputService23TestShapeRecursiveStructType{
  5791. NoRecurse: aws.String("foo"),
  5792. },
  5793. },
  5794. }
  5795. req, _ := svc.InputService23TestCaseOperation2Request(input)
  5796. r := req.HTTPRequest
  5797. // build request
  5798. req.Build()
  5799. if req.Error != nil {
  5800. t.Errorf("expect no error, got %v", req.Error)
  5801. }
  5802. // assert body
  5803. if r.Body == nil {
  5804. t.Errorf("expect body not to be nil")
  5805. }
  5806. body := util.SortXML(r.Body)
  5807. awstesting.AssertXML(t, `<OperationRequest xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><NoRecurse xmlns="https://foo/">foo</NoRecurse></RecursiveStruct></RecursiveStruct></OperationRequest>`, util.Trim(string(body)), InputService23TestShapeInputService23TestCaseOperation2Input{})
  5808. // assert URL
  5809. awstesting.AssertURL(t, "https://test/path", r.URL.String())
  5810. // assert headers
  5811. }
  5812. func TestInputService23ProtocolTestRecursiveShapesCase3(t *testing.T) {
  5813. svc := NewInputService23ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5814. input := &InputService23TestShapeInputService23TestCaseOperation3Input{
  5815. RecursiveStruct: &InputService23TestShapeRecursiveStructType{
  5816. RecursiveStruct: &InputService23TestShapeRecursiveStructType{
  5817. RecursiveStruct: &InputService23TestShapeRecursiveStructType{
  5818. RecursiveStruct: &InputService23TestShapeRecursiveStructType{
  5819. NoRecurse: aws.String("foo"),
  5820. },
  5821. },
  5822. },
  5823. },
  5824. }
  5825. req, _ := svc.InputService23TestCaseOperation3Request(input)
  5826. r := req.HTTPRequest
  5827. // build request
  5828. req.Build()
  5829. if req.Error != nil {
  5830. t.Errorf("expect no error, got %v", req.Error)
  5831. }
  5832. // assert body
  5833. if r.Body == nil {
  5834. t.Errorf("expect body not to be nil")
  5835. }
  5836. body := util.SortXML(r.Body)
  5837. awstesting.AssertXML(t, `<OperationRequest xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><NoRecurse xmlns="https://foo/">foo</NoRecurse></RecursiveStruct></RecursiveStruct></RecursiveStruct></RecursiveStruct></OperationRequest>`, util.Trim(string(body)), InputService23TestShapeInputService23TestCaseOperation3Input{})
  5838. // assert URL
  5839. awstesting.AssertURL(t, "https://test/path", r.URL.String())
  5840. // assert headers
  5841. }
  5842. func TestInputService23ProtocolTestRecursiveShapesCase4(t *testing.T) {
  5843. svc := NewInputService23ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5844. input := &InputService23TestShapeInputService23TestCaseOperation4Input{
  5845. RecursiveStruct: &InputService23TestShapeRecursiveStructType{
  5846. RecursiveList: []*InputService23TestShapeRecursiveStructType{
  5847. {
  5848. NoRecurse: aws.String("foo"),
  5849. },
  5850. {
  5851. NoRecurse: aws.String("bar"),
  5852. },
  5853. },
  5854. },
  5855. }
  5856. req, _ := svc.InputService23TestCaseOperation4Request(input)
  5857. r := req.HTTPRequest
  5858. // build request
  5859. req.Build()
  5860. if req.Error != nil {
  5861. t.Errorf("expect no error, got %v", req.Error)
  5862. }
  5863. // assert body
  5864. if r.Body == nil {
  5865. t.Errorf("expect body not to be nil")
  5866. }
  5867. body := util.SortXML(r.Body)
  5868. awstesting.AssertXML(t, `<OperationRequest xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><RecursiveList xmlns="https://foo/"><member xmlns="https://foo/"><NoRecurse xmlns="https://foo/">foo</NoRecurse></member><member xmlns="https://foo/"><NoRecurse xmlns="https://foo/">bar</NoRecurse></member></RecursiveList></RecursiveStruct></OperationRequest>`, util.Trim(string(body)), InputService23TestShapeInputService23TestCaseOperation4Input{})
  5869. // assert URL
  5870. awstesting.AssertURL(t, "https://test/path", r.URL.String())
  5871. // assert headers
  5872. }
  5873. func TestInputService23ProtocolTestRecursiveShapesCase5(t *testing.T) {
  5874. svc := NewInputService23ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5875. input := &InputService23TestShapeInputService23TestCaseOperation5Input{
  5876. RecursiveStruct: &InputService23TestShapeRecursiveStructType{
  5877. RecursiveList: []*InputService23TestShapeRecursiveStructType{
  5878. {
  5879. NoRecurse: aws.String("foo"),
  5880. },
  5881. {
  5882. RecursiveStruct: &InputService23TestShapeRecursiveStructType{
  5883. NoRecurse: aws.String("bar"),
  5884. },
  5885. },
  5886. },
  5887. },
  5888. }
  5889. req, _ := svc.InputService23TestCaseOperation5Request(input)
  5890. r := req.HTTPRequest
  5891. // build request
  5892. req.Build()
  5893. if req.Error != nil {
  5894. t.Errorf("expect no error, got %v", req.Error)
  5895. }
  5896. // assert body
  5897. if r.Body == nil {
  5898. t.Errorf("expect body not to be nil")
  5899. }
  5900. body := util.SortXML(r.Body)
  5901. awstesting.AssertXML(t, `<OperationRequest xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><RecursiveList xmlns="https://foo/"><member xmlns="https://foo/"><NoRecurse xmlns="https://foo/">foo</NoRecurse></member><member xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><NoRecurse xmlns="https://foo/">bar</NoRecurse></RecursiveStruct></member></RecursiveList></RecursiveStruct></OperationRequest>`, util.Trim(string(body)), InputService23TestShapeInputService23TestCaseOperation5Input{})
  5902. // assert URL
  5903. awstesting.AssertURL(t, "https://test/path", r.URL.String())
  5904. // assert headers
  5905. }
  5906. func TestInputService23ProtocolTestRecursiveShapesCase6(t *testing.T) {
  5907. svc := NewInputService23ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5908. input := &InputService23TestShapeInputService23TestCaseOperation6Input{
  5909. RecursiveStruct: &InputService23TestShapeRecursiveStructType{
  5910. RecursiveMap: map[string]*InputService23TestShapeRecursiveStructType{
  5911. "bar": {
  5912. NoRecurse: aws.String("bar"),
  5913. },
  5914. "foo": {
  5915. NoRecurse: aws.String("foo"),
  5916. },
  5917. },
  5918. },
  5919. }
  5920. req, _ := svc.InputService23TestCaseOperation6Request(input)
  5921. r := req.HTTPRequest
  5922. // build request
  5923. req.Build()
  5924. if req.Error != nil {
  5925. t.Errorf("expect no error, got %v", req.Error)
  5926. }
  5927. // assert body
  5928. if r.Body == nil {
  5929. t.Errorf("expect body not to be nil")
  5930. }
  5931. body := util.SortXML(r.Body)
  5932. awstesting.AssertXML(t, `<OperationRequest xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><RecursiveMap xmlns="https://foo/"><entry xmlns="https://foo/"><key xmlns="https://foo/">foo</key><value xmlns="https://foo/"><NoRecurse xmlns="https://foo/">foo</NoRecurse></value></entry><entry xmlns="https://foo/"><key xmlns="https://foo/">bar</key><value xmlns="https://foo/"><NoRecurse xmlns="https://foo/">bar</NoRecurse></value></entry></RecursiveMap></RecursiveStruct></OperationRequest>`, util.Trim(string(body)), InputService23TestShapeInputService23TestCaseOperation6Input{})
  5933. // assert URL
  5934. awstesting.AssertURL(t, "https://test/path", r.URL.String())
  5935. // assert headers
  5936. }
  5937. func TestInputService24ProtocolTestIdempotencyTokenAutoFillCase1(t *testing.T) {
  5938. svc := NewInputService24ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5939. input := &InputService24TestShapeInputService24TestCaseOperation1Input{
  5940. Token: aws.String("abc123"),
  5941. }
  5942. req, _ := svc.InputService24TestCaseOperation1Request(input)
  5943. r := req.HTTPRequest
  5944. // build request
  5945. req.Build()
  5946. if req.Error != nil {
  5947. t.Errorf("expect no error, got %v", req.Error)
  5948. }
  5949. // assert body
  5950. if r.Body == nil {
  5951. t.Errorf("expect body not to be nil")
  5952. }
  5953. body := util.SortXML(r.Body)
  5954. awstesting.AssertXML(t, `<InputShape><Token>abc123</Token></InputShape>`, util.Trim(string(body)), InputService24TestShapeInputService24TestCaseOperation1Input{})
  5955. // assert URL
  5956. awstesting.AssertURL(t, "https://test/path", r.URL.String())
  5957. // assert headers
  5958. }
  5959. func TestInputService24ProtocolTestIdempotencyTokenAutoFillCase2(t *testing.T) {
  5960. svc := NewInputService24ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5961. input := &InputService24TestShapeInputService24TestCaseOperation2Input{}
  5962. req, _ := svc.InputService24TestCaseOperation2Request(input)
  5963. r := req.HTTPRequest
  5964. // build request
  5965. req.Build()
  5966. if req.Error != nil {
  5967. t.Errorf("expect no error, got %v", req.Error)
  5968. }
  5969. // assert body
  5970. if r.Body == nil {
  5971. t.Errorf("expect body not to be nil")
  5972. }
  5973. body := util.SortXML(r.Body)
  5974. awstesting.AssertXML(t, `<InputShape><Token>00000000-0000-4000-8000-000000000000</Token></InputShape>`, util.Trim(string(body)), InputService24TestShapeInputService24TestCaseOperation2Input{})
  5975. // assert URL
  5976. awstesting.AssertURL(t, "https://test/path", r.URL.String())
  5977. // assert headers
  5978. }
  5979. func TestInputService25ProtocolTestEnumCase1(t *testing.T) {
  5980. svc := NewInputService25ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  5981. input := &InputService25TestShapeInputService25TestCaseOperation1Input{
  5982. FooEnum: aws.String("foo"),
  5983. HeaderEnum: aws.String("baz"),
  5984. ListEnums: []*string{
  5985. aws.String("foo"),
  5986. aws.String(""),
  5987. aws.String("bar"),
  5988. },
  5989. URIFooEnum: aws.String("bar"),
  5990. URIListEnums: []*string{
  5991. aws.String("0"),
  5992. aws.String(""),
  5993. aws.String("1"),
  5994. },
  5995. }
  5996. req, _ := svc.InputService25TestCaseOperation1Request(input)
  5997. r := req.HTTPRequest
  5998. // build request
  5999. req.Build()
  6000. if req.Error != nil {
  6001. t.Errorf("expect no error, got %v", req.Error)
  6002. }
  6003. // assert body
  6004. if r.Body == nil {
  6005. t.Errorf("expect body not to be nil")
  6006. }
  6007. body := util.SortXML(r.Body)
  6008. awstesting.AssertXML(t, `<InputShape><FooEnum>foo</FooEnum><ListEnums><member>foo</member><member></member><member>bar</member></ListEnums></InputShape>`, util.Trim(string(body)), InputService25TestShapeInputService25TestCaseOperation1Input{})
  6009. // assert URL
  6010. awstesting.AssertURL(t, "https://test/Enum/bar?ListEnums=0&ListEnums=&ListEnums=1", r.URL.String())
  6011. // assert headers
  6012. if e, a := "baz", r.Header.Get("x-amz-enum"); e != a {
  6013. t.Errorf("expect %v to be %v", e, a)
  6014. }
  6015. }
  6016. func TestInputService25ProtocolTestEnumCase2(t *testing.T) {
  6017. svc := NewInputService25ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://test")})
  6018. input := &InputService25TestShapeInputService25TestCaseOperation2Input{
  6019. URIFooEnum: aws.String("bar"),
  6020. }
  6021. req, _ := svc.InputService25TestCaseOperation2Request(input)
  6022. r := req.HTTPRequest
  6023. // build request
  6024. req.Build()
  6025. if req.Error != nil {
  6026. t.Errorf("expect no error, got %v", req.Error)
  6027. }
  6028. // assert URL
  6029. awstesting.AssertURL(t, "https://test/Enum/bar", r.URL.String())
  6030. // assert headers
  6031. }
  6032. func TestInputService26ProtocolTestEndpointHostTraitCase1(t *testing.T) {
  6033. svc := NewInputService26ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://service.region.amazonaws.com")})
  6034. input := &InputService26TestShapeInputService26TestCaseOperation1Input{
  6035. Name: aws.String("myname"),
  6036. }
  6037. req, _ := svc.InputService26TestCaseOperation1Request(input)
  6038. r := req.HTTPRequest
  6039. // build request
  6040. req.Build()
  6041. if req.Error != nil {
  6042. t.Errorf("expect no error, got %v", req.Error)
  6043. }
  6044. // assert body
  6045. if r.Body == nil {
  6046. t.Errorf("expect body not to be nil")
  6047. }
  6048. body := util.SortXML(r.Body)
  6049. awstesting.AssertXML(t, `<StaticOpRequest><Name>myname</Name></StaticOpRequest>`, util.Trim(string(body)), InputService26TestShapeInputService26TestCaseOperation1Input{})
  6050. // assert URL
  6051. awstesting.AssertURL(t, "https://data-service.region.amazonaws.com/path", r.URL.String())
  6052. // assert headers
  6053. }
  6054. func TestInputService26ProtocolTestEndpointHostTraitCase2(t *testing.T) {
  6055. svc := NewInputService26ProtocolTest(unit.Session, &aws.Config{Endpoint: aws.String("https://service.region.amazonaws.com")})
  6056. input := &InputService26TestShapeInputService26TestCaseOperation2Input{
  6057. Name: aws.String("myname"),
  6058. }
  6059. req, _ := svc.InputService26TestCaseOperation2Request(input)
  6060. r := req.HTTPRequest
  6061. // build request
  6062. req.Build()
  6063. if req.Error != nil {
  6064. t.Errorf("expect no error, got %v", req.Error)
  6065. }
  6066. // assert body
  6067. if r.Body == nil {
  6068. t.Errorf("expect body not to be nil")
  6069. }
  6070. body := util.SortXML(r.Body)
  6071. awstesting.AssertXML(t, `<MemberRefOpRequest><Name>myname</Name></MemberRefOpRequest>`, util.Trim(string(body)), InputService26TestShapeInputService26TestCaseOperation2Input{})
  6072. // assert URL
  6073. awstesting.AssertURL(t, "https://foo-myname.service.region.amazonaws.com/path", r.URL.String())
  6074. // assert headers
  6075. }