1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897 |
- // THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT.
- // Package redshift provides a client for Amazon Redshift.
- package redshift
- import (
- "time"
- "github.com/aws/aws-sdk-go/aws/awsutil"
- "github.com/aws/aws-sdk-go/aws/request"
- "github.com/aws/aws-sdk-go/private/protocol"
- "github.com/aws/aws-sdk-go/private/protocol/query"
- )
- const opAuthorizeClusterSecurityGroupIngress = "AuthorizeClusterSecurityGroupIngress"
- // AuthorizeClusterSecurityGroupIngressRequest generates a "aws/request.Request" representing the
- // client's request for the AuthorizeClusterSecurityGroupIngress operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See AuthorizeClusterSecurityGroupIngress for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the AuthorizeClusterSecurityGroupIngress method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the AuthorizeClusterSecurityGroupIngressRequest method.
- // req, resp := client.AuthorizeClusterSecurityGroupIngressRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) AuthorizeClusterSecurityGroupIngressRequest(input *AuthorizeClusterSecurityGroupIngressInput) (req *request.Request, output *AuthorizeClusterSecurityGroupIngressOutput) {
- op := &request.Operation{
- Name: opAuthorizeClusterSecurityGroupIngress,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &AuthorizeClusterSecurityGroupIngressInput{}
- }
- req = c.newRequest(op, input, output)
- output = &AuthorizeClusterSecurityGroupIngressOutput{}
- req.Data = output
- return
- }
- // AuthorizeClusterSecurityGroupIngress API operation for Amazon Redshift.
- //
- // Adds an inbound (ingress) rule to an Amazon Redshift security group. Depending
- // on whether the application accessing your cluster is running on the Internet
- // or an Amazon EC2 instance, you can authorize inbound access to either a Classless
- // Interdomain Routing (CIDR)/Internet Protocol (IP) range or to an Amazon EC2
- // security group. You can add as many as 20 ingress rules to an Amazon Redshift
- // security group.
- //
- // If you authorize access to an Amazon EC2 security group, specify EC2SecurityGroupName
- // and EC2SecurityGroupOwnerId. The Amazon EC2 security group and Amazon Redshift
- // cluster must be in the same AWS region.
- //
- // If you authorize access to a CIDR/IP address range, specify CIDRIP. For an
- // overview of CIDR blocks, see the Wikipedia article on Classless Inter-Domain
- // Routing (http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing).
- //
- // You must also associate the security group with a cluster so that clients
- // running on these IP addresses or the EC2 instance are authorized to connect
- // to the cluster. For information about managing security groups, go to Working
- // with Security Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation AuthorizeClusterSecurityGroupIngress for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterSecurityGroupNotFound
- // The cluster security group name does not refer to an existing cluster security
- // group.
- //
- // * InvalidClusterSecurityGroupState
- // The state of the cluster security group is not available.
- //
- // * AuthorizationAlreadyExists
- // The specified CIDR block or EC2 security group is already authorized for
- // the specified cluster security group.
- //
- // * AuthorizationQuotaExceeded
- // The authorization quota for the cluster security group has been reached.
- //
- func (c *Redshift) AuthorizeClusterSecurityGroupIngress(input *AuthorizeClusterSecurityGroupIngressInput) (*AuthorizeClusterSecurityGroupIngressOutput, error) {
- req, out := c.AuthorizeClusterSecurityGroupIngressRequest(input)
- err := req.Send()
- return out, err
- }
- const opAuthorizeSnapshotAccess = "AuthorizeSnapshotAccess"
- // AuthorizeSnapshotAccessRequest generates a "aws/request.Request" representing the
- // client's request for the AuthorizeSnapshotAccess operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See AuthorizeSnapshotAccess for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the AuthorizeSnapshotAccess method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the AuthorizeSnapshotAccessRequest method.
- // req, resp := client.AuthorizeSnapshotAccessRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) AuthorizeSnapshotAccessRequest(input *AuthorizeSnapshotAccessInput) (req *request.Request, output *AuthorizeSnapshotAccessOutput) {
- op := &request.Operation{
- Name: opAuthorizeSnapshotAccess,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &AuthorizeSnapshotAccessInput{}
- }
- req = c.newRequest(op, input, output)
- output = &AuthorizeSnapshotAccessOutput{}
- req.Data = output
- return
- }
- // AuthorizeSnapshotAccess API operation for Amazon Redshift.
- //
- // Authorizes the specified AWS customer account to restore the specified snapshot.
- //
- // For more information about working with snapshots, go to Amazon Redshift
- // Snapshots (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-snapshots.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation AuthorizeSnapshotAccess for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterSnapshotNotFound
- // The snapshot identifier does not refer to an existing cluster snapshot.
- //
- // * AuthorizationAlreadyExists
- // The specified CIDR block or EC2 security group is already authorized for
- // the specified cluster security group.
- //
- // * AuthorizationQuotaExceeded
- // The authorization quota for the cluster security group has been reached.
- //
- // * DependentServiceRequestThrottlingFault
- // The request cannot be completed because a dependent service is throttling
- // requests made by Amazon Redshift on your behalf. Wait and retry the request.
- //
- // * InvalidClusterSnapshotState
- // The specified cluster snapshot is not in the available state, or other accounts
- // are authorized to access the snapshot.
- //
- // * LimitExceededFault
- // The encryption key has exceeded its grant limit in AWS KMS.
- //
- func (c *Redshift) AuthorizeSnapshotAccess(input *AuthorizeSnapshotAccessInput) (*AuthorizeSnapshotAccessOutput, error) {
- req, out := c.AuthorizeSnapshotAccessRequest(input)
- err := req.Send()
- return out, err
- }
- const opCopyClusterSnapshot = "CopyClusterSnapshot"
- // CopyClusterSnapshotRequest generates a "aws/request.Request" representing the
- // client's request for the CopyClusterSnapshot operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See CopyClusterSnapshot for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the CopyClusterSnapshot method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the CopyClusterSnapshotRequest method.
- // req, resp := client.CopyClusterSnapshotRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) CopyClusterSnapshotRequest(input *CopyClusterSnapshotInput) (req *request.Request, output *CopyClusterSnapshotOutput) {
- op := &request.Operation{
- Name: opCopyClusterSnapshot,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &CopyClusterSnapshotInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CopyClusterSnapshotOutput{}
- req.Data = output
- return
- }
- // CopyClusterSnapshot API operation for Amazon Redshift.
- //
- // Copies the specified automated cluster snapshot to a new manual cluster snapshot.
- // The source must be an automated snapshot and it must be in the available
- // state.
- //
- // When you delete a cluster, Amazon Redshift deletes any automated snapshots
- // of the cluster. Also, when the retention period of the snapshot expires,
- // Amazon Redshift automatically deletes it. If you want to keep an automated
- // snapshot for a longer period, you can make a manual copy of the snapshot.
- // Manual snapshots are retained until you delete them.
- //
- // For more information about working with snapshots, go to Amazon Redshift
- // Snapshots (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-snapshots.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation CopyClusterSnapshot for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterSnapshotAlreadyExists
- // The value specified as a snapshot identifier is already used by an existing
- // snapshot.
- //
- // * ClusterSnapshotNotFound
- // The snapshot identifier does not refer to an existing cluster snapshot.
- //
- // * InvalidClusterSnapshotState
- // The specified cluster snapshot is not in the available state, or other accounts
- // are authorized to access the snapshot.
- //
- // * ClusterSnapshotQuotaExceeded
- // The request would result in the user exceeding the allowed number of cluster
- // snapshots.
- //
- func (c *Redshift) CopyClusterSnapshot(input *CopyClusterSnapshotInput) (*CopyClusterSnapshotOutput, error) {
- req, out := c.CopyClusterSnapshotRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateCluster = "CreateCluster"
- // CreateClusterRequest generates a "aws/request.Request" representing the
- // client's request for the CreateCluster operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See CreateCluster for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the CreateCluster method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the CreateClusterRequest method.
- // req, resp := client.CreateClusterRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) CreateClusterRequest(input *CreateClusterInput) (req *request.Request, output *CreateClusterOutput) {
- op := &request.Operation{
- Name: opCreateCluster,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &CreateClusterInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateClusterOutput{}
- req.Data = output
- return
- }
- // CreateCluster API operation for Amazon Redshift.
- //
- // Creates a new cluster.
- //
- // To create the cluster in Virtual Private Cloud (VPC), you must provide a
- // cluster subnet group name. The cluster subnet group identifies the subnets
- // of your VPC that Amazon Redshift uses when creating the cluster. For more
- // information about managing clusters, go to Amazon Redshift Clusters (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation CreateCluster for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterAlreadyExists
- // The account already has a cluster with the given identifier.
- //
- // * InsufficientClusterCapacity
- // The number of nodes specified exceeds the allotted capacity of the cluster.
- //
- // * ClusterParameterGroupNotFound
- // The parameter group name does not refer to an existing parameter group.
- //
- // * ClusterSecurityGroupNotFound
- // The cluster security group name does not refer to an existing cluster security
- // group.
- //
- // * ClusterQuotaExceeded
- // The request would exceed the allowed number of cluster instances for this
- // account. For information about increasing your quota, go to Limits in Amazon
- // Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // * NumberOfNodesQuotaExceeded
- // The operation would exceed the number of nodes allotted to the account. For
- // information about increasing your quota, go to Limits in Amazon Redshift
- // (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // * NumberOfNodesPerClusterLimitExceeded
- // The operation would exceed the number of nodes allowed for a cluster.
- //
- // * ClusterSubnetGroupNotFoundFault
- // The cluster subnet group name does not refer to an existing cluster subnet
- // group.
- //
- // * InvalidVPCNetworkStateFault
- // The cluster subnet group does not cover all Availability Zones.
- //
- // * InvalidClusterSubnetGroupStateFault
- // The cluster subnet group cannot be deleted because it is in use.
- //
- // * InvalidSubnet
- // The requested subnet is not valid, or not all of the subnets are in the same
- // VPC.
- //
- // * UnauthorizedOperation
- // Your account is not authorized to perform the requested operation.
- //
- // * HsmClientCertificateNotFoundFault
- // There is no Amazon Redshift HSM client certificate with the specified identifier.
- //
- // * HsmConfigurationNotFoundFault
- // There is no Amazon Redshift HSM configuration with the specified identifier.
- //
- // * InvalidElasticIpFault
- // The Elastic IP (EIP) is invalid or cannot be found.
- //
- // * TagLimitExceededFault
- // The request exceeds the limit of 10 tags for the resource.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- // * LimitExceededFault
- // The encryption key has exceeded its grant limit in AWS KMS.
- //
- // * DependentServiceRequestThrottlingFault
- // The request cannot be completed because a dependent service is throttling
- // requests made by Amazon Redshift on your behalf. Wait and retry the request.
- //
- func (c *Redshift) CreateCluster(input *CreateClusterInput) (*CreateClusterOutput, error) {
- req, out := c.CreateClusterRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateClusterParameterGroup = "CreateClusterParameterGroup"
- // CreateClusterParameterGroupRequest generates a "aws/request.Request" representing the
- // client's request for the CreateClusterParameterGroup operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See CreateClusterParameterGroup for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the CreateClusterParameterGroup method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the CreateClusterParameterGroupRequest method.
- // req, resp := client.CreateClusterParameterGroupRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) CreateClusterParameterGroupRequest(input *CreateClusterParameterGroupInput) (req *request.Request, output *CreateClusterParameterGroupOutput) {
- op := &request.Operation{
- Name: opCreateClusterParameterGroup,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &CreateClusterParameterGroupInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateClusterParameterGroupOutput{}
- req.Data = output
- return
- }
- // CreateClusterParameterGroup API operation for Amazon Redshift.
- //
- // Creates an Amazon Redshift parameter group.
- //
- // Creating parameter groups is independent of creating clusters. You can associate
- // a cluster with a parameter group when you create the cluster. You can also
- // associate an existing cluster with a parameter group after the cluster is
- // created by using ModifyCluster.
- //
- // Parameters in the parameter group define specific behavior that applies to
- // the databases you create on the cluster. For more information about parameters
- // and parameter groups, go to Amazon Redshift Parameter Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation CreateClusterParameterGroup for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterParameterGroupQuotaExceeded
- // The request would result in the user exceeding the allowed number of cluster
- // parameter groups. For information about increasing your quota, go to Limits
- // in Amazon Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // * ClusterParameterGroupAlreadyExists
- // A cluster parameter group with the same name already exists.
- //
- // * TagLimitExceededFault
- // The request exceeds the limit of 10 tags for the resource.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- func (c *Redshift) CreateClusterParameterGroup(input *CreateClusterParameterGroupInput) (*CreateClusterParameterGroupOutput, error) {
- req, out := c.CreateClusterParameterGroupRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateClusterSecurityGroup = "CreateClusterSecurityGroup"
- // CreateClusterSecurityGroupRequest generates a "aws/request.Request" representing the
- // client's request for the CreateClusterSecurityGroup operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See CreateClusterSecurityGroup for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the CreateClusterSecurityGroup method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the CreateClusterSecurityGroupRequest method.
- // req, resp := client.CreateClusterSecurityGroupRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) CreateClusterSecurityGroupRequest(input *CreateClusterSecurityGroupInput) (req *request.Request, output *CreateClusterSecurityGroupOutput) {
- op := &request.Operation{
- Name: opCreateClusterSecurityGroup,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &CreateClusterSecurityGroupInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateClusterSecurityGroupOutput{}
- req.Data = output
- return
- }
- // CreateClusterSecurityGroup API operation for Amazon Redshift.
- //
- // Creates a new Amazon Redshift security group. You use security groups to
- // control access to non-VPC clusters.
- //
- // For information about managing security groups, go to Amazon Redshift Cluster
- // Security Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation CreateClusterSecurityGroup for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterSecurityGroupAlreadyExists
- // A cluster security group with the same name already exists.
- //
- // * QuotaExceeded.ClusterSecurityGroup
- // The request would result in the user exceeding the allowed number of cluster
- // security groups. For information about increasing your quota, go to Limits
- // in Amazon Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // * TagLimitExceededFault
- // The request exceeds the limit of 10 tags for the resource.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- func (c *Redshift) CreateClusterSecurityGroup(input *CreateClusterSecurityGroupInput) (*CreateClusterSecurityGroupOutput, error) {
- req, out := c.CreateClusterSecurityGroupRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateClusterSnapshot = "CreateClusterSnapshot"
- // CreateClusterSnapshotRequest generates a "aws/request.Request" representing the
- // client's request for the CreateClusterSnapshot operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See CreateClusterSnapshot for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the CreateClusterSnapshot method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the CreateClusterSnapshotRequest method.
- // req, resp := client.CreateClusterSnapshotRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) CreateClusterSnapshotRequest(input *CreateClusterSnapshotInput) (req *request.Request, output *CreateClusterSnapshotOutput) {
- op := &request.Operation{
- Name: opCreateClusterSnapshot,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &CreateClusterSnapshotInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateClusterSnapshotOutput{}
- req.Data = output
- return
- }
- // CreateClusterSnapshot API operation for Amazon Redshift.
- //
- // Creates a manual snapshot of the specified cluster. The cluster must be in
- // the available state.
- //
- // For more information about working with snapshots, go to Amazon Redshift
- // Snapshots (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-snapshots.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation CreateClusterSnapshot for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterSnapshotAlreadyExists
- // The value specified as a snapshot identifier is already used by an existing
- // snapshot.
- //
- // * InvalidClusterState
- // The specified cluster is not in the available state.
- //
- // * ClusterNotFound
- // The ClusterIdentifier parameter does not refer to an existing cluster.
- //
- // * ClusterSnapshotQuotaExceeded
- // The request would result in the user exceeding the allowed number of cluster
- // snapshots.
- //
- // * TagLimitExceededFault
- // The request exceeds the limit of 10 tags for the resource.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- func (c *Redshift) CreateClusterSnapshot(input *CreateClusterSnapshotInput) (*CreateClusterSnapshotOutput, error) {
- req, out := c.CreateClusterSnapshotRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateClusterSubnetGroup = "CreateClusterSubnetGroup"
- // CreateClusterSubnetGroupRequest generates a "aws/request.Request" representing the
- // client's request for the CreateClusterSubnetGroup operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See CreateClusterSubnetGroup for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the CreateClusterSubnetGroup method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the CreateClusterSubnetGroupRequest method.
- // req, resp := client.CreateClusterSubnetGroupRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) CreateClusterSubnetGroupRequest(input *CreateClusterSubnetGroupInput) (req *request.Request, output *CreateClusterSubnetGroupOutput) {
- op := &request.Operation{
- Name: opCreateClusterSubnetGroup,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &CreateClusterSubnetGroupInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateClusterSubnetGroupOutput{}
- req.Data = output
- return
- }
- // CreateClusterSubnetGroup API operation for Amazon Redshift.
- //
- // Creates a new Amazon Redshift subnet group. You must provide a list of one
- // or more subnets in your existing Amazon Virtual Private Cloud (Amazon VPC)
- // when creating Amazon Redshift subnet group.
- //
- // For information about subnet groups, go to Amazon Redshift Cluster Subnet
- // Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-cluster-subnet-groups.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation CreateClusterSubnetGroup for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterSubnetGroupAlreadyExists
- // A ClusterSubnetGroupName is already used by an existing cluster subnet group.
- //
- // * ClusterSubnetGroupQuotaExceeded
- // The request would result in user exceeding the allowed number of cluster
- // subnet groups. For information about increasing your quota, go to Limits
- // in Amazon Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // * ClusterSubnetQuotaExceededFault
- // The request would result in user exceeding the allowed number of subnets
- // in a cluster subnet groups. For information about increasing your quota,
- // go to Limits in Amazon Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // * InvalidSubnet
- // The requested subnet is not valid, or not all of the subnets are in the same
- // VPC.
- //
- // * UnauthorizedOperation
- // Your account is not authorized to perform the requested operation.
- //
- // * TagLimitExceededFault
- // The request exceeds the limit of 10 tags for the resource.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- // * DependentServiceRequestThrottlingFault
- // The request cannot be completed because a dependent service is throttling
- // requests made by Amazon Redshift on your behalf. Wait and retry the request.
- //
- func (c *Redshift) CreateClusterSubnetGroup(input *CreateClusterSubnetGroupInput) (*CreateClusterSubnetGroupOutput, error) {
- req, out := c.CreateClusterSubnetGroupRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateEventSubscription = "CreateEventSubscription"
- // CreateEventSubscriptionRequest generates a "aws/request.Request" representing the
- // client's request for the CreateEventSubscription operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See CreateEventSubscription for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the CreateEventSubscription method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the CreateEventSubscriptionRequest method.
- // req, resp := client.CreateEventSubscriptionRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) CreateEventSubscriptionRequest(input *CreateEventSubscriptionInput) (req *request.Request, output *CreateEventSubscriptionOutput) {
- op := &request.Operation{
- Name: opCreateEventSubscription,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &CreateEventSubscriptionInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateEventSubscriptionOutput{}
- req.Data = output
- return
- }
- // CreateEventSubscription API operation for Amazon Redshift.
- //
- // Creates an Amazon Redshift event notification subscription. This action requires
- // an ARN (Amazon Resource Name) of an Amazon SNS topic created by either the
- // Amazon Redshift console, the Amazon SNS console, or the Amazon SNS API. To
- // obtain an ARN with Amazon SNS, you must create a topic in Amazon SNS and
- // subscribe to the topic. The ARN is displayed in the SNS console.
- //
- // You can specify the source type, and lists of Amazon Redshift source IDs,
- // event categories, and event severities. Notifications will be sent for all
- // events you want that match those criteria. For example, you can specify source
- // type = cluster, source ID = my-cluster-1 and mycluster2, event categories
- // = Availability, Backup, and severity = ERROR. The subscription will only
- // send notifications for those ERROR events in the Availability and Backup
- // categories for the specified clusters.
- //
- // If you specify both the source type and source IDs, such as source type =
- // cluster and source identifier = my-cluster-1, notifications will be sent
- // for all the cluster events for my-cluster-1. If you specify a source type
- // but do not specify a source identifier, you will receive notice of the events
- // for the objects of that type in your AWS account. If you do not specify either
- // the SourceType nor the SourceIdentifier, you will be notified of events generated
- // from all Amazon Redshift sources belonging to your AWS account. You must
- // specify a source type if you specify a source ID.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation CreateEventSubscription for usage and error information.
- //
- // Returned Error Codes:
- // * EventSubscriptionQuotaExceeded
- // The request would exceed the allowed number of event subscriptions for this
- // account. For information about increasing your quota, go to Limits in Amazon
- // Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // * SubscriptionAlreadyExist
- // There is already an existing event notification subscription with the specified
- // name.
- //
- // * SNSInvalidTopic
- // Amazon SNS has responded that there is a problem with the specified Amazon
- // SNS topic.
- //
- // * SNSNoAuthorization
- // You do not have permission to publish to the specified Amazon SNS topic.
- //
- // * SNSTopicArnNotFound
- // An Amazon SNS topic with the specified Amazon Resource Name (ARN) does not
- // exist.
- //
- // * SubscriptionEventIdNotFound
- // An Amazon Redshift event with the specified event ID does not exist.
- //
- // * SubscriptionCategoryNotFound
- // The value specified for the event category was not one of the allowed values,
- // or it specified a category that does not apply to the specified source type.
- // The allowed values are Configuration, Management, Monitoring, and Security.
- //
- // * SubscriptionSeverityNotFound
- // The value specified for the event severity was not one of the allowed values,
- // or it specified a severity that does not apply to the specified source type.
- // The allowed values are ERROR and INFO.
- //
- // * SourceNotFound
- // The specified Amazon Redshift event source could not be found.
- //
- // * TagLimitExceededFault
- // The request exceeds the limit of 10 tags for the resource.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- func (c *Redshift) CreateEventSubscription(input *CreateEventSubscriptionInput) (*CreateEventSubscriptionOutput, error) {
- req, out := c.CreateEventSubscriptionRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateHsmClientCertificate = "CreateHsmClientCertificate"
- // CreateHsmClientCertificateRequest generates a "aws/request.Request" representing the
- // client's request for the CreateHsmClientCertificate operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See CreateHsmClientCertificate for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the CreateHsmClientCertificate method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the CreateHsmClientCertificateRequest method.
- // req, resp := client.CreateHsmClientCertificateRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) CreateHsmClientCertificateRequest(input *CreateHsmClientCertificateInput) (req *request.Request, output *CreateHsmClientCertificateOutput) {
- op := &request.Operation{
- Name: opCreateHsmClientCertificate,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &CreateHsmClientCertificateInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateHsmClientCertificateOutput{}
- req.Data = output
- return
- }
- // CreateHsmClientCertificate API operation for Amazon Redshift.
- //
- // Creates an HSM client certificate that an Amazon Redshift cluster will use
- // to connect to the client's HSM in order to store and retrieve the keys used
- // to encrypt the cluster databases.
- //
- // The command returns a public key, which you must store in the HSM. In addition
- // to creating the HSM certificate, you must create an Amazon Redshift HSM configuration
- // that provides a cluster the information needed to store and use encryption
- // keys in the HSM. For more information, go to Hardware Security Modules (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-HSM.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation CreateHsmClientCertificate for usage and error information.
- //
- // Returned Error Codes:
- // * HsmClientCertificateAlreadyExistsFault
- // There is already an existing Amazon Redshift HSM client certificate with
- // the specified identifier.
- //
- // * HsmClientCertificateQuotaExceededFault
- // The quota for HSM client certificates has been reached. For information about
- // increasing your quota, go to Limits in Amazon Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // * TagLimitExceededFault
- // The request exceeds the limit of 10 tags for the resource.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- func (c *Redshift) CreateHsmClientCertificate(input *CreateHsmClientCertificateInput) (*CreateHsmClientCertificateOutput, error) {
- req, out := c.CreateHsmClientCertificateRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateHsmConfiguration = "CreateHsmConfiguration"
- // CreateHsmConfigurationRequest generates a "aws/request.Request" representing the
- // client's request for the CreateHsmConfiguration operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See CreateHsmConfiguration for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the CreateHsmConfiguration method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the CreateHsmConfigurationRequest method.
- // req, resp := client.CreateHsmConfigurationRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) CreateHsmConfigurationRequest(input *CreateHsmConfigurationInput) (req *request.Request, output *CreateHsmConfigurationOutput) {
- op := &request.Operation{
- Name: opCreateHsmConfiguration,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &CreateHsmConfigurationInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateHsmConfigurationOutput{}
- req.Data = output
- return
- }
- // CreateHsmConfiguration API operation for Amazon Redshift.
- //
- // Creates an HSM configuration that contains the information required by an
- // Amazon Redshift cluster to store and use database encryption keys in a Hardware
- // Security Module (HSM). After creating the HSM configuration, you can specify
- // it as a parameter when creating a cluster. The cluster will then store its
- // encryption keys in the HSM.
- //
- // In addition to creating an HSM configuration, you must also create an HSM
- // client certificate. For more information, go to Hardware Security Modules
- // (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-HSM.html) in
- // the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation CreateHsmConfiguration for usage and error information.
- //
- // Returned Error Codes:
- // * HsmConfigurationAlreadyExistsFault
- // There is already an existing Amazon Redshift HSM configuration with the specified
- // identifier.
- //
- // * HsmConfigurationQuotaExceededFault
- // The quota for HSM configurations has been reached. For information about
- // increasing your quota, go to Limits in Amazon Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // * TagLimitExceededFault
- // The request exceeds the limit of 10 tags for the resource.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- func (c *Redshift) CreateHsmConfiguration(input *CreateHsmConfigurationInput) (*CreateHsmConfigurationOutput, error) {
- req, out := c.CreateHsmConfigurationRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateSnapshotCopyGrant = "CreateSnapshotCopyGrant"
- // CreateSnapshotCopyGrantRequest generates a "aws/request.Request" representing the
- // client's request for the CreateSnapshotCopyGrant operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See CreateSnapshotCopyGrant for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the CreateSnapshotCopyGrant method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the CreateSnapshotCopyGrantRequest method.
- // req, resp := client.CreateSnapshotCopyGrantRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) CreateSnapshotCopyGrantRequest(input *CreateSnapshotCopyGrantInput) (req *request.Request, output *CreateSnapshotCopyGrantOutput) {
- op := &request.Operation{
- Name: opCreateSnapshotCopyGrant,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &CreateSnapshotCopyGrantInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateSnapshotCopyGrantOutput{}
- req.Data = output
- return
- }
- // CreateSnapshotCopyGrant API operation for Amazon Redshift.
- //
- // Creates a snapshot copy grant that permits Amazon Redshift to use a customer
- // master key (CMK) from AWS Key Management Service (AWS KMS) to encrypt copied
- // snapshots in a destination region.
- //
- // For more information about managing snapshot copy grants, go to Amazon Redshift
- // Database Encryption (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-db-encryption.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation CreateSnapshotCopyGrant for usage and error information.
- //
- // Returned Error Codes:
- // * SnapshotCopyGrantAlreadyExistsFault
- // The snapshot copy grant can't be created because a grant with the same name
- // already exists.
- //
- // * SnapshotCopyGrantQuotaExceededFault
- // The AWS account has exceeded the maximum number of snapshot copy grants in
- // this region.
- //
- // * LimitExceededFault
- // The encryption key has exceeded its grant limit in AWS KMS.
- //
- // * TagLimitExceededFault
- // The request exceeds the limit of 10 tags for the resource.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- // * DependentServiceRequestThrottlingFault
- // The request cannot be completed because a dependent service is throttling
- // requests made by Amazon Redshift on your behalf. Wait and retry the request.
- //
- func (c *Redshift) CreateSnapshotCopyGrant(input *CreateSnapshotCopyGrantInput) (*CreateSnapshotCopyGrantOutput, error) {
- req, out := c.CreateSnapshotCopyGrantRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateTags = "CreateTags"
- // CreateTagsRequest generates a "aws/request.Request" representing the
- // client's request for the CreateTags operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See CreateTags for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the CreateTags method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the CreateTagsRequest method.
- // req, resp := client.CreateTagsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) CreateTagsRequest(input *CreateTagsInput) (req *request.Request, output *CreateTagsOutput) {
- op := &request.Operation{
- Name: opCreateTags,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &CreateTagsInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &CreateTagsOutput{}
- req.Data = output
- return
- }
- // CreateTags API operation for Amazon Redshift.
- //
- // Adds one or more tags to a specified resource.
- //
- // A resource can have up to 10 tags. If you try to create more than 10 tags
- // for a resource, you will receive an error and the attempt will fail.
- //
- // If you specify a key that already exists for the resource, the value for
- // that key will be updated with the new value.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation CreateTags for usage and error information.
- //
- // Returned Error Codes:
- // * TagLimitExceededFault
- // The request exceeds the limit of 10 tags for the resource.
- //
- // * ResourceNotFoundFault
- // The resource could not be found.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- func (c *Redshift) CreateTags(input *CreateTagsInput) (*CreateTagsOutput, error) {
- req, out := c.CreateTagsRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteCluster = "DeleteCluster"
- // DeleteClusterRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteCluster operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DeleteCluster for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DeleteCluster method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DeleteClusterRequest method.
- // req, resp := client.DeleteClusterRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DeleteClusterRequest(input *DeleteClusterInput) (req *request.Request, output *DeleteClusterOutput) {
- op := &request.Operation{
- Name: opDeleteCluster,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeleteClusterInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DeleteClusterOutput{}
- req.Data = output
- return
- }
- // DeleteCluster API operation for Amazon Redshift.
- //
- // Deletes a previously provisioned cluster. A successful response from the
- // web service indicates that the request was received correctly. Use DescribeClusters
- // to monitor the status of the deletion. The delete operation cannot be canceled
- // or reverted once submitted. For more information about managing clusters,
- // go to Amazon Redshift Clusters (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // If you want to shut down the cluster and retain it for future use, set SkipFinalClusterSnapshot
- // to false and specify a name for FinalClusterSnapshotIdentifier. You can later
- // restore this snapshot to resume using the cluster. If a final cluster snapshot
- // is requested, the status of the cluster will be "final-snapshot" while the
- // snapshot is being taken, then it's "deleting" once Amazon Redshift begins
- // deleting the cluster.
- //
- // For more information about managing clusters, go to Amazon Redshift Clusters
- // (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DeleteCluster for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterNotFound
- // The ClusterIdentifier parameter does not refer to an existing cluster.
- //
- // * InvalidClusterState
- // The specified cluster is not in the available state.
- //
- // * ClusterSnapshotAlreadyExists
- // The value specified as a snapshot identifier is already used by an existing
- // snapshot.
- //
- // * ClusterSnapshotQuotaExceeded
- // The request would result in the user exceeding the allowed number of cluster
- // snapshots.
- //
- func (c *Redshift) DeleteCluster(input *DeleteClusterInput) (*DeleteClusterOutput, error) {
- req, out := c.DeleteClusterRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteClusterParameterGroup = "DeleteClusterParameterGroup"
- // DeleteClusterParameterGroupRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteClusterParameterGroup operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DeleteClusterParameterGroup for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DeleteClusterParameterGroup method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DeleteClusterParameterGroupRequest method.
- // req, resp := client.DeleteClusterParameterGroupRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DeleteClusterParameterGroupRequest(input *DeleteClusterParameterGroupInput) (req *request.Request, output *DeleteClusterParameterGroupOutput) {
- op := &request.Operation{
- Name: opDeleteClusterParameterGroup,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeleteClusterParameterGroupInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &DeleteClusterParameterGroupOutput{}
- req.Data = output
- return
- }
- // DeleteClusterParameterGroup API operation for Amazon Redshift.
- //
- // Deletes a specified Amazon Redshift parameter group.
- //
- // You cannot delete a parameter group if it is associated with a cluster.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DeleteClusterParameterGroup for usage and error information.
- //
- // Returned Error Codes:
- // * InvalidClusterParameterGroupState
- // The cluster parameter group action can not be completed because another task
- // is in progress that involves the parameter group. Wait a few moments and
- // try the operation again.
- //
- // * ClusterParameterGroupNotFound
- // The parameter group name does not refer to an existing parameter group.
- //
- func (c *Redshift) DeleteClusterParameterGroup(input *DeleteClusterParameterGroupInput) (*DeleteClusterParameterGroupOutput, error) {
- req, out := c.DeleteClusterParameterGroupRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteClusterSecurityGroup = "DeleteClusterSecurityGroup"
- // DeleteClusterSecurityGroupRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteClusterSecurityGroup operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DeleteClusterSecurityGroup for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DeleteClusterSecurityGroup method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DeleteClusterSecurityGroupRequest method.
- // req, resp := client.DeleteClusterSecurityGroupRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DeleteClusterSecurityGroupRequest(input *DeleteClusterSecurityGroupInput) (req *request.Request, output *DeleteClusterSecurityGroupOutput) {
- op := &request.Operation{
- Name: opDeleteClusterSecurityGroup,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeleteClusterSecurityGroupInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &DeleteClusterSecurityGroupOutput{}
- req.Data = output
- return
- }
- // DeleteClusterSecurityGroup API operation for Amazon Redshift.
- //
- // Deletes an Amazon Redshift security group.
- //
- // You cannot delete a security group that is associated with any clusters.
- // You cannot delete the default security group.
- //
- // For information about managing security groups, go to Amazon Redshift Cluster
- // Security Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DeleteClusterSecurityGroup for usage and error information.
- //
- // Returned Error Codes:
- // * InvalidClusterSecurityGroupState
- // The state of the cluster security group is not available.
- //
- // * ClusterSecurityGroupNotFound
- // The cluster security group name does not refer to an existing cluster security
- // group.
- //
- func (c *Redshift) DeleteClusterSecurityGroup(input *DeleteClusterSecurityGroupInput) (*DeleteClusterSecurityGroupOutput, error) {
- req, out := c.DeleteClusterSecurityGroupRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteClusterSnapshot = "DeleteClusterSnapshot"
- // DeleteClusterSnapshotRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteClusterSnapshot operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DeleteClusterSnapshot for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DeleteClusterSnapshot method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DeleteClusterSnapshotRequest method.
- // req, resp := client.DeleteClusterSnapshotRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DeleteClusterSnapshotRequest(input *DeleteClusterSnapshotInput) (req *request.Request, output *DeleteClusterSnapshotOutput) {
- op := &request.Operation{
- Name: opDeleteClusterSnapshot,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeleteClusterSnapshotInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DeleteClusterSnapshotOutput{}
- req.Data = output
- return
- }
- // DeleteClusterSnapshot API operation for Amazon Redshift.
- //
- // Deletes the specified manual snapshot. The snapshot must be in the available
- // state, with no other users authorized to access the snapshot.
- //
- // Unlike automated snapshots, manual snapshots are retained even after you
- // delete your cluster. Amazon Redshift does not delete your manual snapshots.
- // You must delete manual snapshot explicitly to avoid getting charged. If other
- // accounts are authorized to access the snapshot, you must revoke all of the
- // authorizations before you can delete the snapshot.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DeleteClusterSnapshot for usage and error information.
- //
- // Returned Error Codes:
- // * InvalidClusterSnapshotState
- // The specified cluster snapshot is not in the available state, or other accounts
- // are authorized to access the snapshot.
- //
- // * ClusterSnapshotNotFound
- // The snapshot identifier does not refer to an existing cluster snapshot.
- //
- func (c *Redshift) DeleteClusterSnapshot(input *DeleteClusterSnapshotInput) (*DeleteClusterSnapshotOutput, error) {
- req, out := c.DeleteClusterSnapshotRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteClusterSubnetGroup = "DeleteClusterSubnetGroup"
- // DeleteClusterSubnetGroupRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteClusterSubnetGroup operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DeleteClusterSubnetGroup for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DeleteClusterSubnetGroup method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DeleteClusterSubnetGroupRequest method.
- // req, resp := client.DeleteClusterSubnetGroupRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DeleteClusterSubnetGroupRequest(input *DeleteClusterSubnetGroupInput) (req *request.Request, output *DeleteClusterSubnetGroupOutput) {
- op := &request.Operation{
- Name: opDeleteClusterSubnetGroup,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeleteClusterSubnetGroupInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &DeleteClusterSubnetGroupOutput{}
- req.Data = output
- return
- }
- // DeleteClusterSubnetGroup API operation for Amazon Redshift.
- //
- // Deletes the specified cluster subnet group.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DeleteClusterSubnetGroup for usage and error information.
- //
- // Returned Error Codes:
- // * InvalidClusterSubnetGroupStateFault
- // The cluster subnet group cannot be deleted because it is in use.
- //
- // * InvalidClusterSubnetStateFault
- // The state of the subnet is invalid.
- //
- // * ClusterSubnetGroupNotFoundFault
- // The cluster subnet group name does not refer to an existing cluster subnet
- // group.
- //
- func (c *Redshift) DeleteClusterSubnetGroup(input *DeleteClusterSubnetGroupInput) (*DeleteClusterSubnetGroupOutput, error) {
- req, out := c.DeleteClusterSubnetGroupRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteEventSubscription = "DeleteEventSubscription"
- // DeleteEventSubscriptionRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteEventSubscription operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DeleteEventSubscription for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DeleteEventSubscription method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DeleteEventSubscriptionRequest method.
- // req, resp := client.DeleteEventSubscriptionRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DeleteEventSubscriptionRequest(input *DeleteEventSubscriptionInput) (req *request.Request, output *DeleteEventSubscriptionOutput) {
- op := &request.Operation{
- Name: opDeleteEventSubscription,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeleteEventSubscriptionInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &DeleteEventSubscriptionOutput{}
- req.Data = output
- return
- }
- // DeleteEventSubscription API operation for Amazon Redshift.
- //
- // Deletes an Amazon Redshift event notification subscription.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DeleteEventSubscription for usage and error information.
- //
- // Returned Error Codes:
- // * SubscriptionNotFound
- // An Amazon Redshift event notification subscription with the specified name
- // does not exist.
- //
- // * InvalidSubscriptionStateFault
- // The subscription request is invalid because it is a duplicate request. This
- // subscription request is already in progress.
- //
- func (c *Redshift) DeleteEventSubscription(input *DeleteEventSubscriptionInput) (*DeleteEventSubscriptionOutput, error) {
- req, out := c.DeleteEventSubscriptionRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteHsmClientCertificate = "DeleteHsmClientCertificate"
- // DeleteHsmClientCertificateRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteHsmClientCertificate operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DeleteHsmClientCertificate for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DeleteHsmClientCertificate method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DeleteHsmClientCertificateRequest method.
- // req, resp := client.DeleteHsmClientCertificateRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DeleteHsmClientCertificateRequest(input *DeleteHsmClientCertificateInput) (req *request.Request, output *DeleteHsmClientCertificateOutput) {
- op := &request.Operation{
- Name: opDeleteHsmClientCertificate,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeleteHsmClientCertificateInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &DeleteHsmClientCertificateOutput{}
- req.Data = output
- return
- }
- // DeleteHsmClientCertificate API operation for Amazon Redshift.
- //
- // Deletes the specified HSM client certificate.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DeleteHsmClientCertificate for usage and error information.
- //
- // Returned Error Codes:
- // * InvalidHsmClientCertificateStateFault
- // The specified HSM client certificate is not in the available state, or it
- // is still in use by one or more Amazon Redshift clusters.
- //
- // * HsmClientCertificateNotFoundFault
- // There is no Amazon Redshift HSM client certificate with the specified identifier.
- //
- func (c *Redshift) DeleteHsmClientCertificate(input *DeleteHsmClientCertificateInput) (*DeleteHsmClientCertificateOutput, error) {
- req, out := c.DeleteHsmClientCertificateRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteHsmConfiguration = "DeleteHsmConfiguration"
- // DeleteHsmConfigurationRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteHsmConfiguration operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DeleteHsmConfiguration for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DeleteHsmConfiguration method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DeleteHsmConfigurationRequest method.
- // req, resp := client.DeleteHsmConfigurationRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DeleteHsmConfigurationRequest(input *DeleteHsmConfigurationInput) (req *request.Request, output *DeleteHsmConfigurationOutput) {
- op := &request.Operation{
- Name: opDeleteHsmConfiguration,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeleteHsmConfigurationInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &DeleteHsmConfigurationOutput{}
- req.Data = output
- return
- }
- // DeleteHsmConfiguration API operation for Amazon Redshift.
- //
- // Deletes the specified Amazon Redshift HSM configuration.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DeleteHsmConfiguration for usage and error information.
- //
- // Returned Error Codes:
- // * InvalidHsmConfigurationStateFault
- // The specified HSM configuration is not in the available state, or it is still
- // in use by one or more Amazon Redshift clusters.
- //
- // * HsmConfigurationNotFoundFault
- // There is no Amazon Redshift HSM configuration with the specified identifier.
- //
- func (c *Redshift) DeleteHsmConfiguration(input *DeleteHsmConfigurationInput) (*DeleteHsmConfigurationOutput, error) {
- req, out := c.DeleteHsmConfigurationRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteSnapshotCopyGrant = "DeleteSnapshotCopyGrant"
- // DeleteSnapshotCopyGrantRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteSnapshotCopyGrant operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DeleteSnapshotCopyGrant for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DeleteSnapshotCopyGrant method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DeleteSnapshotCopyGrantRequest method.
- // req, resp := client.DeleteSnapshotCopyGrantRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DeleteSnapshotCopyGrantRequest(input *DeleteSnapshotCopyGrantInput) (req *request.Request, output *DeleteSnapshotCopyGrantOutput) {
- op := &request.Operation{
- Name: opDeleteSnapshotCopyGrant,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeleteSnapshotCopyGrantInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &DeleteSnapshotCopyGrantOutput{}
- req.Data = output
- return
- }
- // DeleteSnapshotCopyGrant API operation for Amazon Redshift.
- //
- // Deletes the specified snapshot copy grant.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DeleteSnapshotCopyGrant for usage and error information.
- //
- // Returned Error Codes:
- // * InvalidSnapshotCopyGrantStateFault
- // The snapshot copy grant can't be deleted because it is used by one or more
- // clusters.
- //
- // * SnapshotCopyGrantNotFoundFault
- // The specified snapshot copy grant can't be found. Make sure that the name
- // is typed correctly and that the grant exists in the destination region.
- //
- func (c *Redshift) DeleteSnapshotCopyGrant(input *DeleteSnapshotCopyGrantInput) (*DeleteSnapshotCopyGrantOutput, error) {
- req, out := c.DeleteSnapshotCopyGrantRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteTags = "DeleteTags"
- // DeleteTagsRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteTags operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DeleteTags for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DeleteTags method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DeleteTagsRequest method.
- // req, resp := client.DeleteTagsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DeleteTagsRequest(input *DeleteTagsInput) (req *request.Request, output *DeleteTagsOutput) {
- op := &request.Operation{
- Name: opDeleteTags,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeleteTagsInput{}
- }
- req = c.newRequest(op, input, output)
- req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
- req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
- output = &DeleteTagsOutput{}
- req.Data = output
- return
- }
- // DeleteTags API operation for Amazon Redshift.
- //
- // Deletes a tag or tags from a resource. You must provide the ARN of the resource
- // from which you want to delete the tag or tags.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DeleteTags for usage and error information.
- //
- // Returned Error Codes:
- // * ResourceNotFoundFault
- // The resource could not be found.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- func (c *Redshift) DeleteTags(input *DeleteTagsInput) (*DeleteTagsOutput, error) {
- req, out := c.DeleteTagsRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeClusterParameterGroups = "DescribeClusterParameterGroups"
- // DescribeClusterParameterGroupsRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeClusterParameterGroups operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeClusterParameterGroups for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeClusterParameterGroups method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeClusterParameterGroupsRequest method.
- // req, resp := client.DescribeClusterParameterGroupsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeClusterParameterGroupsRequest(input *DescribeClusterParameterGroupsInput) (req *request.Request, output *DescribeClusterParameterGroupsOutput) {
- op := &request.Operation{
- Name: opDescribeClusterParameterGroups,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"Marker"},
- LimitToken: "MaxRecords",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &DescribeClusterParameterGroupsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeClusterParameterGroupsOutput{}
- req.Data = output
- return
- }
- // DescribeClusterParameterGroups API operation for Amazon Redshift.
- //
- // Returns a list of Amazon Redshift parameter groups, including parameter groups
- // you created and the default parameter group. For each parameter group, the
- // response includes the parameter group name, description, and parameter group
- // family name. You can optionally specify a name to retrieve the description
- // of a specific parameter group.
- //
- // For more information about parameters and parameter groups, go to Amazon
- // Redshift Parameter Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // If you specify both tag keys and tag values in the same request, Amazon Redshift
- // returns all parameter groups that match any combination of the specified
- // keys and values. For example, if you have owner and environment for tag keys,
- // and admin and test for tag values, all parameter groups that have any combination
- // of those values are returned.
- //
- // If both tag keys and values are omitted from the request, parameter groups
- // are returned regardless of whether they have tag keys or values associated
- // with them.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeClusterParameterGroups for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterParameterGroupNotFound
- // The parameter group name does not refer to an existing parameter group.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- func (c *Redshift) DescribeClusterParameterGroups(input *DescribeClusterParameterGroupsInput) (*DescribeClusterParameterGroupsOutput, error) {
- req, out := c.DescribeClusterParameterGroupsRequest(input)
- err := req.Send()
- return out, err
- }
- // DescribeClusterParameterGroupsPages iterates over the pages of a DescribeClusterParameterGroups operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See DescribeClusterParameterGroups method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a DescribeClusterParameterGroups operation.
- // pageNum := 0
- // err := client.DescribeClusterParameterGroupsPages(params,
- // func(page *DescribeClusterParameterGroupsOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *Redshift) DescribeClusterParameterGroupsPages(input *DescribeClusterParameterGroupsInput, fn func(p *DescribeClusterParameterGroupsOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.DescribeClusterParameterGroupsRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*DescribeClusterParameterGroupsOutput), lastPage)
- })
- }
- const opDescribeClusterParameters = "DescribeClusterParameters"
- // DescribeClusterParametersRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeClusterParameters operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeClusterParameters for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeClusterParameters method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeClusterParametersRequest method.
- // req, resp := client.DescribeClusterParametersRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeClusterParametersRequest(input *DescribeClusterParametersInput) (req *request.Request, output *DescribeClusterParametersOutput) {
- op := &request.Operation{
- Name: opDescribeClusterParameters,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"Marker"},
- LimitToken: "MaxRecords",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &DescribeClusterParametersInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeClusterParametersOutput{}
- req.Data = output
- return
- }
- // DescribeClusterParameters API operation for Amazon Redshift.
- //
- // Returns a detailed list of parameters contained within the specified Amazon
- // Redshift parameter group. For each parameter the response includes information
- // such as parameter name, description, data type, value, whether the parameter
- // value is modifiable, and so on.
- //
- // You can specify source filter to retrieve parameters of only specific type.
- // For example, to retrieve parameters that were modified by a user action such
- // as from ModifyClusterParameterGroup, you can specify source equal to user.
- //
- // For more information about parameters and parameter groups, go to Amazon
- // Redshift Parameter Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeClusterParameters for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterParameterGroupNotFound
- // The parameter group name does not refer to an existing parameter group.
- //
- func (c *Redshift) DescribeClusterParameters(input *DescribeClusterParametersInput) (*DescribeClusterParametersOutput, error) {
- req, out := c.DescribeClusterParametersRequest(input)
- err := req.Send()
- return out, err
- }
- // DescribeClusterParametersPages iterates over the pages of a DescribeClusterParameters operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See DescribeClusterParameters method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a DescribeClusterParameters operation.
- // pageNum := 0
- // err := client.DescribeClusterParametersPages(params,
- // func(page *DescribeClusterParametersOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *Redshift) DescribeClusterParametersPages(input *DescribeClusterParametersInput, fn func(p *DescribeClusterParametersOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.DescribeClusterParametersRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*DescribeClusterParametersOutput), lastPage)
- })
- }
- const opDescribeClusterSecurityGroups = "DescribeClusterSecurityGroups"
- // DescribeClusterSecurityGroupsRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeClusterSecurityGroups operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeClusterSecurityGroups for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeClusterSecurityGroups method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeClusterSecurityGroupsRequest method.
- // req, resp := client.DescribeClusterSecurityGroupsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeClusterSecurityGroupsRequest(input *DescribeClusterSecurityGroupsInput) (req *request.Request, output *DescribeClusterSecurityGroupsOutput) {
- op := &request.Operation{
- Name: opDescribeClusterSecurityGroups,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"Marker"},
- LimitToken: "MaxRecords",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &DescribeClusterSecurityGroupsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeClusterSecurityGroupsOutput{}
- req.Data = output
- return
- }
- // DescribeClusterSecurityGroups API operation for Amazon Redshift.
- //
- // Returns information about Amazon Redshift security groups. If the name of
- // a security group is specified, the response will contain only information
- // about only that security group.
- //
- // For information about managing security groups, go to Amazon Redshift Cluster
- // Security Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // If you specify both tag keys and tag values in the same request, Amazon Redshift
- // returns all security groups that match any combination of the specified keys
- // and values. For example, if you have owner and environment for tag keys,
- // and admin and test for tag values, all security groups that have any combination
- // of those values are returned.
- //
- // If both tag keys and values are omitted from the request, security groups
- // are returned regardless of whether they have tag keys or values associated
- // with them.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeClusterSecurityGroups for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterSecurityGroupNotFound
- // The cluster security group name does not refer to an existing cluster security
- // group.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- func (c *Redshift) DescribeClusterSecurityGroups(input *DescribeClusterSecurityGroupsInput) (*DescribeClusterSecurityGroupsOutput, error) {
- req, out := c.DescribeClusterSecurityGroupsRequest(input)
- err := req.Send()
- return out, err
- }
- // DescribeClusterSecurityGroupsPages iterates over the pages of a DescribeClusterSecurityGroups operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See DescribeClusterSecurityGroups method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a DescribeClusterSecurityGroups operation.
- // pageNum := 0
- // err := client.DescribeClusterSecurityGroupsPages(params,
- // func(page *DescribeClusterSecurityGroupsOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *Redshift) DescribeClusterSecurityGroupsPages(input *DescribeClusterSecurityGroupsInput, fn func(p *DescribeClusterSecurityGroupsOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.DescribeClusterSecurityGroupsRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*DescribeClusterSecurityGroupsOutput), lastPage)
- })
- }
- const opDescribeClusterSnapshots = "DescribeClusterSnapshots"
- // DescribeClusterSnapshotsRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeClusterSnapshots operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeClusterSnapshots for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeClusterSnapshots method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeClusterSnapshotsRequest method.
- // req, resp := client.DescribeClusterSnapshotsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeClusterSnapshotsRequest(input *DescribeClusterSnapshotsInput) (req *request.Request, output *DescribeClusterSnapshotsOutput) {
- op := &request.Operation{
- Name: opDescribeClusterSnapshots,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"Marker"},
- LimitToken: "MaxRecords",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &DescribeClusterSnapshotsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeClusterSnapshotsOutput{}
- req.Data = output
- return
- }
- // DescribeClusterSnapshots API operation for Amazon Redshift.
- //
- // Returns one or more snapshot objects, which contain metadata about your cluster
- // snapshots. By default, this operation returns information about all snapshots
- // of all clusters that are owned by you AWS customer account. No information
- // is returned for snapshots owned by inactive AWS customer accounts.
- //
- // If you specify both tag keys and tag values in the same request, Amazon Redshift
- // returns all snapshots that match any combination of the specified keys and
- // values. For example, if you have owner and environment for tag keys, and
- // admin and test for tag values, all snapshots that have any combination of
- // those values are returned. Only snapshots that you own are returned in the
- // response; shared snapshots are not returned with the tag key and tag value
- // request parameters.
- //
- // If both tag keys and values are omitted from the request, snapshots are returned
- // regardless of whether they have tag keys or values associated with them.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeClusterSnapshots for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterSnapshotNotFound
- // The snapshot identifier does not refer to an existing cluster snapshot.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- func (c *Redshift) DescribeClusterSnapshots(input *DescribeClusterSnapshotsInput) (*DescribeClusterSnapshotsOutput, error) {
- req, out := c.DescribeClusterSnapshotsRequest(input)
- err := req.Send()
- return out, err
- }
- // DescribeClusterSnapshotsPages iterates over the pages of a DescribeClusterSnapshots operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See DescribeClusterSnapshots method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a DescribeClusterSnapshots operation.
- // pageNum := 0
- // err := client.DescribeClusterSnapshotsPages(params,
- // func(page *DescribeClusterSnapshotsOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *Redshift) DescribeClusterSnapshotsPages(input *DescribeClusterSnapshotsInput, fn func(p *DescribeClusterSnapshotsOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.DescribeClusterSnapshotsRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*DescribeClusterSnapshotsOutput), lastPage)
- })
- }
- const opDescribeClusterSubnetGroups = "DescribeClusterSubnetGroups"
- // DescribeClusterSubnetGroupsRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeClusterSubnetGroups operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeClusterSubnetGroups for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeClusterSubnetGroups method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeClusterSubnetGroupsRequest method.
- // req, resp := client.DescribeClusterSubnetGroupsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeClusterSubnetGroupsRequest(input *DescribeClusterSubnetGroupsInput) (req *request.Request, output *DescribeClusterSubnetGroupsOutput) {
- op := &request.Operation{
- Name: opDescribeClusterSubnetGroups,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"Marker"},
- LimitToken: "MaxRecords",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &DescribeClusterSubnetGroupsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeClusterSubnetGroupsOutput{}
- req.Data = output
- return
- }
- // DescribeClusterSubnetGroups API operation for Amazon Redshift.
- //
- // Returns one or more cluster subnet group objects, which contain metadata
- // about your cluster subnet groups. By default, this operation returns information
- // about all cluster subnet groups that are defined in you AWS account.
- //
- // If you specify both tag keys and tag values in the same request, Amazon Redshift
- // returns all subnet groups that match any combination of the specified keys
- // and values. For example, if you have owner and environment for tag keys,
- // and admin and test for tag values, all subnet groups that have any combination
- // of those values are returned.
- //
- // If both tag keys and values are omitted from the request, subnet groups are
- // returned regardless of whether they have tag keys or values associated with
- // them.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeClusterSubnetGroups for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterSubnetGroupNotFoundFault
- // The cluster subnet group name does not refer to an existing cluster subnet
- // group.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- func (c *Redshift) DescribeClusterSubnetGroups(input *DescribeClusterSubnetGroupsInput) (*DescribeClusterSubnetGroupsOutput, error) {
- req, out := c.DescribeClusterSubnetGroupsRequest(input)
- err := req.Send()
- return out, err
- }
- // DescribeClusterSubnetGroupsPages iterates over the pages of a DescribeClusterSubnetGroups operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See DescribeClusterSubnetGroups method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a DescribeClusterSubnetGroups operation.
- // pageNum := 0
- // err := client.DescribeClusterSubnetGroupsPages(params,
- // func(page *DescribeClusterSubnetGroupsOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *Redshift) DescribeClusterSubnetGroupsPages(input *DescribeClusterSubnetGroupsInput, fn func(p *DescribeClusterSubnetGroupsOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.DescribeClusterSubnetGroupsRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*DescribeClusterSubnetGroupsOutput), lastPage)
- })
- }
- const opDescribeClusterVersions = "DescribeClusterVersions"
- // DescribeClusterVersionsRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeClusterVersions operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeClusterVersions for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeClusterVersions method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeClusterVersionsRequest method.
- // req, resp := client.DescribeClusterVersionsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeClusterVersionsRequest(input *DescribeClusterVersionsInput) (req *request.Request, output *DescribeClusterVersionsOutput) {
- op := &request.Operation{
- Name: opDescribeClusterVersions,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"Marker"},
- LimitToken: "MaxRecords",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &DescribeClusterVersionsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeClusterVersionsOutput{}
- req.Data = output
- return
- }
- // DescribeClusterVersions API operation for Amazon Redshift.
- //
- // Returns descriptions of the available Amazon Redshift cluster versions. You
- // can call this operation even before creating any clusters to learn more about
- // the Amazon Redshift versions. For more information about managing clusters,
- // go to Amazon Redshift Clusters (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeClusterVersions for usage and error information.
- func (c *Redshift) DescribeClusterVersions(input *DescribeClusterVersionsInput) (*DescribeClusterVersionsOutput, error) {
- req, out := c.DescribeClusterVersionsRequest(input)
- err := req.Send()
- return out, err
- }
- // DescribeClusterVersionsPages iterates over the pages of a DescribeClusterVersions operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See DescribeClusterVersions method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a DescribeClusterVersions operation.
- // pageNum := 0
- // err := client.DescribeClusterVersionsPages(params,
- // func(page *DescribeClusterVersionsOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *Redshift) DescribeClusterVersionsPages(input *DescribeClusterVersionsInput, fn func(p *DescribeClusterVersionsOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.DescribeClusterVersionsRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*DescribeClusterVersionsOutput), lastPage)
- })
- }
- const opDescribeClusters = "DescribeClusters"
- // DescribeClustersRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeClusters operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeClusters for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeClusters method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeClustersRequest method.
- // req, resp := client.DescribeClustersRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeClustersRequest(input *DescribeClustersInput) (req *request.Request, output *DescribeClustersOutput) {
- op := &request.Operation{
- Name: opDescribeClusters,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"Marker"},
- LimitToken: "MaxRecords",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &DescribeClustersInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeClustersOutput{}
- req.Data = output
- return
- }
- // DescribeClusters API operation for Amazon Redshift.
- //
- // Returns properties of provisioned clusters including general cluster properties,
- // cluster database properties, maintenance and backup properties, and security
- // and access properties. This operation supports pagination. For more information
- // about managing clusters, go to Amazon Redshift Clusters (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // If you specify both tag keys and tag values in the same request, Amazon Redshift
- // returns all clusters that match any combination of the specified keys and
- // values. For example, if you have owner and environment for tag keys, and
- // admin and test for tag values, all clusters that have any combination of
- // those values are returned.
- //
- // If both tag keys and values are omitted from the request, clusters are returned
- // regardless of whether they have tag keys or values associated with them.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeClusters for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterNotFound
- // The ClusterIdentifier parameter does not refer to an existing cluster.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- func (c *Redshift) DescribeClusters(input *DescribeClustersInput) (*DescribeClustersOutput, error) {
- req, out := c.DescribeClustersRequest(input)
- err := req.Send()
- return out, err
- }
- // DescribeClustersPages iterates over the pages of a DescribeClusters operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See DescribeClusters method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a DescribeClusters operation.
- // pageNum := 0
- // err := client.DescribeClustersPages(params,
- // func(page *DescribeClustersOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *Redshift) DescribeClustersPages(input *DescribeClustersInput, fn func(p *DescribeClustersOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.DescribeClustersRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*DescribeClustersOutput), lastPage)
- })
- }
- const opDescribeDefaultClusterParameters = "DescribeDefaultClusterParameters"
- // DescribeDefaultClusterParametersRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeDefaultClusterParameters operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeDefaultClusterParameters for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeDefaultClusterParameters method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeDefaultClusterParametersRequest method.
- // req, resp := client.DescribeDefaultClusterParametersRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeDefaultClusterParametersRequest(input *DescribeDefaultClusterParametersInput) (req *request.Request, output *DescribeDefaultClusterParametersOutput) {
- op := &request.Operation{
- Name: opDescribeDefaultClusterParameters,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"DefaultClusterParameters.Marker"},
- LimitToken: "MaxRecords",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &DescribeDefaultClusterParametersInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeDefaultClusterParametersOutput{}
- req.Data = output
- return
- }
- // DescribeDefaultClusterParameters API operation for Amazon Redshift.
- //
- // Returns a list of parameter settings for the specified parameter group family.
- //
- // For more information about parameters and parameter groups, go to Amazon
- // Redshift Parameter Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeDefaultClusterParameters for usage and error information.
- func (c *Redshift) DescribeDefaultClusterParameters(input *DescribeDefaultClusterParametersInput) (*DescribeDefaultClusterParametersOutput, error) {
- req, out := c.DescribeDefaultClusterParametersRequest(input)
- err := req.Send()
- return out, err
- }
- // DescribeDefaultClusterParametersPages iterates over the pages of a DescribeDefaultClusterParameters operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See DescribeDefaultClusterParameters method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a DescribeDefaultClusterParameters operation.
- // pageNum := 0
- // err := client.DescribeDefaultClusterParametersPages(params,
- // func(page *DescribeDefaultClusterParametersOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *Redshift) DescribeDefaultClusterParametersPages(input *DescribeDefaultClusterParametersInput, fn func(p *DescribeDefaultClusterParametersOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.DescribeDefaultClusterParametersRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*DescribeDefaultClusterParametersOutput), lastPage)
- })
- }
- const opDescribeEventCategories = "DescribeEventCategories"
- // DescribeEventCategoriesRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeEventCategories operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeEventCategories for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeEventCategories method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeEventCategoriesRequest method.
- // req, resp := client.DescribeEventCategoriesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeEventCategoriesRequest(input *DescribeEventCategoriesInput) (req *request.Request, output *DescribeEventCategoriesOutput) {
- op := &request.Operation{
- Name: opDescribeEventCategories,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeEventCategoriesInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeEventCategoriesOutput{}
- req.Data = output
- return
- }
- // DescribeEventCategories API operation for Amazon Redshift.
- //
- // Displays a list of event categories for all event source types, or for a
- // specified source type. For a list of the event categories and source types,
- // go to Amazon Redshift Event Notifications (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-event-notifications.html).
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeEventCategories for usage and error information.
- func (c *Redshift) DescribeEventCategories(input *DescribeEventCategoriesInput) (*DescribeEventCategoriesOutput, error) {
- req, out := c.DescribeEventCategoriesRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeEventSubscriptions = "DescribeEventSubscriptions"
- // DescribeEventSubscriptionsRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeEventSubscriptions operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeEventSubscriptions for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeEventSubscriptions method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeEventSubscriptionsRequest method.
- // req, resp := client.DescribeEventSubscriptionsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeEventSubscriptionsRequest(input *DescribeEventSubscriptionsInput) (req *request.Request, output *DescribeEventSubscriptionsOutput) {
- op := &request.Operation{
- Name: opDescribeEventSubscriptions,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"Marker"},
- LimitToken: "MaxRecords",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &DescribeEventSubscriptionsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeEventSubscriptionsOutput{}
- req.Data = output
- return
- }
- // DescribeEventSubscriptions API operation for Amazon Redshift.
- //
- // Lists descriptions of all the Amazon Redshift event notifications subscription
- // for a customer account. If you specify a subscription name, lists the description
- // for that subscription.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeEventSubscriptions for usage and error information.
- //
- // Returned Error Codes:
- // * SubscriptionNotFound
- // An Amazon Redshift event notification subscription with the specified name
- // does not exist.
- //
- func (c *Redshift) DescribeEventSubscriptions(input *DescribeEventSubscriptionsInput) (*DescribeEventSubscriptionsOutput, error) {
- req, out := c.DescribeEventSubscriptionsRequest(input)
- err := req.Send()
- return out, err
- }
- // DescribeEventSubscriptionsPages iterates over the pages of a DescribeEventSubscriptions operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See DescribeEventSubscriptions method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a DescribeEventSubscriptions operation.
- // pageNum := 0
- // err := client.DescribeEventSubscriptionsPages(params,
- // func(page *DescribeEventSubscriptionsOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *Redshift) DescribeEventSubscriptionsPages(input *DescribeEventSubscriptionsInput, fn func(p *DescribeEventSubscriptionsOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.DescribeEventSubscriptionsRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*DescribeEventSubscriptionsOutput), lastPage)
- })
- }
- const opDescribeEvents = "DescribeEvents"
- // DescribeEventsRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeEvents operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeEvents for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeEvents method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeEventsRequest method.
- // req, resp := client.DescribeEventsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeEventsRequest(input *DescribeEventsInput) (req *request.Request, output *DescribeEventsOutput) {
- op := &request.Operation{
- Name: opDescribeEvents,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"Marker"},
- LimitToken: "MaxRecords",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &DescribeEventsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeEventsOutput{}
- req.Data = output
- return
- }
- // DescribeEvents API operation for Amazon Redshift.
- //
- // Returns events related to clusters, security groups, snapshots, and parameter
- // groups for the past 14 days. Events specific to a particular cluster, security
- // group, snapshot or parameter group can be obtained by providing the name
- // as a parameter. By default, the past hour of events are returned.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeEvents for usage and error information.
- func (c *Redshift) DescribeEvents(input *DescribeEventsInput) (*DescribeEventsOutput, error) {
- req, out := c.DescribeEventsRequest(input)
- err := req.Send()
- return out, err
- }
- // DescribeEventsPages iterates over the pages of a DescribeEvents operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See DescribeEvents method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a DescribeEvents operation.
- // pageNum := 0
- // err := client.DescribeEventsPages(params,
- // func(page *DescribeEventsOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *Redshift) DescribeEventsPages(input *DescribeEventsInput, fn func(p *DescribeEventsOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.DescribeEventsRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*DescribeEventsOutput), lastPage)
- })
- }
- const opDescribeHsmClientCertificates = "DescribeHsmClientCertificates"
- // DescribeHsmClientCertificatesRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeHsmClientCertificates operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeHsmClientCertificates for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeHsmClientCertificates method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeHsmClientCertificatesRequest method.
- // req, resp := client.DescribeHsmClientCertificatesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeHsmClientCertificatesRequest(input *DescribeHsmClientCertificatesInput) (req *request.Request, output *DescribeHsmClientCertificatesOutput) {
- op := &request.Operation{
- Name: opDescribeHsmClientCertificates,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"Marker"},
- LimitToken: "MaxRecords",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &DescribeHsmClientCertificatesInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeHsmClientCertificatesOutput{}
- req.Data = output
- return
- }
- // DescribeHsmClientCertificates API operation for Amazon Redshift.
- //
- // Returns information about the specified HSM client certificate. If no certificate
- // ID is specified, returns information about all the HSM certificates owned
- // by your AWS customer account.
- //
- // If you specify both tag keys and tag values in the same request, Amazon Redshift
- // returns all HSM client certificates that match any combination of the specified
- // keys and values. For example, if you have owner and environment for tag keys,
- // and admin and test for tag values, all HSM client certificates that have
- // any combination of those values are returned.
- //
- // If both tag keys and values are omitted from the request, HSM client certificates
- // are returned regardless of whether they have tag keys or values associated
- // with them.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeHsmClientCertificates for usage and error information.
- //
- // Returned Error Codes:
- // * HsmClientCertificateNotFoundFault
- // There is no Amazon Redshift HSM client certificate with the specified identifier.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- func (c *Redshift) DescribeHsmClientCertificates(input *DescribeHsmClientCertificatesInput) (*DescribeHsmClientCertificatesOutput, error) {
- req, out := c.DescribeHsmClientCertificatesRequest(input)
- err := req.Send()
- return out, err
- }
- // DescribeHsmClientCertificatesPages iterates over the pages of a DescribeHsmClientCertificates operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See DescribeHsmClientCertificates method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a DescribeHsmClientCertificates operation.
- // pageNum := 0
- // err := client.DescribeHsmClientCertificatesPages(params,
- // func(page *DescribeHsmClientCertificatesOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *Redshift) DescribeHsmClientCertificatesPages(input *DescribeHsmClientCertificatesInput, fn func(p *DescribeHsmClientCertificatesOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.DescribeHsmClientCertificatesRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*DescribeHsmClientCertificatesOutput), lastPage)
- })
- }
- const opDescribeHsmConfigurations = "DescribeHsmConfigurations"
- // DescribeHsmConfigurationsRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeHsmConfigurations operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeHsmConfigurations for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeHsmConfigurations method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeHsmConfigurationsRequest method.
- // req, resp := client.DescribeHsmConfigurationsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeHsmConfigurationsRequest(input *DescribeHsmConfigurationsInput) (req *request.Request, output *DescribeHsmConfigurationsOutput) {
- op := &request.Operation{
- Name: opDescribeHsmConfigurations,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"Marker"},
- LimitToken: "MaxRecords",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &DescribeHsmConfigurationsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeHsmConfigurationsOutput{}
- req.Data = output
- return
- }
- // DescribeHsmConfigurations API operation for Amazon Redshift.
- //
- // Returns information about the specified Amazon Redshift HSM configuration.
- // If no configuration ID is specified, returns information about all the HSM
- // configurations owned by your AWS customer account.
- //
- // If you specify both tag keys and tag values in the same request, Amazon Redshift
- // returns all HSM connections that match any combination of the specified keys
- // and values. For example, if you have owner and environment for tag keys,
- // and admin and test for tag values, all HSM connections that have any combination
- // of those values are returned.
- //
- // If both tag keys and values are omitted from the request, HSM connections
- // are returned regardless of whether they have tag keys or values associated
- // with them.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeHsmConfigurations for usage and error information.
- //
- // Returned Error Codes:
- // * HsmConfigurationNotFoundFault
- // There is no Amazon Redshift HSM configuration with the specified identifier.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- func (c *Redshift) DescribeHsmConfigurations(input *DescribeHsmConfigurationsInput) (*DescribeHsmConfigurationsOutput, error) {
- req, out := c.DescribeHsmConfigurationsRequest(input)
- err := req.Send()
- return out, err
- }
- // DescribeHsmConfigurationsPages iterates over the pages of a DescribeHsmConfigurations operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See DescribeHsmConfigurations method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a DescribeHsmConfigurations operation.
- // pageNum := 0
- // err := client.DescribeHsmConfigurationsPages(params,
- // func(page *DescribeHsmConfigurationsOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *Redshift) DescribeHsmConfigurationsPages(input *DescribeHsmConfigurationsInput, fn func(p *DescribeHsmConfigurationsOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.DescribeHsmConfigurationsRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*DescribeHsmConfigurationsOutput), lastPage)
- })
- }
- const opDescribeLoggingStatus = "DescribeLoggingStatus"
- // DescribeLoggingStatusRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeLoggingStatus operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeLoggingStatus for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeLoggingStatus method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeLoggingStatusRequest method.
- // req, resp := client.DescribeLoggingStatusRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeLoggingStatusRequest(input *DescribeLoggingStatusInput) (req *request.Request, output *LoggingStatus) {
- op := &request.Operation{
- Name: opDescribeLoggingStatus,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeLoggingStatusInput{}
- }
- req = c.newRequest(op, input, output)
- output = &LoggingStatus{}
- req.Data = output
- return
- }
- // DescribeLoggingStatus API operation for Amazon Redshift.
- //
- // Describes whether information, such as queries and connection attempts, is
- // being logged for the specified Amazon Redshift cluster.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeLoggingStatus for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterNotFound
- // The ClusterIdentifier parameter does not refer to an existing cluster.
- //
- func (c *Redshift) DescribeLoggingStatus(input *DescribeLoggingStatusInput) (*LoggingStatus, error) {
- req, out := c.DescribeLoggingStatusRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeOrderableClusterOptions = "DescribeOrderableClusterOptions"
- // DescribeOrderableClusterOptionsRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeOrderableClusterOptions operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeOrderableClusterOptions for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeOrderableClusterOptions method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeOrderableClusterOptionsRequest method.
- // req, resp := client.DescribeOrderableClusterOptionsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeOrderableClusterOptionsRequest(input *DescribeOrderableClusterOptionsInput) (req *request.Request, output *DescribeOrderableClusterOptionsOutput) {
- op := &request.Operation{
- Name: opDescribeOrderableClusterOptions,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"Marker"},
- LimitToken: "MaxRecords",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &DescribeOrderableClusterOptionsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeOrderableClusterOptionsOutput{}
- req.Data = output
- return
- }
- // DescribeOrderableClusterOptions API operation for Amazon Redshift.
- //
- // Returns a list of orderable cluster options. Before you create a new cluster
- // you can use this operation to find what options are available, such as the
- // EC2 Availability Zones (AZ) in the specific AWS region that you can specify,
- // and the node types you can request. The node types differ by available storage,
- // memory, CPU and price. With the cost involved you might want to obtain a
- // list of cluster options in the specific region and specify values when creating
- // a cluster. For more information about managing clusters, go to Amazon Redshift
- // Clusters (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeOrderableClusterOptions for usage and error information.
- func (c *Redshift) DescribeOrderableClusterOptions(input *DescribeOrderableClusterOptionsInput) (*DescribeOrderableClusterOptionsOutput, error) {
- req, out := c.DescribeOrderableClusterOptionsRequest(input)
- err := req.Send()
- return out, err
- }
- // DescribeOrderableClusterOptionsPages iterates over the pages of a DescribeOrderableClusterOptions operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See DescribeOrderableClusterOptions method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a DescribeOrderableClusterOptions operation.
- // pageNum := 0
- // err := client.DescribeOrderableClusterOptionsPages(params,
- // func(page *DescribeOrderableClusterOptionsOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *Redshift) DescribeOrderableClusterOptionsPages(input *DescribeOrderableClusterOptionsInput, fn func(p *DescribeOrderableClusterOptionsOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.DescribeOrderableClusterOptionsRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*DescribeOrderableClusterOptionsOutput), lastPage)
- })
- }
- const opDescribeReservedNodeOfferings = "DescribeReservedNodeOfferings"
- // DescribeReservedNodeOfferingsRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeReservedNodeOfferings operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeReservedNodeOfferings for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeReservedNodeOfferings method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeReservedNodeOfferingsRequest method.
- // req, resp := client.DescribeReservedNodeOfferingsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeReservedNodeOfferingsRequest(input *DescribeReservedNodeOfferingsInput) (req *request.Request, output *DescribeReservedNodeOfferingsOutput) {
- op := &request.Operation{
- Name: opDescribeReservedNodeOfferings,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"Marker"},
- LimitToken: "MaxRecords",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &DescribeReservedNodeOfferingsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeReservedNodeOfferingsOutput{}
- req.Data = output
- return
- }
- // DescribeReservedNodeOfferings API operation for Amazon Redshift.
- //
- // Returns a list of the available reserved node offerings by Amazon Redshift
- // with their descriptions including the node type, the fixed and recurring
- // costs of reserving the node and duration the node will be reserved for you.
- // These descriptions help you determine which reserve node offering you want
- // to purchase. You then use the unique offering ID in you call to PurchaseReservedNodeOffering
- // to reserve one or more nodes for your Amazon Redshift cluster.
- //
- // For more information about reserved node offerings, go to Purchasing Reserved
- // Nodes (http://docs.aws.amazon.com/redshift/latest/mgmt/purchase-reserved-node-instance.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeReservedNodeOfferings for usage and error information.
- //
- // Returned Error Codes:
- // * ReservedNodeOfferingNotFound
- // Specified offering does not exist.
- //
- // * UnsupportedOperation
- // The requested operation isn't supported.
- //
- func (c *Redshift) DescribeReservedNodeOfferings(input *DescribeReservedNodeOfferingsInput) (*DescribeReservedNodeOfferingsOutput, error) {
- req, out := c.DescribeReservedNodeOfferingsRequest(input)
- err := req.Send()
- return out, err
- }
- // DescribeReservedNodeOfferingsPages iterates over the pages of a DescribeReservedNodeOfferings operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See DescribeReservedNodeOfferings method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a DescribeReservedNodeOfferings operation.
- // pageNum := 0
- // err := client.DescribeReservedNodeOfferingsPages(params,
- // func(page *DescribeReservedNodeOfferingsOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *Redshift) DescribeReservedNodeOfferingsPages(input *DescribeReservedNodeOfferingsInput, fn func(p *DescribeReservedNodeOfferingsOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.DescribeReservedNodeOfferingsRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*DescribeReservedNodeOfferingsOutput), lastPage)
- })
- }
- const opDescribeReservedNodes = "DescribeReservedNodes"
- // DescribeReservedNodesRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeReservedNodes operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeReservedNodes for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeReservedNodes method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeReservedNodesRequest method.
- // req, resp := client.DescribeReservedNodesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeReservedNodesRequest(input *DescribeReservedNodesInput) (req *request.Request, output *DescribeReservedNodesOutput) {
- op := &request.Operation{
- Name: opDescribeReservedNodes,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"Marker"},
- LimitToken: "MaxRecords",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &DescribeReservedNodesInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeReservedNodesOutput{}
- req.Data = output
- return
- }
- // DescribeReservedNodes API operation for Amazon Redshift.
- //
- // Returns the descriptions of the reserved nodes.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeReservedNodes for usage and error information.
- //
- // Returned Error Codes:
- // * ReservedNodeNotFound
- // The specified reserved compute node not found.
- //
- func (c *Redshift) DescribeReservedNodes(input *DescribeReservedNodesInput) (*DescribeReservedNodesOutput, error) {
- req, out := c.DescribeReservedNodesRequest(input)
- err := req.Send()
- return out, err
- }
- // DescribeReservedNodesPages iterates over the pages of a DescribeReservedNodes operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See DescribeReservedNodes method for more information on how to use this operation.
- //
- // Note: This operation can generate multiple requests to a service.
- //
- // // Example iterating over at most 3 pages of a DescribeReservedNodes operation.
- // pageNum := 0
- // err := client.DescribeReservedNodesPages(params,
- // func(page *DescribeReservedNodesOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *Redshift) DescribeReservedNodesPages(input *DescribeReservedNodesInput, fn func(p *DescribeReservedNodesOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.DescribeReservedNodesRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*DescribeReservedNodesOutput), lastPage)
- })
- }
- const opDescribeResize = "DescribeResize"
- // DescribeResizeRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeResize operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeResize for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeResize method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeResizeRequest method.
- // req, resp := client.DescribeResizeRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeResizeRequest(input *DescribeResizeInput) (req *request.Request, output *DescribeResizeOutput) {
- op := &request.Operation{
- Name: opDescribeResize,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeResizeInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeResizeOutput{}
- req.Data = output
- return
- }
- // DescribeResize API operation for Amazon Redshift.
- //
- // Returns information about the last resize operation for the specified cluster.
- // If no resize operation has ever been initiated for the specified cluster,
- // a HTTP 404 error is returned. If a resize operation was initiated and completed,
- // the status of the resize remains as SUCCEEDED until the next resize.
- //
- // A resize operation can be requested using ModifyCluster and specifying a
- // different number or type of nodes for the cluster.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeResize for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterNotFound
- // The ClusterIdentifier parameter does not refer to an existing cluster.
- //
- // * ResizeNotFound
- // A resize operation for the specified cluster is not found.
- //
- func (c *Redshift) DescribeResize(input *DescribeResizeInput) (*DescribeResizeOutput, error) {
- req, out := c.DescribeResizeRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeSnapshotCopyGrants = "DescribeSnapshotCopyGrants"
- // DescribeSnapshotCopyGrantsRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeSnapshotCopyGrants operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeSnapshotCopyGrants for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeSnapshotCopyGrants method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeSnapshotCopyGrantsRequest method.
- // req, resp := client.DescribeSnapshotCopyGrantsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeSnapshotCopyGrantsRequest(input *DescribeSnapshotCopyGrantsInput) (req *request.Request, output *DescribeSnapshotCopyGrantsOutput) {
- op := &request.Operation{
- Name: opDescribeSnapshotCopyGrants,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeSnapshotCopyGrantsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeSnapshotCopyGrantsOutput{}
- req.Data = output
- return
- }
- // DescribeSnapshotCopyGrants API operation for Amazon Redshift.
- //
- // Returns a list of snapshot copy grants owned by the AWS account in the destination
- // region.
- //
- // For more information about managing snapshot copy grants, go to Amazon Redshift
- // Database Encryption (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-db-encryption.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeSnapshotCopyGrants for usage and error information.
- //
- // Returned Error Codes:
- // * SnapshotCopyGrantNotFoundFault
- // The specified snapshot copy grant can't be found. Make sure that the name
- // is typed correctly and that the grant exists in the destination region.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- func (c *Redshift) DescribeSnapshotCopyGrants(input *DescribeSnapshotCopyGrantsInput) (*DescribeSnapshotCopyGrantsOutput, error) {
- req, out := c.DescribeSnapshotCopyGrantsRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeTableRestoreStatus = "DescribeTableRestoreStatus"
- // DescribeTableRestoreStatusRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeTableRestoreStatus operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeTableRestoreStatus for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeTableRestoreStatus method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeTableRestoreStatusRequest method.
- // req, resp := client.DescribeTableRestoreStatusRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeTableRestoreStatusRequest(input *DescribeTableRestoreStatusInput) (req *request.Request, output *DescribeTableRestoreStatusOutput) {
- op := &request.Operation{
- Name: opDescribeTableRestoreStatus,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeTableRestoreStatusInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeTableRestoreStatusOutput{}
- req.Data = output
- return
- }
- // DescribeTableRestoreStatus API operation for Amazon Redshift.
- //
- // Lists the status of one or more table restore requests made using the RestoreTableFromClusterSnapshot
- // API action. If you don't specify a value for the TableRestoreRequestId parameter,
- // then DescribeTableRestoreStatus returns the status of all table restore requests
- // ordered by the date and time of the request in ascending order. Otherwise
- // DescribeTableRestoreStatus returns the status of the table specified by TableRestoreRequestId.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeTableRestoreStatus for usage and error information.
- //
- // Returned Error Codes:
- // * TableRestoreNotFoundFault
- // The specified TableRestoreRequestId value was not found.
- //
- // * ClusterNotFound
- // The ClusterIdentifier parameter does not refer to an existing cluster.
- //
- func (c *Redshift) DescribeTableRestoreStatus(input *DescribeTableRestoreStatusInput) (*DescribeTableRestoreStatusOutput, error) {
- req, out := c.DescribeTableRestoreStatusRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeTags = "DescribeTags"
- // DescribeTagsRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeTags operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeTags for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DescribeTags method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DescribeTagsRequest method.
- // req, resp := client.DescribeTagsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DescribeTagsRequest(input *DescribeTagsInput) (req *request.Request, output *DescribeTagsOutput) {
- op := &request.Operation{
- Name: opDescribeTags,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeTagsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeTagsOutput{}
- req.Data = output
- return
- }
- // DescribeTags API operation for Amazon Redshift.
- //
- // Returns a list of tags. You can return tags from a specific resource by specifying
- // an ARN, or you can return all tags for a given type of resource, such as
- // clusters, snapshots, and so on.
- //
- // The following are limitations for DescribeTags:
- //
- // * You cannot specify an ARN and a resource-type value together in the
- // same request.
- //
- // * You cannot use the MaxRecords and Marker parameters together with the
- // ARN parameter.
- //
- // * The MaxRecords parameter can be a range from 10 to 50 results to return
- // in a request.
- //
- // If you specify both tag keys and tag values in the same request, Amazon Redshift
- // returns all resources that match any combination of the specified keys and
- // values. For example, if you have owner and environment for tag keys, and
- // admin and test for tag values, all resources that have any combination of
- // those values are returned.
- //
- // If both tag keys and values are omitted from the request, resources are returned
- // regardless of whether they have tag keys or values associated with them.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DescribeTags for usage and error information.
- //
- // Returned Error Codes:
- // * ResourceNotFoundFault
- // The resource could not be found.
- //
- // * InvalidTagFault
- // The tag is invalid.
- //
- func (c *Redshift) DescribeTags(input *DescribeTagsInput) (*DescribeTagsOutput, error) {
- req, out := c.DescribeTagsRequest(input)
- err := req.Send()
- return out, err
- }
- const opDisableLogging = "DisableLogging"
- // DisableLoggingRequest generates a "aws/request.Request" representing the
- // client's request for the DisableLogging operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DisableLogging for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DisableLogging method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DisableLoggingRequest method.
- // req, resp := client.DisableLoggingRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DisableLoggingRequest(input *DisableLoggingInput) (req *request.Request, output *LoggingStatus) {
- op := &request.Operation{
- Name: opDisableLogging,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DisableLoggingInput{}
- }
- req = c.newRequest(op, input, output)
- output = &LoggingStatus{}
- req.Data = output
- return
- }
- // DisableLogging API operation for Amazon Redshift.
- //
- // Stops logging information, such as queries and connection attempts, for the
- // specified Amazon Redshift cluster.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DisableLogging for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterNotFound
- // The ClusterIdentifier parameter does not refer to an existing cluster.
- //
- func (c *Redshift) DisableLogging(input *DisableLoggingInput) (*LoggingStatus, error) {
- req, out := c.DisableLoggingRequest(input)
- err := req.Send()
- return out, err
- }
- const opDisableSnapshotCopy = "DisableSnapshotCopy"
- // DisableSnapshotCopyRequest generates a "aws/request.Request" representing the
- // client's request for the DisableSnapshotCopy operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DisableSnapshotCopy for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the DisableSnapshotCopy method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the DisableSnapshotCopyRequest method.
- // req, resp := client.DisableSnapshotCopyRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) DisableSnapshotCopyRequest(input *DisableSnapshotCopyInput) (req *request.Request, output *DisableSnapshotCopyOutput) {
- op := &request.Operation{
- Name: opDisableSnapshotCopy,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DisableSnapshotCopyInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DisableSnapshotCopyOutput{}
- req.Data = output
- return
- }
- // DisableSnapshotCopy API operation for Amazon Redshift.
- //
- // Disables the automatic copying of snapshots from one region to another region
- // for a specified cluster.
- //
- // If your cluster and its snapshots are encrypted using a customer master key
- // (CMK) from AWS KMS, use DeleteSnapshotCopyGrant to delete the grant that
- // grants Amazon Redshift permission to the CMK in the destination region.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation DisableSnapshotCopy for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterNotFound
- // The ClusterIdentifier parameter does not refer to an existing cluster.
- //
- // * SnapshotCopyAlreadyDisabledFault
- // The cluster already has cross-region snapshot copy disabled.
- //
- // * InvalidClusterState
- // The specified cluster is not in the available state.
- //
- // * UnauthorizedOperation
- // Your account is not authorized to perform the requested operation.
- //
- func (c *Redshift) DisableSnapshotCopy(input *DisableSnapshotCopyInput) (*DisableSnapshotCopyOutput, error) {
- req, out := c.DisableSnapshotCopyRequest(input)
- err := req.Send()
- return out, err
- }
- const opEnableLogging = "EnableLogging"
- // EnableLoggingRequest generates a "aws/request.Request" representing the
- // client's request for the EnableLogging operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See EnableLogging for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the EnableLogging method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the EnableLoggingRequest method.
- // req, resp := client.EnableLoggingRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) EnableLoggingRequest(input *EnableLoggingInput) (req *request.Request, output *LoggingStatus) {
- op := &request.Operation{
- Name: opEnableLogging,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &EnableLoggingInput{}
- }
- req = c.newRequest(op, input, output)
- output = &LoggingStatus{}
- req.Data = output
- return
- }
- // EnableLogging API operation for Amazon Redshift.
- //
- // Starts logging information, such as queries and connection attempts, for
- // the specified Amazon Redshift cluster.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation EnableLogging for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterNotFound
- // The ClusterIdentifier parameter does not refer to an existing cluster.
- //
- // * BucketNotFoundFault
- // Could not find the specified S3 bucket.
- //
- // * InsufficientS3BucketPolicyFault
- // The cluster does not have read bucket or put object permissions on the S3
- // bucket specified when enabling logging.
- //
- // * InvalidS3KeyPrefixFault
- // The string specified for the logging S3 key prefix does not comply with the
- // documented constraints.
- //
- // * InvalidS3BucketNameFault
- // The S3 bucket name is invalid. For more information about naming rules, go
- // to Bucket Restrictions and Limitations (http://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html)
- // in the Amazon Simple Storage Service (S3) Developer Guide.
- //
- func (c *Redshift) EnableLogging(input *EnableLoggingInput) (*LoggingStatus, error) {
- req, out := c.EnableLoggingRequest(input)
- err := req.Send()
- return out, err
- }
- const opEnableSnapshotCopy = "EnableSnapshotCopy"
- // EnableSnapshotCopyRequest generates a "aws/request.Request" representing the
- // client's request for the EnableSnapshotCopy operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See EnableSnapshotCopy for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the EnableSnapshotCopy method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the EnableSnapshotCopyRequest method.
- // req, resp := client.EnableSnapshotCopyRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) EnableSnapshotCopyRequest(input *EnableSnapshotCopyInput) (req *request.Request, output *EnableSnapshotCopyOutput) {
- op := &request.Operation{
- Name: opEnableSnapshotCopy,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &EnableSnapshotCopyInput{}
- }
- req = c.newRequest(op, input, output)
- output = &EnableSnapshotCopyOutput{}
- req.Data = output
- return
- }
- // EnableSnapshotCopy API operation for Amazon Redshift.
- //
- // Enables the automatic copy of snapshots from one region to another region
- // for a specified cluster.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation EnableSnapshotCopy for usage and error information.
- //
- // Returned Error Codes:
- // * IncompatibleOrderableOptions
- // The specified options are incompatible.
- //
- // * InvalidClusterState
- // The specified cluster is not in the available state.
- //
- // * ClusterNotFound
- // The ClusterIdentifier parameter does not refer to an existing cluster.
- //
- // * CopyToRegionDisabledFault
- // Cross-region snapshot copy was temporarily disabled. Try your request again.
- //
- // * SnapshotCopyAlreadyEnabledFault
- // The cluster already has cross-region snapshot copy enabled.
- //
- // * UnknownSnapshotCopyRegionFault
- // The specified region is incorrect or does not exist.
- //
- // * UnauthorizedOperation
- // Your account is not authorized to perform the requested operation.
- //
- // * SnapshotCopyGrantNotFoundFault
- // The specified snapshot copy grant can't be found. Make sure that the name
- // is typed correctly and that the grant exists in the destination region.
- //
- // * LimitExceededFault
- // The encryption key has exceeded its grant limit in AWS KMS.
- //
- // * DependentServiceRequestThrottlingFault
- // The request cannot be completed because a dependent service is throttling
- // requests made by Amazon Redshift on your behalf. Wait and retry the request.
- //
- func (c *Redshift) EnableSnapshotCopy(input *EnableSnapshotCopyInput) (*EnableSnapshotCopyOutput, error) {
- req, out := c.EnableSnapshotCopyRequest(input)
- err := req.Send()
- return out, err
- }
- const opModifyCluster = "ModifyCluster"
- // ModifyClusterRequest generates a "aws/request.Request" representing the
- // client's request for the ModifyCluster operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See ModifyCluster for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the ModifyCluster method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the ModifyClusterRequest method.
- // req, resp := client.ModifyClusterRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) ModifyClusterRequest(input *ModifyClusterInput) (req *request.Request, output *ModifyClusterOutput) {
- op := &request.Operation{
- Name: opModifyCluster,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &ModifyClusterInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ModifyClusterOutput{}
- req.Data = output
- return
- }
- // ModifyCluster API operation for Amazon Redshift.
- //
- // Modifies the settings for a cluster. For example, you can add another security
- // or parameter group, update the preferred maintenance window, or change the
- // master user password. Resetting a cluster password or modifying the security
- // groups associated with a cluster do not need a reboot. However, modifying
- // a parameter group requires a reboot for parameters to take effect. For more
- // information about managing clusters, go to Amazon Redshift Clusters (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // You can also change node type and the number of nodes to scale up or down
- // the cluster. When resizing a cluster, you must specify both the number of
- // nodes and the node type even if one of the parameters does not change.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation ModifyCluster for usage and error information.
- //
- // Returned Error Codes:
- // * InvalidClusterState
- // The specified cluster is not in the available state.
- //
- // * InvalidClusterSecurityGroupState
- // The state of the cluster security group is not available.
- //
- // * ClusterNotFound
- // The ClusterIdentifier parameter does not refer to an existing cluster.
- //
- // * NumberOfNodesQuotaExceeded
- // The operation would exceed the number of nodes allotted to the account. For
- // information about increasing your quota, go to Limits in Amazon Redshift
- // (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // * ClusterSecurityGroupNotFound
- // The cluster security group name does not refer to an existing cluster security
- // group.
- //
- // * ClusterParameterGroupNotFound
- // The parameter group name does not refer to an existing parameter group.
- //
- // * InsufficientClusterCapacity
- // The number of nodes specified exceeds the allotted capacity of the cluster.
- //
- // * UnsupportedOptionFault
- // A request option was specified that is not supported.
- //
- // * UnauthorizedOperation
- // Your account is not authorized to perform the requested operation.
- //
- // * HsmClientCertificateNotFoundFault
- // There is no Amazon Redshift HSM client certificate with the specified identifier.
- //
- // * HsmConfigurationNotFoundFault
- // There is no Amazon Redshift HSM configuration with the specified identifier.
- //
- // * ClusterAlreadyExists
- // The account already has a cluster with the given identifier.
- //
- // * LimitExceededFault
- // The encryption key has exceeded its grant limit in AWS KMS.
- //
- // * DependentServiceRequestThrottlingFault
- // The request cannot be completed because a dependent service is throttling
- // requests made by Amazon Redshift on your behalf. Wait and retry the request.
- //
- // * InvalidElasticIpFault
- // The Elastic IP (EIP) is invalid or cannot be found.
- //
- func (c *Redshift) ModifyCluster(input *ModifyClusterInput) (*ModifyClusterOutput, error) {
- req, out := c.ModifyClusterRequest(input)
- err := req.Send()
- return out, err
- }
- const opModifyClusterIamRoles = "ModifyClusterIamRoles"
- // ModifyClusterIamRolesRequest generates a "aws/request.Request" representing the
- // client's request for the ModifyClusterIamRoles operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See ModifyClusterIamRoles for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the ModifyClusterIamRoles method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the ModifyClusterIamRolesRequest method.
- // req, resp := client.ModifyClusterIamRolesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) ModifyClusterIamRolesRequest(input *ModifyClusterIamRolesInput) (req *request.Request, output *ModifyClusterIamRolesOutput) {
- op := &request.Operation{
- Name: opModifyClusterIamRoles,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &ModifyClusterIamRolesInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ModifyClusterIamRolesOutput{}
- req.Data = output
- return
- }
- // ModifyClusterIamRoles API operation for Amazon Redshift.
- //
- // Modifies the list of AWS Identity and Access Management (IAM) roles that
- // can be used by the cluster to access other AWS services.
- //
- // A cluster can have up to 10 IAM roles associated at any time.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation ModifyClusterIamRoles for usage and error information.
- //
- // Returned Error Codes:
- // * InvalidClusterState
- // The specified cluster is not in the available state.
- //
- // * ClusterNotFound
- // The ClusterIdentifier parameter does not refer to an existing cluster.
- //
- func (c *Redshift) ModifyClusterIamRoles(input *ModifyClusterIamRolesInput) (*ModifyClusterIamRolesOutput, error) {
- req, out := c.ModifyClusterIamRolesRequest(input)
- err := req.Send()
- return out, err
- }
- const opModifyClusterParameterGroup = "ModifyClusterParameterGroup"
- // ModifyClusterParameterGroupRequest generates a "aws/request.Request" representing the
- // client's request for the ModifyClusterParameterGroup operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See ModifyClusterParameterGroup for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the ModifyClusterParameterGroup method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the ModifyClusterParameterGroupRequest method.
- // req, resp := client.ModifyClusterParameterGroupRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) ModifyClusterParameterGroupRequest(input *ModifyClusterParameterGroupInput) (req *request.Request, output *ClusterParameterGroupNameMessage) {
- op := &request.Operation{
- Name: opModifyClusterParameterGroup,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &ModifyClusterParameterGroupInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ClusterParameterGroupNameMessage{}
- req.Data = output
- return
- }
- // ModifyClusterParameterGroup API operation for Amazon Redshift.
- //
- // Modifies the parameters of a parameter group.
- //
- // For more information about parameters and parameter groups, go to Amazon
- // Redshift Parameter Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation ModifyClusterParameterGroup for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterParameterGroupNotFound
- // The parameter group name does not refer to an existing parameter group.
- //
- // * InvalidClusterParameterGroupState
- // The cluster parameter group action can not be completed because another task
- // is in progress that involves the parameter group. Wait a few moments and
- // try the operation again.
- //
- func (c *Redshift) ModifyClusterParameterGroup(input *ModifyClusterParameterGroupInput) (*ClusterParameterGroupNameMessage, error) {
- req, out := c.ModifyClusterParameterGroupRequest(input)
- err := req.Send()
- return out, err
- }
- const opModifyClusterSubnetGroup = "ModifyClusterSubnetGroup"
- // ModifyClusterSubnetGroupRequest generates a "aws/request.Request" representing the
- // client's request for the ModifyClusterSubnetGroup operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See ModifyClusterSubnetGroup for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the ModifyClusterSubnetGroup method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the ModifyClusterSubnetGroupRequest method.
- // req, resp := client.ModifyClusterSubnetGroupRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) ModifyClusterSubnetGroupRequest(input *ModifyClusterSubnetGroupInput) (req *request.Request, output *ModifyClusterSubnetGroupOutput) {
- op := &request.Operation{
- Name: opModifyClusterSubnetGroup,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &ModifyClusterSubnetGroupInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ModifyClusterSubnetGroupOutput{}
- req.Data = output
- return
- }
- // ModifyClusterSubnetGroup API operation for Amazon Redshift.
- //
- // Modifies a cluster subnet group to include the specified list of VPC subnets.
- // The operation replaces the existing list of subnets with the new list of
- // subnets.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation ModifyClusterSubnetGroup for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterSubnetGroupNotFoundFault
- // The cluster subnet group name does not refer to an existing cluster subnet
- // group.
- //
- // * ClusterSubnetQuotaExceededFault
- // The request would result in user exceeding the allowed number of subnets
- // in a cluster subnet groups. For information about increasing your quota,
- // go to Limits in Amazon Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // * SubnetAlreadyInUse
- // A specified subnet is already in use by another cluster.
- //
- // * InvalidSubnet
- // The requested subnet is not valid, or not all of the subnets are in the same
- // VPC.
- //
- // * UnauthorizedOperation
- // Your account is not authorized to perform the requested operation.
- //
- // * DependentServiceRequestThrottlingFault
- // The request cannot be completed because a dependent service is throttling
- // requests made by Amazon Redshift on your behalf. Wait and retry the request.
- //
- func (c *Redshift) ModifyClusterSubnetGroup(input *ModifyClusterSubnetGroupInput) (*ModifyClusterSubnetGroupOutput, error) {
- req, out := c.ModifyClusterSubnetGroupRequest(input)
- err := req.Send()
- return out, err
- }
- const opModifyEventSubscription = "ModifyEventSubscription"
- // ModifyEventSubscriptionRequest generates a "aws/request.Request" representing the
- // client's request for the ModifyEventSubscription operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See ModifyEventSubscription for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the ModifyEventSubscription method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the ModifyEventSubscriptionRequest method.
- // req, resp := client.ModifyEventSubscriptionRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) ModifyEventSubscriptionRequest(input *ModifyEventSubscriptionInput) (req *request.Request, output *ModifyEventSubscriptionOutput) {
- op := &request.Operation{
- Name: opModifyEventSubscription,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &ModifyEventSubscriptionInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ModifyEventSubscriptionOutput{}
- req.Data = output
- return
- }
- // ModifyEventSubscription API operation for Amazon Redshift.
- //
- // Modifies an existing Amazon Redshift event notification subscription.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation ModifyEventSubscription for usage and error information.
- //
- // Returned Error Codes:
- // * SubscriptionNotFound
- // An Amazon Redshift event notification subscription with the specified name
- // does not exist.
- //
- // * SNSInvalidTopic
- // Amazon SNS has responded that there is a problem with the specified Amazon
- // SNS topic.
- //
- // * SNSNoAuthorization
- // You do not have permission to publish to the specified Amazon SNS topic.
- //
- // * SNSTopicArnNotFound
- // An Amazon SNS topic with the specified Amazon Resource Name (ARN) does not
- // exist.
- //
- // * SubscriptionEventIdNotFound
- // An Amazon Redshift event with the specified event ID does not exist.
- //
- // * SubscriptionCategoryNotFound
- // The value specified for the event category was not one of the allowed values,
- // or it specified a category that does not apply to the specified source type.
- // The allowed values are Configuration, Management, Monitoring, and Security.
- //
- // * SubscriptionSeverityNotFound
- // The value specified for the event severity was not one of the allowed values,
- // or it specified a severity that does not apply to the specified source type.
- // The allowed values are ERROR and INFO.
- //
- // * SourceNotFound
- // The specified Amazon Redshift event source could not be found.
- //
- // * InvalidSubscriptionStateFault
- // The subscription request is invalid because it is a duplicate request. This
- // subscription request is already in progress.
- //
- func (c *Redshift) ModifyEventSubscription(input *ModifyEventSubscriptionInput) (*ModifyEventSubscriptionOutput, error) {
- req, out := c.ModifyEventSubscriptionRequest(input)
- err := req.Send()
- return out, err
- }
- const opModifySnapshotCopyRetentionPeriod = "ModifySnapshotCopyRetentionPeriod"
- // ModifySnapshotCopyRetentionPeriodRequest generates a "aws/request.Request" representing the
- // client's request for the ModifySnapshotCopyRetentionPeriod operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See ModifySnapshotCopyRetentionPeriod for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the ModifySnapshotCopyRetentionPeriod method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the ModifySnapshotCopyRetentionPeriodRequest method.
- // req, resp := client.ModifySnapshotCopyRetentionPeriodRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) ModifySnapshotCopyRetentionPeriodRequest(input *ModifySnapshotCopyRetentionPeriodInput) (req *request.Request, output *ModifySnapshotCopyRetentionPeriodOutput) {
- op := &request.Operation{
- Name: opModifySnapshotCopyRetentionPeriod,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &ModifySnapshotCopyRetentionPeriodInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ModifySnapshotCopyRetentionPeriodOutput{}
- req.Data = output
- return
- }
- // ModifySnapshotCopyRetentionPeriod API operation for Amazon Redshift.
- //
- // Modifies the number of days to retain automated snapshots in the destination
- // region after they are copied from the source region.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation ModifySnapshotCopyRetentionPeriod for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterNotFound
- // The ClusterIdentifier parameter does not refer to an existing cluster.
- //
- // * SnapshotCopyDisabledFault
- // Cross-region snapshot copy was temporarily disabled. Try your request again.
- //
- // * UnauthorizedOperation
- // Your account is not authorized to perform the requested operation.
- //
- // * InvalidClusterState
- // The specified cluster is not in the available state.
- //
- func (c *Redshift) ModifySnapshotCopyRetentionPeriod(input *ModifySnapshotCopyRetentionPeriodInput) (*ModifySnapshotCopyRetentionPeriodOutput, error) {
- req, out := c.ModifySnapshotCopyRetentionPeriodRequest(input)
- err := req.Send()
- return out, err
- }
- const opPurchaseReservedNodeOffering = "PurchaseReservedNodeOffering"
- // PurchaseReservedNodeOfferingRequest generates a "aws/request.Request" representing the
- // client's request for the PurchaseReservedNodeOffering operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See PurchaseReservedNodeOffering for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the PurchaseReservedNodeOffering method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the PurchaseReservedNodeOfferingRequest method.
- // req, resp := client.PurchaseReservedNodeOfferingRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) PurchaseReservedNodeOfferingRequest(input *PurchaseReservedNodeOfferingInput) (req *request.Request, output *PurchaseReservedNodeOfferingOutput) {
- op := &request.Operation{
- Name: opPurchaseReservedNodeOffering,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &PurchaseReservedNodeOfferingInput{}
- }
- req = c.newRequest(op, input, output)
- output = &PurchaseReservedNodeOfferingOutput{}
- req.Data = output
- return
- }
- // PurchaseReservedNodeOffering API operation for Amazon Redshift.
- //
- // Allows you to purchase reserved nodes. Amazon Redshift offers a predefined
- // set of reserved node offerings. You can purchase one or more of the offerings.
- // You can call the DescribeReservedNodeOfferings API to obtain the available
- // reserved node offerings. You can call this API by providing a specific reserved
- // node offering and the number of nodes you want to reserve.
- //
- // For more information about reserved node offerings, go to Purchasing Reserved
- // Nodes (http://docs.aws.amazon.com/redshift/latest/mgmt/purchase-reserved-node-instance.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation PurchaseReservedNodeOffering for usage and error information.
- //
- // Returned Error Codes:
- // * ReservedNodeOfferingNotFound
- // Specified offering does not exist.
- //
- // * ReservedNodeAlreadyExists
- // User already has a reservation with the given identifier.
- //
- // * ReservedNodeQuotaExceeded
- // Request would exceed the user's compute node quota. For information about
- // increasing your quota, go to Limits in Amazon Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // * UnsupportedOperation
- // The requested operation isn't supported.
- //
- func (c *Redshift) PurchaseReservedNodeOffering(input *PurchaseReservedNodeOfferingInput) (*PurchaseReservedNodeOfferingOutput, error) {
- req, out := c.PurchaseReservedNodeOfferingRequest(input)
- err := req.Send()
- return out, err
- }
- const opRebootCluster = "RebootCluster"
- // RebootClusterRequest generates a "aws/request.Request" representing the
- // client's request for the RebootCluster operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See RebootCluster for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the RebootCluster method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the RebootClusterRequest method.
- // req, resp := client.RebootClusterRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) RebootClusterRequest(input *RebootClusterInput) (req *request.Request, output *RebootClusterOutput) {
- op := &request.Operation{
- Name: opRebootCluster,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &RebootClusterInput{}
- }
- req = c.newRequest(op, input, output)
- output = &RebootClusterOutput{}
- req.Data = output
- return
- }
- // RebootCluster API operation for Amazon Redshift.
- //
- // Reboots a cluster. This action is taken as soon as possible. It results in
- // a momentary outage to the cluster, during which the cluster status is set
- // to rebooting. A cluster event is created when the reboot is completed. Any
- // pending cluster modifications (see ModifyCluster) are applied at this reboot.
- // For more information about managing clusters, go to Amazon Redshift Clusters
- // (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation RebootCluster for usage and error information.
- //
- // Returned Error Codes:
- // * InvalidClusterState
- // The specified cluster is not in the available state.
- //
- // * ClusterNotFound
- // The ClusterIdentifier parameter does not refer to an existing cluster.
- //
- func (c *Redshift) RebootCluster(input *RebootClusterInput) (*RebootClusterOutput, error) {
- req, out := c.RebootClusterRequest(input)
- err := req.Send()
- return out, err
- }
- const opResetClusterParameterGroup = "ResetClusterParameterGroup"
- // ResetClusterParameterGroupRequest generates a "aws/request.Request" representing the
- // client's request for the ResetClusterParameterGroup operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See ResetClusterParameterGroup for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the ResetClusterParameterGroup method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the ResetClusterParameterGroupRequest method.
- // req, resp := client.ResetClusterParameterGroupRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) ResetClusterParameterGroupRequest(input *ResetClusterParameterGroupInput) (req *request.Request, output *ClusterParameterGroupNameMessage) {
- op := &request.Operation{
- Name: opResetClusterParameterGroup,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &ResetClusterParameterGroupInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ClusterParameterGroupNameMessage{}
- req.Data = output
- return
- }
- // ResetClusterParameterGroup API operation for Amazon Redshift.
- //
- // Sets one or more parameters of the specified parameter group to their default
- // values and sets the source values of the parameters to "engine-default".
- // To reset the entire parameter group specify the ResetAllParameters parameter.
- // For parameter changes to take effect you must reboot any associated clusters.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation ResetClusterParameterGroup for usage and error information.
- //
- // Returned Error Codes:
- // * InvalidClusterParameterGroupState
- // The cluster parameter group action can not be completed because another task
- // is in progress that involves the parameter group. Wait a few moments and
- // try the operation again.
- //
- // * ClusterParameterGroupNotFound
- // The parameter group name does not refer to an existing parameter group.
- //
- func (c *Redshift) ResetClusterParameterGroup(input *ResetClusterParameterGroupInput) (*ClusterParameterGroupNameMessage, error) {
- req, out := c.ResetClusterParameterGroupRequest(input)
- err := req.Send()
- return out, err
- }
- const opRestoreFromClusterSnapshot = "RestoreFromClusterSnapshot"
- // RestoreFromClusterSnapshotRequest generates a "aws/request.Request" representing the
- // client's request for the RestoreFromClusterSnapshot operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See RestoreFromClusterSnapshot for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the RestoreFromClusterSnapshot method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the RestoreFromClusterSnapshotRequest method.
- // req, resp := client.RestoreFromClusterSnapshotRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) RestoreFromClusterSnapshotRequest(input *RestoreFromClusterSnapshotInput) (req *request.Request, output *RestoreFromClusterSnapshotOutput) {
- op := &request.Operation{
- Name: opRestoreFromClusterSnapshot,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &RestoreFromClusterSnapshotInput{}
- }
- req = c.newRequest(op, input, output)
- output = &RestoreFromClusterSnapshotOutput{}
- req.Data = output
- return
- }
- // RestoreFromClusterSnapshot API operation for Amazon Redshift.
- //
- // Creates a new cluster from a snapshot. By default, Amazon Redshift creates
- // the resulting cluster with the same configuration as the original cluster
- // from which the snapshot was created, except that the new cluster is created
- // with the default cluster security and parameter groups. After Amazon Redshift
- // creates the cluster, you can use the ModifyCluster API to associate a different
- // security group and different parameter group with the restored cluster. If
- // you are using a DS node type, you can also choose to change to another DS
- // node type of the same size during restore.
- //
- // If you restore a cluster into a VPC, you must provide a cluster subnet group
- // where you want the cluster restored.
- //
- // For more information about working with snapshots, go to Amazon Redshift
- // Snapshots (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-snapshots.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation RestoreFromClusterSnapshot for usage and error information.
- //
- // Returned Error Codes:
- // * AccessToSnapshotDenied
- // The owner of the specified snapshot has not authorized your account to access
- // the snapshot.
- //
- // * ClusterAlreadyExists
- // The account already has a cluster with the given identifier.
- //
- // * ClusterSnapshotNotFound
- // The snapshot identifier does not refer to an existing cluster snapshot.
- //
- // * ClusterQuotaExceeded
- // The request would exceed the allowed number of cluster instances for this
- // account. For information about increasing your quota, go to Limits in Amazon
- // Redshift (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // * InsufficientClusterCapacity
- // The number of nodes specified exceeds the allotted capacity of the cluster.
- //
- // * InvalidClusterSnapshotState
- // The specified cluster snapshot is not in the available state, or other accounts
- // are authorized to access the snapshot.
- //
- // * InvalidRestore
- // The restore is invalid.
- //
- // * NumberOfNodesQuotaExceeded
- // The operation would exceed the number of nodes allotted to the account. For
- // information about increasing your quota, go to Limits in Amazon Redshift
- // (http://docs.aws.amazon.com/redshift/latest/mgmt/amazon-redshift-limits.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // * NumberOfNodesPerClusterLimitExceeded
- // The operation would exceed the number of nodes allowed for a cluster.
- //
- // * InvalidVPCNetworkStateFault
- // The cluster subnet group does not cover all Availability Zones.
- //
- // * InvalidClusterSubnetGroupStateFault
- // The cluster subnet group cannot be deleted because it is in use.
- //
- // * InvalidSubnet
- // The requested subnet is not valid, or not all of the subnets are in the same
- // VPC.
- //
- // * ClusterSubnetGroupNotFoundFault
- // The cluster subnet group name does not refer to an existing cluster subnet
- // group.
- //
- // * UnauthorizedOperation
- // Your account is not authorized to perform the requested operation.
- //
- // * HsmClientCertificateNotFoundFault
- // There is no Amazon Redshift HSM client certificate with the specified identifier.
- //
- // * HsmConfigurationNotFoundFault
- // There is no Amazon Redshift HSM configuration with the specified identifier.
- //
- // * InvalidElasticIpFault
- // The Elastic IP (EIP) is invalid or cannot be found.
- //
- // * ClusterParameterGroupNotFound
- // The parameter group name does not refer to an existing parameter group.
- //
- // * ClusterSecurityGroupNotFound
- // The cluster security group name does not refer to an existing cluster security
- // group.
- //
- // * LimitExceededFault
- // The encryption key has exceeded its grant limit in AWS KMS.
- //
- // * DependentServiceRequestThrottlingFault
- // The request cannot be completed because a dependent service is throttling
- // requests made by Amazon Redshift on your behalf. Wait and retry the request.
- //
- func (c *Redshift) RestoreFromClusterSnapshot(input *RestoreFromClusterSnapshotInput) (*RestoreFromClusterSnapshotOutput, error) {
- req, out := c.RestoreFromClusterSnapshotRequest(input)
- err := req.Send()
- return out, err
- }
- const opRestoreTableFromClusterSnapshot = "RestoreTableFromClusterSnapshot"
- // RestoreTableFromClusterSnapshotRequest generates a "aws/request.Request" representing the
- // client's request for the RestoreTableFromClusterSnapshot operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See RestoreTableFromClusterSnapshot for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the RestoreTableFromClusterSnapshot method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the RestoreTableFromClusterSnapshotRequest method.
- // req, resp := client.RestoreTableFromClusterSnapshotRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) RestoreTableFromClusterSnapshotRequest(input *RestoreTableFromClusterSnapshotInput) (req *request.Request, output *RestoreTableFromClusterSnapshotOutput) {
- op := &request.Operation{
- Name: opRestoreTableFromClusterSnapshot,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &RestoreTableFromClusterSnapshotInput{}
- }
- req = c.newRequest(op, input, output)
- output = &RestoreTableFromClusterSnapshotOutput{}
- req.Data = output
- return
- }
- // RestoreTableFromClusterSnapshot API operation for Amazon Redshift.
- //
- // Creates a new table from a table in an Amazon Redshift cluster snapshot.
- // You must create the new table within the Amazon Redshift cluster that the
- // snapshot was taken from.
- //
- // You cannot use RestoreTableFromClusterSnapshot to restore a table with the
- // same name as an existing table in an Amazon Redshift cluster. That is, you
- // cannot overwrite an existing table in a cluster with a restored table. If
- // you want to replace your original table with a new, restored table, then
- // rename or drop your original table before you call RestoreTableFromClusterSnapshot.
- // When you have renamed your original table, then you can pass the original
- // name of the table as the NewTableName parameter value in the call to RestoreTableFromClusterSnapshot.
- // This way, you can replace the original table with the table created from
- // the snapshot.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation RestoreTableFromClusterSnapshot for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterSnapshotNotFound
- // The snapshot identifier does not refer to an existing cluster snapshot.
- //
- // * InProgressTableRestoreQuotaExceededFault
- // You have exceeded the allowed number of table restore requests. Wait for
- // your current table restore requests to complete before making a new request.
- //
- // * InvalidClusterSnapshotState
- // The specified cluster snapshot is not in the available state, or other accounts
- // are authorized to access the snapshot.
- //
- // * InvalidTableRestoreArgument
- // The value specified for the sourceDatabaseName, sourceSchemaName, or sourceTableName
- // parameter, or a combination of these, doesn't exist in the snapshot.
- //
- // * ClusterNotFound
- // The ClusterIdentifier parameter does not refer to an existing cluster.
- //
- // * InvalidClusterState
- // The specified cluster is not in the available state.
- //
- // * UnsupportedOperation
- // The requested operation isn't supported.
- //
- func (c *Redshift) RestoreTableFromClusterSnapshot(input *RestoreTableFromClusterSnapshotInput) (*RestoreTableFromClusterSnapshotOutput, error) {
- req, out := c.RestoreTableFromClusterSnapshotRequest(input)
- err := req.Send()
- return out, err
- }
- const opRevokeClusterSecurityGroupIngress = "RevokeClusterSecurityGroupIngress"
- // RevokeClusterSecurityGroupIngressRequest generates a "aws/request.Request" representing the
- // client's request for the RevokeClusterSecurityGroupIngress operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See RevokeClusterSecurityGroupIngress for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the RevokeClusterSecurityGroupIngress method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the RevokeClusterSecurityGroupIngressRequest method.
- // req, resp := client.RevokeClusterSecurityGroupIngressRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) RevokeClusterSecurityGroupIngressRequest(input *RevokeClusterSecurityGroupIngressInput) (req *request.Request, output *RevokeClusterSecurityGroupIngressOutput) {
- op := &request.Operation{
- Name: opRevokeClusterSecurityGroupIngress,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &RevokeClusterSecurityGroupIngressInput{}
- }
- req = c.newRequest(op, input, output)
- output = &RevokeClusterSecurityGroupIngressOutput{}
- req.Data = output
- return
- }
- // RevokeClusterSecurityGroupIngress API operation for Amazon Redshift.
- //
- // Revokes an ingress rule in an Amazon Redshift security group for a previously
- // authorized IP range or Amazon EC2 security group. To add an ingress rule,
- // see AuthorizeClusterSecurityGroupIngress. For information about managing
- // security groups, go to Amazon Redshift Cluster Security Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-security-groups.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation RevokeClusterSecurityGroupIngress for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterSecurityGroupNotFound
- // The cluster security group name does not refer to an existing cluster security
- // group.
- //
- // * AuthorizationNotFound
- // The specified CIDR IP range or EC2 security group is not authorized for the
- // specified cluster security group.
- //
- // * InvalidClusterSecurityGroupState
- // The state of the cluster security group is not available.
- //
- func (c *Redshift) RevokeClusterSecurityGroupIngress(input *RevokeClusterSecurityGroupIngressInput) (*RevokeClusterSecurityGroupIngressOutput, error) {
- req, out := c.RevokeClusterSecurityGroupIngressRequest(input)
- err := req.Send()
- return out, err
- }
- const opRevokeSnapshotAccess = "RevokeSnapshotAccess"
- // RevokeSnapshotAccessRequest generates a "aws/request.Request" representing the
- // client's request for the RevokeSnapshotAccess operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See RevokeSnapshotAccess for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the RevokeSnapshotAccess method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the RevokeSnapshotAccessRequest method.
- // req, resp := client.RevokeSnapshotAccessRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) RevokeSnapshotAccessRequest(input *RevokeSnapshotAccessInput) (req *request.Request, output *RevokeSnapshotAccessOutput) {
- op := &request.Operation{
- Name: opRevokeSnapshotAccess,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &RevokeSnapshotAccessInput{}
- }
- req = c.newRequest(op, input, output)
- output = &RevokeSnapshotAccessOutput{}
- req.Data = output
- return
- }
- // RevokeSnapshotAccess API operation for Amazon Redshift.
- //
- // Removes the ability of the specified AWS customer account to restore the
- // specified snapshot. If the account is currently restoring the snapshot, the
- // restore will run to completion.
- //
- // For more information about working with snapshots, go to Amazon Redshift
- // Snapshots (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-snapshots.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation RevokeSnapshotAccess for usage and error information.
- //
- // Returned Error Codes:
- // * AccessToSnapshotDenied
- // The owner of the specified snapshot has not authorized your account to access
- // the snapshot.
- //
- // * AuthorizationNotFound
- // The specified CIDR IP range or EC2 security group is not authorized for the
- // specified cluster security group.
- //
- // * ClusterSnapshotNotFound
- // The snapshot identifier does not refer to an existing cluster snapshot.
- //
- func (c *Redshift) RevokeSnapshotAccess(input *RevokeSnapshotAccessInput) (*RevokeSnapshotAccessOutput, error) {
- req, out := c.RevokeSnapshotAccessRequest(input)
- err := req.Send()
- return out, err
- }
- const opRotateEncryptionKey = "RotateEncryptionKey"
- // RotateEncryptionKeyRequest generates a "aws/request.Request" representing the
- // client's request for the RotateEncryptionKey operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See RotateEncryptionKey for usage and error information.
- //
- // Creating a request object using this method should be used when you want to inject
- // custom logic into the request's lifecycle using a custom handler, or if you want to
- // access properties on the request object before or after sending the request. If
- // you just want the service response, call the RotateEncryptionKey method directly
- // instead.
- //
- // Note: You must call the "Send" method on the returned request object in order
- // to execute the request.
- //
- // // Example sending a request using the RotateEncryptionKeyRequest method.
- // req, resp := client.RotateEncryptionKeyRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *Redshift) RotateEncryptionKeyRequest(input *RotateEncryptionKeyInput) (req *request.Request, output *RotateEncryptionKeyOutput) {
- op := &request.Operation{
- Name: opRotateEncryptionKey,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &RotateEncryptionKeyInput{}
- }
- req = c.newRequest(op, input, output)
- output = &RotateEncryptionKeyOutput{}
- req.Data = output
- return
- }
- // RotateEncryptionKey API operation for Amazon Redshift.
- //
- // Rotates the encryption keys for a cluster.
- //
- // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
- // with awserr.Error's Code and Message methods to get detailed information about
- // the error.
- //
- // See the AWS API reference guide for Amazon Redshift's
- // API operation RotateEncryptionKey for usage and error information.
- //
- // Returned Error Codes:
- // * ClusterNotFound
- // The ClusterIdentifier parameter does not refer to an existing cluster.
- //
- // * InvalidClusterState
- // The specified cluster is not in the available state.
- //
- // * DependentServiceRequestThrottlingFault
- // The request cannot be completed because a dependent service is throttling
- // requests made by Amazon Redshift on your behalf. Wait and retry the request.
- //
- func (c *Redshift) RotateEncryptionKey(input *RotateEncryptionKeyInput) (*RotateEncryptionKeyOutput, error) {
- req, out := c.RotateEncryptionKeyRequest(input)
- err := req.Send()
- return out, err
- }
- // Describes an AWS customer account authorized to restore a snapshot.
- type AccountWithRestoreAccess struct {
- _ struct{} `type:"structure"`
- // The identifier of an AWS customer account authorized to restore a snapshot.
- AccountId *string `type:"string"`
- }
- // String returns the string representation
- func (s AccountWithRestoreAccess) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s AccountWithRestoreAccess) GoString() string {
- return s.String()
- }
- type AuthorizeClusterSecurityGroupIngressInput struct {
- _ struct{} `type:"structure"`
- // The IP range to be added the Amazon Redshift security group.
- CIDRIP *string `type:"string"`
- // The name of the security group to which the ingress rule is added.
- //
- // ClusterSecurityGroupName is a required field
- ClusterSecurityGroupName *string `type:"string" required:"true"`
- // The EC2 security group to be added the Amazon Redshift security group.
- EC2SecurityGroupName *string `type:"string"`
- // The AWS account number of the owner of the security group specified by the
- // EC2SecurityGroupName parameter. The AWS Access Key ID is not an acceptable
- // value.
- //
- // Example: 111122223333
- EC2SecurityGroupOwnerId *string `type:"string"`
- }
- // String returns the string representation
- func (s AuthorizeClusterSecurityGroupIngressInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s AuthorizeClusterSecurityGroupIngressInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *AuthorizeClusterSecurityGroupIngressInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "AuthorizeClusterSecurityGroupIngressInput"}
- if s.ClusterSecurityGroupName == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterSecurityGroupName"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type AuthorizeClusterSecurityGroupIngressOutput struct {
- _ struct{} `type:"structure"`
- // Describes a security group.
- ClusterSecurityGroup *ClusterSecurityGroup `type:"structure"`
- }
- // String returns the string representation
- func (s AuthorizeClusterSecurityGroupIngressOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s AuthorizeClusterSecurityGroupIngressOutput) GoString() string {
- return s.String()
- }
- type AuthorizeSnapshotAccessInput struct {
- _ struct{} `type:"structure"`
- // The identifier of the AWS customer account authorized to restore the specified
- // snapshot.
- //
- // AccountWithRestoreAccess is a required field
- AccountWithRestoreAccess *string `type:"string" required:"true"`
- // The identifier of the cluster the snapshot was created from. This parameter
- // is required if your IAM user has a policy containing a snapshot resource
- // element that specifies anything other than * for the cluster name.
- SnapshotClusterIdentifier *string `type:"string"`
- // The identifier of the snapshot the account is authorized to restore.
- //
- // SnapshotIdentifier is a required field
- SnapshotIdentifier *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s AuthorizeSnapshotAccessInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s AuthorizeSnapshotAccessInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *AuthorizeSnapshotAccessInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "AuthorizeSnapshotAccessInput"}
- if s.AccountWithRestoreAccess == nil {
- invalidParams.Add(request.NewErrParamRequired("AccountWithRestoreAccess"))
- }
- if s.SnapshotIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type AuthorizeSnapshotAccessOutput struct {
- _ struct{} `type:"structure"`
- // Describes a snapshot.
- Snapshot *Snapshot `type:"structure"`
- }
- // String returns the string representation
- func (s AuthorizeSnapshotAccessOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s AuthorizeSnapshotAccessOutput) GoString() string {
- return s.String()
- }
- // Describes an availability zone.
- type AvailabilityZone struct {
- _ struct{} `type:"structure"`
- // The name of the availability zone.
- Name *string `type:"string"`
- }
- // String returns the string representation
- func (s AvailabilityZone) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s AvailabilityZone) GoString() string {
- return s.String()
- }
- // Describes a cluster.
- type Cluster struct {
- _ struct{} `type:"structure"`
- // A Boolean value that, if true, indicates that major version upgrades will
- // be applied automatically to the cluster during the maintenance window.
- AllowVersionUpgrade *bool `type:"boolean"`
- // The number of days that automatic cluster snapshots are retained.
- AutomatedSnapshotRetentionPeriod *int64 `type:"integer"`
- // The name of the Availability Zone in which the cluster is located.
- AvailabilityZone *string `type:"string"`
- // The date and time that the cluster was created.
- ClusterCreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
- // The unique identifier of the cluster.
- ClusterIdentifier *string `type:"string"`
- // The nodes in the cluster.
- ClusterNodes []*ClusterNode `type:"list"`
- // The list of cluster parameter groups that are associated with this cluster.
- // Each parameter group in the list is returned with its status.
- ClusterParameterGroups []*ClusterParameterGroupStatus `locationNameList:"ClusterParameterGroup" type:"list"`
- // The public key for the cluster.
- ClusterPublicKey *string `type:"string"`
- // The specific revision number of the database in the cluster.
- ClusterRevisionNumber *string `type:"string"`
- // A list of cluster security group that are associated with the cluster. Each
- // security group is represented by an element that contains ClusterSecurityGroup.Name
- // and ClusterSecurityGroup.Status subelements.
- //
- // Cluster security groups are used when the cluster is not created in an Amazon
- // Virtual Private Cloud (VPC). Clusters that are created in a VPC use VPC security
- // groups, which are listed by the VpcSecurityGroups parameter.
- ClusterSecurityGroups []*ClusterSecurityGroupMembership `locationNameList:"ClusterSecurityGroup" type:"list"`
- // A value that returns the destination region and retention period that are
- // configured for cross-region snapshot copy.
- ClusterSnapshotCopyStatus *ClusterSnapshotCopyStatus `type:"structure"`
- // The current state of the cluster. Possible values are the following:
- //
- // * available
- //
- // * creating
- //
- // * deleting
- //
- // * final-snapshot
- //
- // * hardware-failure
- //
- // * incompatible-hsm
- //
- // * incompatible-network
- //
- // * incompatible-parameters
- //
- // * incompatible-restore
- //
- // * modifying
- //
- // * rebooting
- //
- // * renaming
- //
- // * resizing
- //
- // * rotating-keys
- //
- // * storage-full
- //
- // * updating-hsm
- ClusterStatus *string `type:"string"`
- // The name of the subnet group that is associated with the cluster. This parameter
- // is valid only when the cluster is in a VPC.
- ClusterSubnetGroupName *string `type:"string"`
- // The version ID of the Amazon Redshift engine that is running on the cluster.
- ClusterVersion *string `type:"string"`
- // The name of the initial database that was created when the cluster was created.
- // This same name is returned for the life of the cluster. If an initial database
- // was not specified, a database named devdev was created by default.
- DBName *string `type:"string"`
- // The status of the elastic IP (EIP) address.
- ElasticIpStatus *ElasticIpStatus `type:"structure"`
- // A Boolean value that, if true, indicates that data in the cluster is encrypted
- // at rest.
- Encrypted *bool `type:"boolean"`
- // The connection endpoint.
- Endpoint *Endpoint `type:"structure"`
- // An option that specifies whether to create the cluster with enhanced VPC
- // routing enabled. To create a cluster that uses enhanced VPC routing, the
- // cluster must be in a VPC. For more information, see Enhanced VPC Routing
- // (http://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // If this option is true, enhanced VPC routing is enabled.
- //
- // Default: false
- EnhancedVpcRouting *bool `type:"boolean"`
- // A value that reports whether the Amazon Redshift cluster has finished applying
- // any hardware security module (HSM) settings changes specified in a modify
- // cluster command.
- //
- // Values: active, applying
- HsmStatus *HsmStatus `type:"structure"`
- // A list of AWS Identity and Access Management (IAM) roles that can be used
- // by the cluster to access other AWS services.
- IamRoles []*ClusterIamRole `locationNameList:"ClusterIamRole" type:"list"`
- // The AWS Key Management Service (AWS KMS) key ID of the encryption key used
- // to encrypt data in the cluster.
- KmsKeyId *string `type:"string"`
- // The master user name for the cluster. This name is used to connect to the
- // database that is specified in the DBName parameter.
- MasterUsername *string `type:"string"`
- // The status of a modify operation, if any, initiated for the cluster.
- ModifyStatus *string `type:"string"`
- // The node type for the nodes in the cluster.
- NodeType *string `type:"string"`
- // The number of compute nodes in the cluster.
- NumberOfNodes *int64 `type:"integer"`
- // A value that, if present, indicates that changes to the cluster are pending.
- // Specific pending changes are identified by subelements.
- PendingModifiedValues *PendingModifiedValues `type:"structure"`
- // The weekly time range, in Universal Coordinated Time (UTC), during which
- // system maintenance can occur.
- PreferredMaintenanceWindow *string `type:"string"`
- // A Boolean value that, if true, indicates that the cluster can be accessed
- // from a public network.
- PubliclyAccessible *bool `type:"boolean"`
- // A value that describes the status of a cluster restore action. This parameter
- // returns null if the cluster was not created by restoring a snapshot.
- RestoreStatus *RestoreStatus `type:"structure"`
- // The list of tags for the cluster.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- // The identifier of the VPC the cluster is in, if the cluster is in a VPC.
- VpcId *string `type:"string"`
- // A list of Amazon Virtual Private Cloud (Amazon VPC) security groups that
- // are associated with the cluster. This parameter is returned only if the cluster
- // is in a VPC.
- VpcSecurityGroups []*VpcSecurityGroupMembership `locationNameList:"VpcSecurityGroup" type:"list"`
- }
- // String returns the string representation
- func (s Cluster) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Cluster) GoString() string {
- return s.String()
- }
- // An AWS Identity and Access Management (IAM) role that can be used by the
- // associated Amazon Redshift cluster to access other AWS services.
- type ClusterIamRole struct {
- _ struct{} `type:"structure"`
- // A value that describes the status of the IAM role's association with an Amazon
- // Redshift cluster.
- //
- // The following are possible statuses and descriptions.
- //
- // * in-sync: The role is available for use by the cluster.
- //
- // * adding: The role is in the process of being associated with the cluster.
- //
- // * removing: The role is in the process of being disassociated with the
- // cluster.
- ApplyStatus *string `type:"string"`
- // The Amazon Resource Name (ARN) of the IAM role, for example, arn:aws:iam::123456789012:role/RedshiftCopyUnload.
- IamRoleArn *string `type:"string"`
- }
- // String returns the string representation
- func (s ClusterIamRole) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ClusterIamRole) GoString() string {
- return s.String()
- }
- // The identifier of a node in a cluster.
- type ClusterNode struct {
- _ struct{} `type:"structure"`
- // Whether the node is a leader node or a compute node.
- NodeRole *string `type:"string"`
- // The private IP address of a node within a cluster.
- PrivateIPAddress *string `type:"string"`
- // The public IP address of a node within a cluster.
- PublicIPAddress *string `type:"string"`
- }
- // String returns the string representation
- func (s ClusterNode) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ClusterNode) GoString() string {
- return s.String()
- }
- // Describes a parameter group.
- type ClusterParameterGroup struct {
- _ struct{} `type:"structure"`
- // The description of the parameter group.
- Description *string `type:"string"`
- // The name of the cluster parameter group family that this cluster parameter
- // group is compatible with.
- ParameterGroupFamily *string `type:"string"`
- // The name of the cluster parameter group.
- ParameterGroupName *string `type:"string"`
- // The list of tags for the cluster parameter group.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- }
- // String returns the string representation
- func (s ClusterParameterGroup) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ClusterParameterGroup) GoString() string {
- return s.String()
- }
- type ClusterParameterGroupNameMessage struct {
- _ struct{} `type:"structure"`
- // The name of the cluster parameter group.
- ParameterGroupName *string `type:"string"`
- // The status of the parameter group. For example, if you made a change to a
- // parameter group name-value pair, then the change could be pending a reboot
- // of an associated cluster.
- ParameterGroupStatus *string `type:"string"`
- }
- // String returns the string representation
- func (s ClusterParameterGroupNameMessage) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ClusterParameterGroupNameMessage) GoString() string {
- return s.String()
- }
- // Describes the status of a parameter group.
- type ClusterParameterGroupStatus struct {
- _ struct{} `type:"structure"`
- // The list of parameter statuses.
- //
- // For more information about parameters and parameter groups, go to Amazon
- // Redshift Parameter Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html)
- // in the Amazon Redshift Cluster Management Guide.
- ClusterParameterStatusList []*ClusterParameterStatus `type:"list"`
- // The status of parameter updates.
- ParameterApplyStatus *string `type:"string"`
- // The name of the cluster parameter group.
- ParameterGroupName *string `type:"string"`
- }
- // String returns the string representation
- func (s ClusterParameterGroupStatus) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ClusterParameterGroupStatus) GoString() string {
- return s.String()
- }
- // Describes the status of a parameter group.
- type ClusterParameterStatus struct {
- _ struct{} `type:"structure"`
- // The error that prevented the parameter from being applied to the database.
- ParameterApplyErrorDescription *string `type:"string"`
- // The status of the parameter that indicates whether the parameter is in sync
- // with the database, waiting for a cluster reboot, or encountered an error
- // when being applied.
- //
- // The following are possible statuses and descriptions.
- //
- // * in-sync: The parameter value is in sync with the database.
- //
- // * pending-reboot: The parameter value will be applied after the cluster
- // reboots.
- //
- // * applying: The parameter value is being applied to the database.
- //
- // * invalid-parameter: Cannot apply the parameter value because it has an
- // invalid value or syntax.
- //
- // * apply-deferred: The parameter contains static property changes. The
- // changes are deferred until the cluster reboots.
- //
- // * apply-error: Cannot connect to the cluster. The parameter change will
- // be applied after the cluster reboots.
- //
- // * unknown-error: Cannot apply the parameter change right now. The change
- // will be applied after the cluster reboots.
- ParameterApplyStatus *string `type:"string"`
- // The name of the parameter.
- ParameterName *string `type:"string"`
- }
- // String returns the string representation
- func (s ClusterParameterStatus) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ClusterParameterStatus) GoString() string {
- return s.String()
- }
- // Describes a security group.
- type ClusterSecurityGroup struct {
- _ struct{} `type:"structure"`
- // The name of the cluster security group to which the operation was applied.
- ClusterSecurityGroupName *string `type:"string"`
- // A description of the security group.
- Description *string `type:"string"`
- // A list of EC2 security groups that are permitted to access clusters associated
- // with this cluster security group.
- EC2SecurityGroups []*EC2SecurityGroup `locationNameList:"EC2SecurityGroup" type:"list"`
- // A list of IP ranges (CIDR blocks) that are permitted to access clusters associated
- // with this cluster security group.
- IPRanges []*IPRange `locationNameList:"IPRange" type:"list"`
- // The list of tags for the cluster security group.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- }
- // String returns the string representation
- func (s ClusterSecurityGroup) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ClusterSecurityGroup) GoString() string {
- return s.String()
- }
- // Describes a cluster security group.
- type ClusterSecurityGroupMembership struct {
- _ struct{} `type:"structure"`
- // The name of the cluster security group.
- ClusterSecurityGroupName *string `type:"string"`
- // The status of the cluster security group.
- Status *string `type:"string"`
- }
- // String returns the string representation
- func (s ClusterSecurityGroupMembership) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ClusterSecurityGroupMembership) GoString() string {
- return s.String()
- }
- // Returns the destination region and retention period that are configured for
- // cross-region snapshot copy.
- type ClusterSnapshotCopyStatus struct {
- _ struct{} `type:"structure"`
- // The destination region that snapshots are automatically copied to when cross-region
- // snapshot copy is enabled.
- DestinationRegion *string `type:"string"`
- // The number of days that automated snapshots are retained in the destination
- // region after they are copied from a source region.
- RetentionPeriod *int64 `type:"long"`
- // The name of the snapshot copy grant.
- SnapshotCopyGrantName *string `type:"string"`
- }
- // String returns the string representation
- func (s ClusterSnapshotCopyStatus) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ClusterSnapshotCopyStatus) GoString() string {
- return s.String()
- }
- // Describes a subnet group.
- type ClusterSubnetGroup struct {
- _ struct{} `type:"structure"`
- // The name of the cluster subnet group.
- ClusterSubnetGroupName *string `type:"string"`
- // The description of the cluster subnet group.
- Description *string `type:"string"`
- // The status of the cluster subnet group. Possible values are Complete, Incomplete
- // and Invalid.
- SubnetGroupStatus *string `type:"string"`
- // A list of the VPC Subnet elements.
- Subnets []*Subnet `locationNameList:"Subnet" type:"list"`
- // The list of tags for the cluster subnet group.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- // The VPC ID of the cluster subnet group.
- VpcId *string `type:"string"`
- }
- // String returns the string representation
- func (s ClusterSubnetGroup) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ClusterSubnetGroup) GoString() string {
- return s.String()
- }
- // Describes a cluster version, including the parameter group family and description
- // of the version.
- type ClusterVersion struct {
- _ struct{} `type:"structure"`
- // The name of the cluster parameter group family for the cluster.
- ClusterParameterGroupFamily *string `type:"string"`
- // The version number used by the cluster.
- ClusterVersion *string `type:"string"`
- // The description of the cluster version.
- Description *string `type:"string"`
- }
- // String returns the string representation
- func (s ClusterVersion) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ClusterVersion) GoString() string {
- return s.String()
- }
- type CopyClusterSnapshotInput struct {
- _ struct{} `type:"structure"`
- // The identifier of the cluster the source snapshot was created from. This
- // parameter is required if your IAM user has a policy containing a snapshot
- // resource element that specifies anything other than * for the cluster name.
- //
- // Constraints:
- //
- // * Must be the identifier for a valid cluster.
- SourceSnapshotClusterIdentifier *string `type:"string"`
- // The identifier for the source snapshot.
- //
- // Constraints:
- //
- // * Must be the identifier for a valid automated snapshot whose state is
- // available.
- //
- // SourceSnapshotIdentifier is a required field
- SourceSnapshotIdentifier *string `type:"string" required:"true"`
- // The identifier given to the new manual snapshot.
- //
- // Constraints:
- //
- // * Cannot be null, empty, or blank.
- //
- // * Must contain from 1 to 255 alphanumeric characters or hyphens.
- //
- // * First character must be a letter.
- //
- // * Cannot end with a hyphen or contain two consecutive hyphens.
- //
- // * Must be unique for the AWS account that is making the request.
- //
- // TargetSnapshotIdentifier is a required field
- TargetSnapshotIdentifier *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s CopyClusterSnapshotInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CopyClusterSnapshotInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CopyClusterSnapshotInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CopyClusterSnapshotInput"}
- if s.SourceSnapshotIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("SourceSnapshotIdentifier"))
- }
- if s.TargetSnapshotIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("TargetSnapshotIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type CopyClusterSnapshotOutput struct {
- _ struct{} `type:"structure"`
- // Describes a snapshot.
- Snapshot *Snapshot `type:"structure"`
- }
- // String returns the string representation
- func (s CopyClusterSnapshotOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CopyClusterSnapshotOutput) GoString() string {
- return s.String()
- }
- type CreateClusterInput struct {
- _ struct{} `type:"structure"`
- // Reserved.
- AdditionalInfo *string `type:"string"`
- // If true, major version upgrades can be applied during the maintenance window
- // to the Amazon Redshift engine that is running on the cluster.
- //
- // When a new major version of the Amazon Redshift engine is released, you can
- // request that the service automatically apply upgrades during the maintenance
- // window to the Amazon Redshift engine that is running on your cluster.
- //
- // Default: true
- AllowVersionUpgrade *bool `type:"boolean"`
- // The number of days that automated snapshots are retained. If the value is
- // 0, automated snapshots are disabled. Even if automated snapshots are disabled,
- // you can still create manual snapshots when you want with CreateClusterSnapshot.
- //
- // Default: 1
- //
- // Constraints: Must be a value from 0 to 35.
- AutomatedSnapshotRetentionPeriod *int64 `type:"integer"`
- // The EC2 Availability Zone (AZ) in which you want Amazon Redshift to provision
- // the cluster. For example, if you have several EC2 instances running in a
- // specific Availability Zone, then you might want the cluster to be provisioned
- // in the same zone in order to decrease network latency.
- //
- // Default: A random, system-chosen Availability Zone in the region that is
- // specified by the endpoint.
- //
- // Example: us-east-1d
- //
- // Constraint: The specified Availability Zone must be in the same region as
- // the current endpoint.
- AvailabilityZone *string `type:"string"`
- // A unique identifier for the cluster. You use this identifier to refer to
- // the cluster for any subsequent cluster operations such as deleting or modifying.
- // The identifier also appears in the Amazon Redshift console.
- //
- // Constraints:
- //
- // * Must contain from 1 to 63 alphanumeric characters or hyphens.
- //
- // * Alphabetic characters must be lowercase.
- //
- // * First character must be a letter.
- //
- // * Cannot end with a hyphen or contain two consecutive hyphens.
- //
- // * Must be unique for all clusters within an AWS account.
- //
- // Example: myexamplecluster
- //
- // ClusterIdentifier is a required field
- ClusterIdentifier *string `type:"string" required:"true"`
- // The name of the parameter group to be associated with this cluster.
- //
- // Default: The default Amazon Redshift cluster parameter group. For information
- // about the default parameter group, go to Working with Amazon Redshift Parameter
- // Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html)
- //
- // Constraints:
- //
- // * Must be 1 to 255 alphanumeric characters or hyphens.
- //
- // * First character must be a letter.
- //
- // * Cannot end with a hyphen or contain two consecutive hyphens.
- ClusterParameterGroupName *string `type:"string"`
- // A list of security groups to be associated with this cluster.
- //
- // Default: The default cluster security group for Amazon Redshift.
- ClusterSecurityGroups []*string `locationNameList:"ClusterSecurityGroupName" type:"list"`
- // The name of a cluster subnet group to be associated with this cluster.
- //
- // If this parameter is not provided the resulting cluster will be deployed
- // outside virtual private cloud (VPC).
- ClusterSubnetGroupName *string `type:"string"`
- // The type of the cluster. When cluster type is specified as
- //
- // * single-node, the NumberOfNodes parameter is not required.
- //
- // * multi-node, the NumberOfNodes parameter is required.
- //
- // Valid Values: multi-node | single-node
- //
- // Default: multi-node
- ClusterType *string `type:"string"`
- // The version of the Amazon Redshift engine software that you want to deploy
- // on the cluster.
- //
- // The version selected runs on all the nodes in the cluster.
- //
- // Constraints: Only version 1.0 is currently available.
- //
- // Example: 1.0
- ClusterVersion *string `type:"string"`
- // The name of the first database to be created when the cluster is created.
- //
- // To create additional databases after the cluster is created, connect to the
- // cluster with a SQL client and use SQL commands to create a database. For
- // more information, go to Create a Database (http://docs.aws.amazon.com/redshift/latest/dg/t_creating_database.html)
- // in the Amazon Redshift Database Developer Guide.
- //
- // Default: dev
- //
- // Constraints:
- //
- // * Must contain 1 to 64 alphanumeric characters.
- //
- // * Must contain only lowercase letters.
- //
- // * Cannot be a word that is reserved by the service. A list of reserved
- // words can be found in Reserved Words (http://docs.aws.amazon.com/redshift/latest/dg/r_pg_keywords.html)
- // in the Amazon Redshift Database Developer Guide.
- DBName *string `type:"string"`
- // The Elastic IP (EIP) address for the cluster.
- //
- // Constraints: The cluster must be provisioned in EC2-VPC and publicly-accessible
- // through an Internet gateway. For more information about provisioning clusters
- // in EC2-VPC, go to Supported Platforms to Launch Your Cluster (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#cluster-platforms)
- // in the Amazon Redshift Cluster Management Guide.
- ElasticIp *string `type:"string"`
- // If true, the data in the cluster is encrypted at rest.
- //
- // Default: false
- Encrypted *bool `type:"boolean"`
- // An option that specifies whether to create the cluster with enhanced VPC
- // routing enabled. To create a cluster that uses enhanced VPC routing, the
- // cluster must be in a VPC. For more information, see Enhanced VPC Routing
- // (http://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // If this option is true, enhanced VPC routing is enabled.
- //
- // Default: false
- EnhancedVpcRouting *bool `type:"boolean"`
- // Specifies the name of the HSM client certificate the Amazon Redshift cluster
- // uses to retrieve the data encryption keys stored in an HSM.
- HsmClientCertificateIdentifier *string `type:"string"`
- // Specifies the name of the HSM configuration that contains the information
- // the Amazon Redshift cluster can use to retrieve and store keys in an HSM.
- HsmConfigurationIdentifier *string `type:"string"`
- // A list of AWS Identity and Access Management (IAM) roles that can be used
- // by the cluster to access other AWS services. You must supply the IAM roles
- // in their Amazon Resource Name (ARN) format. You can supply up to 10 IAM roles
- // in a single request.
- //
- // A cluster can have up to 10 IAM roles associated with it at any time.
- IamRoles []*string `locationNameList:"IamRoleArn" type:"list"`
- // The AWS Key Management Service (KMS) key ID of the encryption key that you
- // want to use to encrypt data in the cluster.
- KmsKeyId *string `type:"string"`
- // The password associated with the master user account for the cluster that
- // is being created.
- //
- // Constraints:
- //
- // * Must be between 8 and 64 characters in length.
- //
- // * Must contain at least one uppercase letter.
- //
- // * Must contain at least one lowercase letter.
- //
- // * Must contain one number.
- //
- // * Can be any printable ASCII character (ASCII code 33 to 126) except '
- // (single quote), " (double quote), \, /, @, or space.
- //
- // MasterUserPassword is a required field
- MasterUserPassword *string `type:"string" required:"true"`
- // The user name associated with the master user account for the cluster that
- // is being created.
- //
- // Constraints:
- //
- // * Must be 1 - 128 alphanumeric characters.
- //
- // * First character must be a letter.
- //
- // * Cannot be a reserved word. A list of reserved words can be found in
- // Reserved Words (http://docs.aws.amazon.com/redshift/latest/dg/r_pg_keywords.html)
- // in the Amazon Redshift Database Developer Guide.
- //
- // MasterUsername is a required field
- MasterUsername *string `type:"string" required:"true"`
- // The node type to be provisioned for the cluster. For information about node
- // types, go to Working with Clusters (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#how-many-nodes)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Valid Values: ds1.xlarge | ds1.8xlarge | ds2.xlarge | ds2.8xlarge | dc1.large
- // | dc1.8xlarge.
- //
- // NodeType is a required field
- NodeType *string `type:"string" required:"true"`
- // The number of compute nodes in the cluster. This parameter is required when
- // the ClusterType parameter is specified as multi-node.
- //
- // For information about determining how many nodes you need, go to Working
- // with Clusters (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#how-many-nodes)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // If you don't specify this parameter, you get a single-node cluster. When
- // requesting a multi-node cluster, you must specify the number of nodes that
- // you want in the cluster.
- //
- // Default: 1
- //
- // Constraints: Value must be at least 1 and no more than 100.
- NumberOfNodes *int64 `type:"integer"`
- // The port number on which the cluster accepts incoming connections.
- //
- // The cluster is accessible only via the JDBC and ODBC connection strings.
- // Part of the connection string requires the port on which the cluster will
- // listen for incoming connections.
- //
- // Default: 5439
- //
- // Valid Values: 1150-65535
- Port *int64 `type:"integer"`
- // The weekly time range (in UTC) during which automated cluster maintenance
- // can occur.
- //
- // Format: ddd:hh24:mi-ddd:hh24:mi
- //
- // Default: A 30-minute window selected at random from an 8-hour block of time
- // per region, occurring on a random day of the week. For more information about
- // the time blocks for each region, see Maintenance Windows (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#rs-maintenance-windows)
- // in Amazon Redshift Cluster Management Guide.
- //
- // Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun
- //
- // Constraints: Minimum 30-minute window.
- PreferredMaintenanceWindow *string `type:"string"`
- // If true, the cluster can be accessed from a public network.
- PubliclyAccessible *bool `type:"boolean"`
- // A list of tag instances.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- // A list of Virtual Private Cloud (VPC) security groups to be associated with
- // the cluster.
- //
- // Default: The default VPC security group is associated with the cluster.
- VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"`
- }
- // String returns the string representation
- func (s CreateClusterInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateClusterInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateClusterInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateClusterInput"}
- if s.ClusterIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier"))
- }
- if s.MasterUserPassword == nil {
- invalidParams.Add(request.NewErrParamRequired("MasterUserPassword"))
- }
- if s.MasterUsername == nil {
- invalidParams.Add(request.NewErrParamRequired("MasterUsername"))
- }
- if s.NodeType == nil {
- invalidParams.Add(request.NewErrParamRequired("NodeType"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type CreateClusterOutput struct {
- _ struct{} `type:"structure"`
- // Describes a cluster.
- Cluster *Cluster `type:"structure"`
- }
- // String returns the string representation
- func (s CreateClusterOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateClusterOutput) GoString() string {
- return s.String()
- }
- type CreateClusterParameterGroupInput struct {
- _ struct{} `type:"structure"`
- // A description of the parameter group.
- //
- // Description is a required field
- Description *string `type:"string" required:"true"`
- // The Amazon Redshift engine version to which the cluster parameter group applies.
- // The cluster engine version determines the set of parameters.
- //
- // To get a list of valid parameter group family names, you can call DescribeClusterParameterGroups.
- // By default, Amazon Redshift returns a list of all the parameter groups that
- // are owned by your AWS account, including the default parameter groups for
- // each Amazon Redshift engine version. The parameter group family names associated
- // with the default parameter groups provide you the valid values. For example,
- // a valid family name is "redshift-1.0".
- //
- // ParameterGroupFamily is a required field
- ParameterGroupFamily *string `type:"string" required:"true"`
- // The name of the cluster parameter group.
- //
- // Constraints:
- //
- // * Must be 1 to 255 alphanumeric characters or hyphens
- //
- // * First character must be a letter.
- //
- // * Cannot end with a hyphen or contain two consecutive hyphens.
- //
- // * Must be unique withing your AWS account.
- //
- // This value is stored as a lower-case string.
- //
- // ParameterGroupName is a required field
- ParameterGroupName *string `type:"string" required:"true"`
- // A list of tag instances.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- }
- // String returns the string representation
- func (s CreateClusterParameterGroupInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateClusterParameterGroupInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateClusterParameterGroupInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateClusterParameterGroupInput"}
- if s.Description == nil {
- invalidParams.Add(request.NewErrParamRequired("Description"))
- }
- if s.ParameterGroupFamily == nil {
- invalidParams.Add(request.NewErrParamRequired("ParameterGroupFamily"))
- }
- if s.ParameterGroupName == nil {
- invalidParams.Add(request.NewErrParamRequired("ParameterGroupName"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type CreateClusterParameterGroupOutput struct {
- _ struct{} `type:"structure"`
- // Describes a parameter group.
- ClusterParameterGroup *ClusterParameterGroup `type:"structure"`
- }
- // String returns the string representation
- func (s CreateClusterParameterGroupOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateClusterParameterGroupOutput) GoString() string {
- return s.String()
- }
- type CreateClusterSecurityGroupInput struct {
- _ struct{} `type:"structure"`
- // The name for the security group. Amazon Redshift stores the value as a lowercase
- // string.
- //
- // Constraints:
- //
- // * Must contain no more than 255 alphanumeric characters or hyphens.
- //
- // * Must not be "Default".
- //
- // * Must be unique for all security groups that are created by your AWS
- // account.
- //
- // Example: examplesecuritygroup
- //
- // ClusterSecurityGroupName is a required field
- ClusterSecurityGroupName *string `type:"string" required:"true"`
- // A description for the security group.
- //
- // Description is a required field
- Description *string `type:"string" required:"true"`
- // A list of tag instances.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- }
- // String returns the string representation
- func (s CreateClusterSecurityGroupInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateClusterSecurityGroupInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateClusterSecurityGroupInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateClusterSecurityGroupInput"}
- if s.ClusterSecurityGroupName == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterSecurityGroupName"))
- }
- if s.Description == nil {
- invalidParams.Add(request.NewErrParamRequired("Description"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type CreateClusterSecurityGroupOutput struct {
- _ struct{} `type:"structure"`
- // Describes a security group.
- ClusterSecurityGroup *ClusterSecurityGroup `type:"structure"`
- }
- // String returns the string representation
- func (s CreateClusterSecurityGroupOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateClusterSecurityGroupOutput) GoString() string {
- return s.String()
- }
- type CreateClusterSnapshotInput struct {
- _ struct{} `type:"structure"`
- // The cluster identifier for which you want a snapshot.
- //
- // ClusterIdentifier is a required field
- ClusterIdentifier *string `type:"string" required:"true"`
- // A unique identifier for the snapshot that you are requesting. This identifier
- // must be unique for all snapshots within the AWS account.
- //
- // Constraints:
- //
- // * Cannot be null, empty, or blank
- //
- // * Must contain from 1 to 255 alphanumeric characters or hyphens
- //
- // * First character must be a letter
- //
- // * Cannot end with a hyphen or contain two consecutive hyphens
- //
- // Example: my-snapshot-id
- //
- // SnapshotIdentifier is a required field
- SnapshotIdentifier *string `type:"string" required:"true"`
- // A list of tag instances.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- }
- // String returns the string representation
- func (s CreateClusterSnapshotInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateClusterSnapshotInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateClusterSnapshotInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateClusterSnapshotInput"}
- if s.ClusterIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier"))
- }
- if s.SnapshotIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type CreateClusterSnapshotOutput struct {
- _ struct{} `type:"structure"`
- // Describes a snapshot.
- Snapshot *Snapshot `type:"structure"`
- }
- // String returns the string representation
- func (s CreateClusterSnapshotOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateClusterSnapshotOutput) GoString() string {
- return s.String()
- }
- type CreateClusterSubnetGroupInput struct {
- _ struct{} `type:"structure"`
- // The name for the subnet group. Amazon Redshift stores the value as a lowercase
- // string.
- //
- // Constraints:
- //
- // * Must contain no more than 255 alphanumeric characters or hyphens.
- //
- // * Must not be "Default".
- //
- // * Must be unique for all subnet groups that are created by your AWS account.
- //
- // Example: examplesubnetgroup
- //
- // ClusterSubnetGroupName is a required field
- ClusterSubnetGroupName *string `type:"string" required:"true"`
- // A description for the subnet group.
- //
- // Description is a required field
- Description *string `type:"string" required:"true"`
- // An array of VPC subnet IDs. A maximum of 20 subnets can be modified in a
- // single request.
- //
- // SubnetIds is a required field
- SubnetIds []*string `locationNameList:"SubnetIdentifier" type:"list" required:"true"`
- // A list of tag instances.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- }
- // String returns the string representation
- func (s CreateClusterSubnetGroupInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateClusterSubnetGroupInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateClusterSubnetGroupInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateClusterSubnetGroupInput"}
- if s.ClusterSubnetGroupName == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterSubnetGroupName"))
- }
- if s.Description == nil {
- invalidParams.Add(request.NewErrParamRequired("Description"))
- }
- if s.SubnetIds == nil {
- invalidParams.Add(request.NewErrParamRequired("SubnetIds"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type CreateClusterSubnetGroupOutput struct {
- _ struct{} `type:"structure"`
- // Describes a subnet group.
- ClusterSubnetGroup *ClusterSubnetGroup `type:"structure"`
- }
- // String returns the string representation
- func (s CreateClusterSubnetGroupOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateClusterSubnetGroupOutput) GoString() string {
- return s.String()
- }
- type CreateEventSubscriptionInput struct {
- _ struct{} `type:"structure"`
- // A Boolean value; set to true to activate the subscription, set to false to
- // create the subscription but not active it.
- Enabled *bool `type:"boolean"`
- // Specifies the Amazon Redshift event categories to be published by the event
- // notification subscription.
- //
- // Values: Configuration, Management, Monitoring, Security
- EventCategories []*string `locationNameList:"EventCategory" type:"list"`
- // Specifies the Amazon Redshift event severity to be published by the event
- // notification subscription.
- //
- // Values: ERROR, INFO
- Severity *string `type:"string"`
- // The Amazon Resource Name (ARN) of the Amazon SNS topic used to transmit the
- // event notifications. The ARN is created by Amazon SNS when you create a topic
- // and subscribe to it.
- //
- // SnsTopicArn is a required field
- SnsTopicArn *string `type:"string" required:"true"`
- // A list of one or more identifiers of Amazon Redshift source objects. All
- // of the objects must be of the same type as was specified in the source type
- // parameter. The event subscription will return only events generated by the
- // specified objects. If not specified, then events are returned for all objects
- // within the source type specified.
- //
- // Example: my-cluster-1, my-cluster-2
- //
- // Example: my-snapshot-20131010
- SourceIds []*string `locationNameList:"SourceId" type:"list"`
- // The type of source that will be generating the events. For example, if you
- // want to be notified of events generated by a cluster, you would set this
- // parameter to cluster. If this value is not specified, events are returned
- // for all Amazon Redshift objects in your AWS account. You must specify a source
- // type in order to specify source IDs.
- //
- // Valid values: cluster, cluster-parameter-group, cluster-security-group, and
- // cluster-snapshot.
- SourceType *string `type:"string"`
- // The name of the event subscription to be created.
- //
- // Constraints:
- //
- // * Cannot be null, empty, or blank.
- //
- // * Must contain from 1 to 255 alphanumeric characters or hyphens.
- //
- // * First character must be a letter.
- //
- // * Cannot end with a hyphen or contain two consecutive hyphens.
- //
- // SubscriptionName is a required field
- SubscriptionName *string `type:"string" required:"true"`
- // A list of tag instances.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- }
- // String returns the string representation
- func (s CreateEventSubscriptionInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateEventSubscriptionInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateEventSubscriptionInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateEventSubscriptionInput"}
- if s.SnsTopicArn == nil {
- invalidParams.Add(request.NewErrParamRequired("SnsTopicArn"))
- }
- if s.SubscriptionName == nil {
- invalidParams.Add(request.NewErrParamRequired("SubscriptionName"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type CreateEventSubscriptionOutput struct {
- _ struct{} `type:"structure"`
- // Describes event subscriptions.
- EventSubscription *EventSubscription `type:"structure"`
- }
- // String returns the string representation
- func (s CreateEventSubscriptionOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateEventSubscriptionOutput) GoString() string {
- return s.String()
- }
- type CreateHsmClientCertificateInput struct {
- _ struct{} `type:"structure"`
- // The identifier to be assigned to the new HSM client certificate that the
- // cluster will use to connect to the HSM to use the database encryption keys.
- //
- // HsmClientCertificateIdentifier is a required field
- HsmClientCertificateIdentifier *string `type:"string" required:"true"`
- // A list of tag instances.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- }
- // String returns the string representation
- func (s CreateHsmClientCertificateInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateHsmClientCertificateInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateHsmClientCertificateInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateHsmClientCertificateInput"}
- if s.HsmClientCertificateIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("HsmClientCertificateIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type CreateHsmClientCertificateOutput struct {
- _ struct{} `type:"structure"`
- // Returns information about an HSM client certificate. The certificate is stored
- // in a secure Hardware Storage Module (HSM), and used by the Amazon Redshift
- // cluster to encrypt data files.
- HsmClientCertificate *HsmClientCertificate `type:"structure"`
- }
- // String returns the string representation
- func (s CreateHsmClientCertificateOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateHsmClientCertificateOutput) GoString() string {
- return s.String()
- }
- type CreateHsmConfigurationInput struct {
- _ struct{} `type:"structure"`
- // A text description of the HSM configuration to be created.
- //
- // Description is a required field
- Description *string `type:"string" required:"true"`
- // The identifier to be assigned to the new Amazon Redshift HSM configuration.
- //
- // HsmConfigurationIdentifier is a required field
- HsmConfigurationIdentifier *string `type:"string" required:"true"`
- // The IP address that the Amazon Redshift cluster must use to access the HSM.
- //
- // HsmIpAddress is a required field
- HsmIpAddress *string `type:"string" required:"true"`
- // The name of the partition in the HSM where the Amazon Redshift clusters will
- // store their database encryption keys.
- //
- // HsmPartitionName is a required field
- HsmPartitionName *string `type:"string" required:"true"`
- // The password required to access the HSM partition.
- //
- // HsmPartitionPassword is a required field
- HsmPartitionPassword *string `type:"string" required:"true"`
- // The HSMs public certificate file. When using Cloud HSM, the file name is
- // server.pem.
- //
- // HsmServerPublicCertificate is a required field
- HsmServerPublicCertificate *string `type:"string" required:"true"`
- // A list of tag instances.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- }
- // String returns the string representation
- func (s CreateHsmConfigurationInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateHsmConfigurationInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateHsmConfigurationInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateHsmConfigurationInput"}
- if s.Description == nil {
- invalidParams.Add(request.NewErrParamRequired("Description"))
- }
- if s.HsmConfigurationIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("HsmConfigurationIdentifier"))
- }
- if s.HsmIpAddress == nil {
- invalidParams.Add(request.NewErrParamRequired("HsmIpAddress"))
- }
- if s.HsmPartitionName == nil {
- invalidParams.Add(request.NewErrParamRequired("HsmPartitionName"))
- }
- if s.HsmPartitionPassword == nil {
- invalidParams.Add(request.NewErrParamRequired("HsmPartitionPassword"))
- }
- if s.HsmServerPublicCertificate == nil {
- invalidParams.Add(request.NewErrParamRequired("HsmServerPublicCertificate"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type CreateHsmConfigurationOutput struct {
- _ struct{} `type:"structure"`
- // Returns information about an HSM configuration, which is an object that describes
- // to Amazon Redshift clusters the information they require to connect to an
- // HSM where they can store database encryption keys.
- HsmConfiguration *HsmConfiguration `type:"structure"`
- }
- // String returns the string representation
- func (s CreateHsmConfigurationOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateHsmConfigurationOutput) GoString() string {
- return s.String()
- }
- // The result of the CreateSnapshotCopyGrant action.
- type CreateSnapshotCopyGrantInput struct {
- _ struct{} `type:"structure"`
- // The unique identifier of the customer master key (CMK) to which to grant
- // Amazon Redshift permission. If no key is specified, the default key is used.
- KmsKeyId *string `type:"string"`
- // The name of the snapshot copy grant. This name must be unique in the region
- // for the AWS account.
- //
- // Constraints:
- //
- // * Must contain from 1 to 63 alphanumeric characters or hyphens.
- //
- // * Alphabetic characters must be lowercase.
- //
- // * First character must be a letter.
- //
- // * Cannot end with a hyphen or contain two consecutive hyphens.
- //
- // * Must be unique for all clusters within an AWS account.
- //
- // SnapshotCopyGrantName is a required field
- SnapshotCopyGrantName *string `type:"string" required:"true"`
- // A list of tag instances.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- }
- // String returns the string representation
- func (s CreateSnapshotCopyGrantInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateSnapshotCopyGrantInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateSnapshotCopyGrantInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateSnapshotCopyGrantInput"}
- if s.SnapshotCopyGrantName == nil {
- invalidParams.Add(request.NewErrParamRequired("SnapshotCopyGrantName"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type CreateSnapshotCopyGrantOutput struct {
- _ struct{} `type:"structure"`
- // The snapshot copy grant that grants Amazon Redshift permission to encrypt
- // copied snapshots with the specified customer master key (CMK) from AWS KMS
- // in the destination region.
- //
- // For more information about managing snapshot copy grants, go to Amazon Redshift
- // Database Encryption (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-db-encryption.html)
- // in the Amazon Redshift Cluster Management Guide.
- SnapshotCopyGrant *SnapshotCopyGrant `type:"structure"`
- }
- // String returns the string representation
- func (s CreateSnapshotCopyGrantOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateSnapshotCopyGrantOutput) GoString() string {
- return s.String()
- }
- // Contains the output from the CreateTags action.
- type CreateTagsInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) to which you want to add the tag or tags.
- // For example, arn:aws:redshift:us-east-1:123456789:cluster:t1.
- //
- // ResourceName is a required field
- ResourceName *string `type:"string" required:"true"`
- // One or more name/value pairs to add as tags to the specified resource. Each
- // tag name is passed in with the parameter Key and the corresponding value
- // is passed in with the parameter Value. The Key and Value parameters are separated
- // by a comma (,). Separate multiple tags with a space. For example, --tags
- // "Key"="owner","Value"="admin" "Key"="environment","Value"="test" "Key"="version","Value"="1.0".
- //
- // Tags is a required field
- Tags []*Tag `locationNameList:"Tag" type:"list" required:"true"`
- }
- // String returns the string representation
- func (s CreateTagsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateTagsInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateTagsInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateTagsInput"}
- if s.ResourceName == nil {
- invalidParams.Add(request.NewErrParamRequired("ResourceName"))
- }
- if s.Tags == nil {
- invalidParams.Add(request.NewErrParamRequired("Tags"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type CreateTagsOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s CreateTagsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateTagsOutput) GoString() string {
- return s.String()
- }
- // Describes the default cluster parameters for a parameter group family.
- type DefaultClusterParameters struct {
- _ struct{} `type:"structure"`
- // A value that indicates the starting point for the next set of response records
- // in a subsequent request. If a value is returned in a response, you can retrieve
- // the next set of records by providing this returned marker value in the Marker
- // parameter and retrying the command. If the Marker field is empty, all response
- // records have been retrieved for the request.
- Marker *string `type:"string"`
- // The name of the cluster parameter group family to which the engine default
- // parameters apply.
- ParameterGroupFamily *string `type:"string"`
- // The list of cluster default parameters.
- Parameters []*Parameter `locationNameList:"Parameter" type:"list"`
- }
- // String returns the string representation
- func (s DefaultClusterParameters) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DefaultClusterParameters) GoString() string {
- return s.String()
- }
- type DeleteClusterInput struct {
- _ struct{} `type:"structure"`
- // The identifier of the cluster to be deleted.
- //
- // Constraints:
- //
- // * Must contain lowercase characters.
- //
- // * Must contain from 1 to 63 alphanumeric characters or hyphens.
- //
- // * First character must be a letter.
- //
- // * Cannot end with a hyphen or contain two consecutive hyphens.
- //
- // ClusterIdentifier is a required field
- ClusterIdentifier *string `type:"string" required:"true"`
- // The identifier of the final snapshot that is to be created immediately before
- // deleting the cluster. If this parameter is provided, SkipFinalClusterSnapshot
- // must be false.
- //
- // Constraints:
- //
- // * Must be 1 to 255 alphanumeric characters.
- //
- // * First character must be a letter.
- //
- // * Cannot end with a hyphen or contain two consecutive hyphens.
- FinalClusterSnapshotIdentifier *string `type:"string"`
- // Determines whether a final snapshot of the cluster is created before Amazon
- // Redshift deletes the cluster. If true, a final cluster snapshot is not created.
- // If false, a final cluster snapshot is created before the cluster is deleted.
- //
- // The FinalClusterSnapshotIdentifier parameter must be specified if SkipFinalClusterSnapshot
- // is false.
- //
- // Default: false
- SkipFinalClusterSnapshot *bool `type:"boolean"`
- }
- // String returns the string representation
- func (s DeleteClusterInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteClusterInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteClusterInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteClusterInput"}
- if s.ClusterIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type DeleteClusterOutput struct {
- _ struct{} `type:"structure"`
- // Describes a cluster.
- Cluster *Cluster `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteClusterOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteClusterOutput) GoString() string {
- return s.String()
- }
- type DeleteClusterParameterGroupInput struct {
- _ struct{} `type:"structure"`
- // The name of the parameter group to be deleted.
- //
- // Constraints:
- //
- // * Must be the name of an existing cluster parameter group.
- //
- // * Cannot delete a default cluster parameter group.
- //
- // ParameterGroupName is a required field
- ParameterGroupName *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DeleteClusterParameterGroupInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteClusterParameterGroupInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteClusterParameterGroupInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteClusterParameterGroupInput"}
- if s.ParameterGroupName == nil {
- invalidParams.Add(request.NewErrParamRequired("ParameterGroupName"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type DeleteClusterParameterGroupOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteClusterParameterGroupOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteClusterParameterGroupOutput) GoString() string {
- return s.String()
- }
- type DeleteClusterSecurityGroupInput struct {
- _ struct{} `type:"structure"`
- // The name of the cluster security group to be deleted.
- //
- // ClusterSecurityGroupName is a required field
- ClusterSecurityGroupName *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DeleteClusterSecurityGroupInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteClusterSecurityGroupInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteClusterSecurityGroupInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteClusterSecurityGroupInput"}
- if s.ClusterSecurityGroupName == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterSecurityGroupName"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type DeleteClusterSecurityGroupOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteClusterSecurityGroupOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteClusterSecurityGroupOutput) GoString() string {
- return s.String()
- }
- type DeleteClusterSnapshotInput struct {
- _ struct{} `type:"structure"`
- // The unique identifier of the cluster the snapshot was created from. This
- // parameter is required if your IAM user has a policy containing a snapshot
- // resource element that specifies anything other than * for the cluster name.
- //
- // Constraints: Must be the name of valid cluster.
- SnapshotClusterIdentifier *string `type:"string"`
- // The unique identifier of the manual snapshot to be deleted.
- //
- // Constraints: Must be the name of an existing snapshot that is in the available
- // state.
- //
- // SnapshotIdentifier is a required field
- SnapshotIdentifier *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DeleteClusterSnapshotInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteClusterSnapshotInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteClusterSnapshotInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteClusterSnapshotInput"}
- if s.SnapshotIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type DeleteClusterSnapshotOutput struct {
- _ struct{} `type:"structure"`
- // Describes a snapshot.
- Snapshot *Snapshot `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteClusterSnapshotOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteClusterSnapshotOutput) GoString() string {
- return s.String()
- }
- type DeleteClusterSubnetGroupInput struct {
- _ struct{} `type:"structure"`
- // The name of the cluster subnet group name to be deleted.
- //
- // ClusterSubnetGroupName is a required field
- ClusterSubnetGroupName *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DeleteClusterSubnetGroupInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteClusterSubnetGroupInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteClusterSubnetGroupInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteClusterSubnetGroupInput"}
- if s.ClusterSubnetGroupName == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterSubnetGroupName"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type DeleteClusterSubnetGroupOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteClusterSubnetGroupOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteClusterSubnetGroupOutput) GoString() string {
- return s.String()
- }
- type DeleteEventSubscriptionInput struct {
- _ struct{} `type:"structure"`
- // The name of the Amazon Redshift event notification subscription to be deleted.
- //
- // SubscriptionName is a required field
- SubscriptionName *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DeleteEventSubscriptionInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteEventSubscriptionInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteEventSubscriptionInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteEventSubscriptionInput"}
- if s.SubscriptionName == nil {
- invalidParams.Add(request.NewErrParamRequired("SubscriptionName"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type DeleteEventSubscriptionOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteEventSubscriptionOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteEventSubscriptionOutput) GoString() string {
- return s.String()
- }
- type DeleteHsmClientCertificateInput struct {
- _ struct{} `type:"structure"`
- // The identifier of the HSM client certificate to be deleted.
- //
- // HsmClientCertificateIdentifier is a required field
- HsmClientCertificateIdentifier *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DeleteHsmClientCertificateInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteHsmClientCertificateInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteHsmClientCertificateInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteHsmClientCertificateInput"}
- if s.HsmClientCertificateIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("HsmClientCertificateIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type DeleteHsmClientCertificateOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteHsmClientCertificateOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteHsmClientCertificateOutput) GoString() string {
- return s.String()
- }
- type DeleteHsmConfigurationInput struct {
- _ struct{} `type:"structure"`
- // The identifier of the Amazon Redshift HSM configuration to be deleted.
- //
- // HsmConfigurationIdentifier is a required field
- HsmConfigurationIdentifier *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DeleteHsmConfigurationInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteHsmConfigurationInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteHsmConfigurationInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteHsmConfigurationInput"}
- if s.HsmConfigurationIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("HsmConfigurationIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type DeleteHsmConfigurationOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteHsmConfigurationOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteHsmConfigurationOutput) GoString() string {
- return s.String()
- }
- // The result of the DeleteSnapshotCopyGrant action.
- type DeleteSnapshotCopyGrantInput struct {
- _ struct{} `type:"structure"`
- // The name of the snapshot copy grant to delete.
- //
- // SnapshotCopyGrantName is a required field
- SnapshotCopyGrantName *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DeleteSnapshotCopyGrantInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteSnapshotCopyGrantInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteSnapshotCopyGrantInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteSnapshotCopyGrantInput"}
- if s.SnapshotCopyGrantName == nil {
- invalidParams.Add(request.NewErrParamRequired("SnapshotCopyGrantName"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type DeleteSnapshotCopyGrantOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteSnapshotCopyGrantOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteSnapshotCopyGrantOutput) GoString() string {
- return s.String()
- }
- // Contains the output from the DeleteTags action.
- type DeleteTagsInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) from which you want to remove the tag or tags.
- // For example, arn:aws:redshift:us-east-1:123456789:cluster:t1.
- //
- // ResourceName is a required field
- ResourceName *string `type:"string" required:"true"`
- // The tag key that you want to delete.
- //
- // TagKeys is a required field
- TagKeys []*string `locationNameList:"TagKey" type:"list" required:"true"`
- }
- // String returns the string representation
- func (s DeleteTagsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteTagsInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteTagsInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteTagsInput"}
- if s.ResourceName == nil {
- invalidParams.Add(request.NewErrParamRequired("ResourceName"))
- }
- if s.TagKeys == nil {
- invalidParams.Add(request.NewErrParamRequired("TagKeys"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type DeleteTagsOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteTagsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteTagsOutput) GoString() string {
- return s.String()
- }
- type DescribeClusterParameterGroupsInput struct {
- _ struct{} `type:"structure"`
- // An optional parameter that specifies the starting point to return a set of
- // response records. When the results of a DescribeClusterParameterGroups request
- // exceed the value specified in MaxRecords, AWS returns a value in the Marker
- // field of the response. You can retrieve the next set of response records
- // by providing the returned marker value in the Marker parameter and retrying
- // the request.
- Marker *string `type:"string"`
- // The maximum number of response records to return in each call. If the number
- // of remaining response records exceeds the specified MaxRecords value, a value
- // is returned in a marker field of the response. You can retrieve the next
- // set of records by retrying the command with the returned marker value.
- //
- // Default: 100
- //
- // Constraints: minimum 20, maximum 100.
- MaxRecords *int64 `type:"integer"`
- // The name of a specific parameter group for which to return details. By default,
- // details about all parameter groups and the default parameter group are returned.
- ParameterGroupName *string `type:"string"`
- // A tag key or keys for which you want to return all matching cluster parameter
- // groups that are associated with the specified key or keys. For example, suppose
- // that you have parameter groups that are tagged with keys called owner and
- // environment. If you specify both of these tag keys in the request, Amazon
- // Redshift returns a response with the parameter groups that have either or
- // both of these tag keys associated with them.
- TagKeys []*string `locationNameList:"TagKey" type:"list"`
- // A tag value or values for which you want to return all matching cluster parameter
- // groups that are associated with the specified tag value or values. For example,
- // suppose that you have parameter groups that are tagged with values called
- // admin and test. If you specify both of these tag values in the request, Amazon
- // Redshift returns a response with the parameter groups that have either or
- // both of these tag values associated with them.
- TagValues []*string `locationNameList:"TagValue" type:"list"`
- }
- // String returns the string representation
- func (s DescribeClusterParameterGroupsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeClusterParameterGroupsInput) GoString() string {
- return s.String()
- }
- // Contains the output from the DescribeClusterParameterGroups action.
- type DescribeClusterParameterGroupsOutput struct {
- _ struct{} `type:"structure"`
- // A value that indicates the starting point for the next set of response records
- // in a subsequent request. If a value is returned in a response, you can retrieve
- // the next set of records by providing this returned marker value in the Marker
- // parameter and retrying the command. If the Marker field is empty, all response
- // records have been retrieved for the request.
- Marker *string `type:"string"`
- // A list of ClusterParameterGroup instances. Each instance describes one cluster
- // parameter group.
- ParameterGroups []*ClusterParameterGroup `locationNameList:"ClusterParameterGroup" type:"list"`
- }
- // String returns the string representation
- func (s DescribeClusterParameterGroupsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeClusterParameterGroupsOutput) GoString() string {
- return s.String()
- }
- type DescribeClusterParametersInput struct {
- _ struct{} `type:"structure"`
- // An optional parameter that specifies the starting point to return a set of
- // response records. When the results of a DescribeClusterParameters request
- // exceed the value specified in MaxRecords, AWS returns a value in the Marker
- // field of the response. You can retrieve the next set of response records
- // by providing the returned marker value in the Marker parameter and retrying
- // the request.
- Marker *string `type:"string"`
- // The maximum number of response records to return in each call. If the number
- // of remaining response records exceeds the specified MaxRecords value, a value
- // is returned in a marker field of the response. You can retrieve the next
- // set of records by retrying the command with the returned marker value.
- //
- // Default: 100
- //
- // Constraints: minimum 20, maximum 100.
- MaxRecords *int64 `type:"integer"`
- // The name of a cluster parameter group for which to return details.
- //
- // ParameterGroupName is a required field
- ParameterGroupName *string `type:"string" required:"true"`
- // The parameter types to return. Specify user to show parameters that are different
- // form the default. Similarly, specify engine-default to show parameters that
- // are the same as the default parameter group.
- //
- // Default: All parameter types returned.
- //
- // Valid Values: user | engine-default
- Source *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeClusterParametersInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeClusterParametersInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DescribeClusterParametersInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DescribeClusterParametersInput"}
- if s.ParameterGroupName == nil {
- invalidParams.Add(request.NewErrParamRequired("ParameterGroupName"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output from the DescribeClusterParameters action.
- type DescribeClusterParametersOutput struct {
- _ struct{} `type:"structure"`
- // A value that indicates the starting point for the next set of response records
- // in a subsequent request. If a value is returned in a response, you can retrieve
- // the next set of records by providing this returned marker value in the Marker
- // parameter and retrying the command. If the Marker field is empty, all response
- // records have been retrieved for the request.
- Marker *string `type:"string"`
- // A list of Parameter instances. Each instance lists the parameters of one
- // cluster parameter group.
- Parameters []*Parameter `locationNameList:"Parameter" type:"list"`
- }
- // String returns the string representation
- func (s DescribeClusterParametersOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeClusterParametersOutput) GoString() string {
- return s.String()
- }
- type DescribeClusterSecurityGroupsInput struct {
- _ struct{} `type:"structure"`
- // The name of a cluster security group for which you are requesting details.
- // You can specify either the Marker parameter or a ClusterSecurityGroupName
- // parameter, but not both.
- //
- // Example: securitygroup1
- ClusterSecurityGroupName *string `type:"string"`
- // An optional parameter that specifies the starting point to return a set of
- // response records. When the results of a DescribeClusterSecurityGroups request
- // exceed the value specified in MaxRecords, AWS returns a value in the Marker
- // field of the response. You can retrieve the next set of response records
- // by providing the returned marker value in the Marker parameter and retrying
- // the request.
- //
- // Constraints: You can specify either the ClusterSecurityGroupName parameter
- // or the Marker parameter, but not both.
- Marker *string `type:"string"`
- // The maximum number of response records to return in each call. If the number
- // of remaining response records exceeds the specified MaxRecords value, a value
- // is returned in a marker field of the response. You can retrieve the next
- // set of records by retrying the command with the returned marker value.
- //
- // Default: 100
- //
- // Constraints: minimum 20, maximum 100.
- MaxRecords *int64 `type:"integer"`
- // A tag key or keys for which you want to return all matching cluster security
- // groups that are associated with the specified key or keys. For example, suppose
- // that you have security groups that are tagged with keys called owner and
- // environment. If you specify both of these tag keys in the request, Amazon
- // Redshift returns a response with the security groups that have either or
- // both of these tag keys associated with them.
- TagKeys []*string `locationNameList:"TagKey" type:"list"`
- // A tag value or values for which you want to return all matching cluster security
- // groups that are associated with the specified tag value or values. For example,
- // suppose that you have security groups that are tagged with values called
- // admin and test. If you specify both of these tag values in the request, Amazon
- // Redshift returns a response with the security groups that have either or
- // both of these tag values associated with them.
- TagValues []*string `locationNameList:"TagValue" type:"list"`
- }
- // String returns the string representation
- func (s DescribeClusterSecurityGroupsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeClusterSecurityGroupsInput) GoString() string {
- return s.String()
- }
- type DescribeClusterSecurityGroupsOutput struct {
- _ struct{} `type:"structure"`
- // A list of ClusterSecurityGroup instances.
- ClusterSecurityGroups []*ClusterSecurityGroup `locationNameList:"ClusterSecurityGroup" type:"list"`
- // A value that indicates the starting point for the next set of response records
- // in a subsequent request. If a value is returned in a response, you can retrieve
- // the next set of records by providing this returned marker value in the Marker
- // parameter and retrying the command. If the Marker field is empty, all response
- // records have been retrieved for the request.
- Marker *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeClusterSecurityGroupsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeClusterSecurityGroupsOutput) GoString() string {
- return s.String()
- }
- type DescribeClusterSnapshotsInput struct {
- _ struct{} `type:"structure"`
- // The identifier of the cluster for which information about snapshots is requested.
- ClusterIdentifier *string `type:"string"`
- // A time value that requests only snapshots created at or before the specified
- // time. The time value is specified in ISO 8601 format. For more information
- // about ISO 8601, go to the ISO8601 Wikipedia page. (http://en.wikipedia.org/wiki/ISO_8601)
- //
- // Example: 2012-07-16T18:00:00Z
- EndTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
- // An optional parameter that specifies the starting point to return a set of
- // response records. When the results of a DescribeClusterSnapshots request
- // exceed the value specified in MaxRecords, AWS returns a value in the Marker
- // field of the response. You can retrieve the next set of response records
- // by providing the returned marker value in the Marker parameter and retrying
- // the request.
- Marker *string `type:"string"`
- // The maximum number of response records to return in each call. If the number
- // of remaining response records exceeds the specified MaxRecords value, a value
- // is returned in a marker field of the response. You can retrieve the next
- // set of records by retrying the command with the returned marker value.
- //
- // Default: 100
- //
- // Constraints: minimum 20, maximum 100.
- MaxRecords *int64 `type:"integer"`
- // The AWS customer account used to create or copy the snapshot. Use this field
- // to filter the results to snapshots owned by a particular account. To describe
- // snapshots you own, either specify your AWS customer account, or do not specify
- // the parameter.
- OwnerAccount *string `type:"string"`
- // The snapshot identifier of the snapshot about which to return information.
- SnapshotIdentifier *string `type:"string"`
- // The type of snapshots for which you are requesting information. By default,
- // snapshots of all types are returned.
- //
- // Valid Values: automated | manual
- SnapshotType *string `type:"string"`
- // A value that requests only snapshots created at or after the specified time.
- // The time value is specified in ISO 8601 format. For more information about
- // ISO 8601, go to the ISO8601 Wikipedia page. (http://en.wikipedia.org/wiki/ISO_8601)
- //
- // Example: 2012-07-16T18:00:00Z
- StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
- // A tag key or keys for which you want to return all matching cluster snapshots
- // that are associated with the specified key or keys. For example, suppose
- // that you have snapshots that are tagged with keys called owner and environment.
- // If you specify both of these tag keys in the request, Amazon Redshift returns
- // a response with the snapshots that have either or both of these tag keys
- // associated with them.
- TagKeys []*string `locationNameList:"TagKey" type:"list"`
- // A tag value or values for which you want to return all matching cluster snapshots
- // that are associated with the specified tag value or values. For example,
- // suppose that you have snapshots that are tagged with values called admin
- // and test. If you specify both of these tag values in the request, Amazon
- // Redshift returns a response with the snapshots that have either or both of
- // these tag values associated with them.
- TagValues []*string `locationNameList:"TagValue" type:"list"`
- }
- // String returns the string representation
- func (s DescribeClusterSnapshotsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeClusterSnapshotsInput) GoString() string {
- return s.String()
- }
- // Contains the output from the DescribeClusterSnapshots action.
- type DescribeClusterSnapshotsOutput struct {
- _ struct{} `type:"structure"`
- // A value that indicates the starting point for the next set of response records
- // in a subsequent request. If a value is returned in a response, you can retrieve
- // the next set of records by providing this returned marker value in the Marker
- // parameter and retrying the command. If the Marker field is empty, all response
- // records have been retrieved for the request.
- Marker *string `type:"string"`
- // A list of Snapshot instances.
- Snapshots []*Snapshot `locationNameList:"Snapshot" type:"list"`
- }
- // String returns the string representation
- func (s DescribeClusterSnapshotsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeClusterSnapshotsOutput) GoString() string {
- return s.String()
- }
- type DescribeClusterSubnetGroupsInput struct {
- _ struct{} `type:"structure"`
- // The name of the cluster subnet group for which information is requested.
- ClusterSubnetGroupName *string `type:"string"`
- // An optional parameter that specifies the starting point to return a set of
- // response records. When the results of a DescribeClusterSubnetGroups request
- // exceed the value specified in MaxRecords, AWS returns a value in the Marker
- // field of the response. You can retrieve the next set of response records
- // by providing the returned marker value in the Marker parameter and retrying
- // the request.
- Marker *string `type:"string"`
- // The maximum number of response records to return in each call. If the number
- // of remaining response records exceeds the specified MaxRecords value, a value
- // is returned in a marker field of the response. You can retrieve the next
- // set of records by retrying the command with the returned marker value.
- //
- // Default: 100
- //
- // Constraints: minimum 20, maximum 100.
- MaxRecords *int64 `type:"integer"`
- // A tag key or keys for which you want to return all matching cluster subnet
- // groups that are associated with the specified key or keys. For example, suppose
- // that you have subnet groups that are tagged with keys called owner and environment.
- // If you specify both of these tag keys in the request, Amazon Redshift returns
- // a response with the subnet groups that have either or both of these tag keys
- // associated with them.
- TagKeys []*string `locationNameList:"TagKey" type:"list"`
- // A tag value or values for which you want to return all matching cluster subnet
- // groups that are associated with the specified tag value or values. For example,
- // suppose that you have subnet groups that are tagged with values called admin
- // and test. If you specify both of these tag values in the request, Amazon
- // Redshift returns a response with the subnet groups that have either or both
- // of these tag values associated with them.
- TagValues []*string `locationNameList:"TagValue" type:"list"`
- }
- // String returns the string representation
- func (s DescribeClusterSubnetGroupsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeClusterSubnetGroupsInput) GoString() string {
- return s.String()
- }
- // Contains the output from the DescribeClusterSubnetGroups action.
- type DescribeClusterSubnetGroupsOutput struct {
- _ struct{} `type:"structure"`
- // A list of ClusterSubnetGroup instances.
- ClusterSubnetGroups []*ClusterSubnetGroup `locationNameList:"ClusterSubnetGroup" type:"list"`
- // A value that indicates the starting point for the next set of response records
- // in a subsequent request. If a value is returned in a response, you can retrieve
- // the next set of records by providing this returned marker value in the Marker
- // parameter and retrying the command. If the Marker field is empty, all response
- // records have been retrieved for the request.
- Marker *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeClusterSubnetGroupsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeClusterSubnetGroupsOutput) GoString() string {
- return s.String()
- }
- type DescribeClusterVersionsInput struct {
- _ struct{} `type:"structure"`
- // The name of a specific cluster parameter group family to return details for.
- //
- // Constraints:
- //
- // * Must be 1 to 255 alphanumeric characters
- //
- // * First character must be a letter
- //
- // * Cannot end with a hyphen or contain two consecutive hyphens
- ClusterParameterGroupFamily *string `type:"string"`
- // The specific cluster version to return.
- //
- // Example: 1.0
- ClusterVersion *string `type:"string"`
- // An optional parameter that specifies the starting point to return a set of
- // response records. When the results of a DescribeClusterVersions request exceed
- // the value specified in MaxRecords, AWS returns a value in the Marker field
- // of the response. You can retrieve the next set of response records by providing
- // the returned marker value in the Marker parameter and retrying the request.
- Marker *string `type:"string"`
- // The maximum number of response records to return in each call. If the number
- // of remaining response records exceeds the specified MaxRecords value, a value
- // is returned in a marker field of the response. You can retrieve the next
- // set of records by retrying the command with the returned marker value.
- //
- // Default: 100
- //
- // Constraints: minimum 20, maximum 100.
- MaxRecords *int64 `type:"integer"`
- }
- // String returns the string representation
- func (s DescribeClusterVersionsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeClusterVersionsInput) GoString() string {
- return s.String()
- }
- // Contains the output from the DescribeClusterVersions action.
- type DescribeClusterVersionsOutput struct {
- _ struct{} `type:"structure"`
- // A list of Version elements.
- ClusterVersions []*ClusterVersion `locationNameList:"ClusterVersion" type:"list"`
- // A value that indicates the starting point for the next set of response records
- // in a subsequent request. If a value is returned in a response, you can retrieve
- // the next set of records by providing this returned marker value in the Marker
- // parameter and retrying the command. If the Marker field is empty, all response
- // records have been retrieved for the request.
- Marker *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeClusterVersionsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeClusterVersionsOutput) GoString() string {
- return s.String()
- }
- type DescribeClustersInput struct {
- _ struct{} `type:"structure"`
- // The unique identifier of a cluster whose properties you are requesting. This
- // parameter is case sensitive.
- //
- // The default is that all clusters defined for an account are returned.
- ClusterIdentifier *string `type:"string"`
- // An optional parameter that specifies the starting point to return a set of
- // response records. When the results of a DescribeClusters request exceed the
- // value specified in MaxRecords, AWS returns a value in the Marker field of
- // the response. You can retrieve the next set of response records by providing
- // the returned marker value in the Marker parameter and retrying the request.
- //
- // Constraints: You can specify either the ClusterIdentifier parameter or the
- // Marker parameter, but not both.
- Marker *string `type:"string"`
- // The maximum number of response records to return in each call. If the number
- // of remaining response records exceeds the specified MaxRecords value, a value
- // is returned in a marker field of the response. You can retrieve the next
- // set of records by retrying the command with the returned marker value.
- //
- // Default: 100
- //
- // Constraints: minimum 20, maximum 100.
- MaxRecords *int64 `type:"integer"`
- // A tag key or keys for which you want to return all matching clusters that
- // are associated with the specified key or keys. For example, suppose that
- // you have clusters that are tagged with keys called owner and environment.
- // If you specify both of these tag keys in the request, Amazon Redshift returns
- // a response with the clusters that have either or both of these tag keys associated
- // with them.
- TagKeys []*string `locationNameList:"TagKey" type:"list"`
- // A tag value or values for which you want to return all matching clusters
- // that are associated with the specified tag value or values. For example,
- // suppose that you have clusters that are tagged with values called admin and
- // test. If you specify both of these tag values in the request, Amazon Redshift
- // returns a response with the clusters that have either or both of these tag
- // values associated with them.
- TagValues []*string `locationNameList:"TagValue" type:"list"`
- }
- // String returns the string representation
- func (s DescribeClustersInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeClustersInput) GoString() string {
- return s.String()
- }
- // Contains the output from the DescribeClusters action.
- type DescribeClustersOutput struct {
- _ struct{} `type:"structure"`
- // A list of Cluster objects, where each object describes one cluster.
- Clusters []*Cluster `locationNameList:"Cluster" type:"list"`
- // A value that indicates the starting point for the next set of response records
- // in a subsequent request. If a value is returned in a response, you can retrieve
- // the next set of records by providing this returned marker value in the Marker
- // parameter and retrying the command. If the Marker field is empty, all response
- // records have been retrieved for the request.
- Marker *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeClustersOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeClustersOutput) GoString() string {
- return s.String()
- }
- type DescribeDefaultClusterParametersInput struct {
- _ struct{} `type:"structure"`
- // An optional parameter that specifies the starting point to return a set of
- // response records. When the results of a DescribeDefaultClusterParameters
- // request exceed the value specified in MaxRecords, AWS returns a value in
- // the Marker field of the response. You can retrieve the next set of response
- // records by providing the returned marker value in the Marker parameter and
- // retrying the request.
- Marker *string `type:"string"`
- // The maximum number of response records to return in each call. If the number
- // of remaining response records exceeds the specified MaxRecords value, a value
- // is returned in a marker field of the response. You can retrieve the next
- // set of records by retrying the command with the returned marker value.
- //
- // Default: 100
- //
- // Constraints: minimum 20, maximum 100.
- MaxRecords *int64 `type:"integer"`
- // The name of the cluster parameter group family.
- //
- // ParameterGroupFamily is a required field
- ParameterGroupFamily *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DescribeDefaultClusterParametersInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeDefaultClusterParametersInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DescribeDefaultClusterParametersInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DescribeDefaultClusterParametersInput"}
- if s.ParameterGroupFamily == nil {
- invalidParams.Add(request.NewErrParamRequired("ParameterGroupFamily"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type DescribeDefaultClusterParametersOutput struct {
- _ struct{} `type:"structure"`
- // Describes the default cluster parameters for a parameter group family.
- DefaultClusterParameters *DefaultClusterParameters `type:"structure"`
- }
- // String returns the string representation
- func (s DescribeDefaultClusterParametersOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeDefaultClusterParametersOutput) GoString() string {
- return s.String()
- }
- type DescribeEventCategoriesInput struct {
- _ struct{} `type:"structure"`
- // The source type, such as cluster or parameter group, to which the described
- // event categories apply.
- //
- // Valid values: cluster, cluster-snapshot, cluster-parameter-group, and cluster-security-group.
- SourceType *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeEventCategoriesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeEventCategoriesInput) GoString() string {
- return s.String()
- }
- type DescribeEventCategoriesOutput struct {
- _ struct{} `type:"structure"`
- // A list of event categories descriptions.
- EventCategoriesMapList []*EventCategoriesMap `locationNameList:"EventCategoriesMap" type:"list"`
- }
- // String returns the string representation
- func (s DescribeEventCategoriesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeEventCategoriesOutput) GoString() string {
- return s.String()
- }
- type DescribeEventSubscriptionsInput struct {
- _ struct{} `type:"structure"`
- // An optional parameter that specifies the starting point to return a set of
- // response records. When the results of a DescribeEventSubscriptions request
- // exceed the value specified in MaxRecords, AWS returns a value in the Marker
- // field of the response. You can retrieve the next set of response records
- // by providing the returned marker value in the Marker parameter and retrying
- // the request.
- Marker *string `type:"string"`
- // The maximum number of response records to return in each call. If the number
- // of remaining response records exceeds the specified MaxRecords value, a value
- // is returned in a marker field of the response. You can retrieve the next
- // set of records by retrying the command with the returned marker value.
- //
- // Default: 100
- //
- // Constraints: minimum 20, maximum 100.
- MaxRecords *int64 `type:"integer"`
- // The name of the Amazon Redshift event notification subscription to be described.
- SubscriptionName *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeEventSubscriptionsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeEventSubscriptionsInput) GoString() string {
- return s.String()
- }
- type DescribeEventSubscriptionsOutput struct {
- _ struct{} `type:"structure"`
- // A list of event subscriptions.
- EventSubscriptionsList []*EventSubscription `locationNameList:"EventSubscription" type:"list"`
- // A value that indicates the starting point for the next set of response records
- // in a subsequent request. If a value is returned in a response, you can retrieve
- // the next set of records by providing this returned marker value in the Marker
- // parameter and retrying the command. If the Marker field is empty, all response
- // records have been retrieved for the request.
- Marker *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeEventSubscriptionsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeEventSubscriptionsOutput) GoString() string {
- return s.String()
- }
- type DescribeEventsInput struct {
- _ struct{} `type:"structure"`
- // The number of minutes prior to the time of the request for which to retrieve
- // events. For example, if the request is sent at 18:00 and you specify a duration
- // of 60, then only events which have occurred after 17:00 will be returned.
- //
- // Default: 60
- Duration *int64 `type:"integer"`
- // The end of the time interval for which to retrieve events, specified in ISO
- // 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia
- // page. (http://en.wikipedia.org/wiki/ISO_8601)
- //
- // Example: 2009-07-08T18:00Z
- EndTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
- // An optional parameter that specifies the starting point to return a set of
- // response records. When the results of a DescribeEvents request exceed the
- // value specified in MaxRecords, AWS returns a value in the Marker field of
- // the response. You can retrieve the next set of response records by providing
- // the returned marker value in the Marker parameter and retrying the request.
- Marker *string `type:"string"`
- // The maximum number of response records to return in each call. If the number
- // of remaining response records exceeds the specified MaxRecords value, a value
- // is returned in a marker field of the response. You can retrieve the next
- // set of records by retrying the command with the returned marker value.
- //
- // Default: 100
- //
- // Constraints: minimum 20, maximum 100.
- MaxRecords *int64 `type:"integer"`
- // The identifier of the event source for which events will be returned. If
- // this parameter is not specified, then all sources are included in the response.
- //
- // Constraints:
- //
- // If SourceIdentifier is supplied, SourceType must also be provided.
- //
- // * Specify a cluster identifier when SourceType is cluster.
- //
- // * Specify a cluster security group name when SourceType is cluster-security-group.
- //
- // * Specify a cluster parameter group name when SourceType is cluster-parameter-group.
- //
- // * Specify a cluster snapshot identifier when SourceType is cluster-snapshot.
- SourceIdentifier *string `type:"string"`
- // The event source to retrieve events for. If no value is specified, all events
- // are returned.
- //
- // Constraints:
- //
- // If SourceType is supplied, SourceIdentifier must also be provided.
- //
- // * Specify cluster when SourceIdentifier is a cluster identifier.
- //
- // * Specify cluster-security-group when SourceIdentifier is a cluster security
- // group name.
- //
- // * Specify cluster-parameter-group when SourceIdentifier is a cluster parameter
- // group name.
- //
- // * Specify cluster-snapshot when SourceIdentifier is a cluster snapshot
- // identifier.
- SourceType *string `type:"string" enum:"SourceType"`
- // The beginning of the time interval to retrieve events for, specified in ISO
- // 8601 format. For more information about ISO 8601, go to the ISO8601 Wikipedia
- // page. (http://en.wikipedia.org/wiki/ISO_8601)
- //
- // Example: 2009-07-08T18:00Z
- StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
- }
- // String returns the string representation
- func (s DescribeEventsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeEventsInput) GoString() string {
- return s.String()
- }
- type DescribeEventsOutput struct {
- _ struct{} `type:"structure"`
- // A list of Event instances.
- Events []*Event `locationNameList:"Event" type:"list"`
- // A value that indicates the starting point for the next set of response records
- // in a subsequent request. If a value is returned in a response, you can retrieve
- // the next set of records by providing this returned marker value in the Marker
- // parameter and retrying the command. If the Marker field is empty, all response
- // records have been retrieved for the request.
- Marker *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeEventsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeEventsOutput) GoString() string {
- return s.String()
- }
- type DescribeHsmClientCertificatesInput struct {
- _ struct{} `type:"structure"`
- // The identifier of a specific HSM client certificate for which you want information.
- // If no identifier is specified, information is returned for all HSM client
- // certificates owned by your AWS customer account.
- HsmClientCertificateIdentifier *string `type:"string"`
- // An optional parameter that specifies the starting point to return a set of
- // response records. When the results of a DescribeHsmClientCertificates request
- // exceed the value specified in MaxRecords, AWS returns a value in the Marker
- // field of the response. You can retrieve the next set of response records
- // by providing the returned marker value in the Marker parameter and retrying
- // the request.
- Marker *string `type:"string"`
- // The maximum number of response records to return in each call. If the number
- // of remaining response records exceeds the specified MaxRecords value, a value
- // is returned in a marker field of the response. You can retrieve the next
- // set of records by retrying the command with the returned marker value.
- //
- // Default: 100
- //
- // Constraints: minimum 20, maximum 100.
- MaxRecords *int64 `type:"integer"`
- // A tag key or keys for which you want to return all matching HSM client certificates
- // that are associated with the specified key or keys. For example, suppose
- // that you have HSM client certificates that are tagged with keys called owner
- // and environment. If you specify both of these tag keys in the request, Amazon
- // Redshift returns a response with the HSM client certificates that have either
- // or both of these tag keys associated with them.
- TagKeys []*string `locationNameList:"TagKey" type:"list"`
- // A tag value or values for which you want to return all matching HSM client
- // certificates that are associated with the specified tag value or values.
- // For example, suppose that you have HSM client certificates that are tagged
- // with values called admin and test. If you specify both of these tag values
- // in the request, Amazon Redshift returns a response with the HSM client certificates
- // that have either or both of these tag values associated with them.
- TagValues []*string `locationNameList:"TagValue" type:"list"`
- }
- // String returns the string representation
- func (s DescribeHsmClientCertificatesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeHsmClientCertificatesInput) GoString() string {
- return s.String()
- }
- type DescribeHsmClientCertificatesOutput struct {
- _ struct{} `type:"structure"`
- // A list of the identifiers for one or more HSM client certificates used by
- // Amazon Redshift clusters to store and retrieve database encryption keys in
- // an HSM.
- HsmClientCertificates []*HsmClientCertificate `locationNameList:"HsmClientCertificate" type:"list"`
- // A value that indicates the starting point for the next set of response records
- // in a subsequent request. If a value is returned in a response, you can retrieve
- // the next set of records by providing this returned marker value in the Marker
- // parameter and retrying the command. If the Marker field is empty, all response
- // records have been retrieved for the request.
- Marker *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeHsmClientCertificatesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeHsmClientCertificatesOutput) GoString() string {
- return s.String()
- }
- type DescribeHsmConfigurationsInput struct {
- _ struct{} `type:"structure"`
- // The identifier of a specific Amazon Redshift HSM configuration to be described.
- // If no identifier is specified, information is returned for all HSM configurations
- // owned by your AWS customer account.
- HsmConfigurationIdentifier *string `type:"string"`
- // An optional parameter that specifies the starting point to return a set of
- // response records. When the results of a DescribeHsmConfigurations request
- // exceed the value specified in MaxRecords, AWS returns a value in the Marker
- // field of the response. You can retrieve the next set of response records
- // by providing the returned marker value in the Marker parameter and retrying
- // the request.
- Marker *string `type:"string"`
- // The maximum number of response records to return in each call. If the number
- // of remaining response records exceeds the specified MaxRecords value, a value
- // is returned in a marker field of the response. You can retrieve the next
- // set of records by retrying the command with the returned marker value.
- //
- // Default: 100
- //
- // Constraints: minimum 20, maximum 100.
- MaxRecords *int64 `type:"integer"`
- // A tag key or keys for which you want to return all matching HSM configurations
- // that are associated with the specified key or keys. For example, suppose
- // that you have HSM configurations that are tagged with keys called owner and
- // environment. If you specify both of these tag keys in the request, Amazon
- // Redshift returns a response with the HSM configurations that have either
- // or both of these tag keys associated with them.
- TagKeys []*string `locationNameList:"TagKey" type:"list"`
- // A tag value or values for which you want to return all matching HSM configurations
- // that are associated with the specified tag value or values. For example,
- // suppose that you have HSM configurations that are tagged with values called
- // admin and test. If you specify both of these tag values in the request, Amazon
- // Redshift returns a response with the HSM configurations that have either
- // or both of these tag values associated with them.
- TagValues []*string `locationNameList:"TagValue" type:"list"`
- }
- // String returns the string representation
- func (s DescribeHsmConfigurationsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeHsmConfigurationsInput) GoString() string {
- return s.String()
- }
- type DescribeHsmConfigurationsOutput struct {
- _ struct{} `type:"structure"`
- // A list of HsmConfiguration objects.
- HsmConfigurations []*HsmConfiguration `locationNameList:"HsmConfiguration" type:"list"`
- // A value that indicates the starting point for the next set of response records
- // in a subsequent request. If a value is returned in a response, you can retrieve
- // the next set of records by providing this returned marker value in the Marker
- // parameter and retrying the command. If the Marker field is empty, all response
- // records have been retrieved for the request.
- Marker *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeHsmConfigurationsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeHsmConfigurationsOutput) GoString() string {
- return s.String()
- }
- type DescribeLoggingStatusInput struct {
- _ struct{} `type:"structure"`
- // The identifier of the cluster from which to get the logging status.
- //
- // Example: examplecluster
- //
- // ClusterIdentifier is a required field
- ClusterIdentifier *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DescribeLoggingStatusInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeLoggingStatusInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DescribeLoggingStatusInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DescribeLoggingStatusInput"}
- if s.ClusterIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type DescribeOrderableClusterOptionsInput struct {
- _ struct{} `type:"structure"`
- // The version filter value. Specify this parameter to show only the available
- // offerings matching the specified version.
- //
- // Default: All versions.
- //
- // Constraints: Must be one of the version returned from DescribeClusterVersions.
- ClusterVersion *string `type:"string"`
- // An optional parameter that specifies the starting point to return a set of
- // response records. When the results of a DescribeOrderableClusterOptions request
- // exceed the value specified in MaxRecords, AWS returns a value in the Marker
- // field of the response. You can retrieve the next set of response records
- // by providing the returned marker value in the Marker parameter and retrying
- // the request.
- Marker *string `type:"string"`
- // The maximum number of response records to return in each call. If the number
- // of remaining response records exceeds the specified MaxRecords value, a value
- // is returned in a marker field of the response. You can retrieve the next
- // set of records by retrying the command with the returned marker value.
- //
- // Default: 100
- //
- // Constraints: minimum 20, maximum 100.
- MaxRecords *int64 `type:"integer"`
- // The node type filter value. Specify this parameter to show only the available
- // offerings matching the specified node type.
- NodeType *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeOrderableClusterOptionsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeOrderableClusterOptionsInput) GoString() string {
- return s.String()
- }
- // Contains the output from the DescribeOrderableClusterOptions action.
- type DescribeOrderableClusterOptionsOutput struct {
- _ struct{} `type:"structure"`
- // A value that indicates the starting point for the next set of response records
- // in a subsequent request. If a value is returned in a response, you can retrieve
- // the next set of records by providing this returned marker value in the Marker
- // parameter and retrying the command. If the Marker field is empty, all response
- // records have been retrieved for the request.
- Marker *string `type:"string"`
- // An OrderableClusterOption structure containing information about orderable
- // options for the cluster.
- OrderableClusterOptions []*OrderableClusterOption `locationNameList:"OrderableClusterOption" type:"list"`
- }
- // String returns the string representation
- func (s DescribeOrderableClusterOptionsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeOrderableClusterOptionsOutput) GoString() string {
- return s.String()
- }
- type DescribeReservedNodeOfferingsInput struct {
- _ struct{} `type:"structure"`
- // An optional parameter that specifies the starting point to return a set of
- // response records. When the results of a DescribeReservedNodeOfferings request
- // exceed the value specified in MaxRecords, AWS returns a value in the Marker
- // field of the response. You can retrieve the next set of response records
- // by providing the returned marker value in the Marker parameter and retrying
- // the request.
- Marker *string `type:"string"`
- // The maximum number of response records to return in each call. If the number
- // of remaining response records exceeds the specified MaxRecords value, a value
- // is returned in a marker field of the response. You can retrieve the next
- // set of records by retrying the command with the returned marker value.
- //
- // Default: 100
- //
- // Constraints: minimum 20, maximum 100.
- MaxRecords *int64 `type:"integer"`
- // The unique identifier for the offering.
- ReservedNodeOfferingId *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeReservedNodeOfferingsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeReservedNodeOfferingsInput) GoString() string {
- return s.String()
- }
- type DescribeReservedNodeOfferingsOutput struct {
- _ struct{} `type:"structure"`
- // A value that indicates the starting point for the next set of response records
- // in a subsequent request. If a value is returned in a response, you can retrieve
- // the next set of records by providing this returned marker value in the Marker
- // parameter and retrying the command. If the Marker field is empty, all response
- // records have been retrieved for the request.
- Marker *string `type:"string"`
- // A list of ReservedNodeOffering objects.
- ReservedNodeOfferings []*ReservedNodeOffering `locationNameList:"ReservedNodeOffering" type:"list"`
- }
- // String returns the string representation
- func (s DescribeReservedNodeOfferingsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeReservedNodeOfferingsOutput) GoString() string {
- return s.String()
- }
- type DescribeReservedNodesInput struct {
- _ struct{} `type:"structure"`
- // An optional parameter that specifies the starting point to return a set of
- // response records. When the results of a DescribeReservedNodes request exceed
- // the value specified in MaxRecords, AWS returns a value in the Marker field
- // of the response. You can retrieve the next set of response records by providing
- // the returned marker value in the Marker parameter and retrying the request.
- Marker *string `type:"string"`
- // The maximum number of response records to return in each call. If the number
- // of remaining response records exceeds the specified MaxRecords value, a value
- // is returned in a marker field of the response. You can retrieve the next
- // set of records by retrying the command with the returned marker value.
- //
- // Default: 100
- //
- // Constraints: minimum 20, maximum 100.
- MaxRecords *int64 `type:"integer"`
- // Identifier for the node reservation.
- ReservedNodeId *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeReservedNodesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeReservedNodesInput) GoString() string {
- return s.String()
- }
- type DescribeReservedNodesOutput struct {
- _ struct{} `type:"structure"`
- // A value that indicates the starting point for the next set of response records
- // in a subsequent request. If a value is returned in a response, you can retrieve
- // the next set of records by providing this returned marker value in the Marker
- // parameter and retrying the command. If the Marker field is empty, all response
- // records have been retrieved for the request.
- Marker *string `type:"string"`
- // The list of ReservedNode objects.
- ReservedNodes []*ReservedNode `locationNameList:"ReservedNode" type:"list"`
- }
- // String returns the string representation
- func (s DescribeReservedNodesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeReservedNodesOutput) GoString() string {
- return s.String()
- }
- type DescribeResizeInput struct {
- _ struct{} `type:"structure"`
- // The unique identifier of a cluster whose resize progress you are requesting.
- // This parameter is case-sensitive.
- //
- // By default, resize operations for all clusters defined for an AWS account
- // are returned.
- //
- // ClusterIdentifier is a required field
- ClusterIdentifier *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DescribeResizeInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeResizeInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DescribeResizeInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DescribeResizeInput"}
- if s.ClusterIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Describes the result of a cluster resize operation.
- type DescribeResizeOutput struct {
- _ struct{} `type:"structure"`
- // The average rate of the resize operation over the last few minutes, measured
- // in megabytes per second. After the resize operation completes, this value
- // shows the average rate of the entire resize operation.
- AvgResizeRateInMegaBytesPerSecond *float64 `type:"double"`
- // The amount of seconds that have elapsed since the resize operation began.
- // After the resize operation completes, this value shows the total actual time,
- // in seconds, for the resize operation.
- ElapsedTimeInSeconds *int64 `type:"long"`
- // The estimated time remaining, in seconds, until the resize operation is complete.
- // This value is calculated based on the average resize rate and the estimated
- // amount of data remaining to be processed. Once the resize operation is complete,
- // this value will be 0.
- EstimatedTimeToCompletionInSeconds *int64 `type:"long"`
- // The names of tables that have been completely imported .
- //
- // Valid Values: List of table names.
- ImportTablesCompleted []*string `type:"list"`
- // The names of tables that are being currently imported.
- //
- // Valid Values: List of table names.
- ImportTablesInProgress []*string `type:"list"`
- // The names of tables that have not been yet imported.
- //
- // Valid Values: List of table names
- ImportTablesNotStarted []*string `type:"list"`
- // While the resize operation is in progress, this value shows the current amount
- // of data, in megabytes, that has been processed so far. When the resize operation
- // is complete, this value shows the total amount of data, in megabytes, on
- // the cluster, which may be more or less than TotalResizeDataInMegaBytes (the
- // estimated total amount of data before resize).
- ProgressInMegaBytes *int64 `type:"long"`
- // The status of the resize operation.
- //
- // Valid Values: NONE | IN_PROGRESS | FAILED | SUCCEEDED
- Status *string `type:"string"`
- // The cluster type after the resize operation is complete.
- //
- // Valid Values: multi-node | single-node
- TargetClusterType *string `type:"string"`
- // The node type that the cluster will have after the resize operation is complete.
- TargetNodeType *string `type:"string"`
- // The number of nodes that the cluster will have after the resize operation
- // is complete.
- TargetNumberOfNodes *int64 `type:"integer"`
- // The estimated total amount of data, in megabytes, on the cluster before the
- // resize operation began.
- TotalResizeDataInMegaBytes *int64 `type:"long"`
- }
- // String returns the string representation
- func (s DescribeResizeOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeResizeOutput) GoString() string {
- return s.String()
- }
- // The result of the DescribeSnapshotCopyGrants action.
- type DescribeSnapshotCopyGrantsInput struct {
- _ struct{} `type:"structure"`
- // An optional parameter that specifies the starting point to return a set of
- // response records. When the results of a DescribeSnapshotCopyGrant request
- // exceed the value specified in MaxRecords, AWS returns a value in the Marker
- // field of the response. You can retrieve the next set of response records
- // by providing the returned marker value in the Marker parameter and retrying
- // the request.
- //
- // Constraints: You can specify either the SnapshotCopyGrantName parameter or
- // the Marker parameter, but not both.
- Marker *string `type:"string"`
- // The maximum number of response records to return in each call. If the number
- // of remaining response records exceeds the specified MaxRecords value, a value
- // is returned in a marker field of the response. You can retrieve the next
- // set of records by retrying the command with the returned marker value.
- //
- // Default: 100
- //
- // Constraints: minimum 20, maximum 100.
- MaxRecords *int64 `type:"integer"`
- // The name of the snapshot copy grant.
- SnapshotCopyGrantName *string `type:"string"`
- // A tag key or keys for which you want to return all matching resources that
- // are associated with the specified key or keys. For example, suppose that
- // you have resources tagged with keys called owner and environment. If you
- // specify both of these tag keys in the request, Amazon Redshift returns a
- // response with all resources that have either or both of these tag keys associated
- // with them.
- TagKeys []*string `locationNameList:"TagKey" type:"list"`
- // A tag value or values for which you want to return all matching resources
- // that are associated with the specified value or values. For example, suppose
- // that you have resources tagged with values called admin and test. If you
- // specify both of these tag values in the request, Amazon Redshift returns
- // a response with all resources that have either or both of these tag values
- // associated with them.
- TagValues []*string `locationNameList:"TagValue" type:"list"`
- }
- // String returns the string representation
- func (s DescribeSnapshotCopyGrantsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeSnapshotCopyGrantsInput) GoString() string {
- return s.String()
- }
- type DescribeSnapshotCopyGrantsOutput struct {
- _ struct{} `type:"structure"`
- // An optional parameter that specifies the starting point to return a set of
- // response records. When the results of a DescribeSnapshotCopyGrant request
- // exceed the value specified in MaxRecords, AWS returns a value in the Marker
- // field of the response. You can retrieve the next set of response records
- // by providing the returned marker value in the Marker parameter and retrying
- // the request.
- //
- // Constraints: You can specify either the SnapshotCopyGrantName parameter or
- // the Marker parameter, but not both.
- Marker *string `type:"string"`
- // The list of SnapshotCopyGrant objects.
- SnapshotCopyGrants []*SnapshotCopyGrant `locationNameList:"SnapshotCopyGrant" type:"list"`
- }
- // String returns the string representation
- func (s DescribeSnapshotCopyGrantsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeSnapshotCopyGrantsOutput) GoString() string {
- return s.String()
- }
- type DescribeTableRestoreStatusInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Redshift cluster that the table is being restored to.
- ClusterIdentifier *string `type:"string"`
- // An optional pagination token provided by a previous DescribeTableRestoreStatus
- // request. If this parameter is specified, the response includes only records
- // beyond the marker, up to the value specified by the MaxRecords parameter.
- Marker *string `type:"string"`
- // The maximum number of records to include in the response. If more records
- // exist than the specified MaxRecords value, a pagination token called a marker
- // is included in the response so that the remaining results can be retrieved.
- MaxRecords *int64 `type:"integer"`
- // The identifier of the table restore request to return status for. If you
- // don't specify a TableRestoreRequestId value, then DescribeTableRestoreStatus
- // returns the status of all in-progress table restore requests.
- TableRestoreRequestId *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeTableRestoreStatusInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeTableRestoreStatusInput) GoString() string {
- return s.String()
- }
- type DescribeTableRestoreStatusOutput struct {
- _ struct{} `type:"structure"`
- // A pagination token that can be used in a subsequent DescribeTableRestoreStatus
- // request.
- Marker *string `type:"string"`
- // A list of status details for one or more table restore requests.
- TableRestoreStatusDetails []*TableRestoreStatus `locationNameList:"TableRestoreStatus" type:"list"`
- }
- // String returns the string representation
- func (s DescribeTableRestoreStatusOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeTableRestoreStatusOutput) GoString() string {
- return s.String()
- }
- type DescribeTagsInput struct {
- _ struct{} `type:"structure"`
- // A value that indicates the starting point for the next set of response records
- // in a subsequent request. If a value is returned in a response, you can retrieve
- // the next set of records by providing this returned marker value in the marker
- // parameter and retrying the command. If the marker field is empty, all response
- // records have been retrieved for the request.
- Marker *string `type:"string"`
- // The maximum number or response records to return in each call. If the number
- // of remaining response records exceeds the specified MaxRecords value, a value
- // is returned in a marker field of the response. You can retrieve the next
- // set of records by retrying the command with the returned marker value.
- MaxRecords *int64 `type:"integer"`
- // The Amazon Resource Name (ARN) for which you want to describe the tag or
- // tags. For example, arn:aws:redshift:us-east-1:123456789:cluster:t1.
- ResourceName *string `type:"string"`
- // The type of resource with which you want to view tags. Valid resource types
- // are:
- //
- // * Cluster
- //
- // * CIDR/IP
- //
- // * EC2 security group
- //
- // * Snapshot
- //
- // * Cluster security group
- //
- // * Subnet group
- //
- // * HSM connection
- //
- // * HSM certificate
- //
- // * Parameter group
- //
- // * Snapshot copy grant
- //
- // For more information about Amazon Redshift resource types and constructing
- // ARNs, go to Constructing an Amazon Redshift Amazon Resource Name (ARN) (http://docs.aws.amazon.com/redshift/latest/mgmt/constructing-redshift-arn.html)
- // in the Amazon Redshift Cluster Management Guide.
- ResourceType *string `type:"string"`
- // A tag key or keys for which you want to return all matching resources that
- // are associated with the specified key or keys. For example, suppose that
- // you have resources tagged with keys called owner and environment. If you
- // specify both of these tag keys in the request, Amazon Redshift returns a
- // response with all resources that have either or both of these tag keys associated
- // with them.
- TagKeys []*string `locationNameList:"TagKey" type:"list"`
- // A tag value or values for which you want to return all matching resources
- // that are associated with the specified value or values. For example, suppose
- // that you have resources tagged with values called admin and test. If you
- // specify both of these tag values in the request, Amazon Redshift returns
- // a response with all resources that have either or both of these tag values
- // associated with them.
- TagValues []*string `locationNameList:"TagValue" type:"list"`
- }
- // String returns the string representation
- func (s DescribeTagsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeTagsInput) GoString() string {
- return s.String()
- }
- type DescribeTagsOutput struct {
- _ struct{} `type:"structure"`
- // A value that indicates the starting point for the next set of response records
- // in a subsequent request. If a value is returned in a response, you can retrieve
- // the next set of records by providing this returned marker value in the Marker
- // parameter and retrying the command. If the Marker field is empty, all response
- // records have been retrieved for the request.
- Marker *string `type:"string"`
- // A list of tags with their associated resources.
- TaggedResources []*TaggedResource `locationNameList:"TaggedResource" type:"list"`
- }
- // String returns the string representation
- func (s DescribeTagsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeTagsOutput) GoString() string {
- return s.String()
- }
- type DisableLoggingInput struct {
- _ struct{} `type:"structure"`
- // The identifier of the cluster on which logging is to be stopped.
- //
- // Example: examplecluster
- //
- // ClusterIdentifier is a required field
- ClusterIdentifier *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DisableLoggingInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DisableLoggingInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DisableLoggingInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DisableLoggingInput"}
- if s.ClusterIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type DisableSnapshotCopyInput struct {
- _ struct{} `type:"structure"`
- // The unique identifier of the source cluster that you want to disable copying
- // of snapshots to a destination region.
- //
- // Constraints: Must be the valid name of an existing cluster that has cross-region
- // snapshot copy enabled.
- //
- // ClusterIdentifier is a required field
- ClusterIdentifier *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DisableSnapshotCopyInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DisableSnapshotCopyInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DisableSnapshotCopyInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DisableSnapshotCopyInput"}
- if s.ClusterIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type DisableSnapshotCopyOutput struct {
- _ struct{} `type:"structure"`
- // Describes a cluster.
- Cluster *Cluster `type:"structure"`
- }
- // String returns the string representation
- func (s DisableSnapshotCopyOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DisableSnapshotCopyOutput) GoString() string {
- return s.String()
- }
- // Describes an Amazon EC2 security group.
- type EC2SecurityGroup struct {
- _ struct{} `type:"structure"`
- // The name of the EC2 Security Group.
- EC2SecurityGroupName *string `type:"string"`
- // The AWS ID of the owner of the EC2 security group specified in the EC2SecurityGroupName
- // field.
- EC2SecurityGroupOwnerId *string `type:"string"`
- // The status of the EC2 security group.
- Status *string `type:"string"`
- // The list of tags for the EC2 security group.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- }
- // String returns the string representation
- func (s EC2SecurityGroup) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s EC2SecurityGroup) GoString() string {
- return s.String()
- }
- // Describes the status of the elastic IP (EIP) address.
- type ElasticIpStatus struct {
- _ struct{} `type:"structure"`
- // The elastic IP (EIP) address for the cluster.
- ElasticIp *string `type:"string"`
- // The status of the elastic IP (EIP) address.
- Status *string `type:"string"`
- }
- // String returns the string representation
- func (s ElasticIpStatus) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ElasticIpStatus) GoString() string {
- return s.String()
- }
- type EnableLoggingInput struct {
- _ struct{} `type:"structure"`
- // The name of an existing S3 bucket where the log files are to be stored.
- //
- // Constraints:
- //
- // * Must be in the same region as the cluster
- //
- // * The cluster must have read bucket and put object permissions
- //
- // BucketName is a required field
- BucketName *string `type:"string" required:"true"`
- // The identifier of the cluster on which logging is to be started.
- //
- // Example: examplecluster
- //
- // ClusterIdentifier is a required field
- ClusterIdentifier *string `type:"string" required:"true"`
- // The prefix applied to the log file names.
- //
- // Constraints:
- //
- // * Cannot exceed 512 characters
- //
- // * Cannot contain spaces( ), double quotes ("), single quotes ('), a backslash
- // (\), or control characters. The hexadecimal codes for invalid characters
- // are:
- //
- // x00 to x20
- //
- // x22
- //
- // x27
- //
- // x5c
- //
- // x7f or larger
- S3KeyPrefix *string `type:"string"`
- }
- // String returns the string representation
- func (s EnableLoggingInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s EnableLoggingInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *EnableLoggingInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "EnableLoggingInput"}
- if s.BucketName == nil {
- invalidParams.Add(request.NewErrParamRequired("BucketName"))
- }
- if s.ClusterIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type EnableSnapshotCopyInput struct {
- _ struct{} `type:"structure"`
- // The unique identifier of the source cluster to copy snapshots from.
- //
- // Constraints: Must be the valid name of an existing cluster that does not
- // already have cross-region snapshot copy enabled.
- //
- // ClusterIdentifier is a required field
- ClusterIdentifier *string `type:"string" required:"true"`
- // The destination region that you want to copy snapshots to.
- //
- // Constraints: Must be the name of a valid region. For more information, see
- // Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html#redshift_region)
- // in the Amazon Web Services General Reference.
- //
- // DestinationRegion is a required field
- DestinationRegion *string `type:"string" required:"true"`
- // The number of days to retain automated snapshots in the destination region
- // after they are copied from the source region.
- //
- // Default: 7.
- //
- // Constraints: Must be at least 1 and no more than 35.
- RetentionPeriod *int64 `type:"integer"`
- // The name of the snapshot copy grant to use when snapshots of an AWS KMS-encrypted
- // cluster are copied to the destination region.
- SnapshotCopyGrantName *string `type:"string"`
- }
- // String returns the string representation
- func (s EnableSnapshotCopyInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s EnableSnapshotCopyInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *EnableSnapshotCopyInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "EnableSnapshotCopyInput"}
- if s.ClusterIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier"))
- }
- if s.DestinationRegion == nil {
- invalidParams.Add(request.NewErrParamRequired("DestinationRegion"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type EnableSnapshotCopyOutput struct {
- _ struct{} `type:"structure"`
- // Describes a cluster.
- Cluster *Cluster `type:"structure"`
- }
- // String returns the string representation
- func (s EnableSnapshotCopyOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s EnableSnapshotCopyOutput) GoString() string {
- return s.String()
- }
- // Describes a connection endpoint.
- type Endpoint struct {
- _ struct{} `type:"structure"`
- // The DNS address of the Cluster.
- Address *string `type:"string"`
- // The port that the database engine is listening on.
- Port *int64 `type:"integer"`
- }
- // String returns the string representation
- func (s Endpoint) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Endpoint) GoString() string {
- return s.String()
- }
- // Describes an event.
- type Event struct {
- _ struct{} `type:"structure"`
- // The date and time of the event.
- Date *time.Time `type:"timestamp" timestampFormat:"iso8601"`
- // A list of the event categories.
- //
- // Values: Configuration, Management, Monitoring, Security
- EventCategories []*string `locationNameList:"EventCategory" type:"list"`
- // The identifier of the event.
- EventId *string `type:"string"`
- // The text of this event.
- Message *string `type:"string"`
- // The severity of the event.
- //
- // Values: ERROR, INFO
- Severity *string `type:"string"`
- // The identifier for the source of the event.
- SourceIdentifier *string `type:"string"`
- // The source type for this event.
- SourceType *string `type:"string" enum:"SourceType"`
- }
- // String returns the string representation
- func (s Event) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Event) GoString() string {
- return s.String()
- }
- // Describes event categories.
- type EventCategoriesMap struct {
- _ struct{} `type:"structure"`
- // The events in the event category.
- Events []*EventInfoMap `locationNameList:"EventInfoMap" type:"list"`
- // The source type, such as cluster or cluster-snapshot, that the returned categories
- // belong to.
- SourceType *string `type:"string"`
- }
- // String returns the string representation
- func (s EventCategoriesMap) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s EventCategoriesMap) GoString() string {
- return s.String()
- }
- // Describes event information.
- type EventInfoMap struct {
- _ struct{} `type:"structure"`
- // The category of an Amazon Redshift event.
- EventCategories []*string `locationNameList:"EventCategory" type:"list"`
- // The description of an Amazon Redshift event.
- EventDescription *string `type:"string"`
- // The identifier of an Amazon Redshift event.
- EventId *string `type:"string"`
- // The severity of the event.
- //
- // Values: ERROR, INFO
- Severity *string `type:"string"`
- }
- // String returns the string representation
- func (s EventInfoMap) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s EventInfoMap) GoString() string {
- return s.String()
- }
- // Describes event subscriptions.
- type EventSubscription struct {
- _ struct{} `type:"structure"`
- // The name of the Amazon Redshift event notification subscription.
- CustSubscriptionId *string `type:"string"`
- // The AWS customer account associated with the Amazon Redshift event notification
- // subscription.
- CustomerAwsId *string `type:"string"`
- // A Boolean value indicating whether the subscription is enabled. true indicates
- // the subscription is enabled.
- Enabled *bool `type:"boolean"`
- // The list of Amazon Redshift event categories specified in the event notification
- // subscription.
- //
- // Values: Configuration, Management, Monitoring, Security
- EventCategoriesList []*string `locationNameList:"EventCategory" type:"list"`
- // The event severity specified in the Amazon Redshift event notification subscription.
- //
- // Values: ERROR, INFO
- Severity *string `type:"string"`
- // The Amazon Resource Name (ARN) of the Amazon SNS topic used by the event
- // notification subscription.
- SnsTopicArn *string `type:"string"`
- // A list of the sources that publish events to the Amazon Redshift event notification
- // subscription.
- SourceIdsList []*string `locationNameList:"SourceId" type:"list"`
- // The source type of the events returned the Amazon Redshift event notification,
- // such as cluster, or cluster-snapshot.
- SourceType *string `type:"string"`
- // The status of the Amazon Redshift event notification subscription.
- //
- // Constraints:
- //
- // * Can be one of the following: active | no-permission | topic-not-exist
- //
- // * The status "no-permission" indicates that Amazon Redshift no longer
- // has permission to post to the Amazon SNS topic. The status "topic-not-exist"
- // indicates that the topic was deleted after the subscription was created.
- Status *string `type:"string"`
- // The date and time the Amazon Redshift event notification subscription was
- // created.
- SubscriptionCreationTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
- // The list of tags for the event subscription.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- }
- // String returns the string representation
- func (s EventSubscription) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s EventSubscription) GoString() string {
- return s.String()
- }
- // Returns information about an HSM client certificate. The certificate is stored
- // in a secure Hardware Storage Module (HSM), and used by the Amazon Redshift
- // cluster to encrypt data files.
- type HsmClientCertificate struct {
- _ struct{} `type:"structure"`
- // The identifier of the HSM client certificate.
- HsmClientCertificateIdentifier *string `type:"string"`
- // The public key that the Amazon Redshift cluster will use to connect to the
- // HSM. You must register the public key in the HSM.
- HsmClientCertificatePublicKey *string `type:"string"`
- // The list of tags for the HSM client certificate.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- }
- // String returns the string representation
- func (s HsmClientCertificate) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s HsmClientCertificate) GoString() string {
- return s.String()
- }
- // Returns information about an HSM configuration, which is an object that describes
- // to Amazon Redshift clusters the information they require to connect to an
- // HSM where they can store database encryption keys.
- type HsmConfiguration struct {
- _ struct{} `type:"structure"`
- // A text description of the HSM configuration.
- Description *string `type:"string"`
- // The name of the Amazon Redshift HSM configuration.
- HsmConfigurationIdentifier *string `type:"string"`
- // The IP address that the Amazon Redshift cluster must use to access the HSM.
- HsmIpAddress *string `type:"string"`
- // The name of the partition in the HSM where the Amazon Redshift clusters will
- // store their database encryption keys.
- HsmPartitionName *string `type:"string"`
- // The list of tags for the HSM configuration.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- }
- // String returns the string representation
- func (s HsmConfiguration) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s HsmConfiguration) GoString() string {
- return s.String()
- }
- // Describes the status of changes to HSM settings.
- type HsmStatus struct {
- _ struct{} `type:"structure"`
- // Specifies the name of the HSM client certificate the Amazon Redshift cluster
- // uses to retrieve the data encryption keys stored in an HSM.
- HsmClientCertificateIdentifier *string `type:"string"`
- // Specifies the name of the HSM configuration that contains the information
- // the Amazon Redshift cluster can use to retrieve and store keys in an HSM.
- HsmConfigurationIdentifier *string `type:"string"`
- // Reports whether the Amazon Redshift cluster has finished applying any HSM
- // settings changes specified in a modify cluster command.
- //
- // Values: active, applying
- Status *string `type:"string"`
- }
- // String returns the string representation
- func (s HsmStatus) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s HsmStatus) GoString() string {
- return s.String()
- }
- // Describes an IP range used in a security group.
- type IPRange struct {
- _ struct{} `type:"structure"`
- // The IP range in Classless Inter-Domain Routing (CIDR) notation.
- CIDRIP *string `type:"string"`
- // The status of the IP range, for example, "authorized".
- Status *string `type:"string"`
- // The list of tags for the IP range.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- }
- // String returns the string representation
- func (s IPRange) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s IPRange) GoString() string {
- return s.String()
- }
- // Describes the status of logging for a cluster.
- type LoggingStatus struct {
- _ struct{} `type:"structure"`
- // The name of the S3 bucket where the log files are stored.
- BucketName *string `type:"string"`
- // The message indicating that logs failed to be delivered.
- LastFailureMessage *string `type:"string"`
- // The last time when logs failed to be delivered.
- LastFailureTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
- // The last time that logs were delivered.
- LastSuccessfulDeliveryTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
- // true if logging is on, false if logging is off.
- LoggingEnabled *bool `type:"boolean"`
- // The prefix applied to the log file names.
- S3KeyPrefix *string `type:"string"`
- }
- // String returns the string representation
- func (s LoggingStatus) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s LoggingStatus) GoString() string {
- return s.String()
- }
- type ModifyClusterIamRolesInput struct {
- _ struct{} `type:"structure"`
- // Zero or more IAM roles to associate with the cluster. The roles must be in
- // their Amazon Resource Name (ARN) format. You can associate up to 10 IAM roles
- // with a single cluster in a single request.
- AddIamRoles []*string `locationNameList:"IamRoleArn" type:"list"`
- // The unique identifier of the cluster for which you want to associate or disassociate
- // IAM roles.
- //
- // ClusterIdentifier is a required field
- ClusterIdentifier *string `type:"string" required:"true"`
- // Zero or more IAM roles in ARN format to disassociate from the cluster. You
- // can disassociate up to 10 IAM roles from a single cluster in a single request.
- RemoveIamRoles []*string `locationNameList:"IamRoleArn" type:"list"`
- }
- // String returns the string representation
- func (s ModifyClusterIamRolesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyClusterIamRolesInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ModifyClusterIamRolesInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ModifyClusterIamRolesInput"}
- if s.ClusterIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type ModifyClusterIamRolesOutput struct {
- _ struct{} `type:"structure"`
- // Describes a cluster.
- Cluster *Cluster `type:"structure"`
- }
- // String returns the string representation
- func (s ModifyClusterIamRolesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyClusterIamRolesOutput) GoString() string {
- return s.String()
- }
- type ModifyClusterInput struct {
- _ struct{} `type:"structure"`
- // If true, major version upgrades will be applied automatically to the cluster
- // during the maintenance window.
- //
- // Default: false
- AllowVersionUpgrade *bool `type:"boolean"`
- // The number of days that automated snapshots are retained. If the value is
- // 0, automated snapshots are disabled. Even if automated snapshots are disabled,
- // you can still create manual snapshots when you want with CreateClusterSnapshot.
- //
- // If you decrease the automated snapshot retention period from its current
- // value, existing automated snapshots that fall outside of the new retention
- // period will be immediately deleted.
- //
- // Default: Uses existing setting.
- //
- // Constraints: Must be a value from 0 to 35.
- AutomatedSnapshotRetentionPeriod *int64 `type:"integer"`
- // The unique identifier of the cluster to be modified.
- //
- // Example: examplecluster
- //
- // ClusterIdentifier is a required field
- ClusterIdentifier *string `type:"string" required:"true"`
- // The name of the cluster parameter group to apply to this cluster. This change
- // is applied only after the cluster is rebooted. To reboot a cluster use RebootCluster.
- //
- // Default: Uses existing setting.
- //
- // Constraints: The cluster parameter group must be in the same parameter group
- // family that matches the cluster version.
- ClusterParameterGroupName *string `type:"string"`
- // A list of cluster security groups to be authorized on this cluster. This
- // change is asynchronously applied as soon as possible.
- //
- // Security groups currently associated with the cluster, and not in the list
- // of groups to apply, will be revoked from the cluster.
- //
- // Constraints:
- //
- // * Must be 1 to 255 alphanumeric characters or hyphens
- //
- // * First character must be a letter
- //
- // * Cannot end with a hyphen or contain two consecutive hyphens
- ClusterSecurityGroups []*string `locationNameList:"ClusterSecurityGroupName" type:"list"`
- // The new cluster type.
- //
- // When you submit your cluster resize request, your existing cluster goes into
- // a read-only mode. After Amazon Redshift provisions a new cluster based on
- // your resize requirements, there will be outage for a period while the old
- // cluster is deleted and your connection is switched to the new cluster. You
- // can use DescribeResize to track the progress of the resize request.
- //
- // Valid Values: multi-node | single-node
- ClusterType *string `type:"string"`
- // The new version number of the Amazon Redshift engine to upgrade to.
- //
- // For major version upgrades, if a non-default cluster parameter group is currently
- // in use, a new cluster parameter group in the cluster parameter group family
- // for the new version must be specified. The new cluster parameter group can
- // be the default for that cluster parameter group family. For more information
- // about parameters and parameter groups, go to Amazon Redshift Parameter Groups
- // (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // Example: 1.0
- ClusterVersion *string `type:"string"`
- // The Elastic IP (EIP) address for the cluster.
- //
- // Constraints: The cluster must be provisioned in EC2-VPC and publicly-accessible
- // through an Internet gateway. For more information about provisioning clusters
- // in EC2-VPC, go to Supported Platforms to Launch Your Cluster (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#cluster-platforms)
- // in the Amazon Redshift Cluster Management Guide.
- ElasticIp *string `type:"string"`
- // An option that specifies whether to create the cluster with enhanced VPC
- // routing enabled. To create a cluster that uses enhanced VPC routing, the
- // cluster must be in a VPC. For more information, see Enhanced VPC Routing
- // (http://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // If this option is true, enhanced VPC routing is enabled.
- //
- // Default: false
- EnhancedVpcRouting *bool `type:"boolean"`
- // Specifies the name of the HSM client certificate the Amazon Redshift cluster
- // uses to retrieve the data encryption keys stored in an HSM.
- HsmClientCertificateIdentifier *string `type:"string"`
- // Specifies the name of the HSM configuration that contains the information
- // the Amazon Redshift cluster can use to retrieve and store keys in an HSM.
- HsmConfigurationIdentifier *string `type:"string"`
- // The new password for the cluster master user. This change is asynchronously
- // applied as soon as possible. Between the time of the request and the completion
- // of the request, the MasterUserPassword element exists in the PendingModifiedValues
- // element of the operation response.
- //
- // Operations never return the password, so this operation provides a way to
- // regain access to the master user account for a cluster if the password is
- // lost.
- //
- // Default: Uses existing setting.
- //
- // Constraints:
- //
- // * Must be between 8 and 64 characters in length.
- //
- // * Must contain at least one uppercase letter.
- //
- // * Must contain at least one lowercase letter.
- //
- // * Must contain one number.
- //
- // * Can be any printable ASCII character (ASCII code 33 to 126) except '
- // (single quote), " (double quote), \, /, @, or space.
- MasterUserPassword *string `type:"string"`
- // The new identifier for the cluster.
- //
- // Constraints:
- //
- // * Must contain from 1 to 63 alphanumeric characters or hyphens.
- //
- // * Alphabetic characters must be lowercase.
- //
- // * First character must be a letter.
- //
- // * Cannot end with a hyphen or contain two consecutive hyphens.
- //
- // * Must be unique for all clusters within an AWS account.
- //
- // Example: examplecluster
- NewClusterIdentifier *string `type:"string"`
- // The new node type of the cluster. If you specify a new node type, you must
- // also specify the number of nodes parameter.
- //
- // When you submit your request to resize a cluster, Amazon Redshift sets access
- // permissions for the cluster to read-only. After Amazon Redshift provisions
- // a new cluster according to your resize requirements, there will be a temporary
- // outage while the old cluster is deleted and your connection is switched to
- // the new cluster. When the new connection is complete, the original access
- // permissions for the cluster are restored. You can use DescribeResize to track
- // the progress of the resize request.
- //
- // Valid Values: ds1.xlarge | ds1.8xlarge | ds2.xlarge | ds2.8xlarge | dc1.large
- // | dc1.8xlarge.
- NodeType *string `type:"string"`
- // The new number of nodes of the cluster. If you specify a new number of nodes,
- // you must also specify the node type parameter.
- //
- // When you submit your request to resize a cluster, Amazon Redshift sets access
- // permissions for the cluster to read-only. After Amazon Redshift provisions
- // a new cluster according to your resize requirements, there will be a temporary
- // outage while the old cluster is deleted and your connection is switched to
- // the new cluster. When the new connection is complete, the original access
- // permissions for the cluster are restored. You can use DescribeResize to track
- // the progress of the resize request.
- //
- // Valid Values: Integer greater than 0.
- NumberOfNodes *int64 `type:"integer"`
- // The weekly time range (in UTC) during which system maintenance can occur,
- // if necessary. If system maintenance is necessary during the window, it may
- // result in an outage.
- //
- // This maintenance window change is made immediately. If the new maintenance
- // window indicates the current time, there must be at least 120 minutes between
- // the current time and end of the window in order to ensure that pending changes
- // are applied.
- //
- // Default: Uses existing setting.
- //
- // Format: ddd:hh24:mi-ddd:hh24:mi, for example wed:07:30-wed:08:00.
- //
- // Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun
- //
- // Constraints: Must be at least 30 minutes.
- PreferredMaintenanceWindow *string `type:"string"`
- // If true, the cluster can be accessed from a public network. Only clusters
- // in VPCs can be set to be publicly available.
- PubliclyAccessible *bool `type:"boolean"`
- // A list of virtual private cloud (VPC) security groups to be associated with
- // the cluster.
- VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"`
- }
- // String returns the string representation
- func (s ModifyClusterInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyClusterInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ModifyClusterInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ModifyClusterInput"}
- if s.ClusterIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type ModifyClusterOutput struct {
- _ struct{} `type:"structure"`
- // Describes a cluster.
- Cluster *Cluster `type:"structure"`
- }
- // String returns the string representation
- func (s ModifyClusterOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyClusterOutput) GoString() string {
- return s.String()
- }
- type ModifyClusterParameterGroupInput struct {
- _ struct{} `type:"structure"`
- // The name of the parameter group to be modified.
- //
- // ParameterGroupName is a required field
- ParameterGroupName *string `type:"string" required:"true"`
- // An array of parameters to be modified. A maximum of 20 parameters can be
- // modified in a single request.
- //
- // For each parameter to be modified, you must supply at least the parameter
- // name and parameter value; other name-value pairs of the parameter are optional.
- //
- // For the workload management (WLM) configuration, you must supply all the
- // name-value pairs in the wlm_json_configuration parameter.
- //
- // Parameters is a required field
- Parameters []*Parameter `locationNameList:"Parameter" type:"list" required:"true"`
- }
- // String returns the string representation
- func (s ModifyClusterParameterGroupInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyClusterParameterGroupInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ModifyClusterParameterGroupInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ModifyClusterParameterGroupInput"}
- if s.ParameterGroupName == nil {
- invalidParams.Add(request.NewErrParamRequired("ParameterGroupName"))
- }
- if s.Parameters == nil {
- invalidParams.Add(request.NewErrParamRequired("Parameters"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type ModifyClusterSubnetGroupInput struct {
- _ struct{} `type:"structure"`
- // The name of the subnet group to be modified.
- //
- // ClusterSubnetGroupName is a required field
- ClusterSubnetGroupName *string `type:"string" required:"true"`
- // A text description of the subnet group to be modified.
- Description *string `type:"string"`
- // An array of VPC subnet IDs. A maximum of 20 subnets can be modified in a
- // single request.
- //
- // SubnetIds is a required field
- SubnetIds []*string `locationNameList:"SubnetIdentifier" type:"list" required:"true"`
- }
- // String returns the string representation
- func (s ModifyClusterSubnetGroupInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyClusterSubnetGroupInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ModifyClusterSubnetGroupInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ModifyClusterSubnetGroupInput"}
- if s.ClusterSubnetGroupName == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterSubnetGroupName"))
- }
- if s.SubnetIds == nil {
- invalidParams.Add(request.NewErrParamRequired("SubnetIds"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type ModifyClusterSubnetGroupOutput struct {
- _ struct{} `type:"structure"`
- // Describes a subnet group.
- ClusterSubnetGroup *ClusterSubnetGroup `type:"structure"`
- }
- // String returns the string representation
- func (s ModifyClusterSubnetGroupOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyClusterSubnetGroupOutput) GoString() string {
- return s.String()
- }
- type ModifyEventSubscriptionInput struct {
- _ struct{} `type:"structure"`
- // A Boolean value indicating if the subscription is enabled. true indicates
- // the subscription is enabled
- Enabled *bool `type:"boolean"`
- // Specifies the Amazon Redshift event categories to be published by the event
- // notification subscription.
- //
- // Values: Configuration, Management, Monitoring, Security
- EventCategories []*string `locationNameList:"EventCategory" type:"list"`
- // Specifies the Amazon Redshift event severity to be published by the event
- // notification subscription.
- //
- // Values: ERROR, INFO
- Severity *string `type:"string"`
- // The Amazon Resource Name (ARN) of the SNS topic to be used by the event notification
- // subscription.
- SnsTopicArn *string `type:"string"`
- // A list of one or more identifiers of Amazon Redshift source objects. All
- // of the objects must be of the same type as was specified in the source type
- // parameter. The event subscription will return only events generated by the
- // specified objects. If not specified, then events are returned for all objects
- // within the source type specified.
- //
- // Example: my-cluster-1, my-cluster-2
- //
- // Example: my-snapshot-20131010
- SourceIds []*string `locationNameList:"SourceId" type:"list"`
- // The type of source that will be generating the events. For example, if you
- // want to be notified of events generated by a cluster, you would set this
- // parameter to cluster. If this value is not specified, events are returned
- // for all Amazon Redshift objects in your AWS account. You must specify a source
- // type in order to specify source IDs.
- //
- // Valid values: cluster, cluster-parameter-group, cluster-security-group, and
- // cluster-snapshot.
- SourceType *string `type:"string"`
- // The name of the modified Amazon Redshift event notification subscription.
- //
- // SubscriptionName is a required field
- SubscriptionName *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s ModifyEventSubscriptionInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyEventSubscriptionInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ModifyEventSubscriptionInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ModifyEventSubscriptionInput"}
- if s.SubscriptionName == nil {
- invalidParams.Add(request.NewErrParamRequired("SubscriptionName"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type ModifyEventSubscriptionOutput struct {
- _ struct{} `type:"structure"`
- // Describes event subscriptions.
- EventSubscription *EventSubscription `type:"structure"`
- }
- // String returns the string representation
- func (s ModifyEventSubscriptionOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyEventSubscriptionOutput) GoString() string {
- return s.String()
- }
- type ModifySnapshotCopyRetentionPeriodInput struct {
- _ struct{} `type:"structure"`
- // The unique identifier of the cluster for which you want to change the retention
- // period for automated snapshots that are copied to a destination region.
- //
- // Constraints: Must be the valid name of an existing cluster that has cross-region
- // snapshot copy enabled.
- //
- // ClusterIdentifier is a required field
- ClusterIdentifier *string `type:"string" required:"true"`
- // The number of days to retain automated snapshots in the destination region
- // after they are copied from the source region.
- //
- // If you decrease the retention period for automated snapshots that are copied
- // to a destination region, Amazon Redshift will delete any existing automated
- // snapshots that were copied to the destination region and that fall outside
- // of the new retention period.
- //
- // Constraints: Must be at least 1 and no more than 35.
- //
- // RetentionPeriod is a required field
- RetentionPeriod *int64 `type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s ModifySnapshotCopyRetentionPeriodInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifySnapshotCopyRetentionPeriodInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ModifySnapshotCopyRetentionPeriodInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ModifySnapshotCopyRetentionPeriodInput"}
- if s.ClusterIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier"))
- }
- if s.RetentionPeriod == nil {
- invalidParams.Add(request.NewErrParamRequired("RetentionPeriod"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type ModifySnapshotCopyRetentionPeriodOutput struct {
- _ struct{} `type:"structure"`
- // Describes a cluster.
- Cluster *Cluster `type:"structure"`
- }
- // String returns the string representation
- func (s ModifySnapshotCopyRetentionPeriodOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifySnapshotCopyRetentionPeriodOutput) GoString() string {
- return s.String()
- }
- // Describes an orderable cluster option.
- type OrderableClusterOption struct {
- _ struct{} `type:"structure"`
- // A list of availability zones for the orderable cluster.
- AvailabilityZones []*AvailabilityZone `locationNameList:"AvailabilityZone" type:"list"`
- // The cluster type, for example multi-node.
- ClusterType *string `type:"string"`
- // The version of the orderable cluster.
- ClusterVersion *string `type:"string"`
- // The node type for the orderable cluster.
- NodeType *string `type:"string"`
- }
- // String returns the string representation
- func (s OrderableClusterOption) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s OrderableClusterOption) GoString() string {
- return s.String()
- }
- // Describes a parameter in a cluster parameter group.
- type Parameter struct {
- _ struct{} `type:"structure"`
- // The valid range of values for the parameter.
- AllowedValues *string `type:"string"`
- // Specifies how to apply the WLM configuration parameter. Some properties can
- // be applied dynamically, while other properties require that any associated
- // clusters be rebooted for the configuration changes to be applied. For more
- // information about parameters and parameter groups, go to Amazon Redshift
- // Parameter Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html)
- // in the Amazon Redshift Cluster Management Guide.
- ApplyType *string `type:"string" enum:"ParameterApplyType"`
- // The data type of the parameter.
- DataType *string `type:"string"`
- // A description of the parameter.
- Description *string `type:"string"`
- // If true, the parameter can be modified. Some parameters have security or
- // operational implications that prevent them from being changed.
- IsModifiable *bool `type:"boolean"`
- // The earliest engine version to which the parameter can apply.
- MinimumEngineVersion *string `type:"string"`
- // The name of the parameter.
- ParameterName *string `type:"string"`
- // The value of the parameter.
- ParameterValue *string `type:"string"`
- // The source of the parameter value, such as "engine-default" or "user".
- Source *string `type:"string"`
- }
- // String returns the string representation
- func (s Parameter) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Parameter) GoString() string {
- return s.String()
- }
- // Describes cluster attributes that are in a pending state. A change to one
- // or more the attributes was requested and is in progress or will be applied.
- type PendingModifiedValues struct {
- _ struct{} `type:"structure"`
- // The pending or in-progress change of the automated snapshot retention period.
- AutomatedSnapshotRetentionPeriod *int64 `type:"integer"`
- // The pending or in-progress change of the new identifier for the cluster.
- ClusterIdentifier *string `type:"string"`
- // The pending or in-progress change of the cluster type.
- ClusterType *string `type:"string"`
- // The pending or in-progress change of the service version.
- ClusterVersion *string `type:"string"`
- // An option that specifies whether to create the cluster with enhanced VPC
- // routing enabled. To create a cluster that uses enhanced VPC routing, the
- // cluster must be in a VPC. For more information, see Enhanced VPC Routing
- // (http://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // If this option is true, enhanced VPC routing is enabled.
- //
- // Default: false
- EnhancedVpcRouting *bool `type:"boolean"`
- // The pending or in-progress change of the master user password for the cluster.
- MasterUserPassword *string `type:"string"`
- // The pending or in-progress change of the cluster's node type.
- NodeType *string `type:"string"`
- // The pending or in-progress change of the number of nodes in the cluster.
- NumberOfNodes *int64 `type:"integer"`
- // The pending or in-progress change of the ability to connect to the cluster
- // from the public network.
- PubliclyAccessible *bool `type:"boolean"`
- }
- // String returns the string representation
- func (s PendingModifiedValues) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s PendingModifiedValues) GoString() string {
- return s.String()
- }
- type PurchaseReservedNodeOfferingInput struct {
- _ struct{} `type:"structure"`
- // The number of reserved nodes that you want to purchase.
- //
- // Default: 1
- NodeCount *int64 `type:"integer"`
- // The unique identifier of the reserved node offering you want to purchase.
- //
- // ReservedNodeOfferingId is a required field
- ReservedNodeOfferingId *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s PurchaseReservedNodeOfferingInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s PurchaseReservedNodeOfferingInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *PurchaseReservedNodeOfferingInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "PurchaseReservedNodeOfferingInput"}
- if s.ReservedNodeOfferingId == nil {
- invalidParams.Add(request.NewErrParamRequired("ReservedNodeOfferingId"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type PurchaseReservedNodeOfferingOutput struct {
- _ struct{} `type:"structure"`
- // Describes a reserved node. You can call the DescribeReservedNodeOfferings
- // API to obtain the available reserved node offerings.
- ReservedNode *ReservedNode `type:"structure"`
- }
- // String returns the string representation
- func (s PurchaseReservedNodeOfferingOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s PurchaseReservedNodeOfferingOutput) GoString() string {
- return s.String()
- }
- type RebootClusterInput struct {
- _ struct{} `type:"structure"`
- // The cluster identifier.
- //
- // ClusterIdentifier is a required field
- ClusterIdentifier *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s RebootClusterInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RebootClusterInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *RebootClusterInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "RebootClusterInput"}
- if s.ClusterIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type RebootClusterOutput struct {
- _ struct{} `type:"structure"`
- // Describes a cluster.
- Cluster *Cluster `type:"structure"`
- }
- // String returns the string representation
- func (s RebootClusterOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RebootClusterOutput) GoString() string {
- return s.String()
- }
- // Describes a recurring charge.
- type RecurringCharge struct {
- _ struct{} `type:"structure"`
- // The amount charged per the period of time specified by the recurring charge
- // frequency.
- RecurringChargeAmount *float64 `type:"double"`
- // The frequency at which the recurring charge amount is applied.
- RecurringChargeFrequency *string `type:"string"`
- }
- // String returns the string representation
- func (s RecurringCharge) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RecurringCharge) GoString() string {
- return s.String()
- }
- // Describes a reserved node. You can call the DescribeReservedNodeOfferings
- // API to obtain the available reserved node offerings.
- type ReservedNode struct {
- _ struct{} `type:"structure"`
- // The currency code for the reserved cluster.
- CurrencyCode *string `type:"string"`
- // The duration of the node reservation in seconds.
- Duration *int64 `type:"integer"`
- // The fixed cost Amazon Redshift charges you for this reserved node.
- FixedPrice *float64 `type:"double"`
- // The number of reserved compute nodes.
- NodeCount *int64 `type:"integer"`
- // The node type of the reserved node.
- NodeType *string `type:"string"`
- // The anticipated utilization of the reserved node, as defined in the reserved
- // node offering.
- OfferingType *string `type:"string"`
- // The recurring charges for the reserved node.
- RecurringCharges []*RecurringCharge `locationNameList:"RecurringCharge" type:"list"`
- // The unique identifier for the reservation.
- ReservedNodeId *string `type:"string"`
- // The identifier for the reserved node offering.
- ReservedNodeOfferingId *string `type:"string"`
- // The time the reservation started. You purchase a reserved node offering for
- // a duration. This is the start time of that duration.
- StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
- // The state of the reserved compute node.
- //
- // Possible Values:
- //
- // * pending-payment-This reserved node has recently been purchased, and
- // the sale has been approved, but payment has not yet been confirmed.
- //
- // * active-This reserved node is owned by the caller and is available for
- // use.
- //
- // * payment-failed-Payment failed for the purchase attempt.
- State *string `type:"string"`
- // The hourly rate Amazon Redshift charges you for this reserved node.
- UsagePrice *float64 `type:"double"`
- }
- // String returns the string representation
- func (s ReservedNode) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ReservedNode) GoString() string {
- return s.String()
- }
- // Describes a reserved node offering.
- type ReservedNodeOffering struct {
- _ struct{} `type:"structure"`
- // The currency code for the compute nodes offering.
- CurrencyCode *string `type:"string"`
- // The duration, in seconds, for which the offering will reserve the node.
- Duration *int64 `type:"integer"`
- // The upfront fixed charge you will pay to purchase the specific reserved node
- // offering.
- FixedPrice *float64 `type:"double"`
- // The node type offered by the reserved node offering.
- NodeType *string `type:"string"`
- // The anticipated utilization of the reserved node, as defined in the reserved
- // node offering.
- OfferingType *string `type:"string"`
- // The charge to your account regardless of whether you are creating any clusters
- // using the node offering. Recurring charges are only in effect for heavy-utilization
- // reserved nodes.
- RecurringCharges []*RecurringCharge `locationNameList:"RecurringCharge" type:"list"`
- // The offering identifier.
- ReservedNodeOfferingId *string `type:"string"`
- // The rate you are charged for each hour the cluster that is using the offering
- // is running.
- UsagePrice *float64 `type:"double"`
- }
- // String returns the string representation
- func (s ReservedNodeOffering) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ReservedNodeOffering) GoString() string {
- return s.String()
- }
- type ResetClusterParameterGroupInput struct {
- _ struct{} `type:"structure"`
- // The name of the cluster parameter group to be reset.
- //
- // ParameterGroupName is a required field
- ParameterGroupName *string `type:"string" required:"true"`
- // An array of names of parameters to be reset. If ResetAllParameters option
- // is not used, then at least one parameter name must be supplied.
- //
- // Constraints: A maximum of 20 parameters can be reset in a single request.
- Parameters []*Parameter `locationNameList:"Parameter" type:"list"`
- // If true, all parameters in the specified parameter group will be reset to
- // their default values.
- //
- // Default: true
- ResetAllParameters *bool `type:"boolean"`
- }
- // String returns the string representation
- func (s ResetClusterParameterGroupInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ResetClusterParameterGroupInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ResetClusterParameterGroupInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ResetClusterParameterGroupInput"}
- if s.ParameterGroupName == nil {
- invalidParams.Add(request.NewErrParamRequired("ParameterGroupName"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type RestoreFromClusterSnapshotInput struct {
- _ struct{} `type:"structure"`
- // Reserved.
- AdditionalInfo *string `type:"string"`
- // If true, major version upgrades can be applied during the maintenance window
- // to the Amazon Redshift engine that is running on the cluster.
- //
- // Default: true
- AllowVersionUpgrade *bool `type:"boolean"`
- // The number of days that automated snapshots are retained. If the value is
- // 0, automated snapshots are disabled. Even if automated snapshots are disabled,
- // you can still create manual snapshots when you want with CreateClusterSnapshot.
- //
- // Default: The value selected for the cluster from which the snapshot was taken.
- //
- // Constraints: Must be a value from 0 to 35.
- AutomatedSnapshotRetentionPeriod *int64 `type:"integer"`
- // The Amazon EC2 Availability Zone in which to restore the cluster.
- //
- // Default: A random, system-chosen Availability Zone.
- //
- // Example: us-east-1a
- AvailabilityZone *string `type:"string"`
- // The identifier of the cluster that will be created from restoring the snapshot.
- //
- // Constraints:
- //
- // * Must contain from 1 to 63 alphanumeric characters or hyphens.
- //
- // * Alphabetic characters must be lowercase.
- //
- // * First character must be a letter.
- //
- // * Cannot end with a hyphen or contain two consecutive hyphens.
- //
- // * Must be unique for all clusters within an AWS account.
- //
- // ClusterIdentifier is a required field
- ClusterIdentifier *string `type:"string" required:"true"`
- // The name of the parameter group to be associated with this cluster.
- //
- // Default: The default Amazon Redshift cluster parameter group. For information
- // about the default parameter group, go to Working with Amazon Redshift Parameter
- // Groups (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html).
- //
- // Constraints:
- //
- // * Must be 1 to 255 alphanumeric characters or hyphens.
- //
- // * First character must be a letter.
- //
- // * Cannot end with a hyphen or contain two consecutive hyphens.
- ClusterParameterGroupName *string `type:"string"`
- // A list of security groups to be associated with this cluster.
- //
- // Default: The default cluster security group for Amazon Redshift.
- //
- // Cluster security groups only apply to clusters outside of VPCs.
- ClusterSecurityGroups []*string `locationNameList:"ClusterSecurityGroupName" type:"list"`
- // The name of the subnet group where you want to cluster restored.
- //
- // A snapshot of cluster in VPC can be restored only in VPC. Therefore, you
- // must provide subnet group name where you want the cluster restored.
- ClusterSubnetGroupName *string `type:"string"`
- // The elastic IP (EIP) address for the cluster.
- ElasticIp *string `type:"string"`
- // An option that specifies whether to create the cluster with enhanced VPC
- // routing enabled. To create a cluster that uses enhanced VPC routing, the
- // cluster must be in a VPC. For more information, see Enhanced VPC Routing
- // (http://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // If this option is true, enhanced VPC routing is enabled.
- //
- // Default: false
- EnhancedVpcRouting *bool `type:"boolean"`
- // Specifies the name of the HSM client certificate the Amazon Redshift cluster
- // uses to retrieve the data encryption keys stored in an HSM.
- HsmClientCertificateIdentifier *string `type:"string"`
- // Specifies the name of the HSM configuration that contains the information
- // the Amazon Redshift cluster can use to retrieve and store keys in an HSM.
- HsmConfigurationIdentifier *string `type:"string"`
- // A list of AWS Identity and Access Management (IAM) roles that can be used
- // by the cluster to access other AWS services. You must supply the IAM roles
- // in their Amazon Resource Name (ARN) format. You can supply up to 10 IAM roles
- // in a single request.
- //
- // A cluster can have up to 10 IAM roles associated at any time.
- IamRoles []*string `locationNameList:"IamRoleArn" type:"list"`
- // The AWS Key Management Service (KMS) key ID of the encryption key that you
- // want to use to encrypt data in the cluster that you restore from a shared
- // snapshot.
- KmsKeyId *string `type:"string"`
- // The node type that the restored cluster will be provisioned with.
- //
- // Default: The node type of the cluster from which the snapshot was taken.
- // You can modify this if you are using any DS node type. In that case, you
- // can choose to restore into another DS node type of the same size. For example,
- // you can restore ds1.8xlarge into ds2.8xlarge, or ds2.xlarge into ds1.xlarge.
- // If you have a DC instance type, you must restore into that same instance
- // type and size. In other words, you can only restore a dc1.large instance
- // type into another dc1.large instance type. For more information about node
- // types, see About Clusters and Nodes (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#rs-about-clusters-and-nodes)
- // in the Amazon Redshift Cluster Management Guide
- NodeType *string `type:"string"`
- // The AWS customer account used to create or copy the snapshot. Required if
- // you are restoring a snapshot you do not own, optional if you own the snapshot.
- OwnerAccount *string `type:"string"`
- // The port number on which the cluster accepts connections.
- //
- // Default: The same port as the original cluster.
- //
- // Constraints: Must be between 1115 and 65535.
- Port *int64 `type:"integer"`
- // The weekly time range (in UTC) during which automated cluster maintenance
- // can occur.
- //
- // Format: ddd:hh24:mi-ddd:hh24:mi
- //
- // Default: The value selected for the cluster from which the snapshot was taken.
- // For more information about the time blocks for each region, see Maintenance
- // Windows (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#rs-maintenance-windows)
- // in Amazon Redshift Cluster Management Guide.
- //
- // Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun
- //
- // Constraints: Minimum 30-minute window.
- PreferredMaintenanceWindow *string `type:"string"`
- // If true, the cluster can be accessed from a public network.
- PubliclyAccessible *bool `type:"boolean"`
- // The name of the cluster the source snapshot was created from. This parameter
- // is required if your IAM user has a policy containing a snapshot resource
- // element that specifies anything other than * for the cluster name.
- SnapshotClusterIdentifier *string `type:"string"`
- // The name of the snapshot from which to create the new cluster. This parameter
- // isn't case sensitive.
- //
- // Example: my-snapshot-id
- //
- // SnapshotIdentifier is a required field
- SnapshotIdentifier *string `type:"string" required:"true"`
- // A list of Virtual Private Cloud (VPC) security groups to be associated with
- // the cluster.
- //
- // Default: The default VPC security group is associated with the cluster.
- //
- // VPC security groups only apply to clusters in VPCs.
- VpcSecurityGroupIds []*string `locationNameList:"VpcSecurityGroupId" type:"list"`
- }
- // String returns the string representation
- func (s RestoreFromClusterSnapshotInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RestoreFromClusterSnapshotInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *RestoreFromClusterSnapshotInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "RestoreFromClusterSnapshotInput"}
- if s.ClusterIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier"))
- }
- if s.SnapshotIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type RestoreFromClusterSnapshotOutput struct {
- _ struct{} `type:"structure"`
- // Describes a cluster.
- Cluster *Cluster `type:"structure"`
- }
- // String returns the string representation
- func (s RestoreFromClusterSnapshotOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RestoreFromClusterSnapshotOutput) GoString() string {
- return s.String()
- }
- // Describes the status of a cluster restore action. Returns null if the cluster
- // was not created by restoring a snapshot.
- type RestoreStatus struct {
- _ struct{} `type:"structure"`
- // The number of megabytes per second being transferred from the backup storage.
- // Returns the average rate for a completed backup.
- CurrentRestoreRateInMegaBytesPerSecond *float64 `type:"double"`
- // The amount of time an in-progress restore has been running, or the amount
- // of time it took a completed restore to finish.
- ElapsedTimeInSeconds *int64 `type:"long"`
- // The estimate of the time remaining before the restore will complete. Returns
- // 0 for a completed restore.
- EstimatedTimeToCompletionInSeconds *int64 `type:"long"`
- // The number of megabytes that have been transferred from snapshot storage.
- ProgressInMegaBytes *int64 `type:"long"`
- // The size of the set of snapshot data used to restore the cluster.
- SnapshotSizeInMegaBytes *int64 `type:"long"`
- // The status of the restore action. Returns starting, restoring, completed,
- // or failed.
- Status *string `type:"string"`
- }
- // String returns the string representation
- func (s RestoreStatus) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RestoreStatus) GoString() string {
- return s.String()
- }
- type RestoreTableFromClusterSnapshotInput struct {
- _ struct{} `type:"structure"`
- // The identifier of the Amazon Redshift cluster to restore the table to.
- //
- // ClusterIdentifier is a required field
- ClusterIdentifier *string `type:"string" required:"true"`
- // The name of the table to create as a result of the current request.
- //
- // NewTableName is a required field
- NewTableName *string `type:"string" required:"true"`
- // The identifier of the snapshot to restore the table from. This snapshot must
- // have been created from the Amazon Redshift cluster specified by the ClusterIdentifier
- // parameter.
- //
- // SnapshotIdentifier is a required field
- SnapshotIdentifier *string `type:"string" required:"true"`
- // The name of the source database that contains the table to restore from.
- //
- // SourceDatabaseName is a required field
- SourceDatabaseName *string `type:"string" required:"true"`
- // The name of the source schema that contains the table to restore from. If
- // you do not specify a SourceSchemaName value, the default is public.
- SourceSchemaName *string `type:"string"`
- // The name of the source table to restore from.
- //
- // SourceTableName is a required field
- SourceTableName *string `type:"string" required:"true"`
- // The name of the database to restore the table to.
- TargetDatabaseName *string `type:"string"`
- // The name of the schema to restore the table to.
- TargetSchemaName *string `type:"string"`
- }
- // String returns the string representation
- func (s RestoreTableFromClusterSnapshotInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RestoreTableFromClusterSnapshotInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *RestoreTableFromClusterSnapshotInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "RestoreTableFromClusterSnapshotInput"}
- if s.ClusterIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier"))
- }
- if s.NewTableName == nil {
- invalidParams.Add(request.NewErrParamRequired("NewTableName"))
- }
- if s.SnapshotIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier"))
- }
- if s.SourceDatabaseName == nil {
- invalidParams.Add(request.NewErrParamRequired("SourceDatabaseName"))
- }
- if s.SourceTableName == nil {
- invalidParams.Add(request.NewErrParamRequired("SourceTableName"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type RestoreTableFromClusterSnapshotOutput struct {
- _ struct{} `type:"structure"`
- // Describes the status of a RestoreTableFromClusterSnapshot operation.
- TableRestoreStatus *TableRestoreStatus `type:"structure"`
- }
- // String returns the string representation
- func (s RestoreTableFromClusterSnapshotOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RestoreTableFromClusterSnapshotOutput) GoString() string {
- return s.String()
- }
- type RevokeClusterSecurityGroupIngressInput struct {
- _ struct{} `type:"structure"`
- // The IP range for which to revoke access. This range must be a valid Classless
- // Inter-Domain Routing (CIDR) block of IP addresses. If CIDRIP is specified,
- // EC2SecurityGroupName and EC2SecurityGroupOwnerId cannot be provided.
- CIDRIP *string `type:"string"`
- // The name of the security Group from which to revoke the ingress rule.
- //
- // ClusterSecurityGroupName is a required field
- ClusterSecurityGroupName *string `type:"string" required:"true"`
- // The name of the EC2 Security Group whose access is to be revoked. If EC2SecurityGroupName
- // is specified, EC2SecurityGroupOwnerId must also be provided and CIDRIP cannot
- // be provided.
- EC2SecurityGroupName *string `type:"string"`
- // The AWS account number of the owner of the security group specified in the
- // EC2SecurityGroupName parameter. The AWS access key ID is not an acceptable
- // value. If EC2SecurityGroupOwnerId is specified, EC2SecurityGroupName must
- // also be provided. and CIDRIP cannot be provided.
- //
- // Example: 111122223333
- EC2SecurityGroupOwnerId *string `type:"string"`
- }
- // String returns the string representation
- func (s RevokeClusterSecurityGroupIngressInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RevokeClusterSecurityGroupIngressInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *RevokeClusterSecurityGroupIngressInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "RevokeClusterSecurityGroupIngressInput"}
- if s.ClusterSecurityGroupName == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterSecurityGroupName"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type RevokeClusterSecurityGroupIngressOutput struct {
- _ struct{} `type:"structure"`
- // Describes a security group.
- ClusterSecurityGroup *ClusterSecurityGroup `type:"structure"`
- }
- // String returns the string representation
- func (s RevokeClusterSecurityGroupIngressOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RevokeClusterSecurityGroupIngressOutput) GoString() string {
- return s.String()
- }
- type RevokeSnapshotAccessInput struct {
- _ struct{} `type:"structure"`
- // The identifier of the AWS customer account that can no longer restore the
- // specified snapshot.
- //
- // AccountWithRestoreAccess is a required field
- AccountWithRestoreAccess *string `type:"string" required:"true"`
- // The identifier of the cluster the snapshot was created from. This parameter
- // is required if your IAM user has a policy containing a snapshot resource
- // element that specifies anything other than * for the cluster name.
- SnapshotClusterIdentifier *string `type:"string"`
- // The identifier of the snapshot that the account can no longer access.
- //
- // SnapshotIdentifier is a required field
- SnapshotIdentifier *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s RevokeSnapshotAccessInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RevokeSnapshotAccessInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *RevokeSnapshotAccessInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "RevokeSnapshotAccessInput"}
- if s.AccountWithRestoreAccess == nil {
- invalidParams.Add(request.NewErrParamRequired("AccountWithRestoreAccess"))
- }
- if s.SnapshotIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("SnapshotIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type RevokeSnapshotAccessOutput struct {
- _ struct{} `type:"structure"`
- // Describes a snapshot.
- Snapshot *Snapshot `type:"structure"`
- }
- // String returns the string representation
- func (s RevokeSnapshotAccessOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RevokeSnapshotAccessOutput) GoString() string {
- return s.String()
- }
- type RotateEncryptionKeyInput struct {
- _ struct{} `type:"structure"`
- // The unique identifier of the cluster that you want to rotate the encryption
- // keys for.
- //
- // Constraints: Must be the name of valid cluster that has encryption enabled.
- //
- // ClusterIdentifier is a required field
- ClusterIdentifier *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s RotateEncryptionKeyInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RotateEncryptionKeyInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *RotateEncryptionKeyInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "RotateEncryptionKeyInput"}
- if s.ClusterIdentifier == nil {
- invalidParams.Add(request.NewErrParamRequired("ClusterIdentifier"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- type RotateEncryptionKeyOutput struct {
- _ struct{} `type:"structure"`
- // Describes a cluster.
- Cluster *Cluster `type:"structure"`
- }
- // String returns the string representation
- func (s RotateEncryptionKeyOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RotateEncryptionKeyOutput) GoString() string {
- return s.String()
- }
- // Describes a snapshot.
- type Snapshot struct {
- _ struct{} `type:"structure"`
- // A list of the AWS customer accounts authorized to restore the snapshot. Returns
- // null if no accounts are authorized. Visible only to the snapshot owner.
- AccountsWithRestoreAccess []*AccountWithRestoreAccess `locationNameList:"AccountWithRestoreAccess" type:"list"`
- // The size of the incremental backup.
- ActualIncrementalBackupSizeInMegaBytes *float64 `type:"double"`
- // The Availability Zone in which the cluster was created.
- AvailabilityZone *string `type:"string"`
- // The number of megabytes that have been transferred to the snapshot backup.
- BackupProgressInMegaBytes *float64 `type:"double"`
- // The time (UTC) when the cluster was originally created.
- ClusterCreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
- // The identifier of the cluster for which the snapshot was taken.
- ClusterIdentifier *string `type:"string"`
- // The version ID of the Amazon Redshift engine that is running on the cluster.
- ClusterVersion *string `type:"string"`
- // The number of megabytes per second being transferred to the snapshot backup.
- // Returns 0 for a completed backup.
- CurrentBackupRateInMegaBytesPerSecond *float64 `type:"double"`
- // The name of the database that was created when the cluster was created.
- DBName *string `type:"string"`
- // The amount of time an in-progress snapshot backup has been running, or the
- // amount of time it took a completed backup to finish.
- ElapsedTimeInSeconds *int64 `type:"long"`
- // If true, the data in the snapshot is encrypted at rest.
- Encrypted *bool `type:"boolean"`
- // A boolean that indicates whether the snapshot data is encrypted using the
- // HSM keys of the source cluster. true indicates that the data is encrypted
- // using HSM keys.
- EncryptedWithHSM *bool `type:"boolean"`
- // An option that specifies whether to create the cluster with enhanced VPC
- // routing enabled. To create a cluster that uses enhanced VPC routing, the
- // cluster must be in a VPC. For more information, see Enhanced VPC Routing
- // (http://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html)
- // in the Amazon Redshift Cluster Management Guide.
- //
- // If this option is true, enhanced VPC routing is enabled.
- //
- // Default: false
- EnhancedVpcRouting *bool `type:"boolean"`
- // The estimate of the time remaining before the snapshot backup will complete.
- // Returns 0 for a completed backup.
- EstimatedSecondsToCompletion *int64 `type:"long"`
- // The AWS Key Management Service (KMS) key ID of the encryption key that was
- // used to encrypt data in the cluster from which the snapshot was taken.
- KmsKeyId *string `type:"string"`
- // The master user name for the cluster.
- MasterUsername *string `type:"string"`
- // The node type of the nodes in the cluster.
- NodeType *string `type:"string"`
- // The number of nodes in the cluster.
- NumberOfNodes *int64 `type:"integer"`
- // For manual snapshots, the AWS customer account used to create or copy the
- // snapshot. For automatic snapshots, the owner of the cluster. The owner can
- // perform all snapshot actions, such as sharing a manual snapshot.
- OwnerAccount *string `type:"string"`
- // The port that the cluster is listening on.
- Port *int64 `type:"integer"`
- // The list of node types that this cluster snapshot is able to restore into.
- RestorableNodeTypes []*string `locationNameList:"NodeType" type:"list"`
- // The time (UTC) when Amazon Redshift began the snapshot. A snapshot contains
- // a copy of the cluster data as of this exact time.
- SnapshotCreateTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
- // The snapshot identifier that is provided in the request.
- SnapshotIdentifier *string `type:"string"`
- // The snapshot type. Snapshots created using CreateClusterSnapshot and CopyClusterSnapshot
- // will be of type "manual".
- SnapshotType *string `type:"string"`
- // The source region from which the snapshot was copied.
- SourceRegion *string `type:"string"`
- // The snapshot status. The value of the status depends on the API operation
- // used.
- //
- // * CreateClusterSnapshot and CopyClusterSnapshot returns status as "creating".
- //
- //
- // * DescribeClusterSnapshots returns status as "creating", "available",
- // "final snapshot", or "failed".
- //
- // * DeleteClusterSnapshot returns status as "deleted".
- Status *string `type:"string"`
- // The list of tags for the cluster snapshot.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- // The size of the complete set of backup data that would be used to restore
- // the cluster.
- TotalBackupSizeInMegaBytes *float64 `type:"double"`
- // The VPC identifier of the cluster if the snapshot is from a cluster in a
- // VPC. Otherwise, this field is not in the output.
- VpcId *string `type:"string"`
- }
- // String returns the string representation
- func (s Snapshot) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Snapshot) GoString() string {
- return s.String()
- }
- // The snapshot copy grant that grants Amazon Redshift permission to encrypt
- // copied snapshots with the specified customer master key (CMK) from AWS KMS
- // in the destination region.
- //
- // For more information about managing snapshot copy grants, go to Amazon Redshift
- // Database Encryption (http://docs.aws.amazon.com/redshift/latest/mgmt/working-with-db-encryption.html)
- // in the Amazon Redshift Cluster Management Guide.
- type SnapshotCopyGrant struct {
- _ struct{} `type:"structure"`
- // The unique identifier of the customer master key (CMK) in AWS KMS to which
- // Amazon Redshift is granted permission.
- KmsKeyId *string `type:"string"`
- // The name of the snapshot copy grant.
- SnapshotCopyGrantName *string `type:"string"`
- // A list of tag instances.
- Tags []*Tag `locationNameList:"Tag" type:"list"`
- }
- // String returns the string representation
- func (s SnapshotCopyGrant) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s SnapshotCopyGrant) GoString() string {
- return s.String()
- }
- // Describes a subnet.
- type Subnet struct {
- _ struct{} `type:"structure"`
- // Describes an availability zone.
- SubnetAvailabilityZone *AvailabilityZone `type:"structure"`
- // The identifier of the subnet.
- SubnetIdentifier *string `type:"string"`
- // The status of the subnet.
- SubnetStatus *string `type:"string"`
- }
- // String returns the string representation
- func (s Subnet) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Subnet) GoString() string {
- return s.String()
- }
- // Describes the status of a RestoreTableFromClusterSnapshot operation.
- type TableRestoreStatus struct {
- _ struct{} `type:"structure"`
- // The identifier of the Amazon Redshift cluster that the table is being restored
- // to.
- ClusterIdentifier *string `type:"string"`
- // A description of the status of the table restore request. Status values include
- // SUCCEEDED, FAILED, CANCELED, PENDING, IN_PROGRESS.
- Message *string `type:"string"`
- // The name of the table to create as a result of the table restore request.
- NewTableName *string `type:"string"`
- // The amount of data restored to the new table so far, in megabytes (MB).
- ProgressInMegaBytes *int64 `type:"long"`
- // The time that the table restore request was made, in Universal Coordinated
- // Time (UTC).
- RequestTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
- // The identifier of the snapshot that the table is being restored from.
- SnapshotIdentifier *string `type:"string"`
- // The name of the source database that contains the table being restored.
- SourceDatabaseName *string `type:"string"`
- // The name of the source schema that contains the table being restored.
- SourceSchemaName *string `type:"string"`
- // The name of the source table being restored.
- SourceTableName *string `type:"string"`
- // A value that describes the current state of the table restore request.
- //
- // Valid Values: SUCCEEDED, FAILED, CANCELED, PENDING, IN_PROGRESS
- Status *string `type:"string" enum:"TableRestoreStatusType"`
- // The unique identifier for the table restore request.
- TableRestoreRequestId *string `type:"string"`
- // The name of the database to restore the table to.
- TargetDatabaseName *string `type:"string"`
- // The name of the schema to restore the table to.
- TargetSchemaName *string `type:"string"`
- // The total amount of data to restore to the new table, in megabytes (MB).
- TotalDataInMegaBytes *int64 `type:"long"`
- }
- // String returns the string representation
- func (s TableRestoreStatus) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s TableRestoreStatus) GoString() string {
- return s.String()
- }
- // A tag consisting of a name/value pair for a resource.
- type Tag struct {
- _ struct{} `type:"structure"`
- // The key, or name, for the resource tag.
- Key *string `type:"string"`
- // The value for the resource tag.
- Value *string `type:"string"`
- }
- // String returns the string representation
- func (s Tag) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Tag) GoString() string {
- return s.String()
- }
- // A tag and its associated resource.
- type TaggedResource struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) with which the tag is associated. For example,
- // arn:aws:redshift:us-east-1:123456789:cluster:t1.
- ResourceName *string `type:"string"`
- // The type of resource with which the tag is associated. Valid resource types
- // are:
- //
- // * Cluster
- //
- // * CIDR/IP
- //
- // * EC2 security group
- //
- // * Snapshot
- //
- // * Cluster security group
- //
- // * Subnet group
- //
- // * HSM connection
- //
- // * HSM certificate
- //
- // * Parameter group
- //
- // For more information about Amazon Redshift resource types and constructing
- // ARNs, go to Constructing an Amazon Redshift Amazon Resource Name (ARN) (http://docs.aws.amazon.com/redshift/latest/mgmt/constructing-redshift-arn.html)
- // in the Amazon Redshift Cluster Management Guide.
- ResourceType *string `type:"string"`
- // The tag for the resource.
- Tag *Tag `type:"structure"`
- }
- // String returns the string representation
- func (s TaggedResource) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s TaggedResource) GoString() string {
- return s.String()
- }
- // Describes the members of a VPC security group.
- type VpcSecurityGroupMembership struct {
- _ struct{} `type:"structure"`
- // The status of the VPC security group.
- Status *string `type:"string"`
- // The identifier of the VPC security group.
- VpcSecurityGroupId *string `type:"string"`
- }
- // String returns the string representation
- func (s VpcSecurityGroupMembership) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s VpcSecurityGroupMembership) GoString() string {
- return s.String()
- }
- const (
- // ParameterApplyTypeStatic is a ParameterApplyType enum value
- ParameterApplyTypeStatic = "static"
- // ParameterApplyTypeDynamic is a ParameterApplyType enum value
- ParameterApplyTypeDynamic = "dynamic"
- )
- const (
- // SourceTypeCluster is a SourceType enum value
- SourceTypeCluster = "cluster"
- // SourceTypeClusterParameterGroup is a SourceType enum value
- SourceTypeClusterParameterGroup = "cluster-parameter-group"
- // SourceTypeClusterSecurityGroup is a SourceType enum value
- SourceTypeClusterSecurityGroup = "cluster-security-group"
- // SourceTypeClusterSnapshot is a SourceType enum value
- SourceTypeClusterSnapshot = "cluster-snapshot"
- )
- const (
- // TableRestoreStatusTypePending is a TableRestoreStatusType enum value
- TableRestoreStatusTypePending = "PENDING"
- // TableRestoreStatusTypeInProgress is a TableRestoreStatusType enum value
- TableRestoreStatusTypeInProgress = "IN_PROGRESS"
- // TableRestoreStatusTypeSucceeded is a TableRestoreStatusType enum value
- TableRestoreStatusTypeSucceeded = "SUCCEEDED"
- // TableRestoreStatusTypeFailed is a TableRestoreStatusType enum value
- TableRestoreStatusTypeFailed = "FAILED"
- // TableRestoreStatusTypeCanceled is a TableRestoreStatusType enum value
- TableRestoreStatusTypeCanceled = "CANCELED"
- )
|