| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684 |
- // THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT.
- // Package cloudfront provides a client for Amazon CloudFront.
- package cloudfront
- import (
- "fmt"
- "time"
- "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 = "CreateCloudFrontOriginAccessIdentity2016_08_01"
- // CreateCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the
- // client's request for the CreateCloudFrontOriginAccessIdentity operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the CreateCloudFrontOriginAccessIdentity method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) CreateCloudFrontOriginAccessIdentityRequest(input *CreateCloudFrontOriginAccessIdentityInput) (req *request.Request, output *CreateCloudFrontOriginAccessIdentityOutput) {
- op := &request.Operation{
- Name: opCreateCloudFrontOriginAccessIdentity,
- HTTPMethod: "POST",
- HTTPPath: "/2016-08-01/origin-access-identity/cloudfront",
- }
- if input == nil {
- input = &CreateCloudFrontOriginAccessIdentityInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateCloudFrontOriginAccessIdentityOutput{}
- req.Data = output
- return
- }
- // Create a new origin access identity.
- func (c *CloudFront) CreateCloudFrontOriginAccessIdentity(input *CreateCloudFrontOriginAccessIdentityInput) (*CreateCloudFrontOriginAccessIdentityOutput, error) {
- req, out := c.CreateCloudFrontOriginAccessIdentityRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateDistribution = "CreateDistribution2016_08_01"
- // CreateDistributionRequest generates a "aws/request.Request" representing the
- // client's request for the CreateDistribution operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the CreateDistribution method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) CreateDistributionRequest(input *CreateDistributionInput) (req *request.Request, output *CreateDistributionOutput) {
- op := &request.Operation{
- Name: opCreateDistribution,
- HTTPMethod: "POST",
- HTTPPath: "/2016-08-01/distribution",
- }
- if input == nil {
- input = &CreateDistributionInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateDistributionOutput{}
- req.Data = output
- return
- }
- // Create a new distribution.
- func (c *CloudFront) CreateDistribution(input *CreateDistributionInput) (*CreateDistributionOutput, error) {
- req, out := c.CreateDistributionRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateDistributionWithTags = "CreateDistributionWithTags2016_08_01"
- // CreateDistributionWithTagsRequest generates a "aws/request.Request" representing the
- // client's request for the CreateDistributionWithTags operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the CreateDistributionWithTags method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) CreateDistributionWithTagsRequest(input *CreateDistributionWithTagsInput) (req *request.Request, output *CreateDistributionWithTagsOutput) {
- op := &request.Operation{
- Name: opCreateDistributionWithTags,
- HTTPMethod: "POST",
- HTTPPath: "/2016-08-01/distribution?WithTags",
- }
- if input == nil {
- input = &CreateDistributionWithTagsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateDistributionWithTagsOutput{}
- req.Data = output
- return
- }
- // Create a new distribution with tags.
- func (c *CloudFront) CreateDistributionWithTags(input *CreateDistributionWithTagsInput) (*CreateDistributionWithTagsOutput, error) {
- req, out := c.CreateDistributionWithTagsRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateInvalidation = "CreateInvalidation2016_08_01"
- // CreateInvalidationRequest generates a "aws/request.Request" representing the
- // client's request for the CreateInvalidation operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the CreateInvalidation method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) CreateInvalidationRequest(input *CreateInvalidationInput) (req *request.Request, output *CreateInvalidationOutput) {
- op := &request.Operation{
- Name: opCreateInvalidation,
- HTTPMethod: "POST",
- HTTPPath: "/2016-08-01/distribution/{DistributionId}/invalidation",
- }
- if input == nil {
- input = &CreateInvalidationInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateInvalidationOutput{}
- req.Data = output
- return
- }
- // Create a new invalidation.
- func (c *CloudFront) CreateInvalidation(input *CreateInvalidationInput) (*CreateInvalidationOutput, error) {
- req, out := c.CreateInvalidationRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateStreamingDistribution = "CreateStreamingDistribution2016_08_01"
- // CreateStreamingDistributionRequest generates a "aws/request.Request" representing the
- // client's request for the CreateStreamingDistribution operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the CreateStreamingDistribution method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) CreateStreamingDistributionRequest(input *CreateStreamingDistributionInput) (req *request.Request, output *CreateStreamingDistributionOutput) {
- op := &request.Operation{
- Name: opCreateStreamingDistribution,
- HTTPMethod: "POST",
- HTTPPath: "/2016-08-01/streaming-distribution",
- }
- if input == nil {
- input = &CreateStreamingDistributionInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateStreamingDistributionOutput{}
- req.Data = output
- return
- }
- // Create a new streaming distribution.
- func (c *CloudFront) CreateStreamingDistribution(input *CreateStreamingDistributionInput) (*CreateStreamingDistributionOutput, error) {
- req, out := c.CreateStreamingDistributionRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateStreamingDistributionWithTags = "CreateStreamingDistributionWithTags2016_08_01"
- // CreateStreamingDistributionWithTagsRequest generates a "aws/request.Request" representing the
- // client's request for the CreateStreamingDistributionWithTags operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the CreateStreamingDistributionWithTags method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) CreateStreamingDistributionWithTagsRequest(input *CreateStreamingDistributionWithTagsInput) (req *request.Request, output *CreateStreamingDistributionWithTagsOutput) {
- op := &request.Operation{
- Name: opCreateStreamingDistributionWithTags,
- HTTPMethod: "POST",
- HTTPPath: "/2016-08-01/streaming-distribution?WithTags",
- }
- if input == nil {
- input = &CreateStreamingDistributionWithTagsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateStreamingDistributionWithTagsOutput{}
- req.Data = output
- return
- }
- // Create a new streaming distribution with tags.
- func (c *CloudFront) CreateStreamingDistributionWithTags(input *CreateStreamingDistributionWithTagsInput) (*CreateStreamingDistributionWithTagsOutput, error) {
- req, out := c.CreateStreamingDistributionWithTagsRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteCloudFrontOriginAccessIdentity = "DeleteCloudFrontOriginAccessIdentity2016_08_01"
- // DeleteCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteCloudFrontOriginAccessIdentity operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DeleteCloudFrontOriginAccessIdentity method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) DeleteCloudFrontOriginAccessIdentityRequest(input *DeleteCloudFrontOriginAccessIdentityInput) (req *request.Request, output *DeleteCloudFrontOriginAccessIdentityOutput) {
- op := &request.Operation{
- Name: opDeleteCloudFrontOriginAccessIdentity,
- HTTPMethod: "DELETE",
- HTTPPath: "/2016-08-01/origin-access-identity/cloudfront/{Id}",
- }
- if input == nil {
- input = &DeleteCloudFrontOriginAccessIdentityInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &DeleteCloudFrontOriginAccessIdentityOutput{}
- req.Data = output
- return
- }
- // Delete an origin access identity.
- func (c *CloudFront) DeleteCloudFrontOriginAccessIdentity(input *DeleteCloudFrontOriginAccessIdentityInput) (*DeleteCloudFrontOriginAccessIdentityOutput, error) {
- req, out := c.DeleteCloudFrontOriginAccessIdentityRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteDistribution = "DeleteDistribution2016_08_01"
- // DeleteDistributionRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteDistribution operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DeleteDistribution method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) DeleteDistributionRequest(input *DeleteDistributionInput) (req *request.Request, output *DeleteDistributionOutput) {
- op := &request.Operation{
- Name: opDeleteDistribution,
- HTTPMethod: "DELETE",
- HTTPPath: "/2016-08-01/distribution/{Id}",
- }
- if input == nil {
- input = &DeleteDistributionInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &DeleteDistributionOutput{}
- req.Data = output
- return
- }
- // Delete a distribution.
- func (c *CloudFront) DeleteDistribution(input *DeleteDistributionInput) (*DeleteDistributionOutput, error) {
- req, out := c.DeleteDistributionRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteStreamingDistribution = "DeleteStreamingDistribution2016_08_01"
- // DeleteStreamingDistributionRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteStreamingDistribution operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DeleteStreamingDistribution method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) DeleteStreamingDistributionRequest(input *DeleteStreamingDistributionInput) (req *request.Request, output *DeleteStreamingDistributionOutput) {
- op := &request.Operation{
- Name: opDeleteStreamingDistribution,
- HTTPMethod: "DELETE",
- HTTPPath: "/2016-08-01/streaming-distribution/{Id}",
- }
- if input == nil {
- input = &DeleteStreamingDistributionInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &DeleteStreamingDistributionOutput{}
- req.Data = output
- return
- }
- // Delete a streaming distribution.
- func (c *CloudFront) DeleteStreamingDistribution(input *DeleteStreamingDistributionInput) (*DeleteStreamingDistributionOutput, error) {
- req, out := c.DeleteStreamingDistributionRequest(input)
- err := req.Send()
- return out, err
- }
- const opGetCloudFrontOriginAccessIdentity = "GetCloudFrontOriginAccessIdentity2016_08_01"
- // GetCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the
- // client's request for the GetCloudFrontOriginAccessIdentity operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the GetCloudFrontOriginAccessIdentity method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) GetCloudFrontOriginAccessIdentityRequest(input *GetCloudFrontOriginAccessIdentityInput) (req *request.Request, output *GetCloudFrontOriginAccessIdentityOutput) {
- op := &request.Operation{
- Name: opGetCloudFrontOriginAccessIdentity,
- HTTPMethod: "GET",
- HTTPPath: "/2016-08-01/origin-access-identity/cloudfront/{Id}",
- }
- if input == nil {
- input = &GetCloudFrontOriginAccessIdentityInput{}
- }
- req = c.newRequest(op, input, output)
- output = &GetCloudFrontOriginAccessIdentityOutput{}
- req.Data = output
- return
- }
- // Get the information about an origin access identity.
- func (c *CloudFront) GetCloudFrontOriginAccessIdentity(input *GetCloudFrontOriginAccessIdentityInput) (*GetCloudFrontOriginAccessIdentityOutput, error) {
- req, out := c.GetCloudFrontOriginAccessIdentityRequest(input)
- err := req.Send()
- return out, err
- }
- const opGetCloudFrontOriginAccessIdentityConfig = "GetCloudFrontOriginAccessIdentityConfig2016_08_01"
- // GetCloudFrontOriginAccessIdentityConfigRequest generates a "aws/request.Request" representing the
- // client's request for the GetCloudFrontOriginAccessIdentityConfig operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the GetCloudFrontOriginAccessIdentityConfig method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) GetCloudFrontOriginAccessIdentityConfigRequest(input *GetCloudFrontOriginAccessIdentityConfigInput) (req *request.Request, output *GetCloudFrontOriginAccessIdentityConfigOutput) {
- op := &request.Operation{
- Name: opGetCloudFrontOriginAccessIdentityConfig,
- HTTPMethod: "GET",
- HTTPPath: "/2016-08-01/origin-access-identity/cloudfront/{Id}/config",
- }
- if input == nil {
- input = &GetCloudFrontOriginAccessIdentityConfigInput{}
- }
- req = c.newRequest(op, input, output)
- output = &GetCloudFrontOriginAccessIdentityConfigOutput{}
- req.Data = output
- return
- }
- // Get the configuration information about an origin access identity.
- func (c *CloudFront) GetCloudFrontOriginAccessIdentityConfig(input *GetCloudFrontOriginAccessIdentityConfigInput) (*GetCloudFrontOriginAccessIdentityConfigOutput, error) {
- req, out := c.GetCloudFrontOriginAccessIdentityConfigRequest(input)
- err := req.Send()
- return out, err
- }
- const opGetDistribution = "GetDistribution2016_08_01"
- // GetDistributionRequest generates a "aws/request.Request" representing the
- // client's request for the GetDistribution operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the GetDistribution method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) GetDistributionRequest(input *GetDistributionInput) (req *request.Request, output *GetDistributionOutput) {
- op := &request.Operation{
- Name: opGetDistribution,
- HTTPMethod: "GET",
- HTTPPath: "/2016-08-01/distribution/{Id}",
- }
- if input == nil {
- input = &GetDistributionInput{}
- }
- req = c.newRequest(op, input, output)
- output = &GetDistributionOutput{}
- req.Data = output
- return
- }
- // Get the information about a distribution.
- func (c *CloudFront) GetDistribution(input *GetDistributionInput) (*GetDistributionOutput, error) {
- req, out := c.GetDistributionRequest(input)
- err := req.Send()
- return out, err
- }
- const opGetDistributionConfig = "GetDistributionConfig2016_08_01"
- // GetDistributionConfigRequest generates a "aws/request.Request" representing the
- // client's request for the GetDistributionConfig operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the GetDistributionConfig method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) GetDistributionConfigRequest(input *GetDistributionConfigInput) (req *request.Request, output *GetDistributionConfigOutput) {
- op := &request.Operation{
- Name: opGetDistributionConfig,
- HTTPMethod: "GET",
- HTTPPath: "/2016-08-01/distribution/{Id}/config",
- }
- if input == nil {
- input = &GetDistributionConfigInput{}
- }
- req = c.newRequest(op, input, output)
- output = &GetDistributionConfigOutput{}
- req.Data = output
- return
- }
- // Get the configuration information about a distribution.
- func (c *CloudFront) GetDistributionConfig(input *GetDistributionConfigInput) (*GetDistributionConfigOutput, error) {
- req, out := c.GetDistributionConfigRequest(input)
- err := req.Send()
- return out, err
- }
- const opGetInvalidation = "GetInvalidation2016_08_01"
- // GetInvalidationRequest generates a "aws/request.Request" representing the
- // client's request for the GetInvalidation operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the GetInvalidation method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) GetInvalidationRequest(input *GetInvalidationInput) (req *request.Request, output *GetInvalidationOutput) {
- op := &request.Operation{
- Name: opGetInvalidation,
- HTTPMethod: "GET",
- HTTPPath: "/2016-08-01/distribution/{DistributionId}/invalidation/{Id}",
- }
- if input == nil {
- input = &GetInvalidationInput{}
- }
- req = c.newRequest(op, input, output)
- output = &GetInvalidationOutput{}
- req.Data = output
- return
- }
- // Get the information about an invalidation.
- func (c *CloudFront) GetInvalidation(input *GetInvalidationInput) (*GetInvalidationOutput, error) {
- req, out := c.GetInvalidationRequest(input)
- err := req.Send()
- return out, err
- }
- const opGetStreamingDistribution = "GetStreamingDistribution2016_08_01"
- // GetStreamingDistributionRequest generates a "aws/request.Request" representing the
- // client's request for the GetStreamingDistribution operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the GetStreamingDistribution method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) GetStreamingDistributionRequest(input *GetStreamingDistributionInput) (req *request.Request, output *GetStreamingDistributionOutput) {
- op := &request.Operation{
- Name: opGetStreamingDistribution,
- HTTPMethod: "GET",
- HTTPPath: "/2016-08-01/streaming-distribution/{Id}",
- }
- if input == nil {
- input = &GetStreamingDistributionInput{}
- }
- req = c.newRequest(op, input, output)
- output = &GetStreamingDistributionOutput{}
- req.Data = output
- return
- }
- // Get the information about a streaming distribution.
- func (c *CloudFront) GetStreamingDistribution(input *GetStreamingDistributionInput) (*GetStreamingDistributionOutput, error) {
- req, out := c.GetStreamingDistributionRequest(input)
- err := req.Send()
- return out, err
- }
- const opGetStreamingDistributionConfig = "GetStreamingDistributionConfig2016_08_01"
- // GetStreamingDistributionConfigRequest generates a "aws/request.Request" representing the
- // client's request for the GetStreamingDistributionConfig operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the GetStreamingDistributionConfig method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) GetStreamingDistributionConfigRequest(input *GetStreamingDistributionConfigInput) (req *request.Request, output *GetStreamingDistributionConfigOutput) {
- op := &request.Operation{
- Name: opGetStreamingDistributionConfig,
- HTTPMethod: "GET",
- HTTPPath: "/2016-08-01/streaming-distribution/{Id}/config",
- }
- if input == nil {
- input = &GetStreamingDistributionConfigInput{}
- }
- req = c.newRequest(op, input, output)
- output = &GetStreamingDistributionConfigOutput{}
- req.Data = output
- return
- }
- // Get the configuration information about a streaming distribution.
- func (c *CloudFront) GetStreamingDistributionConfig(input *GetStreamingDistributionConfigInput) (*GetStreamingDistributionConfigOutput, error) {
- req, out := c.GetStreamingDistributionConfigRequest(input)
- err := req.Send()
- return out, err
- }
- const opListCloudFrontOriginAccessIdentities = "ListCloudFrontOriginAccessIdentities2016_08_01"
- // ListCloudFrontOriginAccessIdentitiesRequest generates a "aws/request.Request" representing the
- // client's request for the ListCloudFrontOriginAccessIdentities operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the ListCloudFrontOriginAccessIdentities method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) ListCloudFrontOriginAccessIdentitiesRequest(input *ListCloudFrontOriginAccessIdentitiesInput) (req *request.Request, output *ListCloudFrontOriginAccessIdentitiesOutput) {
- op := &request.Operation{
- Name: opListCloudFrontOriginAccessIdentities,
- HTTPMethod: "GET",
- HTTPPath: "/2016-08-01/origin-access-identity/cloudfront",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"CloudFrontOriginAccessIdentityList.NextMarker"},
- LimitToken: "MaxItems",
- TruncationToken: "CloudFrontOriginAccessIdentityList.IsTruncated",
- },
- }
- if input == nil {
- input = &ListCloudFrontOriginAccessIdentitiesInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ListCloudFrontOriginAccessIdentitiesOutput{}
- req.Data = output
- return
- }
- // List origin access identities.
- func (c *CloudFront) ListCloudFrontOriginAccessIdentities(input *ListCloudFrontOriginAccessIdentitiesInput) (*ListCloudFrontOriginAccessIdentitiesOutput, error) {
- req, out := c.ListCloudFrontOriginAccessIdentitiesRequest(input)
- err := req.Send()
- return out, err
- }
- // 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(p *ListCloudFrontOriginAccessIdentitiesOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.ListCloudFrontOriginAccessIdentitiesRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*ListCloudFrontOriginAccessIdentitiesOutput), lastPage)
- })
- }
- const opListDistributions = "ListDistributions2016_08_01"
- // ListDistributionsRequest generates a "aws/request.Request" representing the
- // client's request for the ListDistributions operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the ListDistributions method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) ListDistributionsRequest(input *ListDistributionsInput) (req *request.Request, output *ListDistributionsOutput) {
- op := &request.Operation{
- Name: opListDistributions,
- HTTPMethod: "GET",
- HTTPPath: "/2016-08-01/distribution",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"DistributionList.NextMarker"},
- LimitToken: "MaxItems",
- TruncationToken: "DistributionList.IsTruncated",
- },
- }
- if input == nil {
- input = &ListDistributionsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ListDistributionsOutput{}
- req.Data = output
- return
- }
- // List distributions.
- func (c *CloudFront) ListDistributions(input *ListDistributionsInput) (*ListDistributionsOutput, error) {
- req, out := c.ListDistributionsRequest(input)
- err := req.Send()
- return out, err
- }
- // 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(p *ListDistributionsOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.ListDistributionsRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*ListDistributionsOutput), lastPage)
- })
- }
- const opListDistributionsByWebACLId = "ListDistributionsByWebACLId2016_08_01"
- // ListDistributionsByWebACLIdRequest generates a "aws/request.Request" representing the
- // client's request for the ListDistributionsByWebACLId operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the ListDistributionsByWebACLId method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) ListDistributionsByWebACLIdRequest(input *ListDistributionsByWebACLIdInput) (req *request.Request, output *ListDistributionsByWebACLIdOutput) {
- op := &request.Operation{
- Name: opListDistributionsByWebACLId,
- HTTPMethod: "GET",
- HTTPPath: "/2016-08-01/distributionsByWebACLId/{WebACLId}",
- }
- if input == nil {
- input = &ListDistributionsByWebACLIdInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ListDistributionsByWebACLIdOutput{}
- req.Data = output
- return
- }
- // List the distributions that are associated with a specified AWS WAF web ACL.
- func (c *CloudFront) ListDistributionsByWebACLId(input *ListDistributionsByWebACLIdInput) (*ListDistributionsByWebACLIdOutput, error) {
- req, out := c.ListDistributionsByWebACLIdRequest(input)
- err := req.Send()
- return out, err
- }
- const opListInvalidations = "ListInvalidations2016_08_01"
- // ListInvalidationsRequest generates a "aws/request.Request" representing the
- // client's request for the ListInvalidations operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the ListInvalidations method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) ListInvalidationsRequest(input *ListInvalidationsInput) (req *request.Request, output *ListInvalidationsOutput) {
- op := &request.Operation{
- Name: opListInvalidations,
- HTTPMethod: "GET",
- HTTPPath: "/2016-08-01/distribution/{DistributionId}/invalidation",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"InvalidationList.NextMarker"},
- LimitToken: "MaxItems",
- TruncationToken: "InvalidationList.IsTruncated",
- },
- }
- if input == nil {
- input = &ListInvalidationsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ListInvalidationsOutput{}
- req.Data = output
- return
- }
- // List invalidation batches.
- func (c *CloudFront) ListInvalidations(input *ListInvalidationsInput) (*ListInvalidationsOutput, error) {
- req, out := c.ListInvalidationsRequest(input)
- err := req.Send()
- return out, err
- }
- // 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(p *ListInvalidationsOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.ListInvalidationsRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*ListInvalidationsOutput), lastPage)
- })
- }
- const opListStreamingDistributions = "ListStreamingDistributions2016_08_01"
- // ListStreamingDistributionsRequest generates a "aws/request.Request" representing the
- // client's request for the ListStreamingDistributions operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the ListStreamingDistributions method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) ListStreamingDistributionsRequest(input *ListStreamingDistributionsInput) (req *request.Request, output *ListStreamingDistributionsOutput) {
- op := &request.Operation{
- Name: opListStreamingDistributions,
- HTTPMethod: "GET",
- HTTPPath: "/2016-08-01/streaming-distribution",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"StreamingDistributionList.NextMarker"},
- LimitToken: "MaxItems",
- TruncationToken: "StreamingDistributionList.IsTruncated",
- },
- }
- if input == nil {
- input = &ListStreamingDistributionsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ListStreamingDistributionsOutput{}
- req.Data = output
- return
- }
- // List streaming distributions.
- func (c *CloudFront) ListStreamingDistributions(input *ListStreamingDistributionsInput) (*ListStreamingDistributionsOutput, error) {
- req, out := c.ListStreamingDistributionsRequest(input)
- err := req.Send()
- return out, err
- }
- // 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(p *ListStreamingDistributionsOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.ListStreamingDistributionsRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*ListStreamingDistributionsOutput), lastPage)
- })
- }
- const opListTagsForResource = "ListTagsForResource2016_08_01"
- // ListTagsForResourceRequest generates a "aws/request.Request" representing the
- // client's request for the ListTagsForResource operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the ListTagsForResource method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
- op := &request.Operation{
- Name: opListTagsForResource,
- HTTPMethod: "GET",
- HTTPPath: "/2016-08-01/tagging",
- }
- if input == nil {
- input = &ListTagsForResourceInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ListTagsForResourceOutput{}
- req.Data = output
- return
- }
- // List tags for a CloudFront resource.
- func (c *CloudFront) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
- req, out := c.ListTagsForResourceRequest(input)
- err := req.Send()
- return out, err
- }
- const opTagResource = "TagResource2016_08_01"
- // TagResourceRequest generates a "aws/request.Request" representing the
- // client's request for the TagResource operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the TagResource method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
- op := &request.Operation{
- Name: opTagResource,
- HTTPMethod: "POST",
- HTTPPath: "/2016-08-01/tagging?Operation=Tag",
- }
- if input == nil {
- input = &TagResourceInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &TagResourceOutput{}
- req.Data = output
- return
- }
- // Add tags to a CloudFront resource.
- func (c *CloudFront) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
- req, out := c.TagResourceRequest(input)
- err := req.Send()
- return out, err
- }
- const opUntagResource = "UntagResource2016_08_01"
- // UntagResourceRequest generates a "aws/request.Request" representing the
- // client's request for the UntagResource operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the UntagResource method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
- op := &request.Operation{
- Name: opUntagResource,
- HTTPMethod: "POST",
- HTTPPath: "/2016-08-01/tagging?Operation=Untag",
- }
- if input == nil {
- input = &UntagResourceInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &UntagResourceOutput{}
- req.Data = output
- return
- }
- // Remove tags from a CloudFront resource.
- func (c *CloudFront) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
- req, out := c.UntagResourceRequest(input)
- err := req.Send()
- return out, err
- }
- const opUpdateCloudFrontOriginAccessIdentity = "UpdateCloudFrontOriginAccessIdentity2016_08_01"
- // UpdateCloudFrontOriginAccessIdentityRequest generates a "aws/request.Request" representing the
- // client's request for the UpdateCloudFrontOriginAccessIdentity operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the UpdateCloudFrontOriginAccessIdentity method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) UpdateCloudFrontOriginAccessIdentityRequest(input *UpdateCloudFrontOriginAccessIdentityInput) (req *request.Request, output *UpdateCloudFrontOriginAccessIdentityOutput) {
- op := &request.Operation{
- Name: opUpdateCloudFrontOriginAccessIdentity,
- HTTPMethod: "PUT",
- HTTPPath: "/2016-08-01/origin-access-identity/cloudfront/{Id}/config",
- }
- if input == nil {
- input = &UpdateCloudFrontOriginAccessIdentityInput{}
- }
- req = c.newRequest(op, input, output)
- output = &UpdateCloudFrontOriginAccessIdentityOutput{}
- req.Data = output
- return
- }
- // Update an origin access identity.
- func (c *CloudFront) UpdateCloudFrontOriginAccessIdentity(input *UpdateCloudFrontOriginAccessIdentityInput) (*UpdateCloudFrontOriginAccessIdentityOutput, error) {
- req, out := c.UpdateCloudFrontOriginAccessIdentityRequest(input)
- err := req.Send()
- return out, err
- }
- const opUpdateDistribution = "UpdateDistribution2016_08_01"
- // UpdateDistributionRequest generates a "aws/request.Request" representing the
- // client's request for the UpdateDistribution operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the UpdateDistribution method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) UpdateDistributionRequest(input *UpdateDistributionInput) (req *request.Request, output *UpdateDistributionOutput) {
- op := &request.Operation{
- Name: opUpdateDistribution,
- HTTPMethod: "PUT",
- HTTPPath: "/2016-08-01/distribution/{Id}/config",
- }
- if input == nil {
- input = &UpdateDistributionInput{}
- }
- req = c.newRequest(op, input, output)
- output = &UpdateDistributionOutput{}
- req.Data = output
- return
- }
- // Update a distribution.
- func (c *CloudFront) UpdateDistribution(input *UpdateDistributionInput) (*UpdateDistributionOutput, error) {
- req, out := c.UpdateDistributionRequest(input)
- err := req.Send()
- return out, err
- }
- const opUpdateStreamingDistribution = "UpdateStreamingDistribution2016_08_01"
- // UpdateStreamingDistributionRequest generates a "aws/request.Request" representing the
- // client's request for the UpdateStreamingDistribution operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the UpdateStreamingDistribution method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // 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)
- // }
- //
- func (c *CloudFront) UpdateStreamingDistributionRequest(input *UpdateStreamingDistributionInput) (req *request.Request, output *UpdateStreamingDistributionOutput) {
- op := &request.Operation{
- Name: opUpdateStreamingDistribution,
- HTTPMethod: "PUT",
- HTTPPath: "/2016-08-01/streaming-distribution/{Id}/config",
- }
- if input == nil {
- input = &UpdateStreamingDistributionInput{}
- }
- req = c.newRequest(op, input, output)
- output = &UpdateStreamingDistributionOutput{}
- req.Data = output
- return
- }
- // Update a streaming distribution.
- func (c *CloudFront) UpdateStreamingDistribution(input *UpdateStreamingDistributionInput) (*UpdateStreamingDistributionOutput, error) {
- req, out := c.UpdateStreamingDistributionRequest(input)
- err := req.Send()
- return out, err
- }
- // A complex type that lists the AWS accounts, if any, that you included in
- // the TrustedSigners complex type for the default cache behavior or for any
- // of the other cache behaviors for this distribution. These are accounts that
- // you want to allow to create signed URLs for private content.
- type ActiveTrustedSigners struct {
- _ struct{} `type:"structure"`
- // Each active trusted signer.
- Enabled *bool `type:"boolean" required:"true"`
- // A complex type that contains one Signer complex type for each unique trusted
- // signer that is specified in the TrustedSigners complex type, including trusted
- // signers in the default cache behavior and in all of the other cache behaviors.
- Items []*Signer `locationNameList:"Signer" type:"list"`
- // The number of unique trusted signers included in all cache behaviors. For
- // example, if three cache behaviors all list the same three AWS accounts, the
- // value of Quantity for ActiveTrustedSigners will be 3.
- 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()
- }
- // A complex type that contains information about CNAMEs (alternate domain names),
- // if any, for this distribution.
- type Aliases struct {
- _ struct{} `type:"structure"`
- // Optional: A complex type that contains CNAME elements, if any, for this distribution.
- // If Quantity is 0, you can omit Items.
- Items []*string `locationNameList:"CNAME" type:"list"`
- // The number of CNAMEs, if any, for this distribution.
- 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
- }
- // 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 may not want users to have permission 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 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 []*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 *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
- }
- // A complex type that describes how CloudFront processes requests. You can
- // create up to 10 cache behaviors.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 will never be used. 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.
- 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 may not want users to have permission to delete objects from your origin.
- AllowedMethods *AllowedMethods `type:"structure"`
- // Whether you want CloudFront to automatically compress content for web requests
- // that include Accept-Encoding: gzip in the request header. If so, specify
- // true; if not, specify false. CloudFront compresses files larger than 1000
- // bytes and less than 1 megabyte for both Amazon S3 and custom origins. When
- // a CloudFront edge location is unusually busy, some files might not be compressed.
- // The value of the Content-Type header must be on the list of file types that
- // CloudFront will compress. For the current list, see Serving Compressed Content
- // (http://docs.aws.amazon.com/console/cloudfront/compressed-content) in the
- // Amazon CloudFront Developer Guide. If you configure CloudFront to compress
- // content, CloudFront removes the ETag response header from the objects that
- // it compresses. The ETag header indicates that the version in a CloudFront
- // edge cache is identical to the version on the origin server, but after compression
- // the two versions are no longer identical. As a result, for compressed objects,
- // CloudFront can't use the ETag header to determine whether an expired object
- // in the CloudFront edge cache is still the latest version.
- Compress *bool `type:"boolean"`
- // If you don't configure your origin to add a Cache-Control max-age directive
- // or an Expires header, DefaultTTL is the default amount of time (in seconds)
- // that an object is in a CloudFront cache 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. You can specify a value from 0 to 3,153,600,000 seconds (100
- // years).
- DefaultTTL *int64 `type:"long"`
- // A complex type that specifies how CloudFront handles query strings, cookies
- // and headers.
- ForwardedValues *ForwardedValues `type:"structure" required:"true"`
- // The maximum amount of time (in seconds) that an object is in a CloudFront
- // cache 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. You can specify a value from 0 to 3,153,600,000
- // seconds (100 years).
- MaxTTL *int64 `type:"long"`
- // The minimum amount of time that you want objects to stay in CloudFront caches
- // before CloudFront queries your origin to see whether the object has been
- // updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).
- MinTTL *int64 `type:"long" required:"true"`
- // The pattern (for example, images/*.jpg) that specifies which requests you
- // want this cache behavior to apply to. When CloudFront receives an end-user
- // request, the requested path is compared with path patterns in the order in
- // which cache behaviors are listed in the distribution. 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.
- PathPattern *string `type:"string" required:"true"`
- // Indicates whether you want to distribute media files in Microsoft Smooth
- // Streaming format using the origin that is associated with this cache behavior.
- // If so, specify true; if not, specify false.
- 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.
- 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, go to Using a Signed
- // URL to Serve Private Content in the 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 *TrustedSigners `type:"structure" required:"true"`
- // Use this element to specify the protocol that users can use to access the
- // files in the origin specified by TargetOriginId when a request matches the
- // path pattern in PathPattern. If you want CloudFront to allow end users to
- // use any available protocol, specify allow-all. If you want CloudFront to
- // require HTTPS, specify https. If you want CloudFront to respond to an HTTP
- // request with an HTTP status code of 301 (Moved Permanently) and the HTTPS
- // URL, specify redirect-to-https. The viewer then resubmits the request using
- // the HTTPS URL.
- 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.TrustedSigners != nil {
- if err := s.TrustedSigners.Validate(); err != nil {
- invalidParams.AddNested("TrustedSigners", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // 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 *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
- }
- // 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 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 []*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 *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
- }
- // A complex type that specifies the whitelisted cookies, if any, that you want
- // CloudFront to forward to your origin that is associated with this cache behavior.
- type CookieNames struct {
- _ struct{} `type:"structure"`
- // Optional: A complex type that contains whitelisted cookies for this cache
- // behavior. If Quantity is 0, you can omit Items.
- Items []*string `locationNameList:"Name" type:"list"`
- // The number of whitelisted cookies for this cache behavior.
- 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
- }
- // A complex type that specifies the cookie preferences associated with this
- // cache behavior.
- type CookiePreference struct {
- _ struct{} `type:"structure"`
- // Use this element to specify whether you want CloudFront to forward cookies
- // to the origin that is associated with this cache behavior. You can specify
- // all, none or whitelist. If you choose All, CloudFront forwards all cookies
- // regardless of how many your application uses.
- Forward *string `type:"string" required:"true" enum:"ItemSelection"`
- // A complex type that specifies the whitelisted cookies, if any, that you want
- // CloudFront to forward to your origin that is associated with this cache behavior.
- 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
- }
- // The request to create a new origin access identity.
- type CreateCloudFrontOriginAccessIdentityInput struct {
- _ struct{} `type:"structure" payload:"CloudFrontOriginAccessIdentityConfig"`
- // The origin access identity's configuration information.
- CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `locationName:"CloudFrontOriginAccessIdentityConfig" type:"structure" required:"true"`
- }
- // 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
- }
- // 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()
- }
- // The request to create a new distribution.
- type CreateDistributionInput struct {
- _ struct{} `type:"structure" payload:"DistributionConfig"`
- // The distribution's configuration information.
- DistributionConfig *DistributionConfig `locationName:"DistributionConfig" type:"structure" required:"true"`
- }
- // 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
- }
- // 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()
- }
- // The request to create a new distribution with tags
- type CreateDistributionWithTagsInput struct {
- _ struct{} `type:"structure" payload:"DistributionConfigWithTags"`
- // The distribution's configuration information.
- DistributionConfigWithTags *DistributionConfigWithTags `locationName:"DistributionConfigWithTags" type:"structure" required:"true"`
- }
- // 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
- }
- // 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()
- }
- // The request to create an invalidation.
- type CreateInvalidationInput struct {
- _ struct{} `type:"structure" payload:"InvalidationBatch"`
- // The distribution's id.
- DistributionId *string `location:"uri" locationName:"DistributionId" type:"string" required:"true"`
- // The batch information for the invalidation.
- InvalidationBatch *InvalidationBatch `locationName:"InvalidationBatch" type:"structure" required:"true"`
- }
- // 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.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
- }
- // 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()
- }
- // The request to create a new streaming distribution.
- type CreateStreamingDistributionInput struct {
- _ struct{} `type:"structure" payload:"StreamingDistributionConfig"`
- // The streaming distribution's configuration information.
- StreamingDistributionConfig *StreamingDistributionConfig `locationName:"StreamingDistributionConfig" type:"structure" required:"true"`
- }
- // 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
- }
- // 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()
- }
- // 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 *StreamingDistributionConfigWithTags `locationName:"StreamingDistributionConfigWithTags" type:"structure" required:"true"`
- }
- // 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
- }
- // The returned result of the corresponding request.
- type CreateStreamingDistributionWithTagsOutput 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 CreateStreamingDistributionWithTagsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateStreamingDistributionWithTagsOutput) GoString() string {
- return s.String()
- }
- // A complex type that describes how you'd prefer CloudFront to respond to requests
- // that result in either a 4xx or 5xx response. You can control whether a custom
- // error page should be displayed, what the desired response code should be
- // for this error page and how long should the error response be cached by CloudFront.
- // If you don't want to specify any custom error responses, include only an
- // empty CustomErrorResponses element. To delete all custom error responses
- // in an existing distribution, update the distribution configuration and include
- // only an empty CustomErrorResponses element. To add, change, or remove one
- // or more custom error responses, update the distribution configuration and
- // specify all of the custom error responses that you want to include in the
- // updated distribution.
- type CustomErrorResponse struct {
- _ struct{} `type:"structure"`
- // The minimum amount of time you want HTTP error codes to stay in CloudFront
- // caches before CloudFront queries your origin to see whether the object has
- // been updated. You can specify a value from 0 to 31,536,000.
- ErrorCachingMinTTL *int64 `type:"long"`
- // The 4xx or 5xx HTTP status code that you want to customize. For a list of
- // HTTP status codes that you can customize, see CloudFront documentation.
- ErrorCode *int64 `type:"integer" required:"true"`
- // The HTTP status code that you want CloudFront to return with the custom error
- // page to the viewer. For a list of HTTP status codes that you can replace,
- // see CloudFront Documentation.
- ResponseCode *string `type:"string"`
- // The path of the custom error page (for example, /custom_404.html). The path
- // is relative to the distribution and must begin with a slash (/). If the path
- // includes any non-ASCII characters or unsafe characters as defined in RFC
- // 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters.
- // Do not URL encode any other characters in the path, or CloudFront will not
- // return the custom error page to the viewer.
- 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
- }
- // A complex type that contains zero or more CustomErrorResponse elements.
- type CustomErrorResponses struct {
- _ struct{} `type:"structure"`
- // Optional: A complex type that contains custom error responses for this distribution.
- // If Quantity is 0, you can omit Items.
- Items []*CustomErrorResponse `locationNameList:"CustomErrorResponse" type:"list"`
- // The number of custom error responses for this distribution.
- 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
- }
- // A complex type that contains the list of Custom Headers for each origin.
- type CustomHeaders struct {
- _ struct{} `type:"structure"`
- // A complex type that contains the custom headers for this Origin.
- Items []*OriginCustomHeader `locationNameList:"OriginCustomHeader" type:"list"`
- // The number of custom headers for this origin.
- 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
- }
- // A customer origin.
- type CustomOriginConfig struct {
- _ struct{} `type:"structure"`
- // The HTTP port the custom origin listens on.
- HTTPPort *int64 `type:"integer" required:"true"`
- // The HTTPS port the custom origin listens on.
- HTTPSPort *int64 `type:"integer" required:"true"`
- // The origin protocol policy to apply to your origin.
- OriginProtocolPolicy *string `type:"string" required:"true" enum:"OriginProtocolPolicy"`
- // 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
- }
- // A complex type that describes the default cache behavior if you do not 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 may not want users to have permission to delete objects from your origin.
- AllowedMethods *AllowedMethods `type:"structure"`
- // Whether you want CloudFront to automatically compress content for web requests
- // that include Accept-Encoding: gzip in the request header. If so, specify
- // true; if not, specify false. CloudFront compresses files larger than 1000
- // bytes and less than 1 megabyte for both Amazon S3 and custom origins. When
- // a CloudFront edge location is unusually busy, some files might not be compressed.
- // The value of the Content-Type header must be on the list of file types that
- // CloudFront will compress. For the current list, see Serving Compressed Content
- // (http://docs.aws.amazon.com/console/cloudfront/compressed-content) in the
- // Amazon CloudFront Developer Guide. If you configure CloudFront to compress
- // content, CloudFront removes the ETag response header from the objects that
- // it compresses. The ETag header indicates that the version in a CloudFront
- // edge cache is identical to the version on the origin server, but after compression
- // the two versions are no longer identical. As a result, for compressed objects,
- // CloudFront can't use the ETag header to determine whether an expired object
- // in the CloudFront edge cache is still the latest version.
- Compress *bool `type:"boolean"`
- // If you don't configure your origin to add a Cache-Control max-age directive
- // or an Expires header, DefaultTTL is the default amount of time (in seconds)
- // that an object is in a CloudFront cache 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. You can specify a value from 0 to 3,153,600,000 seconds (100
- // years).
- DefaultTTL *int64 `type:"long"`
- // A complex type that specifies how CloudFront handles query strings, cookies
- // and headers.
- ForwardedValues *ForwardedValues `type:"structure" required:"true"`
- // The maximum amount of time (in seconds) that an object is in a CloudFront
- // cache 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. You can specify a value from 0 to 3,153,600,000
- // seconds (100 years).
- MaxTTL *int64 `type:"long"`
- // The minimum amount of time that you want objects to stay in CloudFront caches
- // before CloudFront queries your origin to see whether the object has been
- // updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).
- MinTTL *int64 `type:"long" required:"true"`
- // Indicates whether you want to distribute media files in Microsoft Smooth
- // Streaming format using the origin that is associated with this cache behavior.
- // If so, specify true; if not, specify false.
- 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.
- 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, go to Using a Signed
- // URL to Serve Private Content in the 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 *TrustedSigners `type:"structure" required:"true"`
- // Use this element to specify the protocol that users can use to access the
- // files in the origin specified by TargetOriginId when a request matches the
- // path pattern in PathPattern. If you want CloudFront to allow end users to
- // use any available protocol, specify allow-all. If you want CloudFront to
- // require HTTPS, specify https. If you want CloudFront to respond to an HTTP
- // request with an HTTP status code of 301 (Moved Permanently) and the HTTPS
- // URL, specify redirect-to-https. The viewer then resubmits the request using
- // the HTTPS URL.
- 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.TrustedSigners != nil {
- if err := s.TrustedSigners.Validate(); err != nil {
- invalidParams.AddNested("TrustedSigners", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // The request to delete a origin access identity.
- type DeleteCloudFrontOriginAccessIdentityInput struct {
- _ struct{} `type:"structure"`
- // The origin access identity's id.
- 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 invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- 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()
- }
- // The request to delete a distribution.
- type DeleteDistributionInput struct {
- _ struct{} `type:"structure"`
- // The distribution id.
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- // The value of the ETag header 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 invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- 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()
- }
- // The request to delete a streaming distribution.
- type DeleteStreamingDistributionInput struct {
- _ struct{} `type:"structure"`
- // The distribution id.
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- // The value of the ETag header 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 invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- 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()
- }
- // A distribution.
- 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 *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 *ActiveTrustedSigners `type:"structure" required:"true"`
- // The current configuration information for the distribution.
- DistributionConfig *DistributionConfig `type:"structure" required:"true"`
- // The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.
- DomainName *string `type:"string" required:"true"`
- // The identifier for the distribution. For example: EDFDVBD632BHDS5.
- Id *string `type:"string" required:"true"`
- // The number of invalidation batches currently in progress.
- InProgressInvalidationBatches *int64 `type:"integer" required:"true"`
- // The date and time the distribution was last modified.
- LastModifiedTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
- // This response element 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 *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()
- }
- // 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 number that ensures the request can't be replayed. If the CallerReference
- // is new (no matter the content of the DistributionConfig object), a new distribution
- // is created. If the CallerReference is a value you already sent in a previous
- // request to create a distribution, and the content of the DistributionConfig
- // 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 a distribution
- // but the content of the DistributionConfig is different from the original
- // request, CloudFront returns a DistributionAlreadyExists error.
- CallerReference *string `type:"string" required:"true"`
- // Any comments you want to include about the distribution.
- Comment *string `type:"string" required:"true"`
- // A complex type that contains zero or more CustomErrorResponse elements.
- CustomErrorResponses *CustomErrorResponses `type:"structure"`
- // A complex type that describes the default cache behavior if you do not 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 *DefaultCacheBehavior `type:"structure" required:"true"`
- // The object that you want CloudFront to return (for example, index.html) when
- // an end user requests the root URL for your distribution (http://www.example.com)
- // instead of an object in your distribution (http://www.example.com/index.html).
- // Specifying a default root object avoids exposing the contents of your distribution.
- // 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.
- DefaultRootObject *string `type:"string"`
- // Whether the distribution is enabled to accept end user requests for content.
- Enabled *bool `type:"boolean" required:"true"`
- // A complex type that controls whether access logs are written for the distribution.
- Logging *LoggingConfig `type:"structure"`
- // A complex type that contains information about origins for this distribution.
- Origins *Origins `type:"structure" required:"true"`
- // A complex type that contains information about price class for this distribution.
- 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 contains information about viewer certificates for this
- // distribution.
- ViewerCertificate *ViewerCertificate `type:"structure"`
- // (Optional) If you're using AWS WAF to filter CloudFront requests, the Id
- // of the AWS WAF web ACL that is associated with the distribution.
- 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.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
- }
- // A distribution Configuration and a list of tags to be associated with the
- // distribution.
- type DistributionConfigWithTags struct {
- _ struct{} `type:"structure"`
- // A distribution Configuration.
- DistributionConfig *DistributionConfig `type:"structure" required:"true"`
- // A complex type that contains zero or more Tag elements.
- 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
- }
- // 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 *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 *string `type:"string" required:"true"`
- // The value you provided for the MaxItems request parameter.
- 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 *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()
- }
- // A summary of the information for an Amazon 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 *string `type:"string" required:"true"`
- // A complex type that contains information about CNAMEs (alternate domain names),
- // if any, for this distribution.
- Aliases *Aliases `type:"structure" required:"true"`
- // A complex type that contains zero or more CacheBehavior elements.
- CacheBehaviors *CacheBehaviors `type:"structure" required:"true"`
- // The comment originally specified when this distribution was created.
- Comment *string `type:"string" required:"true"`
- // A complex type that contains zero or more CustomErrorResponses elements.
- CustomErrorResponses *CustomErrorResponses `type:"structure" required:"true"`
- // A complex type that describes the default cache behavior if you do not 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 *DefaultCacheBehavior `type:"structure" required:"true"`
- // The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.
- DomainName *string `type:"string" required:"true"`
- // Whether the distribution is enabled to accept end user requests for content.
- Enabled *bool `type:"boolean" required:"true"`
- // The identifier for the distribution. For example: EDFDVBD632BHDS5.
- Id *string `type:"string" required:"true"`
- // The date and time the distribution was last modified.
- LastModifiedTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
- // A complex type that contains information about origins for this distribution.
- Origins *Origins `type:"structure" required:"true"`
- 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 *Restrictions `type:"structure" required:"true"`
- // This response element 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 *string `type:"string" required:"true"`
- // A complex type that contains information about viewer certificates for this
- // distribution.
- ViewerCertificate *ViewerCertificate `type:"structure" required:"true"`
- // The Web ACL Id (if any) associated with the distribution.
- 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()
- }
- // A complex type that specifies how CloudFront handles query strings, cookies
- // and headers.
- type ForwardedValues struct {
- _ struct{} `type:"structure"`
- // A complex type that specifies how CloudFront handles cookies.
- Cookies *CookiePreference `type:"structure" required:"true"`
- // A complex type that specifies the Headers, if any, that you want CloudFront
- // to vary upon 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. If so, specify true; if not,
- // specify false.
- QueryString *bool `type:"boolean" required:"true"`
- }
- // 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 invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // A complex type that controls the countries in which your content is distributed.
- // For more information about geo restriction, go to Customizing Error Responses
- // in the Amazon CloudFront Developer Guide. CloudFront determines the location
- // of your users using MaxMind GeoIP databases. For information about the accuracy
- // of these databases, see How accurate are your GeoIP databases? on the MaxMind
- // website.
- 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 in 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 *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 do not want CloudFront to distribute your
- // content. - whitelist: The Location elements specify the countries in which
- // you want CloudFront to distribute your content.
- 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
- }
- // The request to get an origin access identity's configuration.
- type GetCloudFrontOriginAccessIdentityConfigInput struct {
- _ struct{} `type:"structure"`
- // The identity's id.
- 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 invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // 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()
- }
- // The request to get an origin access identity's information.
- type GetCloudFrontOriginAccessIdentityInput struct {
- _ struct{} `type:"structure"`
- // The identity's id.
- 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 invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // 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()
- }
- // The request to get a distribution configuration.
- type GetDistributionConfigInput struct {
- _ struct{} `type:"structure"`
- // The distribution's id.
- 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 invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // 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()
- }
- // The request to get a distribution's information.
- type GetDistributionInput struct {
- _ struct{} `type:"structure"`
- // The distribution's id.
- 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 invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // 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()
- }
- // The request to get an invalidation's information.
- type GetInvalidationInput struct {
- _ struct{} `type:"structure"`
- // The distribution's id.
- DistributionId *string `location:"uri" locationName:"DistributionId" type:"string" required:"true"`
- // The invalidation's id.
- 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.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // The returned result of the corresponding request.
- type GetInvalidationOutput struct {
- _ struct{} `type:"structure" payload:"Invalidation"`
- // The invalidation's information.
- 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()
- }
- // To request to get a streaming distribution configuration.
- type GetStreamingDistributionConfigInput struct {
- _ struct{} `type:"structure"`
- // The streaming distribution's id.
- 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 invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // 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()
- }
- // The request to get a streaming distribution's information.
- type GetStreamingDistributionInput struct {
- _ struct{} `type:"structure"`
- // The streaming distribution's id.
- 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 invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // 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()
- }
- // A complex type that specifies the headers that you want CloudFront to forward
- // to the origin for this cache behavior. For the headers that you specify,
- // CloudFront also caches separate versions of a given object based on the header
- // values in viewer requests; this is known as varying on headers. 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 vary
- // on the Product header. CloudFront forwards the Product header to the origin
- // and caches the response from the origin once for each header value.
- type Headers struct {
- _ struct{} `type:"structure"`
- // Optional: A complex type that contains a Name element for each header that
- // you want CloudFront to forward to the origin and to vary on for 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 forward to the
- // origin and to vary on for this cache behavior. The maximum number of headers
- // that you can specify by name is 10. If you want CloudFront to forward all
- // headers to the origin and vary on all of them, specify 1 for Quantity and
- // * for Name. If you don't want CloudFront to forward any additional headers
- // to the origin or to vary on any headers, specify 0 for Quantity and omit
- // Items.
- 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
- }
- // An invalidation.
- type Invalidation struct {
- _ struct{} `type:"structure"`
- // The date and time the invalidation request was first made.
- CreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
- // The identifier for the invalidation request. For example: IDFDVBD632BHDS5.
- Id *string `type:"string" required:"true"`
- // The current invalidation information for the batch request.
- InvalidationBatch *InvalidationBatch `type:"structure" required:"true"`
- // The status of the invalidation request. When the invalidation batch is finished,
- // the status is Completed.
- 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()
- }
- // An invalidation batch.
- type InvalidationBatch struct {
- _ struct{} `type:"structure"`
- // A unique name that ensures the request can't be replayed. If the CallerReference
- // is new (no matter the content of the Path object), a new distribution is
- // created. If the CallerReference is a value you already sent in a previous
- // request to create an invalidation batch, and the content of each Path element
- // is identical to the original request, 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 a distribution but the content of any
- // Path is different from the original request, CloudFront returns an InvalidationBatchAlreadyExists
- // error.
- CallerReference *string `type:"string" required:"true"`
- // The path of the object to invalidate. The path is relative to the distribution
- // and must begin with a slash (/). You must enclose each invalidation object
- // with the Path element tags. If the path includes non-ASCII characters or
- // unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt),
- // URL encode those characters. Do not URL encode any other characters in the
- // path, or CloudFront will not invalidate the old version of the updated object.
- 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
- }
- // An invalidation list.
- 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 *bool `type:"boolean" required:"true"`
- // A complex type that contains one InvalidationSummary element for each invalidation
- // batch that was created by the current AWS account.
- Items []*InvalidationSummary `locationNameList:"InvalidationSummary" type:"list"`
- // The value you provided for the Marker request parameter.
- Marker *string `type:"string" required:"true"`
- // The value you provided for the MaxItems request parameter.
- 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 invalidation
- // batches where they left off.
- NextMarker *string `type:"string"`
- // The number of invalidation batches that were created by the current AWS account.
- 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()
- }
- // Summary of an invalidation request.
- type InvalidationSummary struct {
- _ struct{} `type:"structure"`
- CreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
- // The unique ID for an invalidation request.
- Id *string `type:"string" required:"true"`
- // The status of an invalidation request.
- 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()
- }
- // A complex type that lists the active CloudFront key pairs, if any, that are
- // associated with AwsAccountNumber.
- type KeyPairIds struct {
- _ struct{} `type:"structure"`
- // A complex type that lists the active CloudFront key pairs, if any, that are
- // associated with AwsAccountNumber.
- Items []*string `locationNameList:"KeyPairId" type:"list"`
- // The number of active CloudFront key pairs for AwsAccountNumber.
- 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()
- }
- // 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()
- }
- // 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()
- }
- // 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 for which 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 *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 invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // 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()
- }
- // The request to list your distributions.
- type ListDistributionsInput 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"`
- }
- // 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()
- }
- // 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()
- }
- // The request to list invalidations.
- type ListInvalidationsInput struct {
- _ struct{} `type:"structure"`
- // The distribution's id.
- 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 the 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 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 invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // 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()
- }
- // The request to list your streaming distributions.
- type ListStreamingDistributionsInput struct {
- _ struct{} `type:"structure"`
- // Use this when paginating results to indicate where to begin in your list
- // of streaming 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 streaming distributions you want in the response body.
- 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()
- }
- // 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()
- }
- // The request to list tags for a CloudFront resource.
- type ListTagsForResourceInput struct {
- _ struct{} `type:"structure"`
- // An ARN of a CloudFront resource.
- 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
- }
- // 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 *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()
- }
- // 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 *string `type:"string" required:"true"`
- // Specifies whether you want CloudFront to save access logs to an Amazon S3
- // bucket. If you do not 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 *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 do not 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 *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 do not want to specify a prefix, you still must include an empty
- // Prefix element in the Logging element.
- 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
- }
- // A complex type that describes the Amazon S3 bucket or the HTTP server (for
- // example, a web server) from which CloudFront gets your files.You must create
- // at least one origin.
- type Origin struct {
- _ struct{} `type:"structure"`
- // A complex type that contains information about the custom headers associated
- // with this Origin.
- 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.
- // 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.
- DomainName *string `type:"string" required:"true"`
- // A unique identifier for the origin. The value of Id must be unique within
- // the distribution. You use the value of Id when you create a cache behavior.
- // The Id identifies the origin that CloudFront routes a request to when the
- // request matches the path pattern for that cache behavior.
- 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.
- 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
- }
- // 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 *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 *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()
- }
- // Origin access identity configuration.
- type OriginAccessIdentityConfig struct {
- _ struct{} `type:"structure"`
- // A unique number that ensures the request can't be replayed. If the CallerReference
- // is new (no matter the content of the CloudFrontOriginAccessIdentityConfig
- // object), a new origin access identity is created. If the CallerReference
- // is a value you already sent in a previous request to create an identity,
- // 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 *string `type:"string" required:"true"`
- // Any comments you want to include about the origin access identity.
- 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
- }
- // The CloudFrontOriginAccessIdentityList type.
- 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 *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"`
- // The value you provided for the Marker request parameter.
- Marker *string `type:"string" required:"true"`
- // The value you provided for the MaxItems request parameter.
- 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 *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()
- }
- // 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 *string `type:"string" required:"true"`
- // The ID for the origin access identity. For example: E74FTE3AJFJ256A.
- 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 *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()
- }
- // A complex type that contains information related to a Header
- type OriginCustomHeader struct {
- _ struct{} `type:"structure"`
- // The header's name.
- HeaderName *string `type:"string" required:"true"`
- // The header's value.
- 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
- }
- // A complex type that contains the list of SSL/TLS protocols that you want
- // CloudFront to use when communicating with your origin over HTTPS.
- type OriginSslProtocols struct {
- _ struct{} `type:"structure"`
- // A complex type that contains one SslProtocol element for each SSL/TLS protocol
- // that you want to allow CloudFront to use when establishing an HTTPS connection
- // with this origin.
- 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 *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
- }
- // A complex type that contains information about origins for this distribution.
- type Origins struct {
- _ struct{} `type:"structure"`
- // A complex type that contains origins for this distribution.
- Items []*Origin `locationNameList:"Origin" min:"1" type:"list"`
- // The number of origins for this distribution.
- 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 && 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
- }
- // A complex type that contains information about the objects that you want
- // to invalidate.
- type Paths struct {
- _ struct{} `type:"structure"`
- // A complex type that contains a list of the objects that you want to invalidate.
- Items []*string `locationNameList:"Path" type:"list"`
- // The number of objects that you want to invalidate.
- 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
- }
- // 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.
- // For more information about geo restriction, go to Customizing Error Responses
- // in the Amazon CloudFront Developer Guide. CloudFront determines the location
- // of your users using MaxMind GeoIP databases. For information about the accuracy
- // of these databases, see How accurate are your GeoIP databases? on the MaxMind
- // website.
- 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
- }
- // 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 S3 origin.
- DomainName *string `type:"string" required:"true"`
- // Your S3 origin's origin access identity.
- 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
- }
- // 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 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. Use the format origin-access-identity/cloudfront/Id
- // where Id is the value that CloudFront returned in the Id element when you
- // created the origin access identity.
- 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
- }
- // 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"`
- // Specifies an AWS account that can create signed URLs. Values: self, which
- // indicates that the AWS account that was used to create the distribution can
- // created signed URLs, or an AWS account number. Omit the dashes in the 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()
- }
- // A streaming distribution.
- type StreamingDistribution 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 *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 *ActiveTrustedSigners `type:"structure" required:"true"`
- // The domain name corresponding to the streaming distribution. For example:
- // s5c39gqb8ow64r.cloudfront.net.
- DomainName *string `type:"string" required:"true"`
- // The identifier for the streaming distribution. For example: EGTXBD79H29TRA8.
- Id *string `type:"string" required:"true"`
- // The date and time the distribution was last modified.
- LastModifiedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
- // The current status of the streaming distribution. When the status is Deployed,
- // the distribution's information is fully propagated throughout the Amazon
- // CloudFront system.
- Status *string `type:"string" required:"true"`
- // The current configuration information for the streaming distribution.
- 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()
- }
- // The configuration for the streaming distribution.
- 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 number that ensures the request can't be replayed. If the CallerReference
- // is new (no matter the content of the StreamingDistributionConfig object),
- // a new streaming distribution is created. If the CallerReference is a value
- // you already sent in a previous request to create a streaming distribution,
- // and the content of the StreamingDistributionConfig 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 a streaming distribution but the content
- // of the StreamingDistributionConfig is different from the original request,
- // CloudFront returns a DistributionAlreadyExists error.
- CallerReference *string `type:"string" required:"true"`
- // Any comments you want to include about the streaming distribution.
- Comment *string `type:"string" required:"true"`
- // Whether the streaming distribution is enabled to accept end user requests
- // for content.
- 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 *S3Origin `type:"structure" 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, go to Using a Signed
- // URL to Serve Private Content in the 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 *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
- }
- // 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 *StreamingDistributionConfig `type:"structure" required:"true"`
- // A complex type that contains zero or more Tag elements.
- 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
- }
- // 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 *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 *string `type:"string" required:"true"`
- // The value you provided for the MaxItems request parameter.
- 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 streaming
- // distributions where they left off.
- NextMarker *string `type:"string"`
- // The number of streaming distributions that were created by the current AWS
- // account.
- 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()
- }
- // 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 *string `type:"string" required:"true"`
- // A complex type that contains information about CNAMEs (alternate domain names),
- // if any, for this streaming distribution.
- Aliases *Aliases `type:"structure" required:"true"`
- // The comment originally specified when this distribution was created.
- Comment *string `type:"string" required:"true"`
- // The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.
- DomainName *string `type:"string" required:"true"`
- // Whether the distribution is enabled to accept end user requests for content.
- Enabled *bool `type:"boolean" required:"true"`
- // The identifier for the distribution. For example: EDFDVBD632BHDS5.
- Id *string `type:"string" required:"true"`
- // The date and time the distribution was last modified.
- LastModifiedTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
- 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 *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 *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, go to Using a Signed
- // URL to Serve Private Content in the 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 *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()
- }
- // 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 *string `type:"string" required:"true"`
- // Specifies whether you want CloudFront to save access logs to an Amazon S3
- // bucket. If you do not 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 *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 do not want to specify a prefix, you still must include
- // an empty Prefix element in the Logging element.
- 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
- }
- // 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 *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
- }
- // 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()
- }
- // The request to add tags to a CloudFront resource.
- type TagResourceInput struct {
- _ struct{} `type:"structure" payload:"Tags"`
- // An ARN of a CloudFront resource.
- Resource *string `location:"querystring" locationName:"Resource" type:"string" required:"true"`
- // A complex type that contains zero or more Tag elements.
- Tags *Tags `locationName:"Tags" type:"structure" required:"true"`
- }
- // 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
- }
- 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
- }
- // 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, go to Using a Signed
- // URL to Serve Private Content in the 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.
- type TrustedSigners struct {
- _ struct{} `type:"structure"`
- // Specifies whether you want to require end users to use signed URLs to access
- // the files specified by PathPattern and TargetOriginId.
- 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 *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
- }
- // The request to remove tags from a CloudFront resource.
- type UntagResourceInput struct {
- _ struct{} `type:"structure" payload:"TagKeys"`
- // An ARN of a CloudFront resource.
- Resource *string `location:"querystring" locationName:"Resource" type:"string" required:"true"`
- // A complex type that contains zero or more Tag key elements.
- TagKeys *TagKeys `locationName:"TagKeys" type:"structure" required:"true"`
- }
- // 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
- }
- 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 *OriginAccessIdentityConfig `locationName:"CloudFrontOriginAccessIdentityConfig" type:"structure" required:"true"`
- // The identity's id.
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- // The value of the ETag header 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.CloudFrontOriginAccessIdentityConfig != nil {
- if err := s.CloudFrontOriginAccessIdentityConfig.Validate(); err != nil {
- invalidParams.AddNested("CloudFrontOriginAccessIdentityConfig", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // 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()
- }
- // The request to update a distribution.
- type UpdateDistributionInput struct {
- _ struct{} `type:"structure" payload:"DistributionConfig"`
- // The distribution's configuration information.
- DistributionConfig *DistributionConfig `locationName:"DistributionConfig" type:"structure" required:"true"`
- // The distribution's id.
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- // The value of the ETag header 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.DistributionConfig != nil {
- if err := s.DistributionConfig.Validate(); err != nil {
- invalidParams.AddNested("DistributionConfig", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // 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()
- }
- // The request to update a streaming distribution.
- type UpdateStreamingDistributionInput struct {
- _ struct{} `type:"structure" payload:"StreamingDistributionConfig"`
- // The streaming distribution's id.
- Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
- // The value of the ETag header 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 *StreamingDistributionConfig `locationName:"StreamingDistributionConfig" type:"structure" required:"true"`
- }
- // 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.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
- }
- // 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()
- }
- // A complex type that contains information about viewer certificates for this
- // distribution.
- type ViewerCertificate struct {
- _ struct{} `type:"structure"`
- // If you want viewers to use HTTPS to request your objects and you're using
- // an alternate domain name in your object URLs (for example, https://example.com/logo.jpg),
- // specify the ACM certificate ARN of the custom viewer certificate for this
- // distribution. Specify either this value, IAMCertificateId, or CloudFrontDefaultCertificate.
- ACMCertificateArn *string `type:"string"`
- // Note: this field is deprecated. Please use one of [ACMCertificateArn, IAMCertificateId,
- // CloudFrontDefaultCertificate].
- Certificate *string `deprecated:"true" type:"string"`
- // Note: this field is deprecated. Please use one of [ACMCertificateArn, IAMCertificateId,
- // CloudFrontDefaultCertificate].
- CertificateSource *string `deprecated:"true" type:"string" enum:"CertificateSource"`
- // If you want viewers to use HTTPS to request your objects and you're using
- // the CloudFront domain name of your distribution in your object URLs (for
- // example, https://d111111abcdef8.cloudfront.net/logo.jpg), set to true. Omit
- // this value if you are setting an ACMCertificateArn or IAMCertificateId.
- CloudFrontDefaultCertificate *bool `type:"boolean"`
- // If you want viewers to use HTTPS to request your objects and you're using
- // an alternate domain name in your object URLs (for example, https://example.com/logo.jpg),
- // specify the IAM certificate identifier of the custom viewer certificate for
- // this distribution. Specify either this value, ACMCertificateArn, or CloudFrontDefaultCertificate.
- IAMCertificateId *string `type:"string"`
- // Specify the minimum version of the SSL protocol that you want CloudFront
- // to use, SSLv3 or TLSv1, for HTTPS connections. CloudFront will serve your
- // objects only to browsers or devices that support at least the SSL version
- // that you specify. The TLSv1 protocol is more secure, so we recommend that
- // you specify SSLv3 only if your users are using browsers or devices that don't
- // support TLSv1. If you're using a custom certificate (if you specify a value
- // for IAMCertificateId) and if you're using dedicated IP (if you specify vip
- // for SSLSupportMethod), you can choose SSLv3 or TLSv1 as the MinimumProtocolVersion.
- // If you're using a custom certificate (if you specify a value for IAMCertificateId)
- // and if you're using SNI (if you specify sni-only for SSLSupportMethod), you
- // must specify TLSv1 for MinimumProtocolVersion.
- MinimumProtocolVersion *string `type:"string" enum:"MinimumProtocolVersion"`
- // If you specify a value for IAMCertificateId, you must also specify how you
- // want CloudFront to serve HTTPS requests. Valid values are vip and sni-only.
- // If you specify vip, CloudFront uses dedicated IP addresses for your content
- // and can respond to HTTPS requests from any viewer. However, you must request
- // permission to use this feature, and you incur additional monthly charges.
- // If you specify sni-only, CloudFront can only 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. Do not specify a value
- // for SSLSupportMethod if you specified true for CloudFrontDefaultCertificate.
- 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()
- }
- const (
- // @enum CertificateSource
- CertificateSourceCloudfront = "cloudfront"
- // @enum CertificateSource
- CertificateSourceIam = "iam"
- // @enum CertificateSource
- CertificateSourceAcm = "acm"
- )
- const (
- // @enum GeoRestrictionType
- GeoRestrictionTypeBlacklist = "blacklist"
- // @enum GeoRestrictionType
- GeoRestrictionTypeWhitelist = "whitelist"
- // @enum GeoRestrictionType
- GeoRestrictionTypeNone = "none"
- )
- const (
- // @enum ItemSelection
- ItemSelectionNone = "none"
- // @enum ItemSelection
- ItemSelectionWhitelist = "whitelist"
- // @enum ItemSelection
- ItemSelectionAll = "all"
- )
- const (
- // @enum Method
- MethodGet = "GET"
- // @enum Method
- MethodHead = "HEAD"
- // @enum Method
- MethodPost = "POST"
- // @enum Method
- MethodPut = "PUT"
- // @enum Method
- MethodPatch = "PATCH"
- // @enum Method
- MethodOptions = "OPTIONS"
- // @enum Method
- MethodDelete = "DELETE"
- )
- const (
- // @enum MinimumProtocolVersion
- MinimumProtocolVersionSslv3 = "SSLv3"
- // @enum MinimumProtocolVersion
- MinimumProtocolVersionTlsv1 = "TLSv1"
- )
- const (
- // @enum OriginProtocolPolicy
- OriginProtocolPolicyHttpOnly = "http-only"
- // @enum OriginProtocolPolicy
- OriginProtocolPolicyMatchViewer = "match-viewer"
- // @enum OriginProtocolPolicy
- OriginProtocolPolicyHttpsOnly = "https-only"
- )
- const (
- // @enum PriceClass
- PriceClassPriceClass100 = "PriceClass_100"
- // @enum PriceClass
- PriceClassPriceClass200 = "PriceClass_200"
- // @enum PriceClass
- PriceClassPriceClassAll = "PriceClass_All"
- )
- const (
- // @enum SSLSupportMethod
- SSLSupportMethodSniOnly = "sni-only"
- // @enum SSLSupportMethod
- SSLSupportMethodVip = "vip"
- )
- const (
- // @enum SslProtocol
- SslProtocolSslv3 = "SSLv3"
- // @enum SslProtocol
- SslProtocolTlsv1 = "TLSv1"
- // @enum SslProtocol
- SslProtocolTlsv11 = "TLSv1.1"
- // @enum SslProtocol
- SslProtocolTlsv12 = "TLSv1.2"
- )
- const (
- // @enum ViewerProtocolPolicy
- ViewerProtocolPolicyAllowAll = "allow-all"
- // @enum ViewerProtocolPolicy
- ViewerProtocolPolicyHttpsOnly = "https-only"
- // @enum ViewerProtocolPolicy
- ViewerProtocolPolicyRedirectToHttps = "redirect-to-https"
- )
|