api.go 130 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547
  1. // THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT.
  2. // Package cloudfront provides a client for Amazon CloudFront.
  3. package cloudfront
  4. import (
  5. "time"
  6. "github.com/aws/aws-sdk-go/aws/awsutil"
  7. "github.com/aws/aws-sdk-go/aws/request"
  8. )
  9. const opCreateCloudFrontOriginAccessIdentity = "CreateCloudFrontOriginAccessIdentity2015_04_17"
  10. // CreateCloudFrontOriginAccessIdentityRequest generates a request for the CreateCloudFrontOriginAccessIdentity operation.
  11. func (c *CloudFront) CreateCloudFrontOriginAccessIdentityRequest(input *CreateCloudFrontOriginAccessIdentityInput) (req *request.Request, output *CreateCloudFrontOriginAccessIdentityOutput) {
  12. op := &request.Operation{
  13. Name: opCreateCloudFrontOriginAccessIdentity,
  14. HTTPMethod: "POST",
  15. HTTPPath: "/2015-04-17/origin-access-identity/cloudfront",
  16. }
  17. if input == nil {
  18. input = &CreateCloudFrontOriginAccessIdentityInput{}
  19. }
  20. req = c.newRequest(op, input, output)
  21. output = &CreateCloudFrontOriginAccessIdentityOutput{}
  22. req.Data = output
  23. return
  24. }
  25. // Create a new origin access identity.
  26. func (c *CloudFront) CreateCloudFrontOriginAccessIdentity(input *CreateCloudFrontOriginAccessIdentityInput) (*CreateCloudFrontOriginAccessIdentityOutput, error) {
  27. req, out := c.CreateCloudFrontOriginAccessIdentityRequest(input)
  28. err := req.Send()
  29. return out, err
  30. }
  31. const opCreateDistribution = "CreateDistribution2015_04_17"
  32. // CreateDistributionRequest generates a request for the CreateDistribution operation.
  33. func (c *CloudFront) CreateDistributionRequest(input *CreateDistributionInput) (req *request.Request, output *CreateDistributionOutput) {
  34. op := &request.Operation{
  35. Name: opCreateDistribution,
  36. HTTPMethod: "POST",
  37. HTTPPath: "/2015-04-17/distribution",
  38. }
  39. if input == nil {
  40. input = &CreateDistributionInput{}
  41. }
  42. req = c.newRequest(op, input, output)
  43. output = &CreateDistributionOutput{}
  44. req.Data = output
  45. return
  46. }
  47. // Create a new distribution.
  48. func (c *CloudFront) CreateDistribution(input *CreateDistributionInput) (*CreateDistributionOutput, error) {
  49. req, out := c.CreateDistributionRequest(input)
  50. err := req.Send()
  51. return out, err
  52. }
  53. const opCreateInvalidation = "CreateInvalidation2015_04_17"
  54. // CreateInvalidationRequest generates a request for the CreateInvalidation operation.
  55. func (c *CloudFront) CreateInvalidationRequest(input *CreateInvalidationInput) (req *request.Request, output *CreateInvalidationOutput) {
  56. op := &request.Operation{
  57. Name: opCreateInvalidation,
  58. HTTPMethod: "POST",
  59. HTTPPath: "/2015-04-17/distribution/{DistributionId}/invalidation",
  60. }
  61. if input == nil {
  62. input = &CreateInvalidationInput{}
  63. }
  64. req = c.newRequest(op, input, output)
  65. output = &CreateInvalidationOutput{}
  66. req.Data = output
  67. return
  68. }
  69. // Create a new invalidation.
  70. func (c *CloudFront) CreateInvalidation(input *CreateInvalidationInput) (*CreateInvalidationOutput, error) {
  71. req, out := c.CreateInvalidationRequest(input)
  72. err := req.Send()
  73. return out, err
  74. }
  75. const opCreateStreamingDistribution = "CreateStreamingDistribution2015_04_17"
  76. // CreateStreamingDistributionRequest generates a request for the CreateStreamingDistribution operation.
  77. func (c *CloudFront) CreateStreamingDistributionRequest(input *CreateStreamingDistributionInput) (req *request.Request, output *CreateStreamingDistributionOutput) {
  78. op := &request.Operation{
  79. Name: opCreateStreamingDistribution,
  80. HTTPMethod: "POST",
  81. HTTPPath: "/2015-04-17/streaming-distribution",
  82. }
  83. if input == nil {
  84. input = &CreateStreamingDistributionInput{}
  85. }
  86. req = c.newRequest(op, input, output)
  87. output = &CreateStreamingDistributionOutput{}
  88. req.Data = output
  89. return
  90. }
  91. // Create a new streaming distribution.
  92. func (c *CloudFront) CreateStreamingDistribution(input *CreateStreamingDistributionInput) (*CreateStreamingDistributionOutput, error) {
  93. req, out := c.CreateStreamingDistributionRequest(input)
  94. err := req.Send()
  95. return out, err
  96. }
  97. const opDeleteCloudFrontOriginAccessIdentity = "DeleteCloudFrontOriginAccessIdentity2015_04_17"
  98. // DeleteCloudFrontOriginAccessIdentityRequest generates a request for the DeleteCloudFrontOriginAccessIdentity operation.
  99. func (c *CloudFront) DeleteCloudFrontOriginAccessIdentityRequest(input *DeleteCloudFrontOriginAccessIdentityInput) (req *request.Request, output *DeleteCloudFrontOriginAccessIdentityOutput) {
  100. op := &request.Operation{
  101. Name: opDeleteCloudFrontOriginAccessIdentity,
  102. HTTPMethod: "DELETE",
  103. HTTPPath: "/2015-04-17/origin-access-identity/cloudfront/{Id}",
  104. }
  105. if input == nil {
  106. input = &DeleteCloudFrontOriginAccessIdentityInput{}
  107. }
  108. req = c.newRequest(op, input, output)
  109. output = &DeleteCloudFrontOriginAccessIdentityOutput{}
  110. req.Data = output
  111. return
  112. }
  113. // Delete an origin access identity.
  114. func (c *CloudFront) DeleteCloudFrontOriginAccessIdentity(input *DeleteCloudFrontOriginAccessIdentityInput) (*DeleteCloudFrontOriginAccessIdentityOutput, error) {
  115. req, out := c.DeleteCloudFrontOriginAccessIdentityRequest(input)
  116. err := req.Send()
  117. return out, err
  118. }
  119. const opDeleteDistribution = "DeleteDistribution2015_04_17"
  120. // DeleteDistributionRequest generates a request for the DeleteDistribution operation.
  121. func (c *CloudFront) DeleteDistributionRequest(input *DeleteDistributionInput) (req *request.Request, output *DeleteDistributionOutput) {
  122. op := &request.Operation{
  123. Name: opDeleteDistribution,
  124. HTTPMethod: "DELETE",
  125. HTTPPath: "/2015-04-17/distribution/{Id}",
  126. }
  127. if input == nil {
  128. input = &DeleteDistributionInput{}
  129. }
  130. req = c.newRequest(op, input, output)
  131. output = &DeleteDistributionOutput{}
  132. req.Data = output
  133. return
  134. }
  135. // Delete a distribution.
  136. func (c *CloudFront) DeleteDistribution(input *DeleteDistributionInput) (*DeleteDistributionOutput, error) {
  137. req, out := c.DeleteDistributionRequest(input)
  138. err := req.Send()
  139. return out, err
  140. }
  141. const opDeleteStreamingDistribution = "DeleteStreamingDistribution2015_04_17"
  142. // DeleteStreamingDistributionRequest generates a request for the DeleteStreamingDistribution operation.
  143. func (c *CloudFront) DeleteStreamingDistributionRequest(input *DeleteStreamingDistributionInput) (req *request.Request, output *DeleteStreamingDistributionOutput) {
  144. op := &request.Operation{
  145. Name: opDeleteStreamingDistribution,
  146. HTTPMethod: "DELETE",
  147. HTTPPath: "/2015-04-17/streaming-distribution/{Id}",
  148. }
  149. if input == nil {
  150. input = &DeleteStreamingDistributionInput{}
  151. }
  152. req = c.newRequest(op, input, output)
  153. output = &DeleteStreamingDistributionOutput{}
  154. req.Data = output
  155. return
  156. }
  157. // Delete a streaming distribution.
  158. func (c *CloudFront) DeleteStreamingDistribution(input *DeleteStreamingDistributionInput) (*DeleteStreamingDistributionOutput, error) {
  159. req, out := c.DeleteStreamingDistributionRequest(input)
  160. err := req.Send()
  161. return out, err
  162. }
  163. const opGetCloudFrontOriginAccessIdentity = "GetCloudFrontOriginAccessIdentity2015_04_17"
  164. // GetCloudFrontOriginAccessIdentityRequest generates a request for the GetCloudFrontOriginAccessIdentity operation.
  165. func (c *CloudFront) GetCloudFrontOriginAccessIdentityRequest(input *GetCloudFrontOriginAccessIdentityInput) (req *request.Request, output *GetCloudFrontOriginAccessIdentityOutput) {
  166. op := &request.Operation{
  167. Name: opGetCloudFrontOriginAccessIdentity,
  168. HTTPMethod: "GET",
  169. HTTPPath: "/2015-04-17/origin-access-identity/cloudfront/{Id}",
  170. }
  171. if input == nil {
  172. input = &GetCloudFrontOriginAccessIdentityInput{}
  173. }
  174. req = c.newRequest(op, input, output)
  175. output = &GetCloudFrontOriginAccessIdentityOutput{}
  176. req.Data = output
  177. return
  178. }
  179. // Get the information about an origin access identity.
  180. func (c *CloudFront) GetCloudFrontOriginAccessIdentity(input *GetCloudFrontOriginAccessIdentityInput) (*GetCloudFrontOriginAccessIdentityOutput, error) {
  181. req, out := c.GetCloudFrontOriginAccessIdentityRequest(input)
  182. err := req.Send()
  183. return out, err
  184. }
  185. const opGetCloudFrontOriginAccessIdentityConfig = "GetCloudFrontOriginAccessIdentityConfig2015_04_17"
  186. // GetCloudFrontOriginAccessIdentityConfigRequest generates a request for the GetCloudFrontOriginAccessIdentityConfig operation.
  187. func (c *CloudFront) GetCloudFrontOriginAccessIdentityConfigRequest(input *GetCloudFrontOriginAccessIdentityConfigInput) (req *request.Request, output *GetCloudFrontOriginAccessIdentityConfigOutput) {
  188. op := &request.Operation{
  189. Name: opGetCloudFrontOriginAccessIdentityConfig,
  190. HTTPMethod: "GET",
  191. HTTPPath: "/2015-04-17/origin-access-identity/cloudfront/{Id}/config",
  192. }
  193. if input == nil {
  194. input = &GetCloudFrontOriginAccessIdentityConfigInput{}
  195. }
  196. req = c.newRequest(op, input, output)
  197. output = &GetCloudFrontOriginAccessIdentityConfigOutput{}
  198. req.Data = output
  199. return
  200. }
  201. // Get the configuration information about an origin access identity.
  202. func (c *CloudFront) GetCloudFrontOriginAccessIdentityConfig(input *GetCloudFrontOriginAccessIdentityConfigInput) (*GetCloudFrontOriginAccessIdentityConfigOutput, error) {
  203. req, out := c.GetCloudFrontOriginAccessIdentityConfigRequest(input)
  204. err := req.Send()
  205. return out, err
  206. }
  207. const opGetDistribution = "GetDistribution2015_04_17"
  208. // GetDistributionRequest generates a request for the GetDistribution operation.
  209. func (c *CloudFront) GetDistributionRequest(input *GetDistributionInput) (req *request.Request, output *GetDistributionOutput) {
  210. op := &request.Operation{
  211. Name: opGetDistribution,
  212. HTTPMethod: "GET",
  213. HTTPPath: "/2015-04-17/distribution/{Id}",
  214. }
  215. if input == nil {
  216. input = &GetDistributionInput{}
  217. }
  218. req = c.newRequest(op, input, output)
  219. output = &GetDistributionOutput{}
  220. req.Data = output
  221. return
  222. }
  223. // Get the information about a distribution.
  224. func (c *CloudFront) GetDistribution(input *GetDistributionInput) (*GetDistributionOutput, error) {
  225. req, out := c.GetDistributionRequest(input)
  226. err := req.Send()
  227. return out, err
  228. }
  229. const opGetDistributionConfig = "GetDistributionConfig2015_04_17"
  230. // GetDistributionConfigRequest generates a request for the GetDistributionConfig operation.
  231. func (c *CloudFront) GetDistributionConfigRequest(input *GetDistributionConfigInput) (req *request.Request, output *GetDistributionConfigOutput) {
  232. op := &request.Operation{
  233. Name: opGetDistributionConfig,
  234. HTTPMethod: "GET",
  235. HTTPPath: "/2015-04-17/distribution/{Id}/config",
  236. }
  237. if input == nil {
  238. input = &GetDistributionConfigInput{}
  239. }
  240. req = c.newRequest(op, input, output)
  241. output = &GetDistributionConfigOutput{}
  242. req.Data = output
  243. return
  244. }
  245. // Get the configuration information about a distribution.
  246. func (c *CloudFront) GetDistributionConfig(input *GetDistributionConfigInput) (*GetDistributionConfigOutput, error) {
  247. req, out := c.GetDistributionConfigRequest(input)
  248. err := req.Send()
  249. return out, err
  250. }
  251. const opGetInvalidation = "GetInvalidation2015_04_17"
  252. // GetInvalidationRequest generates a request for the GetInvalidation operation.
  253. func (c *CloudFront) GetInvalidationRequest(input *GetInvalidationInput) (req *request.Request, output *GetInvalidationOutput) {
  254. op := &request.Operation{
  255. Name: opGetInvalidation,
  256. HTTPMethod: "GET",
  257. HTTPPath: "/2015-04-17/distribution/{DistributionId}/invalidation/{Id}",
  258. }
  259. if input == nil {
  260. input = &GetInvalidationInput{}
  261. }
  262. req = c.newRequest(op, input, output)
  263. output = &GetInvalidationOutput{}
  264. req.Data = output
  265. return
  266. }
  267. // Get the information about an invalidation.
  268. func (c *CloudFront) GetInvalidation(input *GetInvalidationInput) (*GetInvalidationOutput, error) {
  269. req, out := c.GetInvalidationRequest(input)
  270. err := req.Send()
  271. return out, err
  272. }
  273. const opGetStreamingDistribution = "GetStreamingDistribution2015_04_17"
  274. // GetStreamingDistributionRequest generates a request for the GetStreamingDistribution operation.
  275. func (c *CloudFront) GetStreamingDistributionRequest(input *GetStreamingDistributionInput) (req *request.Request, output *GetStreamingDistributionOutput) {
  276. op := &request.Operation{
  277. Name: opGetStreamingDistribution,
  278. HTTPMethod: "GET",
  279. HTTPPath: "/2015-04-17/streaming-distribution/{Id}",
  280. }
  281. if input == nil {
  282. input = &GetStreamingDistributionInput{}
  283. }
  284. req = c.newRequest(op, input, output)
  285. output = &GetStreamingDistributionOutput{}
  286. req.Data = output
  287. return
  288. }
  289. // Get the information about a streaming distribution.
  290. func (c *CloudFront) GetStreamingDistribution(input *GetStreamingDistributionInput) (*GetStreamingDistributionOutput, error) {
  291. req, out := c.GetStreamingDistributionRequest(input)
  292. err := req.Send()
  293. return out, err
  294. }
  295. const opGetStreamingDistributionConfig = "GetStreamingDistributionConfig2015_04_17"
  296. // GetStreamingDistributionConfigRequest generates a request for the GetStreamingDistributionConfig operation.
  297. func (c *CloudFront) GetStreamingDistributionConfigRequest(input *GetStreamingDistributionConfigInput) (req *request.Request, output *GetStreamingDistributionConfigOutput) {
  298. op := &request.Operation{
  299. Name: opGetStreamingDistributionConfig,
  300. HTTPMethod: "GET",
  301. HTTPPath: "/2015-04-17/streaming-distribution/{Id}/config",
  302. }
  303. if input == nil {
  304. input = &GetStreamingDistributionConfigInput{}
  305. }
  306. req = c.newRequest(op, input, output)
  307. output = &GetStreamingDistributionConfigOutput{}
  308. req.Data = output
  309. return
  310. }
  311. // Get the configuration information about a streaming distribution.
  312. func (c *CloudFront) GetStreamingDistributionConfig(input *GetStreamingDistributionConfigInput) (*GetStreamingDistributionConfigOutput, error) {
  313. req, out := c.GetStreamingDistributionConfigRequest(input)
  314. err := req.Send()
  315. return out, err
  316. }
  317. const opListCloudFrontOriginAccessIdentities = "ListCloudFrontOriginAccessIdentities2015_04_17"
  318. // ListCloudFrontOriginAccessIdentitiesRequest generates a request for the ListCloudFrontOriginAccessIdentities operation.
  319. func (c *CloudFront) ListCloudFrontOriginAccessIdentitiesRequest(input *ListCloudFrontOriginAccessIdentitiesInput) (req *request.Request, output *ListCloudFrontOriginAccessIdentitiesOutput) {
  320. op := &request.Operation{
  321. Name: opListCloudFrontOriginAccessIdentities,
  322. HTTPMethod: "GET",
  323. HTTPPath: "/2015-04-17/origin-access-identity/cloudfront",
  324. Paginator: &request.Paginator{
  325. InputTokens: []string{"Marker"},
  326. OutputTokens: []string{"CloudFrontOriginAccessIdentityList.NextMarker"},
  327. LimitToken: "MaxItems",
  328. TruncationToken: "CloudFrontOriginAccessIdentityList.IsTruncated",
  329. },
  330. }
  331. if input == nil {
  332. input = &ListCloudFrontOriginAccessIdentitiesInput{}
  333. }
  334. req = c.newRequest(op, input, output)
  335. output = &ListCloudFrontOriginAccessIdentitiesOutput{}
  336. req.Data = output
  337. return
  338. }
  339. // List origin access identities.
  340. func (c *CloudFront) ListCloudFrontOriginAccessIdentities(input *ListCloudFrontOriginAccessIdentitiesInput) (*ListCloudFrontOriginAccessIdentitiesOutput, error) {
  341. req, out := c.ListCloudFrontOriginAccessIdentitiesRequest(input)
  342. err := req.Send()
  343. return out, err
  344. }
  345. func (c *CloudFront) ListCloudFrontOriginAccessIdentitiesPages(input *ListCloudFrontOriginAccessIdentitiesInput, fn func(p *ListCloudFrontOriginAccessIdentitiesOutput, lastPage bool) (shouldContinue bool)) error {
  346. page, _ := c.ListCloudFrontOriginAccessIdentitiesRequest(input)
  347. return page.EachPage(func(p interface{}, lastPage bool) bool {
  348. return fn(p.(*ListCloudFrontOriginAccessIdentitiesOutput), lastPage)
  349. })
  350. }
  351. const opListDistributions = "ListDistributions2015_04_17"
  352. // ListDistributionsRequest generates a request for the ListDistributions operation.
  353. func (c *CloudFront) ListDistributionsRequest(input *ListDistributionsInput) (req *request.Request, output *ListDistributionsOutput) {
  354. op := &request.Operation{
  355. Name: opListDistributions,
  356. HTTPMethod: "GET",
  357. HTTPPath: "/2015-04-17/distribution",
  358. Paginator: &request.Paginator{
  359. InputTokens: []string{"Marker"},
  360. OutputTokens: []string{"DistributionList.NextMarker"},
  361. LimitToken: "MaxItems",
  362. TruncationToken: "DistributionList.IsTruncated",
  363. },
  364. }
  365. if input == nil {
  366. input = &ListDistributionsInput{}
  367. }
  368. req = c.newRequest(op, input, output)
  369. output = &ListDistributionsOutput{}
  370. req.Data = output
  371. return
  372. }
  373. // List distributions.
  374. func (c *CloudFront) ListDistributions(input *ListDistributionsInput) (*ListDistributionsOutput, error) {
  375. req, out := c.ListDistributionsRequest(input)
  376. err := req.Send()
  377. return out, err
  378. }
  379. func (c *CloudFront) ListDistributionsPages(input *ListDistributionsInput, fn func(p *ListDistributionsOutput, lastPage bool) (shouldContinue bool)) error {
  380. page, _ := c.ListDistributionsRequest(input)
  381. return page.EachPage(func(p interface{}, lastPage bool) bool {
  382. return fn(p.(*ListDistributionsOutput), lastPage)
  383. })
  384. }
  385. const opListInvalidations = "ListInvalidations2015_04_17"
  386. // ListInvalidationsRequest generates a request for the ListInvalidations operation.
  387. func (c *CloudFront) ListInvalidationsRequest(input *ListInvalidationsInput) (req *request.Request, output *ListInvalidationsOutput) {
  388. op := &request.Operation{
  389. Name: opListInvalidations,
  390. HTTPMethod: "GET",
  391. HTTPPath: "/2015-04-17/distribution/{DistributionId}/invalidation",
  392. Paginator: &request.Paginator{
  393. InputTokens: []string{"Marker"},
  394. OutputTokens: []string{"InvalidationList.NextMarker"},
  395. LimitToken: "MaxItems",
  396. TruncationToken: "InvalidationList.IsTruncated",
  397. },
  398. }
  399. if input == nil {
  400. input = &ListInvalidationsInput{}
  401. }
  402. req = c.newRequest(op, input, output)
  403. output = &ListInvalidationsOutput{}
  404. req.Data = output
  405. return
  406. }
  407. // List invalidation batches.
  408. func (c *CloudFront) ListInvalidations(input *ListInvalidationsInput) (*ListInvalidationsOutput, error) {
  409. req, out := c.ListInvalidationsRequest(input)
  410. err := req.Send()
  411. return out, err
  412. }
  413. func (c *CloudFront) ListInvalidationsPages(input *ListInvalidationsInput, fn func(p *ListInvalidationsOutput, lastPage bool) (shouldContinue bool)) error {
  414. page, _ := c.ListInvalidationsRequest(input)
  415. return page.EachPage(func(p interface{}, lastPage bool) bool {
  416. return fn(p.(*ListInvalidationsOutput), lastPage)
  417. })
  418. }
  419. const opListStreamingDistributions = "ListStreamingDistributions2015_04_17"
  420. // ListStreamingDistributionsRequest generates a request for the ListStreamingDistributions operation.
  421. func (c *CloudFront) ListStreamingDistributionsRequest(input *ListStreamingDistributionsInput) (req *request.Request, output *ListStreamingDistributionsOutput) {
  422. op := &request.Operation{
  423. Name: opListStreamingDistributions,
  424. HTTPMethod: "GET",
  425. HTTPPath: "/2015-04-17/streaming-distribution",
  426. Paginator: &request.Paginator{
  427. InputTokens: []string{"Marker"},
  428. OutputTokens: []string{"StreamingDistributionList.NextMarker"},
  429. LimitToken: "MaxItems",
  430. TruncationToken: "StreamingDistributionList.IsTruncated",
  431. },
  432. }
  433. if input == nil {
  434. input = &ListStreamingDistributionsInput{}
  435. }
  436. req = c.newRequest(op, input, output)
  437. output = &ListStreamingDistributionsOutput{}
  438. req.Data = output
  439. return
  440. }
  441. // List streaming distributions.
  442. func (c *CloudFront) ListStreamingDistributions(input *ListStreamingDistributionsInput) (*ListStreamingDistributionsOutput, error) {
  443. req, out := c.ListStreamingDistributionsRequest(input)
  444. err := req.Send()
  445. return out, err
  446. }
  447. func (c *CloudFront) ListStreamingDistributionsPages(input *ListStreamingDistributionsInput, fn func(p *ListStreamingDistributionsOutput, lastPage bool) (shouldContinue bool)) error {
  448. page, _ := c.ListStreamingDistributionsRequest(input)
  449. return page.EachPage(func(p interface{}, lastPage bool) bool {
  450. return fn(p.(*ListStreamingDistributionsOutput), lastPage)
  451. })
  452. }
  453. const opUpdateCloudFrontOriginAccessIdentity = "UpdateCloudFrontOriginAccessIdentity2015_04_17"
  454. // UpdateCloudFrontOriginAccessIdentityRequest generates a request for the UpdateCloudFrontOriginAccessIdentity operation.
  455. func (c *CloudFront) UpdateCloudFrontOriginAccessIdentityRequest(input *UpdateCloudFrontOriginAccessIdentityInput) (req *request.Request, output *UpdateCloudFrontOriginAccessIdentityOutput) {
  456. op := &request.Operation{
  457. Name: opUpdateCloudFrontOriginAccessIdentity,
  458. HTTPMethod: "PUT",
  459. HTTPPath: "/2015-04-17/origin-access-identity/cloudfront/{Id}/config",
  460. }
  461. if input == nil {
  462. input = &UpdateCloudFrontOriginAccessIdentityInput{}
  463. }
  464. req = c.newRequest(op, input, output)
  465. output = &UpdateCloudFrontOriginAccessIdentityOutput{}
  466. req.Data = output
  467. return
  468. }
  469. // Update an origin access identity.
  470. func (c *CloudFront) UpdateCloudFrontOriginAccessIdentity(input *UpdateCloudFrontOriginAccessIdentityInput) (*UpdateCloudFrontOriginAccessIdentityOutput, error) {
  471. req, out := c.UpdateCloudFrontOriginAccessIdentityRequest(input)
  472. err := req.Send()
  473. return out, err
  474. }
  475. const opUpdateDistribution = "UpdateDistribution2015_04_17"
  476. // UpdateDistributionRequest generates a request for the UpdateDistribution operation.
  477. func (c *CloudFront) UpdateDistributionRequest(input *UpdateDistributionInput) (req *request.Request, output *UpdateDistributionOutput) {
  478. op := &request.Operation{
  479. Name: opUpdateDistribution,
  480. HTTPMethod: "PUT",
  481. HTTPPath: "/2015-04-17/distribution/{Id}/config",
  482. }
  483. if input == nil {
  484. input = &UpdateDistributionInput{}
  485. }
  486. req = c.newRequest(op, input, output)
  487. output = &UpdateDistributionOutput{}
  488. req.Data = output
  489. return
  490. }
  491. // Update a distribution.
  492. func (c *CloudFront) UpdateDistribution(input *UpdateDistributionInput) (*UpdateDistributionOutput, error) {
  493. req, out := c.UpdateDistributionRequest(input)
  494. err := req.Send()
  495. return out, err
  496. }
  497. const opUpdateStreamingDistribution = "UpdateStreamingDistribution2015_04_17"
  498. // UpdateStreamingDistributionRequest generates a request for the UpdateStreamingDistribution operation.
  499. func (c *CloudFront) UpdateStreamingDistributionRequest(input *UpdateStreamingDistributionInput) (req *request.Request, output *UpdateStreamingDistributionOutput) {
  500. op := &request.Operation{
  501. Name: opUpdateStreamingDistribution,
  502. HTTPMethod: "PUT",
  503. HTTPPath: "/2015-04-17/streaming-distribution/{Id}/config",
  504. }
  505. if input == nil {
  506. input = &UpdateStreamingDistributionInput{}
  507. }
  508. req = c.newRequest(op, input, output)
  509. output = &UpdateStreamingDistributionOutput{}
  510. req.Data = output
  511. return
  512. }
  513. // Update a streaming distribution.
  514. func (c *CloudFront) UpdateStreamingDistribution(input *UpdateStreamingDistributionInput) (*UpdateStreamingDistributionOutput, error) {
  515. req, out := c.UpdateStreamingDistributionRequest(input)
  516. err := req.Send()
  517. return out, err
  518. }
  519. // A complex type that lists the AWS accounts, if any, that you included in
  520. // the TrustedSigners complex type for the default cache behavior or for any
  521. // of the other cache behaviors for this distribution. These are accounts that
  522. // you want to allow to create signed URLs for private content.
  523. type ActiveTrustedSigners struct {
  524. // Each active trusted signer.
  525. Enabled *bool `type:"boolean" required:"true"`
  526. // A complex type that contains one Signer complex type for each unique trusted
  527. // signer that is specified in the TrustedSigners complex type, including trusted
  528. // signers in the default cache behavior and in all of the other cache behaviors.
  529. Items []*Signer `locationNameList:"Signer" type:"list"`
  530. // The number of unique trusted signers included in all cache behaviors. For
  531. // example, if three cache behaviors all list the same three AWS accounts, the
  532. // value of Quantity for ActiveTrustedSigners will be 3.
  533. Quantity *int64 `type:"integer" required:"true"`
  534. metadataActiveTrustedSigners `json:"-" xml:"-"`
  535. }
  536. type metadataActiveTrustedSigners struct {
  537. SDKShapeTraits bool `type:"structure"`
  538. }
  539. // String returns the string representation
  540. func (s ActiveTrustedSigners) String() string {
  541. return awsutil.Prettify(s)
  542. }
  543. // GoString returns the string representation
  544. func (s ActiveTrustedSigners) GoString() string {
  545. return s.String()
  546. }
  547. // A complex type that contains information about CNAMEs (alternate domain names),
  548. // if any, for this distribution.
  549. type Aliases struct {
  550. // Optional: A complex type that contains CNAME elements, if any, for this distribution.
  551. // If Quantity is 0, you can omit Items.
  552. Items []*string `locationNameList:"CNAME" type:"list"`
  553. // The number of CNAMEs, if any, for this distribution.
  554. Quantity *int64 `type:"integer" required:"true"`
  555. metadataAliases `json:"-" xml:"-"`
  556. }
  557. type metadataAliases struct {
  558. SDKShapeTraits bool `type:"structure"`
  559. }
  560. // String returns the string representation
  561. func (s Aliases) String() string {
  562. return awsutil.Prettify(s)
  563. }
  564. // GoString returns the string representation
  565. func (s Aliases) GoString() string {
  566. return s.String()
  567. }
  568. // A complex type that controls which HTTP methods CloudFront processes and
  569. // forwards to your Amazon S3 bucket or your custom origin. There are three
  570. // choices: - CloudFront forwards only GET and HEAD requests. - CloudFront forwards
  571. // only GET, HEAD and OPTIONS requests. - CloudFront forwards GET, HEAD, OPTIONS,
  572. // PUT, PATCH, POST, and DELETE requests. If you pick the third choice, you
  573. // may need to restrict access to your Amazon S3 bucket or to your custom origin
  574. // so users can't perform operations that you don't want them to. For example,
  575. // you may not want users to have permission to delete objects from your origin.
  576. type AllowedMethods struct {
  577. // A complex type that controls whether CloudFront caches the response to requests
  578. // using the specified HTTP methods. There are two choices: - CloudFront caches
  579. // responses to GET and HEAD requests. - CloudFront caches responses to GET,
  580. // HEAD, and OPTIONS requests. If you pick the second choice for your S3 Origin,
  581. // you may need to forward Access-Control-Request-Method, Access-Control-Request-Headers
  582. // and Origin headers for the responses to be cached correctly.
  583. CachedMethods *CachedMethods `type:"structure"`
  584. // A complex type that contains the HTTP methods that you want CloudFront to
  585. // process and forward to your origin.
  586. Items []*string `locationNameList:"Method" type:"list" required:"true"`
  587. // The number of HTTP methods that you want CloudFront to forward to your origin.
  588. // Valid values are 2 (for GET and HEAD requests), 3 (for GET, HEAD and OPTIONS
  589. // requests) and 7 (for GET, HEAD, OPTIONS, PUT, PATCH, POST, and DELETE requests).
  590. Quantity *int64 `type:"integer" required:"true"`
  591. metadataAllowedMethods `json:"-" xml:"-"`
  592. }
  593. type metadataAllowedMethods struct {
  594. SDKShapeTraits bool `type:"structure"`
  595. }
  596. // String returns the string representation
  597. func (s AllowedMethods) String() string {
  598. return awsutil.Prettify(s)
  599. }
  600. // GoString returns the string representation
  601. func (s AllowedMethods) GoString() string {
  602. return s.String()
  603. }
  604. // A complex type that describes how CloudFront processes requests. You can
  605. // create up to 10 cache behaviors.You must create at least as many cache behaviors
  606. // (including the default cache behavior) as you have origins if you want CloudFront
  607. // to distribute objects from all of the origins. Each cache behavior specifies
  608. // the one origin from which you want CloudFront to get objects. If you have
  609. // two origins and only the default cache behavior, the default cache behavior
  610. // will cause CloudFront to get objects from one of the origins, but the other
  611. // origin will never be used. If you don't want to specify any cache behaviors,
  612. // include only an empty CacheBehaviors element. Don't include an empty CacheBehavior
  613. // element, or CloudFront returns a MalformedXML error. To delete all cache
  614. // behaviors in an existing distribution, update the distribution configuration
  615. // and include only an empty CacheBehaviors element. To add, change, or remove
  616. // one or more cache behaviors, update the distribution configuration and specify
  617. // all of the cache behaviors that you want to include in the updated distribution.
  618. type CacheBehavior struct {
  619. // A complex type that controls which HTTP methods CloudFront processes and
  620. // forwards to your Amazon S3 bucket or your custom origin. There are three
  621. // choices: - CloudFront forwards only GET and HEAD requests. - CloudFront forwards
  622. // only GET, HEAD and OPTIONS requests. - CloudFront forwards GET, HEAD, OPTIONS,
  623. // PUT, PATCH, POST, and DELETE requests. If you pick the third choice, you
  624. // may need to restrict access to your Amazon S3 bucket or to your custom origin
  625. // so users can't perform operations that you don't want them to. For example,
  626. // you may not want users to have permission to delete objects from your origin.
  627. AllowedMethods *AllowedMethods `type:"structure"`
  628. // If you don't configure your origin to add a Cache-Control max-age directive
  629. // or an Expires header, DefaultTTL is the default amount of time (in seconds)
  630. // that an object is in a CloudFront cache before CloudFront forwards another
  631. // request to your origin to determine whether the object has been updated.
  632. // The value that you specify applies only when your origin does not add HTTP
  633. // headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires
  634. // to objects. You can specify a value from 0 to 3,153,600,000 seconds (100
  635. // years).
  636. DefaultTTL *int64 `type:"long"`
  637. // A complex type that specifies how CloudFront handles query strings, cookies
  638. // and headers.
  639. ForwardedValues *ForwardedValues `type:"structure" required:"true"`
  640. // The maximum amount of time (in seconds) that an object is in a CloudFront
  641. // cache before CloudFront forwards another request to your origin to determine
  642. // whether the object has been updated. The value that you specify applies only
  643. // when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control
  644. // s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000
  645. // seconds (100 years).
  646. MaxTTL *int64 `type:"long"`
  647. // The minimum amount of time that you want objects to stay in CloudFront caches
  648. // before CloudFront queries your origin to see whether the object has been
  649. // updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).
  650. MinTTL *int64 `type:"long" required:"true"`
  651. // The pattern (for example, images/*.jpg) that specifies which requests you
  652. // want this cache behavior to apply to. When CloudFront receives an end-user
  653. // request, the requested path is compared with path patterns in the order in
  654. // which cache behaviors are listed in the distribution. The path pattern for
  655. // the default cache behavior is * and cannot be changed. If the request for
  656. // an object does not match the path pattern for any cache behaviors, CloudFront
  657. // applies the behavior in the default cache behavior.
  658. PathPattern *string `type:"string" required:"true"`
  659. // Indicates whether you want to distribute media files in Microsoft Smooth
  660. // Streaming format using the origin that is associated with this cache behavior.
  661. // If so, specify true; if not, specify false.
  662. SmoothStreaming *bool `type:"boolean"`
  663. // The value of ID for the origin that you want CloudFront to route requests
  664. // to when a request matches the path pattern either for a cache behavior or
  665. // for the default cache behavior.
  666. TargetOriginId *string `type:"string" required:"true"`
  667. // A complex type that specifies the AWS accounts, if any, that you want to
  668. // allow to create signed URLs for private content. If you want to require signed
  669. // URLs in requests for objects in the target origin that match the PathPattern
  670. // for this cache behavior, specify true for Enabled, and specify the applicable
  671. // values for Quantity and Items. For more information, go to Using a Signed
  672. // URL to Serve Private Content in the Amazon CloudFront Developer Guide. If
  673. // you don't want to require signed URLs in requests for objects that match
  674. // PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To
  675. // add, change, or remove one or more trusted signers, change Enabled to true
  676. // (if it's currently false), change Quantity as applicable, and specify all
  677. // of the trusted signers that you want to include in the updated distribution.
  678. TrustedSigners *TrustedSigners `type:"structure" required:"true"`
  679. // Use this element to specify the protocol that users can use to access the
  680. // files in the origin specified by TargetOriginId when a request matches the
  681. // path pattern in PathPattern. If you want CloudFront to allow end users to
  682. // use any available protocol, specify allow-all. If you want CloudFront to
  683. // require HTTPS, specify https. If you want CloudFront to respond to an HTTP
  684. // request with an HTTP status code of 301 (Moved Permanently) and the HTTPS
  685. // URL, specify redirect-to-https. The viewer then resubmits the request using
  686. // the HTTPS URL.
  687. ViewerProtocolPolicy *string `type:"string" required:"true" enum:"ViewerProtocolPolicy"`
  688. metadataCacheBehavior `json:"-" xml:"-"`
  689. }
  690. type metadataCacheBehavior struct {
  691. SDKShapeTraits bool `type:"structure"`
  692. }
  693. // String returns the string representation
  694. func (s CacheBehavior) String() string {
  695. return awsutil.Prettify(s)
  696. }
  697. // GoString returns the string representation
  698. func (s CacheBehavior) GoString() string {
  699. return s.String()
  700. }
  701. // A complex type that contains zero or more CacheBehavior elements.
  702. type CacheBehaviors struct {
  703. // Optional: A complex type that contains cache behaviors for this distribution.
  704. // If Quantity is 0, you can omit Items.
  705. Items []*CacheBehavior `locationNameList:"CacheBehavior" type:"list"`
  706. // The number of cache behaviors for this distribution.
  707. Quantity *int64 `type:"integer" required:"true"`
  708. metadataCacheBehaviors `json:"-" xml:"-"`
  709. }
  710. type metadataCacheBehaviors struct {
  711. SDKShapeTraits bool `type:"structure"`
  712. }
  713. // String returns the string representation
  714. func (s CacheBehaviors) String() string {
  715. return awsutil.Prettify(s)
  716. }
  717. // GoString returns the string representation
  718. func (s CacheBehaviors) GoString() string {
  719. return s.String()
  720. }
  721. // A complex type that controls whether CloudFront caches the response to requests
  722. // using the specified HTTP methods. There are two choices: - CloudFront caches
  723. // responses to GET and HEAD requests. - CloudFront caches responses to GET,
  724. // HEAD, and OPTIONS requests. If you pick the second choice for your S3 Origin,
  725. // you may need to forward Access-Control-Request-Method, Access-Control-Request-Headers
  726. // and Origin headers for the responses to be cached correctly.
  727. type CachedMethods struct {
  728. // A complex type that contains the HTTP methods that you want CloudFront to
  729. // cache responses to.
  730. Items []*string `locationNameList:"Method" type:"list" required:"true"`
  731. // The number of HTTP methods for which you want CloudFront to cache responses.
  732. // Valid values are 2 (for caching responses to GET and HEAD requests) and 3
  733. // (for caching responses to GET, HEAD, and OPTIONS requests).
  734. Quantity *int64 `type:"integer" required:"true"`
  735. metadataCachedMethods `json:"-" xml:"-"`
  736. }
  737. type metadataCachedMethods struct {
  738. SDKShapeTraits bool `type:"structure"`
  739. }
  740. // String returns the string representation
  741. func (s CachedMethods) String() string {
  742. return awsutil.Prettify(s)
  743. }
  744. // GoString returns the string representation
  745. func (s CachedMethods) GoString() string {
  746. return s.String()
  747. }
  748. // A complex type that specifies the whitelisted cookies, if any, that you want
  749. // CloudFront to forward to your origin that is associated with this cache behavior.
  750. type CookieNames struct {
  751. // Optional: A complex type that contains whitelisted cookies for this cache
  752. // behavior. If Quantity is 0, you can omit Items.
  753. Items []*string `locationNameList:"Name" type:"list"`
  754. // The number of whitelisted cookies for this cache behavior.
  755. Quantity *int64 `type:"integer" required:"true"`
  756. metadataCookieNames `json:"-" xml:"-"`
  757. }
  758. type metadataCookieNames struct {
  759. SDKShapeTraits bool `type:"structure"`
  760. }
  761. // String returns the string representation
  762. func (s CookieNames) String() string {
  763. return awsutil.Prettify(s)
  764. }
  765. // GoString returns the string representation
  766. func (s CookieNames) GoString() string {
  767. return s.String()
  768. }
  769. // A complex type that specifies the cookie preferences associated with this
  770. // cache behavior.
  771. type CookiePreference struct {
  772. // Use this element to specify whether you want CloudFront to forward cookies
  773. // to the origin that is associated with this cache behavior. You can specify
  774. // all, none or whitelist. If you choose All, CloudFront forwards all cookies
  775. // regardless of how many your application uses.
  776. Forward *string `type:"string" required:"true" enum:"ItemSelection"`
  777. // A complex type that specifies the whitelisted cookies, if any, that you want
  778. // CloudFront to forward to your origin that is associated with this cache behavior.
  779. WhitelistedNames *CookieNames `type:"structure"`
  780. metadataCookiePreference `json:"-" xml:"-"`
  781. }
  782. type metadataCookiePreference struct {
  783. SDKShapeTraits bool `type:"structure"`
  784. }
  785. // String returns the string representation
  786. func (s CookiePreference) String() string {
  787. return awsutil.Prettify(s)
  788. }
  789. // GoString returns the string representation
  790. func (s CookiePreference) GoString() string {
  791. return s.String()
  792. }
  793. // The request to create a new origin access identity.
  794. type CreateCloudFrontOriginAccessIdentityInput struct {
  795. // The origin access identity's configuration information.
  796. CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `locationName:"CloudFrontOriginAccessIdentityConfig" type:"structure" required:"true"`
  797. metadataCreateCloudFrontOriginAccessIdentityInput `json:"-" xml:"-"`
  798. }
  799. type metadataCreateCloudFrontOriginAccessIdentityInput struct {
  800. SDKShapeTraits bool `type:"structure" payload:"CloudFrontOriginAccessIdentityConfig"`
  801. }
  802. // String returns the string representation
  803. func (s CreateCloudFrontOriginAccessIdentityInput) String() string {
  804. return awsutil.Prettify(s)
  805. }
  806. // GoString returns the string representation
  807. func (s CreateCloudFrontOriginAccessIdentityInput) GoString() string {
  808. return s.String()
  809. }
  810. // The returned result of the corresponding request.
  811. type CreateCloudFrontOriginAccessIdentityOutput struct {
  812. // The origin access identity's information.
  813. CloudFrontOriginAccessIdentity *OriginAccessIdentity `type:"structure"`
  814. // The current version of the origin access identity created.
  815. ETag *string `location:"header" locationName:"ETag" type:"string"`
  816. // The fully qualified URI of the new origin access identity just created. For
  817. // example: https://cloudfront.amazonaws.com/2010-11-01/origin-access-identity/cloudfront/E74FTE3AJFJ256A.
  818. Location *string `location:"header" locationName:"Location" type:"string"`
  819. metadataCreateCloudFrontOriginAccessIdentityOutput `json:"-" xml:"-"`
  820. }
  821. type metadataCreateCloudFrontOriginAccessIdentityOutput struct {
  822. SDKShapeTraits bool `type:"structure" payload:"CloudFrontOriginAccessIdentity"`
  823. }
  824. // String returns the string representation
  825. func (s CreateCloudFrontOriginAccessIdentityOutput) String() string {
  826. return awsutil.Prettify(s)
  827. }
  828. // GoString returns the string representation
  829. func (s CreateCloudFrontOriginAccessIdentityOutput) GoString() string {
  830. return s.String()
  831. }
  832. // The request to create a new distribution.
  833. type CreateDistributionInput struct {
  834. // The distribution's configuration information.
  835. DistributionConfig *DistributionConfig `locationName:"DistributionConfig" type:"structure" required:"true"`
  836. metadataCreateDistributionInput `json:"-" xml:"-"`
  837. }
  838. type metadataCreateDistributionInput struct {
  839. SDKShapeTraits bool `type:"structure" payload:"DistributionConfig"`
  840. }
  841. // String returns the string representation
  842. func (s CreateDistributionInput) String() string {
  843. return awsutil.Prettify(s)
  844. }
  845. // GoString returns the string representation
  846. func (s CreateDistributionInput) GoString() string {
  847. return s.String()
  848. }
  849. // The returned result of the corresponding request.
  850. type CreateDistributionOutput struct {
  851. // The distribution's information.
  852. Distribution *Distribution `type:"structure"`
  853. // The current version of the distribution created.
  854. ETag *string `location:"header" locationName:"ETag" type:"string"`
  855. // The fully qualified URI of the new distribution resource just created. For
  856. // example: https://cloudfront.amazonaws.com/2010-11-01/distribution/EDFDVBD632BHDS5.
  857. Location *string `location:"header" locationName:"Location" type:"string"`
  858. metadataCreateDistributionOutput `json:"-" xml:"-"`
  859. }
  860. type metadataCreateDistributionOutput struct {
  861. SDKShapeTraits bool `type:"structure" payload:"Distribution"`
  862. }
  863. // String returns the string representation
  864. func (s CreateDistributionOutput) String() string {
  865. return awsutil.Prettify(s)
  866. }
  867. // GoString returns the string representation
  868. func (s CreateDistributionOutput) GoString() string {
  869. return s.String()
  870. }
  871. // The request to create an invalidation.
  872. type CreateInvalidationInput struct {
  873. // The distribution's id.
  874. DistributionId *string `location:"uri" locationName:"DistributionId" type:"string" required:"true"`
  875. // The batch information for the invalidation.
  876. InvalidationBatch *InvalidationBatch `locationName:"InvalidationBatch" type:"structure" required:"true"`
  877. metadataCreateInvalidationInput `json:"-" xml:"-"`
  878. }
  879. type metadataCreateInvalidationInput struct {
  880. SDKShapeTraits bool `type:"structure" payload:"InvalidationBatch"`
  881. }
  882. // String returns the string representation
  883. func (s CreateInvalidationInput) String() string {
  884. return awsutil.Prettify(s)
  885. }
  886. // GoString returns the string representation
  887. func (s CreateInvalidationInput) GoString() string {
  888. return s.String()
  889. }
  890. // The returned result of the corresponding request.
  891. type CreateInvalidationOutput struct {
  892. // The invalidation's information.
  893. Invalidation *Invalidation `type:"structure"`
  894. // The fully qualified URI of the distribution and invalidation batch request,
  895. // including the Invalidation ID.
  896. Location *string `location:"header" locationName:"Location" type:"string"`
  897. metadataCreateInvalidationOutput `json:"-" xml:"-"`
  898. }
  899. type metadataCreateInvalidationOutput struct {
  900. SDKShapeTraits bool `type:"structure" payload:"Invalidation"`
  901. }
  902. // String returns the string representation
  903. func (s CreateInvalidationOutput) String() string {
  904. return awsutil.Prettify(s)
  905. }
  906. // GoString returns the string representation
  907. func (s CreateInvalidationOutput) GoString() string {
  908. return s.String()
  909. }
  910. // The request to create a new streaming distribution.
  911. type CreateStreamingDistributionInput struct {
  912. // The streaming distribution's configuration information.
  913. StreamingDistributionConfig *StreamingDistributionConfig `locationName:"StreamingDistributionConfig" type:"structure" required:"true"`
  914. metadataCreateStreamingDistributionInput `json:"-" xml:"-"`
  915. }
  916. type metadataCreateStreamingDistributionInput struct {
  917. SDKShapeTraits bool `type:"structure" payload:"StreamingDistributionConfig"`
  918. }
  919. // String returns the string representation
  920. func (s CreateStreamingDistributionInput) String() string {
  921. return awsutil.Prettify(s)
  922. }
  923. // GoString returns the string representation
  924. func (s CreateStreamingDistributionInput) GoString() string {
  925. return s.String()
  926. }
  927. // The returned result of the corresponding request.
  928. type CreateStreamingDistributionOutput struct {
  929. // The current version of the streaming distribution created.
  930. ETag *string `location:"header" locationName:"ETag" type:"string"`
  931. // The fully qualified URI of the new streaming distribution resource just created.
  932. // For example: https://cloudfront.amazonaws.com/2010-11-01/streaming-distribution/EGTXBD79H29TRA8.
  933. Location *string `location:"header" locationName:"Location" type:"string"`
  934. // The streaming distribution's information.
  935. StreamingDistribution *StreamingDistribution `type:"structure"`
  936. metadataCreateStreamingDistributionOutput `json:"-" xml:"-"`
  937. }
  938. type metadataCreateStreamingDistributionOutput struct {
  939. SDKShapeTraits bool `type:"structure" payload:"StreamingDistribution"`
  940. }
  941. // String returns the string representation
  942. func (s CreateStreamingDistributionOutput) String() string {
  943. return awsutil.Prettify(s)
  944. }
  945. // GoString returns the string representation
  946. func (s CreateStreamingDistributionOutput) GoString() string {
  947. return s.String()
  948. }
  949. // A complex type that describes how you'd prefer CloudFront to respond to requests
  950. // that result in either a 4xx or 5xx response. You can control whether a custom
  951. // error page should be displayed, what the desired response code should be
  952. // for this error page and how long should the error response be cached by CloudFront.
  953. // If you don't want to specify any custom error responses, include only an
  954. // empty CustomErrorResponses element. To delete all custom error responses
  955. // in an existing distribution, update the distribution configuration and include
  956. // only an empty CustomErrorResponses element. To add, change, or remove one
  957. // or more custom error responses, update the distribution configuration and
  958. // specify all of the custom error responses that you want to include in the
  959. // updated distribution.
  960. type CustomErrorResponse struct {
  961. // The minimum amount of time you want HTTP error codes to stay in CloudFront
  962. // caches before CloudFront queries your origin to see whether the object has
  963. // been updated. You can specify a value from 0 to 31,536,000.
  964. ErrorCachingMinTTL *int64 `type:"long"`
  965. // The 4xx or 5xx HTTP status code that you want to customize. For a list of
  966. // HTTP status codes that you can customize, see CloudFront documentation.
  967. ErrorCode *int64 `type:"integer" required:"true"`
  968. // The HTTP status code that you want CloudFront to return with the custom error
  969. // page to the viewer. For a list of HTTP status codes that you can replace,
  970. // see CloudFront Documentation.
  971. ResponseCode *string `type:"string"`
  972. // The path of the custom error page (for example, /custom_404.html). The path
  973. // is relative to the distribution and must begin with a slash (/). If the path
  974. // includes any non-ASCII characters or unsafe characters as defined in RFC
  975. // 1783 (http://www.ietf.org/rfc/rfc1738.txt), URL encode those characters.
  976. // Do not URL encode any other characters in the path, or CloudFront will not
  977. // return the custom error page to the viewer.
  978. ResponsePagePath *string `type:"string"`
  979. metadataCustomErrorResponse `json:"-" xml:"-"`
  980. }
  981. type metadataCustomErrorResponse struct {
  982. SDKShapeTraits bool `type:"structure"`
  983. }
  984. // String returns the string representation
  985. func (s CustomErrorResponse) String() string {
  986. return awsutil.Prettify(s)
  987. }
  988. // GoString returns the string representation
  989. func (s CustomErrorResponse) GoString() string {
  990. return s.String()
  991. }
  992. // A complex type that contains zero or more CustomErrorResponse elements.
  993. type CustomErrorResponses struct {
  994. // Optional: A complex type that contains custom error responses for this distribution.
  995. // If Quantity is 0, you can omit Items.
  996. Items []*CustomErrorResponse `locationNameList:"CustomErrorResponse" type:"list"`
  997. // The number of custom error responses for this distribution.
  998. Quantity *int64 `type:"integer" required:"true"`
  999. metadataCustomErrorResponses `json:"-" xml:"-"`
  1000. }
  1001. type metadataCustomErrorResponses struct {
  1002. SDKShapeTraits bool `type:"structure"`
  1003. }
  1004. // String returns the string representation
  1005. func (s CustomErrorResponses) String() string {
  1006. return awsutil.Prettify(s)
  1007. }
  1008. // GoString returns the string representation
  1009. func (s CustomErrorResponses) GoString() string {
  1010. return s.String()
  1011. }
  1012. // A customer origin.
  1013. type CustomOriginConfig struct {
  1014. // The HTTP port the custom origin listens on.
  1015. HTTPPort *int64 `type:"integer" required:"true"`
  1016. // The HTTPS port the custom origin listens on.
  1017. HTTPSPort *int64 `type:"integer" required:"true"`
  1018. // The origin protocol policy to apply to your origin.
  1019. OriginProtocolPolicy *string `type:"string" required:"true" enum:"OriginProtocolPolicy"`
  1020. metadataCustomOriginConfig `json:"-" xml:"-"`
  1021. }
  1022. type metadataCustomOriginConfig struct {
  1023. SDKShapeTraits bool `type:"structure"`
  1024. }
  1025. // String returns the string representation
  1026. func (s CustomOriginConfig) String() string {
  1027. return awsutil.Prettify(s)
  1028. }
  1029. // GoString returns the string representation
  1030. func (s CustomOriginConfig) GoString() string {
  1031. return s.String()
  1032. }
  1033. // A complex type that describes the default cache behavior if you do not specify
  1034. // a CacheBehavior element or if files don't match any of the values of PathPattern
  1035. // in CacheBehavior elements.You must create exactly one default cache behavior.
  1036. type DefaultCacheBehavior struct {
  1037. // A complex type that controls which HTTP methods CloudFront processes and
  1038. // forwards to your Amazon S3 bucket or your custom origin. There are three
  1039. // choices: - CloudFront forwards only GET and HEAD requests. - CloudFront forwards
  1040. // only GET, HEAD and OPTIONS requests. - CloudFront forwards GET, HEAD, OPTIONS,
  1041. // PUT, PATCH, POST, and DELETE requests. If you pick the third choice, you
  1042. // may need to restrict access to your Amazon S3 bucket or to your custom origin
  1043. // so users can't perform operations that you don't want them to. For example,
  1044. // you may not want users to have permission to delete objects from your origin.
  1045. AllowedMethods *AllowedMethods `type:"structure"`
  1046. // If you don't configure your origin to add a Cache-Control max-age directive
  1047. // or an Expires header, DefaultTTL is the default amount of time (in seconds)
  1048. // that an object is in a CloudFront cache before CloudFront forwards another
  1049. // request to your origin to determine whether the object has been updated.
  1050. // The value that you specify applies only when your origin does not add HTTP
  1051. // headers such as Cache-Control max-age, Cache-Control s-maxage, and Expires
  1052. // to objects. You can specify a value from 0 to 3,153,600,000 seconds (100
  1053. // years).
  1054. DefaultTTL *int64 `type:"long"`
  1055. // A complex type that specifies how CloudFront handles query strings, cookies
  1056. // and headers.
  1057. ForwardedValues *ForwardedValues `type:"structure" required:"true"`
  1058. // The maximum amount of time (in seconds) that an object is in a CloudFront
  1059. // cache before CloudFront forwards another request to your origin to determine
  1060. // whether the object has been updated. The value that you specify applies only
  1061. // when your origin adds HTTP headers such as Cache-Control max-age, Cache-Control
  1062. // s-maxage, and Expires to objects. You can specify a value from 0 to 3,153,600,000
  1063. // seconds (100 years).
  1064. MaxTTL *int64 `type:"long"`
  1065. // The minimum amount of time that you want objects to stay in CloudFront caches
  1066. // before CloudFront queries your origin to see whether the object has been
  1067. // updated.You can specify a value from 0 to 3,153,600,000 seconds (100 years).
  1068. MinTTL *int64 `type:"long" required:"true"`
  1069. // Indicates whether you want to distribute media files in Microsoft Smooth
  1070. // Streaming format using the origin that is associated with this cache behavior.
  1071. // If so, specify true; if not, specify false.
  1072. SmoothStreaming *bool `type:"boolean"`
  1073. // The value of ID for the origin that you want CloudFront to route requests
  1074. // to when a request matches the path pattern either for a cache behavior or
  1075. // for the default cache behavior.
  1076. TargetOriginId *string `type:"string" required:"true"`
  1077. // A complex type that specifies the AWS accounts, if any, that you want to
  1078. // allow to create signed URLs for private content. If you want to require signed
  1079. // URLs in requests for objects in the target origin that match the PathPattern
  1080. // for this cache behavior, specify true for Enabled, and specify the applicable
  1081. // values for Quantity and Items. For more information, go to Using a Signed
  1082. // URL to Serve Private Content in the Amazon CloudFront Developer Guide. If
  1083. // you don't want to require signed URLs in requests for objects that match
  1084. // PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To
  1085. // add, change, or remove one or more trusted signers, change Enabled to true
  1086. // (if it's currently false), change Quantity as applicable, and specify all
  1087. // of the trusted signers that you want to include in the updated distribution.
  1088. TrustedSigners *TrustedSigners `type:"structure" required:"true"`
  1089. // Use this element to specify the protocol that users can use to access the
  1090. // files in the origin specified by TargetOriginId when a request matches the
  1091. // path pattern in PathPattern. If you want CloudFront to allow end users to
  1092. // use any available protocol, specify allow-all. If you want CloudFront to
  1093. // require HTTPS, specify https. If you want CloudFront to respond to an HTTP
  1094. // request with an HTTP status code of 301 (Moved Permanently) and the HTTPS
  1095. // URL, specify redirect-to-https. The viewer then resubmits the request using
  1096. // the HTTPS URL.
  1097. ViewerProtocolPolicy *string `type:"string" required:"true" enum:"ViewerProtocolPolicy"`
  1098. metadataDefaultCacheBehavior `json:"-" xml:"-"`
  1099. }
  1100. type metadataDefaultCacheBehavior struct {
  1101. SDKShapeTraits bool `type:"structure"`
  1102. }
  1103. // String returns the string representation
  1104. func (s DefaultCacheBehavior) String() string {
  1105. return awsutil.Prettify(s)
  1106. }
  1107. // GoString returns the string representation
  1108. func (s DefaultCacheBehavior) GoString() string {
  1109. return s.String()
  1110. }
  1111. // The request to delete a origin access identity.
  1112. type DeleteCloudFrontOriginAccessIdentityInput struct {
  1113. // The origin access identity's id.
  1114. Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  1115. // The value of the ETag header you received from a previous GET or PUT request.
  1116. // For example: E2QWRUHAPOMQZL.
  1117. IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
  1118. metadataDeleteCloudFrontOriginAccessIdentityInput `json:"-" xml:"-"`
  1119. }
  1120. type metadataDeleteCloudFrontOriginAccessIdentityInput struct {
  1121. SDKShapeTraits bool `type:"structure"`
  1122. }
  1123. // String returns the string representation
  1124. func (s DeleteCloudFrontOriginAccessIdentityInput) String() string {
  1125. return awsutil.Prettify(s)
  1126. }
  1127. // GoString returns the string representation
  1128. func (s DeleteCloudFrontOriginAccessIdentityInput) GoString() string {
  1129. return s.String()
  1130. }
  1131. type DeleteCloudFrontOriginAccessIdentityOutput struct {
  1132. metadataDeleteCloudFrontOriginAccessIdentityOutput `json:"-" xml:"-"`
  1133. }
  1134. type metadataDeleteCloudFrontOriginAccessIdentityOutput struct {
  1135. SDKShapeTraits bool `type:"structure"`
  1136. }
  1137. // String returns the string representation
  1138. func (s DeleteCloudFrontOriginAccessIdentityOutput) String() string {
  1139. return awsutil.Prettify(s)
  1140. }
  1141. // GoString returns the string representation
  1142. func (s DeleteCloudFrontOriginAccessIdentityOutput) GoString() string {
  1143. return s.String()
  1144. }
  1145. // The request to delete a distribution.
  1146. type DeleteDistributionInput struct {
  1147. // The distribution id.
  1148. Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  1149. // The value of the ETag header you received when you disabled the distribution.
  1150. // For example: E2QWRUHAPOMQZL.
  1151. IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
  1152. metadataDeleteDistributionInput `json:"-" xml:"-"`
  1153. }
  1154. type metadataDeleteDistributionInput struct {
  1155. SDKShapeTraits bool `type:"structure"`
  1156. }
  1157. // String returns the string representation
  1158. func (s DeleteDistributionInput) String() string {
  1159. return awsutil.Prettify(s)
  1160. }
  1161. // GoString returns the string representation
  1162. func (s DeleteDistributionInput) GoString() string {
  1163. return s.String()
  1164. }
  1165. type DeleteDistributionOutput struct {
  1166. metadataDeleteDistributionOutput `json:"-" xml:"-"`
  1167. }
  1168. type metadataDeleteDistributionOutput struct {
  1169. SDKShapeTraits bool `type:"structure"`
  1170. }
  1171. // String returns the string representation
  1172. func (s DeleteDistributionOutput) String() string {
  1173. return awsutil.Prettify(s)
  1174. }
  1175. // GoString returns the string representation
  1176. func (s DeleteDistributionOutput) GoString() string {
  1177. return s.String()
  1178. }
  1179. // The request to delete a streaming distribution.
  1180. type DeleteStreamingDistributionInput struct {
  1181. // The distribution id.
  1182. Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  1183. // The value of the ETag header you received when you disabled the streaming
  1184. // distribution. For example: E2QWRUHAPOMQZL.
  1185. IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
  1186. metadataDeleteStreamingDistributionInput `json:"-" xml:"-"`
  1187. }
  1188. type metadataDeleteStreamingDistributionInput struct {
  1189. SDKShapeTraits bool `type:"structure"`
  1190. }
  1191. // String returns the string representation
  1192. func (s DeleteStreamingDistributionInput) String() string {
  1193. return awsutil.Prettify(s)
  1194. }
  1195. // GoString returns the string representation
  1196. func (s DeleteStreamingDistributionInput) GoString() string {
  1197. return s.String()
  1198. }
  1199. type DeleteStreamingDistributionOutput struct {
  1200. metadataDeleteStreamingDistributionOutput `json:"-" xml:"-"`
  1201. }
  1202. type metadataDeleteStreamingDistributionOutput struct {
  1203. SDKShapeTraits bool `type:"structure"`
  1204. }
  1205. // String returns the string representation
  1206. func (s DeleteStreamingDistributionOutput) String() string {
  1207. return awsutil.Prettify(s)
  1208. }
  1209. // GoString returns the string representation
  1210. func (s DeleteStreamingDistributionOutput) GoString() string {
  1211. return s.String()
  1212. }
  1213. // A distribution.
  1214. type Distribution struct {
  1215. // CloudFront automatically adds this element to the response only if you've
  1216. // set up the distribution to serve private content with signed URLs. The element
  1217. // lists the key pair IDs that CloudFront is aware of for each trusted signer.
  1218. // The Signer child element lists the AWS account number of the trusted signer
  1219. // (or an empty Self element if the signer is you). The Signer element also
  1220. // includes the IDs of any active key pairs associated with the trusted signer's
  1221. // AWS account. If no KeyPairId element appears for a Signer, that signer can't
  1222. // create working signed URLs.
  1223. ActiveTrustedSigners *ActiveTrustedSigners `type:"structure" required:"true"`
  1224. // The current configuration information for the distribution.
  1225. DistributionConfig *DistributionConfig `type:"structure" required:"true"`
  1226. // The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.
  1227. DomainName *string `type:"string" required:"true"`
  1228. // The identifier for the distribution. For example: EDFDVBD632BHDS5.
  1229. Id *string `type:"string" required:"true"`
  1230. // The number of invalidation batches currently in progress.
  1231. InProgressInvalidationBatches *int64 `type:"integer" required:"true"`
  1232. // The date and time the distribution was last modified.
  1233. LastModifiedTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  1234. // This response element indicates the current status of the distribution. When
  1235. // the status is Deployed, the distribution's information is fully propagated
  1236. // throughout the Amazon CloudFront system.
  1237. Status *string `type:"string" required:"true"`
  1238. metadataDistribution `json:"-" xml:"-"`
  1239. }
  1240. type metadataDistribution struct {
  1241. SDKShapeTraits bool `type:"structure"`
  1242. }
  1243. // String returns the string representation
  1244. func (s Distribution) String() string {
  1245. return awsutil.Prettify(s)
  1246. }
  1247. // GoString returns the string representation
  1248. func (s Distribution) GoString() string {
  1249. return s.String()
  1250. }
  1251. // A distribution Configuration.
  1252. type DistributionConfig struct {
  1253. // A complex type that contains information about CNAMEs (alternate domain names),
  1254. // if any, for this distribution.
  1255. Aliases *Aliases `type:"structure"`
  1256. // A complex type that contains zero or more CacheBehavior elements.
  1257. CacheBehaviors *CacheBehaviors `type:"structure"`
  1258. // A unique number that ensures the request can't be replayed. If the CallerReference
  1259. // is new (no matter the content of the DistributionConfig object), a new distribution
  1260. // is created. If the CallerReference is a value you already sent in a previous
  1261. // request to create a distribution, and the content of the DistributionConfig
  1262. // is identical to the original request (ignoring white space), the response
  1263. // includes the same information returned to the original request. If the CallerReference
  1264. // is a value you already sent in a previous request to create a distribution
  1265. // but the content of the DistributionConfig is different from the original
  1266. // request, CloudFront returns a DistributionAlreadyExists error.
  1267. CallerReference *string `type:"string" required:"true"`
  1268. // Any comments you want to include about the distribution.
  1269. Comment *string `type:"string" required:"true"`
  1270. // A complex type that contains zero or more CustomErrorResponse elements.
  1271. CustomErrorResponses *CustomErrorResponses `type:"structure"`
  1272. // A complex type that describes the default cache behavior if you do not specify
  1273. // a CacheBehavior element or if files don't match any of the values of PathPattern
  1274. // in CacheBehavior elements.You must create exactly one default cache behavior.
  1275. DefaultCacheBehavior *DefaultCacheBehavior `type:"structure" required:"true"`
  1276. // The object that you want CloudFront to return (for example, index.html) when
  1277. // an end user requests the root URL for your distribution (http://www.example.com)
  1278. // instead of an object in your distribution (http://www.example.com/index.html).
  1279. // Specifying a default root object avoids exposing the contents of your distribution.
  1280. // If you don't want to specify a default root object when you create a distribution,
  1281. // include an empty DefaultRootObject element. To delete the default root object
  1282. // from an existing distribution, update the distribution configuration and
  1283. // include an empty DefaultRootObject element. To replace the default root object,
  1284. // update the distribution configuration and specify the new object.
  1285. DefaultRootObject *string `type:"string"`
  1286. // Whether the distribution is enabled to accept end user requests for content.
  1287. Enabled *bool `type:"boolean" required:"true"`
  1288. // A complex type that controls whether access logs are written for the distribution.
  1289. Logging *LoggingConfig `type:"structure"`
  1290. // A complex type that contains information about origins for this distribution.
  1291. Origins *Origins `type:"structure" required:"true"`
  1292. // A complex type that contains information about price class for this distribution.
  1293. PriceClass *string `type:"string" enum:"PriceClass"`
  1294. // A complex type that identifies ways in which you want to restrict distribution
  1295. // of your content.
  1296. Restrictions *Restrictions `type:"structure"`
  1297. // A complex type that contains information about viewer certificates for this
  1298. // distribution.
  1299. ViewerCertificate *ViewerCertificate `type:"structure"`
  1300. metadataDistributionConfig `json:"-" xml:"-"`
  1301. }
  1302. type metadataDistributionConfig struct {
  1303. SDKShapeTraits bool `type:"structure"`
  1304. }
  1305. // String returns the string representation
  1306. func (s DistributionConfig) String() string {
  1307. return awsutil.Prettify(s)
  1308. }
  1309. // GoString returns the string representation
  1310. func (s DistributionConfig) GoString() string {
  1311. return s.String()
  1312. }
  1313. // A distribution list.
  1314. type DistributionList struct {
  1315. // A flag that indicates whether more distributions remain to be listed. If
  1316. // your results were truncated, you can make a follow-up pagination request
  1317. // using the Marker request parameter to retrieve more distributions in the
  1318. // list.
  1319. IsTruncated *bool `type:"boolean" required:"true"`
  1320. // A complex type that contains one DistributionSummary element for each distribution
  1321. // that was created by the current AWS account.
  1322. Items []*DistributionSummary `locationNameList:"DistributionSummary" type:"list"`
  1323. // The value you provided for the Marker request parameter.
  1324. Marker *string `type:"string" required:"true"`
  1325. // The value you provided for the MaxItems request parameter.
  1326. MaxItems *int64 `type:"integer" required:"true"`
  1327. // If IsTruncated is true, this element is present and contains the value you
  1328. // can use for the Marker request parameter to continue listing your distributions
  1329. // where they left off.
  1330. NextMarker *string `type:"string"`
  1331. // The number of distributions that were created by the current AWS account.
  1332. Quantity *int64 `type:"integer" required:"true"`
  1333. metadataDistributionList `json:"-" xml:"-"`
  1334. }
  1335. type metadataDistributionList struct {
  1336. SDKShapeTraits bool `type:"structure"`
  1337. }
  1338. // String returns the string representation
  1339. func (s DistributionList) String() string {
  1340. return awsutil.Prettify(s)
  1341. }
  1342. // GoString returns the string representation
  1343. func (s DistributionList) GoString() string {
  1344. return s.String()
  1345. }
  1346. // A summary of the information for an Amazon CloudFront distribution.
  1347. type DistributionSummary struct {
  1348. // A complex type that contains information about CNAMEs (alternate domain names),
  1349. // if any, for this distribution.
  1350. Aliases *Aliases `type:"structure" required:"true"`
  1351. // A complex type that contains zero or more CacheBehavior elements.
  1352. CacheBehaviors *CacheBehaviors `type:"structure" required:"true"`
  1353. // The comment originally specified when this distribution was created.
  1354. Comment *string `type:"string" required:"true"`
  1355. // A complex type that contains zero or more CustomErrorResponses elements.
  1356. CustomErrorResponses *CustomErrorResponses `type:"structure" required:"true"`
  1357. // A complex type that describes the default cache behavior if you do not specify
  1358. // a CacheBehavior element or if files don't match any of the values of PathPattern
  1359. // in CacheBehavior elements.You must create exactly one default cache behavior.
  1360. DefaultCacheBehavior *DefaultCacheBehavior `type:"structure" required:"true"`
  1361. // The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.
  1362. DomainName *string `type:"string" required:"true"`
  1363. // Whether the distribution is enabled to accept end user requests for content.
  1364. Enabled *bool `type:"boolean" required:"true"`
  1365. // The identifier for the distribution. For example: EDFDVBD632BHDS5.
  1366. Id *string `type:"string" required:"true"`
  1367. // The date and time the distribution was last modified.
  1368. LastModifiedTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  1369. // A complex type that contains information about origins for this distribution.
  1370. Origins *Origins `type:"structure" required:"true"`
  1371. PriceClass *string `type:"string" required:"true" enum:"PriceClass"`
  1372. // A complex type that identifies ways in which you want to restrict distribution
  1373. // of your content.
  1374. Restrictions *Restrictions `type:"structure" required:"true"`
  1375. // This response element indicates the current status of the distribution. When
  1376. // the status is Deployed, the distribution's information is fully propagated
  1377. // throughout the Amazon CloudFront system.
  1378. Status *string `type:"string" required:"true"`
  1379. // A complex type that contains information about viewer certificates for this
  1380. // distribution.
  1381. ViewerCertificate *ViewerCertificate `type:"structure" required:"true"`
  1382. metadataDistributionSummary `json:"-" xml:"-"`
  1383. }
  1384. type metadataDistributionSummary struct {
  1385. SDKShapeTraits bool `type:"structure"`
  1386. }
  1387. // String returns the string representation
  1388. func (s DistributionSummary) String() string {
  1389. return awsutil.Prettify(s)
  1390. }
  1391. // GoString returns the string representation
  1392. func (s DistributionSummary) GoString() string {
  1393. return s.String()
  1394. }
  1395. // A complex type that specifies how CloudFront handles query strings, cookies
  1396. // and headers.
  1397. type ForwardedValues struct {
  1398. // A complex type that specifies how CloudFront handles cookies.
  1399. Cookies *CookiePreference `type:"structure" required:"true"`
  1400. // A complex type that specifies the Headers, if any, that you want CloudFront
  1401. // to vary upon for this cache behavior.
  1402. Headers *Headers `type:"structure"`
  1403. // Indicates whether you want CloudFront to forward query strings to the origin
  1404. // that is associated with this cache behavior. If so, specify true; if not,
  1405. // specify false.
  1406. QueryString *bool `type:"boolean" required:"true"`
  1407. metadataForwardedValues `json:"-" xml:"-"`
  1408. }
  1409. type metadataForwardedValues struct {
  1410. SDKShapeTraits bool `type:"structure"`
  1411. }
  1412. // String returns the string representation
  1413. func (s ForwardedValues) String() string {
  1414. return awsutil.Prettify(s)
  1415. }
  1416. // GoString returns the string representation
  1417. func (s ForwardedValues) GoString() string {
  1418. return s.String()
  1419. }
  1420. // A complex type that controls the countries in which your content is distributed.
  1421. // For more information about geo restriction, go to Customizing Error Responses
  1422. // in the Amazon CloudFront Developer Guide. CloudFront determines the location
  1423. // of your users using MaxMind GeoIP databases. For information about the accuracy
  1424. // of these databases, see How accurate are your GeoIP databases? on the MaxMind
  1425. // website.
  1426. type GeoRestriction struct {
  1427. // A complex type that contains a Location element for each country in which
  1428. // you want CloudFront either to distribute your content (whitelist) or not
  1429. // distribute your content (blacklist). The Location element is a two-letter,
  1430. // uppercase country code for a country that you want to include in your blacklist
  1431. // or whitelist. Include one Location element for each country. CloudFront and
  1432. // MaxMind both use ISO 3166 country codes. For the current list of countries
  1433. // and the corresponding codes, see ISO 3166-1-alpha-2 code on the International
  1434. // Organization for Standardization website. You can also refer to the country
  1435. // list in the CloudFront console, which includes both country names and codes.
  1436. Items []*string `locationNameList:"Location" type:"list"`
  1437. // When geo restriction is enabled, this is the number of countries in your
  1438. // whitelist or blacklist. Otherwise, when it is not enabled, Quantity is 0,
  1439. // and you can omit Items.
  1440. Quantity *int64 `type:"integer" required:"true"`
  1441. // The method that you want to use to restrict distribution of your content
  1442. // by country: - none: No geo restriction is enabled, meaning access to content
  1443. // is not restricted by client geo location. - blacklist: The Location elements
  1444. // specify the countries in which you do not want CloudFront to distribute your
  1445. // content. - whitelist: The Location elements specify the countries in which
  1446. // you want CloudFront to distribute your content.
  1447. RestrictionType *string `type:"string" required:"true" enum:"GeoRestrictionType"`
  1448. metadataGeoRestriction `json:"-" xml:"-"`
  1449. }
  1450. type metadataGeoRestriction struct {
  1451. SDKShapeTraits bool `type:"structure"`
  1452. }
  1453. // String returns the string representation
  1454. func (s GeoRestriction) String() string {
  1455. return awsutil.Prettify(s)
  1456. }
  1457. // GoString returns the string representation
  1458. func (s GeoRestriction) GoString() string {
  1459. return s.String()
  1460. }
  1461. // The request to get an origin access identity's configuration.
  1462. type GetCloudFrontOriginAccessIdentityConfigInput struct {
  1463. // The identity's id.
  1464. Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  1465. metadataGetCloudFrontOriginAccessIdentityConfigInput `json:"-" xml:"-"`
  1466. }
  1467. type metadataGetCloudFrontOriginAccessIdentityConfigInput struct {
  1468. SDKShapeTraits bool `type:"structure"`
  1469. }
  1470. // String returns the string representation
  1471. func (s GetCloudFrontOriginAccessIdentityConfigInput) String() string {
  1472. return awsutil.Prettify(s)
  1473. }
  1474. // GoString returns the string representation
  1475. func (s GetCloudFrontOriginAccessIdentityConfigInput) GoString() string {
  1476. return s.String()
  1477. }
  1478. // The returned result of the corresponding request.
  1479. type GetCloudFrontOriginAccessIdentityConfigOutput struct {
  1480. // The origin access identity's configuration information.
  1481. CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `type:"structure"`
  1482. // The current version of the configuration. For example: E2QWRUHAPOMQZL.
  1483. ETag *string `location:"header" locationName:"ETag" type:"string"`
  1484. metadataGetCloudFrontOriginAccessIdentityConfigOutput `json:"-" xml:"-"`
  1485. }
  1486. type metadataGetCloudFrontOriginAccessIdentityConfigOutput struct {
  1487. SDKShapeTraits bool `type:"structure" payload:"CloudFrontOriginAccessIdentityConfig"`
  1488. }
  1489. // String returns the string representation
  1490. func (s GetCloudFrontOriginAccessIdentityConfigOutput) String() string {
  1491. return awsutil.Prettify(s)
  1492. }
  1493. // GoString returns the string representation
  1494. func (s GetCloudFrontOriginAccessIdentityConfigOutput) GoString() string {
  1495. return s.String()
  1496. }
  1497. // The request to get an origin access identity's information.
  1498. type GetCloudFrontOriginAccessIdentityInput struct {
  1499. // The identity's id.
  1500. Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  1501. metadataGetCloudFrontOriginAccessIdentityInput `json:"-" xml:"-"`
  1502. }
  1503. type metadataGetCloudFrontOriginAccessIdentityInput struct {
  1504. SDKShapeTraits bool `type:"structure"`
  1505. }
  1506. // String returns the string representation
  1507. func (s GetCloudFrontOriginAccessIdentityInput) String() string {
  1508. return awsutil.Prettify(s)
  1509. }
  1510. // GoString returns the string representation
  1511. func (s GetCloudFrontOriginAccessIdentityInput) GoString() string {
  1512. return s.String()
  1513. }
  1514. // The returned result of the corresponding request.
  1515. type GetCloudFrontOriginAccessIdentityOutput struct {
  1516. // The origin access identity's information.
  1517. CloudFrontOriginAccessIdentity *OriginAccessIdentity `type:"structure"`
  1518. // The current version of the origin access identity's information. For example:
  1519. // E2QWRUHAPOMQZL.
  1520. ETag *string `location:"header" locationName:"ETag" type:"string"`
  1521. metadataGetCloudFrontOriginAccessIdentityOutput `json:"-" xml:"-"`
  1522. }
  1523. type metadataGetCloudFrontOriginAccessIdentityOutput struct {
  1524. SDKShapeTraits bool `type:"structure" payload:"CloudFrontOriginAccessIdentity"`
  1525. }
  1526. // String returns the string representation
  1527. func (s GetCloudFrontOriginAccessIdentityOutput) String() string {
  1528. return awsutil.Prettify(s)
  1529. }
  1530. // GoString returns the string representation
  1531. func (s GetCloudFrontOriginAccessIdentityOutput) GoString() string {
  1532. return s.String()
  1533. }
  1534. // The request to get a distribution configuration.
  1535. type GetDistributionConfigInput struct {
  1536. // The distribution's id.
  1537. Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  1538. metadataGetDistributionConfigInput `json:"-" xml:"-"`
  1539. }
  1540. type metadataGetDistributionConfigInput struct {
  1541. SDKShapeTraits bool `type:"structure"`
  1542. }
  1543. // String returns the string representation
  1544. func (s GetDistributionConfigInput) String() string {
  1545. return awsutil.Prettify(s)
  1546. }
  1547. // GoString returns the string representation
  1548. func (s GetDistributionConfigInput) GoString() string {
  1549. return s.String()
  1550. }
  1551. // The returned result of the corresponding request.
  1552. type GetDistributionConfigOutput struct {
  1553. // The distribution's configuration information.
  1554. DistributionConfig *DistributionConfig `type:"structure"`
  1555. // The current version of the configuration. For example: E2QWRUHAPOMQZL.
  1556. ETag *string `location:"header" locationName:"ETag" type:"string"`
  1557. metadataGetDistributionConfigOutput `json:"-" xml:"-"`
  1558. }
  1559. type metadataGetDistributionConfigOutput struct {
  1560. SDKShapeTraits bool `type:"structure" payload:"DistributionConfig"`
  1561. }
  1562. // String returns the string representation
  1563. func (s GetDistributionConfigOutput) String() string {
  1564. return awsutil.Prettify(s)
  1565. }
  1566. // GoString returns the string representation
  1567. func (s GetDistributionConfigOutput) GoString() string {
  1568. return s.String()
  1569. }
  1570. // The request to get a distribution's information.
  1571. type GetDistributionInput struct {
  1572. // The distribution's id.
  1573. Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  1574. metadataGetDistributionInput `json:"-" xml:"-"`
  1575. }
  1576. type metadataGetDistributionInput struct {
  1577. SDKShapeTraits bool `type:"structure"`
  1578. }
  1579. // String returns the string representation
  1580. func (s GetDistributionInput) String() string {
  1581. return awsutil.Prettify(s)
  1582. }
  1583. // GoString returns the string representation
  1584. func (s GetDistributionInput) GoString() string {
  1585. return s.String()
  1586. }
  1587. // The returned result of the corresponding request.
  1588. type GetDistributionOutput struct {
  1589. // The distribution's information.
  1590. Distribution *Distribution `type:"structure"`
  1591. // The current version of the distribution's information. For example: E2QWRUHAPOMQZL.
  1592. ETag *string `location:"header" locationName:"ETag" type:"string"`
  1593. metadataGetDistributionOutput `json:"-" xml:"-"`
  1594. }
  1595. type metadataGetDistributionOutput struct {
  1596. SDKShapeTraits bool `type:"structure" payload:"Distribution"`
  1597. }
  1598. // String returns the string representation
  1599. func (s GetDistributionOutput) String() string {
  1600. return awsutil.Prettify(s)
  1601. }
  1602. // GoString returns the string representation
  1603. func (s GetDistributionOutput) GoString() string {
  1604. return s.String()
  1605. }
  1606. // The request to get an invalidation's information.
  1607. type GetInvalidationInput struct {
  1608. // The distribution's id.
  1609. DistributionId *string `location:"uri" locationName:"DistributionId" type:"string" required:"true"`
  1610. // The invalidation's id.
  1611. Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  1612. metadataGetInvalidationInput `json:"-" xml:"-"`
  1613. }
  1614. type metadataGetInvalidationInput struct {
  1615. SDKShapeTraits bool `type:"structure"`
  1616. }
  1617. // String returns the string representation
  1618. func (s GetInvalidationInput) String() string {
  1619. return awsutil.Prettify(s)
  1620. }
  1621. // GoString returns the string representation
  1622. func (s GetInvalidationInput) GoString() string {
  1623. return s.String()
  1624. }
  1625. // The returned result of the corresponding request.
  1626. type GetInvalidationOutput struct {
  1627. // The invalidation's information.
  1628. Invalidation *Invalidation `type:"structure"`
  1629. metadataGetInvalidationOutput `json:"-" xml:"-"`
  1630. }
  1631. type metadataGetInvalidationOutput struct {
  1632. SDKShapeTraits bool `type:"structure" payload:"Invalidation"`
  1633. }
  1634. // String returns the string representation
  1635. func (s GetInvalidationOutput) String() string {
  1636. return awsutil.Prettify(s)
  1637. }
  1638. // GoString returns the string representation
  1639. func (s GetInvalidationOutput) GoString() string {
  1640. return s.String()
  1641. }
  1642. // To request to get a streaming distribution configuration.
  1643. type GetStreamingDistributionConfigInput struct {
  1644. // The streaming distribution's id.
  1645. Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  1646. metadataGetStreamingDistributionConfigInput `json:"-" xml:"-"`
  1647. }
  1648. type metadataGetStreamingDistributionConfigInput struct {
  1649. SDKShapeTraits bool `type:"structure"`
  1650. }
  1651. // String returns the string representation
  1652. func (s GetStreamingDistributionConfigInput) String() string {
  1653. return awsutil.Prettify(s)
  1654. }
  1655. // GoString returns the string representation
  1656. func (s GetStreamingDistributionConfigInput) GoString() string {
  1657. return s.String()
  1658. }
  1659. // The returned result of the corresponding request.
  1660. type GetStreamingDistributionConfigOutput struct {
  1661. // The current version of the configuration. For example: E2QWRUHAPOMQZL.
  1662. ETag *string `location:"header" locationName:"ETag" type:"string"`
  1663. // The streaming distribution's configuration information.
  1664. StreamingDistributionConfig *StreamingDistributionConfig `type:"structure"`
  1665. metadataGetStreamingDistributionConfigOutput `json:"-" xml:"-"`
  1666. }
  1667. type metadataGetStreamingDistributionConfigOutput struct {
  1668. SDKShapeTraits bool `type:"structure" payload:"StreamingDistributionConfig"`
  1669. }
  1670. // String returns the string representation
  1671. func (s GetStreamingDistributionConfigOutput) String() string {
  1672. return awsutil.Prettify(s)
  1673. }
  1674. // GoString returns the string representation
  1675. func (s GetStreamingDistributionConfigOutput) GoString() string {
  1676. return s.String()
  1677. }
  1678. // The request to get a streaming distribution's information.
  1679. type GetStreamingDistributionInput struct {
  1680. // The streaming distribution's id.
  1681. Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  1682. metadataGetStreamingDistributionInput `json:"-" xml:"-"`
  1683. }
  1684. type metadataGetStreamingDistributionInput struct {
  1685. SDKShapeTraits bool `type:"structure"`
  1686. }
  1687. // String returns the string representation
  1688. func (s GetStreamingDistributionInput) String() string {
  1689. return awsutil.Prettify(s)
  1690. }
  1691. // GoString returns the string representation
  1692. func (s GetStreamingDistributionInput) GoString() string {
  1693. return s.String()
  1694. }
  1695. // The returned result of the corresponding request.
  1696. type GetStreamingDistributionOutput struct {
  1697. // The current version of the streaming distribution's information. For example:
  1698. // E2QWRUHAPOMQZL.
  1699. ETag *string `location:"header" locationName:"ETag" type:"string"`
  1700. // The streaming distribution's information.
  1701. StreamingDistribution *StreamingDistribution `type:"structure"`
  1702. metadataGetStreamingDistributionOutput `json:"-" xml:"-"`
  1703. }
  1704. type metadataGetStreamingDistributionOutput struct {
  1705. SDKShapeTraits bool `type:"structure" payload:"StreamingDistribution"`
  1706. }
  1707. // String returns the string representation
  1708. func (s GetStreamingDistributionOutput) String() string {
  1709. return awsutil.Prettify(s)
  1710. }
  1711. // GoString returns the string representation
  1712. func (s GetStreamingDistributionOutput) GoString() string {
  1713. return s.String()
  1714. }
  1715. // A complex type that specifies the headers that you want CloudFront to forward
  1716. // to the origin for this cache behavior. For the headers that you specify,
  1717. // CloudFront also caches separate versions of a given object based on the header
  1718. // values in viewer requests; this is known as varying on headers. For example,
  1719. // suppose viewer requests for logo.jpg contain a custom Product header that
  1720. // has a value of either Acme or Apex, and you configure CloudFront to vary
  1721. // on the Product header. CloudFront forwards the Product header to the origin
  1722. // and caches the response from the origin once for each header value.
  1723. type Headers struct {
  1724. // Optional: A complex type that contains a Name element for each header that
  1725. // you want CloudFront to forward to the origin and to vary on for this cache
  1726. // behavior. If Quantity is 0, omit Items.
  1727. Items []*string `locationNameList:"Name" type:"list"`
  1728. // The number of different headers that you want CloudFront to forward to the
  1729. // origin and to vary on for this cache behavior. The maximum number of headers
  1730. // that you can specify by name is 10. If you want CloudFront to forward all
  1731. // headers to the origin and vary on all of them, specify 1 for Quantity and
  1732. // * for Name. If you don't want CloudFront to forward any additional headers
  1733. // to the origin or to vary on any headers, specify 0 for Quantity and omit
  1734. // Items.
  1735. Quantity *int64 `type:"integer" required:"true"`
  1736. metadataHeaders `json:"-" xml:"-"`
  1737. }
  1738. type metadataHeaders struct {
  1739. SDKShapeTraits bool `type:"structure"`
  1740. }
  1741. // String returns the string representation
  1742. func (s Headers) String() string {
  1743. return awsutil.Prettify(s)
  1744. }
  1745. // GoString returns the string representation
  1746. func (s Headers) GoString() string {
  1747. return s.String()
  1748. }
  1749. // An invalidation.
  1750. type Invalidation struct {
  1751. // The date and time the invalidation request was first made.
  1752. CreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  1753. // The identifier for the invalidation request. For example: IDFDVBD632BHDS5.
  1754. Id *string `type:"string" required:"true"`
  1755. // The current invalidation information for the batch request.
  1756. InvalidationBatch *InvalidationBatch `type:"structure" required:"true"`
  1757. // The status of the invalidation request. When the invalidation batch is finished,
  1758. // the status is Completed.
  1759. Status *string `type:"string" required:"true"`
  1760. metadataInvalidation `json:"-" xml:"-"`
  1761. }
  1762. type metadataInvalidation struct {
  1763. SDKShapeTraits bool `type:"structure"`
  1764. }
  1765. // String returns the string representation
  1766. func (s Invalidation) String() string {
  1767. return awsutil.Prettify(s)
  1768. }
  1769. // GoString returns the string representation
  1770. func (s Invalidation) GoString() string {
  1771. return s.String()
  1772. }
  1773. // An invalidation batch.
  1774. type InvalidationBatch struct {
  1775. // A unique name that ensures the request can't be replayed. If the CallerReference
  1776. // is new (no matter the content of the Path object), a new distribution is
  1777. // created. If the CallerReference is a value you already sent in a previous
  1778. // request to create an invalidation batch, and the content of each Path element
  1779. // is identical to the original request, the response includes the same information
  1780. // returned to the original request. If the CallerReference is a value you already
  1781. // sent in a previous request to create a distribution but the content of any
  1782. // Path is different from the original request, CloudFront returns an InvalidationBatchAlreadyExists
  1783. // error.
  1784. CallerReference *string `type:"string" required:"true"`
  1785. // The path of the object to invalidate. The path is relative to the distribution
  1786. // and must begin with a slash (/). You must enclose each invalidation object
  1787. // with the Path element tags. If the path includes non-ASCII characters or
  1788. // unsafe characters as defined in RFC 1783 (http://www.ietf.org/rfc/rfc1738.txt),
  1789. // URL encode those characters. Do not URL encode any other characters in the
  1790. // path, or CloudFront will not invalidate the old version of the updated object.
  1791. Paths *Paths `type:"structure" required:"true"`
  1792. metadataInvalidationBatch `json:"-" xml:"-"`
  1793. }
  1794. type metadataInvalidationBatch struct {
  1795. SDKShapeTraits bool `type:"structure"`
  1796. }
  1797. // String returns the string representation
  1798. func (s InvalidationBatch) String() string {
  1799. return awsutil.Prettify(s)
  1800. }
  1801. // GoString returns the string representation
  1802. func (s InvalidationBatch) GoString() string {
  1803. return s.String()
  1804. }
  1805. // An invalidation list.
  1806. type InvalidationList struct {
  1807. // A flag that indicates whether more invalidation batch requests remain to
  1808. // be listed. If your results were truncated, you can make a follow-up pagination
  1809. // request using the Marker request parameter to retrieve more invalidation
  1810. // batches in the list.
  1811. IsTruncated *bool `type:"boolean" required:"true"`
  1812. // A complex type that contains one InvalidationSummary element for each invalidation
  1813. // batch that was created by the current AWS account.
  1814. Items []*InvalidationSummary `locationNameList:"InvalidationSummary" type:"list"`
  1815. // The value you provided for the Marker request parameter.
  1816. Marker *string `type:"string" required:"true"`
  1817. // The value you provided for the MaxItems request parameter.
  1818. MaxItems *int64 `type:"integer" required:"true"`
  1819. // If IsTruncated is true, this element is present and contains the value you
  1820. // can use for the Marker request parameter to continue listing your invalidation
  1821. // batches where they left off.
  1822. NextMarker *string `type:"string"`
  1823. // The number of invalidation batches that were created by the current AWS account.
  1824. Quantity *int64 `type:"integer" required:"true"`
  1825. metadataInvalidationList `json:"-" xml:"-"`
  1826. }
  1827. type metadataInvalidationList struct {
  1828. SDKShapeTraits bool `type:"structure"`
  1829. }
  1830. // String returns the string representation
  1831. func (s InvalidationList) String() string {
  1832. return awsutil.Prettify(s)
  1833. }
  1834. // GoString returns the string representation
  1835. func (s InvalidationList) GoString() string {
  1836. return s.String()
  1837. }
  1838. // Summary of an invalidation request.
  1839. type InvalidationSummary struct {
  1840. CreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  1841. // The unique ID for an invalidation request.
  1842. Id *string `type:"string" required:"true"`
  1843. // The status of an invalidation request.
  1844. Status *string `type:"string" required:"true"`
  1845. metadataInvalidationSummary `json:"-" xml:"-"`
  1846. }
  1847. type metadataInvalidationSummary struct {
  1848. SDKShapeTraits bool `type:"structure"`
  1849. }
  1850. // String returns the string representation
  1851. func (s InvalidationSummary) String() string {
  1852. return awsutil.Prettify(s)
  1853. }
  1854. // GoString returns the string representation
  1855. func (s InvalidationSummary) GoString() string {
  1856. return s.String()
  1857. }
  1858. // A complex type that lists the active CloudFront key pairs, if any, that are
  1859. // associated with AwsAccountNumber.
  1860. type KeyPairIds struct {
  1861. // A complex type that lists the active CloudFront key pairs, if any, that are
  1862. // associated with AwsAccountNumber.
  1863. Items []*string `locationNameList:"KeyPairId" type:"list"`
  1864. // The number of active CloudFront key pairs for AwsAccountNumber.
  1865. Quantity *int64 `type:"integer" required:"true"`
  1866. metadataKeyPairIds `json:"-" xml:"-"`
  1867. }
  1868. type metadataKeyPairIds struct {
  1869. SDKShapeTraits bool `type:"structure"`
  1870. }
  1871. // String returns the string representation
  1872. func (s KeyPairIds) String() string {
  1873. return awsutil.Prettify(s)
  1874. }
  1875. // GoString returns the string representation
  1876. func (s KeyPairIds) GoString() string {
  1877. return s.String()
  1878. }
  1879. // The request to list origin access identities.
  1880. type ListCloudFrontOriginAccessIdentitiesInput struct {
  1881. // Use this when paginating results to indicate where to begin in your list
  1882. // of origin access identities. The results include identities in the list that
  1883. // occur after the marker. To get the next page of results, set the Marker to
  1884. // the value of the NextMarker from the current page's response (which is also
  1885. // the ID of the last identity on that page).
  1886. Marker *string `location:"querystring" locationName:"Marker" type:"string"`
  1887. // The maximum number of origin access identities you want in the response body.
  1888. MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
  1889. metadataListCloudFrontOriginAccessIdentitiesInput `json:"-" xml:"-"`
  1890. }
  1891. type metadataListCloudFrontOriginAccessIdentitiesInput struct {
  1892. SDKShapeTraits bool `type:"structure"`
  1893. }
  1894. // String returns the string representation
  1895. func (s ListCloudFrontOriginAccessIdentitiesInput) String() string {
  1896. return awsutil.Prettify(s)
  1897. }
  1898. // GoString returns the string representation
  1899. func (s ListCloudFrontOriginAccessIdentitiesInput) GoString() string {
  1900. return s.String()
  1901. }
  1902. // The returned result of the corresponding request.
  1903. type ListCloudFrontOriginAccessIdentitiesOutput struct {
  1904. // The CloudFrontOriginAccessIdentityList type.
  1905. CloudFrontOriginAccessIdentityList *OriginAccessIdentityList `type:"structure"`
  1906. metadataListCloudFrontOriginAccessIdentitiesOutput `json:"-" xml:"-"`
  1907. }
  1908. type metadataListCloudFrontOriginAccessIdentitiesOutput struct {
  1909. SDKShapeTraits bool `type:"structure" payload:"CloudFrontOriginAccessIdentityList"`
  1910. }
  1911. // String returns the string representation
  1912. func (s ListCloudFrontOriginAccessIdentitiesOutput) String() string {
  1913. return awsutil.Prettify(s)
  1914. }
  1915. // GoString returns the string representation
  1916. func (s ListCloudFrontOriginAccessIdentitiesOutput) GoString() string {
  1917. return s.String()
  1918. }
  1919. // The request to list your distributions.
  1920. type ListDistributionsInput struct {
  1921. // Use this when paginating results to indicate where to begin in your list
  1922. // of distributions. The results include distributions in the list that occur
  1923. // after the marker. To get the next page of results, set the Marker to the
  1924. // value of the NextMarker from the current page's response (which is also the
  1925. // ID of the last distribution on that page).
  1926. Marker *string `location:"querystring" locationName:"Marker" type:"string"`
  1927. // The maximum number of distributions you want in the response body.
  1928. MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
  1929. metadataListDistributionsInput `json:"-" xml:"-"`
  1930. }
  1931. type metadataListDistributionsInput struct {
  1932. SDKShapeTraits bool `type:"structure"`
  1933. }
  1934. // String returns the string representation
  1935. func (s ListDistributionsInput) String() string {
  1936. return awsutil.Prettify(s)
  1937. }
  1938. // GoString returns the string representation
  1939. func (s ListDistributionsInput) GoString() string {
  1940. return s.String()
  1941. }
  1942. // The returned result of the corresponding request.
  1943. type ListDistributionsOutput struct {
  1944. // The DistributionList type.
  1945. DistributionList *DistributionList `type:"structure"`
  1946. metadataListDistributionsOutput `json:"-" xml:"-"`
  1947. }
  1948. type metadataListDistributionsOutput struct {
  1949. SDKShapeTraits bool `type:"structure" payload:"DistributionList"`
  1950. }
  1951. // String returns the string representation
  1952. func (s ListDistributionsOutput) String() string {
  1953. return awsutil.Prettify(s)
  1954. }
  1955. // GoString returns the string representation
  1956. func (s ListDistributionsOutput) GoString() string {
  1957. return s.String()
  1958. }
  1959. // The request to list invalidations.
  1960. type ListInvalidationsInput struct {
  1961. // The distribution's id.
  1962. DistributionId *string `location:"uri" locationName:"DistributionId" type:"string" required:"true"`
  1963. // Use this parameter when paginating results to indicate where to begin in
  1964. // your list of invalidation batches. Because the results are returned in decreasing
  1965. // order from most recent to oldest, the most recent results are on the first
  1966. // page, the second page will contain earlier results, and so on. To get the
  1967. // next page of results, set the Marker to the value of the NextMarker from
  1968. // the current page's response. This value is the same as the ID of the last
  1969. // invalidation batch on that page.
  1970. Marker *string `location:"querystring" locationName:"Marker" type:"string"`
  1971. // The maximum number of invalidation batches you want in the response body.
  1972. MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
  1973. metadataListInvalidationsInput `json:"-" xml:"-"`
  1974. }
  1975. type metadataListInvalidationsInput struct {
  1976. SDKShapeTraits bool `type:"structure"`
  1977. }
  1978. // String returns the string representation
  1979. func (s ListInvalidationsInput) String() string {
  1980. return awsutil.Prettify(s)
  1981. }
  1982. // GoString returns the string representation
  1983. func (s ListInvalidationsInput) GoString() string {
  1984. return s.String()
  1985. }
  1986. // The returned result of the corresponding request.
  1987. type ListInvalidationsOutput struct {
  1988. // Information about invalidation batches.
  1989. InvalidationList *InvalidationList `type:"structure"`
  1990. metadataListInvalidationsOutput `json:"-" xml:"-"`
  1991. }
  1992. type metadataListInvalidationsOutput struct {
  1993. SDKShapeTraits bool `type:"structure" payload:"InvalidationList"`
  1994. }
  1995. // String returns the string representation
  1996. func (s ListInvalidationsOutput) String() string {
  1997. return awsutil.Prettify(s)
  1998. }
  1999. // GoString returns the string representation
  2000. func (s ListInvalidationsOutput) GoString() string {
  2001. return s.String()
  2002. }
  2003. // The request to list your streaming distributions.
  2004. type ListStreamingDistributionsInput struct {
  2005. // Use this when paginating results to indicate where to begin in your list
  2006. // of streaming distributions. The results include distributions in the list
  2007. // that occur after the marker. To get the next page of results, set the Marker
  2008. // to the value of the NextMarker from the current page's response (which is
  2009. // also the ID of the last distribution on that page).
  2010. Marker *string `location:"querystring" locationName:"Marker" type:"string"`
  2011. // The maximum number of streaming distributions you want in the response body.
  2012. MaxItems *int64 `location:"querystring" locationName:"MaxItems" type:"integer"`
  2013. metadataListStreamingDistributionsInput `json:"-" xml:"-"`
  2014. }
  2015. type metadataListStreamingDistributionsInput struct {
  2016. SDKShapeTraits bool `type:"structure"`
  2017. }
  2018. // String returns the string representation
  2019. func (s ListStreamingDistributionsInput) String() string {
  2020. return awsutil.Prettify(s)
  2021. }
  2022. // GoString returns the string representation
  2023. func (s ListStreamingDistributionsInput) GoString() string {
  2024. return s.String()
  2025. }
  2026. // The returned result of the corresponding request.
  2027. type ListStreamingDistributionsOutput struct {
  2028. // The StreamingDistributionList type.
  2029. StreamingDistributionList *StreamingDistributionList `type:"structure"`
  2030. metadataListStreamingDistributionsOutput `json:"-" xml:"-"`
  2031. }
  2032. type metadataListStreamingDistributionsOutput struct {
  2033. SDKShapeTraits bool `type:"structure" payload:"StreamingDistributionList"`
  2034. }
  2035. // String returns the string representation
  2036. func (s ListStreamingDistributionsOutput) String() string {
  2037. return awsutil.Prettify(s)
  2038. }
  2039. // GoString returns the string representation
  2040. func (s ListStreamingDistributionsOutput) GoString() string {
  2041. return s.String()
  2042. }
  2043. // A complex type that controls whether access logs are written for the distribution.
  2044. type LoggingConfig struct {
  2045. // The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.
  2046. Bucket *string `type:"string" required:"true"`
  2047. // Specifies whether you want CloudFront to save access logs to an Amazon S3
  2048. // bucket. If you do not want to enable logging when you create a distribution
  2049. // or if you want to disable logging for an existing distribution, specify false
  2050. // for Enabled, and specify empty Bucket and Prefix elements. If you specify
  2051. // false for Enabled but you specify values for Bucket, prefix and IncludeCookies,
  2052. // the values are automatically deleted.
  2053. Enabled *bool `type:"boolean" required:"true"`
  2054. // Specifies whether you want CloudFront to include cookies in access logs,
  2055. // specify true for IncludeCookies. If you choose to include cookies in logs,
  2056. // CloudFront logs all cookies regardless of how you configure the cache behaviors
  2057. // for this distribution. If you do not want to include cookies when you create
  2058. // a distribution or if you want to disable include cookies for an existing
  2059. // distribution, specify false for IncludeCookies.
  2060. IncludeCookies *bool `type:"boolean" required:"true"`
  2061. // An optional string that you want CloudFront to prefix to the access log filenames
  2062. // for this distribution, for example, myprefix/. If you want to enable logging,
  2063. // but you do not want to specify a prefix, you still must include an empty
  2064. // Prefix element in the Logging element.
  2065. Prefix *string `type:"string" required:"true"`
  2066. metadataLoggingConfig `json:"-" xml:"-"`
  2067. }
  2068. type metadataLoggingConfig struct {
  2069. SDKShapeTraits bool `type:"structure"`
  2070. }
  2071. // String returns the string representation
  2072. func (s LoggingConfig) String() string {
  2073. return awsutil.Prettify(s)
  2074. }
  2075. // GoString returns the string representation
  2076. func (s LoggingConfig) GoString() string {
  2077. return s.String()
  2078. }
  2079. // A complex type that describes the Amazon S3 bucket or the HTTP server (for
  2080. // example, a web server) from which CloudFront gets your files.You must create
  2081. // at least one origin.
  2082. type Origin struct {
  2083. // A complex type that contains information about a custom origin. If the origin
  2084. // is an Amazon S3 bucket, use the S3OriginConfig element instead.
  2085. CustomOriginConfig *CustomOriginConfig `type:"structure"`
  2086. // Amazon S3 origins: The DNS name of the Amazon S3 bucket from which you want
  2087. // CloudFront to get objects for this origin, for example, myawsbucket.s3.amazonaws.com.
  2088. // Custom origins: The DNS domain name for the HTTP server from which you want
  2089. // CloudFront to get objects for this origin, for example, www.example.com.
  2090. DomainName *string `type:"string" required:"true"`
  2091. // A unique identifier for the origin. The value of Id must be unique within
  2092. // the distribution. You use the value of Id when you create a cache behavior.
  2093. // The Id identifies the origin that CloudFront routes a request to when the
  2094. // request matches the path pattern for that cache behavior.
  2095. Id *string `type:"string" required:"true"`
  2096. // An optional element that causes CloudFront to request your content from a
  2097. // directory in your Amazon S3 bucket or your custom origin. When you include
  2098. // the OriginPath element, specify the directory name, beginning with a /. CloudFront
  2099. // appends the directory name to the value of DomainName.
  2100. OriginPath *string `type:"string"`
  2101. // A complex type that contains information about the Amazon S3 origin. If the
  2102. // origin is a custom origin, use the CustomOriginConfig element instead.
  2103. S3OriginConfig *S3OriginConfig `type:"structure"`
  2104. metadataOrigin `json:"-" xml:"-"`
  2105. }
  2106. type metadataOrigin struct {
  2107. SDKShapeTraits bool `type:"structure"`
  2108. }
  2109. // String returns the string representation
  2110. func (s Origin) String() string {
  2111. return awsutil.Prettify(s)
  2112. }
  2113. // GoString returns the string representation
  2114. func (s Origin) GoString() string {
  2115. return s.String()
  2116. }
  2117. // CloudFront origin access identity.
  2118. type OriginAccessIdentity struct {
  2119. // The current configuration information for the identity.
  2120. CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `type:"structure"`
  2121. // The ID for the origin access identity. For example: E74FTE3AJFJ256A.
  2122. Id *string `type:"string" required:"true"`
  2123. // The Amazon S3 canonical user ID for the origin access identity, which you
  2124. // use when giving the origin access identity read permission to an object in
  2125. // Amazon S3.
  2126. S3CanonicalUserId *string `type:"string" required:"true"`
  2127. metadataOriginAccessIdentity `json:"-" xml:"-"`
  2128. }
  2129. type metadataOriginAccessIdentity struct {
  2130. SDKShapeTraits bool `type:"structure"`
  2131. }
  2132. // String returns the string representation
  2133. func (s OriginAccessIdentity) String() string {
  2134. return awsutil.Prettify(s)
  2135. }
  2136. // GoString returns the string representation
  2137. func (s OriginAccessIdentity) GoString() string {
  2138. return s.String()
  2139. }
  2140. // Origin access identity configuration.
  2141. type OriginAccessIdentityConfig struct {
  2142. // A unique number that ensures the request can't be replayed. If the CallerReference
  2143. // is new (no matter the content of the CloudFrontOriginAccessIdentityConfig
  2144. // object), a new origin access identity is created. If the CallerReference
  2145. // is a value you already sent in a previous request to create an identity,
  2146. // and the content of the CloudFrontOriginAccessIdentityConfig is identical
  2147. // to the original request (ignoring white space), the response includes the
  2148. // same information returned to the original request. If the CallerReference
  2149. // is a value you already sent in a previous request to create an identity but
  2150. // the content of the CloudFrontOriginAccessIdentityConfig is different from
  2151. // the original request, CloudFront returns a CloudFrontOriginAccessIdentityAlreadyExists
  2152. // error.
  2153. CallerReference *string `type:"string" required:"true"`
  2154. // Any comments you want to include about the origin access identity.
  2155. Comment *string `type:"string" required:"true"`
  2156. metadataOriginAccessIdentityConfig `json:"-" xml:"-"`
  2157. }
  2158. type metadataOriginAccessIdentityConfig struct {
  2159. SDKShapeTraits bool `type:"structure"`
  2160. }
  2161. // String returns the string representation
  2162. func (s OriginAccessIdentityConfig) String() string {
  2163. return awsutil.Prettify(s)
  2164. }
  2165. // GoString returns the string representation
  2166. func (s OriginAccessIdentityConfig) GoString() string {
  2167. return s.String()
  2168. }
  2169. // The CloudFrontOriginAccessIdentityList type.
  2170. type OriginAccessIdentityList struct {
  2171. // A flag that indicates whether more origin access identities remain to be
  2172. // listed. If your results were truncated, you can make a follow-up pagination
  2173. // request using the Marker request parameter to retrieve more items in the
  2174. // list.
  2175. IsTruncated *bool `type:"boolean" required:"true"`
  2176. // A complex type that contains one CloudFrontOriginAccessIdentitySummary element
  2177. // for each origin access identity that was created by the current AWS account.
  2178. Items []*OriginAccessIdentitySummary `locationNameList:"CloudFrontOriginAccessIdentitySummary" type:"list"`
  2179. // The value you provided for the Marker request parameter.
  2180. Marker *string `type:"string" required:"true"`
  2181. // The value you provided for the MaxItems request parameter.
  2182. MaxItems *int64 `type:"integer" required:"true"`
  2183. // If IsTruncated is true, this element is present and contains the value you
  2184. // can use for the Marker request parameter to continue listing your origin
  2185. // access identities where they left off.
  2186. NextMarker *string `type:"string"`
  2187. // The number of CloudFront origin access identities that were created by the
  2188. // current AWS account.
  2189. Quantity *int64 `type:"integer" required:"true"`
  2190. metadataOriginAccessIdentityList `json:"-" xml:"-"`
  2191. }
  2192. type metadataOriginAccessIdentityList struct {
  2193. SDKShapeTraits bool `type:"structure"`
  2194. }
  2195. // String returns the string representation
  2196. func (s OriginAccessIdentityList) String() string {
  2197. return awsutil.Prettify(s)
  2198. }
  2199. // GoString returns the string representation
  2200. func (s OriginAccessIdentityList) GoString() string {
  2201. return s.String()
  2202. }
  2203. // Summary of the information about a CloudFront origin access identity.
  2204. type OriginAccessIdentitySummary struct {
  2205. // The comment for this origin access identity, as originally specified when
  2206. // created.
  2207. Comment *string `type:"string" required:"true"`
  2208. // The ID for the origin access identity. For example: E74FTE3AJFJ256A.
  2209. Id *string `type:"string" required:"true"`
  2210. // The Amazon S3 canonical user ID for the origin access identity, which you
  2211. // use when giving the origin access identity read permission to an object in
  2212. // Amazon S3.
  2213. S3CanonicalUserId *string `type:"string" required:"true"`
  2214. metadataOriginAccessIdentitySummary `json:"-" xml:"-"`
  2215. }
  2216. type metadataOriginAccessIdentitySummary struct {
  2217. SDKShapeTraits bool `type:"structure"`
  2218. }
  2219. // String returns the string representation
  2220. func (s OriginAccessIdentitySummary) String() string {
  2221. return awsutil.Prettify(s)
  2222. }
  2223. // GoString returns the string representation
  2224. func (s OriginAccessIdentitySummary) GoString() string {
  2225. return s.String()
  2226. }
  2227. // A complex type that contains information about origins for this distribution.
  2228. type Origins struct {
  2229. // A complex type that contains origins for this distribution.
  2230. Items []*Origin `locationNameList:"Origin" type:"list"`
  2231. // The number of origins for this distribution.
  2232. Quantity *int64 `type:"integer" required:"true"`
  2233. metadataOrigins `json:"-" xml:"-"`
  2234. }
  2235. type metadataOrigins struct {
  2236. SDKShapeTraits bool `type:"structure"`
  2237. }
  2238. // String returns the string representation
  2239. func (s Origins) String() string {
  2240. return awsutil.Prettify(s)
  2241. }
  2242. // GoString returns the string representation
  2243. func (s Origins) GoString() string {
  2244. return s.String()
  2245. }
  2246. // A complex type that contains information about the objects that you want
  2247. // to invalidate.
  2248. type Paths struct {
  2249. // A complex type that contains a list of the objects that you want to invalidate.
  2250. Items []*string `locationNameList:"Path" type:"list"`
  2251. // The number of objects that you want to invalidate.
  2252. Quantity *int64 `type:"integer" required:"true"`
  2253. metadataPaths `json:"-" xml:"-"`
  2254. }
  2255. type metadataPaths struct {
  2256. SDKShapeTraits bool `type:"structure"`
  2257. }
  2258. // String returns the string representation
  2259. func (s Paths) String() string {
  2260. return awsutil.Prettify(s)
  2261. }
  2262. // GoString returns the string representation
  2263. func (s Paths) GoString() string {
  2264. return s.String()
  2265. }
  2266. // A complex type that identifies ways in which you want to restrict distribution
  2267. // of your content.
  2268. type Restrictions struct {
  2269. // A complex type that controls the countries in which your content is distributed.
  2270. // For more information about geo restriction, go to Customizing Error Responses
  2271. // in the Amazon CloudFront Developer Guide. CloudFront determines the location
  2272. // of your users using MaxMind GeoIP databases. For information about the accuracy
  2273. // of these databases, see How accurate are your GeoIP databases? on the MaxMind
  2274. // website.
  2275. GeoRestriction *GeoRestriction `type:"structure" required:"true"`
  2276. metadataRestrictions `json:"-" xml:"-"`
  2277. }
  2278. type metadataRestrictions struct {
  2279. SDKShapeTraits bool `type:"structure"`
  2280. }
  2281. // String returns the string representation
  2282. func (s Restrictions) String() string {
  2283. return awsutil.Prettify(s)
  2284. }
  2285. // GoString returns the string representation
  2286. func (s Restrictions) GoString() string {
  2287. return s.String()
  2288. }
  2289. // A complex type that contains information about the Amazon S3 bucket from
  2290. // which you want CloudFront to get your media files for distribution.
  2291. type S3Origin struct {
  2292. // The DNS name of the S3 origin.
  2293. DomainName *string `type:"string" required:"true"`
  2294. // Your S3 origin's origin access identity.
  2295. OriginAccessIdentity *string `type:"string" required:"true"`
  2296. metadataS3Origin `json:"-" xml:"-"`
  2297. }
  2298. type metadataS3Origin struct {
  2299. SDKShapeTraits bool `type:"structure"`
  2300. }
  2301. // String returns the string representation
  2302. func (s S3Origin) String() string {
  2303. return awsutil.Prettify(s)
  2304. }
  2305. // GoString returns the string representation
  2306. func (s S3Origin) GoString() string {
  2307. return s.String()
  2308. }
  2309. // A complex type that contains information about the Amazon S3 origin. If the
  2310. // origin is a custom origin, use the CustomOriginConfig element instead.
  2311. type S3OriginConfig struct {
  2312. // The CloudFront origin access identity to associate with the origin. Use an
  2313. // origin access identity to configure the origin so that end users can only
  2314. // access objects in an Amazon S3 bucket through CloudFront. If you want end
  2315. // users to be able to access objects using either the CloudFront URL or the
  2316. // Amazon S3 URL, specify an empty OriginAccessIdentity element. To delete the
  2317. // origin access identity from an existing distribution, update the distribution
  2318. // configuration and include an empty OriginAccessIdentity element. To replace
  2319. // the origin access identity, update the distribution configuration and specify
  2320. // the new origin access identity. Use the format origin-access-identity/cloudfront/Id
  2321. // where Id is the value that CloudFront returned in the Id element when you
  2322. // created the origin access identity.
  2323. OriginAccessIdentity *string `type:"string" required:"true"`
  2324. metadataS3OriginConfig `json:"-" xml:"-"`
  2325. }
  2326. type metadataS3OriginConfig struct {
  2327. SDKShapeTraits bool `type:"structure"`
  2328. }
  2329. // String returns the string representation
  2330. func (s S3OriginConfig) String() string {
  2331. return awsutil.Prettify(s)
  2332. }
  2333. // GoString returns the string representation
  2334. func (s S3OriginConfig) GoString() string {
  2335. return s.String()
  2336. }
  2337. // A complex type that lists the AWS accounts that were included in the TrustedSigners
  2338. // complex type, as well as their active CloudFront key pair IDs, if any.
  2339. type Signer struct {
  2340. // Specifies an AWS account that can create signed URLs. Values: self, which
  2341. // indicates that the AWS account that was used to create the distribution can
  2342. // created signed URLs, or an AWS account number. Omit the dashes in the account
  2343. // number.
  2344. AwsAccountNumber *string `type:"string"`
  2345. // A complex type that lists the active CloudFront key pairs, if any, that are
  2346. // associated with AwsAccountNumber.
  2347. KeyPairIds *KeyPairIds `type:"structure"`
  2348. metadataSigner `json:"-" xml:"-"`
  2349. }
  2350. type metadataSigner struct {
  2351. SDKShapeTraits bool `type:"structure"`
  2352. }
  2353. // String returns the string representation
  2354. func (s Signer) String() string {
  2355. return awsutil.Prettify(s)
  2356. }
  2357. // GoString returns the string representation
  2358. func (s Signer) GoString() string {
  2359. return s.String()
  2360. }
  2361. // A streaming distribution.
  2362. type StreamingDistribution struct {
  2363. // CloudFront automatically adds this element to the response only if you've
  2364. // set up the distribution to serve private content with signed URLs. The element
  2365. // lists the key pair IDs that CloudFront is aware of for each trusted signer.
  2366. // The Signer child element lists the AWS account number of the trusted signer
  2367. // (or an empty Self element if the signer is you). The Signer element also
  2368. // includes the IDs of any active key pairs associated with the trusted signer's
  2369. // AWS account. If no KeyPairId element appears for a Signer, that signer can't
  2370. // create working signed URLs.
  2371. ActiveTrustedSigners *ActiveTrustedSigners `type:"structure" required:"true"`
  2372. // The domain name corresponding to the streaming distribution. For example:
  2373. // s5c39gqb8ow64r.cloudfront.net.
  2374. DomainName *string `type:"string" required:"true"`
  2375. // The identifier for the streaming distribution. For example: EGTXBD79H29TRA8.
  2376. Id *string `type:"string" required:"true"`
  2377. // The date and time the distribution was last modified.
  2378. LastModifiedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  2379. // The current status of the streaming distribution. When the status is Deployed,
  2380. // the distribution's information is fully propagated throughout the Amazon
  2381. // CloudFront system.
  2382. Status *string `type:"string" required:"true"`
  2383. // The current configuration information for the streaming distribution.
  2384. StreamingDistributionConfig *StreamingDistributionConfig `type:"structure" required:"true"`
  2385. metadataStreamingDistribution `json:"-" xml:"-"`
  2386. }
  2387. type metadataStreamingDistribution struct {
  2388. SDKShapeTraits bool `type:"structure"`
  2389. }
  2390. // String returns the string representation
  2391. func (s StreamingDistribution) String() string {
  2392. return awsutil.Prettify(s)
  2393. }
  2394. // GoString returns the string representation
  2395. func (s StreamingDistribution) GoString() string {
  2396. return s.String()
  2397. }
  2398. // The configuration for the streaming distribution.
  2399. type StreamingDistributionConfig struct {
  2400. // A complex type that contains information about CNAMEs (alternate domain names),
  2401. // if any, for this streaming distribution.
  2402. Aliases *Aliases `type:"structure"`
  2403. // A unique number that ensures the request can't be replayed. If the CallerReference
  2404. // is new (no matter the content of the StreamingDistributionConfig object),
  2405. // a new streaming distribution is created. If the CallerReference is a value
  2406. // you already sent in a previous request to create a streaming distribution,
  2407. // and the content of the StreamingDistributionConfig is identical to the original
  2408. // request (ignoring white space), the response includes the same information
  2409. // returned to the original request. If the CallerReference is a value you already
  2410. // sent in a previous request to create a streaming distribution but the content
  2411. // of the StreamingDistributionConfig is different from the original request,
  2412. // CloudFront returns a DistributionAlreadyExists error.
  2413. CallerReference *string `type:"string" required:"true"`
  2414. // Any comments you want to include about the streaming distribution.
  2415. Comment *string `type:"string" required:"true"`
  2416. // Whether the streaming distribution is enabled to accept end user requests
  2417. // for content.
  2418. Enabled *bool `type:"boolean" required:"true"`
  2419. // A complex type that controls whether access logs are written for the streaming
  2420. // distribution.
  2421. Logging *StreamingLoggingConfig `type:"structure"`
  2422. // A complex type that contains information about price class for this streaming
  2423. // distribution.
  2424. PriceClass *string `type:"string" enum:"PriceClass"`
  2425. // A complex type that contains information about the Amazon S3 bucket from
  2426. // which you want CloudFront to get your media files for distribution.
  2427. S3Origin *S3Origin `type:"structure" required:"true"`
  2428. // A complex type that specifies the AWS accounts, if any, that you want to
  2429. // allow to create signed URLs for private content. If you want to require signed
  2430. // URLs in requests for objects in the target origin that match the PathPattern
  2431. // for this cache behavior, specify true for Enabled, and specify the applicable
  2432. // values for Quantity and Items. For more information, go to Using a Signed
  2433. // URL to Serve Private Content in the Amazon CloudFront Developer Guide. If
  2434. // you don't want to require signed URLs in requests for objects that match
  2435. // PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To
  2436. // add, change, or remove one or more trusted signers, change Enabled to true
  2437. // (if it's currently false), change Quantity as applicable, and specify all
  2438. // of the trusted signers that you want to include in the updated distribution.
  2439. TrustedSigners *TrustedSigners `type:"structure" required:"true"`
  2440. metadataStreamingDistributionConfig `json:"-" xml:"-"`
  2441. }
  2442. type metadataStreamingDistributionConfig struct {
  2443. SDKShapeTraits bool `type:"structure"`
  2444. }
  2445. // String returns the string representation
  2446. func (s StreamingDistributionConfig) String() string {
  2447. return awsutil.Prettify(s)
  2448. }
  2449. // GoString returns the string representation
  2450. func (s StreamingDistributionConfig) GoString() string {
  2451. return s.String()
  2452. }
  2453. // A streaming distribution list.
  2454. type StreamingDistributionList struct {
  2455. // A flag that indicates whether more streaming distributions remain to be listed.
  2456. // If your results were truncated, you can make a follow-up pagination request
  2457. // using the Marker request parameter to retrieve more distributions in the
  2458. // list.
  2459. IsTruncated *bool `type:"boolean" required:"true"`
  2460. // A complex type that contains one StreamingDistributionSummary element for
  2461. // each distribution that was created by the current AWS account.
  2462. Items []*StreamingDistributionSummary `locationNameList:"StreamingDistributionSummary" type:"list"`
  2463. // The value you provided for the Marker request parameter.
  2464. Marker *string `type:"string" required:"true"`
  2465. // The value you provided for the MaxItems request parameter.
  2466. MaxItems *int64 `type:"integer" required:"true"`
  2467. // If IsTruncated is true, this element is present and contains the value you
  2468. // can use for the Marker request parameter to continue listing your streaming
  2469. // distributions where they left off.
  2470. NextMarker *string `type:"string"`
  2471. // The number of streaming distributions that were created by the current AWS
  2472. // account.
  2473. Quantity *int64 `type:"integer" required:"true"`
  2474. metadataStreamingDistributionList `json:"-" xml:"-"`
  2475. }
  2476. type metadataStreamingDistributionList struct {
  2477. SDKShapeTraits bool `type:"structure"`
  2478. }
  2479. // String returns the string representation
  2480. func (s StreamingDistributionList) String() string {
  2481. return awsutil.Prettify(s)
  2482. }
  2483. // GoString returns the string representation
  2484. func (s StreamingDistributionList) GoString() string {
  2485. return s.String()
  2486. }
  2487. // A summary of the information for an Amazon CloudFront streaming distribution.
  2488. type StreamingDistributionSummary struct {
  2489. // A complex type that contains information about CNAMEs (alternate domain names),
  2490. // if any, for this streaming distribution.
  2491. Aliases *Aliases `type:"structure" required:"true"`
  2492. // The comment originally specified when this distribution was created.
  2493. Comment *string `type:"string" required:"true"`
  2494. // The domain name corresponding to the distribution. For example: d604721fxaaqy9.cloudfront.net.
  2495. DomainName *string `type:"string" required:"true"`
  2496. // Whether the distribution is enabled to accept end user requests for content.
  2497. Enabled *bool `type:"boolean" required:"true"`
  2498. // The identifier for the distribution. For example: EDFDVBD632BHDS5.
  2499. Id *string `type:"string" required:"true"`
  2500. // The date and time the distribution was last modified.
  2501. LastModifiedTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"`
  2502. PriceClass *string `type:"string" required:"true" enum:"PriceClass"`
  2503. // A complex type that contains information about the Amazon S3 bucket from
  2504. // which you want CloudFront to get your media files for distribution.
  2505. S3Origin *S3Origin `type:"structure" required:"true"`
  2506. // Indicates the current status of the distribution. When the status is Deployed,
  2507. // the distribution's information is fully propagated throughout the Amazon
  2508. // CloudFront system.
  2509. Status *string `type:"string" required:"true"`
  2510. // A complex type that specifies the AWS accounts, if any, that you want to
  2511. // allow to create signed URLs for private content. If you want to require signed
  2512. // URLs in requests for objects in the target origin that match the PathPattern
  2513. // for this cache behavior, specify true for Enabled, and specify the applicable
  2514. // values for Quantity and Items. For more information, go to Using a Signed
  2515. // URL to Serve Private Content in the Amazon CloudFront Developer Guide. If
  2516. // you don't want to require signed URLs in requests for objects that match
  2517. // PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To
  2518. // add, change, or remove one or more trusted signers, change Enabled to true
  2519. // (if it's currently false), change Quantity as applicable, and specify all
  2520. // of the trusted signers that you want to include in the updated distribution.
  2521. TrustedSigners *TrustedSigners `type:"structure" required:"true"`
  2522. metadataStreamingDistributionSummary `json:"-" xml:"-"`
  2523. }
  2524. type metadataStreamingDistributionSummary struct {
  2525. SDKShapeTraits bool `type:"structure"`
  2526. }
  2527. // String returns the string representation
  2528. func (s StreamingDistributionSummary) String() string {
  2529. return awsutil.Prettify(s)
  2530. }
  2531. // GoString returns the string representation
  2532. func (s StreamingDistributionSummary) GoString() string {
  2533. return s.String()
  2534. }
  2535. // A complex type that controls whether access logs are written for this streaming
  2536. // distribution.
  2537. type StreamingLoggingConfig struct {
  2538. // The Amazon S3 bucket to store the access logs in, for example, myawslogbucket.s3.amazonaws.com.
  2539. Bucket *string `type:"string" required:"true"`
  2540. // Specifies whether you want CloudFront to save access logs to an Amazon S3
  2541. // bucket. If you do not want to enable logging when you create a streaming
  2542. // distribution or if you want to disable logging for an existing streaming
  2543. // distribution, specify false for Enabled, and specify empty Bucket and Prefix
  2544. // elements. If you specify false for Enabled but you specify values for Bucket
  2545. // and Prefix, the values are automatically deleted.
  2546. Enabled *bool `type:"boolean" required:"true"`
  2547. // An optional string that you want CloudFront to prefix to the access log filenames
  2548. // for this streaming distribution, for example, myprefix/. If you want to enable
  2549. // logging, but you do not want to specify a prefix, you still must include
  2550. // an empty Prefix element in the Logging element.
  2551. Prefix *string `type:"string" required:"true"`
  2552. metadataStreamingLoggingConfig `json:"-" xml:"-"`
  2553. }
  2554. type metadataStreamingLoggingConfig struct {
  2555. SDKShapeTraits bool `type:"structure"`
  2556. }
  2557. // String returns the string representation
  2558. func (s StreamingLoggingConfig) String() string {
  2559. return awsutil.Prettify(s)
  2560. }
  2561. // GoString returns the string representation
  2562. func (s StreamingLoggingConfig) GoString() string {
  2563. return s.String()
  2564. }
  2565. // A complex type that specifies the AWS accounts, if any, that you want to
  2566. // allow to create signed URLs for private content. If you want to require signed
  2567. // URLs in requests for objects in the target origin that match the PathPattern
  2568. // for this cache behavior, specify true for Enabled, and specify the applicable
  2569. // values for Quantity and Items. For more information, go to Using a Signed
  2570. // URL to Serve Private Content in the Amazon CloudFront Developer Guide. If
  2571. // you don't want to require signed URLs in requests for objects that match
  2572. // PathPattern, specify false for Enabled and 0 for Quantity. Omit Items. To
  2573. // add, change, or remove one or more trusted signers, change Enabled to true
  2574. // (if it's currently false), change Quantity as applicable, and specify all
  2575. // of the trusted signers that you want to include in the updated distribution.
  2576. type TrustedSigners struct {
  2577. // Specifies whether you want to require end users to use signed URLs to access
  2578. // the files specified by PathPattern and TargetOriginId.
  2579. Enabled *bool `type:"boolean" required:"true"`
  2580. // Optional: A complex type that contains trusted signers for this cache behavior.
  2581. // If Quantity is 0, you can omit Items.
  2582. Items []*string `locationNameList:"AwsAccountNumber" type:"list"`
  2583. // The number of trusted signers for this cache behavior.
  2584. Quantity *int64 `type:"integer" required:"true"`
  2585. metadataTrustedSigners `json:"-" xml:"-"`
  2586. }
  2587. type metadataTrustedSigners struct {
  2588. SDKShapeTraits bool `type:"structure"`
  2589. }
  2590. // String returns the string representation
  2591. func (s TrustedSigners) String() string {
  2592. return awsutil.Prettify(s)
  2593. }
  2594. // GoString returns the string representation
  2595. func (s TrustedSigners) GoString() string {
  2596. return s.String()
  2597. }
  2598. // The request to update an origin access identity.
  2599. type UpdateCloudFrontOriginAccessIdentityInput struct {
  2600. // The identity's configuration information.
  2601. CloudFrontOriginAccessIdentityConfig *OriginAccessIdentityConfig `locationName:"CloudFrontOriginAccessIdentityConfig" type:"structure" required:"true"`
  2602. // The identity's id.
  2603. Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  2604. // The value of the ETag header you received when retrieving the identity's
  2605. // configuration. For example: E2QWRUHAPOMQZL.
  2606. IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
  2607. metadataUpdateCloudFrontOriginAccessIdentityInput `json:"-" xml:"-"`
  2608. }
  2609. type metadataUpdateCloudFrontOriginAccessIdentityInput struct {
  2610. SDKShapeTraits bool `type:"structure" payload:"CloudFrontOriginAccessIdentityConfig"`
  2611. }
  2612. // String returns the string representation
  2613. func (s UpdateCloudFrontOriginAccessIdentityInput) String() string {
  2614. return awsutil.Prettify(s)
  2615. }
  2616. // GoString returns the string representation
  2617. func (s UpdateCloudFrontOriginAccessIdentityInput) GoString() string {
  2618. return s.String()
  2619. }
  2620. // The returned result of the corresponding request.
  2621. type UpdateCloudFrontOriginAccessIdentityOutput struct {
  2622. // The origin access identity's information.
  2623. CloudFrontOriginAccessIdentity *OriginAccessIdentity `type:"structure"`
  2624. // The current version of the configuration. For example: E2QWRUHAPOMQZL.
  2625. ETag *string `location:"header" locationName:"ETag" type:"string"`
  2626. metadataUpdateCloudFrontOriginAccessIdentityOutput `json:"-" xml:"-"`
  2627. }
  2628. type metadataUpdateCloudFrontOriginAccessIdentityOutput struct {
  2629. SDKShapeTraits bool `type:"structure" payload:"CloudFrontOriginAccessIdentity"`
  2630. }
  2631. // String returns the string representation
  2632. func (s UpdateCloudFrontOriginAccessIdentityOutput) String() string {
  2633. return awsutil.Prettify(s)
  2634. }
  2635. // GoString returns the string representation
  2636. func (s UpdateCloudFrontOriginAccessIdentityOutput) GoString() string {
  2637. return s.String()
  2638. }
  2639. // The request to update a distribution.
  2640. type UpdateDistributionInput struct {
  2641. // The distribution's configuration information.
  2642. DistributionConfig *DistributionConfig `locationName:"DistributionConfig" type:"structure" required:"true"`
  2643. // The distribution's id.
  2644. Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  2645. // The value of the ETag header you received when retrieving the distribution's
  2646. // configuration. For example: E2QWRUHAPOMQZL.
  2647. IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
  2648. metadataUpdateDistributionInput `json:"-" xml:"-"`
  2649. }
  2650. type metadataUpdateDistributionInput struct {
  2651. SDKShapeTraits bool `type:"structure" payload:"DistributionConfig"`
  2652. }
  2653. // String returns the string representation
  2654. func (s UpdateDistributionInput) String() string {
  2655. return awsutil.Prettify(s)
  2656. }
  2657. // GoString returns the string representation
  2658. func (s UpdateDistributionInput) GoString() string {
  2659. return s.String()
  2660. }
  2661. // The returned result of the corresponding request.
  2662. type UpdateDistributionOutput struct {
  2663. // The distribution's information.
  2664. Distribution *Distribution `type:"structure"`
  2665. // The current version of the configuration. For example: E2QWRUHAPOMQZL.
  2666. ETag *string `location:"header" locationName:"ETag" type:"string"`
  2667. metadataUpdateDistributionOutput `json:"-" xml:"-"`
  2668. }
  2669. type metadataUpdateDistributionOutput struct {
  2670. SDKShapeTraits bool `type:"structure" payload:"Distribution"`
  2671. }
  2672. // String returns the string representation
  2673. func (s UpdateDistributionOutput) String() string {
  2674. return awsutil.Prettify(s)
  2675. }
  2676. // GoString returns the string representation
  2677. func (s UpdateDistributionOutput) GoString() string {
  2678. return s.String()
  2679. }
  2680. // The request to update a streaming distribution.
  2681. type UpdateStreamingDistributionInput struct {
  2682. // The streaming distribution's id.
  2683. Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  2684. // The value of the ETag header you received when retrieving the streaming distribution's
  2685. // configuration. For example: E2QWRUHAPOMQZL.
  2686. IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
  2687. // The streaming distribution's configuration information.
  2688. StreamingDistributionConfig *StreamingDistributionConfig `locationName:"StreamingDistributionConfig" type:"structure" required:"true"`
  2689. metadataUpdateStreamingDistributionInput `json:"-" xml:"-"`
  2690. }
  2691. type metadataUpdateStreamingDistributionInput struct {
  2692. SDKShapeTraits bool `type:"structure" payload:"StreamingDistributionConfig"`
  2693. }
  2694. // String returns the string representation
  2695. func (s UpdateStreamingDistributionInput) String() string {
  2696. return awsutil.Prettify(s)
  2697. }
  2698. // GoString returns the string representation
  2699. func (s UpdateStreamingDistributionInput) GoString() string {
  2700. return s.String()
  2701. }
  2702. // The returned result of the corresponding request.
  2703. type UpdateStreamingDistributionOutput struct {
  2704. // The current version of the configuration. For example: E2QWRUHAPOMQZL.
  2705. ETag *string `location:"header" locationName:"ETag" type:"string"`
  2706. // The streaming distribution's information.
  2707. StreamingDistribution *StreamingDistribution `type:"structure"`
  2708. metadataUpdateStreamingDistributionOutput `json:"-" xml:"-"`
  2709. }
  2710. type metadataUpdateStreamingDistributionOutput struct {
  2711. SDKShapeTraits bool `type:"structure" payload:"StreamingDistribution"`
  2712. }
  2713. // String returns the string representation
  2714. func (s UpdateStreamingDistributionOutput) String() string {
  2715. return awsutil.Prettify(s)
  2716. }
  2717. // GoString returns the string representation
  2718. func (s UpdateStreamingDistributionOutput) GoString() string {
  2719. return s.String()
  2720. }
  2721. // A complex type that contains information about viewer certificates for this
  2722. // distribution.
  2723. type ViewerCertificate struct {
  2724. // If you want viewers to use HTTPS to request your objects and you're using
  2725. // the CloudFront domain name of your distribution in your object URLs (for
  2726. // example, https://d111111abcdef8.cloudfront.net/logo.jpg), set to true. Omit
  2727. // this value if you are setting an IAMCertificateId.
  2728. CloudFrontDefaultCertificate *bool `type:"boolean"`
  2729. // If you want viewers to use HTTPS to request your objects and you're using
  2730. // an alternate domain name in your object URLs (for example, https://example.com/logo.jpg),
  2731. // specify the IAM certificate identifier of the custom viewer certificate for
  2732. // this distribution. Specify either this value or CloudFrontDefaultCertificate.
  2733. IAMCertificateId *string `type:"string"`
  2734. // Specify the minimum version of the SSL protocol that you want CloudFront
  2735. // to use, SSLv3 or TLSv1, for HTTPS connections. CloudFront will serve your
  2736. // objects only to browsers or devices that support at least the SSL version
  2737. // that you specify. The TLSv1 protocol is more secure, so we recommend that
  2738. // you specify SSLv3 only if your users are using browsers or devices that don't
  2739. // support TLSv1. If you're using a custom certificate (if you specify a value
  2740. // for IAMCertificateId) and if you're using dedicated IP (if you specify vip
  2741. // for SSLSupportMethod), you can choose SSLv3 or TLSv1 as the MinimumProtocolVersion.
  2742. // If you're using a custom certificate (if you specify a value for IAMCertificateId)
  2743. // and if you're using SNI (if you specify sni-only for SSLSupportMethod), you
  2744. // must specify TLSv1 for MinimumProtocolVersion.
  2745. MinimumProtocolVersion *string `type:"string" enum:"MinimumProtocolVersion"`
  2746. // If you specify a value for IAMCertificateId, you must also specify how you
  2747. // want CloudFront to serve HTTPS requests. Valid values are vip and sni-only.
  2748. // If you specify vip, CloudFront uses dedicated IP addresses for your content
  2749. // and can respond to HTTPS requests from any viewer. However, you must request
  2750. // permission to use this feature, and you incur additional monthly charges.
  2751. // If you specify sni-only, CloudFront can only respond to HTTPS requests from
  2752. // viewers that support Server Name Indication (SNI). All modern browsers support
  2753. // SNI, but some browsers still in use don't support SNI. Do not specify a value
  2754. // for SSLSupportMethod if you specified true for CloudFrontDefaultCertificate.
  2755. SSLSupportMethod *string `type:"string" enum:"SSLSupportMethod"`
  2756. metadataViewerCertificate `json:"-" xml:"-"`
  2757. }
  2758. type metadataViewerCertificate struct {
  2759. SDKShapeTraits bool `type:"structure"`
  2760. }
  2761. // String returns the string representation
  2762. func (s ViewerCertificate) String() string {
  2763. return awsutil.Prettify(s)
  2764. }
  2765. // GoString returns the string representation
  2766. func (s ViewerCertificate) GoString() string {
  2767. return s.String()
  2768. }
  2769. const (
  2770. // @enum GeoRestrictionType
  2771. GeoRestrictionTypeBlacklist = "blacklist"
  2772. // @enum GeoRestrictionType
  2773. GeoRestrictionTypeWhitelist = "whitelist"
  2774. // @enum GeoRestrictionType
  2775. GeoRestrictionTypeNone = "none"
  2776. )
  2777. const (
  2778. // @enum ItemSelection
  2779. ItemSelectionNone = "none"
  2780. // @enum ItemSelection
  2781. ItemSelectionWhitelist = "whitelist"
  2782. // @enum ItemSelection
  2783. ItemSelectionAll = "all"
  2784. )
  2785. const (
  2786. // @enum Method
  2787. MethodGet = "GET"
  2788. // @enum Method
  2789. MethodHead = "HEAD"
  2790. // @enum Method
  2791. MethodPost = "POST"
  2792. // @enum Method
  2793. MethodPut = "PUT"
  2794. // @enum Method
  2795. MethodPatch = "PATCH"
  2796. // @enum Method
  2797. MethodOptions = "OPTIONS"
  2798. // @enum Method
  2799. MethodDelete = "DELETE"
  2800. )
  2801. const (
  2802. // @enum MinimumProtocolVersion
  2803. MinimumProtocolVersionSslv3 = "SSLv3"
  2804. // @enum MinimumProtocolVersion
  2805. MinimumProtocolVersionTlsv1 = "TLSv1"
  2806. )
  2807. const (
  2808. // @enum OriginProtocolPolicy
  2809. OriginProtocolPolicyHttpOnly = "http-only"
  2810. // @enum OriginProtocolPolicy
  2811. OriginProtocolPolicyMatchViewer = "match-viewer"
  2812. )
  2813. const (
  2814. // @enum PriceClass
  2815. PriceClassPriceClass100 = "PriceClass_100"
  2816. // @enum PriceClass
  2817. PriceClassPriceClass200 = "PriceClass_200"
  2818. // @enum PriceClass
  2819. PriceClassPriceClassAll = "PriceClass_All"
  2820. )
  2821. const (
  2822. // @enum SSLSupportMethod
  2823. SSLSupportMethodSniOnly = "sni-only"
  2824. // @enum SSLSupportMethod
  2825. SSLSupportMethodVip = "vip"
  2826. )
  2827. const (
  2828. // @enum ViewerProtocolPolicy
  2829. ViewerProtocolPolicyAllowAll = "allow-all"
  2830. // @enum ViewerProtocolPolicy
  2831. ViewerProtocolPolicyHttpsOnly = "https-only"
  2832. // @enum ViewerProtocolPolicy
  2833. ViewerProtocolPolicyRedirectToHttps = "redirect-to-https"
  2834. )