| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659116601166111662116631166411665116661166711668116691167011671116721167311674116751167611677116781167911680116811168211683116841168511686116871168811689116901169111692116931169411695116961169711698116991170011701117021170311704117051170611707117081170911710117111171211713117141171511716117171171811719117201172111722117231172411725117261172711728117291173011731117321173311734117351173611737117381173911740117411174211743117441174511746117471174811749117501175111752117531175411755117561175711758117591176011761117621176311764117651176611767117681176911770117711177211773117741177511776117771177811779117801178111782117831178411785117861178711788117891179011791117921179311794117951179611797117981179911800118011180211803118041180511806118071180811809118101181111812118131181411815118161181711818118191182011821118221182311824118251182611827118281182911830118311183211833118341183511836118371183811839118401184111842118431184411845118461184711848118491185011851118521185311854118551185611857118581185911860118611186211863118641186511866118671186811869118701187111872118731187411875118761187711878118791188011881118821188311884118851188611887118881188911890118911189211893118941189511896118971189811899119001190111902119031190411905119061190711908119091191011911119121191311914119151191611917119181191911920119211192211923119241192511926119271192811929119301193111932119331193411935119361193711938119391194011941119421194311944119451194611947119481194911950119511195211953119541195511956119571195811959119601196111962119631196411965119661196711968119691197011971119721197311974119751197611977119781197911980119811198211983119841198511986119871198811989119901199111992119931199411995119961199711998119991200012001120021200312004120051200612007120081200912010120111201212013120141201512016120171201812019120201202112022120231202412025120261202712028120291203012031120321203312034120351203612037120381203912040120411204212043120441204512046120471204812049120501205112052120531205412055120561205712058120591206012061120621206312064120651206612067120681206912070120711207212073120741207512076120771207812079120801208112082120831208412085120861208712088120891209012091120921209312094120951209612097120981209912100121011210212103121041210512106121071210812109121101211112112121131211412115121161211712118121191212012121121221212312124121251212612127121281212912130121311213212133121341213512136121371213812139121401214112142121431214412145121461214712148121491215012151121521215312154121551215612157121581215912160121611216212163121641216512166121671216812169121701217112172121731217412175121761217712178121791218012181121821218312184121851218612187121881218912190121911219212193121941219512196121971219812199122001220112202122031220412205122061220712208122091221012211122121221312214122151221612217122181221912220122211222212223122241222512226122271222812229122301223112232122331223412235122361223712238122391224012241122421224312244122451224612247122481224912250122511225212253122541225512256122571225812259122601226112262122631226412265122661226712268122691227012271122721227312274122751227612277122781227912280122811228212283122841228512286122871228812289122901229112292122931229412295122961229712298122991230012301123021230312304123051230612307123081230912310123111231212313123141231512316123171231812319123201232112322123231232412325123261232712328123291233012331123321233312334123351233612337123381233912340123411234212343123441234512346123471234812349123501235112352123531235412355123561235712358123591236012361123621236312364123651236612367123681236912370123711237212373123741237512376123771237812379123801238112382123831238412385123861238712388123891239012391123921239312394123951239612397123981239912400124011240212403124041240512406124071240812409124101241112412124131241412415124161241712418124191242012421124221242312424124251242612427124281242912430124311243212433124341243512436124371243812439124401244112442124431244412445124461244712448124491245012451124521245312454124551245612457124581245912460124611246212463124641246512466124671246812469124701247112472124731247412475124761247712478124791248012481124821248312484124851248612487124881248912490124911249212493124941249512496124971249812499125001250112502125031250412505125061250712508125091251012511125121251312514125151251612517125181251912520125211252212523125241252512526125271252812529125301253112532125331253412535125361253712538125391254012541125421254312544125451254612547125481254912550125511255212553125541255512556125571255812559125601256112562125631256412565125661256712568125691257012571125721257312574125751257612577125781257912580125811258212583125841258512586125871258812589125901259112592125931259412595125961259712598125991260012601126021260312604126051260612607126081260912610126111261212613126141261512616126171261812619126201262112622126231262412625126261262712628126291263012631126321263312634126351263612637126381263912640126411264212643126441264512646126471264812649126501265112652126531265412655126561265712658126591266012661126621266312664126651266612667126681266912670126711267212673126741267512676126771267812679126801268112682126831268412685126861268712688126891269012691126921269312694126951269612697126981269912700127011270212703127041270512706127071270812709127101271112712127131271412715127161271712718127191272012721127221272312724127251272612727127281272912730127311273212733127341273512736127371273812739127401274112742127431274412745127461274712748127491275012751127521275312754127551275612757127581275912760127611276212763127641276512766127671276812769127701277112772127731277412775127761277712778127791278012781127821278312784127851278612787127881278912790127911279212793127941279512796127971279812799128001280112802128031280412805128061280712808128091281012811128121281312814128151281612817128181281912820128211282212823128241282512826128271282812829128301283112832128331283412835128361283712838128391284012841128421284312844128451284612847128481284912850128511285212853128541285512856128571285812859128601286112862128631286412865128661286712868128691287012871128721287312874128751287612877128781287912880128811288212883128841288512886128871288812889128901289112892128931289412895128961289712898128991290012901129021290312904129051290612907129081290912910129111291212913129141291512916129171291812919129201292112922129231292412925129261292712928129291293012931129321293312934129351293612937129381293912940129411294212943129441294512946129471294812949129501295112952129531295412955129561295712958129591296012961129621296312964129651296612967129681296912970129711297212973129741297512976129771297812979129801298112982129831298412985129861298712988129891299012991129921299312994129951299612997129981299913000130011300213003130041300513006130071300813009130101301113012130131301413015130161301713018130191302013021130221302313024130251302613027130281302913030130311303213033130341303513036130371303813039130401304113042130431304413045130461304713048130491305013051130521305313054130551305613057130581305913060130611306213063130641306513066130671306813069130701307113072130731307413075130761307713078130791308013081130821308313084130851308613087130881308913090130911309213093130941309513096130971309813099131001310113102131031310413105131061310713108131091311013111131121311313114131151311613117131181311913120131211312213123131241312513126131271312813129131301313113132131331313413135131361313713138131391314013141131421314313144131451314613147131481314913150131511315213153131541315513156131571315813159131601316113162131631316413165131661316713168131691317013171131721317313174131751317613177131781317913180131811318213183131841318513186131871318813189131901319113192131931319413195131961319713198131991320013201132021320313204132051320613207132081320913210132111321213213132141321513216132171321813219132201322113222132231322413225132261322713228132291323013231132321323313234132351323613237132381323913240132411324213243132441324513246132471324813249132501325113252132531325413255132561325713258132591326013261132621326313264132651326613267132681326913270132711327213273132741327513276132771327813279132801328113282132831328413285132861328713288132891329013291132921329313294132951329613297132981329913300133011330213303133041330513306133071330813309133101331113312133131331413315133161331713318133191332013321133221332313324133251332613327133281332913330133311333213333133341333513336133371333813339133401334113342133431334413345133461334713348133491335013351133521335313354133551335613357133581335913360133611336213363133641336513366133671336813369133701337113372133731337413375133761337713378133791338013381133821338313384133851338613387133881338913390133911339213393133941339513396133971339813399134001340113402134031340413405134061340713408134091341013411134121341313414134151341613417134181341913420134211342213423134241342513426134271342813429134301343113432134331343413435134361343713438134391344013441134421344313444134451344613447134481344913450134511345213453134541345513456134571345813459134601346113462134631346413465134661346713468134691347013471134721347313474134751347613477134781347913480134811348213483134841348513486134871348813489134901349113492134931349413495134961349713498134991350013501135021350313504135051350613507135081350913510135111351213513135141351513516135171351813519135201352113522135231352413525135261352713528135291353013531135321353313534135351353613537135381353913540135411354213543135441354513546135471354813549135501355113552135531355413555135561355713558135591356013561135621356313564135651356613567135681356913570135711357213573135741357513576135771357813579135801358113582135831358413585135861358713588135891359013591135921359313594135951359613597135981359913600136011360213603136041360513606136071360813609136101361113612136131361413615136161361713618136191362013621136221362313624136251362613627136281362913630136311363213633136341363513636136371363813639136401364113642136431364413645136461364713648136491365013651136521365313654136551365613657136581365913660136611366213663136641366513666136671366813669136701367113672136731367413675136761367713678136791368013681136821368313684136851368613687136881368913690136911369213693136941369513696136971369813699137001370113702137031370413705137061370713708137091371013711137121371313714137151371613717137181371913720137211372213723137241372513726137271372813729137301373113732137331373413735137361373713738137391374013741137421374313744137451374613747137481374913750137511375213753137541375513756137571375813759137601376113762137631376413765137661376713768137691377013771137721377313774137751377613777137781377913780137811378213783137841378513786137871378813789137901379113792137931379413795137961379713798137991380013801138021380313804138051380613807138081380913810138111381213813138141381513816138171381813819138201382113822138231382413825138261382713828138291383013831138321383313834138351383613837138381383913840138411384213843138441384513846138471384813849138501385113852138531385413855138561385713858138591386013861138621386313864138651386613867138681386913870138711387213873138741387513876138771387813879138801388113882138831388413885138861388713888138891389013891138921389313894138951389613897138981389913900139011390213903139041390513906139071390813909139101391113912139131391413915139161391713918139191392013921139221392313924139251392613927139281392913930139311393213933139341393513936139371393813939139401394113942139431394413945139461394713948139491395013951139521395313954139551395613957139581395913960139611396213963139641396513966139671396813969139701397113972139731397413975139761397713978139791398013981139821398313984139851398613987139881398913990139911399213993139941399513996139971399813999140001400114002140031400414005140061400714008140091401014011140121401314014140151401614017140181401914020140211402214023140241402514026140271402814029140301403114032140331403414035140361403714038140391404014041140421404314044140451404614047140481404914050140511405214053140541405514056140571405814059140601406114062140631406414065140661406714068140691407014071140721407314074140751407614077140781407914080140811408214083140841408514086140871408814089140901409114092140931409414095140961409714098140991410014101141021410314104141051410614107141081410914110141111411214113141141411514116141171411814119141201412114122141231412414125141261412714128141291413014131141321413314134141351413614137141381413914140141411414214143141441414514146141471414814149141501415114152141531415414155141561415714158141591416014161141621416314164141651416614167141681416914170141711417214173141741417514176141771417814179141801418114182141831418414185141861418714188141891419014191141921419314194141951419614197141981419914200142011420214203142041420514206142071420814209142101421114212142131421414215142161421714218142191422014221142221422314224142251422614227142281422914230142311423214233142341423514236142371423814239142401424114242142431424414245142461424714248142491425014251142521425314254142551425614257142581425914260142611426214263142641426514266142671426814269142701427114272142731427414275142761427714278142791428014281142821428314284142851428614287142881428914290142911429214293142941429514296142971429814299143001430114302143031430414305143061430714308143091431014311143121431314314143151431614317143181431914320143211432214323143241432514326143271432814329143301433114332143331433414335143361433714338143391434014341143421434314344143451434614347143481434914350143511435214353143541435514356143571435814359143601436114362143631436414365143661436714368143691437014371143721437314374143751437614377143781437914380143811438214383143841438514386143871438814389143901439114392143931439414395143961439714398143991440014401144021440314404144051440614407144081440914410144111441214413144141441514416144171441814419144201442114422144231442414425144261442714428144291443014431144321443314434144351443614437144381443914440144411444214443144441444514446144471444814449144501445114452144531445414455144561445714458144591446014461144621446314464144651446614467144681446914470144711447214473144741447514476144771447814479144801448114482144831448414485144861448714488144891449014491144921449314494144951449614497144981449914500145011450214503145041450514506145071450814509145101451114512145131451414515145161451714518145191452014521145221452314524145251452614527145281452914530145311453214533145341453514536145371453814539145401454114542145431454414545145461454714548145491455014551145521455314554145551455614557145581455914560145611456214563145641456514566145671456814569145701457114572145731457414575145761457714578145791458014581145821458314584145851458614587145881458914590145911459214593145941459514596145971459814599146001460114602146031460414605146061460714608146091461014611146121461314614146151461614617146181461914620146211462214623146241462514626146271462814629146301463114632146331463414635146361463714638146391464014641146421464314644146451464614647146481464914650146511465214653146541465514656146571465814659146601466114662146631466414665146661466714668146691467014671146721467314674146751467614677146781467914680146811468214683146841468514686146871468814689146901469114692146931469414695146961469714698146991470014701147021470314704147051470614707147081470914710147111471214713147141471514716147171471814719147201472114722147231472414725147261472714728147291473014731147321473314734147351473614737147381473914740147411474214743147441474514746147471474814749147501475114752147531475414755147561475714758147591476014761147621476314764147651476614767147681476914770147711477214773147741477514776147771477814779147801478114782147831478414785147861478714788147891479014791147921479314794147951479614797147981479914800148011480214803148041480514806148071480814809148101481114812148131481414815148161481714818148191482014821148221482314824148251482614827148281482914830148311483214833148341483514836148371483814839148401484114842148431484414845148461484714848148491485014851148521485314854148551485614857148581485914860148611486214863148641486514866148671486814869148701487114872148731487414875148761487714878148791488014881148821488314884148851488614887148881488914890148911489214893148941489514896148971489814899149001490114902149031490414905149061490714908149091491014911149121491314914149151491614917149181491914920149211492214923149241492514926149271492814929149301493114932149331493414935149361493714938149391494014941149421494314944149451494614947149481494914950149511495214953149541495514956149571495814959149601496114962149631496414965149661496714968149691497014971149721497314974149751497614977149781497914980149811498214983149841498514986149871498814989149901499114992149931499414995149961499714998149991500015001150021500315004150051500615007150081500915010150111501215013150141501515016150171501815019150201502115022150231502415025150261502715028150291503015031150321503315034150351503615037150381503915040150411504215043150441504515046150471504815049150501505115052150531505415055150561505715058150591506015061150621506315064150651506615067150681506915070150711507215073150741507515076150771507815079150801508115082150831508415085150861508715088150891509015091150921509315094150951509615097150981509915100151011510215103151041510515106151071510815109151101511115112151131511415115151161511715118151191512015121151221512315124151251512615127151281512915130151311513215133151341513515136151371513815139151401514115142151431514415145151461514715148151491515015151151521515315154151551515615157151581515915160151611516215163151641516515166151671516815169151701517115172151731517415175151761517715178151791518015181151821518315184151851518615187151881518915190151911519215193151941519515196151971519815199152001520115202152031520415205152061520715208152091521015211152121521315214152151521615217152181521915220152211522215223152241522515226152271522815229152301523115232152331523415235152361523715238152391524015241152421524315244152451524615247152481524915250152511525215253152541525515256152571525815259152601526115262152631526415265152661526715268152691527015271152721527315274152751527615277152781527915280152811528215283152841528515286152871528815289152901529115292152931529415295152961529715298152991530015301153021530315304153051530615307153081530915310153111531215313153141531515316153171531815319153201532115322153231532415325153261532715328153291533015331153321533315334153351533615337153381533915340153411534215343153441534515346153471534815349153501535115352153531535415355153561535715358153591536015361153621536315364153651536615367153681536915370153711537215373153741537515376153771537815379153801538115382153831538415385153861538715388153891539015391153921539315394153951539615397153981539915400154011540215403154041540515406154071540815409154101541115412154131541415415154161541715418154191542015421154221542315424154251542615427154281542915430154311543215433154341543515436154371543815439154401544115442154431544415445 |
- // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
- package cloudfront
- import (
- "fmt"
- "time"
- "github.com/aws/aws-sdk-go/aws"
- "github.com/aws/aws-sdk-go/aws/awsutil"
- "github.com/aws/aws-sdk-go/aws/request"
- "github.com/aws/aws-sdk-go/private/protocol"
- "github.com/aws/aws-sdk-go/private/protocol/restxml"
- )
- const opCreateCloudFrontOriginAccessIdentity = "CreateCloudFrontOriginAccessIdentity2018_11_05"
- // CreateCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the
- // client's request for the CreateCloudFrontOriginAccessIdentity operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See CreateCloudFrontOriginAccessIdentity for more information on using the CreateCloudFrontOriginAccessIdentity
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the CreateCloudFrontOriginAccessIdentityRequest method.
- // req, resp := client.CreateCloudFrontOriginAccessIdentityRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreateCloudFrontOriginAccessIdentity
- func (c *CloudFront) CreateCloudFrontOriginAccessIdentityRequest(input *CreateCloudFrontOriginAccessIdentityInput) (req *request.Request, output *CreateCloudFrontOriginAccessIdentityOutput) {
- op := &request.Operation{
- Name: opCreateCloudFrontOriginAccessIdentity,
- HTTPMethod: "POST",
- HTTPPath: "/2018-11-05/origin-access-identity/cloudfront",
- }
- if input == nil {
- input = &CreateCloudFrontOriginAccessIdentityInput{}
- }
- output = &CreateCloudFrontOriginAccessIdentityOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // CreateCloudFrontOriginAccessIdentity API operation for Amazon CloudFront.
- //
- // Creates a new origin access identity. If you're using Amazon S3 for your
- // origin, you can use an origin access identity to require users to access
- // your content using a CloudFront URL instead of the Amazon S3 URL. For more
- // information about how to use origin access identities, see Serving Private
- // Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html)
- // in the Amazon CloudFront Developer Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation CreateCloudFrontOriginAccessIdentity for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeOriginAccessIdentityAlreadyExists "CloudFrontOriginAccessIdentityAlreadyExists"
- // If the CallerReference is a value you already sent in a previous request
- // to create an identity but the content of the CloudFrontOriginAccessIdentityConfig
- // is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists
- // error.
- //
- // * ErrCodeMissingBody "MissingBody"
- // This operation requires a body. Ensure that the body is present and the Content-Type
- // header is set.
- //
- // * ErrCodeTooManyCloudFrontOriginAccessIdentities "TooManyCloudFrontOriginAccessIdentities"
- // Processing your request would cause you to exceed the maximum number of origin
- // access identities allowed.
- //
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeInconsistentQuantities "InconsistentQuantities"
- // The value of Quantity and the size of Items don't match.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreateCloudFrontOriginAccessIdentity
- func (c *CloudFront) CreateCloudFrontOriginAccessIdentity(input *CreateCloudFrontOriginAccessIdentityInput) (*CreateCloudFrontOriginAccessIdentityOutput, error) {
- req, out := c.CreateCloudFrontOriginAccessIdentityRequest(input)
- return out, req.Send()
- }
- // CreateCloudFrontOriginAccessIdentityWithContext is the same as CreateCloudFrontOriginAccessIdentity with the addition of
- // the ability to pass a context and additional request options.
- //
- // See CreateCloudFrontOriginAccessIdentity for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) CreateCloudFrontOriginAccessIdentityWithContext(ctx aws.Context, input *CreateCloudFrontOriginAccessIdentityInput, opts ...request.Option) (*CreateCloudFrontOriginAccessIdentityOutput, error) {
- req, out := c.CreateCloudFrontOriginAccessIdentityRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opCreateDistribution = "CreateDistribution2018_11_05"
- // CreateDistributionRequest generates a "aws/request.Request" representing the
- // client's request for the CreateDistribution operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See CreateDistribution for more information on using the CreateDistribution
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the CreateDistributionRequest method.
- // req, resp := client.CreateDistributionRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreateDistribution
- func (c *CloudFront) CreateDistributionRequest(input *CreateDistributionInput) (req *request.Request, output *CreateDistributionOutput) {
- op := &request.Operation{
- Name: opCreateDistribution,
- HTTPMethod: "POST",
- HTTPPath: "/2018-11-05/distribution",
- }
- if input == nil {
- input = &CreateDistributionInput{}
- }
- output = &CreateDistributionOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // CreateDistribution API operation for Amazon CloudFront.
- //
- // Creates a new web distribution. You create a CloudFront distribution to tell
- // CloudFront where you want content to be delivered from, and the details about
- // how to track and manage content delivery. Send a POST request to the /CloudFront
- // API version/distribution/distribution ID resource.
- //
- // When you update a distribution, there are more required fields than when
- // you create a distribution. When you update your distribution by using UpdateDistribution,
- // follow the steps included in the documentation to get the current configuration
- // and then make your updates. This helps to make sure that you include all
- // of the required fields. To view a summary, see Required Fields for Create
- // Distribution and Update Distribution (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-overview-required-fields.html)
- // in the Amazon CloudFront Developer Guide.
- //
- // If you are using Adobe Flash Media Server's RTMP protocol, you set up a different
- // kind of CloudFront distribution. For more information, see CreateStreamingDistribution.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation CreateDistribution for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeCNAMEAlreadyExists "CNAMEAlreadyExists"
- //
- // * ErrCodeDistributionAlreadyExists "DistributionAlreadyExists"
- // The caller reference you attempted to create the distribution with is associated
- // with another distribution.
- //
- // * ErrCodeInvalidOrigin "InvalidOrigin"
- // The Amazon S3 origin server specified does not refer to a valid Amazon S3
- // bucket.
- //
- // * ErrCodeInvalidOriginAccessIdentity "InvalidOriginAccessIdentity"
- // The origin access identity is not valid or doesn't exist.
- //
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeTooManyTrustedSigners "TooManyTrustedSigners"
- // Your request contains more trusted signers than are allowed per distribution.
- //
- // * ErrCodeTrustedSignerDoesNotExist "TrustedSignerDoesNotExist"
- // One or more of your trusted signers don't exist.
- //
- // * ErrCodeInvalidViewerCertificate "InvalidViewerCertificate"
- //
- // * ErrCodeInvalidMinimumProtocolVersion "InvalidMinimumProtocolVersion"
- //
- // * ErrCodeMissingBody "MissingBody"
- // This operation requires a body. Ensure that the body is present and the Content-Type
- // header is set.
- //
- // * ErrCodeTooManyDistributionCNAMEs "TooManyDistributionCNAMEs"
- // Your request contains more CNAMEs than are allowed per distribution.
- //
- // * ErrCodeTooManyDistributions "TooManyDistributions"
- // Processing your request would cause you to exceed the maximum number of distributions
- // allowed.
- //
- // * ErrCodeInvalidDefaultRootObject "InvalidDefaultRootObject"
- // The default root object file name is too big or contains an invalid character.
- //
- // * ErrCodeInvalidRelativePath "InvalidRelativePath"
- // The relative path is too big, is not URL-encoded, or does not begin with
- // a slash (/).
- //
- // * ErrCodeInvalidErrorCode "InvalidErrorCode"
- //
- // * ErrCodeInvalidResponseCode "InvalidResponseCode"
- //
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeInvalidRequiredProtocol "InvalidRequiredProtocol"
- // This operation requires the HTTPS protocol. Ensure that you specify the HTTPS
- // protocol in your request, or omit the RequiredProtocols element from your
- // distribution configuration.
- //
- // * ErrCodeNoSuchOrigin "NoSuchOrigin"
- // No origin exists with the specified Origin Id.
- //
- // * ErrCodeTooManyOrigins "TooManyOrigins"
- // You cannot create more origins for the distribution.
- //
- // * ErrCodeTooManyOriginGroupsPerDistribution "TooManyOriginGroupsPerDistribution"
- // Processing your request would cause you to exceed the maximum number of origin
- // groups allowed.
- //
- // * ErrCodeTooManyCacheBehaviors "TooManyCacheBehaviors"
- // You cannot create more cache behaviors for the distribution.
- //
- // * ErrCodeTooManyCookieNamesInWhiteList "TooManyCookieNamesInWhiteList"
- // Your request contains more cookie names in the whitelist than are allowed
- // per cache behavior.
- //
- // * ErrCodeInvalidForwardCookies "InvalidForwardCookies"
- // Your request contains forward cookies option which doesn't match with the
- // expectation for the whitelisted list of cookie names. Either list of cookie
- // names has been specified when not allowed or list of cookie names is missing
- // when expected.
- //
- // * ErrCodeTooManyHeadersInForwardedValues "TooManyHeadersInForwardedValues"
- //
- // * ErrCodeInvalidHeadersForS3Origin "InvalidHeadersForS3Origin"
- //
- // * ErrCodeInconsistentQuantities "InconsistentQuantities"
- // The value of Quantity and the size of Items don't match.
- //
- // * ErrCodeTooManyCertificates "TooManyCertificates"
- // You cannot create anymore custom SSL/TLS certificates.
- //
- // * ErrCodeInvalidLocationCode "InvalidLocationCode"
- //
- // * ErrCodeInvalidGeoRestrictionParameter "InvalidGeoRestrictionParameter"
- //
- // * ErrCodeInvalidProtocolSettings "InvalidProtocolSettings"
- // You cannot specify SSLv3 as the minimum protocol version if you only want
- // to support only clients that support Server Name Indication (SNI).
- //
- // * ErrCodeInvalidTTLOrder "InvalidTTLOrder"
- //
- // * ErrCodeInvalidWebACLId "InvalidWebACLId"
- //
- // * ErrCodeTooManyOriginCustomHeaders "TooManyOriginCustomHeaders"
- //
- // * ErrCodeTooManyQueryStringParameters "TooManyQueryStringParameters"
- //
- // * ErrCodeInvalidQueryStringParameters "InvalidQueryStringParameters"
- //
- // * ErrCodeTooManyDistributionsWithLambdaAssociations "TooManyDistributionsWithLambdaAssociations"
- // Processing your request would cause the maximum number of distributions with
- // Lambda function associations per owner to be exceeded.
- //
- // * ErrCodeTooManyLambdaFunctionAssociations "TooManyLambdaFunctionAssociations"
- // Your request contains more Lambda function associations than are allowed
- // per distribution.
- //
- // * ErrCodeInvalidLambdaFunctionAssociation "InvalidLambdaFunctionAssociation"
- // The specified Lambda function association is invalid.
- //
- // * ErrCodeInvalidOriginReadTimeout "InvalidOriginReadTimeout"
- //
- // * ErrCodeInvalidOriginKeepaliveTimeout "InvalidOriginKeepaliveTimeout"
- //
- // * ErrCodeNoSuchFieldLevelEncryptionConfig "NoSuchFieldLevelEncryptionConfig"
- // The specified configuration for field-level encryption doesn't exist.
- //
- // * ErrCodeIllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior "IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior"
- // The specified configuration for field-level encryption can't be associated
- // with the specified cache behavior.
- //
- // * ErrCodeTooManyDistributionsAssociatedToFieldLevelEncryptionConfig "TooManyDistributionsAssociatedToFieldLevelEncryptionConfig"
- // The maximum number of distributions have been associated with the specified
- // configuration for field-level encryption.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreateDistribution
- func (c *CloudFront) CreateDistribution(input *CreateDistributionInput) (*CreateDistributionOutput, error) {
- req, out := c.CreateDistributionRequest(input)
- return out, req.Send()
- }
- // CreateDistributionWithContext is the same as CreateDistribution with the addition of
- // the ability to pass a context and additional request options.
- //
- // See CreateDistribution for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) CreateDistributionWithContext(ctx aws.Context, input *CreateDistributionInput, opts ...request.Option) (*CreateDistributionOutput, error) {
- req, out := c.CreateDistributionRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opCreateDistributionWithTags = "CreateDistributionWithTags2018_11_05"
- // CreateDistributionWithTagsRequest generates a "aws/request.Request" representing the
- // client's request for the CreateDistributionWithTags operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See CreateDistributionWithTags for more information on using the CreateDistributionWithTags
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the CreateDistributionWithTagsRequest method.
- // req, resp := client.CreateDistributionWithTagsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreateDistributionWithTags
- func (c *CloudFront) CreateDistributionWithTagsRequest(input *CreateDistributionWithTagsInput) (req *request.Request, output *CreateDistributionWithTagsOutput) {
- op := &request.Operation{
- Name: opCreateDistributionWithTags,
- HTTPMethod: "POST",
- HTTPPath: "/2018-11-05/distribution?WithTags",
- }
- if input == nil {
- input = &CreateDistributionWithTagsInput{}
- }
- output = &CreateDistributionWithTagsOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // CreateDistributionWithTags API operation for Amazon CloudFront.
- //
- // Create a new distribution with tags.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation CreateDistributionWithTags for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeCNAMEAlreadyExists "CNAMEAlreadyExists"
- //
- // * ErrCodeDistributionAlreadyExists "DistributionAlreadyExists"
- // The caller reference you attempted to create the distribution with is associated
- // with another distribution.
- //
- // * ErrCodeInvalidOrigin "InvalidOrigin"
- // The Amazon S3 origin server specified does not refer to a valid Amazon S3
- // bucket.
- //
- // * ErrCodeInvalidOriginAccessIdentity "InvalidOriginAccessIdentity"
- // The origin access identity is not valid or doesn't exist.
- //
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeTooManyTrustedSigners "TooManyTrustedSigners"
- // Your request contains more trusted signers than are allowed per distribution.
- //
- // * ErrCodeTrustedSignerDoesNotExist "TrustedSignerDoesNotExist"
- // One or more of your trusted signers don't exist.
- //
- // * ErrCodeInvalidViewerCertificate "InvalidViewerCertificate"
- //
- // * ErrCodeInvalidMinimumProtocolVersion "InvalidMinimumProtocolVersion"
- //
- // * ErrCodeMissingBody "MissingBody"
- // This operation requires a body. Ensure that the body is present and the Content-Type
- // header is set.
- //
- // * ErrCodeTooManyDistributionCNAMEs "TooManyDistributionCNAMEs"
- // Your request contains more CNAMEs than are allowed per distribution.
- //
- // * ErrCodeTooManyDistributions "TooManyDistributions"
- // Processing your request would cause you to exceed the maximum number of distributions
- // allowed.
- //
- // * ErrCodeInvalidDefaultRootObject "InvalidDefaultRootObject"
- // The default root object file name is too big or contains an invalid character.
- //
- // * ErrCodeInvalidRelativePath "InvalidRelativePath"
- // The relative path is too big, is not URL-encoded, or does not begin with
- // a slash (/).
- //
- // * ErrCodeInvalidErrorCode "InvalidErrorCode"
- //
- // * ErrCodeInvalidResponseCode "InvalidResponseCode"
- //
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeInvalidRequiredProtocol "InvalidRequiredProtocol"
- // This operation requires the HTTPS protocol. Ensure that you specify the HTTPS
- // protocol in your request, or omit the RequiredProtocols element from your
- // distribution configuration.
- //
- // * ErrCodeNoSuchOrigin "NoSuchOrigin"
- // No origin exists with the specified Origin Id.
- //
- // * ErrCodeTooManyOrigins "TooManyOrigins"
- // You cannot create more origins for the distribution.
- //
- // * ErrCodeTooManyOriginGroupsPerDistribution "TooManyOriginGroupsPerDistribution"
- // Processing your request would cause you to exceed the maximum number of origin
- // groups allowed.
- //
- // * ErrCodeTooManyCacheBehaviors "TooManyCacheBehaviors"
- // You cannot create more cache behaviors for the distribution.
- //
- // * ErrCodeTooManyCookieNamesInWhiteList "TooManyCookieNamesInWhiteList"
- // Your request contains more cookie names in the whitelist than are allowed
- // per cache behavior.
- //
- // * ErrCodeInvalidForwardCookies "InvalidForwardCookies"
- // Your request contains forward cookies option which doesn't match with the
- // expectation for the whitelisted list of cookie names. Either list of cookie
- // names has been specified when not allowed or list of cookie names is missing
- // when expected.
- //
- // * ErrCodeTooManyHeadersInForwardedValues "TooManyHeadersInForwardedValues"
- //
- // * ErrCodeInvalidHeadersForS3Origin "InvalidHeadersForS3Origin"
- //
- // * ErrCodeInconsistentQuantities "InconsistentQuantities"
- // The value of Quantity and the size of Items don't match.
- //
- // * ErrCodeTooManyCertificates "TooManyCertificates"
- // You cannot create anymore custom SSL/TLS certificates.
- //
- // * ErrCodeInvalidLocationCode "InvalidLocationCode"
- //
- // * ErrCodeInvalidGeoRestrictionParameter "InvalidGeoRestrictionParameter"
- //
- // * ErrCodeInvalidProtocolSettings "InvalidProtocolSettings"
- // You cannot specify SSLv3 as the minimum protocol version if you only want
- // to support only clients that support Server Name Indication (SNI).
- //
- // * ErrCodeInvalidTTLOrder "InvalidTTLOrder"
- //
- // * ErrCodeInvalidWebACLId "InvalidWebACLId"
- //
- // * ErrCodeTooManyOriginCustomHeaders "TooManyOriginCustomHeaders"
- //
- // * ErrCodeInvalidTagging "InvalidTagging"
- //
- // * ErrCodeTooManyQueryStringParameters "TooManyQueryStringParameters"
- //
- // * ErrCodeInvalidQueryStringParameters "InvalidQueryStringParameters"
- //
- // * ErrCodeTooManyDistributionsWithLambdaAssociations "TooManyDistributionsWithLambdaAssociations"
- // Processing your request would cause the maximum number of distributions with
- // Lambda function associations per owner to be exceeded.
- //
- // * ErrCodeTooManyLambdaFunctionAssociations "TooManyLambdaFunctionAssociations"
- // Your request contains more Lambda function associations than are allowed
- // per distribution.
- //
- // * ErrCodeInvalidLambdaFunctionAssociation "InvalidLambdaFunctionAssociation"
- // The specified Lambda function association is invalid.
- //
- // * ErrCodeInvalidOriginReadTimeout "InvalidOriginReadTimeout"
- //
- // * ErrCodeInvalidOriginKeepaliveTimeout "InvalidOriginKeepaliveTimeout"
- //
- // * ErrCodeNoSuchFieldLevelEncryptionConfig "NoSuchFieldLevelEncryptionConfig"
- // The specified configuration for field-level encryption doesn't exist.
- //
- // * ErrCodeIllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior "IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior"
- // The specified configuration for field-level encryption can't be associated
- // with the specified cache behavior.
- //
- // * ErrCodeTooManyDistributionsAssociatedToFieldLevelEncryptionConfig "TooManyDistributionsAssociatedToFieldLevelEncryptionConfig"
- // The maximum number of distributions have been associated with the specified
- // configuration for field-level encryption.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreateDistributionWithTags
- func (c *CloudFront) CreateDistributionWithTags(input *CreateDistributionWithTagsInput) (*CreateDistributionWithTagsOutput, error) {
- req, out := c.CreateDistributionWithTagsRequest(input)
- return out, req.Send()
- }
- // CreateDistributionWithTagsWithContext is the same as CreateDistributionWithTags with the addition of
- // the ability to pass a context and additional request options.
- //
- // See CreateDistributionWithTags for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) CreateDistributionWithTagsWithContext(ctx aws.Context, input *CreateDistributionWithTagsInput, opts ...request.Option) (*CreateDistributionWithTagsOutput, error) {
- req, out := c.CreateDistributionWithTagsRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opCreateFieldLevelEncryptionConfig = "CreateFieldLevelEncryptionConfig2018_11_05"
- // CreateFieldLevelEncryptionConfigRequest generates a "aws/request.Request" representing the
- // client's request for the CreateFieldLevelEncryptionConfig operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See CreateFieldLevelEncryptionConfig for more information on using the CreateFieldLevelEncryptionConfig
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the CreateFieldLevelEncryptionConfigRequest method.
- // req, resp := client.CreateFieldLevelEncryptionConfigRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreateFieldLevelEncryptionConfig
- func (c *CloudFront) CreateFieldLevelEncryptionConfigRequest(input *CreateFieldLevelEncryptionConfigInput) (req *request.Request, output *CreateFieldLevelEncryptionConfigOutput) {
- op := &request.Operation{
- Name: opCreateFieldLevelEncryptionConfig,
- HTTPMethod: "POST",
- HTTPPath: "/2018-11-05/field-level-encryption",
- }
- if input == nil {
- input = &CreateFieldLevelEncryptionConfigInput{}
- }
- output = &CreateFieldLevelEncryptionConfigOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // CreateFieldLevelEncryptionConfig API operation for Amazon CloudFront.
- //
- // Create a new field-level encryption configuration.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation CreateFieldLevelEncryptionConfig for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeInconsistentQuantities "InconsistentQuantities"
- // The value of Quantity and the size of Items don't match.
- //
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeNoSuchFieldLevelEncryptionProfile "NoSuchFieldLevelEncryptionProfile"
- // The specified profile for field-level encryption doesn't exist.
- //
- // * ErrCodeFieldLevelEncryptionConfigAlreadyExists "FieldLevelEncryptionConfigAlreadyExists"
- // The specified configuration for field-level encryption already exists.
- //
- // * ErrCodeTooManyFieldLevelEncryptionConfigs "TooManyFieldLevelEncryptionConfigs"
- // The maximum number of configurations for field-level encryption have been
- // created.
- //
- // * ErrCodeTooManyFieldLevelEncryptionQueryArgProfiles "TooManyFieldLevelEncryptionQueryArgProfiles"
- // The maximum number of query arg profiles for field-level encryption have
- // been created.
- //
- // * ErrCodeTooManyFieldLevelEncryptionContentTypeProfiles "TooManyFieldLevelEncryptionContentTypeProfiles"
- // The maximum number of content type profiles for field-level encryption have
- // been created.
- //
- // * ErrCodeQueryArgProfileEmpty "QueryArgProfileEmpty"
- // No profile specified for the field-level encryption query argument.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreateFieldLevelEncryptionConfig
- func (c *CloudFront) CreateFieldLevelEncryptionConfig(input *CreateFieldLevelEncryptionConfigInput) (*CreateFieldLevelEncryptionConfigOutput, error) {
- req, out := c.CreateFieldLevelEncryptionConfigRequest(input)
- return out, req.Send()
- }
- // CreateFieldLevelEncryptionConfigWithContext is the same as CreateFieldLevelEncryptionConfig with the addition of
- // the ability to pass a context and additional request options.
- //
- // See CreateFieldLevelEncryptionConfig for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) CreateFieldLevelEncryptionConfigWithContext(ctx aws.Context, input *CreateFieldLevelEncryptionConfigInput, opts ...request.Option) (*CreateFieldLevelEncryptionConfigOutput, error) {
- req, out := c.CreateFieldLevelEncryptionConfigRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opCreateFieldLevelEncryptionProfile = "CreateFieldLevelEncryptionProfile2018_11_05"
- // CreateFieldLevelEncryptionProfileRequest generates a "aws/request.Request" representing the
- // client's request for the CreateFieldLevelEncryptionProfile operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See CreateFieldLevelEncryptionProfile for more information on using the CreateFieldLevelEncryptionProfile
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the CreateFieldLevelEncryptionProfileRequest method.
- // req, resp := client.CreateFieldLevelEncryptionProfileRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreateFieldLevelEncryptionProfile
- func (c *CloudFront) CreateFieldLevelEncryptionProfileRequest(input *CreateFieldLevelEncryptionProfileInput) (req *request.Request, output *CreateFieldLevelEncryptionProfileOutput) {
- op := &request.Operation{
- Name: opCreateFieldLevelEncryptionProfile,
- HTTPMethod: "POST",
- HTTPPath: "/2018-11-05/field-level-encryption-profile",
- }
- if input == nil {
- input = &CreateFieldLevelEncryptionProfileInput{}
- }
- output = &CreateFieldLevelEncryptionProfileOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // CreateFieldLevelEncryptionProfile API operation for Amazon CloudFront.
- //
- // Create a field-level encryption profile.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation CreateFieldLevelEncryptionProfile for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeInconsistentQuantities "InconsistentQuantities"
- // The value of Quantity and the size of Items don't match.
- //
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeNoSuchPublicKey "NoSuchPublicKey"
- // The specified public key doesn't exist.
- //
- // * ErrCodeFieldLevelEncryptionProfileAlreadyExists "FieldLevelEncryptionProfileAlreadyExists"
- // The specified profile for field-level encryption already exists.
- //
- // * ErrCodeFieldLevelEncryptionProfileSizeExceeded "FieldLevelEncryptionProfileSizeExceeded"
- // The maximum size of a profile for field-level encryption was exceeded.
- //
- // * ErrCodeTooManyFieldLevelEncryptionProfiles "TooManyFieldLevelEncryptionProfiles"
- // The maximum number of profiles for field-level encryption have been created.
- //
- // * ErrCodeTooManyFieldLevelEncryptionEncryptionEntities "TooManyFieldLevelEncryptionEncryptionEntities"
- // The maximum number of encryption entities for field-level encryption have
- // been created.
- //
- // * ErrCodeTooManyFieldLevelEncryptionFieldPatterns "TooManyFieldLevelEncryptionFieldPatterns"
- // The maximum number of field patterns for field-level encryption have been
- // created.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreateFieldLevelEncryptionProfile
- func (c *CloudFront) CreateFieldLevelEncryptionProfile(input *CreateFieldLevelEncryptionProfileInput) (*CreateFieldLevelEncryptionProfileOutput, error) {
- req, out := c.CreateFieldLevelEncryptionProfileRequest(input)
- return out, req.Send()
- }
- // CreateFieldLevelEncryptionProfileWithContext is the same as CreateFieldLevelEncryptionProfile with the addition of
- // the ability to pass a context and additional request options.
- //
- // See CreateFieldLevelEncryptionProfile for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) CreateFieldLevelEncryptionProfileWithContext(ctx aws.Context, input *CreateFieldLevelEncryptionProfileInput, opts ...request.Option) (*CreateFieldLevelEncryptionProfileOutput, error) {
- req, out := c.CreateFieldLevelEncryptionProfileRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opCreateInvalidation = "CreateInvalidation2018_11_05"
- // CreateInvalidationRequest generates a "aws/request.Request" representing the
- // client's request for the CreateInvalidation operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See CreateInvalidation for more information on using the CreateInvalidation
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the CreateInvalidationRequest method.
- // req, resp := client.CreateInvalidationRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreateInvalidation
- func (c *CloudFront) CreateInvalidationRequest(input *CreateInvalidationInput) (req *request.Request, output *CreateInvalidationOutput) {
- op := &request.Operation{
- Name: opCreateInvalidation,
- HTTPMethod: "POST",
- HTTPPath: "/2018-11-05/distribution/{DistributionId}/invalidation",
- }
- if input == nil {
- input = &CreateInvalidationInput{}
- }
- output = &CreateInvalidationOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // CreateInvalidation API operation for Amazon CloudFront.
- //
- // Create a new invalidation.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation CreateInvalidation for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeMissingBody "MissingBody"
- // This operation requires a body. Ensure that the body is present and the Content-Type
- // header is set.
- //
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeNoSuchDistribution "NoSuchDistribution"
- // The specified distribution does not exist.
- //
- // * ErrCodeBatchTooLarge "BatchTooLarge"
- //
- // * ErrCodeTooManyInvalidationsInProgress "TooManyInvalidationsInProgress"
- // You have exceeded the maximum number of allowable InProgress invalidation
- // batch requests, or invalidation objects.
- //
- // * ErrCodeInconsistentQuantities "InconsistentQuantities"
- // The value of Quantity and the size of Items don't match.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreateInvalidation
- func (c *CloudFront) CreateInvalidation(input *CreateInvalidationInput) (*CreateInvalidationOutput, error) {
- req, out := c.CreateInvalidationRequest(input)
- return out, req.Send()
- }
- // CreateInvalidationWithContext is the same as CreateInvalidation with the addition of
- // the ability to pass a context and additional request options.
- //
- // See CreateInvalidation for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) CreateInvalidationWithContext(ctx aws.Context, input *CreateInvalidationInput, opts ...request.Option) (*CreateInvalidationOutput, error) {
- req, out := c.CreateInvalidationRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opCreatePublicKey = "CreatePublicKey2018_11_05"
- // CreatePublicKeyRequest generates a "aws/request.Request" representing the
- // client's request for the CreatePublicKey operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See CreatePublicKey for more information on using the CreatePublicKey
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the CreatePublicKeyRequest method.
- // req, resp := client.CreatePublicKeyRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreatePublicKey
- func (c *CloudFront) CreatePublicKeyRequest(input *CreatePublicKeyInput) (req *request.Request, output *CreatePublicKeyOutput) {
- op := &request.Operation{
- Name: opCreatePublicKey,
- HTTPMethod: "POST",
- HTTPPath: "/2018-11-05/public-key",
- }
- if input == nil {
- input = &CreatePublicKeyInput{}
- }
- output = &CreatePublicKeyOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // CreatePublicKey API operation for Amazon CloudFront.
- //
- // Add a new public key to CloudFront to use, for example, for field-level encryption.
- // You can add a maximum of 10 public keys with one AWS account.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation CreatePublicKey for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodePublicKeyAlreadyExists "PublicKeyAlreadyExists"
- // The specified public key already exists.
- //
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeTooManyPublicKeys "TooManyPublicKeys"
- // The maximum number of public keys for field-level encryption have been created.
- // To create a new public key, delete one of the existing keys.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreatePublicKey
- func (c *CloudFront) CreatePublicKey(input *CreatePublicKeyInput) (*CreatePublicKeyOutput, error) {
- req, out := c.CreatePublicKeyRequest(input)
- return out, req.Send()
- }
- // CreatePublicKeyWithContext is the same as CreatePublicKey with the addition of
- // the ability to pass a context and additional request options.
- //
- // See CreatePublicKey for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) CreatePublicKeyWithContext(ctx aws.Context, input *CreatePublicKeyInput, opts ...request.Option) (*CreatePublicKeyOutput, error) {
- req, out := c.CreatePublicKeyRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opCreateStreamingDistribution = "CreateStreamingDistribution2018_11_05"
- // CreateStreamingDistributionRequest generates a "aws/request.Request" representing the
- // client's request for the CreateStreamingDistribution operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See CreateStreamingDistribution for more information on using the CreateStreamingDistribution
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the CreateStreamingDistributionRequest method.
- // req, resp := client.CreateStreamingDistributionRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreateStreamingDistribution
- func (c *CloudFront) CreateStreamingDistributionRequest(input *CreateStreamingDistributionInput) (req *request.Request, output *CreateStreamingDistributionOutput) {
- op := &request.Operation{
- Name: opCreateStreamingDistribution,
- HTTPMethod: "POST",
- HTTPPath: "/2018-11-05/streaming-distribution",
- }
- if input == nil {
- input = &CreateStreamingDistributionInput{}
- }
- output = &CreateStreamingDistributionOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // CreateStreamingDistribution API operation for Amazon CloudFront.
- //
- // Creates a new RMTP distribution. An RTMP distribution is similar to a web
- // distribution, but an RTMP distribution streams media files using the Adobe
- // Real-Time Messaging Protocol (RTMP) instead of serving files using HTTP.
- //
- // To create a new web distribution, submit a POST request to the CloudFront
- // API version/distribution resource. The request body must include a document
- // with a StreamingDistributionConfig element. The response echoes the StreamingDistributionConfig
- // element and returns other information about the RTMP distribution.
- //
- // To get the status of your request, use the GET StreamingDistribution API
- // action. When the value of Enabled is true and the value of Status is Deployed,
- // your distribution is ready. A distribution usually deploys in less than 15
- // minutes.
- //
- // For more information about web distributions, see Working with RTMP Distributions
- // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-rtmp.html)
- // in the Amazon CloudFront Developer Guide.
- //
- // Beginning with the 2012-05-05 version of the CloudFront API, we made substantial
- // changes to the format of the XML document that you include in the request
- // body when you create or update a web distribution or an RTMP distribution,
- // and when you invalidate objects. With previous versions of the API, we discovered
- // that it was too easy to accidentally delete one or more values for an element
- // that accepts multiple values, for example, CNAMEs and trusted signers. Our
- // changes for the 2012-05-05 release are intended to prevent these accidental
- // deletions and to notify you when there's a mismatch between the number of
- // values you say you're specifying in the Quantity element and the number of
- // values specified.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation CreateStreamingDistribution for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeCNAMEAlreadyExists "CNAMEAlreadyExists"
- //
- // * ErrCodeStreamingDistributionAlreadyExists "StreamingDistributionAlreadyExists"
- //
- // * ErrCodeInvalidOrigin "InvalidOrigin"
- // The Amazon S3 origin server specified does not refer to a valid Amazon S3
- // bucket.
- //
- // * ErrCodeInvalidOriginAccessIdentity "InvalidOriginAccessIdentity"
- // The origin access identity is not valid or doesn't exist.
- //
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeTooManyTrustedSigners "TooManyTrustedSigners"
- // Your request contains more trusted signers than are allowed per distribution.
- //
- // * ErrCodeTrustedSignerDoesNotExist "TrustedSignerDoesNotExist"
- // One or more of your trusted signers don't exist.
- //
- // * ErrCodeMissingBody "MissingBody"
- // This operation requires a body. Ensure that the body is present and the Content-Type
- // header is set.
- //
- // * ErrCodeTooManyStreamingDistributionCNAMEs "TooManyStreamingDistributionCNAMEs"
- //
- // * ErrCodeTooManyStreamingDistributions "TooManyStreamingDistributions"
- // Processing your request would cause you to exceed the maximum number of streaming
- // distributions allowed.
- //
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeInconsistentQuantities "InconsistentQuantities"
- // The value of Quantity and the size of Items don't match.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreateStreamingDistribution
- func (c *CloudFront) CreateStreamingDistribution(input *CreateStreamingDistributionInput) (*CreateStreamingDistributionOutput, error) {
- req, out := c.CreateStreamingDistributionRequest(input)
- return out, req.Send()
- }
- // CreateStreamingDistributionWithContext is the same as CreateStreamingDistribution with the addition of
- // the ability to pass a context and additional request options.
- //
- // See CreateStreamingDistribution for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) CreateStreamingDistributionWithContext(ctx aws.Context, input *CreateStreamingDistributionInput, opts ...request.Option) (*CreateStreamingDistributionOutput, error) {
- req, out := c.CreateStreamingDistributionRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opCreateStreamingDistributionWithTags = "CreateStreamingDistributionWithTags2018_11_05"
- // CreateStreamingDistributionWithTagsRequest generates a "aws/request.Request" representing the
- // client's request for the CreateStreamingDistributionWithTags operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See CreateStreamingDistributionWithTags for more information on using the CreateStreamingDistributionWithTags
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the CreateStreamingDistributionWithTagsRequest method.
- // req, resp := client.CreateStreamingDistributionWithTagsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreateStreamingDistributionWithTags
- func (c *CloudFront) CreateStreamingDistributionWithTagsRequest(input *CreateStreamingDistributionWithTagsInput) (req *request.Request, output *CreateStreamingDistributionWithTagsOutput) {
- op := &request.Operation{
- Name: opCreateStreamingDistributionWithTags,
- HTTPMethod: "POST",
- HTTPPath: "/2018-11-05/streaming-distribution?WithTags",
- }
- if input == nil {
- input = &CreateStreamingDistributionWithTagsInput{}
- }
- output = &CreateStreamingDistributionWithTagsOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // CreateStreamingDistributionWithTags API operation for Amazon CloudFront.
- //
- // Create a new streaming distribution with tags.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation CreateStreamingDistributionWithTags for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeCNAMEAlreadyExists "CNAMEAlreadyExists"
- //
- // * ErrCodeStreamingDistributionAlreadyExists "StreamingDistributionAlreadyExists"
- //
- // * ErrCodeInvalidOrigin "InvalidOrigin"
- // The Amazon S3 origin server specified does not refer to a valid Amazon S3
- // bucket.
- //
- // * ErrCodeInvalidOriginAccessIdentity "InvalidOriginAccessIdentity"
- // The origin access identity is not valid or doesn't exist.
- //
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeTooManyTrustedSigners "TooManyTrustedSigners"
- // Your request contains more trusted signers than are allowed per distribution.
- //
- // * ErrCodeTrustedSignerDoesNotExist "TrustedSignerDoesNotExist"
- // One or more of your trusted signers don't exist.
- //
- // * ErrCodeMissingBody "MissingBody"
- // This operation requires a body. Ensure that the body is present and the Content-Type
- // header is set.
- //
- // * ErrCodeTooManyStreamingDistributionCNAMEs "TooManyStreamingDistributionCNAMEs"
- //
- // * ErrCodeTooManyStreamingDistributions "TooManyStreamingDistributions"
- // Processing your request would cause you to exceed the maximum number of streaming
- // distributions allowed.
- //
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeInconsistentQuantities "InconsistentQuantities"
- // The value of Quantity and the size of Items don't match.
- //
- // * ErrCodeInvalidTagging "InvalidTagging"
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/CreateStreamingDistributionWithTags
- func (c *CloudFront) CreateStreamingDistributionWithTags(input *CreateStreamingDistributionWithTagsInput) (*CreateStreamingDistributionWithTagsOutput, error) {
- req, out := c.CreateStreamingDistributionWithTagsRequest(input)
- return out, req.Send()
- }
- // CreateStreamingDistributionWithTagsWithContext is the same as CreateStreamingDistributionWithTags with the addition of
- // the ability to pass a context and additional request options.
- //
- // See CreateStreamingDistributionWithTags for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) CreateStreamingDistributionWithTagsWithContext(ctx aws.Context, input *CreateStreamingDistributionWithTagsInput, opts ...request.Option) (*CreateStreamingDistributionWithTagsOutput, error) {
- req, out := c.CreateStreamingDistributionWithTagsRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opDeleteCloudFrontOriginAccessIdentity = "DeleteCloudFrontOriginAccessIdentity2018_11_05"
- // DeleteCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteCloudFrontOriginAccessIdentity operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See DeleteCloudFrontOriginAccessIdentity for more information on using the DeleteCloudFrontOriginAccessIdentity
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the DeleteCloudFrontOriginAccessIdentityRequest method.
- // req, resp := client.DeleteCloudFrontOriginAccessIdentityRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/DeleteCloudFrontOriginAccessIdentity
- func (c *CloudFront) DeleteCloudFrontOriginAccessIdentityRequest(input *DeleteCloudFrontOriginAccessIdentityInput) (req *request.Request, output *DeleteCloudFrontOriginAccessIdentityOutput) {
- op := &request.Operation{
- Name: opDeleteCloudFrontOriginAccessIdentity,
- HTTPMethod: "DELETE",
- HTTPPath: "/2018-11-05/origin-access-identity/cloudfront/{Id}",
- }
- if input == nil {
- input = &DeleteCloudFrontOriginAccessIdentityInput{}
- }
- output = &DeleteCloudFrontOriginAccessIdentityOutput{}
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
- return
- }
- // DeleteCloudFrontOriginAccessIdentity API operation for Amazon CloudFront.
- //
- // Delete an origin access identity.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation DeleteCloudFrontOriginAccessIdentity for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion"
- // The If-Match version is missing or not valid for the distribution.
- //
- // * ErrCodeNoSuchCloudFrontOriginAccessIdentity "NoSuchCloudFrontOriginAccessIdentity"
- // The specified origin access identity does not exist.
- //
- // * ErrCodePreconditionFailed "PreconditionFailed"
- // The precondition given in one or more of the request-header fields evaluated
- // to false.
- //
- // * ErrCodeOriginAccessIdentityInUse "CloudFrontOriginAccessIdentityInUse"
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/DeleteCloudFrontOriginAccessIdentity
- func (c *CloudFront) DeleteCloudFrontOriginAccessIdentity(input *DeleteCloudFrontOriginAccessIdentityInput) (*DeleteCloudFrontOriginAccessIdentityOutput, error) {
- req, out := c.DeleteCloudFrontOriginAccessIdentityRequest(input)
- return out, req.Send()
- }
- // DeleteCloudFrontOriginAccessIdentityWithContext is the same as DeleteCloudFrontOriginAccessIdentity with the addition of
- // the ability to pass a context and additional request options.
- //
- // See DeleteCloudFrontOriginAccessIdentity for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) DeleteCloudFrontOriginAccessIdentityWithContext(ctx aws.Context, input *DeleteCloudFrontOriginAccessIdentityInput, opts ...request.Option) (*DeleteCloudFrontOriginAccessIdentityOutput, error) {
- req, out := c.DeleteCloudFrontOriginAccessIdentityRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opDeleteDistribution = "DeleteDistribution2018_11_05"
- // DeleteDistributionRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteDistribution operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See DeleteDistribution for more information on using the DeleteDistribution
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the DeleteDistributionRequest method.
- // req, resp := client.DeleteDistributionRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/DeleteDistribution
- func (c *CloudFront) DeleteDistributionRequest(input *DeleteDistributionInput) (req *request.Request, output *DeleteDistributionOutput) {
- op := &request.Operation{
- Name: opDeleteDistribution,
- HTTPMethod: "DELETE",
- HTTPPath: "/2018-11-05/distribution/{Id}",
- }
- if input == nil {
- input = &DeleteDistributionInput{}
- }
- output = &DeleteDistributionOutput{}
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
- return
- }
- // DeleteDistribution API operation for Amazon CloudFront.
- //
- // Delete a distribution.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation DeleteDistribution for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeDistributionNotDisabled "DistributionNotDisabled"
- //
- // * ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion"
- // The If-Match version is missing or not valid for the distribution.
- //
- // * ErrCodeNoSuchDistribution "NoSuchDistribution"
- // The specified distribution does not exist.
- //
- // * ErrCodePreconditionFailed "PreconditionFailed"
- // The precondition given in one or more of the request-header fields evaluated
- // to false.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/DeleteDistribution
- func (c *CloudFront) DeleteDistribution(input *DeleteDistributionInput) (*DeleteDistributionOutput, error) {
- req, out := c.DeleteDistributionRequest(input)
- return out, req.Send()
- }
- // DeleteDistributionWithContext is the same as DeleteDistribution with the addition of
- // the ability to pass a context and additional request options.
- //
- // See DeleteDistribution for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) DeleteDistributionWithContext(ctx aws.Context, input *DeleteDistributionInput, opts ...request.Option) (*DeleteDistributionOutput, error) {
- req, out := c.DeleteDistributionRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opDeleteFieldLevelEncryptionConfig = "DeleteFieldLevelEncryptionConfig2018_11_05"
- // DeleteFieldLevelEncryptionConfigRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteFieldLevelEncryptionConfig operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See DeleteFieldLevelEncryptionConfig for more information on using the DeleteFieldLevelEncryptionConfig
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the DeleteFieldLevelEncryptionConfigRequest method.
- // req, resp := client.DeleteFieldLevelEncryptionConfigRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/DeleteFieldLevelEncryptionConfig
- func (c *CloudFront) DeleteFieldLevelEncryptionConfigRequest(input *DeleteFieldLevelEncryptionConfigInput) (req *request.Request, output *DeleteFieldLevelEncryptionConfigOutput) {
- op := &request.Operation{
- Name: opDeleteFieldLevelEncryptionConfig,
- HTTPMethod: "DELETE",
- HTTPPath: "/2018-11-05/field-level-encryption/{Id}",
- }
- if input == nil {
- input = &DeleteFieldLevelEncryptionConfigInput{}
- }
- output = &DeleteFieldLevelEncryptionConfigOutput{}
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
- return
- }
- // DeleteFieldLevelEncryptionConfig API operation for Amazon CloudFront.
- //
- // Remove a field-level encryption configuration.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation DeleteFieldLevelEncryptionConfig for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion"
- // The If-Match version is missing or not valid for the distribution.
- //
- // * ErrCodeNoSuchFieldLevelEncryptionConfig "NoSuchFieldLevelEncryptionConfig"
- // The specified configuration for field-level encryption doesn't exist.
- //
- // * ErrCodePreconditionFailed "PreconditionFailed"
- // The precondition given in one or more of the request-header fields evaluated
- // to false.
- //
- // * ErrCodeFieldLevelEncryptionConfigInUse "FieldLevelEncryptionConfigInUse"
- // The specified configuration for field-level encryption is in use.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/DeleteFieldLevelEncryptionConfig
- func (c *CloudFront) DeleteFieldLevelEncryptionConfig(input *DeleteFieldLevelEncryptionConfigInput) (*DeleteFieldLevelEncryptionConfigOutput, error) {
- req, out := c.DeleteFieldLevelEncryptionConfigRequest(input)
- return out, req.Send()
- }
- // DeleteFieldLevelEncryptionConfigWithContext is the same as DeleteFieldLevelEncryptionConfig with the addition of
- // the ability to pass a context and additional request options.
- //
- // See DeleteFieldLevelEncryptionConfig for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) DeleteFieldLevelEncryptionConfigWithContext(ctx aws.Context, input *DeleteFieldLevelEncryptionConfigInput, opts ...request.Option) (*DeleteFieldLevelEncryptionConfigOutput, error) {
- req, out := c.DeleteFieldLevelEncryptionConfigRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opDeleteFieldLevelEncryptionProfile = "DeleteFieldLevelEncryptionProfile2018_11_05"
- // DeleteFieldLevelEncryptionProfileRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteFieldLevelEncryptionProfile operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See DeleteFieldLevelEncryptionProfile for more information on using the DeleteFieldLevelEncryptionProfile
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the DeleteFieldLevelEncryptionProfileRequest method.
- // req, resp := client.DeleteFieldLevelEncryptionProfileRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/DeleteFieldLevelEncryptionProfile
- func (c *CloudFront) DeleteFieldLevelEncryptionProfileRequest(input *DeleteFieldLevelEncryptionProfileInput) (req *request.Request, output *DeleteFieldLevelEncryptionProfileOutput) {
- op := &request.Operation{
- Name: opDeleteFieldLevelEncryptionProfile,
- HTTPMethod: "DELETE",
- HTTPPath: "/2018-11-05/field-level-encryption-profile/{Id}",
- }
- if input == nil {
- input = &DeleteFieldLevelEncryptionProfileInput{}
- }
- output = &DeleteFieldLevelEncryptionProfileOutput{}
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
- return
- }
- // DeleteFieldLevelEncryptionProfile API operation for Amazon CloudFront.
- //
- // Remove a field-level encryption profile.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation DeleteFieldLevelEncryptionProfile for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion"
- // The If-Match version is missing or not valid for the distribution.
- //
- // * ErrCodeNoSuchFieldLevelEncryptionProfile "NoSuchFieldLevelEncryptionProfile"
- // The specified profile for field-level encryption doesn't exist.
- //
- // * ErrCodePreconditionFailed "PreconditionFailed"
- // The precondition given in one or more of the request-header fields evaluated
- // to false.
- //
- // * ErrCodeFieldLevelEncryptionProfileInUse "FieldLevelEncryptionProfileInUse"
- // The specified profile for field-level encryption is in use.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/DeleteFieldLevelEncryptionProfile
- func (c *CloudFront) DeleteFieldLevelEncryptionProfile(input *DeleteFieldLevelEncryptionProfileInput) (*DeleteFieldLevelEncryptionProfileOutput, error) {
- req, out := c.DeleteFieldLevelEncryptionProfileRequest(input)
- return out, req.Send()
- }
- // DeleteFieldLevelEncryptionProfileWithContext is the same as DeleteFieldLevelEncryptionProfile with the addition of
- // the ability to pass a context and additional request options.
- //
- // See DeleteFieldLevelEncryptionProfile for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) DeleteFieldLevelEncryptionProfileWithContext(ctx aws.Context, input *DeleteFieldLevelEncryptionProfileInput, opts ...request.Option) (*DeleteFieldLevelEncryptionProfileOutput, error) {
- req, out := c.DeleteFieldLevelEncryptionProfileRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opDeletePublicKey = "DeletePublicKey2018_11_05"
- // DeletePublicKeyRequest generates a "aws/request.Request" representing the
- // client's request for the DeletePublicKey operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See DeletePublicKey for more information on using the DeletePublicKey
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the DeletePublicKeyRequest method.
- // req, resp := client.DeletePublicKeyRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/DeletePublicKey
- func (c *CloudFront) DeletePublicKeyRequest(input *DeletePublicKeyInput) (req *request.Request, output *DeletePublicKeyOutput) {
- op := &request.Operation{
- Name: opDeletePublicKey,
- HTTPMethod: "DELETE",
- HTTPPath: "/2018-11-05/public-key/{Id}",
- }
- if input == nil {
- input = &DeletePublicKeyInput{}
- }
- output = &DeletePublicKeyOutput{}
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
- return
- }
- // DeletePublicKey API operation for Amazon CloudFront.
- //
- // Remove a public key you previously added to CloudFront.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation DeletePublicKey for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodePublicKeyInUse "PublicKeyInUse"
- // The specified public key is in use.
- //
- // * ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion"
- // The If-Match version is missing or not valid for the distribution.
- //
- // * ErrCodeNoSuchPublicKey "NoSuchPublicKey"
- // The specified public key doesn't exist.
- //
- // * ErrCodePreconditionFailed "PreconditionFailed"
- // The precondition given in one or more of the request-header fields evaluated
- // to false.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/DeletePublicKey
- func (c *CloudFront) DeletePublicKey(input *DeletePublicKeyInput) (*DeletePublicKeyOutput, error) {
- req, out := c.DeletePublicKeyRequest(input)
- return out, req.Send()
- }
- // DeletePublicKeyWithContext is the same as DeletePublicKey with the addition of
- // the ability to pass a context and additional request options.
- //
- // See DeletePublicKey for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) DeletePublicKeyWithContext(ctx aws.Context, input *DeletePublicKeyInput, opts ...request.Option) (*DeletePublicKeyOutput, error) {
- req, out := c.DeletePublicKeyRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opDeleteStreamingDistribution = "DeleteStreamingDistribution2018_11_05"
- // DeleteStreamingDistributionRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteStreamingDistribution operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See DeleteStreamingDistribution for more information on using the DeleteStreamingDistribution
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the DeleteStreamingDistributionRequest method.
- // req, resp := client.DeleteStreamingDistributionRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/DeleteStreamingDistribution
- func (c *CloudFront) DeleteStreamingDistributionRequest(input *DeleteStreamingDistributionInput) (req *request.Request, output *DeleteStreamingDistributionOutput) {
- op := &request.Operation{
- Name: opDeleteStreamingDistribution,
- HTTPMethod: "DELETE",
- HTTPPath: "/2018-11-05/streaming-distribution/{Id}",
- }
- if input == nil {
- input = &DeleteStreamingDistributionInput{}
- }
- output = &DeleteStreamingDistributionOutput{}
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
- return
- }
- // DeleteStreamingDistribution API operation for Amazon CloudFront.
- //
- // Delete a streaming distribution. To delete an RTMP distribution using the
- // CloudFront API, perform the following steps.
- //
- // To delete an RTMP distribution using the CloudFront API:
- //
- // Disable the RTMP distribution.
- //
- // Submit a GET Streaming Distribution Config request to get the current configuration
- // and the Etag header for the distribution.
- //
- // Update the XML document that was returned in the response to your GET Streaming
- // Distribution Config request to change the value of Enabled to false.
- //
- // Submit a PUT Streaming Distribution Config request to update the configuration
- // for your distribution. In the request body, include the XML document that
- // you updated in Step 3. Then set the value of the HTTP If-Match header to
- // the value of the ETag header that CloudFront returned when you submitted
- // the GET Streaming Distribution Config request in Step 2.
- //
- // Review the response to the PUT Streaming Distribution Config request to confirm
- // that the distribution was successfully disabled.
- //
- // Submit a GET Streaming Distribution Config request to confirm that your changes
- // have propagated. When propagation is complete, the value of Status is Deployed.
- //
- // Submit a DELETE Streaming Distribution request. Set the value of the HTTP
- // If-Match header to the value of the ETag header that CloudFront returned
- // when you submitted the GET Streaming Distribution Config request in Step
- // 2.
- //
- // Review the response to your DELETE Streaming Distribution request to confirm
- // that the distribution was successfully deleted.
- //
- // For information about deleting a distribution using the CloudFront console,
- // see Deleting a Distribution (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/HowToDeleteDistribution.html)
- // in the Amazon CloudFront Developer Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation DeleteStreamingDistribution for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeStreamingDistributionNotDisabled "StreamingDistributionNotDisabled"
- //
- // * ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion"
- // The If-Match version is missing or not valid for the distribution.
- //
- // * ErrCodeNoSuchStreamingDistribution "NoSuchStreamingDistribution"
- // The specified streaming distribution does not exist.
- //
- // * ErrCodePreconditionFailed "PreconditionFailed"
- // The precondition given in one or more of the request-header fields evaluated
- // to false.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/DeleteStreamingDistribution
- func (c *CloudFront) DeleteStreamingDistribution(input *DeleteStreamingDistributionInput) (*DeleteStreamingDistributionOutput, error) {
- req, out := c.DeleteStreamingDistributionRequest(input)
- return out, req.Send()
- }
- // DeleteStreamingDistributionWithContext is the same as DeleteStreamingDistribution with the addition of
- // the ability to pass a context and additional request options.
- //
- // See DeleteStreamingDistribution for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) DeleteStreamingDistributionWithContext(ctx aws.Context, input *DeleteStreamingDistributionInput, opts ...request.Option) (*DeleteStreamingDistributionOutput, error) {
- req, out := c.DeleteStreamingDistributionRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opGetCloudFrontOriginAccessIdentity = "GetCloudFrontOriginAccessIdentity2018_11_05"
- // GetCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the
- // client's request for the GetCloudFrontOriginAccessIdentity operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See GetCloudFrontOriginAccessIdentity for more information on using the GetCloudFrontOriginAccessIdentity
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the GetCloudFrontOriginAccessIdentityRequest method.
- // req, resp := client.GetCloudFrontOriginAccessIdentityRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetCloudFrontOriginAccessIdentity
- func (c *CloudFront) GetCloudFrontOriginAccessIdentityRequest(input *GetCloudFrontOriginAccessIdentityInput) (req *request.Request, output *GetCloudFrontOriginAccessIdentityOutput) {
- op := &request.Operation{
- Name: opGetCloudFrontOriginAccessIdentity,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/origin-access-identity/cloudfront/{Id}",
- }
- if input == nil {
- input = &GetCloudFrontOriginAccessIdentityInput{}
- }
- output = &GetCloudFrontOriginAccessIdentityOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // GetCloudFrontOriginAccessIdentity API operation for Amazon CloudFront.
- //
- // Get the information about an origin access identity.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation GetCloudFrontOriginAccessIdentity for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeNoSuchCloudFrontOriginAccessIdentity "NoSuchCloudFrontOriginAccessIdentity"
- // The specified origin access identity does not exist.
- //
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetCloudFrontOriginAccessIdentity
- func (c *CloudFront) GetCloudFrontOriginAccessIdentity(input *GetCloudFrontOriginAccessIdentityInput) (*GetCloudFrontOriginAccessIdentityOutput, error) {
- req, out := c.GetCloudFrontOriginAccessIdentityRequest(input)
- return out, req.Send()
- }
- // GetCloudFrontOriginAccessIdentityWithContext is the same as GetCloudFrontOriginAccessIdentity with the addition of
- // the ability to pass a context and additional request options.
- //
- // See GetCloudFrontOriginAccessIdentity for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) GetCloudFrontOriginAccessIdentityWithContext(ctx aws.Context, input *GetCloudFrontOriginAccessIdentityInput, opts ...request.Option) (*GetCloudFrontOriginAccessIdentityOutput, error) {
- req, out := c.GetCloudFrontOriginAccessIdentityRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opGetCloudFrontOriginAccessIdentityConfig = "GetCloudFrontOriginAccessIdentityConfig2018_11_05"
- // GetCloudFrontOriginAccessIdentityConfigRequest generates a "aws/request.Request" representing the
- // client's request for the GetCloudFrontOriginAccessIdentityConfig operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See GetCloudFrontOriginAccessIdentityConfig for more information on using the GetCloudFrontOriginAccessIdentityConfig
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the GetCloudFrontOriginAccessIdentityConfigRequest method.
- // req, resp := client.GetCloudFrontOriginAccessIdentityConfigRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetCloudFrontOriginAccessIdentityConfig
- func (c *CloudFront) GetCloudFrontOriginAccessIdentityConfigRequest(input *GetCloudFrontOriginAccessIdentityConfigInput) (req *request.Request, output *GetCloudFrontOriginAccessIdentityConfigOutput) {
- op := &request.Operation{
- Name: opGetCloudFrontOriginAccessIdentityConfig,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/origin-access-identity/cloudfront/{Id}/config",
- }
- if input == nil {
- input = &GetCloudFrontOriginAccessIdentityConfigInput{}
- }
- output = &GetCloudFrontOriginAccessIdentityConfigOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // GetCloudFrontOriginAccessIdentityConfig API operation for Amazon CloudFront.
- //
- // Get the configuration information about an origin access identity.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation GetCloudFrontOriginAccessIdentityConfig for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeNoSuchCloudFrontOriginAccessIdentity "NoSuchCloudFrontOriginAccessIdentity"
- // The specified origin access identity does not exist.
- //
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetCloudFrontOriginAccessIdentityConfig
- func (c *CloudFront) GetCloudFrontOriginAccessIdentityConfig(input *GetCloudFrontOriginAccessIdentityConfigInput) (*GetCloudFrontOriginAccessIdentityConfigOutput, error) {
- req, out := c.GetCloudFrontOriginAccessIdentityConfigRequest(input)
- return out, req.Send()
- }
- // GetCloudFrontOriginAccessIdentityConfigWithContext is the same as GetCloudFrontOriginAccessIdentityConfig with the addition of
- // the ability to pass a context and additional request options.
- //
- // See GetCloudFrontOriginAccessIdentityConfig for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) GetCloudFrontOriginAccessIdentityConfigWithContext(ctx aws.Context, input *GetCloudFrontOriginAccessIdentityConfigInput, opts ...request.Option) (*GetCloudFrontOriginAccessIdentityConfigOutput, error) {
- req, out := c.GetCloudFrontOriginAccessIdentityConfigRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opGetDistribution = "GetDistribution2018_11_05"
- // GetDistributionRequest generates a "aws/request.Request" representing the
- // client's request for the GetDistribution operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See GetDistribution for more information on using the GetDistribution
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the GetDistributionRequest method.
- // req, resp := client.GetDistributionRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetDistribution
- func (c *CloudFront) GetDistributionRequest(input *GetDistributionInput) (req *request.Request, output *GetDistributionOutput) {
- op := &request.Operation{
- Name: opGetDistribution,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/distribution/{Id}",
- }
- if input == nil {
- input = &GetDistributionInput{}
- }
- output = &GetDistributionOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // GetDistribution API operation for Amazon CloudFront.
- //
- // Get the information about a distribution.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation GetDistribution for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeNoSuchDistribution "NoSuchDistribution"
- // The specified distribution does not exist.
- //
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetDistribution
- func (c *CloudFront) GetDistribution(input *GetDistributionInput) (*GetDistributionOutput, error) {
- req, out := c.GetDistributionRequest(input)
- return out, req.Send()
- }
- // GetDistributionWithContext is the same as GetDistribution with the addition of
- // the ability to pass a context and additional request options.
- //
- // See GetDistribution for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) GetDistributionWithContext(ctx aws.Context, input *GetDistributionInput, opts ...request.Option) (*GetDistributionOutput, error) {
- req, out := c.GetDistributionRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opGetDistributionConfig = "GetDistributionConfig2018_11_05"
- // GetDistributionConfigRequest generates a "aws/request.Request" representing the
- // client's request for the GetDistributionConfig operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See GetDistributionConfig for more information on using the GetDistributionConfig
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the GetDistributionConfigRequest method.
- // req, resp := client.GetDistributionConfigRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetDistributionConfig
- func (c *CloudFront) GetDistributionConfigRequest(input *GetDistributionConfigInput) (req *request.Request, output *GetDistributionConfigOutput) {
- op := &request.Operation{
- Name: opGetDistributionConfig,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/distribution/{Id}/config",
- }
- if input == nil {
- input = &GetDistributionConfigInput{}
- }
- output = &GetDistributionConfigOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // GetDistributionConfig API operation for Amazon CloudFront.
- //
- // Get the configuration information about a distribution.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation GetDistributionConfig for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeNoSuchDistribution "NoSuchDistribution"
- // The specified distribution does not exist.
- //
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetDistributionConfig
- func (c *CloudFront) GetDistributionConfig(input *GetDistributionConfigInput) (*GetDistributionConfigOutput, error) {
- req, out := c.GetDistributionConfigRequest(input)
- return out, req.Send()
- }
- // GetDistributionConfigWithContext is the same as GetDistributionConfig with the addition of
- // the ability to pass a context and additional request options.
- //
- // See GetDistributionConfig for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) GetDistributionConfigWithContext(ctx aws.Context, input *GetDistributionConfigInput, opts ...request.Option) (*GetDistributionConfigOutput, error) {
- req, out := c.GetDistributionConfigRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opGetFieldLevelEncryption = "GetFieldLevelEncryption2018_11_05"
- // GetFieldLevelEncryptionRequest generates a "aws/request.Request" representing the
- // client's request for the GetFieldLevelEncryption operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See GetFieldLevelEncryption for more information on using the GetFieldLevelEncryption
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the GetFieldLevelEncryptionRequest method.
- // req, resp := client.GetFieldLevelEncryptionRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetFieldLevelEncryption
- func (c *CloudFront) GetFieldLevelEncryptionRequest(input *GetFieldLevelEncryptionInput) (req *request.Request, output *GetFieldLevelEncryptionOutput) {
- op := &request.Operation{
- Name: opGetFieldLevelEncryption,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/field-level-encryption/{Id}",
- }
- if input == nil {
- input = &GetFieldLevelEncryptionInput{}
- }
- output = &GetFieldLevelEncryptionOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // GetFieldLevelEncryption API operation for Amazon CloudFront.
- //
- // Get the field-level encryption configuration information.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation GetFieldLevelEncryption for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeNoSuchFieldLevelEncryptionConfig "NoSuchFieldLevelEncryptionConfig"
- // The specified configuration for field-level encryption doesn't exist.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetFieldLevelEncryption
- func (c *CloudFront) GetFieldLevelEncryption(input *GetFieldLevelEncryptionInput) (*GetFieldLevelEncryptionOutput, error) {
- req, out := c.GetFieldLevelEncryptionRequest(input)
- return out, req.Send()
- }
- // GetFieldLevelEncryptionWithContext is the same as GetFieldLevelEncryption with the addition of
- // the ability to pass a context and additional request options.
- //
- // See GetFieldLevelEncryption for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) GetFieldLevelEncryptionWithContext(ctx aws.Context, input *GetFieldLevelEncryptionInput, opts ...request.Option) (*GetFieldLevelEncryptionOutput, error) {
- req, out := c.GetFieldLevelEncryptionRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opGetFieldLevelEncryptionConfig = "GetFieldLevelEncryptionConfig2018_11_05"
- // GetFieldLevelEncryptionConfigRequest generates a "aws/request.Request" representing the
- // client's request for the GetFieldLevelEncryptionConfig operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See GetFieldLevelEncryptionConfig for more information on using the GetFieldLevelEncryptionConfig
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the GetFieldLevelEncryptionConfigRequest method.
- // req, resp := client.GetFieldLevelEncryptionConfigRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetFieldLevelEncryptionConfig
- func (c *CloudFront) GetFieldLevelEncryptionConfigRequest(input *GetFieldLevelEncryptionConfigInput) (req *request.Request, output *GetFieldLevelEncryptionConfigOutput) {
- op := &request.Operation{
- Name: opGetFieldLevelEncryptionConfig,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/field-level-encryption/{Id}/config",
- }
- if input == nil {
- input = &GetFieldLevelEncryptionConfigInput{}
- }
- output = &GetFieldLevelEncryptionConfigOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // GetFieldLevelEncryptionConfig API operation for Amazon CloudFront.
- //
- // Get the field-level encryption configuration information.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation GetFieldLevelEncryptionConfig for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeNoSuchFieldLevelEncryptionConfig "NoSuchFieldLevelEncryptionConfig"
- // The specified configuration for field-level encryption doesn't exist.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetFieldLevelEncryptionConfig
- func (c *CloudFront) GetFieldLevelEncryptionConfig(input *GetFieldLevelEncryptionConfigInput) (*GetFieldLevelEncryptionConfigOutput, error) {
- req, out := c.GetFieldLevelEncryptionConfigRequest(input)
- return out, req.Send()
- }
- // GetFieldLevelEncryptionConfigWithContext is the same as GetFieldLevelEncryptionConfig with the addition of
- // the ability to pass a context and additional request options.
- //
- // See GetFieldLevelEncryptionConfig for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) GetFieldLevelEncryptionConfigWithContext(ctx aws.Context, input *GetFieldLevelEncryptionConfigInput, opts ...request.Option) (*GetFieldLevelEncryptionConfigOutput, error) {
- req, out := c.GetFieldLevelEncryptionConfigRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opGetFieldLevelEncryptionProfile = "GetFieldLevelEncryptionProfile2018_11_05"
- // GetFieldLevelEncryptionProfileRequest generates a "aws/request.Request" representing the
- // client's request for the GetFieldLevelEncryptionProfile operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See GetFieldLevelEncryptionProfile for more information on using the GetFieldLevelEncryptionProfile
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the GetFieldLevelEncryptionProfileRequest method.
- // req, resp := client.GetFieldLevelEncryptionProfileRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetFieldLevelEncryptionProfile
- func (c *CloudFront) GetFieldLevelEncryptionProfileRequest(input *GetFieldLevelEncryptionProfileInput) (req *request.Request, output *GetFieldLevelEncryptionProfileOutput) {
- op := &request.Operation{
- Name: opGetFieldLevelEncryptionProfile,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/field-level-encryption-profile/{Id}",
- }
- if input == nil {
- input = &GetFieldLevelEncryptionProfileInput{}
- }
- output = &GetFieldLevelEncryptionProfileOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // GetFieldLevelEncryptionProfile API operation for Amazon CloudFront.
- //
- // Get the field-level encryption profile information.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation GetFieldLevelEncryptionProfile for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeNoSuchFieldLevelEncryptionProfile "NoSuchFieldLevelEncryptionProfile"
- // The specified profile for field-level encryption doesn't exist.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetFieldLevelEncryptionProfile
- func (c *CloudFront) GetFieldLevelEncryptionProfile(input *GetFieldLevelEncryptionProfileInput) (*GetFieldLevelEncryptionProfileOutput, error) {
- req, out := c.GetFieldLevelEncryptionProfileRequest(input)
- return out, req.Send()
- }
- // GetFieldLevelEncryptionProfileWithContext is the same as GetFieldLevelEncryptionProfile with the addition of
- // the ability to pass a context and additional request options.
- //
- // See GetFieldLevelEncryptionProfile for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) GetFieldLevelEncryptionProfileWithContext(ctx aws.Context, input *GetFieldLevelEncryptionProfileInput, opts ...request.Option) (*GetFieldLevelEncryptionProfileOutput, error) {
- req, out := c.GetFieldLevelEncryptionProfileRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opGetFieldLevelEncryptionProfileConfig = "GetFieldLevelEncryptionProfileConfig2018_11_05"
- // GetFieldLevelEncryptionProfileConfigRequest generates a "aws/request.Request" representing the
- // client's request for the GetFieldLevelEncryptionProfileConfig operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See GetFieldLevelEncryptionProfileConfig for more information on using the GetFieldLevelEncryptionProfileConfig
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the GetFieldLevelEncryptionProfileConfigRequest method.
- // req, resp := client.GetFieldLevelEncryptionProfileConfigRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetFieldLevelEncryptionProfileConfig
- func (c *CloudFront) GetFieldLevelEncryptionProfileConfigRequest(input *GetFieldLevelEncryptionProfileConfigInput) (req *request.Request, output *GetFieldLevelEncryptionProfileConfigOutput) {
- op := &request.Operation{
- Name: opGetFieldLevelEncryptionProfileConfig,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/field-level-encryption-profile/{Id}/config",
- }
- if input == nil {
- input = &GetFieldLevelEncryptionProfileConfigInput{}
- }
- output = &GetFieldLevelEncryptionProfileConfigOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // GetFieldLevelEncryptionProfileConfig API operation for Amazon CloudFront.
- //
- // Get the field-level encryption profile configuration information.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation GetFieldLevelEncryptionProfileConfig for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeNoSuchFieldLevelEncryptionProfile "NoSuchFieldLevelEncryptionProfile"
- // The specified profile for field-level encryption doesn't exist.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetFieldLevelEncryptionProfileConfig
- func (c *CloudFront) GetFieldLevelEncryptionProfileConfig(input *GetFieldLevelEncryptionProfileConfigInput) (*GetFieldLevelEncryptionProfileConfigOutput, error) {
- req, out := c.GetFieldLevelEncryptionProfileConfigRequest(input)
- return out, req.Send()
- }
- // GetFieldLevelEncryptionProfileConfigWithContext is the same as GetFieldLevelEncryptionProfileConfig with the addition of
- // the ability to pass a context and additional request options.
- //
- // See GetFieldLevelEncryptionProfileConfig for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) GetFieldLevelEncryptionProfileConfigWithContext(ctx aws.Context, input *GetFieldLevelEncryptionProfileConfigInput, opts ...request.Option) (*GetFieldLevelEncryptionProfileConfigOutput, error) {
- req, out := c.GetFieldLevelEncryptionProfileConfigRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opGetInvalidation = "GetInvalidation2018_11_05"
- // GetInvalidationRequest generates a "aws/request.Request" representing the
- // client's request for the GetInvalidation operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See GetInvalidation for more information on using the GetInvalidation
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the GetInvalidationRequest method.
- // req, resp := client.GetInvalidationRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetInvalidation
- func (c *CloudFront) GetInvalidationRequest(input *GetInvalidationInput) (req *request.Request, output *GetInvalidationOutput) {
- op := &request.Operation{
- Name: opGetInvalidation,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/distribution/{DistributionId}/invalidation/{Id}",
- }
- if input == nil {
- input = &GetInvalidationInput{}
- }
- output = &GetInvalidationOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // GetInvalidation API operation for Amazon CloudFront.
- //
- // Get the information about an invalidation.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation GetInvalidation for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeNoSuchInvalidation "NoSuchInvalidation"
- // The specified invalidation does not exist.
- //
- // * ErrCodeNoSuchDistribution "NoSuchDistribution"
- // The specified distribution does not exist.
- //
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetInvalidation
- func (c *CloudFront) GetInvalidation(input *GetInvalidationInput) (*GetInvalidationOutput, error) {
- req, out := c.GetInvalidationRequest(input)
- return out, req.Send()
- }
- // GetInvalidationWithContext is the same as GetInvalidation with the addition of
- // the ability to pass a context and additional request options.
- //
- // See GetInvalidation for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) GetInvalidationWithContext(ctx aws.Context, input *GetInvalidationInput, opts ...request.Option) (*GetInvalidationOutput, error) {
- req, out := c.GetInvalidationRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opGetPublicKey = "GetPublicKey2018_11_05"
- // GetPublicKeyRequest generates a "aws/request.Request" representing the
- // client's request for the GetPublicKey operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See GetPublicKey for more information on using the GetPublicKey
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the GetPublicKeyRequest method.
- // req, resp := client.GetPublicKeyRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetPublicKey
- func (c *CloudFront) GetPublicKeyRequest(input *GetPublicKeyInput) (req *request.Request, output *GetPublicKeyOutput) {
- op := &request.Operation{
- Name: opGetPublicKey,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/public-key/{Id}",
- }
- if input == nil {
- input = &GetPublicKeyInput{}
- }
- output = &GetPublicKeyOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // GetPublicKey API operation for Amazon CloudFront.
- //
- // Get the public key information.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation GetPublicKey for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeNoSuchPublicKey "NoSuchPublicKey"
- // The specified public key doesn't exist.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetPublicKey
- func (c *CloudFront) GetPublicKey(input *GetPublicKeyInput) (*GetPublicKeyOutput, error) {
- req, out := c.GetPublicKeyRequest(input)
- return out, req.Send()
- }
- // GetPublicKeyWithContext is the same as GetPublicKey with the addition of
- // the ability to pass a context and additional request options.
- //
- // See GetPublicKey for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) GetPublicKeyWithContext(ctx aws.Context, input *GetPublicKeyInput, opts ...request.Option) (*GetPublicKeyOutput, error) {
- req, out := c.GetPublicKeyRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opGetPublicKeyConfig = "GetPublicKeyConfig2018_11_05"
- // GetPublicKeyConfigRequest generates a "aws/request.Request" representing the
- // client's request for the GetPublicKeyConfig operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See GetPublicKeyConfig for more information on using the GetPublicKeyConfig
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the GetPublicKeyConfigRequest method.
- // req, resp := client.GetPublicKeyConfigRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetPublicKeyConfig
- func (c *CloudFront) GetPublicKeyConfigRequest(input *GetPublicKeyConfigInput) (req *request.Request, output *GetPublicKeyConfigOutput) {
- op := &request.Operation{
- Name: opGetPublicKeyConfig,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/public-key/{Id}/config",
- }
- if input == nil {
- input = &GetPublicKeyConfigInput{}
- }
- output = &GetPublicKeyConfigOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // GetPublicKeyConfig API operation for Amazon CloudFront.
- //
- // Return public key configuration informaation
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation GetPublicKeyConfig for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeNoSuchPublicKey "NoSuchPublicKey"
- // The specified public key doesn't exist.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetPublicKeyConfig
- func (c *CloudFront) GetPublicKeyConfig(input *GetPublicKeyConfigInput) (*GetPublicKeyConfigOutput, error) {
- req, out := c.GetPublicKeyConfigRequest(input)
- return out, req.Send()
- }
- // GetPublicKeyConfigWithContext is the same as GetPublicKeyConfig with the addition of
- // the ability to pass a context and additional request options.
- //
- // See GetPublicKeyConfig for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) GetPublicKeyConfigWithContext(ctx aws.Context, input *GetPublicKeyConfigInput, opts ...request.Option) (*GetPublicKeyConfigOutput, error) {
- req, out := c.GetPublicKeyConfigRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opGetStreamingDistribution = "GetStreamingDistribution2018_11_05"
- // GetStreamingDistributionRequest generates a "aws/request.Request" representing the
- // client's request for the GetStreamingDistribution operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See GetStreamingDistribution for more information on using the GetStreamingDistribution
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the GetStreamingDistributionRequest method.
- // req, resp := client.GetStreamingDistributionRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetStreamingDistribution
- func (c *CloudFront) GetStreamingDistributionRequest(input *GetStreamingDistributionInput) (req *request.Request, output *GetStreamingDistributionOutput) {
- op := &request.Operation{
- Name: opGetStreamingDistribution,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/streaming-distribution/{Id}",
- }
- if input == nil {
- input = &GetStreamingDistributionInput{}
- }
- output = &GetStreamingDistributionOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // GetStreamingDistribution API operation for Amazon CloudFront.
- //
- // Gets information about a specified RTMP distribution, including the distribution
- // configuration.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation GetStreamingDistribution for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeNoSuchStreamingDistribution "NoSuchStreamingDistribution"
- // The specified streaming distribution does not exist.
- //
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetStreamingDistribution
- func (c *CloudFront) GetStreamingDistribution(input *GetStreamingDistributionInput) (*GetStreamingDistributionOutput, error) {
- req, out := c.GetStreamingDistributionRequest(input)
- return out, req.Send()
- }
- // GetStreamingDistributionWithContext is the same as GetStreamingDistribution with the addition of
- // the ability to pass a context and additional request options.
- //
- // See GetStreamingDistribution for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) GetStreamingDistributionWithContext(ctx aws.Context, input *GetStreamingDistributionInput, opts ...request.Option) (*GetStreamingDistributionOutput, error) {
- req, out := c.GetStreamingDistributionRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opGetStreamingDistributionConfig = "GetStreamingDistributionConfig2018_11_05"
- // GetStreamingDistributionConfigRequest generates a "aws/request.Request" representing the
- // client's request for the GetStreamingDistributionConfig operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See GetStreamingDistributionConfig for more information on using the GetStreamingDistributionConfig
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the GetStreamingDistributionConfigRequest method.
- // req, resp := client.GetStreamingDistributionConfigRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetStreamingDistributionConfig
- func (c *CloudFront) GetStreamingDistributionConfigRequest(input *GetStreamingDistributionConfigInput) (req *request.Request, output *GetStreamingDistributionConfigOutput) {
- op := &request.Operation{
- Name: opGetStreamingDistributionConfig,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/streaming-distribution/{Id}/config",
- }
- if input == nil {
- input = &GetStreamingDistributionConfigInput{}
- }
- output = &GetStreamingDistributionConfigOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // GetStreamingDistributionConfig API operation for Amazon CloudFront.
- //
- // Get the configuration information about a streaming distribution.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation GetStreamingDistributionConfig for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeNoSuchStreamingDistribution "NoSuchStreamingDistribution"
- // The specified streaming distribution does not exist.
- //
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/GetStreamingDistributionConfig
- func (c *CloudFront) GetStreamingDistributionConfig(input *GetStreamingDistributionConfigInput) (*GetStreamingDistributionConfigOutput, error) {
- req, out := c.GetStreamingDistributionConfigRequest(input)
- return out, req.Send()
- }
- // GetStreamingDistributionConfigWithContext is the same as GetStreamingDistributionConfig with the addition of
- // the ability to pass a context and additional request options.
- //
- // See GetStreamingDistributionConfig for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) GetStreamingDistributionConfigWithContext(ctx aws.Context, input *GetStreamingDistributionConfigInput, opts ...request.Option) (*GetStreamingDistributionConfigOutput, error) {
- req, out := c.GetStreamingDistributionConfigRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opListCloudFrontOriginAccessIdentities = "ListCloudFrontOriginAccessIdentities2018_11_05"
- // ListCloudFrontOriginAccessIdentitiesRequest generates a "aws/request.Request" representing the
- // client's request for the ListCloudFrontOriginAccessIdentities operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See ListCloudFrontOriginAccessIdentities for more information on using the ListCloudFrontOriginAccessIdentities
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the ListCloudFrontOriginAccessIdentitiesRequest method.
- // req, resp := client.ListCloudFrontOriginAccessIdentitiesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/ListCloudFrontOriginAccessIdentities
- func (c *CloudFront) ListCloudFrontOriginAccessIdentitiesRequest(input *ListCloudFrontOriginAccessIdentitiesInput) (req *request.Request, output *ListCloudFrontOriginAccessIdentitiesOutput) {
- op := &request.Operation{
- Name: opListCloudFrontOriginAccessIdentities,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/origin-access-identity/cloudfront",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"CloudFrontOriginAccessIdentityList.NextMarker"},
- LimitToken: "MaxItems",
- TruncationToken: "CloudFrontOriginAccessIdentityList.IsTruncated",
- },
- }
- if input == nil {
- input = &ListCloudFrontOriginAccessIdentitiesInput{}
- }
- output = &ListCloudFrontOriginAccessIdentitiesOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // ListCloudFrontOriginAccessIdentities API operation for Amazon CloudFront.
- //
- // Lists origin access identities.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation ListCloudFrontOriginAccessIdentities for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/ListCloudFrontOriginAccessIdentities
- func (c *CloudFront) ListCloudFrontOriginAccessIdentities(input *ListCloudFrontOriginAccessIdentitiesInput) (*ListCloudFrontOriginAccessIdentitiesOutput, error) {
- req, out := c.ListCloudFrontOriginAccessIdentitiesRequest(input)
- return out, req.Send()
- }
- // ListCloudFrontOriginAccessIdentitiesWithContext is the same as ListCloudFrontOriginAccessIdentities with the addition of
- // the ability to pass a context and additional request options.
- //
- // See ListCloudFrontOriginAccessIdentities for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) ListCloudFrontOriginAccessIdentitiesWithContext(ctx aws.Context, input *ListCloudFrontOriginAccessIdentitiesInput, opts ...request.Option) (*ListCloudFrontOriginAccessIdentitiesOutput, error) {
- req, out := c.ListCloudFrontOriginAccessIdentitiesRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- // ListCloudFrontOriginAccessIdentitiesPages iterates over the pages of a ListCloudFrontOriginAccessIdentities operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See ListCloudFrontOriginAccessIdentities method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a ListCloudFrontOriginAccessIdentities operation.
- // pageNum := 0
- // err := client.ListCloudFrontOriginAccessIdentitiesPages(params,
- // func(page *ListCloudFrontOriginAccessIdentitiesOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *CloudFront) ListCloudFrontOriginAccessIdentitiesPages(input *ListCloudFrontOriginAccessIdentitiesInput, fn func(*ListCloudFrontOriginAccessIdentitiesOutput, bool) bool) error {
- return c.ListCloudFrontOriginAccessIdentitiesPagesWithContext(aws.BackgroundContext(), input, fn)
- }
- // ListCloudFrontOriginAccessIdentitiesPagesWithContext same as ListCloudFrontOriginAccessIdentitiesPages except
- // it takes a Context and allows setting request options on the pages.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) ListCloudFrontOriginAccessIdentitiesPagesWithContext(ctx aws.Context, input *ListCloudFrontOriginAccessIdentitiesInput, fn func(*ListCloudFrontOriginAccessIdentitiesOutput, bool) bool, opts ...request.Option) error {
- p := request.Pagination{
- NewRequest: func() (*request.Request, error) {
- var inCpy *ListCloudFrontOriginAccessIdentitiesInput
- if input != nil {
- tmp := *input
- inCpy = &tmp
- }
- req, _ := c.ListCloudFrontOriginAccessIdentitiesRequest(inCpy)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return req, nil
- },
- }
- cont := true
- for p.Next() && cont {
- cont = fn(p.Page().(*ListCloudFrontOriginAccessIdentitiesOutput), !p.HasNextPage())
- }
- return p.Err()
- }
- const opListDistributions = "ListDistributions2018_11_05"
- // ListDistributionsRequest generates a "aws/request.Request" representing the
- // client's request for the ListDistributions operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See ListDistributions for more information on using the ListDistributions
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the ListDistributionsRequest method.
- // req, resp := client.ListDistributionsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/ListDistributions
- func (c *CloudFront) ListDistributionsRequest(input *ListDistributionsInput) (req *request.Request, output *ListDistributionsOutput) {
- op := &request.Operation{
- Name: opListDistributions,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/distribution",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"DistributionList.NextMarker"},
- LimitToken: "MaxItems",
- TruncationToken: "DistributionList.IsTruncated",
- },
- }
- if input == nil {
- input = &ListDistributionsInput{}
- }
- output = &ListDistributionsOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // ListDistributions API operation for Amazon CloudFront.
- //
- // List distributions.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation ListDistributions for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/ListDistributions
- func (c *CloudFront) ListDistributions(input *ListDistributionsInput) (*ListDistributionsOutput, error) {
- req, out := c.ListDistributionsRequest(input)
- return out, req.Send()
- }
- // ListDistributionsWithContext is the same as ListDistributions with the addition of
- // the ability to pass a context and additional request options.
- //
- // See ListDistributions for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) ListDistributionsWithContext(ctx aws.Context, input *ListDistributionsInput, opts ...request.Option) (*ListDistributionsOutput, error) {
- req, out := c.ListDistributionsRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- // ListDistributionsPages iterates over the pages of a ListDistributions operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See ListDistributions method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a ListDistributions operation.
- // pageNum := 0
- // err := client.ListDistributionsPages(params,
- // func(page *ListDistributionsOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *CloudFront) ListDistributionsPages(input *ListDistributionsInput, fn func(*ListDistributionsOutput, bool) bool) error {
- return c.ListDistributionsPagesWithContext(aws.BackgroundContext(), input, fn)
- }
- // ListDistributionsPagesWithContext same as ListDistributionsPages except
- // it takes a Context and allows setting request options on the pages.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) ListDistributionsPagesWithContext(ctx aws.Context, input *ListDistributionsInput, fn func(*ListDistributionsOutput, bool) bool, opts ...request.Option) error {
- p := request.Pagination{
- NewRequest: func() (*request.Request, error) {
- var inCpy *ListDistributionsInput
- if input != nil {
- tmp := *input
- inCpy = &tmp
- }
- req, _ := c.ListDistributionsRequest(inCpy)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return req, nil
- },
- }
- cont := true
- for p.Next() && cont {
- cont = fn(p.Page().(*ListDistributionsOutput), !p.HasNextPage())
- }
- return p.Err()
- }
- const opListDistributionsByWebACLId = "ListDistributionsByWebACLId2018_11_05"
- // ListDistributionsByWebACLIdRequest generates a "aws/request.Request" representing the
- // client's request for the ListDistributionsByWebACLId operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See ListDistributionsByWebACLId for more information on using the ListDistributionsByWebACLId
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the ListDistributionsByWebACLIdRequest method.
- // req, resp := client.ListDistributionsByWebACLIdRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/ListDistributionsByWebACLId
- func (c *CloudFront) ListDistributionsByWebACLIdRequest(input *ListDistributionsByWebACLIdInput) (req *request.Request, output *ListDistributionsByWebACLIdOutput) {
- op := &request.Operation{
- Name: opListDistributionsByWebACLId,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/distributionsByWebACLId/{WebACLId}",
- }
- if input == nil {
- input = &ListDistributionsByWebACLIdInput{}
- }
- output = &ListDistributionsByWebACLIdOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // ListDistributionsByWebACLId API operation for Amazon CloudFront.
- //
- // List the distributions that are associated with a specified AWS WAF web ACL.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation ListDistributionsByWebACLId for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeInvalidWebACLId "InvalidWebACLId"
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/ListDistributionsByWebACLId
- func (c *CloudFront) ListDistributionsByWebACLId(input *ListDistributionsByWebACLIdInput) (*ListDistributionsByWebACLIdOutput, error) {
- req, out := c.ListDistributionsByWebACLIdRequest(input)
- return out, req.Send()
- }
- // ListDistributionsByWebACLIdWithContext is the same as ListDistributionsByWebACLId with the addition of
- // the ability to pass a context and additional request options.
- //
- // See ListDistributionsByWebACLId for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) ListDistributionsByWebACLIdWithContext(ctx aws.Context, input *ListDistributionsByWebACLIdInput, opts ...request.Option) (*ListDistributionsByWebACLIdOutput, error) {
- req, out := c.ListDistributionsByWebACLIdRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opListFieldLevelEncryptionConfigs = "ListFieldLevelEncryptionConfigs2018_11_05"
- // ListFieldLevelEncryptionConfigsRequest generates a "aws/request.Request" representing the
- // client's request for the ListFieldLevelEncryptionConfigs operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See ListFieldLevelEncryptionConfigs for more information on using the ListFieldLevelEncryptionConfigs
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the ListFieldLevelEncryptionConfigsRequest method.
- // req, resp := client.ListFieldLevelEncryptionConfigsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/ListFieldLevelEncryptionConfigs
- func (c *CloudFront) ListFieldLevelEncryptionConfigsRequest(input *ListFieldLevelEncryptionConfigsInput) (req *request.Request, output *ListFieldLevelEncryptionConfigsOutput) {
- op := &request.Operation{
- Name: opListFieldLevelEncryptionConfigs,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/field-level-encryption",
- }
- if input == nil {
- input = &ListFieldLevelEncryptionConfigsInput{}
- }
- output = &ListFieldLevelEncryptionConfigsOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // ListFieldLevelEncryptionConfigs API operation for Amazon CloudFront.
- //
- // List all field-level encryption configurations that have been created in
- // CloudFront for this account.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation ListFieldLevelEncryptionConfigs for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/ListFieldLevelEncryptionConfigs
- func (c *CloudFront) ListFieldLevelEncryptionConfigs(input *ListFieldLevelEncryptionConfigsInput) (*ListFieldLevelEncryptionConfigsOutput, error) {
- req, out := c.ListFieldLevelEncryptionConfigsRequest(input)
- return out, req.Send()
- }
- // ListFieldLevelEncryptionConfigsWithContext is the same as ListFieldLevelEncryptionConfigs with the addition of
- // the ability to pass a context and additional request options.
- //
- // See ListFieldLevelEncryptionConfigs for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) ListFieldLevelEncryptionConfigsWithContext(ctx aws.Context, input *ListFieldLevelEncryptionConfigsInput, opts ...request.Option) (*ListFieldLevelEncryptionConfigsOutput, error) {
- req, out := c.ListFieldLevelEncryptionConfigsRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opListFieldLevelEncryptionProfiles = "ListFieldLevelEncryptionProfiles2018_11_05"
- // ListFieldLevelEncryptionProfilesRequest generates a "aws/request.Request" representing the
- // client's request for the ListFieldLevelEncryptionProfiles operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See ListFieldLevelEncryptionProfiles for more information on using the ListFieldLevelEncryptionProfiles
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the ListFieldLevelEncryptionProfilesRequest method.
- // req, resp := client.ListFieldLevelEncryptionProfilesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/ListFieldLevelEncryptionProfiles
- func (c *CloudFront) ListFieldLevelEncryptionProfilesRequest(input *ListFieldLevelEncryptionProfilesInput) (req *request.Request, output *ListFieldLevelEncryptionProfilesOutput) {
- op := &request.Operation{
- Name: opListFieldLevelEncryptionProfiles,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/field-level-encryption-profile",
- }
- if input == nil {
- input = &ListFieldLevelEncryptionProfilesInput{}
- }
- output = &ListFieldLevelEncryptionProfilesOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // ListFieldLevelEncryptionProfiles API operation for Amazon CloudFront.
- //
- // Request a list of field-level encryption profiles that have been created
- // in CloudFront for this account.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation ListFieldLevelEncryptionProfiles for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/ListFieldLevelEncryptionProfiles
- func (c *CloudFront) ListFieldLevelEncryptionProfiles(input *ListFieldLevelEncryptionProfilesInput) (*ListFieldLevelEncryptionProfilesOutput, error) {
- req, out := c.ListFieldLevelEncryptionProfilesRequest(input)
- return out, req.Send()
- }
- // ListFieldLevelEncryptionProfilesWithContext is the same as ListFieldLevelEncryptionProfiles with the addition of
- // the ability to pass a context and additional request options.
- //
- // See ListFieldLevelEncryptionProfiles for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) ListFieldLevelEncryptionProfilesWithContext(ctx aws.Context, input *ListFieldLevelEncryptionProfilesInput, opts ...request.Option) (*ListFieldLevelEncryptionProfilesOutput, error) {
- req, out := c.ListFieldLevelEncryptionProfilesRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opListInvalidations = "ListInvalidations2018_11_05"
- // ListInvalidationsRequest generates a "aws/request.Request" representing the
- // client's request for the ListInvalidations operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See ListInvalidations for more information on using the ListInvalidations
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the ListInvalidationsRequest method.
- // req, resp := client.ListInvalidationsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/ListInvalidations
- func (c *CloudFront) ListInvalidationsRequest(input *ListInvalidationsInput) (req *request.Request, output *ListInvalidationsOutput) {
- op := &request.Operation{
- Name: opListInvalidations,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/distribution/{DistributionId}/invalidation",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"InvalidationList.NextMarker"},
- LimitToken: "MaxItems",
- TruncationToken: "InvalidationList.IsTruncated",
- },
- }
- if input == nil {
- input = &ListInvalidationsInput{}
- }
- output = &ListInvalidationsOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // ListInvalidations API operation for Amazon CloudFront.
- //
- // Lists invalidation batches.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation ListInvalidations for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeNoSuchDistribution "NoSuchDistribution"
- // The specified distribution does not exist.
- //
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/ListInvalidations
- func (c *CloudFront) ListInvalidations(input *ListInvalidationsInput) (*ListInvalidationsOutput, error) {
- req, out := c.ListInvalidationsRequest(input)
- return out, req.Send()
- }
- // ListInvalidationsWithContext is the same as ListInvalidations with the addition of
- // the ability to pass a context and additional request options.
- //
- // See ListInvalidations for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) ListInvalidationsWithContext(ctx aws.Context, input *ListInvalidationsInput, opts ...request.Option) (*ListInvalidationsOutput, error) {
- req, out := c.ListInvalidationsRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- // ListInvalidationsPages iterates over the pages of a ListInvalidations operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See ListInvalidations method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a ListInvalidations operation.
- // pageNum := 0
- // err := client.ListInvalidationsPages(params,
- // func(page *ListInvalidationsOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *CloudFront) ListInvalidationsPages(input *ListInvalidationsInput, fn func(*ListInvalidationsOutput, bool) bool) error {
- return c.ListInvalidationsPagesWithContext(aws.BackgroundContext(), input, fn)
- }
- // ListInvalidationsPagesWithContext same as ListInvalidationsPages except
- // it takes a Context and allows setting request options on the pages.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) ListInvalidationsPagesWithContext(ctx aws.Context, input *ListInvalidationsInput, fn func(*ListInvalidationsOutput, bool) bool, opts ...request.Option) error {
- p := request.Pagination{
- NewRequest: func() (*request.Request, error) {
- var inCpy *ListInvalidationsInput
- if input != nil {
- tmp := *input
- inCpy = &tmp
- }
- req, _ := c.ListInvalidationsRequest(inCpy)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return req, nil
- },
- }
- cont := true
- for p.Next() && cont {
- cont = fn(p.Page().(*ListInvalidationsOutput), !p.HasNextPage())
- }
- return p.Err()
- }
- const opListPublicKeys = "ListPublicKeys2018_11_05"
- // ListPublicKeysRequest generates a "aws/request.Request" representing the
- // client's request for the ListPublicKeys operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See ListPublicKeys for more information on using the ListPublicKeys
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the ListPublicKeysRequest method.
- // req, resp := client.ListPublicKeysRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/ListPublicKeys
- func (c *CloudFront) ListPublicKeysRequest(input *ListPublicKeysInput) (req *request.Request, output *ListPublicKeysOutput) {
- op := &request.Operation{
- Name: opListPublicKeys,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/public-key",
- }
- if input == nil {
- input = &ListPublicKeysInput{}
- }
- output = &ListPublicKeysOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // ListPublicKeys API operation for Amazon CloudFront.
- //
- // List all public keys that have been added to CloudFront for this account.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation ListPublicKeys for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/ListPublicKeys
- func (c *CloudFront) ListPublicKeys(input *ListPublicKeysInput) (*ListPublicKeysOutput, error) {
- req, out := c.ListPublicKeysRequest(input)
- return out, req.Send()
- }
- // ListPublicKeysWithContext is the same as ListPublicKeys with the addition of
- // the ability to pass a context and additional request options.
- //
- // See ListPublicKeys for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) ListPublicKeysWithContext(ctx aws.Context, input *ListPublicKeysInput, opts ...request.Option) (*ListPublicKeysOutput, error) {
- req, out := c.ListPublicKeysRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opListStreamingDistributions = "ListStreamingDistributions2018_11_05"
- // ListStreamingDistributionsRequest generates a "aws/request.Request" representing the
- // client's request for the ListStreamingDistributions operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See ListStreamingDistributions for more information on using the ListStreamingDistributions
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the ListStreamingDistributionsRequest method.
- // req, resp := client.ListStreamingDistributionsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/ListStreamingDistributions
- func (c *CloudFront) ListStreamingDistributionsRequest(input *ListStreamingDistributionsInput) (req *request.Request, output *ListStreamingDistributionsOutput) {
- op := &request.Operation{
- Name: opListStreamingDistributions,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/streaming-distribution",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"StreamingDistributionList.NextMarker"},
- LimitToken: "MaxItems",
- TruncationToken: "StreamingDistributionList.IsTruncated",
- },
- }
- if input == nil {
- input = &ListStreamingDistributionsInput{}
- }
- output = &ListStreamingDistributionsOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // ListStreamingDistributions API operation for Amazon CloudFront.
- //
- // List streaming distributions.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation ListStreamingDistributions for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/ListStreamingDistributions
- func (c *CloudFront) ListStreamingDistributions(input *ListStreamingDistributionsInput) (*ListStreamingDistributionsOutput, error) {
- req, out := c.ListStreamingDistributionsRequest(input)
- return out, req.Send()
- }
- // ListStreamingDistributionsWithContext is the same as ListStreamingDistributions with the addition of
- // the ability to pass a context and additional request options.
- //
- // See ListStreamingDistributions for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) ListStreamingDistributionsWithContext(ctx aws.Context, input *ListStreamingDistributionsInput, opts ...request.Option) (*ListStreamingDistributionsOutput, error) {
- req, out := c.ListStreamingDistributionsRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- // ListStreamingDistributionsPages iterates over the pages of a ListStreamingDistributions operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See ListStreamingDistributions method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a ListStreamingDistributions operation.
- // pageNum := 0
- // err := client.ListStreamingDistributionsPages(params,
- // func(page *ListStreamingDistributionsOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *CloudFront) ListStreamingDistributionsPages(input *ListStreamingDistributionsInput, fn func(*ListStreamingDistributionsOutput, bool) bool) error {
- return c.ListStreamingDistributionsPagesWithContext(aws.BackgroundContext(), input, fn)
- }
- // ListStreamingDistributionsPagesWithContext same as ListStreamingDistributionsPages except
- // it takes a Context and allows setting request options on the pages.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) ListStreamingDistributionsPagesWithContext(ctx aws.Context, input *ListStreamingDistributionsInput, fn func(*ListStreamingDistributionsOutput, bool) bool, opts ...request.Option) error {
- p := request.Pagination{
- NewRequest: func() (*request.Request, error) {
- var inCpy *ListStreamingDistributionsInput
- if input != nil {
- tmp := *input
- inCpy = &tmp
- }
- req, _ := c.ListStreamingDistributionsRequest(inCpy)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return req, nil
- },
- }
- cont := true
- for p.Next() && cont {
- cont = fn(p.Page().(*ListStreamingDistributionsOutput), !p.HasNextPage())
- }
- return p.Err()
- }
- const opListTagsForResource = "ListTagsForResource2018_11_05"
- // ListTagsForResourceRequest generates a "aws/request.Request" representing the
- // client's request for the ListTagsForResource operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See ListTagsForResource for more information on using the ListTagsForResource
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the ListTagsForResourceRequest method.
- // req, resp := client.ListTagsForResourceRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/ListTagsForResource
- func (c *CloudFront) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
- op := &request.Operation{
- Name: opListTagsForResource,
- HTTPMethod: "GET",
- HTTPPath: "/2018-11-05/tagging",
- }
- if input == nil {
- input = &ListTagsForResourceInput{}
- }
- output = &ListTagsForResourceOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // ListTagsForResource API operation for Amazon CloudFront.
- //
- // List tags for a CloudFront resource.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation ListTagsForResource for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeInvalidTagging "InvalidTagging"
- //
- // * ErrCodeNoSuchResource "NoSuchResource"
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/ListTagsForResource
- func (c *CloudFront) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
- req, out := c.ListTagsForResourceRequest(input)
- return out, req.Send()
- }
- // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
- // the ability to pass a context and additional request options.
- //
- // See ListTagsForResource for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
- req, out := c.ListTagsForResourceRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opTagResource = "TagResource2018_11_05"
- // TagResourceRequest generates a "aws/request.Request" representing the
- // client's request for the TagResource operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See TagResource for more information on using the TagResource
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the TagResourceRequest method.
- // req, resp := client.TagResourceRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/TagResource
- func (c *CloudFront) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
- op := &request.Operation{
- Name: opTagResource,
- HTTPMethod: "POST",
- HTTPPath: "/2018-11-05/tagging?Operation=Tag",
- }
- if input == nil {
- input = &TagResourceInput{}
- }
- output = &TagResourceOutput{}
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
- return
- }
- // TagResource API operation for Amazon CloudFront.
- //
- // Add tags to a CloudFront resource.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation TagResource for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeInvalidTagging "InvalidTagging"
- //
- // * ErrCodeNoSuchResource "NoSuchResource"
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/TagResource
- func (c *CloudFront) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
- req, out := c.TagResourceRequest(input)
- return out, req.Send()
- }
- // TagResourceWithContext is the same as TagResource with the addition of
- // the ability to pass a context and additional request options.
- //
- // See TagResource for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
- req, out := c.TagResourceRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opUntagResource = "UntagResource2018_11_05"
- // UntagResourceRequest generates a "aws/request.Request" representing the
- // client's request for the UntagResource operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See UntagResource for more information on using the UntagResource
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the UntagResourceRequest method.
- // req, resp := client.UntagResourceRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/UntagResource
- func (c *CloudFront) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
- op := &request.Operation{
- Name: opUntagResource,
- HTTPMethod: "POST",
- HTTPPath: "/2018-11-05/tagging?Operation=Untag",
- }
- if input == nil {
- input = &UntagResourceInput{}
- }
- output = &UntagResourceOutput{}
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
- return
- }
- // UntagResource API operation for Amazon CloudFront.
- //
- // Remove tags from a CloudFront resource.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation UntagResource for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeInvalidTagging "InvalidTagging"
- //
- // * ErrCodeNoSuchResource "NoSuchResource"
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/UntagResource
- func (c *CloudFront) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
- req, out := c.UntagResourceRequest(input)
- return out, req.Send()
- }
- // UntagResourceWithContext is the same as UntagResource with the addition of
- // the ability to pass a context and additional request options.
- //
- // See UntagResource for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
- req, out := c.UntagResourceRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opUpdateCloudFrontOriginAccessIdentity = "UpdateCloudFrontOriginAccessIdentity2018_11_05"
- // UpdateCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the
- // client's request for the UpdateCloudFrontOriginAccessIdentity operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See UpdateCloudFrontOriginAccessIdentity for more information on using the UpdateCloudFrontOriginAccessIdentity
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the UpdateCloudFrontOriginAccessIdentityRequest method.
- // req, resp := client.UpdateCloudFrontOriginAccessIdentityRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/UpdateCloudFrontOriginAccessIdentity
- func (c *CloudFront) UpdateCloudFrontOriginAccessIdentityRequest(input *UpdateCloudFrontOriginAccessIdentityInput) (req *request.Request, output *UpdateCloudFrontOriginAccessIdentityOutput) {
- op := &request.Operation{
- Name: opUpdateCloudFrontOriginAccessIdentity,
- HTTPMethod: "PUT",
- HTTPPath: "/2018-11-05/origin-access-identity/cloudfront/{Id}/config",
- }
- if input == nil {
- input = &UpdateCloudFrontOriginAccessIdentityInput{}
- }
- output = &UpdateCloudFrontOriginAccessIdentityOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // UpdateCloudFrontOriginAccessIdentity API operation for Amazon CloudFront.
- //
- // Update an origin access identity.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation UpdateCloudFrontOriginAccessIdentity for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeIllegalUpdate "IllegalUpdate"
- // Origin and CallerReference cannot be updated.
- //
- // * ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion"
- // The If-Match version is missing or not valid for the distribution.
- //
- // * ErrCodeMissingBody "MissingBody"
- // This operation requires a body. Ensure that the body is present and the Content-Type
- // header is set.
- //
- // * ErrCodeNoSuchCloudFrontOriginAccessIdentity "NoSuchCloudFrontOriginAccessIdentity"
- // The specified origin access identity does not exist.
- //
- // * ErrCodePreconditionFailed "PreconditionFailed"
- // The precondition given in one or more of the request-header fields evaluated
- // to false.
- //
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeInconsistentQuantities "InconsistentQuantities"
- // The value of Quantity and the size of Items don't match.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/UpdateCloudFrontOriginAccessIdentity
- func (c *CloudFront) UpdateCloudFrontOriginAccessIdentity(input *UpdateCloudFrontOriginAccessIdentityInput) (*UpdateCloudFrontOriginAccessIdentityOutput, error) {
- req, out := c.UpdateCloudFrontOriginAccessIdentityRequest(input)
- return out, req.Send()
- }
- // UpdateCloudFrontOriginAccessIdentityWithContext is the same as UpdateCloudFrontOriginAccessIdentity with the addition of
- // the ability to pass a context and additional request options.
- //
- // See UpdateCloudFrontOriginAccessIdentity for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) UpdateCloudFrontOriginAccessIdentityWithContext(ctx aws.Context, input *UpdateCloudFrontOriginAccessIdentityInput, opts ...request.Option) (*UpdateCloudFrontOriginAccessIdentityOutput, error) {
- req, out := c.UpdateCloudFrontOriginAccessIdentityRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opUpdateDistribution = "UpdateDistribution2018_11_05"
- // UpdateDistributionRequest generates a "aws/request.Request" representing the
- // client's request for the UpdateDistribution operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See UpdateDistribution for more information on using the UpdateDistribution
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the UpdateDistributionRequest method.
- // req, resp := client.UpdateDistributionRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/UpdateDistribution
- func (c *CloudFront) UpdateDistributionRequest(input *UpdateDistributionInput) (req *request.Request, output *UpdateDistributionOutput) {
- op := &request.Operation{
- Name: opUpdateDistribution,
- HTTPMethod: "PUT",
- HTTPPath: "/2018-11-05/distribution/{Id}/config",
- }
- if input == nil {
- input = &UpdateDistributionInput{}
- }
- output = &UpdateDistributionOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // UpdateDistribution API operation for Amazon CloudFront.
- //
- // Updates the configuration for a web distribution.
- //
- // When you update a distribution, there are more required fields than when
- // you create a distribution. When you update your distribution by using this
- // API action, follow the steps here to get the current configuration and then
- // make your updates, to make sure that you include all of the required fields.
- // To view a summary, see Required Fields for Create Distribution and Update
- // Distribution (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-overview-required-fields.html)
- // in the Amazon CloudFront Developer Guide.
- //
- // The update process includes getting the current distribution configuration,
- // updating the XML document that is returned to make your changes, and then
- // submitting an UpdateDistribution request to make the updates.
- //
- // For information about updating a distribution using the CloudFront console
- // instead, see Creating a Distribution (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-creating-console.html)
- // in the Amazon CloudFront Developer Guide.
- //
- // To update a web distribution using the CloudFront API
- //
- // Submit a GetDistributionConfig request to get the current configuration and
- // an Etag header for the distribution.
- //
- // If you update the distribution again, you must get a new Etag header.
- //
- // Update the XML document that was returned in the response to your GetDistributionConfig
- // request to include your changes.
- //
- // When you edit the XML file, be aware of the following:
- //
- // You must strip out the ETag parameter that is returned.
- //
- // Additional fields are required when you update a distribution. There may
- // be fields included in the XML file for features that you haven't configured
- // for your distribution. This is expected and required to successfully update
- // the distribution.
- //
- // You can't change the value of CallerReference. If you try to change this
- // value, CloudFront returns an IllegalUpdate error.
- //
- // The new configuration replaces the existing configuration; the values that
- // you specify in an UpdateDistribution request are not merged into your existing
- // configuration. When you add, delete, or replace values in an element that
- // allows multiple values (for example, CNAME), you must specify all of the
- // values that you want to appear in the updated distribution. In addition,
- // you must update the corresponding Quantity element.
- //
- // Submit an UpdateDistribution request to update the configuration for your
- // distribution:
- //
- // In the request body, include the XML document that you updated in Step 2.
- // The request body must include an XML document with a DistributionConfig element.
- //
- // Set the value of the HTTP If-Match header to the value of the ETag header
- // that CloudFront returned when you submitted the GetDistributionConfig request
- // in Step 1.
- //
- // Review the response to the UpdateDistribution request to confirm that the
- // configuration was successfully updated.
- //
- // Optional: Submit a GetDistribution request to confirm that your changes have
- // propagated. When propagation is complete, the value of Status is Deployed.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation UpdateDistribution for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeCNAMEAlreadyExists "CNAMEAlreadyExists"
- //
- // * ErrCodeIllegalUpdate "IllegalUpdate"
- // Origin and CallerReference cannot be updated.
- //
- // * ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion"
- // The If-Match version is missing or not valid for the distribution.
- //
- // * ErrCodeMissingBody "MissingBody"
- // This operation requires a body. Ensure that the body is present and the Content-Type
- // header is set.
- //
- // * ErrCodeNoSuchDistribution "NoSuchDistribution"
- // The specified distribution does not exist.
- //
- // * ErrCodePreconditionFailed "PreconditionFailed"
- // The precondition given in one or more of the request-header fields evaluated
- // to false.
- //
- // * ErrCodeTooManyDistributionCNAMEs "TooManyDistributionCNAMEs"
- // Your request contains more CNAMEs than are allowed per distribution.
- //
- // * ErrCodeInvalidDefaultRootObject "InvalidDefaultRootObject"
- // The default root object file name is too big or contains an invalid character.
- //
- // * ErrCodeInvalidRelativePath "InvalidRelativePath"
- // The relative path is too big, is not URL-encoded, or does not begin with
- // a slash (/).
- //
- // * ErrCodeInvalidErrorCode "InvalidErrorCode"
- //
- // * ErrCodeInvalidResponseCode "InvalidResponseCode"
- //
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeInvalidOriginAccessIdentity "InvalidOriginAccessIdentity"
- // The origin access identity is not valid or doesn't exist.
- //
- // * ErrCodeTooManyTrustedSigners "TooManyTrustedSigners"
- // Your request contains more trusted signers than are allowed per distribution.
- //
- // * ErrCodeTrustedSignerDoesNotExist "TrustedSignerDoesNotExist"
- // One or more of your trusted signers don't exist.
- //
- // * ErrCodeInvalidViewerCertificate "InvalidViewerCertificate"
- //
- // * ErrCodeInvalidMinimumProtocolVersion "InvalidMinimumProtocolVersion"
- //
- // * ErrCodeInvalidRequiredProtocol "InvalidRequiredProtocol"
- // This operation requires the HTTPS protocol. Ensure that you specify the HTTPS
- // protocol in your request, or omit the RequiredProtocols element from your
- // distribution configuration.
- //
- // * ErrCodeNoSuchOrigin "NoSuchOrigin"
- // No origin exists with the specified Origin Id.
- //
- // * ErrCodeTooManyOrigins "TooManyOrigins"
- // You cannot create more origins for the distribution.
- //
- // * ErrCodeTooManyOriginGroupsPerDistribution "TooManyOriginGroupsPerDistribution"
- // Processing your request would cause you to exceed the maximum number of origin
- // groups allowed.
- //
- // * ErrCodeTooManyCacheBehaviors "TooManyCacheBehaviors"
- // You cannot create more cache behaviors for the distribution.
- //
- // * ErrCodeTooManyCookieNamesInWhiteList "TooManyCookieNamesInWhiteList"
- // Your request contains more cookie names in the whitelist than are allowed
- // per cache behavior.
- //
- // * ErrCodeInvalidForwardCookies "InvalidForwardCookies"
- // Your request contains forward cookies option which doesn't match with the
- // expectation for the whitelisted list of cookie names. Either list of cookie
- // names has been specified when not allowed or list of cookie names is missing
- // when expected.
- //
- // * ErrCodeTooManyHeadersInForwardedValues "TooManyHeadersInForwardedValues"
- //
- // * ErrCodeInvalidHeadersForS3Origin "InvalidHeadersForS3Origin"
- //
- // * ErrCodeInconsistentQuantities "InconsistentQuantities"
- // The value of Quantity and the size of Items don't match.
- //
- // * ErrCodeTooManyCertificates "TooManyCertificates"
- // You cannot create anymore custom SSL/TLS certificates.
- //
- // * ErrCodeInvalidLocationCode "InvalidLocationCode"
- //
- // * ErrCodeInvalidGeoRestrictionParameter "InvalidGeoRestrictionParameter"
- //
- // * ErrCodeInvalidTTLOrder "InvalidTTLOrder"
- //
- // * ErrCodeInvalidWebACLId "InvalidWebACLId"
- //
- // * ErrCodeTooManyOriginCustomHeaders "TooManyOriginCustomHeaders"
- //
- // * ErrCodeTooManyQueryStringParameters "TooManyQueryStringParameters"
- //
- // * ErrCodeInvalidQueryStringParameters "InvalidQueryStringParameters"
- //
- // * ErrCodeTooManyDistributionsWithLambdaAssociations "TooManyDistributionsWithLambdaAssociations"
- // Processing your request would cause the maximum number of distributions with
- // Lambda function associations per owner to be exceeded.
- //
- // * ErrCodeTooManyLambdaFunctionAssociations "TooManyLambdaFunctionAssociations"
- // Your request contains more Lambda function associations than are allowed
- // per distribution.
- //
- // * ErrCodeInvalidLambdaFunctionAssociation "InvalidLambdaFunctionAssociation"
- // The specified Lambda function association is invalid.
- //
- // * ErrCodeInvalidOriginReadTimeout "InvalidOriginReadTimeout"
- //
- // * ErrCodeInvalidOriginKeepaliveTimeout "InvalidOriginKeepaliveTimeout"
- //
- // * ErrCodeNoSuchFieldLevelEncryptionConfig "NoSuchFieldLevelEncryptionConfig"
- // The specified configuration for field-level encryption doesn't exist.
- //
- // * ErrCodeIllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior "IllegalFieldLevelEncryptionConfigAssociationWithCacheBehavior"
- // The specified configuration for field-level encryption can't be associated
- // with the specified cache behavior.
- //
- // * ErrCodeTooManyDistributionsAssociatedToFieldLevelEncryptionConfig "TooManyDistributionsAssociatedToFieldLevelEncryptionConfig"
- // The maximum number of distributions have been associated with the specified
- // configuration for field-level encryption.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/UpdateDistribution
- func (c *CloudFront) UpdateDistribution(input *UpdateDistributionInput) (*UpdateDistributionOutput, error) {
- req, out := c.UpdateDistributionRequest(input)
- return out, req.Send()
- }
- // UpdateDistributionWithContext is the same as UpdateDistribution with the addition of
- // the ability to pass a context and additional request options.
- //
- // See UpdateDistribution for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) UpdateDistributionWithContext(ctx aws.Context, input *UpdateDistributionInput, opts ...request.Option) (*UpdateDistributionOutput, error) {
- req, out := c.UpdateDistributionRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opUpdateFieldLevelEncryptionConfig = "UpdateFieldLevelEncryptionConfig2018_11_05"
- // UpdateFieldLevelEncryptionConfigRequest generates a "aws/request.Request" representing the
- // client's request for the UpdateFieldLevelEncryptionConfig operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See UpdateFieldLevelEncryptionConfig for more information on using the UpdateFieldLevelEncryptionConfig
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the UpdateFieldLevelEncryptionConfigRequest method.
- // req, resp := client.UpdateFieldLevelEncryptionConfigRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/UpdateFieldLevelEncryptionConfig
- func (c *CloudFront) UpdateFieldLevelEncryptionConfigRequest(input *UpdateFieldLevelEncryptionConfigInput) (req *request.Request, output *UpdateFieldLevelEncryptionConfigOutput) {
- op := &request.Operation{
- Name: opUpdateFieldLevelEncryptionConfig,
- HTTPMethod: "PUT",
- HTTPPath: "/2018-11-05/field-level-encryption/{Id}/config",
- }
- if input == nil {
- input = &UpdateFieldLevelEncryptionConfigInput{}
- }
- output = &UpdateFieldLevelEncryptionConfigOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // UpdateFieldLevelEncryptionConfig API operation for Amazon CloudFront.
- //
- // Update a field-level encryption configuration.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation UpdateFieldLevelEncryptionConfig for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeIllegalUpdate "IllegalUpdate"
- // Origin and CallerReference cannot be updated.
- //
- // * ErrCodeInconsistentQuantities "InconsistentQuantities"
- // The value of Quantity and the size of Items don't match.
- //
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion"
- // The If-Match version is missing or not valid for the distribution.
- //
- // * ErrCodeNoSuchFieldLevelEncryptionProfile "NoSuchFieldLevelEncryptionProfile"
- // The specified profile for field-level encryption doesn't exist.
- //
- // * ErrCodeNoSuchFieldLevelEncryptionConfig "NoSuchFieldLevelEncryptionConfig"
- // The specified configuration for field-level encryption doesn't exist.
- //
- // * ErrCodePreconditionFailed "PreconditionFailed"
- // The precondition given in one or more of the request-header fields evaluated
- // to false.
- //
- // * ErrCodeTooManyFieldLevelEncryptionQueryArgProfiles "TooManyFieldLevelEncryptionQueryArgProfiles"
- // The maximum number of query arg profiles for field-level encryption have
- // been created.
- //
- // * ErrCodeTooManyFieldLevelEncryptionContentTypeProfiles "TooManyFieldLevelEncryptionContentTypeProfiles"
- // The maximum number of content type profiles for field-level encryption have
- // been created.
- //
- // * ErrCodeQueryArgProfileEmpty "QueryArgProfileEmpty"
- // No profile specified for the field-level encryption query argument.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/UpdateFieldLevelEncryptionConfig
- func (c *CloudFront) UpdateFieldLevelEncryptionConfig(input *UpdateFieldLevelEncryptionConfigInput) (*UpdateFieldLevelEncryptionConfigOutput, error) {
- req, out := c.UpdateFieldLevelEncryptionConfigRequest(input)
- return out, req.Send()
- }
- // UpdateFieldLevelEncryptionConfigWithContext is the same as UpdateFieldLevelEncryptionConfig with the addition of
- // the ability to pass a context and additional request options.
- //
- // See UpdateFieldLevelEncryptionConfig for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) UpdateFieldLevelEncryptionConfigWithContext(ctx aws.Context, input *UpdateFieldLevelEncryptionConfigInput, opts ...request.Option) (*UpdateFieldLevelEncryptionConfigOutput, error) {
- req, out := c.UpdateFieldLevelEncryptionConfigRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opUpdateFieldLevelEncryptionProfile = "UpdateFieldLevelEncryptionProfile2018_11_05"
- // UpdateFieldLevelEncryptionProfileRequest generates a "aws/request.Request" representing the
- // client's request for the UpdateFieldLevelEncryptionProfile operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See UpdateFieldLevelEncryptionProfile for more information on using the UpdateFieldLevelEncryptionProfile
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the UpdateFieldLevelEncryptionProfileRequest method.
- // req, resp := client.UpdateFieldLevelEncryptionProfileRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/UpdateFieldLevelEncryptionProfile
- func (c *CloudFront) UpdateFieldLevelEncryptionProfileRequest(input *UpdateFieldLevelEncryptionProfileInput) (req *request.Request, output *UpdateFieldLevelEncryptionProfileOutput) {
- op := &request.Operation{
- Name: opUpdateFieldLevelEncryptionProfile,
- HTTPMethod: "PUT",
- HTTPPath: "/2018-11-05/field-level-encryption-profile/{Id}/config",
- }
- if input == nil {
- input = &UpdateFieldLevelEncryptionProfileInput{}
- }
- output = &UpdateFieldLevelEncryptionProfileOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // UpdateFieldLevelEncryptionProfile API operation for Amazon CloudFront.
- //
- // Update a field-level encryption profile.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation UpdateFieldLevelEncryptionProfile for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeFieldLevelEncryptionProfileAlreadyExists "FieldLevelEncryptionProfileAlreadyExists"
- // The specified profile for field-level encryption already exists.
- //
- // * ErrCodeIllegalUpdate "IllegalUpdate"
- // Origin and CallerReference cannot be updated.
- //
- // * ErrCodeInconsistentQuantities "InconsistentQuantities"
- // The value of Quantity and the size of Items don't match.
- //
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion"
- // The If-Match version is missing or not valid for the distribution.
- //
- // * ErrCodeNoSuchPublicKey "NoSuchPublicKey"
- // The specified public key doesn't exist.
- //
- // * ErrCodeNoSuchFieldLevelEncryptionProfile "NoSuchFieldLevelEncryptionProfile"
- // The specified profile for field-level encryption doesn't exist.
- //
- // * ErrCodePreconditionFailed "PreconditionFailed"
- // The precondition given in one or more of the request-header fields evaluated
- // to false.
- //
- // * ErrCodeFieldLevelEncryptionProfileSizeExceeded "FieldLevelEncryptionProfileSizeExceeded"
- // The maximum size of a profile for field-level encryption was exceeded.
- //
- // * ErrCodeTooManyFieldLevelEncryptionEncryptionEntities "TooManyFieldLevelEncryptionEncryptionEntities"
- // The maximum number of encryption entities for field-level encryption have
- // been created.
- //
- // * ErrCodeTooManyFieldLevelEncryptionFieldPatterns "TooManyFieldLevelEncryptionFieldPatterns"
- // The maximum number of field patterns for field-level encryption have been
- // created.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/UpdateFieldLevelEncryptionProfile
- func (c *CloudFront) UpdateFieldLevelEncryptionProfile(input *UpdateFieldLevelEncryptionProfileInput) (*UpdateFieldLevelEncryptionProfileOutput, error) {
- req, out := c.UpdateFieldLevelEncryptionProfileRequest(input)
- return out, req.Send()
- }
- // UpdateFieldLevelEncryptionProfileWithContext is the same as UpdateFieldLevelEncryptionProfile with the addition of
- // the ability to pass a context and additional request options.
- //
- // See UpdateFieldLevelEncryptionProfile for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) UpdateFieldLevelEncryptionProfileWithContext(ctx aws.Context, input *UpdateFieldLevelEncryptionProfileInput, opts ...request.Option) (*UpdateFieldLevelEncryptionProfileOutput, error) {
- req, out := c.UpdateFieldLevelEncryptionProfileRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opUpdatePublicKey = "UpdatePublicKey2018_11_05"
- // UpdatePublicKeyRequest generates a "aws/request.Request" representing the
- // client's request for the UpdatePublicKey operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See UpdatePublicKey for more information on using the UpdatePublicKey
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the UpdatePublicKeyRequest method.
- // req, resp := client.UpdatePublicKeyRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/UpdatePublicKey
- func (c *CloudFront) UpdatePublicKeyRequest(input *UpdatePublicKeyInput) (req *request.Request, output *UpdatePublicKeyOutput) {
- op := &request.Operation{
- Name: opUpdatePublicKey,
- HTTPMethod: "PUT",
- HTTPPath: "/2018-11-05/public-key/{Id}/config",
- }
- if input == nil {
- input = &UpdatePublicKeyInput{}
- }
- output = &UpdatePublicKeyOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // UpdatePublicKey API operation for Amazon CloudFront.
- //
- // Update public key information. Note that the only value you can change is
- // the comment.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation UpdatePublicKey for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeCannotChangeImmutablePublicKeyFields "CannotChangeImmutablePublicKeyFields"
- // You can't change the value of a public key.
- //
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion"
- // The If-Match version is missing or not valid for the distribution.
- //
- // * ErrCodeIllegalUpdate "IllegalUpdate"
- // Origin and CallerReference cannot be updated.
- //
- // * ErrCodeNoSuchPublicKey "NoSuchPublicKey"
- // The specified public key doesn't exist.
- //
- // * ErrCodePreconditionFailed "PreconditionFailed"
- // The precondition given in one or more of the request-header fields evaluated
- // to false.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/UpdatePublicKey
- func (c *CloudFront) UpdatePublicKey(input *UpdatePublicKeyInput) (*UpdatePublicKeyOutput, error) {
- req, out := c.UpdatePublicKeyRequest(input)
- return out, req.Send()
- }
- // UpdatePublicKeyWithContext is the same as UpdatePublicKey with the addition of
- // the ability to pass a context and additional request options.
- //
- // See UpdatePublicKey for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) UpdatePublicKeyWithContext(ctx aws.Context, input *UpdatePublicKeyInput, opts ...request.Option) (*UpdatePublicKeyOutput, error) {
- req, out := c.UpdatePublicKeyRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- const opUpdateStreamingDistribution = "UpdateStreamingDistribution2018_11_05"
- // UpdateStreamingDistributionRequest generates a "aws/request.Request" representing the
- // client's request for the UpdateStreamingDistribution operation. The "output" return
- // value will be populated with the request's response once the request completes
- // successfully.
- //
- // Use "Send" method on the returned Request to send the API call to the service.
- // the "output" return value is not valid until after Send returns without error.
- //
- // See UpdateStreamingDistribution for more information on using the UpdateStreamingDistribution
- // API call, and error handling.
- //
- // This method is useful when you want to inject custom logic or configuration
- // into the SDK's request lifecycle. Such as custom headers, or retry logic.
- //
- //
- // // Example sending a request using the UpdateStreamingDistributionRequest method.
- // req, resp := client.UpdateStreamingDistributionRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/UpdateStreamingDistribution
- func (c *CloudFront) UpdateStreamingDistributionRequest(input *UpdateStreamingDistributionInput) (req *request.Request, output *UpdateStreamingDistributionOutput) {
- op := &request.Operation{
- Name: opUpdateStreamingDistribution,
- HTTPMethod: "PUT",
- HTTPPath: "/2018-11-05/streaming-distribution/{Id}/config",
- }
- if input == nil {
- input = &UpdateStreamingDistributionInput{}
- }
- output = &UpdateStreamingDistributionOutput{}
- req = c.newRequest(op, input, output)
- return
- }
- // UpdateStreamingDistribution API operation for Amazon CloudFront.
- //
- // Update a streaming distribution.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon CloudFront's
- // API operation UpdateStreamingDistribution for usage and error information.
- //
- // Returned Error Codes:
- // * ErrCodeAccessDenied "AccessDenied"
- // Access denied.
- //
- // * ErrCodeCNAMEAlreadyExists "CNAMEAlreadyExists"
- //
- // * ErrCodeIllegalUpdate "IllegalUpdate"
- // Origin and CallerReference cannot be updated.
- //
- // * ErrCodeInvalidIfMatchVersion "InvalidIfMatchVersion"
- // The If-Match version is missing or not valid for the distribution.
- //
- // * ErrCodeMissingBody "MissingBody"
- // This operation requires a body. Ensure that the body is present and the Content-Type
- // header is set.
- //
- // * ErrCodeNoSuchStreamingDistribution "NoSuchStreamingDistribution"
- // The specified streaming distribution does not exist.
- //
- // * ErrCodePreconditionFailed "PreconditionFailed"
- // The precondition given in one or more of the request-header fields evaluated
- // to false.
- //
- // * ErrCodeTooManyStreamingDistributionCNAMEs "TooManyStreamingDistributionCNAMEs"
- //
- // * ErrCodeInvalidArgument "InvalidArgument"
- // The argument is invalid.
- //
- // * ErrCodeInvalidOriginAccessIdentity "InvalidOriginAccessIdentity"
- // The origin access identity is not valid or doesn't exist.
- //
- // * ErrCodeTooManyTrustedSigners "TooManyTrustedSigners"
- // Your request contains more trusted signers than are allowed per distribution.
- //
- // * ErrCodeTrustedSignerDoesNotExist "TrustedSignerDoesNotExist"
- // One or more of your trusted signers don't exist.
- //
- // * ErrCodeInconsistentQuantities "InconsistentQuantities"
- // The value of Quantity and the size of Items don't match.
- //
- // See also, https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2018-11-05/UpdateStreamingDistribution
- func (c *CloudFront) UpdateStreamingDistribution(input *UpdateStreamingDistributionInput) (*UpdateStreamingDistributionOutput, error) {
- req, out := c.UpdateStreamingDistributionRequest(input)
- return out, req.Send()
- }
- // UpdateStreamingDistributionWithContext is the same as UpdateStreamingDistribution with the addition of
- // the ability to pass a context and additional request options.
- //
- // See UpdateStreamingDistribution for details on how to use this API operation.
- //
- // The context must be non-nil and will be used for request cancellation. If
- // the context is nil a panic will occur. In the future the SDK may create
- // sub-contexts for http.Requests. See https://golang.org/pkg/context/
- // for more information on using Contexts.
- func (c *CloudFront) UpdateStreamingDistributionWithContext(ctx aws.Context, input *UpdateStreamingDistributionInput, opts ...request.Option) (*UpdateStreamingDistributionOutput, error) {
- req, out := c.UpdateStreamingDistributionRequest(input)
- req.SetContext(ctx)
- req.ApplyOptions(opts...)
- return out, req.Send()
- }
- // A complex type that lists the AWS accounts, if any, that you included in
- // the TrustedSigners complex type for this distribution. These are the accounts
- // that you want to allow to create signed URLs for private content.
- //
- // The Signer complex type lists the AWS account number of the trusted signer
- // or self if the signer is the AWS account that created the distribution. The
- // Signer element also includes the IDs of any active CloudFront key pairs that
- // are associated with the trusted signer's AWS account. If no KeyPairId element
- // appears for a Signer, that signer can't create signed URLs.
- //
- // For more information, see Serving Private Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html)
- // in the Amazon CloudFront Developer Guide.
- type ActiveTrustedSigners struct {
- _ struct{} `type:"structure"`
- // Enabled is true if any of the AWS accounts listed in the TrustedSigners complex
- // type for this RTMP distribution have active CloudFront key pairs. If not,
- // Enabled is false.
- //
- // For more information, see ActiveTrustedSigners.
- //
- // Enabled is a required field
- Enabled *bool `type:"boolean" required:"true"`
- // A complex type that contains one Signer complex type for each trusted signer
- // that is specified in the TrustedSigners complex type.
- //
- // For more information, see ActiveTrustedSigners.
- Items []*Signer `locationNameList:"Signer" type:"list"`
- // A complex type that contains one Signer complex type for each trusted signer
- // specified in the TrustedSigners complex type.
- //
- // For more information, see ActiveTrustedSigners.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s ActiveTrustedSigners) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ActiveTrustedSigners) GoString() string {
- return s.String()
- }
- // SetEnabled sets the Enabled field's value.
- func (s *ActiveTrustedSigners) SetEnabled(v bool) *ActiveTrustedSigners {
- s.Enabled = &v
- return s
- }
- // SetItems sets the Items field's value.
- func (s *ActiveTrustedSigners) SetItems(v []*Signer) *ActiveTrustedSigners {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *ActiveTrustedSigners) SetQuantity(v int64) *ActiveTrustedSigners {
- s.Quantity = &v
- return s
- }
- // A complex type that contains information about CNAMEs (alternate domain names),
- // if any, for this distribution.
- type Aliases struct {
- _ struct{} `type:"structure"`
- // A complex type that contains the CNAME aliases, if any, that you want to
- // associate with this distribution.
- Items []*string `locationNameList:"CNAME" type:"list"`
- // The number of CNAME aliases, if any, that you want to associate with this
- // distribution.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s Aliases) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Aliases) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *Aliases) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "Aliases"}
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *Aliases) SetItems(v []*string) *Aliases {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *Aliases) SetQuantity(v int64) *Aliases {
- s.Quantity = &v
- return s
- }
- // A complex type that controls which HTTP methods CloudFront processes and
- // forwards to your Amazon S3 bucket or your custom origin. There are three
- // choices:
- //
- // * CloudFront forwards only GET and HEAD requests.
- //
- // * CloudFront forwards only GET, HEAD, and OPTIONS requests.
- //
- // * CloudFront forwards GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE
- // requests.
- //
- // If you pick the third choice, you may need to restrict access to your Amazon
- // S3 bucket or to your custom origin so users can't perform operations that
- // you don't want them to. For example, you might not want users to have permissions
- // to delete objects from your origin.
- type AllowedMethods struct {
- _ struct{} `type:"structure"`
- // A complex type that controls whether CloudFront caches the response to requests
- // using the specified HTTP methods. There are two choices:
- //
- // * CloudFront caches responses to GET and HEAD requests.
- //
- // * CloudFront caches responses to GET, HEAD, and OPTIONS requests.
- //
- // If you pick the second choice for your Amazon S3 Origin, you may need to
- // forward Access-Control-Request-Method, Access-Control-Request-Headers, and
- // Origin headers for the responses to be cached correctly.
- CachedMethods *CachedMethods `type:"structure"`
- // A complex type that contains the HTTP methods that you want CloudFront to
- // process and forward to your origin.
- //
- // Items is a required field
- Items []*string `locationNameList:"Method" type:"list" required:"true"`
- // The number of HTTP methods that you want CloudFront to forward to your origin.
- // Valid values are 2 (for GET and HEAD requests), 3 (for GET, HEAD, and OPTIONS
- // requests) and 7 (for GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests).
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s AllowedMethods) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s AllowedMethods) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *AllowedMethods) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "AllowedMethods"}
- if s.Items == nil {
- invalidParams.Add(request.NewErrParamRequired("Items"))
- }
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if s.CachedMethods != nil {
- if err := s.CachedMethods.Validate(); err != nil {
- invalidParams.AddNested("CachedMethods", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetCachedMethods sets the CachedMethods field's value.
- func (s *AllowedMethods) SetCachedMethods(v *CachedMethods) *AllowedMethods {
- s.CachedMethods = v
- return s
- }
- // SetItems sets the Items field's value.
- func (s *AllowedMethods) SetItems(v []*string) *AllowedMethods {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *AllowedMethods) SetQuantity(v int64) *AllowedMethods {
- s.Quantity = &v
- return s
- }
- // A complex type that describes how CloudFront processes requests.
- //
- // You must create at least as many cache behaviors (including the default cache
- // behavior) as you have origins if you want CloudFront to distribute objects
- // from all of the origins. Each cache behavior specifies the one origin from
- // which you want CloudFront to get objects. If you have two origins and only
- // the default cache behavior, the default cache behavior will cause CloudFront
- // to get objects from one of the origins, but the other origin is never used.
- //
- // For the current limit on the number of cache behaviors that you can add to
- // a distribution, see Amazon CloudFront Limits (http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_cloudfront)
- // in the AWS General Reference.
- //
- // If you don't want to specify any cache behaviors, include only an empty CacheBehaviors
- // element. Don't include an empty CacheBehavior element, or CloudFront returns
- // a MalformedXML error.
- //
- // To delete all cache behaviors in an existing distribution, update the distribution
- // configuration and include only an empty CacheBehaviors element.
- //
- // To add, change, or remove one or more cache behaviors, update the distribution
- // configuration and specify all of the cache behaviors that you want to include
- // in the updated distribution.
- //
- // For more information about cache behaviors, see Cache Behaviors (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesCacheBehavior)
- // in the Amazon CloudFront Developer Guide.
- type CacheBehavior struct {
- _ struct{} `type:"structure"`
- // A complex type that controls which HTTP methods CloudFront processes and
- // forwards to your Amazon S3 bucket or your custom origin. There are three
- // choices:
- //
- // * CloudFront forwards only GET and HEAD requests.
- //
- // * CloudFront forwards only GET, HEAD, and OPTIONS requests.
- //
- // * CloudFront forwards GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE
- // requests.
- //
- // If you pick the third choice, you may need to restrict access to your Amazon
- // S3 bucket or to your custom origin so users can't perform operations that
- // you don't want them to. For example, you might not want users to have permissions
- // to delete objects from your origin.
- AllowedMethods *AllowedMethods `type:"structure"`
- // Whether you want CloudFront to automatically compress certain files for this
- // cache behavior. If so, specify true; if not, specify false. For more information,
- // see Serving Compressed Files (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/ServingCompressedFiles.html)
- // in the Amazon CloudFront Developer Guide.
- Compress *bool `type:"boolean"`
- // The default amount of time that you want objects to stay in CloudFront caches
- // before CloudFront forwards another request to your origin to determine whether
- // the object has been updated. The value that you specify applies only when
- // your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control
- // s-maxage, and Expires to objects. For more information, see Specifying How
- // Long Objects and Errors Stay in a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html)
- // in the Amazon CloudFront Developer Guide.
- DefaultTTL *int64 `type:"long"`
- // The value of ID for the field-level encryption configuration that you want
- // CloudFront to use for encrypting specific fields of data for a cache behavior
- // or for the default cache behavior in your distribution.
- FieldLevelEncryptionId *string `type:"string"`
- // A complex type that specifies how CloudFront handles query strings and cookies.
- //
- // ForwardedValues is a required field
- ForwardedValues *ForwardedValues `type:"structure" required:"true"`
- // A complex type that contains zero or more Lambda function associations for
- // a cache behavior.
- LambdaFunctionAssociations *LambdaFunctionAssociations `type:"structure"`
- // The maximum amount of time that you want objects to stay in CloudFront caches
- // before CloudFront forwards another request to your origin to determine whether
- // the object has been updated. The value that you specify applies only when
- // your origin adds HTTP headers such as Cache-Control max-age, Cache-Control
- // s-maxage, and Expires to objects. For more information, see Specifying How
- // Long Objects and Errors Stay in a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html)
- // in the Amazon CloudFront Developer Guide.
- MaxTTL *int64 `type:"long"`
- // The minimum amount of time that you want objects to stay in CloudFront caches
- // before CloudFront forwards another request to your origin to determine whether
- // the object has been updated. For more information, see Specifying How Long
- // Objects and Errors Stay in a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html)
- // in the Amazon Amazon CloudFront Developer Guide.
- //
- // You must specify 0 for MinTTL if you configure CloudFront to forward all
- // headers to your origin (under Headers, if you specify 1 for Quantity and
- // * for Name).
- //
- // MinTTL is a required field
- MinTTL *int64 `type:"long" required:"true"`
- // The pattern (for example, images/*.jpg) that specifies which requests to
- // apply the behavior to. When CloudFront receives a viewer request, the requested
- // path is compared with path patterns in the order in which cache behaviors
- // are listed in the distribution.
- //
- // You can optionally include a slash (/) at the beginning of the path pattern.
- // For example, /images/*.jpg. CloudFront behavior is the same with or without
- // the leading /.
- //
- // The path pattern for the default cache behavior is * and cannot be changed.
- // If the request for an object does not match the path pattern for any cache
- // behaviors, CloudFront applies the behavior in the default cache behavior.
- //
- // For more information, see Path Pattern (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesPathPattern)
- // in the Amazon CloudFront Developer Guide.
- //
- // PathPattern is a required field
- PathPattern *string `type:"string" required:"true"`
- // Indicates whether you want to distribute media files in the Microsoft Smooth
- // Streaming format using the origin that is associated with this cache behavior.
- // If so, specify true; if not, specify false. If you specify true for SmoothStreaming,
- // you can still distribute other content using this cache behavior if the content
- // matches the value of PathPattern.
- SmoothStreaming *bool `type:"boolean"`
- // The value of ID for the origin that you want CloudFront to route requests
- // to when a request matches the path pattern either for a cache behavior or
- // for the default cache behavior in your distribution.
- //
- // TargetOriginId is a required field
- TargetOriginId *string `type:"string" required:"true"`
- // A complex type that specifies the AWS accounts, if any, that you want to
- // allow to create signed URLs for private content.
- //
- // If you want to require signed URLs in requests for objects in the target
- // origin that match the PathPattern for this cache behavior, specify true for
- // Enabled, and specify the applicable values for Quantity and Items. For more
- // information, see Serving Private Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html)
- // in the Amazon Amazon CloudFront Developer Guide.
- //
- // If you don't want to require signed URLs in requests for objects that match
- // PathPattern, specify false for Enabled and 0 for Quantity. Omit Items.
- //
- // To add, change, or remove one or more trusted signers, change Enabled to
- // true (if it's currently false), change Quantity as applicable, and specify
- // all of the trusted signers that you want to include in the updated distribution.
- //
- // TrustedSigners is a required field
- TrustedSigners *TrustedSigners `type:"structure" required:"true"`
- // The protocol that viewers can use to access the files in the origin specified
- // by TargetOriginId when a request matches the path pattern in PathPattern.
- // You can specify the following options:
- //
- // * allow-all: Viewers can use HTTP or HTTPS.
- //
- // * redirect-to-https: If a viewer submits an HTTP request, CloudFront returns
- // an HTTP status code of 301 (Moved Permanently) to the viewer along with
- // the HTTPS URL. The viewer then resubmits the request using the new URL.
- //
- //
- // * https-only: If a viewer sends an HTTP request, CloudFront returns an
- // HTTP status code of 403 (Forbidden).
- //
- // For more information about requiring the HTTPS protocol, see Using an HTTPS
- // Connection to Access Your Objects (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html)
- // in the Amazon CloudFront Developer Guide.
- //
- // The only way to guarantee that viewers retrieve an object that was fetched
- // from the origin using HTTPS is never to use any other protocol to fetch the
- // object. If you have recently changed from HTTP to HTTPS, we recommend that
- // you clear your objects' cache because cached objects are protocol agnostic.
- // That means that an edge location will return an object from the cache regardless
- // of whether the current request protocol matches the protocol used previously.
- // For more information, see Specifying How Long Objects and Errors Stay in
- // a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html)
- // in the Amazon CloudFront Developer Guide.
- //
- // ViewerProtocolPolicy is a required field
- ViewerProtocolPolicy *string `type:"string" required:"true" enum:"ViewerProtocolPolicy"`
- }
- // String returns the string representation
- func (s CacheBehavior) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CacheBehavior) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CacheBehavior) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CacheBehavior"}
- if s.ForwardedValues == nil {
- invalidParams.Add(request.NewErrParamRequired("ForwardedValues"))
- }
- if s.MinTTL == nil {
- invalidParams.Add(request.NewErrParamRequired("MinTTL"))
- }
- if s.PathPattern == nil {
- invalidParams.Add(request.NewErrParamRequired("PathPattern"))
- }
- if s.TargetOriginId == nil {
- invalidParams.Add(request.NewErrParamRequired("TargetOriginId"))
- }
- if s.TrustedSigners == nil {
- invalidParams.Add(request.NewErrParamRequired("TrustedSigners"))
- }
- if s.ViewerProtocolPolicy == nil {
- invalidParams.Add(request.NewErrParamRequired("ViewerProtocolPolicy"))
- }
- if s.AllowedMethods != nil {
- if err := s.AllowedMethods.Validate(); err != nil {
- invalidParams.AddNested("AllowedMethods", err.(request.ErrInvalidParams))
- }
- }
- if s.ForwardedValues != nil {
- if err := s.ForwardedValues.Validate(); err != nil {
- invalidParams.AddNested("ForwardedValues", err.(request.ErrInvalidParams))
- }
- }
- if s.LambdaFunctionAssociations != nil {
- if err := s.LambdaFunctionAssociations.Validate(); err != nil {
- invalidParams.AddNested("LambdaFunctionAssociations", err.(request.ErrInvalidParams))
- }
- }
- if s.TrustedSigners != nil {
- if err := s.TrustedSigners.Validate(); err != nil {
- invalidParams.AddNested("TrustedSigners", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetAllowedMethods sets the AllowedMethods field's value.
- func (s *CacheBehavior) SetAllowedMethods(v *AllowedMethods) *CacheBehavior {
- s.AllowedMethods = v
- return s
- }
- // SetCompress sets the Compress field's value.
- func (s *CacheBehavior) SetCompress(v bool) *CacheBehavior {
- s.Compress = &v
- return s
- }
- // SetDefaultTTL sets the DefaultTTL field's value.
- func (s *CacheBehavior) SetDefaultTTL(v int64) *CacheBehavior {
- s.DefaultTTL = &v
- return s
- }
- // SetFieldLevelEncryptionId sets the FieldLevelEncryptionId field's value.
- func (s *CacheBehavior) SetFieldLevelEncryptionId(v string) *CacheBehavior {
- s.FieldLevelEncryptionId = &v
- return s
- }
- // SetForwardedValues sets the ForwardedValues field's value.
- func (s *CacheBehavior) SetForwardedValues(v *ForwardedValues) *CacheBehavior {
- s.ForwardedValues = v
- return s
- }
- // SetLambdaFunctionAssociations sets the LambdaFunctionAssociations field's value.
- func (s *CacheBehavior) SetLambdaFunctionAssociations(v *LambdaFunctionAssociations) *CacheBehavior {
- s.LambdaFunctionAssociations = v
- return s
- }
- // SetMaxTTL sets the MaxTTL field's value.
- func (s *CacheBehavior) SetMaxTTL(v int64) *CacheBehavior {
- s.MaxTTL = &v
- return s
- }
- // SetMinTTL sets the MinTTL field's value.
- func (s *CacheBehavior) SetMinTTL(v int64) *CacheBehavior {
- s.MinTTL = &v
- return s
- }
- // SetPathPattern sets the PathPattern field's value.
- func (s *CacheBehavior) SetPathPattern(v string) *CacheBehavior {
- s.PathPattern = &v
- return s
- }
- // SetSmoothStreaming sets the SmoothStreaming field's value.
- func (s *CacheBehavior) SetSmoothStreaming(v bool) *CacheBehavior {
- s.SmoothStreaming = &v
- return s
- }
- // SetTargetOriginId sets the TargetOriginId field's value.
- func (s *CacheBehavior) SetTargetOriginId(v string) *CacheBehavior {
- s.TargetOriginId = &v
- return s
- }
- // SetTrustedSigners sets the TrustedSigners field's value.
- func (s *CacheBehavior) SetTrustedSigners(v *TrustedSigners) *CacheBehavior {
- s.TrustedSigners = v
- return s
- }
- // SetViewerProtocolPolicy sets the ViewerProtocolPolicy field's value.
- func (s *CacheBehavior) SetViewerProtocolPolicy(v string) *CacheBehavior {
- s.ViewerProtocolPolicy = &v
- return s
- }
- // A complex type that contains zero or more CacheBehavior elements.
- type CacheBehaviors struct {
- _ struct{} `type:"structure"`
- // Optional: A complex type that contains cache behaviors for this distribution.
- // If Quantity is 0, you can omit Items.
- Items []*CacheBehavior `locationNameList:"CacheBehavior" type:"list"`
- // The number of cache behaviors for this distribution.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s CacheBehaviors) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CacheBehaviors) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CacheBehaviors) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CacheBehaviors"}
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if s.Items != nil {
- for i, v := range s.Items {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *CacheBehaviors) SetItems(v []*CacheBehavior) *CacheBehaviors {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *CacheBehaviors) SetQuantity(v int64) *CacheBehaviors {
- s.Quantity = &v
- return s
- }
- // A complex type that controls whether CloudFront caches the response to requests
- // using the specified HTTP methods. There are two choices:
- //
- // * CloudFront caches responses to GET and HEAD requests.
- //
- // * CloudFront caches responses to GET, HEAD, and OPTIONS requests.
- //
- // If you pick the second choice for your Amazon S3 Origin, you may need to
- // forward Access-Control-Request-Method, Access-Control-Request-Headers, and
- // Origin headers for the responses to be cached correctly.
- type CachedMethods struct {
- _ struct{} `type:"structure"`
- // A complex type that contains the HTTP methods that you want CloudFront to
- // cache responses to.
- //
- // Items is a required field
- Items []*string `locationNameList:"Method" type:"list" required:"true"`
- // The number of HTTP methods for which you want CloudFront to cache responses.
- // Valid values are 2 (for caching responses to GET and HEAD requests) and 3
- // (for caching responses to GET, HEAD, and OPTIONS requests).
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s CachedMethods) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CachedMethods) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CachedMethods) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CachedMethods"}
- if s.Items == nil {
- invalidParams.Add(request.NewErrParamRequired("Items"))
- }
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *CachedMethods) SetItems(v []*string) *CachedMethods {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *CachedMethods) SetQuantity(v int64) *CachedMethods {
- s.Quantity = &v
- return s
- }
- // A field-level encryption content type profile.
- type ContentTypeProfile struct {
- _ struct{} `type:"structure"`
- // The content type for a field-level encryption content type-profile mapping.
- //
- // ContentType is a required field
- ContentType *string `type:"string" required:"true"`
- // The format for a field-level encryption content type-profile mapping.
- //
- // Format is a required field
- Format *string `type:"string" required:"true" enum:"Format"`
- // The profile ID for a field-level encryption content type-profile mapping.
- ProfileId *string `type:"string"`
- }
- // String returns the string representation
- func (s ContentTypeProfile) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ContentTypeProfile) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ContentTypeProfile) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ContentTypeProfile"}
- if s.ContentType == nil {
- invalidParams.Add(request.NewErrParamRequired("ContentType"))
- }
- if s.Format == nil {
- invalidParams.Add(request.NewErrParamRequired("Format"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetContentType sets the ContentType field's value.
- func (s *ContentTypeProfile) SetContentType(v string) *ContentTypeProfile {
- s.ContentType = &v
- return s
- }
- // SetFormat sets the Format field's value.
- func (s *ContentTypeProfile) SetFormat(v string) *ContentTypeProfile {
- s.Format = &v
- return s
- }
- // SetProfileId sets the ProfileId field's value.
- func (s *ContentTypeProfile) SetProfileId(v string) *ContentTypeProfile {
- s.ProfileId = &v
- return s
- }
- // The configuration for a field-level encryption content type-profile mapping.
- type ContentTypeProfileConfig struct {
- _ struct{} `type:"structure"`
- // The configuration for a field-level encryption content type-profile.
- ContentTypeProfiles *ContentTypeProfiles `type:"structure"`
- // The setting in a field-level encryption content type-profile mapping that
- // specifies what to do when an unknown content type is provided for the profile.
- // If true, content is forwarded without being encrypted when the content type
- // is unknown. If false (the default), an error is returned when the content
- // type is unknown.
- //
- // ForwardWhenContentTypeIsUnknown is a required field
- ForwardWhenContentTypeIsUnknown *bool `type:"boolean" required:"true"`
- }
- // String returns the string representation
- func (s ContentTypeProfileConfig) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ContentTypeProfileConfig) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ContentTypeProfileConfig) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ContentTypeProfileConfig"}
- if s.ForwardWhenContentTypeIsUnknown == nil {
- invalidParams.Add(request.NewErrParamRequired("ForwardWhenContentTypeIsUnknown"))
- }
- if s.ContentTypeProfiles != nil {
- if err := s.ContentTypeProfiles.Validate(); err != nil {
- invalidParams.AddNested("ContentTypeProfiles", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetContentTypeProfiles sets the ContentTypeProfiles field's value.
- func (s *ContentTypeProfileConfig) SetContentTypeProfiles(v *ContentTypeProfiles) *ContentTypeProfileConfig {
- s.ContentTypeProfiles = v
- return s
- }
- // SetForwardWhenContentTypeIsUnknown sets the ForwardWhenContentTypeIsUnknown field's value.
- func (s *ContentTypeProfileConfig) SetForwardWhenContentTypeIsUnknown(v bool) *ContentTypeProfileConfig {
- s.ForwardWhenContentTypeIsUnknown = &v
- return s
- }
- // Field-level encryption content type-profile.
- type ContentTypeProfiles struct {
- _ struct{} `type:"structure"`
- // Items in a field-level encryption content type-profile mapping.
- Items []*ContentTypeProfile `locationNameList:"ContentTypeProfile" type:"list"`
- // The number of field-level encryption content type-profile mappings.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s ContentTypeProfiles) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ContentTypeProfiles) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ContentTypeProfiles) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ContentTypeProfiles"}
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if s.Items != nil {
- for i, v := range s.Items {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *ContentTypeProfiles) SetItems(v []*ContentTypeProfile) *ContentTypeProfiles {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *ContentTypeProfiles) SetQuantity(v int64) *ContentTypeProfiles {
- s.Quantity = &v
- return s
- }
- // A complex type that specifies whether you want CloudFront to forward cookies
- // to the origin and, if so, which ones. For more information about forwarding
- // cookies to the origin, see How CloudFront Forwards, Caches, and Logs Cookies
- // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html)
- // in the Amazon CloudFront Developer Guide.
- type CookieNames struct {
- _ struct{} `type:"structure"`
- // A complex type that contains one Name element for each cookie that you want
- // CloudFront to forward to the origin for this cache behavior.
- Items []*string `locationNameList:"Name" type:"list"`
- // The number of different cookies that you want CloudFront to forward to the
- // origin for this cache behavior.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s CookieNames) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CookieNames) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CookieNames) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CookieNames"}
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *CookieNames) SetItems(v []*string) *CookieNames {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *CookieNames) SetQuantity(v int64) *CookieNames {
- s.Quantity = &v
- return s
- }
- // A complex type that specifies whether you want CloudFront to forward cookies
- // to the origin and, if so, which ones. For more information about forwarding
- // cookies to the origin, see How CloudFront Forwards, Caches, and Logs Cookies
- // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html)
- // in the Amazon CloudFront Developer Guide.
- type CookiePreference struct {
- _ struct{} `type:"structure"`
- // Specifies which cookies to forward to the origin for this cache behavior:
- // all, none, or the list of cookies specified in the WhitelistedNames complex
- // type.
- //
- // Amazon S3 doesn't process cookies. When the cache behavior is forwarding
- // requests to an Amazon S3 origin, specify none for the Forward element.
- //
- // Forward is a required field
- Forward *string `type:"string" required:"true" enum:"ItemSelection"`
- // Required if you specify whitelist for the value of Forward:. A complex type
- // that specifies how many different cookies you want CloudFront to forward
- // to the origin for this cache behavior and, if you want to forward selected
- // cookies, the names of those cookies.
- //
- // If you specify all or none for the value of Forward, omit WhitelistedNames.
- // If you change the value of Forward from whitelist to all or none and you
- // don't delete the WhitelistedNames element and its child elements, CloudFront
- // deletes them automatically.
- //
- // For the current limit on the number of cookie names that you can whitelist
- // for each cache behavior, see Amazon CloudFront Limits (http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_cloudfront)
- // in the AWS General Reference.
- WhitelistedNames *CookieNames `type:"structure"`
- }
- // String returns the string representation
- func (s CookiePreference) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CookiePreference) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CookiePreference) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CookiePreference"}
- if s.Forward == nil {
- invalidParams.Add(request.NewErrParamRequired("Forward"))
- }
- if s.WhitelistedNames != nil {
- if err := s.WhitelistedNames.Validate(); err != nil {
- invalidParams.AddNested("WhitelistedNames", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetForward sets the Forward field's value.
- func (s *CookiePreference) SetForward(v string) *CookiePreference {
- s.Forward = &v
- return s
- }
- // SetWhitelistedNames sets the WhitelistedNames field's value.
- func (s *CookiePreference) SetWhitelistedNames(v *CookieNames) *CookiePreference {
- s.WhitelistedNames = v
- return s
- }
- // The request to create a new origin access identity.
- type CreateCloudFrontOriginAccessIdentityInput struct {
- _ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentityConfig"`
- // The current configuration information for the identity.
- //
- // CloudFrontOriginAccessIdentityConfig is a required field
- CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `locationName:"CloudFrontOriginAccessIdentityConfig" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2018-11-05/"`
- }
- // String returns the string representation
- func (s CreateCloudFrontOriginAccessIdentityInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateCloudFrontOriginAccessIdentityInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateCloudFrontOriginAccessIdentityInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateCloudFrontOriginAccessIdentityInput"}
- if s.CloudFrontOriginAccessIdentityConfig == nil {
- invalidParams.Add(request.NewErrParamRequired("CloudFrontOriginAccessIdentityConfig"))
- }
- if s.CloudFrontOriginAccessIdentityConfig != nil {
- if err := s.CloudFrontOriginAccessIdentityConfig.Validate(); err != nil {
- invalidParams.AddNested("CloudFrontOriginAccessIdentityConfig", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetCloudFrontOriginAccessIdentityConfig sets the CloudFrontOriginAccessIdentityConfig field's value.
- func (s *CreateCloudFrontOriginAccessIdentityInput) SetCloudFrontOriginAccessIdentityConfig(v *OriginAccessIdentityConfig) *CreateCloudFrontOriginAccessIdentityInput {
- s.CloudFrontOriginAccessIdentityConfig = v
- return s
- }
- // The returned result of the corresponding request.
- type CreateCloudFrontOriginAccessIdentityOutput struct {
- _ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentity"`
- // The origin access identity's information.
- CloudFrontOriginAccessIdentity *OriginAccessIdentity `type:"structure"`
- // The current version of the origin access identity created.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // The fully qualified URI of the new origin access identity just created. For
- // example: https://cloudfront.amazonaws.com/2010-11-01/origin-access-identity/cloudfront/E74FTE3AJFJ256A.
- Location *string `location:"header" locationName:"Location" type:"string"`
- }
- // String returns the string representation
- func (s CreateCloudFrontOriginAccessIdentityOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateCloudFrontOriginAccessIdentityOutput) GoString() string {
- return s.String()
- }
- // SetCloudFrontOriginAccessIdentity sets the CloudFrontOriginAccessIdentity field's value.
- func (s *CreateCloudFrontOriginAccessIdentityOutput) SetCloudFrontOriginAccessIdentity(v *OriginAccessIdentity) *CreateCloudFrontOriginAccessIdentityOutput {
- s.CloudFrontOriginAccessIdentity = v
- return s
- }
- // SetETag sets the ETag field's value.
- func (s *CreateCloudFrontOriginAccessIdentityOutput) SetETag(v string) *CreateCloudFrontOriginAccessIdentityOutput {
- s.ETag = &v
- return s
- }
- // SetLocation sets the Location field's value.
- func (s *CreateCloudFrontOriginAccessIdentityOutput) SetLocation(v string) *CreateCloudFrontOriginAccessIdentityOutput {
- s.Location = &v
- return s
- }
- // The request to create a new distribution.
- type CreateDistributionInput struct {
- _ struct{} `type:"structure" payload:"DistributionConfig"`
- // The distribution's configuration information.
- //
- // DistributionConfig is a required field
- DistributionConfig *DistributionConfig `locationName:"DistributionConfig" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2018-11-05/"`
- }
- // String returns the string representation
- func (s CreateDistributionInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateDistributionInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateDistributionInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateDistributionInput"}
- if s.DistributionConfig == nil {
- invalidParams.Add(request.NewErrParamRequired("DistributionConfig"))
- }
- if s.DistributionConfig != nil {
- if err := s.DistributionConfig.Validate(); err != nil {
- invalidParams.AddNested("DistributionConfig", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetDistributionConfig sets the DistributionConfig field's value.
- func (s *CreateDistributionInput) SetDistributionConfig(v *DistributionConfig) *CreateDistributionInput {
- s.DistributionConfig = v
- return s
- }
- // The returned result of the corresponding request.
- type CreateDistributionOutput struct {
- _ struct{} `type:"structure" payload:"Distribution"`
- // The distribution's information.
- Distribution *Distribution `type:"structure"`
- // The current version of the distribution created.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // The fully qualified URI of the new distribution resource just created. For
- // example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5.
- Location *string `location:"header" locationName:"Location" type:"string"`
- }
- // String returns the string representation
- func (s CreateDistributionOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateDistributionOutput) GoString() string {
- return s.String()
- }
- // SetDistribution sets the Distribution field's value.
- func (s *CreateDistributionOutput) SetDistribution(v *Distribution) *CreateDistributionOutput {
- s.Distribution = v
- return s
- }
- // SetETag sets the ETag field's value.
- func (s *CreateDistributionOutput) SetETag(v string) *CreateDistributionOutput {
- s.ETag = &v
- return s
- }
- // SetLocation sets the Location field's value.
- func (s *CreateDistributionOutput) SetLocation(v string) *CreateDistributionOutput {
- s.Location = &v
- return s
- }
- // The request to create a new distribution with tags.
- type CreateDistributionWithTagsInput struct {
- _ struct{} `type:"structure" payload:"DistributionConfigWithTags"`
- // The distribution's configuration information.
- //
- // DistributionConfigWithTags is a required field
- DistributionConfigWithTags *DistributionConfigWithTags `locationName:"DistributionConfigWithTags" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2018-11-05/"`
- }
- // String returns the string representation
- func (s CreateDistributionWithTagsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateDistributionWithTagsInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateDistributionWithTagsInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateDistributionWithTagsInput"}
- if s.DistributionConfigWithTags == nil {
- invalidParams.Add(request.NewErrParamRequired("DistributionConfigWithTags"))
- }
- if s.DistributionConfigWithTags != nil {
- if err := s.DistributionConfigWithTags.Validate(); err != nil {
- invalidParams.AddNested("DistributionConfigWithTags", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetDistributionConfigWithTags sets the DistributionConfigWithTags field's value.
- func (s *CreateDistributionWithTagsInput) SetDistributionConfigWithTags(v *DistributionConfigWithTags) *CreateDistributionWithTagsInput {
- s.DistributionConfigWithTags = v
- return s
- }
- // The returned result of the corresponding request.
- type CreateDistributionWithTagsOutput struct {
- _ struct{} `type:"structure" payload:"Distribution"`
- // The distribution's information.
- Distribution *Distribution `type:"structure"`
- // The current version of the distribution created.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // The fully qualified URI of the new distribution resource just created. For
- // example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5.
- Location *string `location:"header" locationName:"Location" type:"string"`
- }
- // String returns the string representation
- func (s CreateDistributionWithTagsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateDistributionWithTagsOutput) GoString() string {
- return s.String()
- }
- // SetDistribution sets the Distribution field's value.
- func (s *CreateDistributionWithTagsOutput) SetDistribution(v *Distribution) *CreateDistributionWithTagsOutput {
- s.Distribution = v
- return s
- }
- // SetETag sets the ETag field's value.
- func (s *CreateDistributionWithTagsOutput) SetETag(v string) *CreateDistributionWithTagsOutput {
- s.ETag = &v
- return s
- }
- // SetLocation sets the Location field's value.
- func (s *CreateDistributionWithTagsOutput) SetLocation(v string) *CreateDistributionWithTagsOutput {
- s.Location = &v
- return s
- }
- type CreateFieldLevelEncryptionConfigInput struct {
- _ struct{} `type:"structure" payload:"FieldLevelEncryptionConfig"`
- // The request to create a new field-level encryption configuration.
- //
- // FieldLevelEncryptionConfig is a required field
- FieldLevelEncryptionConfig *FieldLevelEncryptionConfig `locationName:"FieldLevelEncryptionConfig" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2018-11-05/"`
- }
- // String returns the string representation
- func (s CreateFieldLevelEncryptionConfigInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateFieldLevelEncryptionConfigInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateFieldLevelEncryptionConfigInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateFieldLevelEncryptionConfigInput"}
- if s.FieldLevelEncryptionConfig == nil {
- invalidParams.Add(request.NewErrParamRequired("FieldLevelEncryptionConfig"))
- }
- if s.FieldLevelEncryptionConfig != nil {
- if err := s.FieldLevelEncryptionConfig.Validate(); err != nil {
- invalidParams.AddNested("FieldLevelEncryptionConfig", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetFieldLevelEncryptionConfig sets the FieldLevelEncryptionConfig field's value.
- func (s *CreateFieldLevelEncryptionConfigInput) SetFieldLevelEncryptionConfig(v *FieldLevelEncryptionConfig) *CreateFieldLevelEncryptionConfigInput {
- s.FieldLevelEncryptionConfig = v
- return s
- }
- type CreateFieldLevelEncryptionConfigOutput struct {
- _ struct{} `type:"structure" payload:"FieldLevelEncryption"`
- // The current version of the field level encryption configuration. For example:
- // E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // Returned when you create a new field-level encryption configuration.
- FieldLevelEncryption *FieldLevelEncryption `type:"structure"`
- // The fully qualified URI of the new configuration resource just created. For
- // example: https://cloudfront.amazonaws.com/2010-11-01/field-level-encryption-config/EDFDVBD632BHDS5.
- Location *string `location:"header" locationName:"Location" type:"string"`
- }
- // String returns the string representation
- func (s CreateFieldLevelEncryptionConfigOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateFieldLevelEncryptionConfigOutput) GoString() string {
- return s.String()
- }
- // SetETag sets the ETag field's value.
- func (s *CreateFieldLevelEncryptionConfigOutput) SetETag(v string) *CreateFieldLevelEncryptionConfigOutput {
- s.ETag = &v
- return s
- }
- // SetFieldLevelEncryption sets the FieldLevelEncryption field's value.
- func (s *CreateFieldLevelEncryptionConfigOutput) SetFieldLevelEncryption(v *FieldLevelEncryption) *CreateFieldLevelEncryptionConfigOutput {
- s.FieldLevelEncryption = v
- return s
- }
- // SetLocation sets the Location field's value.
- func (s *CreateFieldLevelEncryptionConfigOutput) SetLocation(v string) *CreateFieldLevelEncryptionConfigOutput {
- s.Location = &v
- return s
- }
- type CreateFieldLevelEncryptionProfileInput struct {
- _ struct{} `type:"structure" payload:"FieldLevelEncryptionProfileConfig"`
- // The request to create a field-level encryption profile.
- //
- // FieldLevelEncryptionProfileConfig is a required field
- FieldLevelEncryptionProfileConfig *FieldLevelEncryptionProfileConfig `locationName:"FieldLevelEncryptionProfileConfig" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2018-11-05/"`
- }
- // String returns the string representation
- func (s CreateFieldLevelEncryptionProfileInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateFieldLevelEncryptionProfileInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateFieldLevelEncryptionProfileInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateFieldLevelEncryptionProfileInput"}
- if s.FieldLevelEncryptionProfileConfig == nil {
- invalidParams.Add(request.NewErrParamRequired("FieldLevelEncryptionProfileConfig"))
- }
- if s.FieldLevelEncryptionProfileConfig != nil {
- if err := s.FieldLevelEncryptionProfileConfig.Validate(); err != nil {
- invalidParams.AddNested("FieldLevelEncryptionProfileConfig", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetFieldLevelEncryptionProfileConfig sets the FieldLevelEncryptionProfileConfig field's value.
- func (s *CreateFieldLevelEncryptionProfileInput) SetFieldLevelEncryptionProfileConfig(v *FieldLevelEncryptionProfileConfig) *CreateFieldLevelEncryptionProfileInput {
- s.FieldLevelEncryptionProfileConfig = v
- return s
- }
- type CreateFieldLevelEncryptionProfileOutput struct {
- _ struct{} `type:"structure" payload:"FieldLevelEncryptionProfile"`
- // The current version of the field level encryption profile. For example: E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // Returned when you create a new field-level encryption profile.
- FieldLevelEncryptionProfile *FieldLevelEncryptionProfile `type:"structure"`
- // The fully qualified URI of the new profile resource just created. For example:
- // https://cloudfront.amazonaws.com/2010-11-01/field-level-encryption-profile/EDFDVBD632BHDS5.
- Location *string `location:"header" locationName:"Location" type:"string"`
- }
- // String returns the string representation
- func (s CreateFieldLevelEncryptionProfileOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateFieldLevelEncryptionProfileOutput) GoString() string {
- return s.String()
- }
- // SetETag sets the ETag field's value.
- func (s *CreateFieldLevelEncryptionProfileOutput) SetETag(v string) *CreateFieldLevelEncryptionProfileOutput {
- s.ETag = &v
- return s
- }
- // SetFieldLevelEncryptionProfile sets the FieldLevelEncryptionProfile field's value.
- func (s *CreateFieldLevelEncryptionProfileOutput) SetFieldLevelEncryptionProfile(v *FieldLevelEncryptionProfile) *CreateFieldLevelEncryptionProfileOutput {
- s.FieldLevelEncryptionProfile = v
- return s
- }
- // SetLocation sets the Location field's value.
- func (s *CreateFieldLevelEncryptionProfileOutput) SetLocation(v string) *CreateFieldLevelEncryptionProfileOutput {
- s.Location = &v
- return s
- }
- // The request to create an invalidation.
- type CreateInvalidationInput struct {
- _ struct{} `type:"structure" payload:"InvalidationBatch"`
- // The distribution's id.
- //
- // DistributionId is a required field
- DistributionId *string `location:"uri" locationName:"DistributionId" type:"string" required:"true"`
- // The batch information for the invalidation.
- //
- // InvalidationBatch is a required field
- InvalidationBatch *InvalidationBatch `locationName:"InvalidationBatch" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2018-11-05/"`
- }
- // String returns the string representation
- func (s CreateInvalidationInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateInvalidationInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateInvalidationInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateInvalidationInput"}
- if s.DistributionId == nil {
- invalidParams.Add(request.NewErrParamRequired("DistributionId"))
- }
- if s.DistributionId != nil && len(*s.DistributionId) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("DistributionId", 1))
- }
- if s.InvalidationBatch == nil {
- invalidParams.Add(request.NewErrParamRequired("InvalidationBatch"))
- }
- if s.InvalidationBatch != nil {
- if err := s.InvalidationBatch.Validate(); err != nil {
- invalidParams.AddNested("InvalidationBatch", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetDistributionId sets the DistributionId field's value.
- func (s *CreateInvalidationInput) SetDistributionId(v string) *CreateInvalidationInput {
- s.DistributionId = &v
- return s
- }
- // SetInvalidationBatch sets the InvalidationBatch field's value.
- func (s *CreateInvalidationInput) SetInvalidationBatch(v *InvalidationBatch) *CreateInvalidationInput {
- s.InvalidationBatch = v
- return s
- }
- // The returned result of the corresponding request.
- type CreateInvalidationOutput struct {
- _ struct{} `type:"structure" payload:"Invalidation"`
- // The invalidation's information.
- Invalidation *Invalidation `type:"structure"`
- // The fully qualified URI of the distribution and invalidation batch request,
- // including the Invalidation ID.
- Location *string `location:"header" locationName:"Location" type:"string"`
- }
- // String returns the string representation
- func (s CreateInvalidationOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateInvalidationOutput) GoString() string {
- return s.String()
- }
- // SetInvalidation sets the Invalidation field's value.
- func (s *CreateInvalidationOutput) SetInvalidation(v *Invalidation) *CreateInvalidationOutput {
- s.Invalidation = v
- return s
- }
- // SetLocation sets the Location field's value.
- func (s *CreateInvalidationOutput) SetLocation(v string) *CreateInvalidationOutput {
- s.Location = &v
- return s
- }
- type CreatePublicKeyInput struct {
- _ struct{} `type:"structure" payload:"PublicKeyConfig"`
- // The request to add a public key to CloudFront.
- //
- // PublicKeyConfig is a required field
- PublicKeyConfig *PublicKeyConfig `locationName:"PublicKeyConfig" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2018-11-05/"`
- }
- // String returns the string representation
- func (s CreatePublicKeyInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreatePublicKeyInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreatePublicKeyInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreatePublicKeyInput"}
- if s.PublicKeyConfig == nil {
- invalidParams.Add(request.NewErrParamRequired("PublicKeyConfig"))
- }
- if s.PublicKeyConfig != nil {
- if err := s.PublicKeyConfig.Validate(); err != nil {
- invalidParams.AddNested("PublicKeyConfig", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetPublicKeyConfig sets the PublicKeyConfig field's value.
- func (s *CreatePublicKeyInput) SetPublicKeyConfig(v *PublicKeyConfig) *CreatePublicKeyInput {
- s.PublicKeyConfig = v
- return s
- }
- type CreatePublicKeyOutput struct {
- _ struct{} `type:"structure" payload:"PublicKey"`
- // The current version of the public key. For example: E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // The fully qualified URI of the new public key resource just created. For
- // example: https://cloudfront.amazonaws.com/2010-11-01/cloudfront-public-key/EDFDVBD632BHDS5.
- Location *string `location:"header" locationName:"Location" type:"string"`
- // Returned when you add a public key.
- PublicKey *PublicKey `type:"structure"`
- }
- // String returns the string representation
- func (s CreatePublicKeyOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreatePublicKeyOutput) GoString() string {
- return s.String()
- }
- // SetETag sets the ETag field's value.
- func (s *CreatePublicKeyOutput) SetETag(v string) *CreatePublicKeyOutput {
- s.ETag = &v
- return s
- }
- // SetLocation sets the Location field's value.
- func (s *CreatePublicKeyOutput) SetLocation(v string) *CreatePublicKeyOutput {
- s.Location = &v
- return s
- }
- // SetPublicKey sets the PublicKey field's value.
- func (s *CreatePublicKeyOutput) SetPublicKey(v *PublicKey) *CreatePublicKeyOutput {
- s.PublicKey = v
- return s
- }
- // The request to create a new streaming distribution.
- type CreateStreamingDistributionInput struct {
- _ struct{} `type:"structure" payload:"StreamingDistributionConfig"`
- // The streaming distribution's configuration information.
- //
- // StreamingDistributionConfig is a required field
- StreamingDistributionConfig *StreamingDistributionConfig `locationName:"StreamingDistributionConfig" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2018-11-05/"`
- }
- // String returns the string representation
- func (s CreateStreamingDistributionInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateStreamingDistributionInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateStreamingDistributionInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateStreamingDistributionInput"}
- if s.StreamingDistributionConfig == nil {
- invalidParams.Add(request.NewErrParamRequired("StreamingDistributionConfig"))
- }
- if s.StreamingDistributionConfig != nil {
- if err := s.StreamingDistributionConfig.Validate(); err != nil {
- invalidParams.AddNested("StreamingDistributionConfig", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetStreamingDistributionConfig sets the StreamingDistributionConfig field's value.
- func (s *CreateStreamingDistributionInput) SetStreamingDistributionConfig(v *StreamingDistributionConfig) *CreateStreamingDistributionInput {
- s.StreamingDistributionConfig = v
- return s
- }
- // The returned result of the corresponding request.
- type CreateStreamingDistributionOutput struct {
- _ struct{} `type:"structure" payload:"StreamingDistribution"`
- // The current version of the streaming distribution created.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // The fully qualified URI of the new streaming distribution resource just created.
- // For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8.
- Location *string `location:"header" locationName:"Location" type:"string"`
- // The streaming distribution's information.
- StreamingDistribution *StreamingDistribution `type:"structure"`
- }
- // String returns the string representation
- func (s CreateStreamingDistributionOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateStreamingDistributionOutput) GoString() string {
- return s.String()
- }
- // SetETag sets the ETag field's value.
- func (s *CreateStreamingDistributionOutput) SetETag(v string) *CreateStreamingDistributionOutput {
- s.ETag = &v
- return s
- }
- // SetLocation sets the Location field's value.
- func (s *CreateStreamingDistributionOutput) SetLocation(v string) *CreateStreamingDistributionOutput {
- s.Location = &v
- return s
- }
- // SetStreamingDistribution sets the StreamingDistribution field's value.
- func (s *CreateStreamingDistributionOutput) SetStreamingDistribution(v *StreamingDistribution) *CreateStreamingDistributionOutput {
- s.StreamingDistribution = v
- return s
- }
- // The request to create a new streaming distribution with tags.
- type CreateStreamingDistributionWithTagsInput struct {
- _ struct{} `type:"structure" payload:"StreamingDistributionConfigWithTags"`
- // The streaming distribution's configuration information.
- //
- // StreamingDistributionConfigWithTags is a required field
- StreamingDistributionConfigWithTags *StreamingDistributionConfigWithTags `locationName:"StreamingDistributionConfigWithTags" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2018-11-05/"`
- }
- // String returns the string representation
- func (s CreateStreamingDistributionWithTagsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateStreamingDistributionWithTagsInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateStreamingDistributionWithTagsInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateStreamingDistributionWithTagsInput"}
- if s.StreamingDistributionConfigWithTags == nil {
- invalidParams.Add(request.NewErrParamRequired("StreamingDistributionConfigWithTags"))
- }
- if s.StreamingDistributionConfigWithTags != nil {
- if err := s.StreamingDistributionConfigWithTags.Validate(); err != nil {
- invalidParams.AddNested("StreamingDistributionConfigWithTags", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetStreamingDistributionConfigWithTags sets the StreamingDistributionConfigWithTags field's value.
- func (s *CreateStreamingDistributionWithTagsInput) SetStreamingDistributionConfigWithTags(v *StreamingDistributionConfigWithTags) *CreateStreamingDistributionWithTagsInput {
- s.StreamingDistributionConfigWithTags = v
- return s
- }
- // The returned result of the corresponding request.
- type CreateStreamingDistributionWithTagsOutput struct {
- _ struct{} `type:"structure" payload:"StreamingDistribution"`
- // The current version of the distribution created.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // The fully qualified URI of the new streaming distribution resource just created.
- // For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8.
- Location *string `location:"header" locationName:"Location" type:"string"`
- // The streaming distribution's information.
- StreamingDistribution *StreamingDistribution `type:"structure"`
- }
- // String returns the string representation
- func (s CreateStreamingDistributionWithTagsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateStreamingDistributionWithTagsOutput) GoString() string {
- return s.String()
- }
- // SetETag sets the ETag field's value.
- func (s *CreateStreamingDistributionWithTagsOutput) SetETag(v string) *CreateStreamingDistributionWithTagsOutput {
- s.ETag = &v
- return s
- }
- // SetLocation sets the Location field's value.
- func (s *CreateStreamingDistributionWithTagsOutput) SetLocation(v string) *CreateStreamingDistributionWithTagsOutput {
- s.Location = &v
- return s
- }
- // SetStreamingDistribution sets the StreamingDistribution field's value.
- func (s *CreateStreamingDistributionWithTagsOutput) SetStreamingDistribution(v *StreamingDistribution) *CreateStreamingDistributionWithTagsOutput {
- s.StreamingDistribution = v
- return s
- }
- // A complex type that controls:
- //
- // * Whether CloudFront replaces HTTP status codes in the 4xx and 5xx range
- // with custom error messages before returning the response to the viewer.
- //
- //
- // * How long CloudFront caches HTTP status codes in the 4xx and 5xx range.
- //
- // For more information about custom error pages, see Customizing Error Responses
- // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/custom-error-pages.html)
- // in the Amazon CloudFront Developer Guide.
- type CustomErrorResponse struct {
- _ struct{} `type:"structure"`
- // The minimum amount of time, in seconds, that you want CloudFront to cache
- // the HTTP status code specified in ErrorCode. When this time period has elapsed,
- // CloudFront queries your origin to see whether the problem that caused the
- // error has been resolved and the requested object is now available.
- //
- // If you don't want to specify a value, include an empty element, <ErrorCachingMinTTL>,
- // in the XML document.
- //
- // For more information, see Customizing Error Responses (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/custom-error-pages.html)
- // in the Amazon CloudFront Developer Guide.
- ErrorCachingMinTTL *int64 `type:"long"`
- // The HTTP status code for which you want to specify a custom error page and/or
- // a caching duration.
- //
- // ErrorCode is a required field
- ErrorCode *int64 `type:"integer" required:"true"`
- // The HTTP status code that you want CloudFront to return to the viewer along
- // with the custom error page. There are a variety of reasons that you might
- // want CloudFront to return a status code different from the status code that
- // your origin returned to CloudFront, for example:
- //
- // * Some Internet devices (some firewalls and corporate proxies, for example)
- // intercept HTTP 4xx and 5xx and prevent the response from being returned
- // to the viewer. If you substitute 200, the response typically won't be
- // intercepted.
- //
- // * If you don't care about distinguishing among different client errors
- // or server errors, you can specify 400 or 500 as the ResponseCode for all
- // 4xx or 5xx errors.
- //
- // * You might want to return a 200 status code (OK) and static website so
- // your customers don't know that your website is down.
- //
- // If you specify a value for ResponseCode, you must also specify a value for
- // ResponsePagePath. If you don't want to specify a value, include an empty
- // element, <ResponseCode>, in the XML document.
- ResponseCode *string `type:"string"`
- // The path to the custom error page that you want CloudFront to return to a
- // viewer when your origin returns the HTTP status code specified by ErrorCode,
- // for example, /4xx-errors/403-forbidden.html. If you want to store your objects
- // and your custom error pages in different locations, your distribution must
- // include a cache behavior for which the following is true:
- //
- // * The value of PathPattern matches the path to your custom error messages.
- // For example, suppose you saved custom error pages for 4xx errors in an
- // Amazon S3 bucket in a directory named /4xx-errors. Your distribution must
- // include a cache behavior for which the path pattern routes requests for
- // your custom error pages to that location, for example, /4xx-errors/*.
- //
- //
- // * The value of TargetOriginId specifies the value of the ID element for
- // the origin that contains your custom error pages.
- //
- // If you specify a value for ResponsePagePath, you must also specify a value
- // for ResponseCode. If you don't want to specify a value, include an empty
- // element, <ResponsePagePath>, in the XML document.
- //
- // We recommend that you store custom error pages in an Amazon S3 bucket. If
- // you store custom error pages on an HTTP server and the server starts to return
- // 5xx errors, CloudFront can't get the files that you want to return to viewers
- // because the origin server is unavailable.
- ResponsePagePath *string `type:"string"`
- }
- // String returns the string representation
- func (s CustomErrorResponse) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CustomErrorResponse) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CustomErrorResponse) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CustomErrorResponse"}
- if s.ErrorCode == nil {
- invalidParams.Add(request.NewErrParamRequired("ErrorCode"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetErrorCachingMinTTL sets the ErrorCachingMinTTL field's value.
- func (s *CustomErrorResponse) SetErrorCachingMinTTL(v int64) *CustomErrorResponse {
- s.ErrorCachingMinTTL = &v
- return s
- }
- // SetErrorCode sets the ErrorCode field's value.
- func (s *CustomErrorResponse) SetErrorCode(v int64) *CustomErrorResponse {
- s.ErrorCode = &v
- return s
- }
- // SetResponseCode sets the ResponseCode field's value.
- func (s *CustomErrorResponse) SetResponseCode(v string) *CustomErrorResponse {
- s.ResponseCode = &v
- return s
- }
- // SetResponsePagePath sets the ResponsePagePath field's value.
- func (s *CustomErrorResponse) SetResponsePagePath(v string) *CustomErrorResponse {
- s.ResponsePagePath = &v
- return s
- }
- // A complex type that controls:
- //
- // * Whether CloudFront replaces HTTP status codes in the 4xx and 5xx range
- // with custom error messages before returning the response to the viewer.
- //
- // * How long CloudFront caches HTTP status codes in the 4xx and 5xx range.
- //
- // For more information about custom error pages, see Customizing Error Responses
- // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/custom-error-pages.html)
- // in the Amazon CloudFront Developer Guide.
- type CustomErrorResponses struct {
- _ struct{} `type:"structure"`
- // A complex type that contains a CustomErrorResponse element for each HTTP
- // status code for which you want to specify a custom error page and/or a caching
- // duration.
- Items []*CustomErrorResponse `locationNameList:"CustomErrorResponse" type:"list"`
- // The number of HTTP status codes for which you want to specify a custom error
- // page and/or a caching duration. If Quantity is 0, you can omit Items.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s CustomErrorResponses) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CustomErrorResponses) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CustomErrorResponses) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CustomErrorResponses"}
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if s.Items != nil {
- for i, v := range s.Items {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *CustomErrorResponses) SetItems(v []*CustomErrorResponse) *CustomErrorResponses {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *CustomErrorResponses) SetQuantity(v int64) *CustomErrorResponses {
- s.Quantity = &v
- return s
- }
- // A complex type that contains the list of Custom Headers for each origin.
- type CustomHeaders struct {
- _ struct{} `type:"structure"`
- // Optional: A list that contains one OriginCustomHeader element for each custom
- // header that you want CloudFront to forward to the origin. If Quantity is
- // 0, omit Items.
- Items []*OriginCustomHeader `locationNameList:"OriginCustomHeader" type:"list"`
- // The number of custom headers, if any, for this distribution.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s CustomHeaders) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CustomHeaders) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CustomHeaders) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CustomHeaders"}
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if s.Items != nil {
- for i, v := range s.Items {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *CustomHeaders) SetItems(v []*OriginCustomHeader) *CustomHeaders {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *CustomHeaders) SetQuantity(v int64) *CustomHeaders {
- s.Quantity = &v
- return s
- }
- // A customer origin or an Amazon S3 bucket configured as a website endpoint.
- type CustomOriginConfig struct {
- _ struct{} `type:"structure"`
- // The HTTP port the custom origin listens on.
- //
- // HTTPPort is a required field
- HTTPPort *int64 `type:"integer" required:"true"`
- // The HTTPS port the custom origin listens on.
- //
- // HTTPSPort is a required field
- HTTPSPort *int64 `type:"integer" required:"true"`
- // You can create a custom keep-alive timeout. All timeout units are in seconds.
- // The default keep-alive timeout is 5 seconds, but you can configure custom
- // timeout lengths using the CloudFront API. The minimum timeout length is 1
- // second; the maximum is 60 seconds.
- //
- // If you need to increase the maximum time limit, contact the AWS Support Center
- // (https://console.aws.amazon.com/support/home#/).
- OriginKeepaliveTimeout *int64 `type:"integer"`
- // The origin protocol policy to apply to your origin.
- //
- // OriginProtocolPolicy is a required field
- OriginProtocolPolicy *string `type:"string" required:"true" enum:"OriginProtocolPolicy"`
- // You can create a custom origin read timeout. All timeout units are in seconds.
- // The default origin read timeout is 30 seconds, but you can configure custom
- // timeout lengths using the CloudFront API. The minimum timeout length is 4
- // seconds; the maximum is 60 seconds.
- //
- // If you need to increase the maximum time limit, contact the AWS Support Center
- // (https://console.aws.amazon.com/support/home#/).
- OriginReadTimeout *int64 `type:"integer"`
- // The SSL/TLS protocols that you want CloudFront to use when communicating
- // with your origin over HTTPS.
- OriginSslProtocols *OriginSslProtocols `type:"structure"`
- }
- // String returns the string representation
- func (s CustomOriginConfig) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CustomOriginConfig) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CustomOriginConfig) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CustomOriginConfig"}
- if s.HTTPPort == nil {
- invalidParams.Add(request.NewErrParamRequired("HTTPPort"))
- }
- if s.HTTPSPort == nil {
- invalidParams.Add(request.NewErrParamRequired("HTTPSPort"))
- }
- if s.OriginProtocolPolicy == nil {
- invalidParams.Add(request.NewErrParamRequired("OriginProtocolPolicy"))
- }
- if s.OriginSslProtocols != nil {
- if err := s.OriginSslProtocols.Validate(); err != nil {
- invalidParams.AddNested("OriginSslProtocols", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetHTTPPort sets the HTTPPort field's value.
- func (s *CustomOriginConfig) SetHTTPPort(v int64) *CustomOriginConfig {
- s.HTTPPort = &v
- return s
- }
- // SetHTTPSPort sets the HTTPSPort field's value.
- func (s *CustomOriginConfig) SetHTTPSPort(v int64) *CustomOriginConfig {
- s.HTTPSPort = &v
- return s
- }
- // SetOriginKeepaliveTimeout sets the OriginKeepaliveTimeout field's value.
- func (s *CustomOriginConfig) SetOriginKeepaliveTimeout(v int64) *CustomOriginConfig {
- s.OriginKeepaliveTimeout = &v
- return s
- }
- // SetOriginProtocolPolicy sets the OriginProtocolPolicy field's value.
- func (s *CustomOriginConfig) SetOriginProtocolPolicy(v string) *CustomOriginConfig {
- s.OriginProtocolPolicy = &v
- return s
- }
- // SetOriginReadTimeout sets the OriginReadTimeout field's value.
- func (s *CustomOriginConfig) SetOriginReadTimeout(v int64) *CustomOriginConfig {
- s.OriginReadTimeout = &v
- return s
- }
- // SetOriginSslProtocols sets the OriginSslProtocols field's value.
- func (s *CustomOriginConfig) SetOriginSslProtocols(v *OriginSslProtocols) *CustomOriginConfig {
- s.OriginSslProtocols = v
- return s
- }
- // A complex type that describes the default cache behavior if you don't specify
- // a CacheBehavior element or if files don't match any of the values of PathPattern
- // in CacheBehavior elements. You must create exactly one default cache behavior.
- type DefaultCacheBehavior struct {
- _ struct{} `type:"structure"`
- // A complex type that controls which HTTP methods CloudFront processes and
- // forwards to your Amazon S3 bucket or your custom origin. There are three
- // choices:
- //
- // * CloudFront forwards only GET and HEAD requests.
- //
- // * CloudFront forwards only GET, HEAD, and OPTIONS requests.
- //
- // * CloudFront forwards GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE
- // requests.
- //
- // If you pick the third choice, you may need to restrict access to your Amazon
- // S3 bucket or to your custom origin so users can't perform operations that
- // you don't want them to. For example, you might not want users to have permissions
- // to delete objects from your origin.
- AllowedMethods *AllowedMethods `type:"structure"`
- // Whether you want CloudFront to automatically compress certain files for this
- // cache behavior. If so, specify true; if not, specify false. For more information,
- // see Serving Compressed Files (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/ServingCompressedFiles.html)
- // in the Amazon CloudFront Developer Guide.
- Compress *bool `type:"boolean"`
- // The default amount of time that you want objects to stay in CloudFront caches
- // before CloudFront forwards another request to your origin to determine whether
- // the object has been updated. The value that you specify applies only when
- // your origin does not add HTTP headers such as Cache-Control max-age, Cache-Control
- // s-maxage, and Expires to objects. For more information, see Specifying How
- // Long Objects and Errors Stay in a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html)
- // in the Amazon CloudFront Developer Guide.
- DefaultTTL *int64 `type:"long"`
- // The value of ID for the field-level encryption configuration that you want
- // CloudFront to use for encrypting specific fields of data for a cache behavior
- // or for the default cache behavior in your distribution.
- FieldLevelEncryptionId *string `type:"string"`
- // A complex type that specifies how CloudFront handles query strings and cookies.
- //
- // ForwardedValues is a required field
- ForwardedValues *ForwardedValues `type:"structure" required:"true"`
- // A complex type that contains zero or more Lambda function associations for
- // a cache behavior.
- LambdaFunctionAssociations *LambdaFunctionAssociations `type:"structure"`
- MaxTTL *int64 `type:"long"`
- // The minimum amount of time that you want objects to stay in CloudFront caches
- // before CloudFront forwards another request to your origin to determine whether
- // the object has been updated. For more information, see Specifying How Long
- // Objects and Errors Stay in a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html)
- // in the Amazon Amazon CloudFront Developer Guide.
- //
- // You must specify 0 for MinTTL if you configure CloudFront to forward all
- // headers to your origin (under Headers, if you specify 1 for Quantity and
- // * for Name).
- //
- // MinTTL is a required field
- MinTTL *int64 `type:"long" required:"true"`
- // Indicates whether you want to distribute media files in the Microsoft Smooth
- // Streaming format using the origin that is associated with this cache behavior.
- // If so, specify true; if not, specify false. If you specify true for SmoothStreaming,
- // you can still distribute other content using this cache behavior if the content
- // matches the value of PathPattern.
- SmoothStreaming *bool `type:"boolean"`
- // The value of ID for the origin that you want CloudFront to route requests
- // to when a request matches the path pattern either for a cache behavior or
- // for the default cache behavior in your distribution.
- //
- // TargetOriginId is a required field
- TargetOriginId *string `type:"string" required:"true"`
- // A complex type that specifies the AWS accounts, if any, that you want to
- // allow to create signed URLs for private content.
- //
- // If you want to require signed URLs in requests for objects in the target
- // origin that match the PathPattern for this cache behavior, specify true for
- // Enabled, and specify the applicable values for Quantity and Items. For more
- // information, see Serving Private Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html)
- // in the Amazon Amazon CloudFront Developer Guide.
- //
- // If you don't want to require signed URLs in requests for objects that match
- // PathPattern, specify false for Enabled and 0 for Quantity. Omit Items.
- //
- // To add, change, or remove one or more trusted signers, change Enabled to
- // true (if it's currently false), change Quantity as applicable, and specify
- // all of the trusted signers that you want to include in the updated distribution.
- //
- // TrustedSigners is a required field
- TrustedSigners *TrustedSigners `type:"structure" required:"true"`
- // The protocol that viewers can use to access the files in the origin specified
- // by TargetOriginId when a request matches the path pattern in PathPattern.
- // You can specify the following options:
- //
- // * allow-all: Viewers can use HTTP or HTTPS.
- //
- // * redirect-to-https: If a viewer submits an HTTP request, CloudFront returns
- // an HTTP status code of 301 (Moved Permanently) to the viewer along with
- // the HTTPS URL. The viewer then resubmits the request using the new URL.
- //
- // * https-only: If a viewer sends an HTTP request, CloudFront returns an
- // HTTP status code of 403 (Forbidden).
- //
- // For more information about requiring the HTTPS protocol, see Using an HTTPS
- // Connection to Access Your Objects (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html)
- // in the Amazon CloudFront Developer Guide.
- //
- // The only way to guarantee that viewers retrieve an object that was fetched
- // from the origin using HTTPS is never to use any other protocol to fetch the
- // object. If you have recently changed from HTTP to HTTPS, we recommend that
- // you clear your objects' cache because cached objects are protocol agnostic.
- // That means that an edge location will return an object from the cache regardless
- // of whether the current request protocol matches the protocol used previously.
- // For more information, see Specifying How Long Objects and Errors Stay in
- // a CloudFront Edge Cache (Expiration) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Expiration.html)
- // in the Amazon CloudFront Developer Guide.
- //
- // ViewerProtocolPolicy is a required field
- ViewerProtocolPolicy *string `type:"string" required:"true" enum:"ViewerProtocolPolicy"`
- }
- // String returns the string representation
- func (s DefaultCacheBehavior) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DefaultCacheBehavior) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DefaultCacheBehavior) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DefaultCacheBehavior"}
- if s.ForwardedValues == nil {
- invalidParams.Add(request.NewErrParamRequired("ForwardedValues"))
- }
- if s.MinTTL == nil {
- invalidParams.Add(request.NewErrParamRequired("MinTTL"))
- }
- if s.TargetOriginId == nil {
- invalidParams.Add(request.NewErrParamRequired("TargetOriginId"))
- }
- if s.TrustedSigners == nil {
- invalidParams.Add(request.NewErrParamRequired("TrustedSigners"))
- }
- if s.ViewerProtocolPolicy == nil {
- invalidParams.Add(request.NewErrParamRequired("ViewerProtocolPolicy"))
- }
- if s.AllowedMethods != nil {
- if err := s.AllowedMethods.Validate(); err != nil {
- invalidParams.AddNested("AllowedMethods", err.(request.ErrInvalidParams))
- }
- }
- if s.ForwardedValues != nil {
- if err := s.ForwardedValues.Validate(); err != nil {
- invalidParams.AddNested("ForwardedValues", err.(request.ErrInvalidParams))
- }
- }
- if s.LambdaFunctionAssociations != nil {
- if err := s.LambdaFunctionAssociations.Validate(); err != nil {
- invalidParams.AddNested("LambdaFunctionAssociations", err.(request.ErrInvalidParams))
- }
- }
- if s.TrustedSigners != nil {
- if err := s.TrustedSigners.Validate(); err != nil {
- invalidParams.AddNested("TrustedSigners", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetAllowedMethods sets the AllowedMethods field's value.
- func (s *DefaultCacheBehavior) SetAllowedMethods(v *AllowedMethods) *DefaultCacheBehavior {
- s.AllowedMethods = v
- return s
- }
- // SetCompress sets the Compress field's value.
- func (s *DefaultCacheBehavior) SetCompress(v bool) *DefaultCacheBehavior {
- s.Compress = &v
- return s
- }
- // SetDefaultTTL sets the DefaultTTL field's value.
- func (s *DefaultCacheBehavior) SetDefaultTTL(v int64) *DefaultCacheBehavior {
- s.DefaultTTL = &v
- return s
- }
- // SetFieldLevelEncryptionId sets the FieldLevelEncryptionId field's value.
- func (s *DefaultCacheBehavior) SetFieldLevelEncryptionId(v string) *DefaultCacheBehavior {
- s.FieldLevelEncryptionId = &v
- return s
- }
- // SetForwardedValues sets the ForwardedValues field's value.
- func (s *DefaultCacheBehavior) SetForwardedValues(v *ForwardedValues) *DefaultCacheBehavior {
- s.ForwardedValues = v
- return s
- }
- // SetLambdaFunctionAssociations sets the LambdaFunctionAssociations field's value.
- func (s *DefaultCacheBehavior) SetLambdaFunctionAssociations(v *LambdaFunctionAssociations) *DefaultCacheBehavior {
- s.LambdaFunctionAssociations = v
- return s
- }
- // SetMaxTTL sets the MaxTTL field's value.
- func (s *DefaultCacheBehavior) SetMaxTTL(v int64) *DefaultCacheBehavior {
- s.MaxTTL = &v
- return s
- }
- // SetMinTTL sets the MinTTL field's value.
- func (s *DefaultCacheBehavior) SetMinTTL(v int64) *DefaultCacheBehavior {
- s.MinTTL = &v
- return s
- }
- // SetSmoothStreaming sets the SmoothStreaming field's value.
- func (s *DefaultCacheBehavior) SetSmoothStreaming(v bool) *DefaultCacheBehavior {
- s.SmoothStreaming = &v
- return s
- }
- // SetTargetOriginId sets the TargetOriginId field's value.
- func (s *DefaultCacheBehavior) SetTargetOriginId(v string) *DefaultCacheBehavior {
- s.TargetOriginId = &v
- return s
- }
- // SetTrustedSigners sets the TrustedSigners field's value.
- func (s *DefaultCacheBehavior) SetTrustedSigners(v *TrustedSigners) *DefaultCacheBehavior {
- s.TrustedSigners = v
- return s
- }
- // SetViewerProtocolPolicy sets the ViewerProtocolPolicy field's value.
- func (s *DefaultCacheBehavior) SetViewerProtocolPolicy(v string) *DefaultCacheBehavior {
- s.ViewerProtocolPolicy = &v
- return s
- }
- // Deletes a origin access identity.
- type DeleteCloudFrontOriginAccessIdentityInput struct {
- _ struct{} `type:"structure"`
- // The origin access identity's ID.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- // The value of the ETag header you received from a previous GET or PUT request.
- // For example: E2QWRUHAPOMQZL.
- IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
- }
- // String returns the string representation
- func (s DeleteCloudFrontOriginAccessIdentityInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteCloudFrontOriginAccessIdentityInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteCloudFrontOriginAccessIdentityInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteCloudFrontOriginAccessIdentityInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *DeleteCloudFrontOriginAccessIdentityInput) SetId(v string) *DeleteCloudFrontOriginAccessIdentityInput {
- s.Id = &v
- return s
- }
- // SetIfMatch sets the IfMatch field's value.
- func (s *DeleteCloudFrontOriginAccessIdentityInput) SetIfMatch(v string) *DeleteCloudFrontOriginAccessIdentityInput {
- s.IfMatch = &v
- return s
- }
- type DeleteCloudFrontOriginAccessIdentityOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteCloudFrontOriginAccessIdentityOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteCloudFrontOriginAccessIdentityOutput) GoString() string {
- return s.String()
- }
- // This action deletes a web distribution. To delete a web distribution using
- // the CloudFront API, perform the following steps.
- //
- // To delete a web distribution using the CloudFront API:
- //
- // Disable the web distribution
- //
- // Submit a GET Distribution Config request to get the current configuration
- // and the Etag header for the distribution.
- //
- // Update the XML document that was returned in the response to your GET Distribution
- // Config request to change the value of Enabled to false.
- //
- // Submit a PUT Distribution Config request to update the configuration for
- // your distribution. In the request body, include the XML document that you
- // updated in Step 3. Set the value of the HTTP If-Match header to the value
- // of the ETag header that CloudFront returned when you submitted the GET Distribution
- // Config request in Step 2.
- //
- // Review the response to the PUT Distribution Config request to confirm that
- // the distribution was successfully disabled.
- //
- // Submit a GET Distribution request to confirm that your changes have propagated.
- // When propagation is complete, the value of Status is Deployed.
- //
- // Submit a DELETE Distribution request. Set the value of the HTTP If-Match
- // header to the value of the ETag header that CloudFront returned when you
- // submitted the GET Distribution Config request in Step 6.
- //
- // Review the response to your DELETE Distribution request to confirm that the
- // distribution was successfully deleted.
- //
- // For information about deleting a distribution using the CloudFront console,
- // see Deleting a Distribution (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/HowToDeleteDistribution.html)
- // in the Amazon CloudFront Developer Guide.
- type DeleteDistributionInput struct {
- _ struct{} `type:"structure"`
- // The distribution ID.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- // The value of the ETag header that you received when you disabled the distribution.
- // For example: E2QWRUHAPOMQZL.
- IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
- }
- // String returns the string representation
- func (s DeleteDistributionInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteDistributionInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteDistributionInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteDistributionInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *DeleteDistributionInput) SetId(v string) *DeleteDistributionInput {
- s.Id = &v
- return s
- }
- // SetIfMatch sets the IfMatch field's value.
- func (s *DeleteDistributionInput) SetIfMatch(v string) *DeleteDistributionInput {
- s.IfMatch = &v
- return s
- }
- type DeleteDistributionOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteDistributionOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteDistributionOutput) GoString() string {
- return s.String()
- }
- type DeleteFieldLevelEncryptionConfigInput struct {
- _ struct{} `type:"structure"`
- // The ID of the configuration you want to delete from CloudFront.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- // The value of the ETag header that you received when retrieving the configuration
- // identity to delete. For example: E2QWRUHAPOMQZL.
- IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
- }
- // String returns the string representation
- func (s DeleteFieldLevelEncryptionConfigInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteFieldLevelEncryptionConfigInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteFieldLevelEncryptionConfigInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteFieldLevelEncryptionConfigInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *DeleteFieldLevelEncryptionConfigInput) SetId(v string) *DeleteFieldLevelEncryptionConfigInput {
- s.Id = &v
- return s
- }
- // SetIfMatch sets the IfMatch field's value.
- func (s *DeleteFieldLevelEncryptionConfigInput) SetIfMatch(v string) *DeleteFieldLevelEncryptionConfigInput {
- s.IfMatch = &v
- return s
- }
- type DeleteFieldLevelEncryptionConfigOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteFieldLevelEncryptionConfigOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteFieldLevelEncryptionConfigOutput) GoString() string {
- return s.String()
- }
- type DeleteFieldLevelEncryptionProfileInput struct {
- _ struct{} `type:"structure"`
- // Request the ID of the profile you want to delete from CloudFront.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- // The value of the ETag header that you received when retrieving the profile
- // to delete. For example: E2QWRUHAPOMQZL.
- IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
- }
- // String returns the string representation
- func (s DeleteFieldLevelEncryptionProfileInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteFieldLevelEncryptionProfileInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteFieldLevelEncryptionProfileInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteFieldLevelEncryptionProfileInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *DeleteFieldLevelEncryptionProfileInput) SetId(v string) *DeleteFieldLevelEncryptionProfileInput {
- s.Id = &v
- return s
- }
- // SetIfMatch sets the IfMatch field's value.
- func (s *DeleteFieldLevelEncryptionProfileInput) SetIfMatch(v string) *DeleteFieldLevelEncryptionProfileInput {
- s.IfMatch = &v
- return s
- }
- type DeleteFieldLevelEncryptionProfileOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteFieldLevelEncryptionProfileOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteFieldLevelEncryptionProfileOutput) GoString() string {
- return s.String()
- }
- type DeletePublicKeyInput struct {
- _ struct{} `type:"structure"`
- // The ID of the public key you want to remove from CloudFront.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- // The value of the ETag header that you received when retrieving the public
- // key identity to delete. For example: E2QWRUHAPOMQZL.
- IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
- }
- // String returns the string representation
- func (s DeletePublicKeyInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeletePublicKeyInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeletePublicKeyInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeletePublicKeyInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *DeletePublicKeyInput) SetId(v string) *DeletePublicKeyInput {
- s.Id = &v
- return s
- }
- // SetIfMatch sets the IfMatch field's value.
- func (s *DeletePublicKeyInput) SetIfMatch(v string) *DeletePublicKeyInput {
- s.IfMatch = &v
- return s
- }
- type DeletePublicKeyOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeletePublicKeyOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeletePublicKeyOutput) GoString() string {
- return s.String()
- }
- // The request to delete a streaming distribution.
- type DeleteStreamingDistributionInput struct {
- _ struct{} `type:"structure"`
- // The distribution ID.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- // The value of the ETag header that you received when you disabled the streaming
- // distribution. For example: E2QWRUHAPOMQZL.
- IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
- }
- // String returns the string representation
- func (s DeleteStreamingDistributionInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteStreamingDistributionInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteStreamingDistributionInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteStreamingDistributionInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *DeleteStreamingDistributionInput) SetId(v string) *DeleteStreamingDistributionInput {
- s.Id = &v
- return s
- }
- // SetIfMatch sets the IfMatch field's value.
- func (s *DeleteStreamingDistributionInput) SetIfMatch(v string) *DeleteStreamingDistributionInput {
- s.IfMatch = &v
- return s
- }
- type DeleteStreamingDistributionOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteStreamingDistributionOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteStreamingDistributionOutput) GoString() string {
- return s.String()
- }
- // The distribution's information.
- type Distribution struct {
- _ struct{} `type:"structure"`
- // The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5,
- // where 123456789012 is your AWS account ID.
- //
- // ARN is a required field
- ARN *string `type:"string" required:"true"`
- // CloudFront automatically adds this element to the response only if you've
- // set up the distribution to serve private content with signed URLs. The element
- // lists the key pair IDs that CloudFront is aware of for each trusted signer.
- // The Signer child element lists the AWS account number of the trusted signer
- // (or an empty Self element if the signer is you). The Signer element also
- // includes the IDs of any active key pairs associated with the trusted signer's
- // AWS account. If no KeyPairId element appears for a Signer, that signer can't
- // create working signed URLs.
- //
- // ActiveTrustedSigners is a required field
- ActiveTrustedSigners *ActiveTrustedSigners `type:"structure" required:"true"`
- // The current configuration information for the distribution. Send a GET request
- // to the /CloudFront API version/distribution ID/config resource.
- //
- // DistributionConfig is a required field
- DistributionConfig *DistributionConfig `type:"structure" required:"true"`
- // The domain name corresponding to the distribution, for example, d111111abcdef8.cloudfront.net.
- //
- // DomainName is a required field
- DomainName *string `type:"string" required:"true"`
- // The identifier for the distribution. For example: EDFDVBD632BHDS5.
- //
- // Id is a required field
- Id *string `type:"string" required:"true"`
- // The number of invalidation batches currently in progress.
- //
- // InProgressInvalidationBatches is a required field
- InProgressInvalidationBatches *int64 `type:"integer" required:"true"`
- // The date and time the distribution was last modified.
- //
- // LastModifiedTime is a required field
- LastModifiedTime *time.Time `type:"timestamp" required:"true"`
- // This response element indicates the current status of the distribution. When
- // the status is Deployed, the distribution's information is fully propagated
- // to all CloudFront edge locations.
- //
- // Status is a required field
- Status *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s Distribution) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Distribution) GoString() string {
- return s.String()
- }
- // SetARN sets the ARN field's value.
- func (s *Distribution) SetARN(v string) *Distribution {
- s.ARN = &v
- return s
- }
- // SetActiveTrustedSigners sets the ActiveTrustedSigners field's value.
- func (s *Distribution) SetActiveTrustedSigners(v *ActiveTrustedSigners) *Distribution {
- s.ActiveTrustedSigners = v
- return s
- }
- // SetDistributionConfig sets the DistributionConfig field's value.
- func (s *Distribution) SetDistributionConfig(v *DistributionConfig) *Distribution {
- s.DistributionConfig = v
- return s
- }
- // SetDomainName sets the DomainName field's value.
- func (s *Distribution) SetDomainName(v string) *Distribution {
- s.DomainName = &v
- return s
- }
- // SetId sets the Id field's value.
- func (s *Distribution) SetId(v string) *Distribution {
- s.Id = &v
- return s
- }
- // SetInProgressInvalidationBatches sets the InProgressInvalidationBatches field's value.
- func (s *Distribution) SetInProgressInvalidationBatches(v int64) *Distribution {
- s.InProgressInvalidationBatches = &v
- return s
- }
- // SetLastModifiedTime sets the LastModifiedTime field's value.
- func (s *Distribution) SetLastModifiedTime(v time.Time) *Distribution {
- s.LastModifiedTime = &v
- return s
- }
- // SetStatus sets the Status field's value.
- func (s *Distribution) SetStatus(v string) *Distribution {
- s.Status = &v
- return s
- }
- // A distribution configuration.
- type DistributionConfig struct {
- _ struct{} `type:"structure"`
- // A complex type that contains information about CNAMEs (alternate domain names),
- // if any, for this distribution.
- Aliases *Aliases `type:"structure"`
- // A complex type that contains zero or more CacheBehavior elements.
- CacheBehaviors *CacheBehaviors `type:"structure"`
- // A unique value (for example, a date-time stamp) that ensures that the request
- // can't be replayed.
- //
- // If the value of CallerReference is new (regardless of the content of the
- // DistributionConfig object), CloudFront creates a new distribution.
- //
- // If CallerReference is a value that you already sent in a previous request
- // to create a distribution, CloudFront returns a DistributionAlreadyExists
- // error.
- //
- // CallerReference is a required field
- CallerReference *string `type:"string" required:"true"`
- // Any comments you want to include about the distribution.
- //
- // If you don't want to specify a comment, include an empty Comment element.
- //
- // To delete an existing comment, update the distribution configuration and
- // include an empty Comment element.
- //
- // To add or change a comment, update the distribution configuration and specify
- // the new comment.
- //
- // Comment is a required field
- Comment *string `type:"string" required:"true"`
- // A complex type that controls the following:
- //
- // * Whether CloudFront replaces HTTP status codes in the 4xx and 5xx range
- // with custom error messages before returning the response to the viewer.
- //
- // * How long CloudFront caches HTTP status codes in the 4xx and 5xx range.
- //
- // For more information about custom error pages, see Customizing Error Responses
- // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/custom-error-pages.html)
- // in the Amazon CloudFront Developer Guide.
- CustomErrorResponses *CustomErrorResponses `type:"structure"`
- // A complex type that describes the default cache behavior if you don't specify
- // a CacheBehavior element or if files don't match any of the values of PathPattern
- // in CacheBehavior elements. You must create exactly one default cache behavior.
- //
- // DefaultCacheBehavior is a required field
- DefaultCacheBehavior *DefaultCacheBehavior `type:"structure" required:"true"`
- // The object that you want CloudFront to request from your origin (for example,
- // index.html) when a viewer requests the root URL for your distribution (http://www.example.com)
- // instead of an object in your distribution (http://www.example.com/product-description.html).
- // Specifying a default root object avoids exposing the contents of your distribution.
- //
- // Specify only the object name, for example, index.html. Don't add a / before
- // the object name.
- //
- // If you don't want to specify a default root object when you create a distribution,
- // include an empty DefaultRootObject element.
- //
- // To delete the default root object from an existing distribution, update the
- // distribution configuration and include an empty DefaultRootObject element.
- //
- // To replace the default root object, update the distribution configuration
- // and specify the new object.
- //
- // For more information about the default root object, see Creating a Default
- // Root Object (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/DefaultRootObject.html)
- // in the Amazon CloudFront Developer Guide.
- DefaultRootObject *string `type:"string"`
- // From this field, you can enable or disable the selected distribution.
- //
- // Enabled is a required field
- Enabled *bool `type:"boolean" required:"true"`
- // (Optional) Specify the maximum HTTP version that you want viewers to use
- // to communicate with CloudFront. The default value for new web distributions
- // is http2. Viewers that don't support HTTP/2 automatically use an earlier
- // HTTP version.
- //
- // For viewers and CloudFront to use HTTP/2, viewers must support TLS 1.2 or
- // later, and must support Server Name Identification (SNI).
- //
- // In general, configuring CloudFront to communicate with viewers using HTTP/2
- // reduces latency. You can improve performance by optimizing for HTTP/2. For
- // more information, do an Internet search for "http/2 optimization."
- HttpVersion *string `type:"string" enum:"HttpVersion"`
- // If you want CloudFront to respond to IPv6 DNS requests with an IPv6 address
- // for your distribution, specify true. If you specify false, CloudFront responds
- // to IPv6 DNS requests with the DNS response code NOERROR and with no IP addresses.
- // This allows viewers to submit a second request, for an IPv4 address for your
- // distribution.
- //
- // In general, you should enable IPv6 if you have users on IPv6 networks who
- // want to access your content. However, if you're using signed URLs or signed
- // cookies to restrict access to your content, and if you're using a custom
- // policy that includes the IpAddress parameter to restrict the IP addresses
- // that can access your content, don't enable IPv6. If you want to restrict
- // access to some content by IP address and not restrict access to other content
- // (or restrict access but not by IP address), you can create two distributions.
- // For more information, see Creating a Signed URL Using a Custom Policy (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-creating-signed-url-custom-policy.html)
- // in the Amazon CloudFront Developer Guide.
- //
- // If you're using an Amazon Route 53 alias resource record set to route traffic
- // to your CloudFront distribution, you need to create a second alias resource
- // record set when both of the following are true:
- //
- // * You enable IPv6 for the distribution
- //
- // * You're using alternate domain names in the URLs for your objects
- //
- // For more information, see Routing Traffic to an Amazon CloudFront Web Distribution
- // by Using Your Domain Name (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html)
- // in the Amazon Route 53 Developer Guide.
- //
- // If you created a CNAME resource record set, either with Amazon Route 53 or
- // with another DNS service, you don't need to make any changes. A CNAME record
- // will route traffic to your distribution regardless of the IP address format
- // of the viewer request.
- IsIPV6Enabled *bool `type:"boolean"`
- // A complex type that controls whether access logs are written for the distribution.
- //
- // For more information about logging, see Access Logs (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/AccessLogs.html)
- // in the Amazon CloudFront Developer Guide.
- Logging *LoggingConfig `type:"structure"`
- // A complex type that contains information about origin groups for this distribution.
- OriginGroups *OriginGroups `type:"structure"`
- // A complex type that contains information about origins for this distribution.
- //
- // Origins is a required field
- Origins *Origins `type:"structure" required:"true"`
- // The price class that corresponds with the maximum price that you want to
- // pay for CloudFront service. If you specify PriceClass_All, CloudFront responds
- // to requests for your objects from all CloudFront edge locations.
- //
- // If you specify a price class other than PriceClass_All, CloudFront serves
- // your objects from the CloudFront edge location that has the lowest latency
- // among the edge locations in your price class. Viewers who are in or near
- // regions that are excluded from your specified price class may encounter slower
- // performance.
- //
- // For more information about price classes, see Choosing the Price Class for
- // a CloudFront Distribution (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PriceClass.html)
- // in the Amazon CloudFront Developer Guide. For information about CloudFront
- // pricing, including how price classes (such as Price Class 100) map to CloudFront
- // regions, see Amazon CloudFront Pricing (https://aws.amazon.com/cloudfront/pricing/).
- // For price class information, scroll down to see the table at the bottom of
- // the page.
- PriceClass *string `type:"string" enum:"PriceClass"`
- // A complex type that identifies ways in which you want to restrict distribution
- // of your content.
- Restrictions *Restrictions `type:"structure"`
- // A complex type that specifies the following:
- //
- // * Whether you want viewers to use HTTP or HTTPS to request your objects.
- //
- // * If you want viewers to use HTTPS, whether you're using an alternate
- // domain name such as example.com or the CloudFront domain name for your
- // distribution, such as d111111abcdef8.cloudfront.net.
- //
- // * If you're using an alternate domain name, whether AWS Certificate Manager
- // (ACM) provided the certificate, or you purchased a certificate from a
- // third-party certificate authority and imported it into ACM or uploaded
- // it to the IAM certificate store.
- //
- // You must specify only one of the following values:
- //
- // * ViewerCertificate$ACMCertificateArn
- //
- // * ViewerCertificate$IAMCertificateId
- //
- // * ViewerCertificate$CloudFrontDefaultCertificate
- //
- // Don't specify false for CloudFrontDefaultCertificate.
- //
- // If you want viewers to use HTTP instead of HTTPS to request your objects:
- // Specify the following value:
- //
- // <CloudFrontDefaultCertificate>true<CloudFrontDefaultCertificate>
- //
- // In addition, specify allow-all for ViewerProtocolPolicy for all of your cache
- // behaviors.
- //
- // If you want viewers to use HTTPS to request your objects: Choose the type
- // of certificate that you want to use based on whether you're using an alternate
- // domain name for your objects or the CloudFront domain name:
- //
- // * If you're using an alternate domain name, such as example.com: Specify
- // one of the following values, depending on whether ACM provided your certificate
- // or you purchased your certificate from third-party certificate authority:
- //
- // <ACMCertificateArn>ARN for ACM SSL/TLS certificate<ACMCertificateArn> where
- // ARN for ACM SSL/TLS certificate is the ARN for the ACM SSL/TLS certificate
- // that you want to use for this distribution.
- //
- // <IAMCertificateId>IAM certificate ID<IAMCertificateId> where IAM certificate
- // ID is the ID that IAM returned when you added the certificate to the IAM
- // certificate store.
- //
- // If you specify ACMCertificateArn or IAMCertificateId, you must also specify
- // a value for SSLSupportMethod.
- //
- // If you choose to use an ACM certificate or a certificate in the IAM certificate
- // store, we recommend that you use only an alternate domain name in your
- // object URLs (https://example.com/logo.jpg). If you use the domain name
- // that is associated with your CloudFront distribution (such as https://d111111abcdef8.cloudfront.net/logo.jpg)
- // and the viewer supports SNI, then CloudFront behaves normally. However,
- // if the browser does not support SNI, the user's experience depends on
- // the value that you choose for SSLSupportMethod:
- //
- // vip: The viewer displays a warning because there is a mismatch between the
- // CloudFront domain name and the domain name in your SSL/TLS certificate.
- //
- // sni-only: CloudFront drops the connection with the browser without returning
- // the object.
- //
- // * If you're using the CloudFront domain name for your distribution, such
- // as d111111abcdef8.cloudfront.net: Specify the following value:
- //
- // <CloudFrontDefaultCertificate>true<CloudFrontDefaultCertificate>
- //
- // If you want viewers to use HTTPS, you must also specify one of the following
- // values in your cache behaviors:
- //
- // * <ViewerProtocolPolicy>https-only<ViewerProtocolPolicy>
- //
- // * <ViewerProtocolPolicy>redirect-to-https<ViewerProtocolPolicy>
- //
- // You can also optionally require that CloudFront use HTTPS to communicate
- // with your origin by specifying one of the following values for the applicable
- // origins:
- //
- // * <OriginProtocolPolicy>https-only<OriginProtocolPolicy>
- //
- // * <OriginProtocolPolicy>match-viewer<OriginProtocolPolicy>
- //
- // For more information, see Using Alternate Domain Names and HTTPS (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html#CNAMEsAndHTTPS)
- // in the Amazon CloudFront Developer Guide.
- ViewerCertificate *ViewerCertificate `type:"structure"`
- // A unique identifier that specifies the AWS WAF web ACL, if any, to associate
- // with this distribution.
- //
- // AWS WAF is a web application firewall that lets you monitor the HTTP and
- // HTTPS requests that are forwarded to CloudFront, and lets you control access
- // to your content. Based on conditions that you specify, such as the IP addresses
- // that requests originate from or the values of query strings, CloudFront responds
- // to requests either with the requested content or with an HTTP 403 status
- // code (Forbidden). You can also configure CloudFront to return a custom error
- // page when a request is blocked. For more information about AWS WAF, see the
- // AWS WAF Developer Guide (http://docs.aws.amazon.com/waf/latest/developerguide/what-is-aws-waf.html).
- WebACLId *string `type:"string"`
- }
- // String returns the string representation
- func (s DistributionConfig) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DistributionConfig) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DistributionConfig) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DistributionConfig"}
- if s.CallerReference == nil {
- invalidParams.Add(request.NewErrParamRequired("CallerReference"))
- }
- if s.Comment == nil {
- invalidParams.Add(request.NewErrParamRequired("Comment"))
- }
- if s.DefaultCacheBehavior == nil {
- invalidParams.Add(request.NewErrParamRequired("DefaultCacheBehavior"))
- }
- if s.Enabled == nil {
- invalidParams.Add(request.NewErrParamRequired("Enabled"))
- }
- if s.Origins == nil {
- invalidParams.Add(request.NewErrParamRequired("Origins"))
- }
- if s.Aliases != nil {
- if err := s.Aliases.Validate(); err != nil {
- invalidParams.AddNested("Aliases", err.(request.ErrInvalidParams))
- }
- }
- if s.CacheBehaviors != nil {
- if err := s.CacheBehaviors.Validate(); err != nil {
- invalidParams.AddNested("CacheBehaviors", err.(request.ErrInvalidParams))
- }
- }
- if s.CustomErrorResponses != nil {
- if err := s.CustomErrorResponses.Validate(); err != nil {
- invalidParams.AddNested("CustomErrorResponses", err.(request.ErrInvalidParams))
- }
- }
- if s.DefaultCacheBehavior != nil {
- if err := s.DefaultCacheBehavior.Validate(); err != nil {
- invalidParams.AddNested("DefaultCacheBehavior", err.(request.ErrInvalidParams))
- }
- }
- if s.Logging != nil {
- if err := s.Logging.Validate(); err != nil {
- invalidParams.AddNested("Logging", err.(request.ErrInvalidParams))
- }
- }
- if s.OriginGroups != nil {
- if err := s.OriginGroups.Validate(); err != nil {
- invalidParams.AddNested("OriginGroups", err.(request.ErrInvalidParams))
- }
- }
- if s.Origins != nil {
- if err := s.Origins.Validate(); err != nil {
- invalidParams.AddNested("Origins", err.(request.ErrInvalidParams))
- }
- }
- if s.Restrictions != nil {
- if err := s.Restrictions.Validate(); err != nil {
- invalidParams.AddNested("Restrictions", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetAliases sets the Aliases field's value.
- func (s *DistributionConfig) SetAliases(v *Aliases) *DistributionConfig {
- s.Aliases = v
- return s
- }
- // SetCacheBehaviors sets the CacheBehaviors field's value.
- func (s *DistributionConfig) SetCacheBehaviors(v *CacheBehaviors) *DistributionConfig {
- s.CacheBehaviors = v
- return s
- }
- // SetCallerReference sets the CallerReference field's value.
- func (s *DistributionConfig) SetCallerReference(v string) *DistributionConfig {
- s.CallerReference = &v
- return s
- }
- // SetComment sets the Comment field's value.
- func (s *DistributionConfig) SetComment(v string) *DistributionConfig {
- s.Comment = &v
- return s
- }
- // SetCustomErrorResponses sets the CustomErrorResponses field's value.
- func (s *DistributionConfig) SetCustomErrorResponses(v *CustomErrorResponses) *DistributionConfig {
- s.CustomErrorResponses = v
- return s
- }
- // SetDefaultCacheBehavior sets the DefaultCacheBehavior field's value.
- func (s *DistributionConfig) SetDefaultCacheBehavior(v *DefaultCacheBehavior) *DistributionConfig {
- s.DefaultCacheBehavior = v
- return s
- }
- // SetDefaultRootObject sets the DefaultRootObject field's value.
- func (s *DistributionConfig) SetDefaultRootObject(v string) *DistributionConfig {
- s.DefaultRootObject = &v
- return s
- }
- // SetEnabled sets the Enabled field's value.
- func (s *DistributionConfig) SetEnabled(v bool) *DistributionConfig {
- s.Enabled = &v
- return s
- }
- // SetHttpVersion sets the HttpVersion field's value.
- func (s *DistributionConfig) SetHttpVersion(v string) *DistributionConfig {
- s.HttpVersion = &v
- return s
- }
- // SetIsIPV6Enabled sets the IsIPV6Enabled field's value.
- func (s *DistributionConfig) SetIsIPV6Enabled(v bool) *DistributionConfig {
- s.IsIPV6Enabled = &v
- return s
- }
- // SetLogging sets the Logging field's value.
- func (s *DistributionConfig) SetLogging(v *LoggingConfig) *DistributionConfig {
- s.Logging = v
- return s
- }
- // SetOriginGroups sets the OriginGroups field's value.
- func (s *DistributionConfig) SetOriginGroups(v *OriginGroups) *DistributionConfig {
- s.OriginGroups = v
- return s
- }
- // SetOrigins sets the Origins field's value.
- func (s *DistributionConfig) SetOrigins(v *Origins) *DistributionConfig {
- s.Origins = v
- return s
- }
- // SetPriceClass sets the PriceClass field's value.
- func (s *DistributionConfig) SetPriceClass(v string) *DistributionConfig {
- s.PriceClass = &v
- return s
- }
- // SetRestrictions sets the Restrictions field's value.
- func (s *DistributionConfig) SetRestrictions(v *Restrictions) *DistributionConfig {
- s.Restrictions = v
- return s
- }
- // SetViewerCertificate sets the ViewerCertificate field's value.
- func (s *DistributionConfig) SetViewerCertificate(v *ViewerCertificate) *DistributionConfig {
- s.ViewerCertificate = v
- return s
- }
- // SetWebACLId sets the WebACLId field's value.
- func (s *DistributionConfig) SetWebACLId(v string) *DistributionConfig {
- s.WebACLId = &v
- return s
- }
- // A distribution Configuration and a list of tags to be associated with the
- // distribution.
- type DistributionConfigWithTags struct {
- _ struct{} `type:"structure"`
- // A distribution configuration.
- //
- // DistributionConfig is a required field
- DistributionConfig *DistributionConfig `type:"structure" required:"true"`
- // A complex type that contains zero or more Tag elements.
- //
- // Tags is a required field
- Tags *Tags `type:"structure" required:"true"`
- }
- // String returns the string representation
- func (s DistributionConfigWithTags) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DistributionConfigWithTags) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DistributionConfigWithTags) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DistributionConfigWithTags"}
- if s.DistributionConfig == nil {
- invalidParams.Add(request.NewErrParamRequired("DistributionConfig"))
- }
- if s.Tags == nil {
- invalidParams.Add(request.NewErrParamRequired("Tags"))
- }
- if s.DistributionConfig != nil {
- if err := s.DistributionConfig.Validate(); err != nil {
- invalidParams.AddNested("DistributionConfig", err.(request.ErrInvalidParams))
- }
- }
- if s.Tags != nil {
- if err := s.Tags.Validate(); err != nil {
- invalidParams.AddNested("Tags", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetDistributionConfig sets the DistributionConfig field's value.
- func (s *DistributionConfigWithTags) SetDistributionConfig(v *DistributionConfig) *DistributionConfigWithTags {
- s.DistributionConfig = v
- return s
- }
- // SetTags sets the Tags field's value.
- func (s *DistributionConfigWithTags) SetTags(v *Tags) *DistributionConfigWithTags {
- s.Tags = v
- return s
- }
- // A distribution list.
- type DistributionList struct {
- _ struct{} `type:"structure"`
- // A flag that indicates whether more distributions remain to be listed. If
- // your results were truncated, you can make a follow-up pagination request
- // using the Marker request parameter to retrieve more distributions in the
- // list.
- //
- // IsTruncated is a required field
- IsTruncated *bool `type:"boolean" required:"true"`
- // A complex type that contains one DistributionSummary element for each distribution
- // that was created by the current AWS account.
- Items []*DistributionSummary `locationNameList:"DistributionSummary" type:"list"`
- // The value you provided for the Marker request parameter.
- //
- // Marker is a required field
- Marker *string `type:"string" required:"true"`
- // The value you provided for the MaxItems request parameter.
- //
- // MaxItems is a required field
- MaxItems *int64 `type:"integer" required:"true"`
- // If IsTruncated is true, this element is present and contains the value you
- // can use for the Marker request parameter to continue listing your distributions
- // where they left off.
- NextMarker *string `type:"string"`
- // The number of distributions that were created by the current AWS account.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s DistributionList) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DistributionList) GoString() string {
- return s.String()
- }
- // SetIsTruncated sets the IsTruncated field's value.
- func (s *DistributionList) SetIsTruncated(v bool) *DistributionList {
- s.IsTruncated = &v
- return s
- }
- // SetItems sets the Items field's value.
- func (s *DistributionList) SetItems(v []*DistributionSummary) *DistributionList {
- s.Items = v
- return s
- }
- // SetMarker sets the Marker field's value.
- func (s *DistributionList) SetMarker(v string) *DistributionList {
- s.Marker = &v
- return s
- }
- // SetMaxItems sets the MaxItems field's value.
- func (s *DistributionList) SetMaxItems(v int64) *DistributionList {
- s.MaxItems = &v
- return s
- }
- // SetNextMarker sets the NextMarker field's value.
- func (s *DistributionList) SetNextMarker(v string) *DistributionList {
- s.NextMarker = &v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *DistributionList) SetQuantity(v int64) *DistributionList {
- s.Quantity = &v
- return s
- }
- // A summary of the information about a CloudFront distribution.
- type DistributionSummary struct {
- _ struct{} `type:"structure"`
- // The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5,
- // where 123456789012 is your AWS account ID.
- //
- // ARN is a required field
- ARN *string `type:"string" required:"true"`
- // A complex type that contains information about CNAMEs (alternate domain names),
- // if any, for this distribution.
- //
- // Aliases is a required field
- Aliases *Aliases `type:"structure" required:"true"`
- // A complex type that contains zero or more CacheBehavior elements.
- //
- // CacheBehaviors is a required field
- CacheBehaviors *CacheBehaviors `type:"structure" required:"true"`
- // The comment originally specified when this distribution was created.
- //
- // Comment is a required field
- Comment *string `type:"string" required:"true"`
- // A complex type that contains zero or more CustomErrorResponses elements.
- //
- // CustomErrorResponses is a required field
- CustomErrorResponses *CustomErrorResponses `type:"structure" required:"true"`
- // A complex type that describes the default cache behavior if you don't specify
- // a CacheBehavior element or if files don't match any of the values of PathPattern
- // in CacheBehavior elements. You must create exactly one default cache behavior.
- //
- // DefaultCacheBehavior is a required field
- DefaultCacheBehavior *DefaultCacheBehavior `type:"structure" required:"true"`
- // The domain name that corresponds to the distribution, for example, d111111abcdef8.cloudfront.net.
- //
- // DomainName is a required field
- DomainName *string `type:"string" required:"true"`
- // Whether the distribution is enabled to accept user requests for content.
- //
- // Enabled is a required field
- Enabled *bool `type:"boolean" required:"true"`
- // Specify the maximum HTTP version that you want viewers to use to communicate
- // with CloudFront. The default value for new web distributions is http2. Viewers
- // that don't support HTTP/2 will automatically use an earlier version.
- //
- // HttpVersion is a required field
- HttpVersion *string `type:"string" required:"true" enum:"HttpVersion"`
- // The identifier for the distribution. For example: EDFDVBD632BHDS5.
- //
- // Id is a required field
- Id *string `type:"string" required:"true"`
- // Whether CloudFront responds to IPv6 DNS requests with an IPv6 address for
- // your distribution.
- //
- // IsIPV6Enabled is a required field
- IsIPV6Enabled *bool `type:"boolean" required:"true"`
- // The date and time the distribution was last modified.
- //
- // LastModifiedTime is a required field
- LastModifiedTime *time.Time `type:"timestamp" required:"true"`
- // A complex type that contains information about origin groups for this distribution.
- OriginGroups *OriginGroups `type:"structure"`
- // A complex type that contains information about origins for this distribution.
- //
- // Origins is a required field
- Origins *Origins `type:"structure" required:"true"`
- // A complex type that contains information about price class for this streaming
- // distribution.
- //
- // PriceClass is a required field
- PriceClass *string `type:"string" required:"true" enum:"PriceClass"`
- // A complex type that identifies ways in which you want to restrict distribution
- // of your content.
- //
- // Restrictions is a required field
- Restrictions *Restrictions `type:"structure" required:"true"`
- // The current status of the distribution. When the status is Deployed, the
- // distribution's information is propagated to all CloudFront edge locations.
- //
- // Status is a required field
- Status *string `type:"string" required:"true"`
- // A complex type that specifies the following:
- //
- // * Whether you want viewers to use HTTP or HTTPS to request your objects.
- //
- // * If you want viewers to use HTTPS, whether you're using an alternate
- // domain name such as example.com or the CloudFront domain name for your
- // distribution, such as d111111abcdef8.cloudfront.net.
- //
- // * If you're using an alternate domain name, whether AWS Certificate Manager
- // (ACM) provided the certificate, or you purchased a certificate from a
- // third-party certificate authority and imported it into ACM or uploaded
- // it to the IAM certificate store.
- //
- // You must specify only one of the following values:
- //
- // * ViewerCertificate$ACMCertificateArn
- //
- // * ViewerCertificate$IAMCertificateId
- //
- // * ViewerCertificate$CloudFrontDefaultCertificate
- //
- // Don't specify false for CloudFrontDefaultCertificate.
- //
- // If you want viewers to use HTTP instead of HTTPS to request your objects:
- // Specify the following value:
- //
- // <CloudFrontDefaultCertificate>true<CloudFrontDefaultCertificate>
- //
- // In addition, specify allow-all for ViewerProtocolPolicy for all of your cache
- // behaviors.
- //
- // If you want viewers to use HTTPS to request your objects: Choose the type
- // of certificate that you want to use based on whether you're using an alternate
- // domain name for your objects or the CloudFront domain name:
- //
- // * If you're using an alternate domain name, such as example.com: Specify
- // one of the following values, depending on whether ACM provided your certificate
- // or you purchased your certificate from third-party certificate authority:
- //
- // <ACMCertificateArn>ARN for ACM SSL/TLS certificate<ACMCertificateArn> where
- // ARN for ACM SSL/TLS certificate is the ARN for the ACM SSL/TLS certificate
- // that you want to use for this distribution.
- //
- // <IAMCertificateId>IAM certificate ID<IAMCertificateId> where IAM certificate
- // ID is the ID that IAM returned when you added the certificate to the IAM
- // certificate store.
- //
- // If you specify ACMCertificateArn or IAMCertificateId, you must also specify
- // a value for SSLSupportMethod.
- //
- // If you choose to use an ACM certificate or a certificate in the IAM certificate
- // store, we recommend that you use only an alternate domain name in your
- // object URLs (https://example.com/logo.jpg). If you use the domain name
- // that is associated with your CloudFront distribution (such as https://d111111abcdef8.cloudfront.net/logo.jpg)
- // and the viewer supports SNI, then CloudFront behaves normally. However,
- // if the browser does not support SNI, the user's experience depends on
- // the value that you choose for SSLSupportMethod:
- //
- // vip: The viewer displays a warning because there is a mismatch between the
- // CloudFront domain name and the domain name in your SSL/TLS certificate.
- //
- // sni-only: CloudFront drops the connection with the browser without returning
- // the object.
- //
- // * If you're using the CloudFront domain name for your distribution, such
- // as d111111abcdef8.cloudfront.net: Specify the following value:
- //
- // <CloudFrontDefaultCertificate>true<CloudFrontDefaultCertificate>
- //
- // If you want viewers to use HTTPS, you must also specify one of the following
- // values in your cache behaviors:
- //
- // * <ViewerProtocolPolicy>https-only<ViewerProtocolPolicy>
- //
- // * <ViewerProtocolPolicy>redirect-to-https<ViewerProtocolPolicy>
- //
- // You can also optionally require that CloudFront use HTTPS to communicate
- // with your origin by specifying one of the following values for the applicable
- // origins:
- //
- // * <OriginProtocolPolicy>https-only<OriginProtocolPolicy>
- //
- // * <OriginProtocolPolicy>match-viewer<OriginProtocolPolicy>
- //
- // For more information, see Using Alternate Domain Names and HTTPS (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html#CNAMEsAndHTTPS)
- // in the Amazon CloudFront Developer Guide.
- //
- // ViewerCertificate is a required field
- ViewerCertificate *ViewerCertificate `type:"structure" required:"true"`
- // The Web ACL Id (if any) associated with the distribution.
- //
- // WebACLId is a required field
- WebACLId *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DistributionSummary) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DistributionSummary) GoString() string {
- return s.String()
- }
- // SetARN sets the ARN field's value.
- func (s *DistributionSummary) SetARN(v string) *DistributionSummary {
- s.ARN = &v
- return s
- }
- // SetAliases sets the Aliases field's value.
- func (s *DistributionSummary) SetAliases(v *Aliases) *DistributionSummary {
- s.Aliases = v
- return s
- }
- // SetCacheBehaviors sets the CacheBehaviors field's value.
- func (s *DistributionSummary) SetCacheBehaviors(v *CacheBehaviors) *DistributionSummary {
- s.CacheBehaviors = v
- return s
- }
- // SetComment sets the Comment field's value.
- func (s *DistributionSummary) SetComment(v string) *DistributionSummary {
- s.Comment = &v
- return s
- }
- // SetCustomErrorResponses sets the CustomErrorResponses field's value.
- func (s *DistributionSummary) SetCustomErrorResponses(v *CustomErrorResponses) *DistributionSummary {
- s.CustomErrorResponses = v
- return s
- }
- // SetDefaultCacheBehavior sets the DefaultCacheBehavior field's value.
- func (s *DistributionSummary) SetDefaultCacheBehavior(v *DefaultCacheBehavior) *DistributionSummary {
- s.DefaultCacheBehavior = v
- return s
- }
- // SetDomainName sets the DomainName field's value.
- func (s *DistributionSummary) SetDomainName(v string) *DistributionSummary {
- s.DomainName = &v
- return s
- }
- // SetEnabled sets the Enabled field's value.
- func (s *DistributionSummary) SetEnabled(v bool) *DistributionSummary {
- s.Enabled = &v
- return s
- }
- // SetHttpVersion sets the HttpVersion field's value.
- func (s *DistributionSummary) SetHttpVersion(v string) *DistributionSummary {
- s.HttpVersion = &v
- return s
- }
- // SetId sets the Id field's value.
- func (s *DistributionSummary) SetId(v string) *DistributionSummary {
- s.Id = &v
- return s
- }
- // SetIsIPV6Enabled sets the IsIPV6Enabled field's value.
- func (s *DistributionSummary) SetIsIPV6Enabled(v bool) *DistributionSummary {
- s.IsIPV6Enabled = &v
- return s
- }
- // SetLastModifiedTime sets the LastModifiedTime field's value.
- func (s *DistributionSummary) SetLastModifiedTime(v time.Time) *DistributionSummary {
- s.LastModifiedTime = &v
- return s
- }
- // SetOriginGroups sets the OriginGroups field's value.
- func (s *DistributionSummary) SetOriginGroups(v *OriginGroups) *DistributionSummary {
- s.OriginGroups = v
- return s
- }
- // SetOrigins sets the Origins field's value.
- func (s *DistributionSummary) SetOrigins(v *Origins) *DistributionSummary {
- s.Origins = v
- return s
- }
- // SetPriceClass sets the PriceClass field's value.
- func (s *DistributionSummary) SetPriceClass(v string) *DistributionSummary {
- s.PriceClass = &v
- return s
- }
- // SetRestrictions sets the Restrictions field's value.
- func (s *DistributionSummary) SetRestrictions(v *Restrictions) *DistributionSummary {
- s.Restrictions = v
- return s
- }
- // SetStatus sets the Status field's value.
- func (s *DistributionSummary) SetStatus(v string) *DistributionSummary {
- s.Status = &v
- return s
- }
- // SetViewerCertificate sets the ViewerCertificate field's value.
- func (s *DistributionSummary) SetViewerCertificate(v *ViewerCertificate) *DistributionSummary {
- s.ViewerCertificate = v
- return s
- }
- // SetWebACLId sets the WebACLId field's value.
- func (s *DistributionSummary) SetWebACLId(v string) *DistributionSummary {
- s.WebACLId = &v
- return s
- }
- // Complex data type for field-level encryption profiles that includes all of
- // the encryption entities.
- type EncryptionEntities struct {
- _ struct{} `type:"structure"`
- // An array of field patterns in a field-level encryption content type-profile
- // mapping.
- Items []*EncryptionEntity `locationNameList:"EncryptionEntity" type:"list"`
- // Number of field pattern items in a field-level encryption content type-profile
- // mapping.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s EncryptionEntities) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s EncryptionEntities) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *EncryptionEntities) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "EncryptionEntities"}
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if s.Items != nil {
- for i, v := range s.Items {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *EncryptionEntities) SetItems(v []*EncryptionEntity) *EncryptionEntities {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *EncryptionEntities) SetQuantity(v int64) *EncryptionEntities {
- s.Quantity = &v
- return s
- }
- // Complex data type for field-level encryption profiles that includes the encryption
- // key and field pattern specifications.
- type EncryptionEntity struct {
- _ struct{} `type:"structure"`
- // Field patterns in a field-level encryption content type profile specify the
- // fields that you want to be encrypted. You can provide the full field name,
- // or any beginning characters followed by a wildcard (*). You can't overlap
- // field patterns. For example, you can't have both ABC* and AB*. Note that
- // field patterns are case-sensitive.
- //
- // FieldPatterns is a required field
- FieldPatterns *FieldPatterns `type:"structure" required:"true"`
- // The provider associated with the public key being used for encryption. This
- // value must also be provided with the private key for applications to be able
- // to decrypt data.
- //
- // ProviderId is a required field
- ProviderId *string `type:"string" required:"true"`
- // The public key associated with a set of field-level encryption patterns,
- // to be used when encrypting the fields that match the patterns.
- //
- // PublicKeyId is a required field
- PublicKeyId *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s EncryptionEntity) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s EncryptionEntity) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *EncryptionEntity) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "EncryptionEntity"}
- if s.FieldPatterns == nil {
- invalidParams.Add(request.NewErrParamRequired("FieldPatterns"))
- }
- if s.ProviderId == nil {
- invalidParams.Add(request.NewErrParamRequired("ProviderId"))
- }
- if s.PublicKeyId == nil {
- invalidParams.Add(request.NewErrParamRequired("PublicKeyId"))
- }
- if s.FieldPatterns != nil {
- if err := s.FieldPatterns.Validate(); err != nil {
- invalidParams.AddNested("FieldPatterns", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetFieldPatterns sets the FieldPatterns field's value.
- func (s *EncryptionEntity) SetFieldPatterns(v *FieldPatterns) *EncryptionEntity {
- s.FieldPatterns = v
- return s
- }
- // SetProviderId sets the ProviderId field's value.
- func (s *EncryptionEntity) SetProviderId(v string) *EncryptionEntity {
- s.ProviderId = &v
- return s
- }
- // SetPublicKeyId sets the PublicKeyId field's value.
- func (s *EncryptionEntity) SetPublicKeyId(v string) *EncryptionEntity {
- s.PublicKeyId = &v
- return s
- }
- // A complex data type that includes the profile configurations and other options
- // specified for field-level encryption.
- type FieldLevelEncryption struct {
- _ struct{} `type:"structure"`
- // A complex data type that includes the profile configurations specified for
- // field-level encryption.
- //
- // FieldLevelEncryptionConfig is a required field
- FieldLevelEncryptionConfig *FieldLevelEncryptionConfig `type:"structure" required:"true"`
- // The configuration ID for a field-level encryption configuration which includes
- // a set of profiles that specify certain selected data fields to be encrypted
- // by specific public keys.
- //
- // Id is a required field
- Id *string `type:"string" required:"true"`
- // The last time the field-level encryption configuration was changed.
- //
- // LastModifiedTime is a required field
- LastModifiedTime *time.Time `type:"timestamp" required:"true"`
- }
- // String returns the string representation
- func (s FieldLevelEncryption) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s FieldLevelEncryption) GoString() string {
- return s.String()
- }
- // SetFieldLevelEncryptionConfig sets the FieldLevelEncryptionConfig field's value.
- func (s *FieldLevelEncryption) SetFieldLevelEncryptionConfig(v *FieldLevelEncryptionConfig) *FieldLevelEncryption {
- s.FieldLevelEncryptionConfig = v
- return s
- }
- // SetId sets the Id field's value.
- func (s *FieldLevelEncryption) SetId(v string) *FieldLevelEncryption {
- s.Id = &v
- return s
- }
- // SetLastModifiedTime sets the LastModifiedTime field's value.
- func (s *FieldLevelEncryption) SetLastModifiedTime(v time.Time) *FieldLevelEncryption {
- s.LastModifiedTime = &v
- return s
- }
- // A complex data type that includes the profile configurations specified for
- // field-level encryption.
- type FieldLevelEncryptionConfig struct {
- _ struct{} `type:"structure"`
- // A unique number that ensures the request can't be replayed.
- //
- // CallerReference is a required field
- CallerReference *string `type:"string" required:"true"`
- // An optional comment about the configuration.
- Comment *string `type:"string"`
- // A complex data type that specifies when to forward content if a content type
- // isn't recognized and profiles to use as by default in a request if a query
- // argument doesn't specify a profile to use.
- ContentTypeProfileConfig *ContentTypeProfileConfig `type:"structure"`
- // A complex data type that specifies when to forward content if a profile isn't
- // found and the profile that can be provided as a query argument in a request.
- QueryArgProfileConfig *QueryArgProfileConfig `type:"structure"`
- }
- // String returns the string representation
- func (s FieldLevelEncryptionConfig) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s FieldLevelEncryptionConfig) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *FieldLevelEncryptionConfig) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "FieldLevelEncryptionConfig"}
- if s.CallerReference == nil {
- invalidParams.Add(request.NewErrParamRequired("CallerReference"))
- }
- if s.ContentTypeProfileConfig != nil {
- if err := s.ContentTypeProfileConfig.Validate(); err != nil {
- invalidParams.AddNested("ContentTypeProfileConfig", err.(request.ErrInvalidParams))
- }
- }
- if s.QueryArgProfileConfig != nil {
- if err := s.QueryArgProfileConfig.Validate(); err != nil {
- invalidParams.AddNested("QueryArgProfileConfig", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetCallerReference sets the CallerReference field's value.
- func (s *FieldLevelEncryptionConfig) SetCallerReference(v string) *FieldLevelEncryptionConfig {
- s.CallerReference = &v
- return s
- }
- // SetComment sets the Comment field's value.
- func (s *FieldLevelEncryptionConfig) SetComment(v string) *FieldLevelEncryptionConfig {
- s.Comment = &v
- return s
- }
- // SetContentTypeProfileConfig sets the ContentTypeProfileConfig field's value.
- func (s *FieldLevelEncryptionConfig) SetContentTypeProfileConfig(v *ContentTypeProfileConfig) *FieldLevelEncryptionConfig {
- s.ContentTypeProfileConfig = v
- return s
- }
- // SetQueryArgProfileConfig sets the QueryArgProfileConfig field's value.
- func (s *FieldLevelEncryptionConfig) SetQueryArgProfileConfig(v *QueryArgProfileConfig) *FieldLevelEncryptionConfig {
- s.QueryArgProfileConfig = v
- return s
- }
- // List of field-level encrpytion configurations.
- type FieldLevelEncryptionList struct {
- _ struct{} `type:"structure"`
- // An array of field-level encryption items.
- Items []*FieldLevelEncryptionSummary `locationNameList:"FieldLevelEncryptionSummary" type:"list"`
- // The maximum number of elements you want in the response body.
- //
- // MaxItems is a required field
- MaxItems *int64 `type:"integer" required:"true"`
- // If there are more elements to be listed, this element is present and contains
- // the value that you can use for the Marker request parameter to continue listing
- // your configurations where you left off.
- NextMarker *string `type:"string"`
- // The number of field-level encryption items.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s FieldLevelEncryptionList) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s FieldLevelEncryptionList) GoString() string {
- return s.String()
- }
- // SetItems sets the Items field's value.
- func (s *FieldLevelEncryptionList) SetItems(v []*FieldLevelEncryptionSummary) *FieldLevelEncryptionList {
- s.Items = v
- return s
- }
- // SetMaxItems sets the MaxItems field's value.
- func (s *FieldLevelEncryptionList) SetMaxItems(v int64) *FieldLevelEncryptionList {
- s.MaxItems = &v
- return s
- }
- // SetNextMarker sets the NextMarker field's value.
- func (s *FieldLevelEncryptionList) SetNextMarker(v string) *FieldLevelEncryptionList {
- s.NextMarker = &v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *FieldLevelEncryptionList) SetQuantity(v int64) *FieldLevelEncryptionList {
- s.Quantity = &v
- return s
- }
- // A complex data type for field-level encryption profiles.
- type FieldLevelEncryptionProfile struct {
- _ struct{} `type:"structure"`
- // A complex data type that includes the profile name and the encryption entities
- // for the field-level encryption profile.
- //
- // FieldLevelEncryptionProfileConfig is a required field
- FieldLevelEncryptionProfileConfig *FieldLevelEncryptionProfileConfig `type:"structure" required:"true"`
- // The ID for a field-level encryption profile configuration which includes
- // a set of profiles that specify certain selected data fields to be encrypted
- // by specific public keys.
- //
- // Id is a required field
- Id *string `type:"string" required:"true"`
- // The last time the field-level encryption profile was updated.
- //
- // LastModifiedTime is a required field
- LastModifiedTime *time.Time `type:"timestamp" required:"true"`
- }
- // String returns the string representation
- func (s FieldLevelEncryptionProfile) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s FieldLevelEncryptionProfile) GoString() string {
- return s.String()
- }
- // SetFieldLevelEncryptionProfileConfig sets the FieldLevelEncryptionProfileConfig field's value.
- func (s *FieldLevelEncryptionProfile) SetFieldLevelEncryptionProfileConfig(v *FieldLevelEncryptionProfileConfig) *FieldLevelEncryptionProfile {
- s.FieldLevelEncryptionProfileConfig = v
- return s
- }
- // SetId sets the Id field's value.
- func (s *FieldLevelEncryptionProfile) SetId(v string) *FieldLevelEncryptionProfile {
- s.Id = &v
- return s
- }
- // SetLastModifiedTime sets the LastModifiedTime field's value.
- func (s *FieldLevelEncryptionProfile) SetLastModifiedTime(v time.Time) *FieldLevelEncryptionProfile {
- s.LastModifiedTime = &v
- return s
- }
- // A complex data type of profiles for the field-level encryption.
- type FieldLevelEncryptionProfileConfig struct {
- _ struct{} `type:"structure"`
- // A unique number that ensures that the request can't be replayed.
- //
- // CallerReference is a required field
- CallerReference *string `type:"string" required:"true"`
- // An optional comment for the field-level encryption profile.
- Comment *string `type:"string"`
- // A complex data type of encryption entities for the field-level encryption
- // profile that include the public key ID, provider, and field patterns for
- // specifying which fields to encrypt with this key.
- //
- // EncryptionEntities is a required field
- EncryptionEntities *EncryptionEntities `type:"structure" required:"true"`
- // Profile name for the field-level encryption profile.
- //
- // Name is a required field
- Name *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s FieldLevelEncryptionProfileConfig) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s FieldLevelEncryptionProfileConfig) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *FieldLevelEncryptionProfileConfig) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "FieldLevelEncryptionProfileConfig"}
- if s.CallerReference == nil {
- invalidParams.Add(request.NewErrParamRequired("CallerReference"))
- }
- if s.EncryptionEntities == nil {
- invalidParams.Add(request.NewErrParamRequired("EncryptionEntities"))
- }
- if s.Name == nil {
- invalidParams.Add(request.NewErrParamRequired("Name"))
- }
- if s.EncryptionEntities != nil {
- if err := s.EncryptionEntities.Validate(); err != nil {
- invalidParams.AddNested("EncryptionEntities", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetCallerReference sets the CallerReference field's value.
- func (s *FieldLevelEncryptionProfileConfig) SetCallerReference(v string) *FieldLevelEncryptionProfileConfig {
- s.CallerReference = &v
- return s
- }
- // SetComment sets the Comment field's value.
- func (s *FieldLevelEncryptionProfileConfig) SetComment(v string) *FieldLevelEncryptionProfileConfig {
- s.Comment = &v
- return s
- }
- // SetEncryptionEntities sets the EncryptionEntities field's value.
- func (s *FieldLevelEncryptionProfileConfig) SetEncryptionEntities(v *EncryptionEntities) *FieldLevelEncryptionProfileConfig {
- s.EncryptionEntities = v
- return s
- }
- // SetName sets the Name field's value.
- func (s *FieldLevelEncryptionProfileConfig) SetName(v string) *FieldLevelEncryptionProfileConfig {
- s.Name = &v
- return s
- }
- // List of field-level encryption profiles.
- type FieldLevelEncryptionProfileList struct {
- _ struct{} `type:"structure"`
- // The field-level encryption profile items.
- Items []*FieldLevelEncryptionProfileSummary `locationNameList:"FieldLevelEncryptionProfileSummary" type:"list"`
- // The maximum number of field-level encryption profiles you want in the response
- // body.
- //
- // MaxItems is a required field
- MaxItems *int64 `type:"integer" required:"true"`
- // If there are more elements to be listed, this element is present and contains
- // the value that you can use for the Marker request parameter to continue listing
- // your profiles where you left off.
- NextMarker *string `type:"string"`
- // The number of field-level encryption profiles.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s FieldLevelEncryptionProfileList) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s FieldLevelEncryptionProfileList) GoString() string {
- return s.String()
- }
- // SetItems sets the Items field's value.
- func (s *FieldLevelEncryptionProfileList) SetItems(v []*FieldLevelEncryptionProfileSummary) *FieldLevelEncryptionProfileList {
- s.Items = v
- return s
- }
- // SetMaxItems sets the MaxItems field's value.
- func (s *FieldLevelEncryptionProfileList) SetMaxItems(v int64) *FieldLevelEncryptionProfileList {
- s.MaxItems = &v
- return s
- }
- // SetNextMarker sets the NextMarker field's value.
- func (s *FieldLevelEncryptionProfileList) SetNextMarker(v string) *FieldLevelEncryptionProfileList {
- s.NextMarker = &v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *FieldLevelEncryptionProfileList) SetQuantity(v int64) *FieldLevelEncryptionProfileList {
- s.Quantity = &v
- return s
- }
- // The field-level encryption profile summary.
- type FieldLevelEncryptionProfileSummary struct {
- _ struct{} `type:"structure"`
- // An optional comment for the field-level encryption profile summary.
- Comment *string `type:"string"`
- // A complex data type of encryption entities for the field-level encryption
- // profile that include the public key ID, provider, and field patterns for
- // specifying which fields to encrypt with this key.
- //
- // EncryptionEntities is a required field
- EncryptionEntities *EncryptionEntities `type:"structure" required:"true"`
- // ID for the field-level encryption profile summary.
- //
- // Id is a required field
- Id *string `type:"string" required:"true"`
- // The time when the the field-level encryption profile summary was last updated.
- //
- // LastModifiedTime is a required field
- LastModifiedTime *time.Time `type:"timestamp" required:"true"`
- // Name for the field-level encryption profile summary.
- //
- // Name is a required field
- Name *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s FieldLevelEncryptionProfileSummary) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s FieldLevelEncryptionProfileSummary) GoString() string {
- return s.String()
- }
- // SetComment sets the Comment field's value.
- func (s *FieldLevelEncryptionProfileSummary) SetComment(v string) *FieldLevelEncryptionProfileSummary {
- s.Comment = &v
- return s
- }
- // SetEncryptionEntities sets the EncryptionEntities field's value.
- func (s *FieldLevelEncryptionProfileSummary) SetEncryptionEntities(v *EncryptionEntities) *FieldLevelEncryptionProfileSummary {
- s.EncryptionEntities = v
- return s
- }
- // SetId sets the Id field's value.
- func (s *FieldLevelEncryptionProfileSummary) SetId(v string) *FieldLevelEncryptionProfileSummary {
- s.Id = &v
- return s
- }
- // SetLastModifiedTime sets the LastModifiedTime field's value.
- func (s *FieldLevelEncryptionProfileSummary) SetLastModifiedTime(v time.Time) *FieldLevelEncryptionProfileSummary {
- s.LastModifiedTime = &v
- return s
- }
- // SetName sets the Name field's value.
- func (s *FieldLevelEncryptionProfileSummary) SetName(v string) *FieldLevelEncryptionProfileSummary {
- s.Name = &v
- return s
- }
- // A summary of a field-level encryption item.
- type FieldLevelEncryptionSummary struct {
- _ struct{} `type:"structure"`
- // An optional comment about the field-level encryption item.
- Comment *string `type:"string"`
- // A summary of a content type-profile mapping.
- ContentTypeProfileConfig *ContentTypeProfileConfig `type:"structure"`
- // The unique ID of a field-level encryption item.
- //
- // Id is a required field
- Id *string `type:"string" required:"true"`
- // The last time that the summary of field-level encryption items was modified.
- //
- // LastModifiedTime is a required field
- LastModifiedTime *time.Time `type:"timestamp" required:"true"`
- // A summary of a query argument-profile mapping.
- QueryArgProfileConfig *QueryArgProfileConfig `type:"structure"`
- }
- // String returns the string representation
- func (s FieldLevelEncryptionSummary) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s FieldLevelEncryptionSummary) GoString() string {
- return s.String()
- }
- // SetComment sets the Comment field's value.
- func (s *FieldLevelEncryptionSummary) SetComment(v string) *FieldLevelEncryptionSummary {
- s.Comment = &v
- return s
- }
- // SetContentTypeProfileConfig sets the ContentTypeProfileConfig field's value.
- func (s *FieldLevelEncryptionSummary) SetContentTypeProfileConfig(v *ContentTypeProfileConfig) *FieldLevelEncryptionSummary {
- s.ContentTypeProfileConfig = v
- return s
- }
- // SetId sets the Id field's value.
- func (s *FieldLevelEncryptionSummary) SetId(v string) *FieldLevelEncryptionSummary {
- s.Id = &v
- return s
- }
- // SetLastModifiedTime sets the LastModifiedTime field's value.
- func (s *FieldLevelEncryptionSummary) SetLastModifiedTime(v time.Time) *FieldLevelEncryptionSummary {
- s.LastModifiedTime = &v
- return s
- }
- // SetQueryArgProfileConfig sets the QueryArgProfileConfig field's value.
- func (s *FieldLevelEncryptionSummary) SetQueryArgProfileConfig(v *QueryArgProfileConfig) *FieldLevelEncryptionSummary {
- s.QueryArgProfileConfig = v
- return s
- }
- // A complex data type that includes the field patterns to match for field-level
- // encryption.
- type FieldPatterns struct {
- _ struct{} `type:"structure"`
- // An array of the field-level encryption field patterns.
- Items []*string `locationNameList:"FieldPattern" type:"list"`
- // The number of field-level encryption field patterns.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s FieldPatterns) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s FieldPatterns) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *FieldPatterns) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "FieldPatterns"}
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *FieldPatterns) SetItems(v []*string) *FieldPatterns {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *FieldPatterns) SetQuantity(v int64) *FieldPatterns {
- s.Quantity = &v
- return s
- }
- // A complex type that specifies how CloudFront handles query strings and cookies.
- type ForwardedValues struct {
- _ struct{} `type:"structure"`
- // A complex type that specifies whether you want CloudFront to forward cookies
- // to the origin and, if so, which ones. For more information about forwarding
- // cookies to the origin, see How CloudFront Forwards, Caches, and Logs Cookies
- // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html)
- // in the Amazon CloudFront Developer Guide.
- //
- // Cookies is a required field
- Cookies *CookiePreference `type:"structure" required:"true"`
- // A complex type that specifies the Headers, if any, that you want CloudFront
- // to base caching on for this cache behavior.
- Headers *Headers `type:"structure"`
- // Indicates whether you want CloudFront to forward query strings to the origin
- // that is associated with this cache behavior and cache based on the query
- // string parameters. CloudFront behavior depends on the value of QueryString
- // and on the values that you specify for QueryStringCacheKeys, if any:
- //
- // If you specify true for QueryString and you don't specify any values for
- // QueryStringCacheKeys, CloudFront forwards all query string parameters to
- // the origin and caches based on all query string parameters. Depending on
- // how many query string parameters and values you have, this can adversely
- // affect performance because CloudFront must forward more requests to the origin.
- //
- // If you specify true for QueryString and you specify one or more values for
- // QueryStringCacheKeys, CloudFront forwards all query string parameters to
- // the origin, but it only caches based on the query string parameters that
- // you specify.
- //
- // If you specify false for QueryString, CloudFront doesn't forward any query
- // string parameters to the origin, and doesn't cache based on query string
- // parameters.
- //
- // For more information, see Configuring CloudFront to Cache Based on Query
- // String Parameters (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/QueryStringParameters.html)
- // in the Amazon CloudFront Developer Guide.
- //
- // QueryString is a required field
- QueryString *bool `type:"boolean" required:"true"`
- // A complex type that contains information about the query string parameters
- // that you want CloudFront to use for caching for this cache behavior.
- QueryStringCacheKeys *QueryStringCacheKeys `type:"structure"`
- }
- // String returns the string representation
- func (s ForwardedValues) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ForwardedValues) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ForwardedValues) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ForwardedValues"}
- if s.Cookies == nil {
- invalidParams.Add(request.NewErrParamRequired("Cookies"))
- }
- if s.QueryString == nil {
- invalidParams.Add(request.NewErrParamRequired("QueryString"))
- }
- if s.Cookies != nil {
- if err := s.Cookies.Validate(); err != nil {
- invalidParams.AddNested("Cookies", err.(request.ErrInvalidParams))
- }
- }
- if s.Headers != nil {
- if err := s.Headers.Validate(); err != nil {
- invalidParams.AddNested("Headers", err.(request.ErrInvalidParams))
- }
- }
- if s.QueryStringCacheKeys != nil {
- if err := s.QueryStringCacheKeys.Validate(); err != nil {
- invalidParams.AddNested("QueryStringCacheKeys", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetCookies sets the Cookies field's value.
- func (s *ForwardedValues) SetCookies(v *CookiePreference) *ForwardedValues {
- s.Cookies = v
- return s
- }
- // SetHeaders sets the Headers field's value.
- func (s *ForwardedValues) SetHeaders(v *Headers) *ForwardedValues {
- s.Headers = v
- return s
- }
- // SetQueryString sets the QueryString field's value.
- func (s *ForwardedValues) SetQueryString(v bool) *ForwardedValues {
- s.QueryString = &v
- return s
- }
- // SetQueryStringCacheKeys sets the QueryStringCacheKeys field's value.
- func (s *ForwardedValues) SetQueryStringCacheKeys(v *QueryStringCacheKeys) *ForwardedValues {
- s.QueryStringCacheKeys = v
- return s
- }
- // A complex type that controls the countries in which your content is distributed.
- // CloudFront determines the location of your users using MaxMind GeoIP databases.
- type GeoRestriction struct {
- _ struct{} `type:"structure"`
- // A complex type that contains a Location element for each country in which
- // you want CloudFront either to distribute your content (whitelist) or not
- // distribute your content (blacklist).
- //
- // The Location element is a two-letter, uppercase country code for a country
- // that you want to include in your blacklist or whitelist. Include one Location
- // element for each country.
- //
- // CloudFront and MaxMind both use ISO 3166 country codes. For the current list
- // of countries and the corresponding codes, see ISO 3166-1-alpha-2 code on
- // the International Organization for Standardization website. You can also
- // refer to the country list on the CloudFront console, which includes both
- // country names and codes.
- Items []*string `locationNameList:"Location" type:"list"`
- // When geo restriction is enabled, this is the number of countries in your
- // whitelist or blacklist. Otherwise, when it is not enabled, Quantity is 0,
- // and you can omit Items.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- // The method that you want to use to restrict distribution of your content
- // by country:
- //
- // * none: No geo restriction is enabled, meaning access to content is not
- // restricted by client geo location.
- //
- // * blacklist: The Location elements specify the countries in which you
- // don't want CloudFront to distribute your content.
- //
- // * whitelist: The Location elements specify the countries in which you
- // want CloudFront to distribute your content.
- //
- // RestrictionType is a required field
- RestrictionType *string `type:"string" required:"true" enum:"GeoRestrictionType"`
- }
- // String returns the string representation
- func (s GeoRestriction) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GeoRestriction) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *GeoRestriction) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "GeoRestriction"}
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if s.RestrictionType == nil {
- invalidParams.Add(request.NewErrParamRequired("RestrictionType"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *GeoRestriction) SetItems(v []*string) *GeoRestriction {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *GeoRestriction) SetQuantity(v int64) *GeoRestriction {
- s.Quantity = &v
- return s
- }
- // SetRestrictionType sets the RestrictionType field's value.
- func (s *GeoRestriction) SetRestrictionType(v string) *GeoRestriction {
- s.RestrictionType = &v
- return s
- }
- // The origin access identity's configuration information. For more information,
- // see CloudFrontOriginAccessIdentityConfigComplexType.
- type GetCloudFrontOriginAccessIdentityConfigInput struct {
- _ struct{} `type:"structure"`
- // The identity's ID.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s GetCloudFrontOriginAccessIdentityConfigInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetCloudFrontOriginAccessIdentityConfigInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *GetCloudFrontOriginAccessIdentityConfigInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "GetCloudFrontOriginAccessIdentityConfigInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *GetCloudFrontOriginAccessIdentityConfigInput) SetId(v string) *GetCloudFrontOriginAccessIdentityConfigInput {
- s.Id = &v
- return s
- }
- // The returned result of the corresponding request.
- type GetCloudFrontOriginAccessIdentityConfigOutput struct {
- _ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentityConfig"`
- // The origin access identity's configuration information.
- CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `type:"structure"`
- // The current version of the configuration. For example: E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- }
- // String returns the string representation
- func (s GetCloudFrontOriginAccessIdentityConfigOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetCloudFrontOriginAccessIdentityConfigOutput) GoString() string {
- return s.String()
- }
- // SetCloudFrontOriginAccessIdentityConfig sets the CloudFrontOriginAccessIdentityConfig field's value.
- func (s *GetCloudFrontOriginAccessIdentityConfigOutput) SetCloudFrontOriginAccessIdentityConfig(v *OriginAccessIdentityConfig) *GetCloudFrontOriginAccessIdentityConfigOutput {
- s.CloudFrontOriginAccessIdentityConfig = v
- return s
- }
- // SetETag sets the ETag field's value.
- func (s *GetCloudFrontOriginAccessIdentityConfigOutput) SetETag(v string) *GetCloudFrontOriginAccessIdentityConfigOutput {
- s.ETag = &v
- return s
- }
- // The request to get an origin access identity's information.
- type GetCloudFrontOriginAccessIdentityInput struct {
- _ struct{} `type:"structure"`
- // The identity's ID.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s GetCloudFrontOriginAccessIdentityInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetCloudFrontOriginAccessIdentityInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *GetCloudFrontOriginAccessIdentityInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "GetCloudFrontOriginAccessIdentityInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *GetCloudFrontOriginAccessIdentityInput) SetId(v string) *GetCloudFrontOriginAccessIdentityInput {
- s.Id = &v
- return s
- }
- // The returned result of the corresponding request.
- type GetCloudFrontOriginAccessIdentityOutput struct {
- _ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentity"`
- // The origin access identity's information.
- CloudFrontOriginAccessIdentity *OriginAccessIdentity `type:"structure"`
- // The current version of the origin access identity's information. For example:
- // E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- }
- // String returns the string representation
- func (s GetCloudFrontOriginAccessIdentityOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetCloudFrontOriginAccessIdentityOutput) GoString() string {
- return s.String()
- }
- // SetCloudFrontOriginAccessIdentity sets the CloudFrontOriginAccessIdentity field's value.
- func (s *GetCloudFrontOriginAccessIdentityOutput) SetCloudFrontOriginAccessIdentity(v *OriginAccessIdentity) *GetCloudFrontOriginAccessIdentityOutput {
- s.CloudFrontOriginAccessIdentity = v
- return s
- }
- // SetETag sets the ETag field's value.
- func (s *GetCloudFrontOriginAccessIdentityOutput) SetETag(v string) *GetCloudFrontOriginAccessIdentityOutput {
- s.ETag = &v
- return s
- }
- // The request to get a distribution configuration.
- type GetDistributionConfigInput struct {
- _ struct{} `type:"structure"`
- // The distribution's ID.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s GetDistributionConfigInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetDistributionConfigInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *GetDistributionConfigInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "GetDistributionConfigInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *GetDistributionConfigInput) SetId(v string) *GetDistributionConfigInput {
- s.Id = &v
- return s
- }
- // The returned result of the corresponding request.
- type GetDistributionConfigOutput struct {
- _ struct{} `type:"structure" payload:"DistributionConfig"`
- // The distribution's configuration information.
- DistributionConfig *DistributionConfig `type:"structure"`
- // The current version of the configuration. For example: E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- }
- // String returns the string representation
- func (s GetDistributionConfigOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetDistributionConfigOutput) GoString() string {
- return s.String()
- }
- // SetDistributionConfig sets the DistributionConfig field's value.
- func (s *GetDistributionConfigOutput) SetDistributionConfig(v *DistributionConfig) *GetDistributionConfigOutput {
- s.DistributionConfig = v
- return s
- }
- // SetETag sets the ETag field's value.
- func (s *GetDistributionConfigOutput) SetETag(v string) *GetDistributionConfigOutput {
- s.ETag = &v
- return s
- }
- // The request to get a distribution's information.
- type GetDistributionInput struct {
- _ struct{} `type:"structure"`
- // The distribution's ID.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s GetDistributionInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetDistributionInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *GetDistributionInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "GetDistributionInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *GetDistributionInput) SetId(v string) *GetDistributionInput {
- s.Id = &v
- return s
- }
- // The returned result of the corresponding request.
- type GetDistributionOutput struct {
- _ struct{} `type:"structure" payload:"Distribution"`
- // The distribution's information.
- Distribution *Distribution `type:"structure"`
- // The current version of the distribution's information. For example: E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- }
- // String returns the string representation
- func (s GetDistributionOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetDistributionOutput) GoString() string {
- return s.String()
- }
- // SetDistribution sets the Distribution field's value.
- func (s *GetDistributionOutput) SetDistribution(v *Distribution) *GetDistributionOutput {
- s.Distribution = v
- return s
- }
- // SetETag sets the ETag field's value.
- func (s *GetDistributionOutput) SetETag(v string) *GetDistributionOutput {
- s.ETag = &v
- return s
- }
- type GetFieldLevelEncryptionConfigInput struct {
- _ struct{} `type:"structure"`
- // Request the ID for the field-level encryption configuration information.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s GetFieldLevelEncryptionConfigInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetFieldLevelEncryptionConfigInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *GetFieldLevelEncryptionConfigInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "GetFieldLevelEncryptionConfigInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *GetFieldLevelEncryptionConfigInput) SetId(v string) *GetFieldLevelEncryptionConfigInput {
- s.Id = &v
- return s
- }
- type GetFieldLevelEncryptionConfigOutput struct {
- _ struct{} `type:"structure" payload:"FieldLevelEncryptionConfig"`
- // The current version of the field level encryption configuration. For example:
- // E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // Return the field-level encryption configuration information.
- FieldLevelEncryptionConfig *FieldLevelEncryptionConfig `type:"structure"`
- }
- // String returns the string representation
- func (s GetFieldLevelEncryptionConfigOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetFieldLevelEncryptionConfigOutput) GoString() string {
- return s.String()
- }
- // SetETag sets the ETag field's value.
- func (s *GetFieldLevelEncryptionConfigOutput) SetETag(v string) *GetFieldLevelEncryptionConfigOutput {
- s.ETag = &v
- return s
- }
- // SetFieldLevelEncryptionConfig sets the FieldLevelEncryptionConfig field's value.
- func (s *GetFieldLevelEncryptionConfigOutput) SetFieldLevelEncryptionConfig(v *FieldLevelEncryptionConfig) *GetFieldLevelEncryptionConfigOutput {
- s.FieldLevelEncryptionConfig = v
- return s
- }
- type GetFieldLevelEncryptionInput struct {
- _ struct{} `type:"structure"`
- // Request the ID for the field-level encryption configuration information.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s GetFieldLevelEncryptionInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetFieldLevelEncryptionInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *GetFieldLevelEncryptionInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "GetFieldLevelEncryptionInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *GetFieldLevelEncryptionInput) SetId(v string) *GetFieldLevelEncryptionInput {
- s.Id = &v
- return s
- }
- type GetFieldLevelEncryptionOutput struct {
- _ struct{} `type:"structure" payload:"FieldLevelEncryption"`
- // The current version of the field level encryption configuration. For example:
- // E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // Return the field-level encryption configuration information.
- FieldLevelEncryption *FieldLevelEncryption `type:"structure"`
- }
- // String returns the string representation
- func (s GetFieldLevelEncryptionOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetFieldLevelEncryptionOutput) GoString() string {
- return s.String()
- }
- // SetETag sets the ETag field's value.
- func (s *GetFieldLevelEncryptionOutput) SetETag(v string) *GetFieldLevelEncryptionOutput {
- s.ETag = &v
- return s
- }
- // SetFieldLevelEncryption sets the FieldLevelEncryption field's value.
- func (s *GetFieldLevelEncryptionOutput) SetFieldLevelEncryption(v *FieldLevelEncryption) *GetFieldLevelEncryptionOutput {
- s.FieldLevelEncryption = v
- return s
- }
- type GetFieldLevelEncryptionProfileConfigInput struct {
- _ struct{} `type:"structure"`
- // Get the ID for the field-level encryption profile configuration information.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s GetFieldLevelEncryptionProfileConfigInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetFieldLevelEncryptionProfileConfigInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *GetFieldLevelEncryptionProfileConfigInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "GetFieldLevelEncryptionProfileConfigInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *GetFieldLevelEncryptionProfileConfigInput) SetId(v string) *GetFieldLevelEncryptionProfileConfigInput {
- s.Id = &v
- return s
- }
- type GetFieldLevelEncryptionProfileConfigOutput struct {
- _ struct{} `type:"structure" payload:"FieldLevelEncryptionProfileConfig"`
- // The current version of the field-level encryption profile configuration result.
- // For example: E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // Return the field-level encryption profile configuration information.
- FieldLevelEncryptionProfileConfig *FieldLevelEncryptionProfileConfig `type:"structure"`
- }
- // String returns the string representation
- func (s GetFieldLevelEncryptionProfileConfigOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetFieldLevelEncryptionProfileConfigOutput) GoString() string {
- return s.String()
- }
- // SetETag sets the ETag field's value.
- func (s *GetFieldLevelEncryptionProfileConfigOutput) SetETag(v string) *GetFieldLevelEncryptionProfileConfigOutput {
- s.ETag = &v
- return s
- }
- // SetFieldLevelEncryptionProfileConfig sets the FieldLevelEncryptionProfileConfig field's value.
- func (s *GetFieldLevelEncryptionProfileConfigOutput) SetFieldLevelEncryptionProfileConfig(v *FieldLevelEncryptionProfileConfig) *GetFieldLevelEncryptionProfileConfigOutput {
- s.FieldLevelEncryptionProfileConfig = v
- return s
- }
- type GetFieldLevelEncryptionProfileInput struct {
- _ struct{} `type:"structure"`
- // Get the ID for the field-level encryption profile information.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s GetFieldLevelEncryptionProfileInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetFieldLevelEncryptionProfileInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *GetFieldLevelEncryptionProfileInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "GetFieldLevelEncryptionProfileInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *GetFieldLevelEncryptionProfileInput) SetId(v string) *GetFieldLevelEncryptionProfileInput {
- s.Id = &v
- return s
- }
- type GetFieldLevelEncryptionProfileOutput struct {
- _ struct{} `type:"structure" payload:"FieldLevelEncryptionProfile"`
- // The current version of the field level encryption profile. For example: E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // Return the field-level encryption profile information.
- FieldLevelEncryptionProfile *FieldLevelEncryptionProfile `type:"structure"`
- }
- // String returns the string representation
- func (s GetFieldLevelEncryptionProfileOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetFieldLevelEncryptionProfileOutput) GoString() string {
- return s.String()
- }
- // SetETag sets the ETag field's value.
- func (s *GetFieldLevelEncryptionProfileOutput) SetETag(v string) *GetFieldLevelEncryptionProfileOutput {
- s.ETag = &v
- return s
- }
- // SetFieldLevelEncryptionProfile sets the FieldLevelEncryptionProfile field's value.
- func (s *GetFieldLevelEncryptionProfileOutput) SetFieldLevelEncryptionProfile(v *FieldLevelEncryptionProfile) *GetFieldLevelEncryptionProfileOutput {
- s.FieldLevelEncryptionProfile = v
- return s
- }
- // The request to get an invalidation's information.
- type GetInvalidationInput struct {
- _ struct{} `type:"structure"`
- // The distribution's ID.
- //
- // DistributionId is a required field
- DistributionId *string `location:"uri" locationName:"DistributionId" type:"string" required:"true"`
- // The identifier for the invalidation request, for example, IDFDVBD632BHDS5.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s GetInvalidationInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetInvalidationInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *GetInvalidationInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "GetInvalidationInput"}
- if s.DistributionId == nil {
- invalidParams.Add(request.NewErrParamRequired("DistributionId"))
- }
- if s.DistributionId != nil && len(*s.DistributionId) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("DistributionId", 1))
- }
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetDistributionId sets the DistributionId field's value.
- func (s *GetInvalidationInput) SetDistributionId(v string) *GetInvalidationInput {
- s.DistributionId = &v
- return s
- }
- // SetId sets the Id field's value.
- func (s *GetInvalidationInput) SetId(v string) *GetInvalidationInput {
- s.Id = &v
- return s
- }
- // The returned result of the corresponding request.
- type GetInvalidationOutput struct {
- _ struct{} `type:"structure" payload:"Invalidation"`
- // The invalidation's information. For more information, see Invalidation Complex
- // Type (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/InvalidationDatatype.html).
- Invalidation *Invalidation `type:"structure"`
- }
- // String returns the string representation
- func (s GetInvalidationOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetInvalidationOutput) GoString() string {
- return s.String()
- }
- // SetInvalidation sets the Invalidation field's value.
- func (s *GetInvalidationOutput) SetInvalidation(v *Invalidation) *GetInvalidationOutput {
- s.Invalidation = v
- return s
- }
- type GetPublicKeyConfigInput struct {
- _ struct{} `type:"structure"`
- // Request the ID for the public key configuration.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s GetPublicKeyConfigInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetPublicKeyConfigInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *GetPublicKeyConfigInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "GetPublicKeyConfigInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *GetPublicKeyConfigInput) SetId(v string) *GetPublicKeyConfigInput {
- s.Id = &v
- return s
- }
- type GetPublicKeyConfigOutput struct {
- _ struct{} `type:"structure" payload:"PublicKeyConfig"`
- // The current version of the public key configuration. For example: E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // Return the result for the public key configuration.
- PublicKeyConfig *PublicKeyConfig `type:"structure"`
- }
- // String returns the string representation
- func (s GetPublicKeyConfigOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetPublicKeyConfigOutput) GoString() string {
- return s.String()
- }
- // SetETag sets the ETag field's value.
- func (s *GetPublicKeyConfigOutput) SetETag(v string) *GetPublicKeyConfigOutput {
- s.ETag = &v
- return s
- }
- // SetPublicKeyConfig sets the PublicKeyConfig field's value.
- func (s *GetPublicKeyConfigOutput) SetPublicKeyConfig(v *PublicKeyConfig) *GetPublicKeyConfigOutput {
- s.PublicKeyConfig = v
- return s
- }
- type GetPublicKeyInput struct {
- _ struct{} `type:"structure"`
- // Request the ID for the public key.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s GetPublicKeyInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetPublicKeyInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *GetPublicKeyInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "GetPublicKeyInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *GetPublicKeyInput) SetId(v string) *GetPublicKeyInput {
- s.Id = &v
- return s
- }
- type GetPublicKeyOutput struct {
- _ struct{} `type:"structure" payload:"PublicKey"`
- // The current version of the public key. For example: E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // Return the public key.
- PublicKey *PublicKey `type:"structure"`
- }
- // String returns the string representation
- func (s GetPublicKeyOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetPublicKeyOutput) GoString() string {
- return s.String()
- }
- // SetETag sets the ETag field's value.
- func (s *GetPublicKeyOutput) SetETag(v string) *GetPublicKeyOutput {
- s.ETag = &v
- return s
- }
- // SetPublicKey sets the PublicKey field's value.
- func (s *GetPublicKeyOutput) SetPublicKey(v *PublicKey) *GetPublicKeyOutput {
- s.PublicKey = v
- return s
- }
- // To request to get a streaming distribution configuration.
- type GetStreamingDistributionConfigInput struct {
- _ struct{} `type:"structure"`
- // The streaming distribution's ID.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s GetStreamingDistributionConfigInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetStreamingDistributionConfigInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *GetStreamingDistributionConfigInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "GetStreamingDistributionConfigInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *GetStreamingDistributionConfigInput) SetId(v string) *GetStreamingDistributionConfigInput {
- s.Id = &v
- return s
- }
- // The returned result of the corresponding request.
- type GetStreamingDistributionConfigOutput struct {
- _ struct{} `type:"structure" payload:"StreamingDistributionConfig"`
- // The current version of the configuration. For example: E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // The streaming distribution's configuration information.
- StreamingDistributionConfig *StreamingDistributionConfig `type:"structure"`
- }
- // String returns the string representation
- func (s GetStreamingDistributionConfigOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetStreamingDistributionConfigOutput) GoString() string {
- return s.String()
- }
- // SetETag sets the ETag field's value.
- func (s *GetStreamingDistributionConfigOutput) SetETag(v string) *GetStreamingDistributionConfigOutput {
- s.ETag = &v
- return s
- }
- // SetStreamingDistributionConfig sets the StreamingDistributionConfig field's value.
- func (s *GetStreamingDistributionConfigOutput) SetStreamingDistributionConfig(v *StreamingDistributionConfig) *GetStreamingDistributionConfigOutput {
- s.StreamingDistributionConfig = v
- return s
- }
- // The request to get a streaming distribution's information.
- type GetStreamingDistributionInput struct {
- _ struct{} `type:"structure"`
- // The streaming distribution's ID.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s GetStreamingDistributionInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetStreamingDistributionInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *GetStreamingDistributionInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "GetStreamingDistributionInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *GetStreamingDistributionInput) SetId(v string) *GetStreamingDistributionInput {
- s.Id = &v
- return s
- }
- // The returned result of the corresponding request.
- type GetStreamingDistributionOutput struct {
- _ struct{} `type:"structure" payload:"StreamingDistribution"`
- // The current version of the streaming distribution's information. For example:
- // E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // The streaming distribution's information.
- StreamingDistribution *StreamingDistribution `type:"structure"`
- }
- // String returns the string representation
- func (s GetStreamingDistributionOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s GetStreamingDistributionOutput) GoString() string {
- return s.String()
- }
- // SetETag sets the ETag field's value.
- func (s *GetStreamingDistributionOutput) SetETag(v string) *GetStreamingDistributionOutput {
- s.ETag = &v
- return s
- }
- // SetStreamingDistribution sets the StreamingDistribution field's value.
- func (s *GetStreamingDistributionOutput) SetStreamingDistribution(v *StreamingDistribution) *GetStreamingDistributionOutput {
- s.StreamingDistribution = v
- return s
- }
- // A complex type that specifies the request headers, if any, that you want
- // CloudFront to base caching on for this cache behavior.
- //
- // For the headers that you specify, CloudFront caches separate versions of
- // a specified object based on the header values in viewer requests. For example,
- // suppose viewer requests for logo.jpg contain a custom product header that
- // has a value of either acme or apex, and you configure CloudFront to cache
- // your content based on values in the product header. CloudFront forwards the
- // product header to the origin and caches the response from the origin once
- // for each header value. For more information about caching based on header
- // values, see How CloudFront Forwards and Caches Headers (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/header-caching.html)
- // in the Amazon CloudFront Developer Guide.
- type Headers struct {
- _ struct{} `type:"structure"`
- // A list that contains one Name element for each header that you want CloudFront
- // to use for caching in this cache behavior. If Quantity is 0, omit Items.
- Items []*string `locationNameList:"Name" type:"list"`
- // The number of different headers that you want CloudFront to base caching
- // on for this cache behavior. You can configure each cache behavior in a web
- // distribution to do one of the following:
- //
- // * Forward all headers to your origin: Specify 1 for Quantity and * for
- // Name.
- //
- // CloudFront doesn't cache the objects that are associated with this cache
- // behavior. Instead, CloudFront sends every request to the origin.
- //
- // * Forward a whitelist of headers you specify: Specify the number of headers
- // that you want CloudFront to base caching on. Then specify the header names
- // in Name elements. CloudFront caches your objects based on the values in
- // the specified headers.
- //
- // * Forward only the default headers: Specify 0 for Quantity and omit Items.
- // In this configuration, CloudFront doesn't cache based on the values in
- // the request headers.
- //
- // Regardless of which option you choose, CloudFront forwards headers to your
- // origin based on whether the origin is an S3 bucket or a custom origin. See
- // the following documentation:
- //
- // * S3 bucket: See HTTP Request Headers That CloudFront Removes or Updates
- // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/RequestAndResponseBehaviorS3Origin.html#request-s3-removed-headers)
- //
- // * Custom origin: See HTTP Request Headers and CloudFront Behavior (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/RequestAndResponseBehaviorCustomOrigin.html#request-custom-headers-behavior)
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s Headers) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Headers) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *Headers) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "Headers"}
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *Headers) SetItems(v []*string) *Headers {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *Headers) SetQuantity(v int64) *Headers {
- s.Quantity = &v
- return s
- }
- // An invalidation.
- type Invalidation struct {
- _ struct{} `type:"structure"`
- // The date and time the invalidation request was first made.
- //
- // CreateTime is a required field
- CreateTime *time.Time `type:"timestamp" required:"true"`
- // The identifier for the invalidation request. For example: IDFDVBD632BHDS5.
- //
- // Id is a required field
- Id *string `type:"string" required:"true"`
- // The current invalidation information for the batch request.
- //
- // InvalidationBatch is a required field
- InvalidationBatch *InvalidationBatch `type:"structure" required:"true"`
- // The status of the invalidation request. When the invalidation batch is finished,
- // the status is Completed.
- //
- // Status is a required field
- Status *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s Invalidation) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Invalidation) GoString() string {
- return s.String()
- }
- // SetCreateTime sets the CreateTime field's value.
- func (s *Invalidation) SetCreateTime(v time.Time) *Invalidation {
- s.CreateTime = &v
- return s
- }
- // SetId sets the Id field's value.
- func (s *Invalidation) SetId(v string) *Invalidation {
- s.Id = &v
- return s
- }
- // SetInvalidationBatch sets the InvalidationBatch field's value.
- func (s *Invalidation) SetInvalidationBatch(v *InvalidationBatch) *Invalidation {
- s.InvalidationBatch = v
- return s
- }
- // SetStatus sets the Status field's value.
- func (s *Invalidation) SetStatus(v string) *Invalidation {
- s.Status = &v
- return s
- }
- // An invalidation batch.
- type InvalidationBatch struct {
- _ struct{} `type:"structure"`
- // A value that you specify to uniquely identify an invalidation request. CloudFront
- // uses the value to prevent you from accidentally resubmitting an identical
- // request. Whenever you create a new invalidation request, you must specify
- // a new value for CallerReference and change other values in the request as
- // applicable. One way to ensure that the value of CallerReference is unique
- // is to use a timestamp, for example, 20120301090000.
- //
- // If you make a second invalidation request with the same value for CallerReference,
- // and if the rest of the request is the same, CloudFront doesn't create a new
- // invalidation request. Instead, CloudFront returns information about the invalidation
- // request that you previously created with the same CallerReference.
- //
- // If CallerReference is a value you already sent in a previous invalidation
- // batch request but the content of any Path is different from the original
- // request, CloudFront returns an InvalidationBatchAlreadyExists error.
- //
- // CallerReference is a required field
- CallerReference *string `type:"string" required:"true"`
- // A complex type that contains information about the objects that you want
- // to invalidate. For more information, see Specifying the Objects to Invalidate
- // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Invalidation.html#invalidation-specifying-objects)
- // in the Amazon CloudFront Developer Guide.
- //
- // Paths is a required field
- Paths *Paths `type:"structure" required:"true"`
- }
- // String returns the string representation
- func (s InvalidationBatch) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s InvalidationBatch) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *InvalidationBatch) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "InvalidationBatch"}
- if s.CallerReference == nil {
- invalidParams.Add(request.NewErrParamRequired("CallerReference"))
- }
- if s.Paths == nil {
- invalidParams.Add(request.NewErrParamRequired("Paths"))
- }
- if s.Paths != nil {
- if err := s.Paths.Validate(); err != nil {
- invalidParams.AddNested("Paths", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetCallerReference sets the CallerReference field's value.
- func (s *InvalidationBatch) SetCallerReference(v string) *InvalidationBatch {
- s.CallerReference = &v
- return s
- }
- // SetPaths sets the Paths field's value.
- func (s *InvalidationBatch) SetPaths(v *Paths) *InvalidationBatch {
- s.Paths = v
- return s
- }
- // The InvalidationList complex type describes the list of invalidation objects.
- // For more information about invalidation, see Invalidating Objects (Web Distributions
- // Only) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Invalidation.html)
- // in the Amazon CloudFront Developer Guide.
- type InvalidationList struct {
- _ struct{} `type:"structure"`
- // A flag that indicates whether more invalidation batch requests remain to
- // be listed. If your results were truncated, you can make a follow-up pagination
- // request using the Marker request parameter to retrieve more invalidation
- // batches in the list.
- //
- // IsTruncated is a required field
- IsTruncated *bool `type:"boolean" required:"true"`
- // A complex type that contains one InvalidationSummary element for each invalidation
- // batch created by the current AWS account.
- Items []*InvalidationSummary `locationNameList:"InvalidationSummary" type:"list"`
- // The value that you provided for the Marker request parameter.
- //
- // Marker is a required field
- Marker *string `type:"string" required:"true"`
- // The value that you provided for the MaxItems request parameter.
- //
- // MaxItems is a required field
- MaxItems *int64 `type:"integer" required:"true"`
- // If IsTruncated is true, this element is present and contains the value that
- // you can use for the Marker request parameter to continue listing your invalidation
- // batches where they left off.
- NextMarker *string `type:"string"`
- // The number of invalidation batches that were created by the current AWS account.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s InvalidationList) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s InvalidationList) GoString() string {
- return s.String()
- }
- // SetIsTruncated sets the IsTruncated field's value.
- func (s *InvalidationList) SetIsTruncated(v bool) *InvalidationList {
- s.IsTruncated = &v
- return s
- }
- // SetItems sets the Items field's value.
- func (s *InvalidationList) SetItems(v []*InvalidationSummary) *InvalidationList {
- s.Items = v
- return s
- }
- // SetMarker sets the Marker field's value.
- func (s *InvalidationList) SetMarker(v string) *InvalidationList {
- s.Marker = &v
- return s
- }
- // SetMaxItems sets the MaxItems field's value.
- func (s *InvalidationList) SetMaxItems(v int64) *InvalidationList {
- s.MaxItems = &v
- return s
- }
- // SetNextMarker sets the NextMarker field's value.
- func (s *InvalidationList) SetNextMarker(v string) *InvalidationList {
- s.NextMarker = &v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *InvalidationList) SetQuantity(v int64) *InvalidationList {
- s.Quantity = &v
- return s
- }
- // A summary of an invalidation request.
- type InvalidationSummary struct {
- _ struct{} `type:"structure"`
- // The time that an invalidation request was created.
- //
- // CreateTime is a required field
- CreateTime *time.Time `type:"timestamp" required:"true"`
- // The unique ID for an invalidation request.
- //
- // Id is a required field
- Id *string `type:"string" required:"true"`
- // The status of an invalidation request.
- //
- // Status is a required field
- Status *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s InvalidationSummary) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s InvalidationSummary) GoString() string {
- return s.String()
- }
- // SetCreateTime sets the CreateTime field's value.
- func (s *InvalidationSummary) SetCreateTime(v time.Time) *InvalidationSummary {
- s.CreateTime = &v
- return s
- }
- // SetId sets the Id field's value.
- func (s *InvalidationSummary) SetId(v string) *InvalidationSummary {
- s.Id = &v
- return s
- }
- // SetStatus sets the Status field's value.
- func (s *InvalidationSummary) SetStatus(v string) *InvalidationSummary {
- s.Status = &v
- return s
- }
- // A complex type that lists the active CloudFront key pairs, if any, that are
- // associated with AwsAccountNumber.
- //
- // For more information, see ActiveTrustedSigners.
- type KeyPairIds struct {
- _ struct{} `type:"structure"`
- // A complex type that lists the active CloudFront key pairs, if any, that are
- // associated with AwsAccountNumber.
- //
- // For more information, see ActiveTrustedSigners.
- Items []*string `locationNameList:"KeyPairId" type:"list"`
- // The number of active CloudFront key pairs for AwsAccountNumber.
- //
- // For more information, see ActiveTrustedSigners.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s KeyPairIds) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s KeyPairIds) GoString() string {
- return s.String()
- }
- // SetItems sets the Items field's value.
- func (s *KeyPairIds) SetItems(v []*string) *KeyPairIds {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *KeyPairIds) SetQuantity(v int64) *KeyPairIds {
- s.Quantity = &v
- return s
- }
- // A complex type that contains a Lambda function association.
- type LambdaFunctionAssociation struct {
- _ struct{} `type:"structure"`
- // Specifies the event type that triggers a Lambda function invocation. You
- // can specify the following values:
- //
- // * viewer-request: The function executes when CloudFront receives a request
- // from a viewer and before it checks to see whether the requested object
- // is in the edge cache.
- //
- // * origin-request: The function executes only when CloudFront forwards
- // a request to your origin. When the requested object is in the edge cache,
- // the function doesn't execute.
- //
- // * origin-response: The function executes after CloudFront receives a response
- // from the origin and before it caches the object in the response. When
- // the requested object is in the edge cache, the function doesn't execute.
- //
- // * viewer-response: The function executes before CloudFront returns the
- // requested object to the viewer. The function executes regardless of whether
- // the object was already in the edge cache.
- //
- // If the origin returns an HTTP status code other than HTTP 200 (OK), the function
- // doesn't execute.
- //
- // EventType is a required field
- EventType *string `type:"string" required:"true" enum:"EventType"`
- // A flag that allows a Lambda function to have read access to the body content.
- // For more information, see Accessing the Request Body by Choosing the Include
- // Body Option (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/lambda-include-body-access.html)
- // in the Amazon CloudFront Developer Guide.
- IncludeBody *bool `type:"boolean"`
- // The ARN of the Lambda function. You must specify the ARN of a function version;
- // you can't specify a Lambda alias or $LATEST.
- //
- // LambdaFunctionARN is a required field
- LambdaFunctionARN *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s LambdaFunctionAssociation) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s LambdaFunctionAssociation) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *LambdaFunctionAssociation) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "LambdaFunctionAssociation"}
- if s.EventType == nil {
- invalidParams.Add(request.NewErrParamRequired("EventType"))
- }
- if s.LambdaFunctionARN == nil {
- invalidParams.Add(request.NewErrParamRequired("LambdaFunctionARN"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetEventType sets the EventType field's value.
- func (s *LambdaFunctionAssociation) SetEventType(v string) *LambdaFunctionAssociation {
- s.EventType = &v
- return s
- }
- // SetIncludeBody sets the IncludeBody field's value.
- func (s *LambdaFunctionAssociation) SetIncludeBody(v bool) *LambdaFunctionAssociation {
- s.IncludeBody = &v
- return s
- }
- // SetLambdaFunctionARN sets the LambdaFunctionARN field's value.
- func (s *LambdaFunctionAssociation) SetLambdaFunctionARN(v string) *LambdaFunctionAssociation {
- s.LambdaFunctionARN = &v
- return s
- }
- // A complex type that specifies a list of Lambda functions associations for
- // a cache behavior.
- //
- // If you want to invoke one or more Lambda functions triggered by requests
- // that match the PathPattern of the cache behavior, specify the applicable
- // values for Quantity and Items. Note that there can be up to 4 LambdaFunctionAssociation
- // items in this list (one for each possible value of EventType) and each EventType
- // can be associated with the Lambda function only once.
- //
- // If you don't want to invoke any Lambda functions for the requests that match
- // PathPattern, specify 0 for Quantity and omit Items.
- type LambdaFunctionAssociations struct {
- _ struct{} `type:"structure"`
- // Optional: A complex type that contains LambdaFunctionAssociation items for
- // this cache behavior. If Quantity is 0, you can omit Items.
- Items []*LambdaFunctionAssociation `locationNameList:"LambdaFunctionAssociation" type:"list"`
- // The number of Lambda function associations for this cache behavior.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s LambdaFunctionAssociations) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s LambdaFunctionAssociations) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *LambdaFunctionAssociations) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "LambdaFunctionAssociations"}
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if s.Items != nil {
- for i, v := range s.Items {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *LambdaFunctionAssociations) SetItems(v []*LambdaFunctionAssociation) *LambdaFunctionAssociations {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *LambdaFunctionAssociations) SetQuantity(v int64) *LambdaFunctionAssociations {
- s.Quantity = &v
- return s
- }
- // The request to list origin access identities.
- type ListCloudFrontOriginAccessIdentitiesInput struct {
- _ struct{} `type:"structure"`
- // Use this when paginating results to indicate where to begin in your list
- // of origin access identities. The results include identities in the list that
- // occur after the marker. To get the next page of results, set the Marker to
- // the value of the NextMarker from the current page's response (which is also
- // the ID of the last identity on that page).
- Marker *string `location:"querystring" locationName:"Marker" type:"string"`
- // The maximum number of origin access identities you want in the response body.
- MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
- }
- // String returns the string representation
- func (s ListCloudFrontOriginAccessIdentitiesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListCloudFrontOriginAccessIdentitiesInput) GoString() string {
- return s.String()
- }
- // SetMarker sets the Marker field's value.
- func (s *ListCloudFrontOriginAccessIdentitiesInput) SetMarker(v string) *ListCloudFrontOriginAccessIdentitiesInput {
- s.Marker = &v
- return s
- }
- // SetMaxItems sets the MaxItems field's value.
- func (s *ListCloudFrontOriginAccessIdentitiesInput) SetMaxItems(v int64) *ListCloudFrontOriginAccessIdentitiesInput {
- s.MaxItems = &v
- return s
- }
- // The returned result of the corresponding request.
- type ListCloudFrontOriginAccessIdentitiesOutput struct {
- _ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentityList"`
- // The CloudFrontOriginAccessIdentityList type.
- CloudFrontOriginAccessIdentityList *OriginAccessIdentityList `type:"structure"`
- }
- // String returns the string representation
- func (s ListCloudFrontOriginAccessIdentitiesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListCloudFrontOriginAccessIdentitiesOutput) GoString() string {
- return s.String()
- }
- // SetCloudFrontOriginAccessIdentityList sets the CloudFrontOriginAccessIdentityList field's value.
- func (s *ListCloudFrontOriginAccessIdentitiesOutput) SetCloudFrontOriginAccessIdentityList(v *OriginAccessIdentityList) *ListCloudFrontOriginAccessIdentitiesOutput {
- s.CloudFrontOriginAccessIdentityList = v
- return s
- }
- // The request to list distributions that are associated with a specified AWS
- // WAF web ACL.
- type ListDistributionsByWebACLIdInput struct {
- _ struct{} `type:"structure"`
- // Use Marker and MaxItems to control pagination of results. If you have more
- // than MaxItems distributions that satisfy the request, the response includes
- // a NextMarker element. To get the next page of results, submit another request.
- // For the value of Marker, specify the value of NextMarker from the last response.
- // (For the first request, omit Marker.)
- Marker *string `location:"querystring" locationName:"Marker" type:"string"`
- // The maximum number of distributions that you want CloudFront to return in
- // the response body. The maximum and default values are both 100.
- MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
- // The ID of the AWS WAF web ACL that you want to list the associated distributions.
- // If you specify "null" for the ID, the request returns a list of the distributions
- // that aren't associated with a web ACL.
- //
- // WebACLId is a required field
- WebACLId *string `location:"uri" locationName:"WebACLId" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s ListDistributionsByWebACLIdInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListDistributionsByWebACLIdInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ListDistributionsByWebACLIdInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ListDistributionsByWebACLIdInput"}
- if s.WebACLId == nil {
- invalidParams.Add(request.NewErrParamRequired("WebACLId"))
- }
- if s.WebACLId != nil && len(*s.WebACLId) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("WebACLId", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetMarker sets the Marker field's value.
- func (s *ListDistributionsByWebACLIdInput) SetMarker(v string) *ListDistributionsByWebACLIdInput {
- s.Marker = &v
- return s
- }
- // SetMaxItems sets the MaxItems field's value.
- func (s *ListDistributionsByWebACLIdInput) SetMaxItems(v int64) *ListDistributionsByWebACLIdInput {
- s.MaxItems = &v
- return s
- }
- // SetWebACLId sets the WebACLId field's value.
- func (s *ListDistributionsByWebACLIdInput) SetWebACLId(v string) *ListDistributionsByWebACLIdInput {
- s.WebACLId = &v
- return s
- }
- // The response to a request to list the distributions that are associated with
- // a specified AWS WAF web ACL.
- type ListDistributionsByWebACLIdOutput struct {
- _ struct{} `type:"structure" payload:"DistributionList"`
- // The DistributionList type.
- DistributionList *DistributionList `type:"structure"`
- }
- // String returns the string representation
- func (s ListDistributionsByWebACLIdOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListDistributionsByWebACLIdOutput) GoString() string {
- return s.String()
- }
- // SetDistributionList sets the DistributionList field's value.
- func (s *ListDistributionsByWebACLIdOutput) SetDistributionList(v *DistributionList) *ListDistributionsByWebACLIdOutput {
- s.DistributionList = v
- return s
- }
- // The request to list your distributions.
- type ListDistributionsInput struct {
- _ struct{} `type:"structure"`
- // Use this when paginating results to indicate where to begin in your list
- // of distributions. The results include distributions in the list that occur
- // after the marker. To get the next page of results, set the Marker to the
- // value of the NextMarker from the current page's response (which is also the
- // ID of the last distribution on that page).
- Marker *string `location:"querystring" locationName:"Marker" type:"string"`
- // The maximum number of distributions you want in the response body.
- MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
- }
- // String returns the string representation
- func (s ListDistributionsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListDistributionsInput) GoString() string {
- return s.String()
- }
- // SetMarker sets the Marker field's value.
- func (s *ListDistributionsInput) SetMarker(v string) *ListDistributionsInput {
- s.Marker = &v
- return s
- }
- // SetMaxItems sets the MaxItems field's value.
- func (s *ListDistributionsInput) SetMaxItems(v int64) *ListDistributionsInput {
- s.MaxItems = &v
- return s
- }
- // The returned result of the corresponding request.
- type ListDistributionsOutput struct {
- _ struct{} `type:"structure" payload:"DistributionList"`
- // The DistributionList type.
- DistributionList *DistributionList `type:"structure"`
- }
- // String returns the string representation
- func (s ListDistributionsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListDistributionsOutput) GoString() string {
- return s.String()
- }
- // SetDistributionList sets the DistributionList field's value.
- func (s *ListDistributionsOutput) SetDistributionList(v *DistributionList) *ListDistributionsOutput {
- s.DistributionList = v
- return s
- }
- type ListFieldLevelEncryptionConfigsInput struct {
- _ struct{} `type:"structure"`
- // Use this when paginating results to indicate where to begin in your list
- // of configurations. The results include configurations in the list that occur
- // after the marker. To get the next page of results, set the Marker to the
- // value of the NextMarker from the current page's response (which is also the
- // ID of the last configuration on that page).
- Marker *string `location:"querystring" locationName:"Marker" type:"string"`
- // The maximum number of field-level encryption configurations you want in the
- // response body.
- MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
- }
- // String returns the string representation
- func (s ListFieldLevelEncryptionConfigsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListFieldLevelEncryptionConfigsInput) GoString() string {
- return s.String()
- }
- // SetMarker sets the Marker field's value.
- func (s *ListFieldLevelEncryptionConfigsInput) SetMarker(v string) *ListFieldLevelEncryptionConfigsInput {
- s.Marker = &v
- return s
- }
- // SetMaxItems sets the MaxItems field's value.
- func (s *ListFieldLevelEncryptionConfigsInput) SetMaxItems(v int64) *ListFieldLevelEncryptionConfigsInput {
- s.MaxItems = &v
- return s
- }
- type ListFieldLevelEncryptionConfigsOutput struct {
- _ struct{} `type:"structure" payload:"FieldLevelEncryptionList"`
- // Returns a list of all field-level encryption configurations that have been
- // created in CloudFront for this account.
- FieldLevelEncryptionList *FieldLevelEncryptionList `type:"structure"`
- }
- // String returns the string representation
- func (s ListFieldLevelEncryptionConfigsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListFieldLevelEncryptionConfigsOutput) GoString() string {
- return s.String()
- }
- // SetFieldLevelEncryptionList sets the FieldLevelEncryptionList field's value.
- func (s *ListFieldLevelEncryptionConfigsOutput) SetFieldLevelEncryptionList(v *FieldLevelEncryptionList) *ListFieldLevelEncryptionConfigsOutput {
- s.FieldLevelEncryptionList = v
- return s
- }
- type ListFieldLevelEncryptionProfilesInput struct {
- _ struct{} `type:"structure"`
- // Use this when paginating results to indicate where to begin in your list
- // of profiles. The results include profiles in the list that occur after the
- // marker. To get the next page of results, set the Marker to the value of the
- // NextMarker from the current page's response (which is also the ID of the
- // last profile on that page).
- Marker *string `location:"querystring" locationName:"Marker" type:"string"`
- // The maximum number of field-level encryption profiles you want in the response
- // body.
- MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
- }
- // String returns the string representation
- func (s ListFieldLevelEncryptionProfilesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListFieldLevelEncryptionProfilesInput) GoString() string {
- return s.String()
- }
- // SetMarker sets the Marker field's value.
- func (s *ListFieldLevelEncryptionProfilesInput) SetMarker(v string) *ListFieldLevelEncryptionProfilesInput {
- s.Marker = &v
- return s
- }
- // SetMaxItems sets the MaxItems field's value.
- func (s *ListFieldLevelEncryptionProfilesInput) SetMaxItems(v int64) *ListFieldLevelEncryptionProfilesInput {
- s.MaxItems = &v
- return s
- }
- type ListFieldLevelEncryptionProfilesOutput struct {
- _ struct{} `type:"structure" payload:"FieldLevelEncryptionProfileList"`
- // Returns a list of the field-level encryption profiles that have been created
- // in CloudFront for this account.
- FieldLevelEncryptionProfileList *FieldLevelEncryptionProfileList `type:"structure"`
- }
- // String returns the string representation
- func (s ListFieldLevelEncryptionProfilesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListFieldLevelEncryptionProfilesOutput) GoString() string {
- return s.String()
- }
- // SetFieldLevelEncryptionProfileList sets the FieldLevelEncryptionProfileList field's value.
- func (s *ListFieldLevelEncryptionProfilesOutput) SetFieldLevelEncryptionProfileList(v *FieldLevelEncryptionProfileList) *ListFieldLevelEncryptionProfilesOutput {
- s.FieldLevelEncryptionProfileList = v
- return s
- }
- // The request to list invalidations.
- type ListInvalidationsInput struct {
- _ struct{} `type:"structure"`
- // The distribution's ID.
- //
- // DistributionId is a required field
- DistributionId *string `location:"uri" locationName:"DistributionId" type:"string" required:"true"`
- // Use this parameter when paginating results to indicate where to begin in
- // your list of invalidation batches. Because the results are returned in decreasing
- // order from most recent to oldest, the most recent results are on the first
- // page, the second page will contain earlier results, and so on. To get the
- // next page of results, set Marker to the value of the NextMarker from the
- // current page's response. This value is the same as the ID of the last invalidation
- // batch on that page.
- Marker *string `location:"querystring" locationName:"Marker" type:"string"`
- // The maximum number of invalidation batches that you want in the response
- // body.
- MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
- }
- // String returns the string representation
- func (s ListInvalidationsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListInvalidationsInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ListInvalidationsInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ListInvalidationsInput"}
- if s.DistributionId == nil {
- invalidParams.Add(request.NewErrParamRequired("DistributionId"))
- }
- if s.DistributionId != nil && len(*s.DistributionId) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("DistributionId", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetDistributionId sets the DistributionId field's value.
- func (s *ListInvalidationsInput) SetDistributionId(v string) *ListInvalidationsInput {
- s.DistributionId = &v
- return s
- }
- // SetMarker sets the Marker field's value.
- func (s *ListInvalidationsInput) SetMarker(v string) *ListInvalidationsInput {
- s.Marker = &v
- return s
- }
- // SetMaxItems sets the MaxItems field's value.
- func (s *ListInvalidationsInput) SetMaxItems(v int64) *ListInvalidationsInput {
- s.MaxItems = &v
- return s
- }
- // The returned result of the corresponding request.
- type ListInvalidationsOutput struct {
- _ struct{} `type:"structure" payload:"InvalidationList"`
- // Information about invalidation batches.
- InvalidationList *InvalidationList `type:"structure"`
- }
- // String returns the string representation
- func (s ListInvalidationsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListInvalidationsOutput) GoString() string {
- return s.String()
- }
- // SetInvalidationList sets the InvalidationList field's value.
- func (s *ListInvalidationsOutput) SetInvalidationList(v *InvalidationList) *ListInvalidationsOutput {
- s.InvalidationList = v
- return s
- }
- type ListPublicKeysInput struct {
- _ struct{} `type:"structure"`
- // Use this when paginating results to indicate where to begin in your list
- // of public keys. The results include public keys in the list that occur after
- // the marker. To get the next page of results, set the Marker to the value
- // of the NextMarker from the current page's response (which is also the ID
- // of the last public key on that page).
- Marker *string `location:"querystring" locationName:"Marker" type:"string"`
- // The maximum number of public keys you want in the response body.
- MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
- }
- // String returns the string representation
- func (s ListPublicKeysInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListPublicKeysInput) GoString() string {
- return s.String()
- }
- // SetMarker sets the Marker field's value.
- func (s *ListPublicKeysInput) SetMarker(v string) *ListPublicKeysInput {
- s.Marker = &v
- return s
- }
- // SetMaxItems sets the MaxItems field's value.
- func (s *ListPublicKeysInput) SetMaxItems(v int64) *ListPublicKeysInput {
- s.MaxItems = &v
- return s
- }
- type ListPublicKeysOutput struct {
- _ struct{} `type:"structure" payload:"PublicKeyList"`
- // Returns a list of all public keys that have been added to CloudFront for
- // this account.
- PublicKeyList *PublicKeyList `type:"structure"`
- }
- // String returns the string representation
- func (s ListPublicKeysOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListPublicKeysOutput) GoString() string {
- return s.String()
- }
- // SetPublicKeyList sets the PublicKeyList field's value.
- func (s *ListPublicKeysOutput) SetPublicKeyList(v *PublicKeyList) *ListPublicKeysOutput {
- s.PublicKeyList = v
- return s
- }
- // The request to list your streaming distributions.
- type ListStreamingDistributionsInput struct {
- _ struct{} `type:"structure"`
- // The value that you provided for the Marker request parameter.
- Marker *string `location:"querystring" locationName:"Marker" type:"string"`
- // The value that you provided for the MaxItems request parameter.
- MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
- }
- // String returns the string representation
- func (s ListStreamingDistributionsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListStreamingDistributionsInput) GoString() string {
- return s.String()
- }
- // SetMarker sets the Marker field's value.
- func (s *ListStreamingDistributionsInput) SetMarker(v string) *ListStreamingDistributionsInput {
- s.Marker = &v
- return s
- }
- // SetMaxItems sets the MaxItems field's value.
- func (s *ListStreamingDistributionsInput) SetMaxItems(v int64) *ListStreamingDistributionsInput {
- s.MaxItems = &v
- return s
- }
- // The returned result of the corresponding request.
- type ListStreamingDistributionsOutput struct {
- _ struct{} `type:"structure" payload:"StreamingDistributionList"`
- // The StreamingDistributionList type.
- StreamingDistributionList *StreamingDistributionList `type:"structure"`
- }
- // String returns the string representation
- func (s ListStreamingDistributionsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListStreamingDistributionsOutput) GoString() string {
- return s.String()
- }
- // SetStreamingDistributionList sets the StreamingDistributionList field's value.
- func (s *ListStreamingDistributionsOutput) SetStreamingDistributionList(v *StreamingDistributionList) *ListStreamingDistributionsOutput {
- s.StreamingDistributionList = v
- return s
- }
- // The request to list tags for a CloudFront resource.
- type ListTagsForResourceInput struct {
- _ struct{} `type:"structure"`
- // An ARN of a CloudFront resource.
- //
- // Resource is a required field
- Resource *string `location:"querystring" locationName:"Resource" type:"string" required:"true"`
- }
- // String returns the string representation
- func (s ListTagsForResourceInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListTagsForResourceInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ListTagsForResourceInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
- if s.Resource == nil {
- invalidParams.Add(request.NewErrParamRequired("Resource"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetResource sets the Resource field's value.
- func (s *ListTagsForResourceInput) SetResource(v string) *ListTagsForResourceInput {
- s.Resource = &v
- return s
- }
- // The returned result of the corresponding request.
- type ListTagsForResourceOutput struct {
- _ struct{} `type:"structure" payload:"Tags"`
- // A complex type that contains zero or more Tag elements.
- //
- // Tags is a required field
- Tags *Tags `type:"structure" required:"true"`
- }
- // String returns the string representation
- func (s ListTagsForResourceOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ListTagsForResourceOutput) GoString() string {
- return s.String()
- }
- // SetTags sets the Tags field's value.
- func (s *ListTagsForResourceOutput) SetTags(v *Tags) *ListTagsForResourceOutput {
- s.Tags = v
- return s
- }
- // A complex type that controls whether access logs are written for the distribution.
- type LoggingConfig struct {
- _ struct{} `type:"structure"`
- // The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.
- //
- // Bucket is a required field
- Bucket *string `type:"string" required:"true"`
- // Specifies whether you want CloudFront to save access logs to an Amazon S3
- // bucket. If you don't want to enable logging when you create a distribution
- // or if you want to disable logging for an existing distribution, specify false
- // for Enabled, and specify empty Bucket and Prefix elements. If you specify
- // false for Enabled but you specify values for Bucket, prefix, and IncludeCookies,
- // the values are automatically deleted.
- //
- // Enabled is a required field
- Enabled *bool `type:"boolean" required:"true"`
- // Specifies whether you want CloudFront to include cookies in access logs,
- // specify true for IncludeCookies. If you choose to include cookies in logs,
- // CloudFront logs all cookies regardless of how you configure the cache behaviors
- // for this distribution. If you don't want to include cookies when you create
- // a distribution or if you want to disable include cookies for an existing
- // distribution, specify false for IncludeCookies.
- //
- // IncludeCookies is a required field
- IncludeCookies *bool `type:"boolean" required:"true"`
- // An optional string that you want CloudFront to prefix to the access log filenames
- // for this distribution, for example, myprefix/. If you want to enable logging,
- // but you don't want to specify a prefix, you still must include an empty Prefix
- // element in the Logging element.
- //
- // Prefix is a required field
- Prefix *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s LoggingConfig) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s LoggingConfig) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *LoggingConfig) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "LoggingConfig"}
- if s.Bucket == nil {
- invalidParams.Add(request.NewErrParamRequired("Bucket"))
- }
- if s.Enabled == nil {
- invalidParams.Add(request.NewErrParamRequired("Enabled"))
- }
- if s.IncludeCookies == nil {
- invalidParams.Add(request.NewErrParamRequired("IncludeCookies"))
- }
- if s.Prefix == nil {
- invalidParams.Add(request.NewErrParamRequired("Prefix"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetBucket sets the Bucket field's value.
- func (s *LoggingConfig) SetBucket(v string) *LoggingConfig {
- s.Bucket = &v
- return s
- }
- // SetEnabled sets the Enabled field's value.
- func (s *LoggingConfig) SetEnabled(v bool) *LoggingConfig {
- s.Enabled = &v
- return s
- }
- // SetIncludeCookies sets the IncludeCookies field's value.
- func (s *LoggingConfig) SetIncludeCookies(v bool) *LoggingConfig {
- s.IncludeCookies = &v
- return s
- }
- // SetPrefix sets the Prefix field's value.
- func (s *LoggingConfig) SetPrefix(v string) *LoggingConfig {
- s.Prefix = &v
- return s
- }
- // A complex type that describes the Amazon S3 bucket, HTTP server (for example,
- // a web server), Amazon MediaStore, or other server from which CloudFront gets
- // your files. This can also be an origin group, if you've created an origin
- // group. You must specify at least one origin or origin group.
- //
- // For the current limit on the number of origins or origin groups that you
- // can specify for a distribution, see Amazon CloudFront Limits (http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_cloudfront)
- // in the AWS General Reference.
- type Origin struct {
- _ struct{} `type:"structure"`
- // A complex type that contains names and values for the custom headers that
- // you want.
- CustomHeaders *CustomHeaders `type:"structure"`
- // A complex type that contains information about a custom origin. If the origin
- // is an Amazon S3 bucket, use the S3OriginConfig element instead.
- CustomOriginConfig *CustomOriginConfig `type:"structure"`
- // Amazon S3 origins: The DNS name of the Amazon S3 bucket from which you want
- // CloudFront to get objects for this origin, for example, myawsbucket.s3.amazonaws.com.
- // If you set up your bucket to be configured as a website endpoint, enter the
- // Amazon S3 static website hosting endpoint for the bucket.
- //
- // For more information about specifying this value for different types of origins,
- // see Origin Domain Name (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesDomainName)
- // in the Amazon CloudFront Developer Guide.
- //
- // Constraints for Amazon S3 origins:
- //
- // * If you configured Amazon S3 Transfer Acceleration for your bucket, don't
- // specify the s3-accelerate endpoint for DomainName.
- //
- // * The bucket name must be between 3 and 63 characters long (inclusive).
- //
- // * The bucket name must contain only lowercase characters, numbers, periods,
- // underscores, and dashes.
- //
- // * The bucket name must not contain adjacent periods.
- //
- // Custom Origins: The DNS domain name for the HTTP server from which you want
- // CloudFront to get objects for this origin, for example, www.example.com.
- //
- // Constraints for custom origins:
- //
- // * DomainName must be a valid DNS name that contains only a-z, A-Z, 0-9,
- // dot (.), hyphen (-), or underscore (_) characters.
- //
- // * The name cannot exceed 128 characters.
- //
- // DomainName is a required field
- DomainName *string `type:"string" required:"true"`
- // A unique identifier for the origin or origin group. The value of Id must
- // be unique within the distribution.
- //
- // When you specify the value of TargetOriginId for the default cache behavior
- // or for another cache behavior, you indicate the origin to which you want
- // the cache behavior to route requests by specifying the value of the Id element
- // for that origin. When a request matches the path pattern for that cache behavior,
- // CloudFront routes the request to the specified origin. For more information,
- // see Cache Behavior Settings (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesCacheBehavior)
- // in the Amazon CloudFront Developer Guide.
- //
- // Id is a required field
- Id *string `type:"string" required:"true"`
- // An optional element that causes CloudFront to request your content from a
- // directory in your Amazon S3 bucket or your custom origin. When you include
- // the OriginPath element, specify the directory name, beginning with a /. CloudFront
- // appends the directory name to the value of DomainName, for example, example.com/production.
- // Do not include a / at the end of the directory name.
- //
- // For example, suppose you've specified the following values for your distribution:
- //
- // * DomainName: An Amazon S3 bucket named myawsbucket.
- //
- // * OriginPath: /production
- //
- // * CNAME: example.com
- //
- // When a user enters example.com/index.html in a browser, CloudFront sends
- // a request to Amazon S3 for myawsbucket/production/index.html.
- //
- // When a user enters example.com/acme/index.html in a browser, CloudFront sends
- // a request to Amazon S3 for myawsbucket/production/acme/index.html.
- OriginPath *string `type:"string"`
- // A complex type that contains information about the Amazon S3 origin. If the
- // origin is a custom origin, use the CustomOriginConfig element instead.
- S3OriginConfig *S3OriginConfig `type:"structure"`
- }
- // String returns the string representation
- func (s Origin) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Origin) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *Origin) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "Origin"}
- if s.DomainName == nil {
- invalidParams.Add(request.NewErrParamRequired("DomainName"))
- }
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.CustomHeaders != nil {
- if err := s.CustomHeaders.Validate(); err != nil {
- invalidParams.AddNested("CustomHeaders", err.(request.ErrInvalidParams))
- }
- }
- if s.CustomOriginConfig != nil {
- if err := s.CustomOriginConfig.Validate(); err != nil {
- invalidParams.AddNested("CustomOriginConfig", err.(request.ErrInvalidParams))
- }
- }
- if s.S3OriginConfig != nil {
- if err := s.S3OriginConfig.Validate(); err != nil {
- invalidParams.AddNested("S3OriginConfig", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetCustomHeaders sets the CustomHeaders field's value.
- func (s *Origin) SetCustomHeaders(v *CustomHeaders) *Origin {
- s.CustomHeaders = v
- return s
- }
- // SetCustomOriginConfig sets the CustomOriginConfig field's value.
- func (s *Origin) SetCustomOriginConfig(v *CustomOriginConfig) *Origin {
- s.CustomOriginConfig = v
- return s
- }
- // SetDomainName sets the DomainName field's value.
- func (s *Origin) SetDomainName(v string) *Origin {
- s.DomainName = &v
- return s
- }
- // SetId sets the Id field's value.
- func (s *Origin) SetId(v string) *Origin {
- s.Id = &v
- return s
- }
- // SetOriginPath sets the OriginPath field's value.
- func (s *Origin) SetOriginPath(v string) *Origin {
- s.OriginPath = &v
- return s
- }
- // SetS3OriginConfig sets the S3OriginConfig field's value.
- func (s *Origin) SetS3OriginConfig(v *S3OriginConfig) *Origin {
- s.S3OriginConfig = v
- return s
- }
- // CloudFront origin access identity.
- type OriginAccessIdentity struct {
- _ struct{} `type:"structure"`
- // The current configuration information for the identity.
- CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `type:"structure"`
- // The ID for the origin access identity, for example, E74FTE3AJFJ256A.
- //
- // Id is a required field
- Id *string `type:"string" required:"true"`
- // The Amazon S3 canonical user ID for the origin access identity, used when
- // giving the origin access identity read permission to an object in Amazon
- // S3.
- //
- // S3CanonicalUserId is a required field
- S3CanonicalUserId *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s OriginAccessIdentity) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s OriginAccessIdentity) GoString() string {
- return s.String()
- }
- // SetCloudFrontOriginAccessIdentityConfig sets the CloudFrontOriginAccessIdentityConfig field's value.
- func (s *OriginAccessIdentity) SetCloudFrontOriginAccessIdentityConfig(v *OriginAccessIdentityConfig) *OriginAccessIdentity {
- s.CloudFrontOriginAccessIdentityConfig = v
- return s
- }
- // SetId sets the Id field's value.
- func (s *OriginAccessIdentity) SetId(v string) *OriginAccessIdentity {
- s.Id = &v
- return s
- }
- // SetS3CanonicalUserId sets the S3CanonicalUserId field's value.
- func (s *OriginAccessIdentity) SetS3CanonicalUserId(v string) *OriginAccessIdentity {
- s.S3CanonicalUserId = &v
- return s
- }
- // Origin access identity configuration. Send a GET request to the /CloudFront
- // API version/CloudFront/identity ID/config resource.
- type OriginAccessIdentityConfig struct {
- _ struct{} `type:"structure"`
- // A unique value (for example, a date-time stamp) that ensures that the request
- // can't be replayed.
- //
- // If the value of CallerReference is new (regardless of the content of the
- // CloudFrontOriginAccessIdentityConfig object), a new origin access identity
- // is created.
- //
- // If the CallerReference is a value already sent in a previous identity request,
- // and the content of the CloudFrontOriginAccessIdentityConfig is identical
- // to the original request (ignoring white space), the response includes the
- // same information returned to the original request.
- //
- // If the CallerReference is a value you already sent in a previous request
- // to create an identity, but the content of the CloudFrontOriginAccessIdentityConfig
- // is different from the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists
- // error.
- //
- // CallerReference is a required field
- CallerReference *string `type:"string" required:"true"`
- // Any comments you want to include about the origin access identity.
- //
- // Comment is a required field
- Comment *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s OriginAccessIdentityConfig) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s OriginAccessIdentityConfig) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *OriginAccessIdentityConfig) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "OriginAccessIdentityConfig"}
- if s.CallerReference == nil {
- invalidParams.Add(request.NewErrParamRequired("CallerReference"))
- }
- if s.Comment == nil {
- invalidParams.Add(request.NewErrParamRequired("Comment"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetCallerReference sets the CallerReference field's value.
- func (s *OriginAccessIdentityConfig) SetCallerReference(v string) *OriginAccessIdentityConfig {
- s.CallerReference = &v
- return s
- }
- // SetComment sets the Comment field's value.
- func (s *OriginAccessIdentityConfig) SetComment(v string) *OriginAccessIdentityConfig {
- s.Comment = &v
- return s
- }
- // Lists the origin access identities for CloudFront.Send a GET request to the
- // /CloudFront API version/origin-access-identity/cloudfront resource. The response
- // includes a CloudFrontOriginAccessIdentityList element with zero or more CloudFrontOriginAccessIdentitySummary
- // child elements. By default, your entire list of origin access identities
- // is returned in one single page. If the list is long, you can paginate it
- // using the MaxItems and Marker parameters.
- type OriginAccessIdentityList struct {
- _ struct{} `type:"structure"`
- // A flag that indicates whether more origin access identities remain to be
- // listed. If your results were truncated, you can make a follow-up pagination
- // request using the Marker request parameter to retrieve more items in the
- // list.
- //
- // IsTruncated is a required field
- IsTruncated *bool `type:"boolean" required:"true"`
- // A complex type that contains one CloudFrontOriginAccessIdentitySummary element
- // for each origin access identity that was created by the current AWS account.
- Items []*OriginAccessIdentitySummary `locationNameList:"CloudFrontOriginAccessIdentitySummary" type:"list"`
- // Use this when paginating results to indicate where to begin in your list
- // of origin access identities. The results include identities in the list that
- // occur after the marker. To get the next page of results, set the Marker to
- // the value of the NextMarker from the current page's response (which is also
- // the ID of the last identity on that page).
- //
- // Marker is a required field
- Marker *string `type:"string" required:"true"`
- // The maximum number of origin access identities you want in the response body.
- //
- // MaxItems is a required field
- MaxItems *int64 `type:"integer" required:"true"`
- // If IsTruncated is true, this element is present and contains the value you
- // can use for the Marker request parameter to continue listing your origin
- // access identities where they left off.
- NextMarker *string `type:"string"`
- // The number of CloudFront origin access identities that were created by the
- // current AWS account.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s OriginAccessIdentityList) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s OriginAccessIdentityList) GoString() string {
- return s.String()
- }
- // SetIsTruncated sets the IsTruncated field's value.
- func (s *OriginAccessIdentityList) SetIsTruncated(v bool) *OriginAccessIdentityList {
- s.IsTruncated = &v
- return s
- }
- // SetItems sets the Items field's value.
- func (s *OriginAccessIdentityList) SetItems(v []*OriginAccessIdentitySummary) *OriginAccessIdentityList {
- s.Items = v
- return s
- }
- // SetMarker sets the Marker field's value.
- func (s *OriginAccessIdentityList) SetMarker(v string) *OriginAccessIdentityList {
- s.Marker = &v
- return s
- }
- // SetMaxItems sets the MaxItems field's value.
- func (s *OriginAccessIdentityList) SetMaxItems(v int64) *OriginAccessIdentityList {
- s.MaxItems = &v
- return s
- }
- // SetNextMarker sets the NextMarker field's value.
- func (s *OriginAccessIdentityList) SetNextMarker(v string) *OriginAccessIdentityList {
- s.NextMarker = &v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *OriginAccessIdentityList) SetQuantity(v int64) *OriginAccessIdentityList {
- s.Quantity = &v
- return s
- }
- // Summary of the information about a CloudFront origin access identity.
- type OriginAccessIdentitySummary struct {
- _ struct{} `type:"structure"`
- // The comment for this origin access identity, as originally specified when
- // created.
- //
- // Comment is a required field
- Comment *string `type:"string" required:"true"`
- // The ID for the origin access identity. For example: E74FTE3AJFJ256A.
- //
- // Id is a required field
- Id *string `type:"string" required:"true"`
- // The Amazon S3 canonical user ID for the origin access identity, which you
- // use when giving the origin access identity read permission to an object in
- // Amazon S3.
- //
- // S3CanonicalUserId is a required field
- S3CanonicalUserId *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s OriginAccessIdentitySummary) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s OriginAccessIdentitySummary) GoString() string {
- return s.String()
- }
- // SetComment sets the Comment field's value.
- func (s *OriginAccessIdentitySummary) SetComment(v string) *OriginAccessIdentitySummary {
- s.Comment = &v
- return s
- }
- // SetId sets the Id field's value.
- func (s *OriginAccessIdentitySummary) SetId(v string) *OriginAccessIdentitySummary {
- s.Id = &v
- return s
- }
- // SetS3CanonicalUserId sets the S3CanonicalUserId field's value.
- func (s *OriginAccessIdentitySummary) SetS3CanonicalUserId(v string) *OriginAccessIdentitySummary {
- s.S3CanonicalUserId = &v
- return s
- }
- // A complex type that contains HeaderName and HeaderValue elements, if any,
- // for this distribution.
- type OriginCustomHeader struct {
- _ struct{} `type:"structure"`
- // The name of a header that you want CloudFront to forward to your origin.
- // For more information, see Forwarding Custom Headers to Your Origin (Web Distributions
- // Only) (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/forward-custom-headers.html)
- // in the Amazon Amazon CloudFront Developer Guide.
- //
- // HeaderName is a required field
- HeaderName *string `type:"string" required:"true"`
- // The value for the header that you specified in the HeaderName field.
- //
- // HeaderValue is a required field
- HeaderValue *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s OriginCustomHeader) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s OriginCustomHeader) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *OriginCustomHeader) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "OriginCustomHeader"}
- if s.HeaderName == nil {
- invalidParams.Add(request.NewErrParamRequired("HeaderName"))
- }
- if s.HeaderValue == nil {
- invalidParams.Add(request.NewErrParamRequired("HeaderValue"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetHeaderName sets the HeaderName field's value.
- func (s *OriginCustomHeader) SetHeaderName(v string) *OriginCustomHeader {
- s.HeaderName = &v
- return s
- }
- // SetHeaderValue sets the HeaderValue field's value.
- func (s *OriginCustomHeader) SetHeaderValue(v string) *OriginCustomHeader {
- s.HeaderValue = &v
- return s
- }
- // An origin group includes two origins (a primary origin and a second origin
- // to failover to) and a failover criteria that you specify. You create an origin
- // group to support origin failover in CloudFront. When you create or update
- // a distribution, you can specifiy the origin group instead of a single origin,
- // and CloudFront will failover from the primary origin to the second origin
- // under the failover conditions that you've chosen.
- type OriginGroup struct {
- _ struct{} `type:"structure"`
- // A complex type that contains information about the failover criteria for
- // an origin group.
- //
- // FailoverCriteria is a required field
- FailoverCriteria *OriginGroupFailoverCriteria `type:"structure" required:"true"`
- // The origin group's ID.
- //
- // Id is a required field
- Id *string `type:"string" required:"true"`
- // A complex type that contains information about the origins in an origin group.
- //
- // Members is a required field
- Members *OriginGroupMembers `type:"structure" required:"true"`
- }
- // String returns the string representation
- func (s OriginGroup) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s OriginGroup) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *OriginGroup) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "OriginGroup"}
- if s.FailoverCriteria == nil {
- invalidParams.Add(request.NewErrParamRequired("FailoverCriteria"))
- }
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Members == nil {
- invalidParams.Add(request.NewErrParamRequired("Members"))
- }
- if s.FailoverCriteria != nil {
- if err := s.FailoverCriteria.Validate(); err != nil {
- invalidParams.AddNested("FailoverCriteria", err.(request.ErrInvalidParams))
- }
- }
- if s.Members != nil {
- if err := s.Members.Validate(); err != nil {
- invalidParams.AddNested("Members", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetFailoverCriteria sets the FailoverCriteria field's value.
- func (s *OriginGroup) SetFailoverCriteria(v *OriginGroupFailoverCriteria) *OriginGroup {
- s.FailoverCriteria = v
- return s
- }
- // SetId sets the Id field's value.
- func (s *OriginGroup) SetId(v string) *OriginGroup {
- s.Id = &v
- return s
- }
- // SetMembers sets the Members field's value.
- func (s *OriginGroup) SetMembers(v *OriginGroupMembers) *OriginGroup {
- s.Members = v
- return s
- }
- // A complex data type that includes information about the failover criteria
- // for an origin group, including the status codes for which CloudFront will
- // failover from the primary origin to the second origin.
- type OriginGroupFailoverCriteria struct {
- _ struct{} `type:"structure"`
- // The status codes that, when returned from the primary origin, will trigger
- // CloudFront to failover to the second origin.
- //
- // StatusCodes is a required field
- StatusCodes *StatusCodes `type:"structure" required:"true"`
- }
- // String returns the string representation
- func (s OriginGroupFailoverCriteria) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s OriginGroupFailoverCriteria) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *OriginGroupFailoverCriteria) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "OriginGroupFailoverCriteria"}
- if s.StatusCodes == nil {
- invalidParams.Add(request.NewErrParamRequired("StatusCodes"))
- }
- if s.StatusCodes != nil {
- if err := s.StatusCodes.Validate(); err != nil {
- invalidParams.AddNested("StatusCodes", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetStatusCodes sets the StatusCodes field's value.
- func (s *OriginGroupFailoverCriteria) SetStatusCodes(v *StatusCodes) *OriginGroupFailoverCriteria {
- s.StatusCodes = v
- return s
- }
- // An origin in an origin group.
- type OriginGroupMember struct {
- _ struct{} `type:"structure"`
- // The ID for an origin in an origin group.
- //
- // OriginId is a required field
- OriginId *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s OriginGroupMember) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s OriginGroupMember) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *OriginGroupMember) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "OriginGroupMember"}
- if s.OriginId == nil {
- invalidParams.Add(request.NewErrParamRequired("OriginId"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetOriginId sets the OriginId field's value.
- func (s *OriginGroupMember) SetOriginId(v string) *OriginGroupMember {
- s.OriginId = &v
- return s
- }
- // A complex data type for the origins included in an origin group.
- type OriginGroupMembers struct {
- _ struct{} `type:"structure"`
- // Items (origins) in an origin group.
- //
- // Items is a required field
- Items []*OriginGroupMember `locationNameList:"OriginGroupMember" min:"2" type:"list" required:"true"`
- // The number of origins in an origin group.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s OriginGroupMembers) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s OriginGroupMembers) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *OriginGroupMembers) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "OriginGroupMembers"}
- if s.Items == nil {
- invalidParams.Add(request.NewErrParamRequired("Items"))
- }
- if s.Items != nil && len(s.Items) < 2 {
- invalidParams.Add(request.NewErrParamMinLen("Items", 2))
- }
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if s.Items != nil {
- for i, v := range s.Items {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *OriginGroupMembers) SetItems(v []*OriginGroupMember) *OriginGroupMembers {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *OriginGroupMembers) SetQuantity(v int64) *OriginGroupMembers {
- s.Quantity = &v
- return s
- }
- // A complex data type for the origin groups specified for a distribution.
- type OriginGroups struct {
- _ struct{} `type:"structure"`
- // The items (origin groups) in a distribution.
- Items []*OriginGroup `locationNameList:"OriginGroup" type:"list"`
- // The number of origin groups.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s OriginGroups) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s OriginGroups) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *OriginGroups) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "OriginGroups"}
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if s.Items != nil {
- for i, v := range s.Items {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *OriginGroups) SetItems(v []*OriginGroup) *OriginGroups {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *OriginGroups) SetQuantity(v int64) *OriginGroups {
- s.Quantity = &v
- return s
- }
- // A complex type that contains information about the SSL/TLS protocols that
- // CloudFront can use when establishing an HTTPS connection with your origin.
- type OriginSslProtocols struct {
- _ struct{} `type:"structure"`
- // A list that contains allowed SSL/TLS protocols for this distribution.
- //
- // Items is a required field
- Items []*string `locationNameList:"SslProtocol" type:"list" required:"true"`
- // The number of SSL/TLS protocols that you want to allow CloudFront to use
- // when establishing an HTTPS connection with this origin.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s OriginSslProtocols) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s OriginSslProtocols) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *OriginSslProtocols) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "OriginSslProtocols"}
- if s.Items == nil {
- invalidParams.Add(request.NewErrParamRequired("Items"))
- }
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *OriginSslProtocols) SetItems(v []*string) *OriginSslProtocols {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *OriginSslProtocols) SetQuantity(v int64) *OriginSslProtocols {
- s.Quantity = &v
- return s
- }
- // A complex type that contains information about origins and origin groups
- // for this distribution.
- type Origins struct {
- _ struct{} `type:"structure"`
- // A complex type that contains origins or origin groups for this distribution.
- //
- // Items is a required field
- Items []*Origin `locationNameList:"Origin" min:"1" type:"list" required:"true"`
- // The number of origins or origin groups for this distribution.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s Origins) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Origins) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *Origins) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "Origins"}
- if s.Items == nil {
- invalidParams.Add(request.NewErrParamRequired("Items"))
- }
- if s.Items != nil && len(s.Items) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Items", 1))
- }
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if s.Items != nil {
- for i, v := range s.Items {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *Origins) SetItems(v []*Origin) *Origins {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *Origins) SetQuantity(v int64) *Origins {
- s.Quantity = &v
- return s
- }
- // A complex type that contains information about the objects that you want
- // to invalidate. For more information, see Specifying the Objects to Invalidate
- // (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Invalidation.html#invalidation-specifying-objects)
- // in the Amazon CloudFront Developer Guide.
- type Paths struct {
- _ struct{} `type:"structure"`
- // A complex type that contains a list of the paths that you want to invalidate.
- Items []*string `locationNameList:"Path" type:"list"`
- // The number of objects that you want to invalidate.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s Paths) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Paths) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *Paths) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "Paths"}
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *Paths) SetItems(v []*string) *Paths {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *Paths) SetQuantity(v int64) *Paths {
- s.Quantity = &v
- return s
- }
- // A complex data type of public keys you add to CloudFront to use with features
- // like field-level encryption.
- type PublicKey struct {
- _ struct{} `type:"structure"`
- // A time you added a public key to CloudFront.
- //
- // CreatedTime is a required field
- CreatedTime *time.Time `type:"timestamp" required:"true"`
- // A unique ID assigned to a public key you've added to CloudFront.
- //
- // Id is a required field
- Id *string `type:"string" required:"true"`
- // A complex data type for a public key you add to CloudFront to use with features
- // like field-level encryption.
- //
- // PublicKeyConfig is a required field
- PublicKeyConfig *PublicKeyConfig `type:"structure" required:"true"`
- }
- // String returns the string representation
- func (s PublicKey) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s PublicKey) GoString() string {
- return s.String()
- }
- // SetCreatedTime sets the CreatedTime field's value.
- func (s *PublicKey) SetCreatedTime(v time.Time) *PublicKey {
- s.CreatedTime = &v
- return s
- }
- // SetId sets the Id field's value.
- func (s *PublicKey) SetId(v string) *PublicKey {
- s.Id = &v
- return s
- }
- // SetPublicKeyConfig sets the PublicKeyConfig field's value.
- func (s *PublicKey) SetPublicKeyConfig(v *PublicKeyConfig) *PublicKey {
- s.PublicKeyConfig = v
- return s
- }
- // Information about a public key you add to CloudFront to use with features
- // like field-level encryption.
- type PublicKeyConfig struct {
- _ struct{} `type:"structure"`
- // A unique number that ensures that the request can't be replayed.
- //
- // CallerReference is a required field
- CallerReference *string `type:"string" required:"true"`
- // An optional comment about a public key.
- Comment *string `type:"string"`
- // The encoded public key that you want to add to CloudFront to use with features
- // like field-level encryption.
- //
- // EncodedKey is a required field
- EncodedKey *string `type:"string" required:"true"`
- // The name for a public key you add to CloudFront to use with features like
- // field-level encryption.
- //
- // Name is a required field
- Name *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s PublicKeyConfig) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s PublicKeyConfig) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *PublicKeyConfig) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "PublicKeyConfig"}
- if s.CallerReference == nil {
- invalidParams.Add(request.NewErrParamRequired("CallerReference"))
- }
- if s.EncodedKey == nil {
- invalidParams.Add(request.NewErrParamRequired("EncodedKey"))
- }
- if s.Name == nil {
- invalidParams.Add(request.NewErrParamRequired("Name"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetCallerReference sets the CallerReference field's value.
- func (s *PublicKeyConfig) SetCallerReference(v string) *PublicKeyConfig {
- s.CallerReference = &v
- return s
- }
- // SetComment sets the Comment field's value.
- func (s *PublicKeyConfig) SetComment(v string) *PublicKeyConfig {
- s.Comment = &v
- return s
- }
- // SetEncodedKey sets the EncodedKey field's value.
- func (s *PublicKeyConfig) SetEncodedKey(v string) *PublicKeyConfig {
- s.EncodedKey = &v
- return s
- }
- // SetName sets the Name field's value.
- func (s *PublicKeyConfig) SetName(v string) *PublicKeyConfig {
- s.Name = &v
- return s
- }
- // A list of public keys you've added to CloudFront to use with features like
- // field-level encryption.
- type PublicKeyList struct {
- _ struct{} `type:"structure"`
- // An array of information about a public key you add to CloudFront to use with
- // features like field-level encryption.
- Items []*PublicKeySummary `locationNameList:"PublicKeySummary" type:"list"`
- // The maximum number of public keys you want in the response body.
- //
- // MaxItems is a required field
- MaxItems *int64 `type:"integer" required:"true"`
- // If there are more elements to be listed, this element is present and contains
- // the value that you can use for the Marker request parameter to continue listing
- // your public keys where you left off.
- NextMarker *string `type:"string"`
- // The number of public keys you added to CloudFront to use with features like
- // field-level encryption.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s PublicKeyList) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s PublicKeyList) GoString() string {
- return s.String()
- }
- // SetItems sets the Items field's value.
- func (s *PublicKeyList) SetItems(v []*PublicKeySummary) *PublicKeyList {
- s.Items = v
- return s
- }
- // SetMaxItems sets the MaxItems field's value.
- func (s *PublicKeyList) SetMaxItems(v int64) *PublicKeyList {
- s.MaxItems = &v
- return s
- }
- // SetNextMarker sets the NextMarker field's value.
- func (s *PublicKeyList) SetNextMarker(v string) *PublicKeyList {
- s.NextMarker = &v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *PublicKeyList) SetQuantity(v int64) *PublicKeyList {
- s.Quantity = &v
- return s
- }
- // A complex data type for public key information.
- type PublicKeySummary struct {
- _ struct{} `type:"structure"`
- // Comment for public key information summary.
- Comment *string `type:"string"`
- // Creation time for public key information summary.
- //
- // CreatedTime is a required field
- CreatedTime *time.Time `type:"timestamp" required:"true"`
- // Encoded key for public key information summary.
- //
- // EncodedKey is a required field
- EncodedKey *string `type:"string" required:"true"`
- // ID for public key information summary.
- //
- // Id is a required field
- Id *string `type:"string" required:"true"`
- // Name for public key information summary.
- //
- // Name is a required field
- Name *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s PublicKeySummary) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s PublicKeySummary) GoString() string {
- return s.String()
- }
- // SetComment sets the Comment field's value.
- func (s *PublicKeySummary) SetComment(v string) *PublicKeySummary {
- s.Comment = &v
- return s
- }
- // SetCreatedTime sets the CreatedTime field's value.
- func (s *PublicKeySummary) SetCreatedTime(v time.Time) *PublicKeySummary {
- s.CreatedTime = &v
- return s
- }
- // SetEncodedKey sets the EncodedKey field's value.
- func (s *PublicKeySummary) SetEncodedKey(v string) *PublicKeySummary {
- s.EncodedKey = &v
- return s
- }
- // SetId sets the Id field's value.
- func (s *PublicKeySummary) SetId(v string) *PublicKeySummary {
- s.Id = &v
- return s
- }
- // SetName sets the Name field's value.
- func (s *PublicKeySummary) SetName(v string) *PublicKeySummary {
- s.Name = &v
- return s
- }
- // Query argument-profile mapping for field-level encryption.
- type QueryArgProfile struct {
- _ struct{} `type:"structure"`
- // ID of profile to use for field-level encryption query argument-profile mapping
- //
- // ProfileId is a required field
- ProfileId *string `type:"string" required:"true"`
- // Query argument for field-level encryption query argument-profile mapping.
- //
- // QueryArg is a required field
- QueryArg *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s QueryArgProfile) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s QueryArgProfile) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *QueryArgProfile) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "QueryArgProfile"}
- if s.ProfileId == nil {
- invalidParams.Add(request.NewErrParamRequired("ProfileId"))
- }
- if s.QueryArg == nil {
- invalidParams.Add(request.NewErrParamRequired("QueryArg"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetProfileId sets the ProfileId field's value.
- func (s *QueryArgProfile) SetProfileId(v string) *QueryArgProfile {
- s.ProfileId = &v
- return s
- }
- // SetQueryArg sets the QueryArg field's value.
- func (s *QueryArgProfile) SetQueryArg(v string) *QueryArgProfile {
- s.QueryArg = &v
- return s
- }
- // Configuration for query argument-profile mapping for field-level encryption.
- type QueryArgProfileConfig struct {
- _ struct{} `type:"structure"`
- // Flag to set if you want a request to be forwarded to the origin even if the
- // profile specified by the field-level encryption query argument, fle-profile,
- // is unknown.
- //
- // ForwardWhenQueryArgProfileIsUnknown is a required field
- ForwardWhenQueryArgProfileIsUnknown *bool `type:"boolean" required:"true"`
- // Profiles specified for query argument-profile mapping for field-level encryption.
- QueryArgProfiles *QueryArgProfiles `type:"structure"`
- }
- // String returns the string representation
- func (s QueryArgProfileConfig) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s QueryArgProfileConfig) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *QueryArgProfileConfig) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "QueryArgProfileConfig"}
- if s.ForwardWhenQueryArgProfileIsUnknown == nil {
- invalidParams.Add(request.NewErrParamRequired("ForwardWhenQueryArgProfileIsUnknown"))
- }
- if s.QueryArgProfiles != nil {
- if err := s.QueryArgProfiles.Validate(); err != nil {
- invalidParams.AddNested("QueryArgProfiles", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetForwardWhenQueryArgProfileIsUnknown sets the ForwardWhenQueryArgProfileIsUnknown field's value.
- func (s *QueryArgProfileConfig) SetForwardWhenQueryArgProfileIsUnknown(v bool) *QueryArgProfileConfig {
- s.ForwardWhenQueryArgProfileIsUnknown = &v
- return s
- }
- // SetQueryArgProfiles sets the QueryArgProfiles field's value.
- func (s *QueryArgProfileConfig) SetQueryArgProfiles(v *QueryArgProfiles) *QueryArgProfileConfig {
- s.QueryArgProfiles = v
- return s
- }
- // Query argument-profile mapping for field-level encryption.
- type QueryArgProfiles struct {
- _ struct{} `type:"structure"`
- // Number of items for query argument-profile mapping for field-level encryption.
- Items []*QueryArgProfile `locationNameList:"QueryArgProfile" type:"list"`
- // Number of profiles for query argument-profile mapping for field-level encryption.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s QueryArgProfiles) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s QueryArgProfiles) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *QueryArgProfiles) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "QueryArgProfiles"}
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if s.Items != nil {
- for i, v := range s.Items {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *QueryArgProfiles) SetItems(v []*QueryArgProfile) *QueryArgProfiles {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *QueryArgProfiles) SetQuantity(v int64) *QueryArgProfiles {
- s.Quantity = &v
- return s
- }
- type QueryStringCacheKeys struct {
- _ struct{} `type:"structure"`
- // (Optional) A list that contains the query string parameters that you want
- // CloudFront to use as a basis for caching for this cache behavior. If Quantity
- // is 0, you can omit Items.
- Items []*string `locationNameList:"Name" type:"list"`
- // The number of whitelisted query string parameters for this cache behavior.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s QueryStringCacheKeys) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s QueryStringCacheKeys) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *QueryStringCacheKeys) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "QueryStringCacheKeys"}
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *QueryStringCacheKeys) SetItems(v []*string) *QueryStringCacheKeys {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *QueryStringCacheKeys) SetQuantity(v int64) *QueryStringCacheKeys {
- s.Quantity = &v
- return s
- }
- // A complex type that identifies ways in which you want to restrict distribution
- // of your content.
- type Restrictions struct {
- _ struct{} `type:"structure"`
- // A complex type that controls the countries in which your content is distributed.
- // CloudFront determines the location of your users using MaxMind GeoIP databases.
- //
- // GeoRestriction is a required field
- GeoRestriction *GeoRestriction `type:"structure" required:"true"`
- }
- // String returns the string representation
- func (s Restrictions) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Restrictions) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *Restrictions) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "Restrictions"}
- if s.GeoRestriction == nil {
- invalidParams.Add(request.NewErrParamRequired("GeoRestriction"))
- }
- if s.GeoRestriction != nil {
- if err := s.GeoRestriction.Validate(); err != nil {
- invalidParams.AddNested("GeoRestriction", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetGeoRestriction sets the GeoRestriction field's value.
- func (s *Restrictions) SetGeoRestriction(v *GeoRestriction) *Restrictions {
- s.GeoRestriction = v
- return s
- }
- // A complex type that contains information about the Amazon S3 bucket from
- // which you want CloudFront to get your media files for distribution.
- type S3Origin struct {
- _ struct{} `type:"structure"`
- // The DNS name of the Amazon S3 origin.
- //
- // DomainName is a required field
- DomainName *string `type:"string" required:"true"`
- // The CloudFront origin access identity to associate with the RTMP distribution.
- // Use an origin access identity to configure the distribution so that end users
- // can only access objects in an Amazon S3 bucket through CloudFront.
- //
- // If you want end users to be able to access objects using either the CloudFront
- // URL or the Amazon S3 URL, specify an empty OriginAccessIdentity element.
- //
- // To delete the origin access identity from an existing distribution, update
- // the distribution configuration and include an empty OriginAccessIdentity
- // element.
- //
- // To replace the origin access identity, update the distribution configuration
- // and specify the new origin access identity.
- //
- // For more information, see Using an Origin Access Identity to Restrict Access
- // to Your Amazon S3 Content (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html)
- // in the Amazon Amazon CloudFront Developer Guide.
- //
- // OriginAccessIdentity is a required field
- OriginAccessIdentity *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s S3Origin) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s S3Origin) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *S3Origin) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "S3Origin"}
- if s.DomainName == nil {
- invalidParams.Add(request.NewErrParamRequired("DomainName"))
- }
- if s.OriginAccessIdentity == nil {
- invalidParams.Add(request.NewErrParamRequired("OriginAccessIdentity"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetDomainName sets the DomainName field's value.
- func (s *S3Origin) SetDomainName(v string) *S3Origin {
- s.DomainName = &v
- return s
- }
- // SetOriginAccessIdentity sets the OriginAccessIdentity field's value.
- func (s *S3Origin) SetOriginAccessIdentity(v string) *S3Origin {
- s.OriginAccessIdentity = &v
- return s
- }
- // A complex type that contains information about the Amazon S3 origin. If the
- // origin is a custom origin, use the CustomOriginConfig element instead.
- type S3OriginConfig struct {
- _ struct{} `type:"structure"`
- // The CloudFront origin access identity to associate with the origin. Use an
- // origin access identity to configure the origin so that viewers can only access
- // objects in an Amazon S3 bucket through CloudFront. The format of the value
- // is:
- //
- // origin-access-identity/cloudfront/ID-of-origin-access-identity
- //
- // where ID-of-origin-access-identity is the value that CloudFront returned
- // in the ID element when you created the origin access identity.
- //
- // If you want viewers to be able to access objects using either the CloudFront
- // URL or the Amazon S3 URL, specify an empty OriginAccessIdentity element.
- //
- // To delete the origin access identity from an existing distribution, update
- // the distribution configuration and include an empty OriginAccessIdentity
- // element.
- //
- // To replace the origin access identity, update the distribution configuration
- // and specify the new origin access identity.
- //
- // For more information about the origin access identity, see Serving Private
- // Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html)
- // in the Amazon CloudFront Developer Guide.
- //
- // OriginAccessIdentity is a required field
- OriginAccessIdentity *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s S3OriginConfig) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s S3OriginConfig) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *S3OriginConfig) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "S3OriginConfig"}
- if s.OriginAccessIdentity == nil {
- invalidParams.Add(request.NewErrParamRequired("OriginAccessIdentity"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetOriginAccessIdentity sets the OriginAccessIdentity field's value.
- func (s *S3OriginConfig) SetOriginAccessIdentity(v string) *S3OriginConfig {
- s.OriginAccessIdentity = &v
- return s
- }
- // A complex type that lists the AWS accounts that were included in the TrustedSigners
- // complex type, as well as their active CloudFront key pair IDs, if any.
- type Signer struct {
- _ struct{} `type:"structure"`
- // An AWS account that is included in the TrustedSigners complex type for this
- // RTMP distribution. Valid values include:
- //
- // * self, which is the AWS account used to create the distribution.
- //
- // * An AWS account number.
- AwsAccountNumber *string `type:"string"`
- // A complex type that lists the active CloudFront key pairs, if any, that are
- // associated with AwsAccountNumber.
- KeyPairIds *KeyPairIds `type:"structure"`
- }
- // String returns the string representation
- func (s Signer) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Signer) GoString() string {
- return s.String()
- }
- // SetAwsAccountNumber sets the AwsAccountNumber field's value.
- func (s *Signer) SetAwsAccountNumber(v string) *Signer {
- s.AwsAccountNumber = &v
- return s
- }
- // SetKeyPairIds sets the KeyPairIds field's value.
- func (s *Signer) SetKeyPairIds(v *KeyPairIds) *Signer {
- s.KeyPairIds = v
- return s
- }
- // A complex data type for the status codes that you specify that, when returned
- // by a primary origin, trigger CloudFront to failover to a second origin.
- type StatusCodes struct {
- _ struct{} `type:"structure"`
- // The items (status codes) for an origin group.
- //
- // Items is a required field
- Items []*int64 `locationNameList:"StatusCode" min:"1" type:"list" required:"true"`
- // The number of status codes.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s StatusCodes) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s StatusCodes) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *StatusCodes) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "StatusCodes"}
- if s.Items == nil {
- invalidParams.Add(request.NewErrParamRequired("Items"))
- }
- if s.Items != nil && len(s.Items) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Items", 1))
- }
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *StatusCodes) SetItems(v []*int64) *StatusCodes {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *StatusCodes) SetQuantity(v int64) *StatusCodes {
- s.Quantity = &v
- return s
- }
- // A streaming distribution.
- type StreamingDistribution struct {
- _ struct{} `type:"structure"`
- // The ARN (Amazon Resource Name) for the distribution. For example: arn:aws:cloudfront::123456789012:distribution/EDFDVBD632BHDS5,
- // where 123456789012 is your AWS account ID.
- //
- // ARN is a required field
- ARN *string `type:"string" required:"true"`
- // A complex type that lists the AWS accounts, if any, that you included in
- // the TrustedSigners complex type for this distribution. These are the accounts
- // that you want to allow to create signed URLs for private content.
- //
- // The Signer complex type lists the AWS account number of the trusted signer
- // or self if the signer is the AWS account that created the distribution. The
- // Signer element also includes the IDs of any active CloudFront key pairs that
- // are associated with the trusted signer's AWS account. If no KeyPairId element
- // appears for a Signer, that signer can't create signed URLs.
- //
- // For more information, see Serving Private Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html)
- // in the Amazon CloudFront Developer Guide.
- //
- // ActiveTrustedSigners is a required field
- ActiveTrustedSigners *ActiveTrustedSigners `type:"structure" required:"true"`
- // The domain name that corresponds to the streaming distribution, for example,
- // s5c39gqb8ow64r.cloudfront.net.
- //
- // DomainName is a required field
- DomainName *string `type:"string" required:"true"`
- // The identifier for the RTMP distribution. For example: EGTXBD79EXAMPLE.
- //
- // Id is a required field
- Id *string `type:"string" required:"true"`
- // The date and time that the distribution was last modified.
- LastModifiedTime *time.Time `type:"timestamp"`
- // The current status of the RTMP distribution. When the status is Deployed,
- // the distribution's information is propagated to all CloudFront edge locations.
- //
- // Status is a required field
- Status *string `type:"string" required:"true"`
- // The current configuration information for the RTMP distribution.
- //
- // StreamingDistributionConfig is a required field
- StreamingDistributionConfig *StreamingDistributionConfig `type:"structure" required:"true"`
- }
- // String returns the string representation
- func (s StreamingDistribution) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s StreamingDistribution) GoString() string {
- return s.String()
- }
- // SetARN sets the ARN field's value.
- func (s *StreamingDistribution) SetARN(v string) *StreamingDistribution {
- s.ARN = &v
- return s
- }
- // SetActiveTrustedSigners sets the ActiveTrustedSigners field's value.
- func (s *StreamingDistribution) SetActiveTrustedSigners(v *ActiveTrustedSigners) *StreamingDistribution {
- s.ActiveTrustedSigners = v
- return s
- }
- // SetDomainName sets the DomainName field's value.
- func (s *StreamingDistribution) SetDomainName(v string) *StreamingDistribution {
- s.DomainName = &v
- return s
- }
- // SetId sets the Id field's value.
- func (s *StreamingDistribution) SetId(v string) *StreamingDistribution {
- s.Id = &v
- return s
- }
- // SetLastModifiedTime sets the LastModifiedTime field's value.
- func (s *StreamingDistribution) SetLastModifiedTime(v time.Time) *StreamingDistribution {
- s.LastModifiedTime = &v
- return s
- }
- // SetStatus sets the Status field's value.
- func (s *StreamingDistribution) SetStatus(v string) *StreamingDistribution {
- s.Status = &v
- return s
- }
- // SetStreamingDistributionConfig sets the StreamingDistributionConfig field's value.
- func (s *StreamingDistribution) SetStreamingDistributionConfig(v *StreamingDistributionConfig) *StreamingDistribution {
- s.StreamingDistributionConfig = v
- return s
- }
- // The RTMP distribution's configuration information.
- type StreamingDistributionConfig struct {
- _ struct{} `type:"structure"`
- // A complex type that contains information about CNAMEs (alternate domain names),
- // if any, for this streaming distribution.
- Aliases *Aliases `type:"structure"`
- // A unique value (for example, a date-time stamp) that ensures that the request
- // can't be replayed.
- //
- // If the value of CallerReference is new (regardless of the content of the
- // StreamingDistributionConfig object), CloudFront creates a new distribution.
- //
- // If CallerReference is a value that you already sent in a previous request
- // to create a distribution, CloudFront returns a DistributionAlreadyExists
- // error.
- //
- // CallerReference is a required field
- CallerReference *string `type:"string" required:"true"`
- // Any comments you want to include about the streaming distribution.
- //
- // Comment is a required field
- Comment *string `type:"string" required:"true"`
- // Whether the streaming distribution is enabled to accept user requests for
- // content.
- //
- // Enabled is a required field
- Enabled *bool `type:"boolean" required:"true"`
- // A complex type that controls whether access logs are written for the streaming
- // distribution.
- Logging *StreamingLoggingConfig `type:"structure"`
- // A complex type that contains information about price class for this streaming
- // distribution.
- PriceClass *string `type:"string" enum:"PriceClass"`
- // A complex type that contains information about the Amazon S3 bucket from
- // which you want CloudFront to get your media files for distribution.
- //
- // S3Origin is a required field
- S3Origin *S3Origin `type:"structure" required:"true"`
- // A complex type that specifies any AWS accounts that you want to permit to
- // create signed URLs for private content. If you want the distribution to use
- // signed URLs, include this element; if you want the distribution to use public
- // URLs, remove this element. For more information, see Serving Private Content
- // through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html)
- // in the Amazon CloudFront Developer Guide.
- //
- // TrustedSigners is a required field
- TrustedSigners *TrustedSigners `type:"structure" required:"true"`
- }
- // String returns the string representation
- func (s StreamingDistributionConfig) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s StreamingDistributionConfig) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *StreamingDistributionConfig) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "StreamingDistributionConfig"}
- if s.CallerReference == nil {
- invalidParams.Add(request.NewErrParamRequired("CallerReference"))
- }
- if s.Comment == nil {
- invalidParams.Add(request.NewErrParamRequired("Comment"))
- }
- if s.Enabled == nil {
- invalidParams.Add(request.NewErrParamRequired("Enabled"))
- }
- if s.S3Origin == nil {
- invalidParams.Add(request.NewErrParamRequired("S3Origin"))
- }
- if s.TrustedSigners == nil {
- invalidParams.Add(request.NewErrParamRequired("TrustedSigners"))
- }
- if s.Aliases != nil {
- if err := s.Aliases.Validate(); err != nil {
- invalidParams.AddNested("Aliases", err.(request.ErrInvalidParams))
- }
- }
- if s.Logging != nil {
- if err := s.Logging.Validate(); err != nil {
- invalidParams.AddNested("Logging", err.(request.ErrInvalidParams))
- }
- }
- if s.S3Origin != nil {
- if err := s.S3Origin.Validate(); err != nil {
- invalidParams.AddNested("S3Origin", err.(request.ErrInvalidParams))
- }
- }
- if s.TrustedSigners != nil {
- if err := s.TrustedSigners.Validate(); err != nil {
- invalidParams.AddNested("TrustedSigners", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetAliases sets the Aliases field's value.
- func (s *StreamingDistributionConfig) SetAliases(v *Aliases) *StreamingDistributionConfig {
- s.Aliases = v
- return s
- }
- // SetCallerReference sets the CallerReference field's value.
- func (s *StreamingDistributionConfig) SetCallerReference(v string) *StreamingDistributionConfig {
- s.CallerReference = &v
- return s
- }
- // SetComment sets the Comment field's value.
- func (s *StreamingDistributionConfig) SetComment(v string) *StreamingDistributionConfig {
- s.Comment = &v
- return s
- }
- // SetEnabled sets the Enabled field's value.
- func (s *StreamingDistributionConfig) SetEnabled(v bool) *StreamingDistributionConfig {
- s.Enabled = &v
- return s
- }
- // SetLogging sets the Logging field's value.
- func (s *StreamingDistributionConfig) SetLogging(v *StreamingLoggingConfig) *StreamingDistributionConfig {
- s.Logging = v
- return s
- }
- // SetPriceClass sets the PriceClass field's value.
- func (s *StreamingDistributionConfig) SetPriceClass(v string) *StreamingDistributionConfig {
- s.PriceClass = &v
- return s
- }
- // SetS3Origin sets the S3Origin field's value.
- func (s *StreamingDistributionConfig) SetS3Origin(v *S3Origin) *StreamingDistributionConfig {
- s.S3Origin = v
- return s
- }
- // SetTrustedSigners sets the TrustedSigners field's value.
- func (s *StreamingDistributionConfig) SetTrustedSigners(v *TrustedSigners) *StreamingDistributionConfig {
- s.TrustedSigners = v
- return s
- }
- // A streaming distribution Configuration and a list of tags to be associated
- // with the streaming distribution.
- type StreamingDistributionConfigWithTags struct {
- _ struct{} `type:"structure"`
- // A streaming distribution Configuration.
- //
- // StreamingDistributionConfig is a required field
- StreamingDistributionConfig *StreamingDistributionConfig `type:"structure" required:"true"`
- // A complex type that contains zero or more Tag elements.
- //
- // Tags is a required field
- Tags *Tags `type:"structure" required:"true"`
- }
- // String returns the string representation
- func (s StreamingDistributionConfigWithTags) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s StreamingDistributionConfigWithTags) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *StreamingDistributionConfigWithTags) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "StreamingDistributionConfigWithTags"}
- if s.StreamingDistributionConfig == nil {
- invalidParams.Add(request.NewErrParamRequired("StreamingDistributionConfig"))
- }
- if s.Tags == nil {
- invalidParams.Add(request.NewErrParamRequired("Tags"))
- }
- if s.StreamingDistributionConfig != nil {
- if err := s.StreamingDistributionConfig.Validate(); err != nil {
- invalidParams.AddNested("StreamingDistributionConfig", err.(request.ErrInvalidParams))
- }
- }
- if s.Tags != nil {
- if err := s.Tags.Validate(); err != nil {
- invalidParams.AddNested("Tags", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetStreamingDistributionConfig sets the StreamingDistributionConfig field's value.
- func (s *StreamingDistributionConfigWithTags) SetStreamingDistributionConfig(v *StreamingDistributionConfig) *StreamingDistributionConfigWithTags {
- s.StreamingDistributionConfig = v
- return s
- }
- // SetTags sets the Tags field's value.
- func (s *StreamingDistributionConfigWithTags) SetTags(v *Tags) *StreamingDistributionConfigWithTags {
- s.Tags = v
- return s
- }
- // A streaming distribution list.
- type StreamingDistributionList struct {
- _ struct{} `type:"structure"`
- // A flag that indicates whether more streaming distributions remain to be listed.
- // If your results were truncated, you can make a follow-up pagination request
- // using the Marker request parameter to retrieve more distributions in the
- // list.
- //
- // IsTruncated is a required field
- IsTruncated *bool `type:"boolean" required:"true"`
- // A complex type that contains one StreamingDistributionSummary element for
- // each distribution that was created by the current AWS account.
- Items []*StreamingDistributionSummary `locationNameList:"StreamingDistributionSummary" type:"list"`
- // The value you provided for the Marker request parameter.
- //
- // Marker is a required field
- Marker *string `type:"string" required:"true"`
- // The value you provided for the MaxItems request parameter.
- //
- // MaxItems is a required field
- MaxItems *int64 `type:"integer" required:"true"`
- // If IsTruncated is true, this element is present and contains the value you
- // can use for the Marker request parameter to continue listing your RTMP distributions
- // where they left off.
- NextMarker *string `type:"string"`
- // The number of streaming distributions that were created by the current AWS
- // account.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s StreamingDistributionList) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s StreamingDistributionList) GoString() string {
- return s.String()
- }
- // SetIsTruncated sets the IsTruncated field's value.
- func (s *StreamingDistributionList) SetIsTruncated(v bool) *StreamingDistributionList {
- s.IsTruncated = &v
- return s
- }
- // SetItems sets the Items field's value.
- func (s *StreamingDistributionList) SetItems(v []*StreamingDistributionSummary) *StreamingDistributionList {
- s.Items = v
- return s
- }
- // SetMarker sets the Marker field's value.
- func (s *StreamingDistributionList) SetMarker(v string) *StreamingDistributionList {
- s.Marker = &v
- return s
- }
- // SetMaxItems sets the MaxItems field's value.
- func (s *StreamingDistributionList) SetMaxItems(v int64) *StreamingDistributionList {
- s.MaxItems = &v
- return s
- }
- // SetNextMarker sets the NextMarker field's value.
- func (s *StreamingDistributionList) SetNextMarker(v string) *StreamingDistributionList {
- s.NextMarker = &v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *StreamingDistributionList) SetQuantity(v int64) *StreamingDistributionList {
- s.Quantity = &v
- return s
- }
- // A summary of the information for an Amazon CloudFront streaming distribution.
- type StreamingDistributionSummary struct {
- _ struct{} `type:"structure"`
- // The ARN (Amazon Resource Name) for the streaming distribution. For example:
- // arn:aws:cloudfront::123456789012:streaming-distribution/EDFDVBD632BHDS5,
- // where 123456789012 is your AWS account ID.
- //
- // ARN is a required field
- ARN *string `type:"string" required:"true"`
- // A complex type that contains information about CNAMEs (alternate domain names),
- // if any, for this streaming distribution.
- //
- // Aliases is a required field
- Aliases *Aliases `type:"structure" required:"true"`
- // The comment originally specified when this distribution was created.
- //
- // Comment is a required field
- Comment *string `type:"string" required:"true"`
- // The domain name corresponding to the distribution, for example, d111111abcdef8.cloudfront.net.
- //
- // DomainName is a required field
- DomainName *string `type:"string" required:"true"`
- // Whether the distribution is enabled to accept end user requests for content.
- //
- // Enabled is a required field
- Enabled *bool `type:"boolean" required:"true"`
- // The identifier for the distribution, for example, EDFDVBD632BHDS5.
- //
- // Id is a required field
- Id *string `type:"string" required:"true"`
- // The date and time the distribution was last modified.
- //
- // LastModifiedTime is a required field
- LastModifiedTime *time.Time `type:"timestamp" required:"true"`
- // PriceClass is a required field
- PriceClass *string `type:"string" required:"true" enum:"PriceClass"`
- // A complex type that contains information about the Amazon S3 bucket from
- // which you want CloudFront to get your media files for distribution.
- //
- // S3Origin is a required field
- S3Origin *S3Origin `type:"structure" required:"true"`
- // Indicates the current status of the distribution. When the status is Deployed,
- // the distribution's information is fully propagated throughout the Amazon
- // CloudFront system.
- //
- // Status is a required field
- Status *string `type:"string" required:"true"`
- // A complex type that specifies the AWS accounts, if any, that you want to
- // allow to create signed URLs for private content. If you want to require signed
- // URLs in requests for objects in the target origin that match the PathPattern
- // for this cache behavior, specify true for Enabled, and specify the applicable
- // values for Quantity and Items.If you don't want to require signed URLs in
- // requests for objects that match PathPattern, specify false for Enabled and
- // 0 for Quantity. Omit Items. To add, change, or remove one or more trusted
- // signers, change Enabled to true (if it's currently false), change Quantity
- // as applicable, and specify all of the trusted signers that you want to include
- // in the updated distribution.
- //
- // TrustedSigners is a required field
- TrustedSigners *TrustedSigners `type:"structure" required:"true"`
- }
- // String returns the string representation
- func (s StreamingDistributionSummary) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s StreamingDistributionSummary) GoString() string {
- return s.String()
- }
- // SetARN sets the ARN field's value.
- func (s *StreamingDistributionSummary) SetARN(v string) *StreamingDistributionSummary {
- s.ARN = &v
- return s
- }
- // SetAliases sets the Aliases field's value.
- func (s *StreamingDistributionSummary) SetAliases(v *Aliases) *StreamingDistributionSummary {
- s.Aliases = v
- return s
- }
- // SetComment sets the Comment field's value.
- func (s *StreamingDistributionSummary) SetComment(v string) *StreamingDistributionSummary {
- s.Comment = &v
- return s
- }
- // SetDomainName sets the DomainName field's value.
- func (s *StreamingDistributionSummary) SetDomainName(v string) *StreamingDistributionSummary {
- s.DomainName = &v
- return s
- }
- // SetEnabled sets the Enabled field's value.
- func (s *StreamingDistributionSummary) SetEnabled(v bool) *StreamingDistributionSummary {
- s.Enabled = &v
- return s
- }
- // SetId sets the Id field's value.
- func (s *StreamingDistributionSummary) SetId(v string) *StreamingDistributionSummary {
- s.Id = &v
- return s
- }
- // SetLastModifiedTime sets the LastModifiedTime field's value.
- func (s *StreamingDistributionSummary) SetLastModifiedTime(v time.Time) *StreamingDistributionSummary {
- s.LastModifiedTime = &v
- return s
- }
- // SetPriceClass sets the PriceClass field's value.
- func (s *StreamingDistributionSummary) SetPriceClass(v string) *StreamingDistributionSummary {
- s.PriceClass = &v
- return s
- }
- // SetS3Origin sets the S3Origin field's value.
- func (s *StreamingDistributionSummary) SetS3Origin(v *S3Origin) *StreamingDistributionSummary {
- s.S3Origin = v
- return s
- }
- // SetStatus sets the Status field's value.
- func (s *StreamingDistributionSummary) SetStatus(v string) *StreamingDistributionSummary {
- s.Status = &v
- return s
- }
- // SetTrustedSigners sets the TrustedSigners field's value.
- func (s *StreamingDistributionSummary) SetTrustedSigners(v *TrustedSigners) *StreamingDistributionSummary {
- s.TrustedSigners = v
- return s
- }
- // A complex type that controls whether access logs are written for this streaming
- // distribution.
- type StreamingLoggingConfig struct {
- _ struct{} `type:"structure"`
- // The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.
- //
- // Bucket is a required field
- Bucket *string `type:"string" required:"true"`
- // Specifies whether you want CloudFront to save access logs to an Amazon S3
- // bucket. If you don't want to enable logging when you create a streaming distribution
- // or if you want to disable logging for an existing streaming distribution,
- // specify false for Enabled, and specify empty Bucket and Prefix elements.
- // If you specify false for Enabled but you specify values for Bucket and Prefix,
- // the values are automatically deleted.
- //
- // Enabled is a required field
- Enabled *bool `type:"boolean" required:"true"`
- // An optional string that you want CloudFront to prefix to the access log filenames
- // for this streaming distribution, for example, myprefix/. If you want to enable
- // logging, but you don't want to specify a prefix, you still must include an
- // empty Prefix element in the Logging element.
- //
- // Prefix is a required field
- Prefix *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s StreamingLoggingConfig) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s StreamingLoggingConfig) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *StreamingLoggingConfig) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "StreamingLoggingConfig"}
- if s.Bucket == nil {
- invalidParams.Add(request.NewErrParamRequired("Bucket"))
- }
- if s.Enabled == nil {
- invalidParams.Add(request.NewErrParamRequired("Enabled"))
- }
- if s.Prefix == nil {
- invalidParams.Add(request.NewErrParamRequired("Prefix"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetBucket sets the Bucket field's value.
- func (s *StreamingLoggingConfig) SetBucket(v string) *StreamingLoggingConfig {
- s.Bucket = &v
- return s
- }
- // SetEnabled sets the Enabled field's value.
- func (s *StreamingLoggingConfig) SetEnabled(v bool) *StreamingLoggingConfig {
- s.Enabled = &v
- return s
- }
- // SetPrefix sets the Prefix field's value.
- func (s *StreamingLoggingConfig) SetPrefix(v string) *StreamingLoggingConfig {
- s.Prefix = &v
- return s
- }
- // A complex type that contains Tag key and Tag value.
- type Tag struct {
- _ struct{} `type:"structure"`
- // A string that contains Tag key.
- //
- // The string length should be between 1 and 128 characters. Valid characters
- // include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.
- //
- // Key is a required field
- Key *string `min:"1" type:"string" required:"true"`
- // A string that contains an optional Tag value.
- //
- // The string length should be between 0 and 256 characters. Valid characters
- // include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.
- Value *string `type:"string"`
- }
- // String returns the string representation
- func (s Tag) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Tag) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *Tag) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "Tag"}
- if s.Key == nil {
- invalidParams.Add(request.NewErrParamRequired("Key"))
- }
- if s.Key != nil && len(*s.Key) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Key", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetKey sets the Key field's value.
- func (s *Tag) SetKey(v string) *Tag {
- s.Key = &v
- return s
- }
- // SetValue sets the Value field's value.
- func (s *Tag) SetValue(v string) *Tag {
- s.Value = &v
- return s
- }
- // A complex type that contains zero or more Tag elements.
- type TagKeys struct {
- _ struct{} `type:"structure"`
- // A complex type that contains Tag key elements.
- Items []*string `locationNameList:"Key" type:"list"`
- }
- // String returns the string representation
- func (s TagKeys) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s TagKeys) GoString() string {
- return s.String()
- }
- // SetItems sets the Items field's value.
- func (s *TagKeys) SetItems(v []*string) *TagKeys {
- s.Items = v
- return s
- }
- // The request to add tags to a CloudFront resource.
- type TagResourceInput struct {
- _ struct{} `type:"structure" payload:"Tags"`
- // An ARN of a CloudFront resource.
- //
- // Resource is a required field
- Resource *string `location:"querystring" locationName:"Resource" type:"string" required:"true"`
- // A complex type that contains zero or more Tag elements.
- //
- // Tags is a required field
- Tags *Tags `locationName:"Tags" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2018-11-05/"`
- }
- // String returns the string representation
- func (s TagResourceInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s TagResourceInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *TagResourceInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
- if s.Resource == nil {
- invalidParams.Add(request.NewErrParamRequired("Resource"))
- }
- if s.Tags == nil {
- invalidParams.Add(request.NewErrParamRequired("Tags"))
- }
- if s.Tags != nil {
- if err := s.Tags.Validate(); err != nil {
- invalidParams.AddNested("Tags", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetResource sets the Resource field's value.
- func (s *TagResourceInput) SetResource(v string) *TagResourceInput {
- s.Resource = &v
- return s
- }
- // SetTags sets the Tags field's value.
- func (s *TagResourceInput) SetTags(v *Tags) *TagResourceInput {
- s.Tags = v
- return s
- }
- type TagResourceOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s TagResourceOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s TagResourceOutput) GoString() string {
- return s.String()
- }
- // A complex type that contains zero or more Tag elements.
- type Tags struct {
- _ struct{} `type:"structure"`
- // A complex type that contains Tag elements.
- Items []*Tag `locationNameList:"Tag" type:"list"`
- }
- // String returns the string representation
- func (s Tags) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Tags) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *Tags) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "Tags"}
- if s.Items != nil {
- for i, v := range s.Items {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Items", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetItems sets the Items field's value.
- func (s *Tags) SetItems(v []*Tag) *Tags {
- s.Items = v
- return s
- }
- // A complex type that specifies the AWS accounts, if any, that you want to
- // allow to create signed URLs for private content.
- //
- // If you want to require signed URLs in requests for objects in the target
- // origin that match the PathPattern for this cache behavior, specify true for
- // Enabled, and specify the applicable values for Quantity and Items. For more
- // information, see Serving Private Content through CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html)
- // in the Amazon Amazon CloudFront Developer Guide.
- //
- // If you don't want to require signed URLs in requests for objects that match
- // PathPattern, specify false for Enabled and 0 for Quantity. Omit Items.
- //
- // To add, change, or remove one or more trusted signers, change Enabled to
- // true (if it's currently false), change Quantity as applicable, and specify
- // all of the trusted signers that you want to include in the updated distribution.
- //
- // For more information about updating the distribution configuration, see DistributionConfig
- // .
- type TrustedSigners struct {
- _ struct{} `type:"structure"`
- // Specifies whether you want to require viewers to use signed URLs to access
- // the files specified by PathPattern and TargetOriginId.
- //
- // Enabled is a required field
- Enabled *bool `type:"boolean" required:"true"`
- // Optional: A complex type that contains trusted signers for this cache behavior.
- // If Quantity is 0, you can omit Items.
- Items []*string `locationNameList:"AwsAccountNumber" type:"list"`
- // The number of trusted signers for this cache behavior.
- //
- // Quantity is a required field
- Quantity *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s TrustedSigners) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s TrustedSigners) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *TrustedSigners) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "TrustedSigners"}
- if s.Enabled == nil {
- invalidParams.Add(request.NewErrParamRequired("Enabled"))
- }
- if s.Quantity == nil {
- invalidParams.Add(request.NewErrParamRequired("Quantity"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetEnabled sets the Enabled field's value.
- func (s *TrustedSigners) SetEnabled(v bool) *TrustedSigners {
- s.Enabled = &v
- return s
- }
- // SetItems sets the Items field's value.
- func (s *TrustedSigners) SetItems(v []*string) *TrustedSigners {
- s.Items = v
- return s
- }
- // SetQuantity sets the Quantity field's value.
- func (s *TrustedSigners) SetQuantity(v int64) *TrustedSigners {
- s.Quantity = &v
- return s
- }
- // The request to remove tags from a CloudFront resource.
- type UntagResourceInput struct {
- _ struct{} `type:"structure" payload:"TagKeys"`
- // An ARN of a CloudFront resource.
- //
- // Resource is a required field
- Resource *string `location:"querystring" locationName:"Resource" type:"string" required:"true"`
- // A complex type that contains zero or more Tag key elements.
- //
- // TagKeys is a required field
- TagKeys *TagKeys `locationName:"TagKeys" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2018-11-05/"`
- }
- // String returns the string representation
- func (s UntagResourceInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s UntagResourceInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *UntagResourceInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
- if s.Resource == nil {
- invalidParams.Add(request.NewErrParamRequired("Resource"))
- }
- if s.TagKeys == nil {
- invalidParams.Add(request.NewErrParamRequired("TagKeys"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetResource sets the Resource field's value.
- func (s *UntagResourceInput) SetResource(v string) *UntagResourceInput {
- s.Resource = &v
- return s
- }
- // SetTagKeys sets the TagKeys field's value.
- func (s *UntagResourceInput) SetTagKeys(v *TagKeys) *UntagResourceInput {
- s.TagKeys = v
- return s
- }
- type UntagResourceOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s UntagResourceOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s UntagResourceOutput) GoString() string {
- return s.String()
- }
- // The request to update an origin access identity.
- type UpdateCloudFrontOriginAccessIdentityInput struct {
- _ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentityConfig"`
- // The identity's configuration information.
- //
- // CloudFrontOriginAccessIdentityConfig is a required field
- CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `locationName:"CloudFrontOriginAccessIdentityConfig" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2018-11-05/"`
- // The identity's id.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- // The value of the ETag header that you received when retrieving the identity's
- // configuration. For example: E2QWRUHAPOMQZL.
- IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
- }
- // String returns the string representation
- func (s UpdateCloudFrontOriginAccessIdentityInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s UpdateCloudFrontOriginAccessIdentityInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *UpdateCloudFrontOriginAccessIdentityInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "UpdateCloudFrontOriginAccessIdentityInput"}
- if s.CloudFrontOriginAccessIdentityConfig == nil {
- invalidParams.Add(request.NewErrParamRequired("CloudFrontOriginAccessIdentityConfig"))
- }
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if s.CloudFrontOriginAccessIdentityConfig != nil {
- if err := s.CloudFrontOriginAccessIdentityConfig.Validate(); err != nil {
- invalidParams.AddNested("CloudFrontOriginAccessIdentityConfig", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetCloudFrontOriginAccessIdentityConfig sets the CloudFrontOriginAccessIdentityConfig field's value.
- func (s *UpdateCloudFrontOriginAccessIdentityInput) SetCloudFrontOriginAccessIdentityConfig(v *OriginAccessIdentityConfig) *UpdateCloudFrontOriginAccessIdentityInput {
- s.CloudFrontOriginAccessIdentityConfig = v
- return s
- }
- // SetId sets the Id field's value.
- func (s *UpdateCloudFrontOriginAccessIdentityInput) SetId(v string) *UpdateCloudFrontOriginAccessIdentityInput {
- s.Id = &v
- return s
- }
- // SetIfMatch sets the IfMatch field's value.
- func (s *UpdateCloudFrontOriginAccessIdentityInput) SetIfMatch(v string) *UpdateCloudFrontOriginAccessIdentityInput {
- s.IfMatch = &v
- return s
- }
- // The returned result of the corresponding request.
- type UpdateCloudFrontOriginAccessIdentityOutput struct {
- _ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentity"`
- // The origin access identity's information.
- CloudFrontOriginAccessIdentity *OriginAccessIdentity `type:"structure"`
- // The current version of the configuration. For example: E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- }
- // String returns the string representation
- func (s UpdateCloudFrontOriginAccessIdentityOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s UpdateCloudFrontOriginAccessIdentityOutput) GoString() string {
- return s.String()
- }
- // SetCloudFrontOriginAccessIdentity sets the CloudFrontOriginAccessIdentity field's value.
- func (s *UpdateCloudFrontOriginAccessIdentityOutput) SetCloudFrontOriginAccessIdentity(v *OriginAccessIdentity) *UpdateCloudFrontOriginAccessIdentityOutput {
- s.CloudFrontOriginAccessIdentity = v
- return s
- }
- // SetETag sets the ETag field's value.
- func (s *UpdateCloudFrontOriginAccessIdentityOutput) SetETag(v string) *UpdateCloudFrontOriginAccessIdentityOutput {
- s.ETag = &v
- return s
- }
- // The request to update a distribution.
- type UpdateDistributionInput struct {
- _ struct{} `type:"structure" payload:"DistributionConfig"`
- // The distribution's configuration information.
- //
- // DistributionConfig is a required field
- DistributionConfig *DistributionConfig `locationName:"DistributionConfig" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2018-11-05/"`
- // The distribution's id.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- // The value of the ETag header that you received when retrieving the distribution's
- // configuration. For example: E2QWRUHAPOMQZL.
- IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
- }
- // String returns the string representation
- func (s UpdateDistributionInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s UpdateDistributionInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *UpdateDistributionInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "UpdateDistributionInput"}
- if s.DistributionConfig == nil {
- invalidParams.Add(request.NewErrParamRequired("DistributionConfig"))
- }
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if s.DistributionConfig != nil {
- if err := s.DistributionConfig.Validate(); err != nil {
- invalidParams.AddNested("DistributionConfig", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetDistributionConfig sets the DistributionConfig field's value.
- func (s *UpdateDistributionInput) SetDistributionConfig(v *DistributionConfig) *UpdateDistributionInput {
- s.DistributionConfig = v
- return s
- }
- // SetId sets the Id field's value.
- func (s *UpdateDistributionInput) SetId(v string) *UpdateDistributionInput {
- s.Id = &v
- return s
- }
- // SetIfMatch sets the IfMatch field's value.
- func (s *UpdateDistributionInput) SetIfMatch(v string) *UpdateDistributionInput {
- s.IfMatch = &v
- return s
- }
- // The returned result of the corresponding request.
- type UpdateDistributionOutput struct {
- _ struct{} `type:"structure" payload:"Distribution"`
- // The distribution's information.
- Distribution *Distribution `type:"structure"`
- // The current version of the configuration. For example: E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- }
- // String returns the string representation
- func (s UpdateDistributionOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s UpdateDistributionOutput) GoString() string {
- return s.String()
- }
- // SetDistribution sets the Distribution field's value.
- func (s *UpdateDistributionOutput) SetDistribution(v *Distribution) *UpdateDistributionOutput {
- s.Distribution = v
- return s
- }
- // SetETag sets the ETag field's value.
- func (s *UpdateDistributionOutput) SetETag(v string) *UpdateDistributionOutput {
- s.ETag = &v
- return s
- }
- type UpdateFieldLevelEncryptionConfigInput struct {
- _ struct{} `type:"structure" payload:"FieldLevelEncryptionConfig"`
- // Request to update a field-level encryption configuration.
- //
- // FieldLevelEncryptionConfig is a required field
- FieldLevelEncryptionConfig *FieldLevelEncryptionConfig `locationName:"FieldLevelEncryptionConfig" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2018-11-05/"`
- // The ID of the configuration you want to update.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- // The value of the ETag header that you received when retrieving the configuration
- // identity to update. For example: E2QWRUHAPOMQZL.
- IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
- }
- // String returns the string representation
- func (s UpdateFieldLevelEncryptionConfigInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s UpdateFieldLevelEncryptionConfigInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *UpdateFieldLevelEncryptionConfigInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "UpdateFieldLevelEncryptionConfigInput"}
- if s.FieldLevelEncryptionConfig == nil {
- invalidParams.Add(request.NewErrParamRequired("FieldLevelEncryptionConfig"))
- }
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if s.FieldLevelEncryptionConfig != nil {
- if err := s.FieldLevelEncryptionConfig.Validate(); err != nil {
- invalidParams.AddNested("FieldLevelEncryptionConfig", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetFieldLevelEncryptionConfig sets the FieldLevelEncryptionConfig field's value.
- func (s *UpdateFieldLevelEncryptionConfigInput) SetFieldLevelEncryptionConfig(v *FieldLevelEncryptionConfig) *UpdateFieldLevelEncryptionConfigInput {
- s.FieldLevelEncryptionConfig = v
- return s
- }
- // SetId sets the Id field's value.
- func (s *UpdateFieldLevelEncryptionConfigInput) SetId(v string) *UpdateFieldLevelEncryptionConfigInput {
- s.Id = &v
- return s
- }
- // SetIfMatch sets the IfMatch field's value.
- func (s *UpdateFieldLevelEncryptionConfigInput) SetIfMatch(v string) *UpdateFieldLevelEncryptionConfigInput {
- s.IfMatch = &v
- return s
- }
- type UpdateFieldLevelEncryptionConfigOutput struct {
- _ struct{} `type:"structure" payload:"FieldLevelEncryption"`
- // The value of the ETag header that you received when updating the configuration.
- // For example: E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // Return the results of updating the configuration.
- FieldLevelEncryption *FieldLevelEncryption `type:"structure"`
- }
- // String returns the string representation
- func (s UpdateFieldLevelEncryptionConfigOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s UpdateFieldLevelEncryptionConfigOutput) GoString() string {
- return s.String()
- }
- // SetETag sets the ETag field's value.
- func (s *UpdateFieldLevelEncryptionConfigOutput) SetETag(v string) *UpdateFieldLevelEncryptionConfigOutput {
- s.ETag = &v
- return s
- }
- // SetFieldLevelEncryption sets the FieldLevelEncryption field's value.
- func (s *UpdateFieldLevelEncryptionConfigOutput) SetFieldLevelEncryption(v *FieldLevelEncryption) *UpdateFieldLevelEncryptionConfigOutput {
- s.FieldLevelEncryption = v
- return s
- }
- type UpdateFieldLevelEncryptionProfileInput struct {
- _ struct{} `type:"structure" payload:"FieldLevelEncryptionProfileConfig"`
- // Request to update a field-level encryption profile.
- //
- // FieldLevelEncryptionProfileConfig is a required field
- FieldLevelEncryptionProfileConfig *FieldLevelEncryptionProfileConfig `locationName:"FieldLevelEncryptionProfileConfig" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2018-11-05/"`
- // The ID of the field-level encryption profile request.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- // The value of the ETag header that you received when retrieving the profile
- // identity to update. For example: E2QWRUHAPOMQZL.
- IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
- }
- // String returns the string representation
- func (s UpdateFieldLevelEncryptionProfileInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s UpdateFieldLevelEncryptionProfileInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *UpdateFieldLevelEncryptionProfileInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "UpdateFieldLevelEncryptionProfileInput"}
- if s.FieldLevelEncryptionProfileConfig == nil {
- invalidParams.Add(request.NewErrParamRequired("FieldLevelEncryptionProfileConfig"))
- }
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if s.FieldLevelEncryptionProfileConfig != nil {
- if err := s.FieldLevelEncryptionProfileConfig.Validate(); err != nil {
- invalidParams.AddNested("FieldLevelEncryptionProfileConfig", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetFieldLevelEncryptionProfileConfig sets the FieldLevelEncryptionProfileConfig field's value.
- func (s *UpdateFieldLevelEncryptionProfileInput) SetFieldLevelEncryptionProfileConfig(v *FieldLevelEncryptionProfileConfig) *UpdateFieldLevelEncryptionProfileInput {
- s.FieldLevelEncryptionProfileConfig = v
- return s
- }
- // SetId sets the Id field's value.
- func (s *UpdateFieldLevelEncryptionProfileInput) SetId(v string) *UpdateFieldLevelEncryptionProfileInput {
- s.Id = &v
- return s
- }
- // SetIfMatch sets the IfMatch field's value.
- func (s *UpdateFieldLevelEncryptionProfileInput) SetIfMatch(v string) *UpdateFieldLevelEncryptionProfileInput {
- s.IfMatch = &v
- return s
- }
- type UpdateFieldLevelEncryptionProfileOutput struct {
- _ struct{} `type:"structure" payload:"FieldLevelEncryptionProfile"`
- // The result of the field-level encryption profile request.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // Return the results of updating the profile.
- FieldLevelEncryptionProfile *FieldLevelEncryptionProfile `type:"structure"`
- }
- // String returns the string representation
- func (s UpdateFieldLevelEncryptionProfileOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s UpdateFieldLevelEncryptionProfileOutput) GoString() string {
- return s.String()
- }
- // SetETag sets the ETag field's value.
- func (s *UpdateFieldLevelEncryptionProfileOutput) SetETag(v string) *UpdateFieldLevelEncryptionProfileOutput {
- s.ETag = &v
- return s
- }
- // SetFieldLevelEncryptionProfile sets the FieldLevelEncryptionProfile field's value.
- func (s *UpdateFieldLevelEncryptionProfileOutput) SetFieldLevelEncryptionProfile(v *FieldLevelEncryptionProfile) *UpdateFieldLevelEncryptionProfileOutput {
- s.FieldLevelEncryptionProfile = v
- return s
- }
- type UpdatePublicKeyInput struct {
- _ struct{} `type:"structure" payload:"PublicKeyConfig"`
- // ID of the public key to be updated.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- // The value of the ETag header that you received when retrieving the public
- // key to update. For example: E2QWRUHAPOMQZL.
- IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
- // Request to update public key information.
- //
- // PublicKeyConfig is a required field
- PublicKeyConfig *PublicKeyConfig `locationName:"PublicKeyConfig" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2018-11-05/"`
- }
- // String returns the string representation
- func (s UpdatePublicKeyInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s UpdatePublicKeyInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *UpdatePublicKeyInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "UpdatePublicKeyInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if s.PublicKeyConfig == nil {
- invalidParams.Add(request.NewErrParamRequired("PublicKeyConfig"))
- }
- if s.PublicKeyConfig != nil {
- if err := s.PublicKeyConfig.Validate(); err != nil {
- invalidParams.AddNested("PublicKeyConfig", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *UpdatePublicKeyInput) SetId(v string) *UpdatePublicKeyInput {
- s.Id = &v
- return s
- }
- // SetIfMatch sets the IfMatch field's value.
- func (s *UpdatePublicKeyInput) SetIfMatch(v string) *UpdatePublicKeyInput {
- s.IfMatch = &v
- return s
- }
- // SetPublicKeyConfig sets the PublicKeyConfig field's value.
- func (s *UpdatePublicKeyInput) SetPublicKeyConfig(v *PublicKeyConfig) *UpdatePublicKeyInput {
- s.PublicKeyConfig = v
- return s
- }
- type UpdatePublicKeyOutput struct {
- _ struct{} `type:"structure" payload:"PublicKey"`
- // The current version of the update public key result. For example: E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // Return the results of updating the public key.
- PublicKey *PublicKey `type:"structure"`
- }
- // String returns the string representation
- func (s UpdatePublicKeyOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s UpdatePublicKeyOutput) GoString() string {
- return s.String()
- }
- // SetETag sets the ETag field's value.
- func (s *UpdatePublicKeyOutput) SetETag(v string) *UpdatePublicKeyOutput {
- s.ETag = &v
- return s
- }
- // SetPublicKey sets the PublicKey field's value.
- func (s *UpdatePublicKeyOutput) SetPublicKey(v *PublicKey) *UpdatePublicKeyOutput {
- s.PublicKey = v
- return s
- }
- // The request to update a streaming distribution.
- type UpdateStreamingDistributionInput struct {
- _ struct{} `type:"structure" payload:"StreamingDistributionConfig"`
- // The streaming distribution's id.
- //
- // Id is a required field
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- // The value of the ETag header that you received when retrieving the streaming
- // distribution's configuration. For example: E2QWRUHAPOMQZL.
- IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
- // The streaming distribution's configuration information.
- //
- // StreamingDistributionConfig is a required field
- StreamingDistributionConfig *StreamingDistributionConfig `locationName:"StreamingDistributionConfig" type:"structure" required:"true" xmlURI:"http://cloudfront.amazonaws.com/doc/2018-11-05/"`
- }
- // String returns the string representation
- func (s UpdateStreamingDistributionInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s UpdateStreamingDistributionInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *UpdateStreamingDistributionInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "UpdateStreamingDistributionInput"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Id != nil && len(*s.Id) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Id", 1))
- }
- if s.StreamingDistributionConfig == nil {
- invalidParams.Add(request.NewErrParamRequired("StreamingDistributionConfig"))
- }
- if s.StreamingDistributionConfig != nil {
- if err := s.StreamingDistributionConfig.Validate(); err != nil {
- invalidParams.AddNested("StreamingDistributionConfig", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // SetId sets the Id field's value.
- func (s *UpdateStreamingDistributionInput) SetId(v string) *UpdateStreamingDistributionInput {
- s.Id = &v
- return s
- }
- // SetIfMatch sets the IfMatch field's value.
- func (s *UpdateStreamingDistributionInput) SetIfMatch(v string) *UpdateStreamingDistributionInput {
- s.IfMatch = &v
- return s
- }
- // SetStreamingDistributionConfig sets the StreamingDistributionConfig field's value.
- func (s *UpdateStreamingDistributionInput) SetStreamingDistributionConfig(v *StreamingDistributionConfig) *UpdateStreamingDistributionInput {
- s.StreamingDistributionConfig = v
- return s
- }
- // The returned result of the corresponding request.
- type UpdateStreamingDistributionOutput struct {
- _ struct{} `type:"structure" payload:"StreamingDistribution"`
- // The current version of the configuration. For example: E2QWRUHAPOMQZL.
- ETag *string `location:"header" locationName:"ETag" type:"string"`
- // The streaming distribution's information.
- StreamingDistribution *StreamingDistribution `type:"structure"`
- }
- // String returns the string representation
- func (s UpdateStreamingDistributionOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s UpdateStreamingDistributionOutput) GoString() string {
- return s.String()
- }
- // SetETag sets the ETag field's value.
- func (s *UpdateStreamingDistributionOutput) SetETag(v string) *UpdateStreamingDistributionOutput {
- s.ETag = &v
- return s
- }
- // SetStreamingDistribution sets the StreamingDistribution field's value.
- func (s *UpdateStreamingDistributionOutput) SetStreamingDistribution(v *StreamingDistribution) *UpdateStreamingDistributionOutput {
- s.StreamingDistribution = v
- return s
- }
- // A complex type that specifies the following:
- //
- // * Whether you want viewers to use HTTP or HTTPS to request your objects.
- //
- // * If you want viewers to use HTTPS, whether you're using an alternate
- // domain name such as example.com or the CloudFront domain name for your
- // distribution, such as d111111abcdef8.cloudfront.net.
- //
- // * If you're using an alternate domain name, whether AWS Certificate Manager
- // (ACM) provided the certificate, or you purchased a certificate from a
- // third-party certificate authority and imported it into ACM or uploaded
- // it to the IAM certificate store.
- //
- // You must specify only one of the following values:
- //
- // * ViewerCertificate$ACMCertificateArn
- //
- // * ViewerCertificate$IAMCertificateId
- //
- // * ViewerCertificate$CloudFrontDefaultCertificate
- //
- // Don't specify false for CloudFrontDefaultCertificate.
- //
- // If you want viewers to use HTTP instead of HTTPS to request your objects:
- // Specify the following value:
- //
- // <CloudFrontDefaultCertificate>true<CloudFrontDefaultCertificate>
- //
- // In addition, specify allow-all for ViewerProtocolPolicy for all of your cache
- // behaviors.
- //
- // If you want viewers to use HTTPS to request your objects: Choose the type
- // of certificate that you want to use based on whether you're using an alternate
- // domain name for your objects or the CloudFront domain name:
- //
- // * If you're using an alternate domain name, such as example.com: Specify
- // one of the following values, depending on whether ACM provided your certificate
- // or you purchased your certificate from third-party certificate authority:
- //
- // <ACMCertificateArn>ARN for ACM SSL/TLS certificate<ACMCertificateArn> where
- // ARN for ACM SSL/TLS certificate is the ARN for the ACM SSL/TLS certificate
- // that you want to use for this distribution.
- //
- // <IAMCertificateId>IAM certificate ID<IAMCertificateId> where IAM certificate
- // ID is the ID that IAM returned when you added the certificate to the IAM
- // certificate store.
- //
- // If you specify ACMCertificateArn or IAMCertificateId, you must also specify
- // a value for SSLSupportMethod.
- //
- // If you choose to use an ACM certificate or a certificate in the IAM certificate
- // store, we recommend that you use only an alternate domain name in your
- // object URLs (https://example.com/logo.jpg). If you use the domain name
- // that is associated with your CloudFront distribution (such as https://d111111abcdef8.cloudfront.net/logo.jpg)
- // and the viewer supports SNI, then CloudFront behaves normally. However,
- // if the browser does not support SNI, the user's experience depends on
- // the value that you choose for SSLSupportMethod:
- //
- // vip: The viewer displays a warning because there is a mismatch between the
- // CloudFront domain name and the domain name in your SSL/TLS certificate.
- //
- // sni-only: CloudFront drops the connection with the browser without returning
- // the object.
- //
- // * If you're using the CloudFront domain name for your distribution, such
- // as d111111abcdef8.cloudfront.net: Specify the following value:
- //
- // <CloudFrontDefaultCertificate>true<CloudFrontDefaultCertificate>
- //
- // If you want viewers to use HTTPS, you must also specify one of the following
- // values in your cache behaviors:
- //
- // * <ViewerProtocolPolicy>https-only<ViewerProtocolPolicy>
- //
- // * <ViewerProtocolPolicy>redirect-to-https<ViewerProtocolPolicy>
- //
- // You can also optionally require that CloudFront use HTTPS to communicate
- // with your origin by specifying one of the following values for the applicable
- // origins:
- //
- // * <OriginProtocolPolicy>https-only<OriginProtocolPolicy>
- //
- // * <OriginProtocolPolicy>match-viewer<OriginProtocolPolicy>
- //
- // For more information, see Using Alternate Domain Names and HTTPS (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html#CNAMEsAndHTTPS)
- // in the Amazon CloudFront Developer Guide.
- type ViewerCertificate struct {
- _ struct{} `type:"structure"`
- // For information about how and when to use ACMCertificateArn, see ViewerCertificate.
- ACMCertificateArn *string `type:"string"`
- // This field has been deprecated. Use one of the following fields instead:
- //
- // * ViewerCertificate$ACMCertificateArn
- //
- // * ViewerCertificate$IAMCertificateId
- //
- // * ViewerCertificate$CloudFrontDefaultCertificate
- //
- // Deprecated: Certificate has been deprecated
- Certificate *string `deprecated:"true" type:"string"`
- // This field has been deprecated. Use one of the following fields instead:
- //
- // * ViewerCertificate$ACMCertificateArn
- //
- // * ViewerCertificate$IAMCertificateId
- //
- // * ViewerCertificate$CloudFrontDefaultCertificate
- //
- // Deprecated: CertificateSource has been deprecated
- CertificateSource *string `deprecated:"true" type:"string" enum:"CertificateSource"`
- // For information about how and when to use CloudFrontDefaultCertificate, see
- // ViewerCertificate.
- CloudFrontDefaultCertificate *bool `type:"boolean"`
- // For information about how and when to use IAMCertificateId, see ViewerCertificate.
- IAMCertificateId *string `type:"string"`
- // Specify the security policy that you want CloudFront to use for HTTPS connections.
- // A security policy determines two settings:
- //
- // * The minimum SSL/TLS protocol that CloudFront uses to communicate with
- // viewers
- //
- // * The cipher that CloudFront uses to encrypt the content that it returns
- // to viewers
- //
- // On the CloudFront console, this setting is called Security policy.
- //
- // We recommend that you specify TLSv1.1_2016 unless your users are using browsers
- // or devices that do not support TLSv1.1 or later.
- //
- // When both of the following are true, you must specify TLSv1 or later for
- // the security policy:
- //
- // * You're using a custom certificate: you specified a value for ACMCertificateArn
- // or for IAMCertificateId
- //
- // * You're using SNI: you specified sni-only for SSLSupportMethod
- //
- // If you specify true for CloudFrontDefaultCertificate, CloudFront automatically
- // sets the security policy to TLSv1 regardless of the value that you specify
- // for MinimumProtocolVersion.
- //
- // For information about the relationship between the security policy that you
- // choose and the protocols and ciphers that CloudFront uses to communicate
- // with viewers, see Supported SSL/TLS Protocols and Ciphers for Communication
- // Between Viewers and CloudFront (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-viewer-protocols-ciphers.html#secure-connections-supported-ciphers)
- // in the Amazon CloudFront Developer Guide.
- MinimumProtocolVersion *string `type:"string" enum:"MinimumProtocolVersion"`
- // If you specify a value for ViewerCertificate$ACMCertificateArn or for ViewerCertificate$IAMCertificateId,
- // you must also specify how you want CloudFront to serve HTTPS requests: using
- // a method that works for all clients or one that works for most clients:
- //
- // * vip: CloudFront uses dedicated IP addresses for your content and can
- // respond to HTTPS requests from any viewer. However, you will incur additional
- // monthly charges.
- //
- // * sni-only: CloudFront can respond to HTTPS requests from viewers that
- // support Server Name Indication (SNI). All modern browsers support SNI,
- // but some browsers still in use don't support SNI. If some of your users'
- // browsers don't support SNI, we recommend that you do one of the following:
- //
- // Use the vip option (dedicated IP addresses) instead of sni-only.
- //
- // Use the CloudFront SSL/TLS certificate instead of a custom certificate. This
- // requires that you use the CloudFront domain name of your distribution
- // in the URLs for your objects, for example, https://d111111abcdef8.cloudfront.net/logo.png.
- //
- // If you can control which browser your users use, upgrade the browser to one
- // that supports SNI.
- //
- // Use HTTP instead of HTTPS.
- //
- // Don't specify a value for SSLSupportMethod if you specified <CloudFrontDefaultCertificate>true<CloudFrontDefaultCertificate>.
- //
- // For more information, see Using Alternate Domain Names and HTTPS (http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html#CNAMEsAndHTTPS.html)
- // in the Amazon CloudFront Developer Guide.
- SSLSupportMethod *string `type:"string" enum:"SSLSupportMethod"`
- }
- // String returns the string representation
- func (s ViewerCertificate) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ViewerCertificate) GoString() string {
- return s.String()
- }
- // SetACMCertificateArn sets the ACMCertificateArn field's value.
- func (s *ViewerCertificate) SetACMCertificateArn(v string) *ViewerCertificate {
- s.ACMCertificateArn = &v
- return s
- }
- // SetCertificate sets the Certificate field's value.
- func (s *ViewerCertificate) SetCertificate(v string) *ViewerCertificate {
- s.Certificate = &v
- return s
- }
- // SetCertificateSource sets the CertificateSource field's value.
- func (s *ViewerCertificate) SetCertificateSource(v string) *ViewerCertificate {
- s.CertificateSource = &v
- return s
- }
- // SetCloudFrontDefaultCertificate sets the CloudFrontDefaultCertificate field's value.
- func (s *ViewerCertificate) SetCloudFrontDefaultCertificate(v bool) *ViewerCertificate {
- s.CloudFrontDefaultCertificate = &v
- return s
- }
- // SetIAMCertificateId sets the IAMCertificateId field's value.
- func (s *ViewerCertificate) SetIAMCertificateId(v string) *ViewerCertificate {
- s.IAMCertificateId = &v
- return s
- }
- // SetMinimumProtocolVersion sets the MinimumProtocolVersion field's value.
- func (s *ViewerCertificate) SetMinimumProtocolVersion(v string) *ViewerCertificate {
- s.MinimumProtocolVersion = &v
- return s
- }
- // SetSSLSupportMethod sets the SSLSupportMethod field's value.
- func (s *ViewerCertificate) SetSSLSupportMethod(v string) *ViewerCertificate {
- s.SSLSupportMethod = &v
- return s
- }
- const (
- // CertificateSourceCloudfront is a CertificateSource enum value
- CertificateSourceCloudfront = "cloudfront"
- // CertificateSourceIam is a CertificateSource enum value
- CertificateSourceIam = "iam"
- // CertificateSourceAcm is a CertificateSource enum value
- CertificateSourceAcm = "acm"
- )
- const (
- // EventTypeViewerRequest is a EventType enum value
- EventTypeViewerRequest = "viewer-request"
- // EventTypeViewerResponse is a EventType enum value
- EventTypeViewerResponse = "viewer-response"
- // EventTypeOriginRequest is a EventType enum value
- EventTypeOriginRequest = "origin-request"
- // EventTypeOriginResponse is a EventType enum value
- EventTypeOriginResponse = "origin-response"
- )
- const (
- // FormatUrlencoded is a Format enum value
- FormatUrlencoded = "URLEncoded"
- )
- const (
- // GeoRestrictionTypeBlacklist is a GeoRestrictionType enum value
- GeoRestrictionTypeBlacklist = "blacklist"
- // GeoRestrictionTypeWhitelist is a GeoRestrictionType enum value
- GeoRestrictionTypeWhitelist = "whitelist"
- // GeoRestrictionTypeNone is a GeoRestrictionType enum value
- GeoRestrictionTypeNone = "none"
- )
- const (
- // HttpVersionHttp11 is a HttpVersion enum value
- HttpVersionHttp11 = "http1.1"
- // HttpVersionHttp2 is a HttpVersion enum value
- HttpVersionHttp2 = "http2"
- )
- const (
- // ItemSelectionNone is a ItemSelection enum value
- ItemSelectionNone = "none"
- // ItemSelectionWhitelist is a ItemSelection enum value
- ItemSelectionWhitelist = "whitelist"
- // ItemSelectionAll is a ItemSelection enum value
- ItemSelectionAll = "all"
- )
- const (
- // MethodGet is a Method enum value
- MethodGet = "GET"
- // MethodHead is a Method enum value
- MethodHead = "HEAD"
- // MethodPost is a Method enum value
- MethodPost = "POST"
- // MethodPut is a Method enum value
- MethodPut = "PUT"
- // MethodPatch is a Method enum value
- MethodPatch = "PATCH"
- // MethodOptions is a Method enum value
- MethodOptions = "OPTIONS"
- // MethodDelete is a Method enum value
- MethodDelete = "DELETE"
- )
- const (
- // MinimumProtocolVersionSslv3 is a MinimumProtocolVersion enum value
- MinimumProtocolVersionSslv3 = "SSLv3"
- // MinimumProtocolVersionTlsv1 is a MinimumProtocolVersion enum value
- MinimumProtocolVersionTlsv1 = "TLSv1"
- // MinimumProtocolVersionTlsv12016 is a MinimumProtocolVersion enum value
- MinimumProtocolVersionTlsv12016 = "TLSv1_2016"
- // MinimumProtocolVersionTlsv112016 is a MinimumProtocolVersion enum value
- MinimumProtocolVersionTlsv112016 = "TLSv1.1_2016"
- // MinimumProtocolVersionTlsv122018 is a MinimumProtocolVersion enum value
- MinimumProtocolVersionTlsv122018 = "TLSv1.2_2018"
- )
- const (
- // OriginProtocolPolicyHttpOnly is a OriginProtocolPolicy enum value
- OriginProtocolPolicyHttpOnly = "http-only"
- // OriginProtocolPolicyMatchViewer is a OriginProtocolPolicy enum value
- OriginProtocolPolicyMatchViewer = "match-viewer"
- // OriginProtocolPolicyHttpsOnly is a OriginProtocolPolicy enum value
- OriginProtocolPolicyHttpsOnly = "https-only"
- )
- const (
- // PriceClassPriceClass100 is a PriceClass enum value
- PriceClassPriceClass100 = "PriceClass_100"
- // PriceClassPriceClass200 is a PriceClass enum value
- PriceClassPriceClass200 = "PriceClass_200"
- // PriceClassPriceClassAll is a PriceClass enum value
- PriceClassPriceClassAll = "PriceClass_All"
- )
- const (
- // SSLSupportMethodSniOnly is a SSLSupportMethod enum value
- SSLSupportMethodSniOnly = "sni-only"
- // SSLSupportMethodVip is a SSLSupportMethod enum value
- SSLSupportMethodVip = "vip"
- )
- const (
- // SslProtocolSslv3 is a SslProtocol enum value
- SslProtocolSslv3 = "SSLv3"
- // SslProtocolTlsv1 is a SslProtocol enum value
- SslProtocolTlsv1 = "TLSv1"
- // SslProtocolTlsv11 is a SslProtocol enum value
- SslProtocolTlsv11 = "TLSv1.1"
- // SslProtocolTlsv12 is a SslProtocol enum value
- SslProtocolTlsv12 = "TLSv1.2"
- )
- const (
- // ViewerProtocolPolicyAllowAll is a ViewerProtocolPolicy enum value
- ViewerProtocolPolicyAllowAll = "allow-all"
- // ViewerProtocolPolicyHttpsOnly is a ViewerProtocolPolicy enum value
- ViewerProtocolPolicyHttpsOnly = "https-only"
- // ViewerProtocolPolicyRedirectToHttps is a ViewerProtocolPolicy enum value
- ViewerProtocolPolicyRedirectToHttps = "redirect-to-https"
- )
|