123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016 |
- // THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT.
- // Package elbv2 provides a client for Elastic Load Balancing.
- package elbv2
- import (
- "fmt"
- "time"
- "github.com/aws/aws-sdk-go/aws/awsutil"
- "github.com/aws/aws-sdk-go/aws/request"
- )
- const opAddTags = "AddTags"
- // AddTagsRequest generates a "aws/request.Request" representing the
- // client's request for the AddTags operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See AddTags 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 AddTags 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 AddTagsRequest method.
- // req, resp := client.AddTagsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) AddTagsRequest(input *AddTagsInput) (req *request.Request, output *AddTagsOutput) {
- op := &request.Operation{
- Name: opAddTags,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &AddTagsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &AddTagsOutput{}
- req.Data = output
- return
- }
- // AddTags API operation for Elastic Load Balancing.
- //
- // Adds the specified tags to the specified resource. You can tag your Application
- // Load Balancers and your target groups.
- //
- // Each tag consists of a key and an optional value. If a resource already has
- // a tag with the same key, AddTags updates its value.
- //
- // To list the current tags for your resources, use DescribeTags. To remove
- // tags from your resources, use RemoveTags.
- //
- // 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 Elastic Load Balancing's
- // API operation AddTags for usage and error information.
- //
- // Returned Error Codes:
- // * DuplicateTagKeys
- // A tag key was specified more than once.
- //
- // * TooManyTags
- // You've reached the limit on the number of tags per load balancer.
- //
- // * LoadBalancerNotFound
- // The specified load balancer does not exist.
- //
- // * TargetGroupNotFound
- // The specified target group does not exist.
- //
- func (c *ELBV2) AddTags(input *AddTagsInput) (*AddTagsOutput, error) {
- req, out := c.AddTagsRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateListener = "CreateListener"
- // CreateListenerRequest generates a "aws/request.Request" representing the
- // client's request for the CreateListener operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See CreateListener 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 CreateListener 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 CreateListenerRequest method.
- // req, resp := client.CreateListenerRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) CreateListenerRequest(input *CreateListenerInput) (req *request.Request, output *CreateListenerOutput) {
- op := &request.Operation{
- Name: opCreateListener,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &CreateListenerInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateListenerOutput{}
- req.Data = output
- return
- }
- // CreateListener API operation for Elastic Load Balancing.
- //
- // Creates a listener for the specified Application Load Balancer.
- //
- // You can create up to 10 listeners per load balancer.
- //
- // To update a listener, use ModifyListener. When you are finished with a listener,
- // you can delete it using DeleteListener. If you are finished with both the
- // listener and the load balancer, you can delete them both using DeleteLoadBalancer.
- //
- // For more information, see Listeners for Your Application Load Balancers (http://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html)
- // in the Application Load Balancers 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 Elastic Load Balancing's
- // API operation CreateListener for usage and error information.
- //
- // Returned Error Codes:
- // * DuplicateListener
- // A listener with the specified port already exists.
- //
- // * TooManyListeners
- // You've reached the limit on the number of listeners per load balancer.
- //
- // * TooManyCertificates
- // You've reached the limit on the number of certificates per listener.
- //
- // * LoadBalancerNotFound
- // The specified load balancer does not exist.
- //
- // * TargetGroupNotFound
- // The specified target group does not exist.
- //
- // * TargetGroupAssociationLimit
- // You've reached the limit on the number of load balancers per target group.
- //
- // * InvalidConfigurationRequest
- // The requested configuration is not valid.
- //
- // * IncompatibleProtocols
- // The specified configuration is not valid with this protocol.
- //
- // * SSLPolicyNotFound
- // The specified SSL policy does not exist.
- //
- // * CertificateNotFound
- // The specified certificate does not exist.
- //
- // * UnsupportedProtocol
- // The specified protocol is not supported.
- //
- // * TooManyRegistrationsForTargetId
- // You've reached the limit on the number of times a target can be registered
- // with a load balancer.
- //
- func (c *ELBV2) CreateListener(input *CreateListenerInput) (*CreateListenerOutput, error) {
- req, out := c.CreateListenerRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateLoadBalancer = "CreateLoadBalancer"
- // CreateLoadBalancerRequest generates a "aws/request.Request" representing the
- // client's request for the CreateLoadBalancer operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See CreateLoadBalancer 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 CreateLoadBalancer 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 CreateLoadBalancerRequest method.
- // req, resp := client.CreateLoadBalancerRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) CreateLoadBalancerRequest(input *CreateLoadBalancerInput) (req *request.Request, output *CreateLoadBalancerOutput) {
- op := &request.Operation{
- Name: opCreateLoadBalancer,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &CreateLoadBalancerInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateLoadBalancerOutput{}
- req.Data = output
- return
- }
- // CreateLoadBalancer API operation for Elastic Load Balancing.
- //
- // Creates an Application Load Balancer.
- //
- // To create listeners for your load balancer, use CreateListener. You can add
- // security groups, subnets, and tags when you create your load balancer, or
- // you can add them later using SetSecurityGroups, SetSubnets, and AddTags.
- //
- // To describe your current load balancers, see DescribeLoadBalancers. When
- // you are finished with a load balancer, you can delete it using DeleteLoadBalancer.
- //
- // You can create up to 20 load balancers per region per account. You can request
- // an increase for the number of load balancers for your account. For more information,
- // see Limits for Your Application Load Balancer (http://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-limits.html)
- // in the Application Load Balancers Guide.
- //
- // For more information, see Application Load Balancers (http://docs.aws.amazon.com/elasticloadbalancing/latest/application/application-load-balancers.html)
- // in the Application Load Balancers 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 Elastic Load Balancing's
- // API operation CreateLoadBalancer for usage and error information.
- //
- // Returned Error Codes:
- // * DuplicateLoadBalancerName
- // A load balancer with the specified name already exists for this account.
- //
- // * TooManyLoadBalancers
- // You've reached the limit on the number of load balancers for your AWS account.
- //
- // * InvalidConfigurationRequest
- // The requested configuration is not valid.
- //
- // * SubnetNotFound
- // The specified subnet does not exist.
- //
- // * InvalidSubnet
- // The specified subnet is out of available addresses.
- //
- // * InvalidSecurityGroup
- // The specified security group does not exist.
- //
- // * InvalidScheme
- // The requested scheme is not valid.
- //
- // * TooManyTags
- // You've reached the limit on the number of tags per load balancer.
- //
- // * DuplicateTagKeys
- // A tag key was specified more than once.
- //
- func (c *ELBV2) CreateLoadBalancer(input *CreateLoadBalancerInput) (*CreateLoadBalancerOutput, error) {
- req, out := c.CreateLoadBalancerRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateRule = "CreateRule"
- // CreateRuleRequest generates a "aws/request.Request" representing the
- // client's request for the CreateRule operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See CreateRule 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 CreateRule 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 CreateRuleRequest method.
- // req, resp := client.CreateRuleRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) CreateRuleRequest(input *CreateRuleInput) (req *request.Request, output *CreateRuleOutput) {
- op := &request.Operation{
- Name: opCreateRule,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &CreateRuleInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateRuleOutput{}
- req.Data = output
- return
- }
- // CreateRule API operation for Elastic Load Balancing.
- //
- // Creates a rule for the specified listener.
- //
- // Each rule can have one action and one condition. Rules are evaluated in priority
- // order, from the lowest value to the highest value. When the condition for
- // a rule is met, the specified action is taken. If no conditions are met, the
- // default action for the default rule is taken. For more information, see Listener
- // Rules (http://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html#listener-rules)
- // in the Application Load Balancers Guide.
- //
- // To view your current rules, use DescribeRules. To update a rule, use ModifyRule.
- // To set the priorities of your rules, use SetRulePriorities. To delete a rule,
- // use DeleteRule.
- //
- // 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 Elastic Load Balancing's
- // API operation CreateRule for usage and error information.
- //
- // Returned Error Codes:
- // * PriorityInUse
- // The specified priority is in use.
- //
- // * TooManyTargetGroups
- // You've reached the limit on the number of target groups for your AWS account.
- //
- // * TooManyRules
- // You've reached the limit on the number of rules per load balancer.
- //
- // * TargetGroupAssociationLimit
- // You've reached the limit on the number of load balancers per target group.
- //
- // * ListenerNotFound
- // The specified listener does not exist.
- //
- // * TargetGroupNotFound
- // The specified target group does not exist.
- //
- // * InvalidConfigurationRequest
- // The requested configuration is not valid.
- //
- // * TooManyRegistrationsForTargetId
- // You've reached the limit on the number of times a target can be registered
- // with a load balancer.
- //
- func (c *ELBV2) CreateRule(input *CreateRuleInput) (*CreateRuleOutput, error) {
- req, out := c.CreateRuleRequest(input)
- err := req.Send()
- return out, err
- }
- const opCreateTargetGroup = "CreateTargetGroup"
- // CreateTargetGroupRequest generates a "aws/request.Request" representing the
- // client's request for the CreateTargetGroup operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See CreateTargetGroup 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 CreateTargetGroup 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 CreateTargetGroupRequest method.
- // req, resp := client.CreateTargetGroupRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) CreateTargetGroupRequest(input *CreateTargetGroupInput) (req *request.Request, output *CreateTargetGroupOutput) {
- op := &request.Operation{
- Name: opCreateTargetGroup,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &CreateTargetGroupInput{}
- }
- req = c.newRequest(op, input, output)
- output = &CreateTargetGroupOutput{}
- req.Data = output
- return
- }
- // CreateTargetGroup API operation for Elastic Load Balancing.
- //
- // Creates a target group.
- //
- // To register targets with the target group, use RegisterTargets. To update
- // the health check settings for the target group, use ModifyTargetGroup. To
- // monitor the health of targets in the target group, use DescribeTargetHealth.
- //
- // To route traffic to the targets in a target group, specify the target group
- // in an action using CreateListener or CreateRule.
- //
- // To delete a target group, use DeleteTargetGroup.
- //
- // For more information, see Target Groups for Your Application Load Balancers
- // (http://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-target-groups.html)
- // in the Application Load Balancers 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 Elastic Load Balancing's
- // API operation CreateTargetGroup for usage and error information.
- //
- // Returned Error Codes:
- // * DuplicateTargetGroupName
- // A target group with the specified name already exists.
- //
- // * TooManyTargetGroups
- // You've reached the limit on the number of target groups for your AWS account.
- //
- func (c *ELBV2) CreateTargetGroup(input *CreateTargetGroupInput) (*CreateTargetGroupOutput, error) {
- req, out := c.CreateTargetGroupRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteListener = "DeleteListener"
- // DeleteListenerRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteListener operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DeleteListener 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 DeleteListener 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 DeleteListenerRequest method.
- // req, resp := client.DeleteListenerRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) DeleteListenerRequest(input *DeleteListenerInput) (req *request.Request, output *DeleteListenerOutput) {
- op := &request.Operation{
- Name: opDeleteListener,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeleteListenerInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DeleteListenerOutput{}
- req.Data = output
- return
- }
- // DeleteListener API operation for Elastic Load Balancing.
- //
- // Deletes the specified listener.
- //
- // Alternatively, your listener is deleted when you delete the load balancer
- // it is attached to using DeleteLoadBalancer.
- //
- // 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 Elastic Load Balancing's
- // API operation DeleteListener for usage and error information.
- //
- // Returned Error Codes:
- // * ListenerNotFound
- // The specified listener does not exist.
- //
- func (c *ELBV2) DeleteListener(input *DeleteListenerInput) (*DeleteListenerOutput, error) {
- req, out := c.DeleteListenerRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteLoadBalancer = "DeleteLoadBalancer"
- // DeleteLoadBalancerRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteLoadBalancer operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DeleteLoadBalancer 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 DeleteLoadBalancer 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 DeleteLoadBalancerRequest method.
- // req, resp := client.DeleteLoadBalancerRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) DeleteLoadBalancerRequest(input *DeleteLoadBalancerInput) (req *request.Request, output *DeleteLoadBalancerOutput) {
- op := &request.Operation{
- Name: opDeleteLoadBalancer,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeleteLoadBalancerInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DeleteLoadBalancerOutput{}
- req.Data = output
- return
- }
- // DeleteLoadBalancer API operation for Elastic Load Balancing.
- //
- // Deletes the specified Application Load Balancer and its attached listeners.
- //
- // You can't delete a load balancer if deletion protection is enabled. If the
- // load balancer does not exist or has already been deleted, the call succeeds.
- //
- // Deleting a load balancer does not affect its registered targets. For example,
- // your EC2 instances continue to run and are still registered to their target
- // groups. If you no longer need these EC2 instances, you can stop or terminate
- // 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 Elastic Load Balancing's
- // API operation DeleteLoadBalancer for usage and error information.
- //
- // Returned Error Codes:
- // * LoadBalancerNotFound
- // The specified load balancer does not exist.
- //
- // * OperationNotPermitted
- // This operation is not allowed.
- //
- func (c *ELBV2) DeleteLoadBalancer(input *DeleteLoadBalancerInput) (*DeleteLoadBalancerOutput, error) {
- req, out := c.DeleteLoadBalancerRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteRule = "DeleteRule"
- // DeleteRuleRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteRule operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DeleteRule 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 DeleteRule 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 DeleteRuleRequest method.
- // req, resp := client.DeleteRuleRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) DeleteRuleRequest(input *DeleteRuleInput) (req *request.Request, output *DeleteRuleOutput) {
- op := &request.Operation{
- Name: opDeleteRule,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeleteRuleInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DeleteRuleOutput{}
- req.Data = output
- return
- }
- // DeleteRule API operation for Elastic Load Balancing.
- //
- // Deletes the specified rule.
- //
- // 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 Elastic Load Balancing's
- // API operation DeleteRule for usage and error information.
- //
- // Returned Error Codes:
- // * RuleNotFound
- // The specified rule does not exist.
- //
- // * OperationNotPermitted
- // This operation is not allowed.
- //
- func (c *ELBV2) DeleteRule(input *DeleteRuleInput) (*DeleteRuleOutput, error) {
- req, out := c.DeleteRuleRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeleteTargetGroup = "DeleteTargetGroup"
- // DeleteTargetGroupRequest generates a "aws/request.Request" representing the
- // client's request for the DeleteTargetGroup operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DeleteTargetGroup 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 DeleteTargetGroup 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 DeleteTargetGroupRequest method.
- // req, resp := client.DeleteTargetGroupRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) DeleteTargetGroupRequest(input *DeleteTargetGroupInput) (req *request.Request, output *DeleteTargetGroupOutput) {
- op := &request.Operation{
- Name: opDeleteTargetGroup,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeleteTargetGroupInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DeleteTargetGroupOutput{}
- req.Data = output
- return
- }
- // DeleteTargetGroup API operation for Elastic Load Balancing.
- //
- // Deletes the specified target group.
- //
- // You can delete a target group if it is not referenced by any actions. Deleting
- // a target group also deletes any associated health checks.
- //
- // 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 Elastic Load Balancing's
- // API operation DeleteTargetGroup for usage and error information.
- //
- // Returned Error Codes:
- // * ResourceInUse
- // A specified resource is in use.
- //
- func (c *ELBV2) DeleteTargetGroup(input *DeleteTargetGroupInput) (*DeleteTargetGroupOutput, error) {
- req, out := c.DeleteTargetGroupRequest(input)
- err := req.Send()
- return out, err
- }
- const opDeregisterTargets = "DeregisterTargets"
- // DeregisterTargetsRequest generates a "aws/request.Request" representing the
- // client's request for the DeregisterTargets operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DeregisterTargets 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 DeregisterTargets 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 DeregisterTargetsRequest method.
- // req, resp := client.DeregisterTargetsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) DeregisterTargetsRequest(input *DeregisterTargetsInput) (req *request.Request, output *DeregisterTargetsOutput) {
- op := &request.Operation{
- Name: opDeregisterTargets,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DeregisterTargetsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DeregisterTargetsOutput{}
- req.Data = output
- return
- }
- // DeregisterTargets API operation for Elastic Load Balancing.
- //
- // Deregisters the specified targets from the specified target group. After
- // the targets are deregistered, they no longer receive traffic from the load
- // balancer.
- //
- // 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 Elastic Load Balancing's
- // API operation DeregisterTargets for usage and error information.
- //
- // Returned Error Codes:
- // * TargetGroupNotFound
- // The specified target group does not exist.
- //
- // * InvalidTarget
- // The specified target does not exist or is not in the same VPC as the target
- // group.
- //
- func (c *ELBV2) DeregisterTargets(input *DeregisterTargetsInput) (*DeregisterTargetsOutput, error) {
- req, out := c.DeregisterTargetsRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeListeners = "DescribeListeners"
- // DescribeListenersRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeListeners operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeListeners 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 DescribeListeners 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 DescribeListenersRequest method.
- // req, resp := client.DescribeListenersRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) DescribeListenersRequest(input *DescribeListenersInput) (req *request.Request, output *DescribeListenersOutput) {
- op := &request.Operation{
- Name: opDescribeListeners,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"NextMarker"},
- LimitToken: "",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &DescribeListenersInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeListenersOutput{}
- req.Data = output
- return
- }
- // DescribeListeners API operation for Elastic Load Balancing.
- //
- // Describes the specified listeners or the listeners for the specified Application
- // Load Balancer. You must specify either a load balancer or one or more listeners.
- //
- // 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 Elastic Load Balancing's
- // API operation DescribeListeners for usage and error information.
- //
- // Returned Error Codes:
- // * ListenerNotFound
- // The specified listener does not exist.
- //
- // * LoadBalancerNotFound
- // The specified load balancer does not exist.
- //
- func (c *ELBV2) DescribeListeners(input *DescribeListenersInput) (*DescribeListenersOutput, error) {
- req, out := c.DescribeListenersRequest(input)
- err := req.Send()
- return out, err
- }
- // DescribeListenersPages iterates over the pages of a DescribeListeners operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See DescribeListeners 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 DescribeListeners operation.
- // pageNum := 0
- // err := client.DescribeListenersPages(params,
- // func(page *DescribeListenersOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *ELBV2) DescribeListenersPages(input *DescribeListenersInput, fn func(p *DescribeListenersOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.DescribeListenersRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*DescribeListenersOutput), lastPage)
- })
- }
- const opDescribeLoadBalancerAttributes = "DescribeLoadBalancerAttributes"
- // DescribeLoadBalancerAttributesRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeLoadBalancerAttributes operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeLoadBalancerAttributes 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 DescribeLoadBalancerAttributes 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 DescribeLoadBalancerAttributesRequest method.
- // req, resp := client.DescribeLoadBalancerAttributesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) DescribeLoadBalancerAttributesRequest(input *DescribeLoadBalancerAttributesInput) (req *request.Request, output *DescribeLoadBalancerAttributesOutput) {
- op := &request.Operation{
- Name: opDescribeLoadBalancerAttributes,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeLoadBalancerAttributesInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeLoadBalancerAttributesOutput{}
- req.Data = output
- return
- }
- // DescribeLoadBalancerAttributes API operation for Elastic Load Balancing.
- //
- // Describes the attributes for the specified Application Load Balancer.
- //
- // 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 Elastic Load Balancing's
- // API operation DescribeLoadBalancerAttributes for usage and error information.
- //
- // Returned Error Codes:
- // * LoadBalancerNotFound
- // The specified load balancer does not exist.
- //
- func (c *ELBV2) DescribeLoadBalancerAttributes(input *DescribeLoadBalancerAttributesInput) (*DescribeLoadBalancerAttributesOutput, error) {
- req, out := c.DescribeLoadBalancerAttributesRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeLoadBalancers = "DescribeLoadBalancers"
- // DescribeLoadBalancersRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeLoadBalancers operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeLoadBalancers 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 DescribeLoadBalancers 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 DescribeLoadBalancersRequest method.
- // req, resp := client.DescribeLoadBalancersRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) DescribeLoadBalancersRequest(input *DescribeLoadBalancersInput) (req *request.Request, output *DescribeLoadBalancersOutput) {
- op := &request.Operation{
- Name: opDescribeLoadBalancers,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"NextMarker"},
- LimitToken: "",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &DescribeLoadBalancersInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeLoadBalancersOutput{}
- req.Data = output
- return
- }
- // DescribeLoadBalancers API operation for Elastic Load Balancing.
- //
- // Describes the specified Application Load Balancers or all of your Application
- // Load Balancers.
- //
- // To describe the listeners for a load balancer, use DescribeListeners. To
- // describe the attributes for a load balancer, use DescribeLoadBalancerAttributes.
- //
- // 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 Elastic Load Balancing's
- // API operation DescribeLoadBalancers for usage and error information.
- //
- // Returned Error Codes:
- // * LoadBalancerNotFound
- // The specified load balancer does not exist.
- //
- func (c *ELBV2) DescribeLoadBalancers(input *DescribeLoadBalancersInput) (*DescribeLoadBalancersOutput, error) {
- req, out := c.DescribeLoadBalancersRequest(input)
- err := req.Send()
- return out, err
- }
- // DescribeLoadBalancersPages iterates over the pages of a DescribeLoadBalancers operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See DescribeLoadBalancers 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 DescribeLoadBalancers operation.
- // pageNum := 0
- // err := client.DescribeLoadBalancersPages(params,
- // func(page *DescribeLoadBalancersOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *ELBV2) DescribeLoadBalancersPages(input *DescribeLoadBalancersInput, fn func(p *DescribeLoadBalancersOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.DescribeLoadBalancersRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*DescribeLoadBalancersOutput), lastPage)
- })
- }
- const opDescribeRules = "DescribeRules"
- // DescribeRulesRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeRules operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeRules 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 DescribeRules 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 DescribeRulesRequest method.
- // req, resp := client.DescribeRulesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) DescribeRulesRequest(input *DescribeRulesInput) (req *request.Request, output *DescribeRulesOutput) {
- op := &request.Operation{
- Name: opDescribeRules,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeRulesInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeRulesOutput{}
- req.Data = output
- return
- }
- // DescribeRules API operation for Elastic Load Balancing.
- //
- // Describes the specified rules or the rules for the specified listener. You
- // must specify either a listener or one or more rules.
- //
- // 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 Elastic Load Balancing's
- // API operation DescribeRules for usage and error information.
- //
- // Returned Error Codes:
- // * ListenerNotFound
- // The specified listener does not exist.
- //
- // * RuleNotFound
- // The specified rule does not exist.
- //
- func (c *ELBV2) DescribeRules(input *DescribeRulesInput) (*DescribeRulesOutput, error) {
- req, out := c.DescribeRulesRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeSSLPolicies = "DescribeSSLPolicies"
- // DescribeSSLPoliciesRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeSSLPolicies operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeSSLPolicies 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 DescribeSSLPolicies 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 DescribeSSLPoliciesRequest method.
- // req, resp := client.DescribeSSLPoliciesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) DescribeSSLPoliciesRequest(input *DescribeSSLPoliciesInput) (req *request.Request, output *DescribeSSLPoliciesOutput) {
- op := &request.Operation{
- Name: opDescribeSSLPolicies,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeSSLPoliciesInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeSSLPoliciesOutput{}
- req.Data = output
- return
- }
- // DescribeSSLPolicies API operation for Elastic Load Balancing.
- //
- // Describes the specified policies or all policies used for SSL negotiation.
- //
- // Note that the only supported policy at this time is ELBSecurityPolicy-2015-05.
- //
- // 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 Elastic Load Balancing's
- // API operation DescribeSSLPolicies for usage and error information.
- //
- // Returned Error Codes:
- // * SSLPolicyNotFound
- // The specified SSL policy does not exist.
- //
- func (c *ELBV2) DescribeSSLPolicies(input *DescribeSSLPoliciesInput) (*DescribeSSLPoliciesOutput, error) {
- req, out := c.DescribeSSLPoliciesRequest(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 *ELBV2) 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 Elastic Load Balancing.
- //
- // Describes the tags for the specified resources.
- //
- // 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 Elastic Load Balancing's
- // API operation DescribeTags for usage and error information.
- //
- // Returned Error Codes:
- // * LoadBalancerNotFound
- // The specified load balancer does not exist.
- //
- // * TargetGroupNotFound
- // The specified target group does not exist.
- //
- // * ListenerNotFound
- // The specified listener does not exist.
- //
- // * RuleNotFound
- // The specified rule does not exist.
- //
- func (c *ELBV2) DescribeTags(input *DescribeTagsInput) (*DescribeTagsOutput, error) {
- req, out := c.DescribeTagsRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeTargetGroupAttributes = "DescribeTargetGroupAttributes"
- // DescribeTargetGroupAttributesRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeTargetGroupAttributes operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeTargetGroupAttributes 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 DescribeTargetGroupAttributes 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 DescribeTargetGroupAttributesRequest method.
- // req, resp := client.DescribeTargetGroupAttributesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) DescribeTargetGroupAttributesRequest(input *DescribeTargetGroupAttributesInput) (req *request.Request, output *DescribeTargetGroupAttributesOutput) {
- op := &request.Operation{
- Name: opDescribeTargetGroupAttributes,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeTargetGroupAttributesInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeTargetGroupAttributesOutput{}
- req.Data = output
- return
- }
- // DescribeTargetGroupAttributes API operation for Elastic Load Balancing.
- //
- // Describes the attributes for the specified target 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 Elastic Load Balancing's
- // API operation DescribeTargetGroupAttributes for usage and error information.
- //
- // Returned Error Codes:
- // * TargetGroupNotFound
- // The specified target group does not exist.
- //
- func (c *ELBV2) DescribeTargetGroupAttributes(input *DescribeTargetGroupAttributesInput) (*DescribeTargetGroupAttributesOutput, error) {
- req, out := c.DescribeTargetGroupAttributesRequest(input)
- err := req.Send()
- return out, err
- }
- const opDescribeTargetGroups = "DescribeTargetGroups"
- // DescribeTargetGroupsRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeTargetGroups operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeTargetGroups 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 DescribeTargetGroups 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 DescribeTargetGroupsRequest method.
- // req, resp := client.DescribeTargetGroupsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) DescribeTargetGroupsRequest(input *DescribeTargetGroupsInput) (req *request.Request, output *DescribeTargetGroupsOutput) {
- op := &request.Operation{
- Name: opDescribeTargetGroups,
- HTTPMethod: "POST",
- HTTPPath: "/",
- Paginator: &request.Paginator{
- InputTokens: []string{"Marker"},
- OutputTokens: []string{"NextMarker"},
- LimitToken: "",
- TruncationToken: "",
- },
- }
- if input == nil {
- input = &DescribeTargetGroupsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeTargetGroupsOutput{}
- req.Data = output
- return
- }
- // DescribeTargetGroups API operation for Elastic Load Balancing.
- //
- // Describes the specified target groups or all of your target groups. By default,
- // all target groups are described. Alternatively, you can specify one of the
- // following to filter the results: the ARN of the load balancer, the names
- // of one or more target groups, or the ARNs of one or more target groups.
- //
- // To describe the targets for a target group, use DescribeTargetHealth. To
- // describe the attributes of a target group, use DescribeTargetGroupAttributes.
- //
- // 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 Elastic Load Balancing's
- // API operation DescribeTargetGroups for usage and error information.
- //
- // Returned Error Codes:
- // * LoadBalancerNotFound
- // The specified load balancer does not exist.
- //
- // * TargetGroupNotFound
- // The specified target group does not exist.
- //
- func (c *ELBV2) DescribeTargetGroups(input *DescribeTargetGroupsInput) (*DescribeTargetGroupsOutput, error) {
- req, out := c.DescribeTargetGroupsRequest(input)
- err := req.Send()
- return out, err
- }
- // DescribeTargetGroupsPages iterates over the pages of a DescribeTargetGroups operation,
- // calling the "fn" function with the response data for each page. To stop
- // iterating, return false from the fn function.
- //
- // See DescribeTargetGroups 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 DescribeTargetGroups operation.
- // pageNum := 0
- // err := client.DescribeTargetGroupsPages(params,
- // func(page *DescribeTargetGroupsOutput, lastPage bool) bool {
- // pageNum++
- // fmt.Println(page)
- // return pageNum <= 3
- // })
- //
- func (c *ELBV2) DescribeTargetGroupsPages(input *DescribeTargetGroupsInput, fn func(p *DescribeTargetGroupsOutput, lastPage bool) (shouldContinue bool)) error {
- page, _ := c.DescribeTargetGroupsRequest(input)
- page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
- return page.EachPage(func(p interface{}, lastPage bool) bool {
- return fn(p.(*DescribeTargetGroupsOutput), lastPage)
- })
- }
- const opDescribeTargetHealth = "DescribeTargetHealth"
- // DescribeTargetHealthRequest generates a "aws/request.Request" representing the
- // client's request for the DescribeTargetHealth operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See DescribeTargetHealth 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 DescribeTargetHealth 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 DescribeTargetHealthRequest method.
- // req, resp := client.DescribeTargetHealthRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) DescribeTargetHealthRequest(input *DescribeTargetHealthInput) (req *request.Request, output *DescribeTargetHealthOutput) {
- op := &request.Operation{
- Name: opDescribeTargetHealth,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &DescribeTargetHealthInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DescribeTargetHealthOutput{}
- req.Data = output
- return
- }
- // DescribeTargetHealth API operation for Elastic Load Balancing.
- //
- // Describes the health of the specified targets or all of your targets.
- //
- // 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 Elastic Load Balancing's
- // API operation DescribeTargetHealth for usage and error information.
- //
- // Returned Error Codes:
- // * InvalidTarget
- // The specified target does not exist or is not in the same VPC as the target
- // group.
- //
- // * TargetGroupNotFound
- // The specified target group does not exist.
- //
- // * HealthUnavailable
- // The health of the specified targets could not be retrieved due to an internal
- // error.
- //
- func (c *ELBV2) DescribeTargetHealth(input *DescribeTargetHealthInput) (*DescribeTargetHealthOutput, error) {
- req, out := c.DescribeTargetHealthRequest(input)
- err := req.Send()
- return out, err
- }
- const opModifyListener = "ModifyListener"
- // ModifyListenerRequest generates a "aws/request.Request" representing the
- // client's request for the ModifyListener operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See ModifyListener 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 ModifyListener 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 ModifyListenerRequest method.
- // req, resp := client.ModifyListenerRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) ModifyListenerRequest(input *ModifyListenerInput) (req *request.Request, output *ModifyListenerOutput) {
- op := &request.Operation{
- Name: opModifyListener,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &ModifyListenerInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ModifyListenerOutput{}
- req.Data = output
- return
- }
- // ModifyListener API operation for Elastic Load Balancing.
- //
- // Modifies the specified properties of the specified listener.
- //
- // Any properties that you do not specify retain their current values. However,
- // changing the protocol from HTTPS to HTTP removes the security policy and
- // SSL certificate properties. If you change the protocol from HTTP to HTTPS,
- // you must add the security policy.
- //
- // 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 Elastic Load Balancing's
- // API operation ModifyListener for usage and error information.
- //
- // Returned Error Codes:
- // * DuplicateListener
- // A listener with the specified port already exists.
- //
- // * TooManyListeners
- // You've reached the limit on the number of listeners per load balancer.
- //
- // * TooManyCertificates
- // You've reached the limit on the number of certificates per listener.
- //
- // * ListenerNotFound
- // The specified listener does not exist.
- //
- // * TargetGroupNotFound
- // The specified target group does not exist.
- //
- // * TargetGroupAssociationLimit
- // You've reached the limit on the number of load balancers per target group.
- //
- // * IncompatibleProtocols
- // The specified configuration is not valid with this protocol.
- //
- // * SSLPolicyNotFound
- // The specified SSL policy does not exist.
- //
- // * CertificateNotFound
- // The specified certificate does not exist.
- //
- // * InvalidConfigurationRequest
- // The requested configuration is not valid.
- //
- // * UnsupportedProtocol
- // The specified protocol is not supported.
- //
- // * TooManyRegistrationsForTargetId
- // You've reached the limit on the number of times a target can be registered
- // with a load balancer.
- //
- func (c *ELBV2) ModifyListener(input *ModifyListenerInput) (*ModifyListenerOutput, error) {
- req, out := c.ModifyListenerRequest(input)
- err := req.Send()
- return out, err
- }
- const opModifyLoadBalancerAttributes = "ModifyLoadBalancerAttributes"
- // ModifyLoadBalancerAttributesRequest generates a "aws/request.Request" representing the
- // client's request for the ModifyLoadBalancerAttributes operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See ModifyLoadBalancerAttributes 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 ModifyLoadBalancerAttributes 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 ModifyLoadBalancerAttributesRequest method.
- // req, resp := client.ModifyLoadBalancerAttributesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) ModifyLoadBalancerAttributesRequest(input *ModifyLoadBalancerAttributesInput) (req *request.Request, output *ModifyLoadBalancerAttributesOutput) {
- op := &request.Operation{
- Name: opModifyLoadBalancerAttributes,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &ModifyLoadBalancerAttributesInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ModifyLoadBalancerAttributesOutput{}
- req.Data = output
- return
- }
- // ModifyLoadBalancerAttributes API operation for Elastic Load Balancing.
- //
- // Modifies the specified attributes of the specified Application Load Balancer.
- //
- // If any of the specified attributes can't be modified as requested, the call
- // fails. Any existing attributes that you do not modify retain their current
- // values.
- //
- // 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 Elastic Load Balancing's
- // API operation ModifyLoadBalancerAttributes for usage and error information.
- //
- // Returned Error Codes:
- // * LoadBalancerNotFound
- // The specified load balancer does not exist.
- //
- // * InvalidConfigurationRequest
- // The requested configuration is not valid.
- //
- func (c *ELBV2) ModifyLoadBalancerAttributes(input *ModifyLoadBalancerAttributesInput) (*ModifyLoadBalancerAttributesOutput, error) {
- req, out := c.ModifyLoadBalancerAttributesRequest(input)
- err := req.Send()
- return out, err
- }
- const opModifyRule = "ModifyRule"
- // ModifyRuleRequest generates a "aws/request.Request" representing the
- // client's request for the ModifyRule operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See ModifyRule 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 ModifyRule 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 ModifyRuleRequest method.
- // req, resp := client.ModifyRuleRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) ModifyRuleRequest(input *ModifyRuleInput) (req *request.Request, output *ModifyRuleOutput) {
- op := &request.Operation{
- Name: opModifyRule,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &ModifyRuleInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ModifyRuleOutput{}
- req.Data = output
- return
- }
- // ModifyRule API operation for Elastic Load Balancing.
- //
- // Modifies the specified rule.
- //
- // Any existing properties that you do not modify retain their current values.
- //
- // To modify the default action, use ModifyListener.
- //
- // 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 Elastic Load Balancing's
- // API operation ModifyRule for usage and error information.
- //
- // Returned Error Codes:
- // * TargetGroupAssociationLimit
- // You've reached the limit on the number of load balancers per target group.
- //
- // * RuleNotFound
- // The specified rule does not exist.
- //
- // * OperationNotPermitted
- // This operation is not allowed.
- //
- // * TooManyRegistrationsForTargetId
- // You've reached the limit on the number of times a target can be registered
- // with a load balancer.
- //
- func (c *ELBV2) ModifyRule(input *ModifyRuleInput) (*ModifyRuleOutput, error) {
- req, out := c.ModifyRuleRequest(input)
- err := req.Send()
- return out, err
- }
- const opModifyTargetGroup = "ModifyTargetGroup"
- // ModifyTargetGroupRequest generates a "aws/request.Request" representing the
- // client's request for the ModifyTargetGroup operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See ModifyTargetGroup 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 ModifyTargetGroup 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 ModifyTargetGroupRequest method.
- // req, resp := client.ModifyTargetGroupRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) ModifyTargetGroupRequest(input *ModifyTargetGroupInput) (req *request.Request, output *ModifyTargetGroupOutput) {
- op := &request.Operation{
- Name: opModifyTargetGroup,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &ModifyTargetGroupInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ModifyTargetGroupOutput{}
- req.Data = output
- return
- }
- // ModifyTargetGroup API operation for Elastic Load Balancing.
- //
- // Modifies the health checks used when evaluating the health state of the targets
- // in the specified target group.
- //
- // To monitor the health of the targets, use DescribeTargetHealth.
- //
- // 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 Elastic Load Balancing's
- // API operation ModifyTargetGroup for usage and error information.
- //
- // Returned Error Codes:
- // * TargetGroupNotFound
- // The specified target group does not exist.
- //
- func (c *ELBV2) ModifyTargetGroup(input *ModifyTargetGroupInput) (*ModifyTargetGroupOutput, error) {
- req, out := c.ModifyTargetGroupRequest(input)
- err := req.Send()
- return out, err
- }
- const opModifyTargetGroupAttributes = "ModifyTargetGroupAttributes"
- // ModifyTargetGroupAttributesRequest generates a "aws/request.Request" representing the
- // client's request for the ModifyTargetGroupAttributes operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See ModifyTargetGroupAttributes 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 ModifyTargetGroupAttributes 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 ModifyTargetGroupAttributesRequest method.
- // req, resp := client.ModifyTargetGroupAttributesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) ModifyTargetGroupAttributesRequest(input *ModifyTargetGroupAttributesInput) (req *request.Request, output *ModifyTargetGroupAttributesOutput) {
- op := &request.Operation{
- Name: opModifyTargetGroupAttributes,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &ModifyTargetGroupAttributesInput{}
- }
- req = c.newRequest(op, input, output)
- output = &ModifyTargetGroupAttributesOutput{}
- req.Data = output
- return
- }
- // ModifyTargetGroupAttributes API operation for Elastic Load Balancing.
- //
- // Modifies the specified attributes of the specified target 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 Elastic Load Balancing's
- // API operation ModifyTargetGroupAttributes for usage and error information.
- //
- // Returned Error Codes:
- // * TargetGroupNotFound
- // The specified target group does not exist.
- //
- func (c *ELBV2) ModifyTargetGroupAttributes(input *ModifyTargetGroupAttributesInput) (*ModifyTargetGroupAttributesOutput, error) {
- req, out := c.ModifyTargetGroupAttributesRequest(input)
- err := req.Send()
- return out, err
- }
- const opRegisterTargets = "RegisterTargets"
- // RegisterTargetsRequest generates a "aws/request.Request" representing the
- // client's request for the RegisterTargets operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See RegisterTargets 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 RegisterTargets 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 RegisterTargetsRequest method.
- // req, resp := client.RegisterTargetsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) RegisterTargetsRequest(input *RegisterTargetsInput) (req *request.Request, output *RegisterTargetsOutput) {
- op := &request.Operation{
- Name: opRegisterTargets,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &RegisterTargetsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &RegisterTargetsOutput{}
- req.Data = output
- return
- }
- // RegisterTargets API operation for Elastic Load Balancing.
- //
- // Registers the specified targets with the specified target group.
- //
- // By default, the load balancer routes requests to registered targets using
- // the protocol and port number for the target group. Alternatively, you can
- // override the port for a target when you register it.
- //
- // The target must be in the virtual private cloud (VPC) that you specified
- // for the target group. If the target is an EC2 instance, it can't be in the
- // stopped or running state when you register it.
- //
- // To remove a target from a target group, use DeregisterTargets.
- //
- // 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 Elastic Load Balancing's
- // API operation RegisterTargets for usage and error information.
- //
- // Returned Error Codes:
- // * TargetGroupNotFound
- // The specified target group does not exist.
- //
- // * TooManyTargets
- // You've reached the limit on the number of targets.
- //
- // * InvalidTarget
- // The specified target does not exist or is not in the same VPC as the target
- // group.
- //
- // * TooManyRegistrationsForTargetId
- // You've reached the limit on the number of times a target can be registered
- // with a load balancer.
- //
- func (c *ELBV2) RegisterTargets(input *RegisterTargetsInput) (*RegisterTargetsOutput, error) {
- req, out := c.RegisterTargetsRequest(input)
- err := req.Send()
- return out, err
- }
- const opRemoveTags = "RemoveTags"
- // RemoveTagsRequest generates a "aws/request.Request" representing the
- // client's request for the RemoveTags operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See RemoveTags 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 RemoveTags 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 RemoveTagsRequest method.
- // req, resp := client.RemoveTagsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) RemoveTagsRequest(input *RemoveTagsInput) (req *request.Request, output *RemoveTagsOutput) {
- op := &request.Operation{
- Name: opRemoveTags,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &RemoveTagsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &RemoveTagsOutput{}
- req.Data = output
- return
- }
- // RemoveTags API operation for Elastic Load Balancing.
- //
- // Removes the specified tags from the specified resource.
- //
- // To list the current tags for your resources, use DescribeTags.
- //
- // 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 Elastic Load Balancing's
- // API operation RemoveTags for usage and error information.
- //
- // Returned Error Codes:
- // * LoadBalancerNotFound
- // The specified load balancer does not exist.
- //
- // * TargetGroupNotFound
- // The specified target group does not exist.
- //
- // * ListenerNotFound
- // The specified listener does not exist.
- //
- // * RuleNotFound
- // The specified rule does not exist.
- //
- // * TooManyTags
- // You've reached the limit on the number of tags per load balancer.
- //
- func (c *ELBV2) RemoveTags(input *RemoveTagsInput) (*RemoveTagsOutput, error) {
- req, out := c.RemoveTagsRequest(input)
- err := req.Send()
- return out, err
- }
- const opSetRulePriorities = "SetRulePriorities"
- // SetRulePrioritiesRequest generates a "aws/request.Request" representing the
- // client's request for the SetRulePriorities operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See SetRulePriorities 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 SetRulePriorities 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 SetRulePrioritiesRequest method.
- // req, resp := client.SetRulePrioritiesRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) SetRulePrioritiesRequest(input *SetRulePrioritiesInput) (req *request.Request, output *SetRulePrioritiesOutput) {
- op := &request.Operation{
- Name: opSetRulePriorities,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &SetRulePrioritiesInput{}
- }
- req = c.newRequest(op, input, output)
- output = &SetRulePrioritiesOutput{}
- req.Data = output
- return
- }
- // SetRulePriorities API operation for Elastic Load Balancing.
- //
- // Sets the priorities of the specified rules.
- //
- // You can reorder the rules as long as there are no priority conflicts in the
- // new order. Any existing rules that you do not specify retain their current
- // priority.
- //
- // 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 Elastic Load Balancing's
- // API operation SetRulePriorities for usage and error information.
- //
- // Returned Error Codes:
- // * RuleNotFound
- // The specified rule does not exist.
- //
- // * PriorityInUse
- // The specified priority is in use.
- //
- // * OperationNotPermitted
- // This operation is not allowed.
- //
- func (c *ELBV2) SetRulePriorities(input *SetRulePrioritiesInput) (*SetRulePrioritiesOutput, error) {
- req, out := c.SetRulePrioritiesRequest(input)
- err := req.Send()
- return out, err
- }
- const opSetSecurityGroups = "SetSecurityGroups"
- // SetSecurityGroupsRequest generates a "aws/request.Request" representing the
- // client's request for the SetSecurityGroups operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See SetSecurityGroups 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 SetSecurityGroups 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 SetSecurityGroupsRequest method.
- // req, resp := client.SetSecurityGroupsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) SetSecurityGroupsRequest(input *SetSecurityGroupsInput) (req *request.Request, output *SetSecurityGroupsOutput) {
- op := &request.Operation{
- Name: opSetSecurityGroups,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &SetSecurityGroupsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &SetSecurityGroupsOutput{}
- req.Data = output
- return
- }
- // SetSecurityGroups API operation for Elastic Load Balancing.
- //
- // Associates the specified security groups with the specified load balancer.
- // The specified security groups override the previously associated security
- // groups.
- //
- // 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 Elastic Load Balancing's
- // API operation SetSecurityGroups for usage and error information.
- //
- // Returned Error Codes:
- // * LoadBalancerNotFound
- // The specified load balancer does not exist.
- //
- // * InvalidConfigurationRequest
- // The requested configuration is not valid.
- //
- // * InvalidSecurityGroup
- // The specified security group does not exist.
- //
- func (c *ELBV2) SetSecurityGroups(input *SetSecurityGroupsInput) (*SetSecurityGroupsOutput, error) {
- req, out := c.SetSecurityGroupsRequest(input)
- err := req.Send()
- return out, err
- }
- const opSetSubnets = "SetSubnets"
- // SetSubnetsRequest generates a "aws/request.Request" representing the
- // client's request for the SetSubnets operation. The "output" return
- // value can be used to capture response data after the request's "Send" method
- // is called.
- //
- // See SetSubnets 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 SetSubnets 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 SetSubnetsRequest method.
- // req, resp := client.SetSubnetsRequest(params)
- //
- // err := req.Send()
- // if err == nil { // resp is now filled
- // fmt.Println(resp)
- // }
- //
- func (c *ELBV2) SetSubnetsRequest(input *SetSubnetsInput) (req *request.Request, output *SetSubnetsOutput) {
- op := &request.Operation{
- Name: opSetSubnets,
- HTTPMethod: "POST",
- HTTPPath: "/",
- }
- if input == nil {
- input = &SetSubnetsInput{}
- }
- req = c.newRequest(op, input, output)
- output = &SetSubnetsOutput{}
- req.Data = output
- return
- }
- // SetSubnets API operation for Elastic Load Balancing.
- //
- // Enables the Availability Zone for the specified subnets for the specified
- // load balancer. The specified subnets replace the previously enabled 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 Elastic Load Balancing's
- // API operation SetSubnets for usage and error information.
- //
- // Returned Error Codes:
- // * LoadBalancerNotFound
- // The specified load balancer does not exist.
- //
- // * InvalidConfigurationRequest
- // The requested configuration is not valid.
- //
- // * SubnetNotFound
- // The specified subnet does not exist.
- //
- // * InvalidSubnet
- // The specified subnet is out of available addresses.
- //
- func (c *ELBV2) SetSubnets(input *SetSubnetsInput) (*SetSubnetsOutput, error) {
- req, out := c.SetSubnetsRequest(input)
- err := req.Send()
- return out, err
- }
- // Information about an action.
- type Action struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the target group.
- //
- // TargetGroupArn is a required field
- TargetGroupArn *string `type:"string" required:"true"`
- // The type of action.
- //
- // Type is a required field
- Type *string `type:"string" required:"true" enum:"ActionTypeEnum"`
- }
- // String returns the string representation
- func (s Action) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Action) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *Action) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "Action"}
- if s.TargetGroupArn == nil {
- invalidParams.Add(request.NewErrParamRequired("TargetGroupArn"))
- }
- if s.Type == nil {
- invalidParams.Add(request.NewErrParamRequired("Type"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the parameters for AddTags.
- type AddTagsInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the resource.
- //
- // ResourceArns is a required field
- ResourceArns []*string `type:"list" required:"true"`
- // The tags. Each resource can have a maximum of 10 tags.
- //
- // Tags is a required field
- Tags []*Tag `min:"1" type:"list" required:"true"`
- }
- // String returns the string representation
- func (s AddTagsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s AddTagsInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *AddTagsInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "AddTagsInput"}
- if s.ResourceArns == nil {
- invalidParams.Add(request.NewErrParamRequired("ResourceArns"))
- }
- if s.Tags == nil {
- invalidParams.Add(request.NewErrParamRequired("Tags"))
- }
- if s.Tags != nil && len(s.Tags) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
- }
- if s.Tags != nil {
- for i, v := range s.Tags {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of AddTags.
- type AddTagsOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s AddTagsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s AddTagsOutput) GoString() string {
- return s.String()
- }
- // Information about an Availability Zone.
- type AvailabilityZone struct {
- _ struct{} `type:"structure"`
- // The ID of the subnet.
- SubnetId *string `type:"string"`
- // The name of the Availability Zone.
- ZoneName *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()
- }
- // Information about an SSL server certificate deployed on a load balancer.
- type Certificate struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the certificate.
- CertificateArn *string `type:"string"`
- }
- // String returns the string representation
- func (s Certificate) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Certificate) GoString() string {
- return s.String()
- }
- // Information about a cipher used in a policy.
- type Cipher struct {
- _ struct{} `type:"structure"`
- // The name of the cipher.
- Name *string `type:"string"`
- // The priority of the cipher.
- Priority *int64 `type:"integer"`
- }
- // String returns the string representation
- func (s Cipher) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Cipher) GoString() string {
- return s.String()
- }
- // Contains the parameters for CreateListener.
- type CreateListenerInput struct {
- _ struct{} `type:"structure"`
- // The SSL server certificate. You must provide exactly one certificate if the
- // protocol is HTTPS.
- Certificates []*Certificate `type:"list"`
- // The default action for the listener.
- //
- // DefaultActions is a required field
- DefaultActions []*Action `type:"list" required:"true"`
- // The Amazon Resource Name (ARN) of the load balancer.
- //
- // LoadBalancerArn is a required field
- LoadBalancerArn *string `type:"string" required:"true"`
- // The port on which the load balancer is listening.
- //
- // Port is a required field
- Port *int64 `min:"1" type:"integer" required:"true"`
- // The protocol for connections from clients to the load balancer.
- //
- // Protocol is a required field
- Protocol *string `type:"string" required:"true" enum:"ProtocolEnum"`
- // The security policy that defines which ciphers and protocols are supported.
- // The default is the current predefined security policy.
- SslPolicy *string `type:"string"`
- }
- // String returns the string representation
- func (s CreateListenerInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateListenerInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateListenerInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateListenerInput"}
- if s.DefaultActions == nil {
- invalidParams.Add(request.NewErrParamRequired("DefaultActions"))
- }
- if s.LoadBalancerArn == nil {
- invalidParams.Add(request.NewErrParamRequired("LoadBalancerArn"))
- }
- if s.Port == nil {
- invalidParams.Add(request.NewErrParamRequired("Port"))
- }
- if s.Port != nil && *s.Port < 1 {
- invalidParams.Add(request.NewErrParamMinValue("Port", 1))
- }
- if s.Protocol == nil {
- invalidParams.Add(request.NewErrParamRequired("Protocol"))
- }
- if s.DefaultActions != nil {
- for i, v := range s.DefaultActions {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DefaultActions", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of CreateListener.
- type CreateListenerOutput struct {
- _ struct{} `type:"structure"`
- // Information about the listener.
- Listeners []*Listener `type:"list"`
- }
- // String returns the string representation
- func (s CreateListenerOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateListenerOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for CreateLoadBalancer.
- type CreateLoadBalancerInput struct {
- _ struct{} `type:"structure"`
- // The name of the load balancer.
- //
- // This name must be unique within your AWS account, can have a maximum of 32
- // characters, must contain only alphanumeric characters or hyphens, and must
- // not begin or end with a hyphen.
- //
- // Name is a required field
- Name *string `type:"string" required:"true"`
- // The nodes of an Internet-facing load balancer have public IP addresses. The
- // DNS name of an Internet-facing load balancer is publicly resolvable to the
- // public IP addresses of the nodes. Therefore, Internet-facing load balancers
- // can route requests from clients over the Internet.
- //
- // The nodes of an internal load balancer have only private IP addresses. The
- // DNS name of an internal load balancer is publicly resolvable to the private
- // IP addresses of the nodes. Therefore, internal load balancers can only route
- // requests from clients with access to the VPC for the load balancer.
- //
- // The default is an Internet-facing load balancer.
- Scheme *string `type:"string" enum:"LoadBalancerSchemeEnum"`
- // The IDs of the security groups to assign to the load balancer.
- SecurityGroups []*string `type:"list"`
- // The IDs of the subnets to attach to the load balancer. You can specify only
- // one subnet per Availability Zone. You must specify subnets from at least
- // two Availability Zones.
- //
- // Subnets is a required field
- Subnets []*string `type:"list" required:"true"`
- // One or more tags to assign to the load balancer.
- Tags []*Tag `min:"1" type:"list"`
- }
- // String returns the string representation
- func (s CreateLoadBalancerInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateLoadBalancerInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateLoadBalancerInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateLoadBalancerInput"}
- if s.Name == nil {
- invalidParams.Add(request.NewErrParamRequired("Name"))
- }
- if s.Subnets == nil {
- invalidParams.Add(request.NewErrParamRequired("Subnets"))
- }
- if s.Tags != nil && len(s.Tags) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
- }
- if s.Tags != nil {
- for i, v := range s.Tags {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of CreateLoadBalancer.
- type CreateLoadBalancerOutput struct {
- _ struct{} `type:"structure"`
- // Information about the load balancer.
- LoadBalancers []*LoadBalancer `type:"list"`
- }
- // String returns the string representation
- func (s CreateLoadBalancerOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateLoadBalancerOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for CreateRule.
- type CreateRuleInput struct {
- _ struct{} `type:"structure"`
- // An action. Each action has the type forward and specifies a target group.
- //
- // Actions is a required field
- Actions []*Action `type:"list" required:"true"`
- // A condition. Each condition has the field path-pattern and specifies one
- // path pattern. A path pattern is case sensitive, can be up to 255 characters
- // in length, and can contain any of the following characters:
- //
- // * A-Z, a-z, 0-9
- //
- // * _ - . $ / ~ " ' @ : +
- //
- // * & (using &)
- //
- // * * (matches 0 or more characters)
- //
- // * ? (matches exactly 1 character)
- //
- // Conditions is a required field
- Conditions []*RuleCondition `type:"list" required:"true"`
- // The Amazon Resource Name (ARN) of the listener.
- //
- // ListenerArn is a required field
- ListenerArn *string `type:"string" required:"true"`
- // The priority for the rule. A listener can't have multiple rules with the
- // same priority.
- //
- // Priority is a required field
- Priority *int64 `min:"1" type:"integer" required:"true"`
- }
- // String returns the string representation
- func (s CreateRuleInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateRuleInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateRuleInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateRuleInput"}
- if s.Actions == nil {
- invalidParams.Add(request.NewErrParamRequired("Actions"))
- }
- if s.Conditions == nil {
- invalidParams.Add(request.NewErrParamRequired("Conditions"))
- }
- if s.ListenerArn == nil {
- invalidParams.Add(request.NewErrParamRequired("ListenerArn"))
- }
- if s.Priority == nil {
- invalidParams.Add(request.NewErrParamRequired("Priority"))
- }
- if s.Priority != nil && *s.Priority < 1 {
- invalidParams.Add(request.NewErrParamMinValue("Priority", 1))
- }
- if s.Actions != nil {
- for i, v := range s.Actions {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Actions", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of CreateRule.
- type CreateRuleOutput struct {
- _ struct{} `type:"structure"`
- // Information about the rule.
- Rules []*Rule `type:"list"`
- }
- // String returns the string representation
- func (s CreateRuleOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateRuleOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for CreateTargetGroup.
- type CreateTargetGroupInput struct {
- _ struct{} `type:"structure"`
- // The approximate amount of time, in seconds, between health checks of an individual
- // target. The default is 30 seconds.
- HealthCheckIntervalSeconds *int64 `min:"5" type:"integer"`
- // The ping path that is the destination on the targets for health checks. The
- // default is /.
- HealthCheckPath *string `min:"1" type:"string"`
- // The port the load balancer uses when performing health checks on targets.
- // The default is traffic-port, which indicates the port on which each target
- // receives traffic from the load balancer.
- HealthCheckPort *string `type:"string"`
- // The protocol the load balancer uses when performing health checks on targets.
- // The default is the HTTP protocol.
- HealthCheckProtocol *string `type:"string" enum:"ProtocolEnum"`
- // The amount of time, in seconds, during which no response from a target means
- // a failed health check. The default is 5 seconds.
- HealthCheckTimeoutSeconds *int64 `min:"2" type:"integer"`
- // The number of consecutive health checks successes required before considering
- // an unhealthy target healthy. The default is 5.
- HealthyThresholdCount *int64 `min:"2" type:"integer"`
- // The HTTP codes to use when checking for a successful response from a target.
- // The default is 200.
- Matcher *Matcher `type:"structure"`
- // The name of the target group.
- //
- // Name is a required field
- Name *string `type:"string" required:"true"`
- // The port on which the targets receive traffic. This port is used unless you
- // specify a port override when registering the target.
- //
- // Port is a required field
- Port *int64 `min:"1" type:"integer" required:"true"`
- // The protocol to use for routing traffic to the targets.
- //
- // Protocol is a required field
- Protocol *string `type:"string" required:"true" enum:"ProtocolEnum"`
- // The number of consecutive health check failures required before considering
- // a target unhealthy. The default is 2.
- UnhealthyThresholdCount *int64 `min:"2" type:"integer"`
- // The identifier of the virtual private cloud (VPC).
- //
- // VpcId is a required field
- VpcId *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s CreateTargetGroupInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateTargetGroupInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *CreateTargetGroupInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "CreateTargetGroupInput"}
- if s.HealthCheckIntervalSeconds != nil && *s.HealthCheckIntervalSeconds < 5 {
- invalidParams.Add(request.NewErrParamMinValue("HealthCheckIntervalSeconds", 5))
- }
- if s.HealthCheckPath != nil && len(*s.HealthCheckPath) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("HealthCheckPath", 1))
- }
- if s.HealthCheckTimeoutSeconds != nil && *s.HealthCheckTimeoutSeconds < 2 {
- invalidParams.Add(request.NewErrParamMinValue("HealthCheckTimeoutSeconds", 2))
- }
- if s.HealthyThresholdCount != nil && *s.HealthyThresholdCount < 2 {
- invalidParams.Add(request.NewErrParamMinValue("HealthyThresholdCount", 2))
- }
- if s.Name == nil {
- invalidParams.Add(request.NewErrParamRequired("Name"))
- }
- if s.Port == nil {
- invalidParams.Add(request.NewErrParamRequired("Port"))
- }
- if s.Port != nil && *s.Port < 1 {
- invalidParams.Add(request.NewErrParamMinValue("Port", 1))
- }
- if s.Protocol == nil {
- invalidParams.Add(request.NewErrParamRequired("Protocol"))
- }
- if s.UnhealthyThresholdCount != nil && *s.UnhealthyThresholdCount < 2 {
- invalidParams.Add(request.NewErrParamMinValue("UnhealthyThresholdCount", 2))
- }
- if s.VpcId == nil {
- invalidParams.Add(request.NewErrParamRequired("VpcId"))
- }
- if s.Matcher != nil {
- if err := s.Matcher.Validate(); err != nil {
- invalidParams.AddNested("Matcher", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of CreateTargetGroup.
- type CreateTargetGroupOutput struct {
- _ struct{} `type:"structure"`
- // Information about the target group.
- TargetGroups []*TargetGroup `type:"list"`
- }
- // String returns the string representation
- func (s CreateTargetGroupOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s CreateTargetGroupOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for DeleteListener.
- type DeleteListenerInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the listener.
- //
- // ListenerArn is a required field
- ListenerArn *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DeleteListenerInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteListenerInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteListenerInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteListenerInput"}
- if s.ListenerArn == nil {
- invalidParams.Add(request.NewErrParamRequired("ListenerArn"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of DeleteListener.
- type DeleteListenerOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteListenerOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteListenerOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for DeleteLoadBalancer.
- type DeleteLoadBalancerInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the load balancer.
- //
- // LoadBalancerArn is a required field
- LoadBalancerArn *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DeleteLoadBalancerInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteLoadBalancerInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteLoadBalancerInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteLoadBalancerInput"}
- if s.LoadBalancerArn == nil {
- invalidParams.Add(request.NewErrParamRequired("LoadBalancerArn"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of DeleteLoadBalancer.
- type DeleteLoadBalancerOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteLoadBalancerOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteLoadBalancerOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for DeleteRule.
- type DeleteRuleInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the rule.
- //
- // RuleArn is a required field
- RuleArn *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DeleteRuleInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteRuleInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteRuleInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteRuleInput"}
- if s.RuleArn == nil {
- invalidParams.Add(request.NewErrParamRequired("RuleArn"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of DeleteRule.
- type DeleteRuleOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteRuleOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteRuleOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for DeleteTargetGroup.
- type DeleteTargetGroupInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the target group.
- //
- // TargetGroupArn is a required field
- TargetGroupArn *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DeleteTargetGroupInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteTargetGroupInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeleteTargetGroupInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeleteTargetGroupInput"}
- if s.TargetGroupArn == nil {
- invalidParams.Add(request.NewErrParamRequired("TargetGroupArn"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of DeleteTargetGroup.
- type DeleteTargetGroupOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeleteTargetGroupOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeleteTargetGroupOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for DeregisterTargets.
- type DeregisterTargetsInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the target group.
- //
- // TargetGroupArn is a required field
- TargetGroupArn *string `type:"string" required:"true"`
- // The targets. If you specified a port override when you registered a target,
- // you must specify both the target ID and the port when you deregister it.
- //
- // Targets is a required field
- Targets []*TargetDescription `type:"list" required:"true"`
- }
- // String returns the string representation
- func (s DeregisterTargetsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeregisterTargetsInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DeregisterTargetsInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DeregisterTargetsInput"}
- if s.TargetGroupArn == nil {
- invalidParams.Add(request.NewErrParamRequired("TargetGroupArn"))
- }
- if s.Targets == nil {
- invalidParams.Add(request.NewErrParamRequired("Targets"))
- }
- if s.Targets != nil {
- for i, v := range s.Targets {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of DeregisterTargets.
- type DeregisterTargetsOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s DeregisterTargetsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DeregisterTargetsOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for DescribeListeners.
- type DescribeListenersInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Names (ARN) of the listeners.
- ListenerArns []*string `type:"list"`
- // The Amazon Resource Name (ARN) of the load balancer.
- LoadBalancerArn *string `type:"string"`
- // The marker for the next set of results. (You received this marker from a
- // previous call.)
- Marker *string `type:"string"`
- // The maximum number of results to return with this call.
- PageSize *int64 `min:"1" type:"integer"`
- }
- // String returns the string representation
- func (s DescribeListenersInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeListenersInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DescribeListenersInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DescribeListenersInput"}
- if s.PageSize != nil && *s.PageSize < 1 {
- invalidParams.Add(request.NewErrParamMinValue("PageSize", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of DescribeListeners.
- type DescribeListenersOutput struct {
- _ struct{} `type:"structure"`
- // Information about the listeners.
- Listeners []*Listener `type:"list"`
- // The marker to use when requesting the next set of results. If there are no
- // additional results, the string is empty.
- NextMarker *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeListenersOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeListenersOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for DescribeLoadBalancerAttributes.
- type DescribeLoadBalancerAttributesInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the load balancer.
- //
- // LoadBalancerArn is a required field
- LoadBalancerArn *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DescribeLoadBalancerAttributesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeLoadBalancerAttributesInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DescribeLoadBalancerAttributesInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DescribeLoadBalancerAttributesInput"}
- if s.LoadBalancerArn == nil {
- invalidParams.Add(request.NewErrParamRequired("LoadBalancerArn"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of DescribeLoadBalancerAttributes.
- type DescribeLoadBalancerAttributesOutput struct {
- _ struct{} `type:"structure"`
- // Information about the load balancer attributes.
- Attributes []*LoadBalancerAttribute `type:"list"`
- }
- // String returns the string representation
- func (s DescribeLoadBalancerAttributesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeLoadBalancerAttributesOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for DescribeLoadBalancers.
- type DescribeLoadBalancersInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Names (ARN) of the load balancers.
- LoadBalancerArns []*string `type:"list"`
- // The marker for the next set of results. (You received this marker from a
- // previous call.)
- Marker *string `type:"string"`
- // The names of the load balancers.
- Names []*string `type:"list"`
- // The maximum number of results to return with this call.
- PageSize *int64 `min:"1" type:"integer"`
- }
- // String returns the string representation
- func (s DescribeLoadBalancersInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeLoadBalancersInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DescribeLoadBalancersInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DescribeLoadBalancersInput"}
- if s.PageSize != nil && *s.PageSize < 1 {
- invalidParams.Add(request.NewErrParamMinValue("PageSize", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of DescribeLoadBalancers.
- type DescribeLoadBalancersOutput struct {
- _ struct{} `type:"structure"`
- // Information about the load balancers.
- LoadBalancers []*LoadBalancer `type:"list"`
- // The marker to use when requesting the next set of results. If there are no
- // additional results, the string is empty.
- NextMarker *string `type:"string"`
- }
- // String returns the string representation
- func (s DescribeLoadBalancersOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeLoadBalancersOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for DescribeRules.
- type DescribeRulesInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the listener.
- ListenerArn *string `type:"string"`
- // The Amazon Resource Names (ARN) of the rules.
- RuleArns []*string `type:"list"`
- }
- // String returns the string representation
- func (s DescribeRulesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeRulesInput) GoString() string {
- return s.String()
- }
- // Contains the output of DescribeRules.
- type DescribeRulesOutput struct {
- _ struct{} `type:"structure"`
- // Information about the rules.
- Rules []*Rule `type:"list"`
- }
- // String returns the string representation
- func (s DescribeRulesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeRulesOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for DescribeSSLPolicies.
- type DescribeSSLPoliciesInput struct {
- _ struct{} `type:"structure"`
- // The marker for the next set of results. (You received this marker from a
- // previous call.)
- Marker *string `type:"string"`
- // The names of the policies.
- Names []*string `type:"list"`
- // The maximum number of results to return with this call.
- PageSize *int64 `min:"1" type:"integer"`
- }
- // String returns the string representation
- func (s DescribeSSLPoliciesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeSSLPoliciesInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DescribeSSLPoliciesInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DescribeSSLPoliciesInput"}
- if s.PageSize != nil && *s.PageSize < 1 {
- invalidParams.Add(request.NewErrParamMinValue("PageSize", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of DescribeSSLPolicies.
- type DescribeSSLPoliciesOutput struct {
- _ struct{} `type:"structure"`
- // The marker to use when requesting the next set of results. If there are no
- // additional results, the string is empty.
- NextMarker *string `type:"string"`
- // Information about the policies.
- SslPolicies []*SslPolicy `type:"list"`
- }
- // String returns the string representation
- func (s DescribeSSLPoliciesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeSSLPoliciesOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for DescribeTags.
- type DescribeTagsInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Names (ARN) of the resources.
- //
- // ResourceArns is a required field
- ResourceArns []*string `type:"list" required:"true"`
- }
- // 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()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DescribeTagsInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DescribeTagsInput"}
- if s.ResourceArns == nil {
- invalidParams.Add(request.NewErrParamRequired("ResourceArns"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of DescribeTags.
- type DescribeTagsOutput struct {
- _ struct{} `type:"structure"`
- // Information about the tags.
- TagDescriptions []*TagDescription `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()
- }
- // Contains the parameters for DescribeTargetGroupAttributes.
- type DescribeTargetGroupAttributesInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the target group.
- //
- // TargetGroupArn is a required field
- TargetGroupArn *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s DescribeTargetGroupAttributesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeTargetGroupAttributesInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DescribeTargetGroupAttributesInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DescribeTargetGroupAttributesInput"}
- if s.TargetGroupArn == nil {
- invalidParams.Add(request.NewErrParamRequired("TargetGroupArn"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of DescribeTargetGroupAttributes.
- type DescribeTargetGroupAttributesOutput struct {
- _ struct{} `type:"structure"`
- // Information about the target group attributes
- Attributes []*TargetGroupAttribute `type:"list"`
- }
- // String returns the string representation
- func (s DescribeTargetGroupAttributesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeTargetGroupAttributesOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for DescribeTargetGroups.
- type DescribeTargetGroupsInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the load balancer.
- LoadBalancerArn *string `type:"string"`
- // The marker for the next set of results. (You received this marker from a
- // previous call.)
- Marker *string `type:"string"`
- // The names of the target groups.
- Names []*string `type:"list"`
- // The maximum number of results to return with this call.
- PageSize *int64 `min:"1" type:"integer"`
- // The Amazon Resource Names (ARN) of the target groups.
- TargetGroupArns []*string `type:"list"`
- }
- // String returns the string representation
- func (s DescribeTargetGroupsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeTargetGroupsInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DescribeTargetGroupsInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DescribeTargetGroupsInput"}
- if s.PageSize != nil && *s.PageSize < 1 {
- invalidParams.Add(request.NewErrParamMinValue("PageSize", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of DescribeTargetGroups.
- type DescribeTargetGroupsOutput struct {
- _ struct{} `type:"structure"`
- // The marker to use when requesting the next set of results. If there are no
- // additional results, the string is empty.
- NextMarker *string `type:"string"`
- // Information about the target groups.
- TargetGroups []*TargetGroup `type:"list"`
- }
- // String returns the string representation
- func (s DescribeTargetGroupsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeTargetGroupsOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for DescribeTargetHealth.
- type DescribeTargetHealthInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the target group.
- //
- // TargetGroupArn is a required field
- TargetGroupArn *string `type:"string" required:"true"`
- // The targets.
- Targets []*TargetDescription `type:"list"`
- }
- // String returns the string representation
- func (s DescribeTargetHealthInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeTargetHealthInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *DescribeTargetHealthInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "DescribeTargetHealthInput"}
- if s.TargetGroupArn == nil {
- invalidParams.Add(request.NewErrParamRequired("TargetGroupArn"))
- }
- if s.Targets != nil {
- for i, v := range s.Targets {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of DescribeTargetHealth.
- type DescribeTargetHealthOutput struct {
- _ struct{} `type:"structure"`
- // Information about the health of the targets.
- TargetHealthDescriptions []*TargetHealthDescription `type:"list"`
- }
- // String returns the string representation
- func (s DescribeTargetHealthOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s DescribeTargetHealthOutput) GoString() string {
- return s.String()
- }
- // Information about a listener.
- type Listener struct {
- _ struct{} `type:"structure"`
- // The SSL server certificate. You must provide a certificate if the protocol
- // is HTTPS.
- Certificates []*Certificate `type:"list"`
- // The default actions for the listener.
- DefaultActions []*Action `type:"list"`
- // The Amazon Resource Name (ARN) of the listener.
- ListenerArn *string `type:"string"`
- // The Amazon Resource Name (ARN) of the load balancer.
- LoadBalancerArn *string `type:"string"`
- // The port on which the load balancer is listening.
- Port *int64 `min:"1" type:"integer"`
- // The protocol for connections from clients to the load balancer.
- Protocol *string `type:"string" enum:"ProtocolEnum"`
- // The security policy that defines which ciphers and protocols are supported.
- // The default is the current predefined security policy.
- SslPolicy *string `type:"string"`
- }
- // String returns the string representation
- func (s Listener) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Listener) GoString() string {
- return s.String()
- }
- // Information about a load balancer.
- type LoadBalancer struct {
- _ struct{} `type:"structure"`
- // The Availability Zones for the load balancer.
- AvailabilityZones []*AvailabilityZone `type:"list"`
- // The ID of the Amazon Route 53 hosted zone associated with the load balancer.
- CanonicalHostedZoneId *string `type:"string"`
- // The date and time the load balancer was created.
- CreatedTime *time.Time `type:"timestamp" timestampFormat:"iso8601"`
- // The public DNS name of the load balancer.
- DNSName *string `type:"string"`
- // The Amazon Resource Name (ARN) of the load balancer.
- LoadBalancerArn *string `type:"string"`
- // The name of the load balancer.
- LoadBalancerName *string `type:"string"`
- // The nodes of an Internet-facing load balancer have public IP addresses. The
- // DNS name of an Internet-facing load balancer is publicly resolvable to the
- // public IP addresses of the nodes. Therefore, Internet-facing load balancers
- // can route requests from clients over the Internet.
- //
- // The nodes of an internal load balancer have only private IP addresses. The
- // DNS name of an internal load balancer is publicly resolvable to the private
- // IP addresses of the nodes. Therefore, internal load balancers can only route
- // requests from clients with access to the VPC for the load balancer.
- Scheme *string `type:"string" enum:"LoadBalancerSchemeEnum"`
- // The IDs of the security groups for the load balancer.
- SecurityGroups []*string `type:"list"`
- // The state of the load balancer.
- State *LoadBalancerState `type:"structure"`
- // The type of load balancer.
- Type *string `type:"string" enum:"LoadBalancerTypeEnum"`
- // The ID of the VPC for the load balancer.
- VpcId *string `type:"string"`
- }
- // String returns the string representation
- func (s LoadBalancer) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s LoadBalancer) GoString() string {
- return s.String()
- }
- // Information about a load balancer attribute.
- type LoadBalancerAttribute struct {
- _ struct{} `type:"structure"`
- // The name of the attribute.
- //
- // * access_logs.s3.enabled - Indicates whether access logs stored in Amazon
- // S3 are enabled. The value is true or false.
- //
- // * access_logs.s3.bucket - The name of the S3 bucket for the access logs.
- // This attribute is required if access logs in Amazon S3 are enabled. The
- // bucket must exist in the same region as the load balancer and have a bucket
- // policy that grants Elastic Load Balancing permission to write to the bucket.
- //
- // * access_logs.s3.prefix - The prefix for the location in the S3 bucket.
- // If you don't specify a prefix, the access logs are stored in the root
- // of the bucket.
- //
- // * deletion_protection.enabled - Indicates whether deletion protection
- // is enabled. The value is true or false.
- //
- // * idle_timeout.timeout_seconds - The idle timeout value, in seconds. The
- // valid range is 1-3600. The default is 60 seconds.
- Key *string `type:"string"`
- // The value of the attribute.
- Value *string `type:"string"`
- }
- // String returns the string representation
- func (s LoadBalancerAttribute) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s LoadBalancerAttribute) GoString() string {
- return s.String()
- }
- // Information about the state of the load balancer.
- type LoadBalancerState struct {
- _ struct{} `type:"structure"`
- // The state code. The initial state of the load balancer is provisioning. After
- // the load balancer is fully set up and ready to route traffic, its state is
- // active. If the load balancer could not be set up, its state is failed.
- Code *string `type:"string" enum:"LoadBalancerStateEnum"`
- // A description of the state.
- Reason *string `type:"string"`
- }
- // String returns the string representation
- func (s LoadBalancerState) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s LoadBalancerState) GoString() string {
- return s.String()
- }
- // Information to use when checking for a successful response from a target.
- type Matcher struct {
- _ struct{} `type:"structure"`
- // The HTTP codes. The default value is 200. You can specify multiple values
- // (for example, "200,202") or a range of values (for example, "200-299").
- //
- // HttpCode is a required field
- HttpCode *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s Matcher) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Matcher) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *Matcher) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "Matcher"}
- if s.HttpCode == nil {
- invalidParams.Add(request.NewErrParamRequired("HttpCode"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the parameters for ModifyListener.
- type ModifyListenerInput struct {
- _ struct{} `type:"structure"`
- // The SSL server certificate.
- Certificates []*Certificate `type:"list"`
- // The default actions.
- DefaultActions []*Action `type:"list"`
- // The Amazon Resource Name (ARN) of the listener.
- //
- // ListenerArn is a required field
- ListenerArn *string `type:"string" required:"true"`
- // The port for connections from clients to the load balancer.
- Port *int64 `min:"1" type:"integer"`
- // The protocol for connections from clients to the load balancer.
- Protocol *string `type:"string" enum:"ProtocolEnum"`
- // The security policy that defines which ciphers and protocols are supported.
- SslPolicy *string `type:"string"`
- }
- // String returns the string representation
- func (s ModifyListenerInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyListenerInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ModifyListenerInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ModifyListenerInput"}
- if s.ListenerArn == nil {
- invalidParams.Add(request.NewErrParamRequired("ListenerArn"))
- }
- if s.Port != nil && *s.Port < 1 {
- invalidParams.Add(request.NewErrParamMinValue("Port", 1))
- }
- if s.DefaultActions != nil {
- for i, v := range s.DefaultActions {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "DefaultActions", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of ModifyListener.
- type ModifyListenerOutput struct {
- _ struct{} `type:"structure"`
- // Information about the modified listeners.
- Listeners []*Listener `type:"list"`
- }
- // String returns the string representation
- func (s ModifyListenerOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyListenerOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for ModifyLoadBalancerAttributes.
- type ModifyLoadBalancerAttributesInput struct {
- _ struct{} `type:"structure"`
- // The load balancer attributes.
- //
- // Attributes is a required field
- Attributes []*LoadBalancerAttribute `type:"list" required:"true"`
- // The Amazon Resource Name (ARN) of the load balancer.
- //
- // LoadBalancerArn is a required field
- LoadBalancerArn *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s ModifyLoadBalancerAttributesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyLoadBalancerAttributesInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ModifyLoadBalancerAttributesInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ModifyLoadBalancerAttributesInput"}
- if s.Attributes == nil {
- invalidParams.Add(request.NewErrParamRequired("Attributes"))
- }
- if s.LoadBalancerArn == nil {
- invalidParams.Add(request.NewErrParamRequired("LoadBalancerArn"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of ModifyLoadBalancerAttributes.
- type ModifyLoadBalancerAttributesOutput struct {
- _ struct{} `type:"structure"`
- // Information about the load balancer attributes.
- Attributes []*LoadBalancerAttribute `type:"list"`
- }
- // String returns the string representation
- func (s ModifyLoadBalancerAttributesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyLoadBalancerAttributesOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for ModifyRules.
- type ModifyRuleInput struct {
- _ struct{} `type:"structure"`
- // The actions.
- Actions []*Action `type:"list"`
- // The conditions.
- Conditions []*RuleCondition `type:"list"`
- // The Amazon Resource Name (ARN) of the rule.
- //
- // RuleArn is a required field
- RuleArn *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s ModifyRuleInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyRuleInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ModifyRuleInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ModifyRuleInput"}
- if s.RuleArn == nil {
- invalidParams.Add(request.NewErrParamRequired("RuleArn"))
- }
- if s.Actions != nil {
- for i, v := range s.Actions {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Actions", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of ModifyRules.
- type ModifyRuleOutput struct {
- _ struct{} `type:"structure"`
- // Information about the rule.
- Rules []*Rule `type:"list"`
- }
- // String returns the string representation
- func (s ModifyRuleOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyRuleOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for ModifyTargetGroupAttributes.
- type ModifyTargetGroupAttributesInput struct {
- _ struct{} `type:"structure"`
- // The attributes.
- //
- // Attributes is a required field
- Attributes []*TargetGroupAttribute `type:"list" required:"true"`
- // The Amazon Resource Name (ARN) of the target group.
- //
- // TargetGroupArn is a required field
- TargetGroupArn *string `type:"string" required:"true"`
- }
- // String returns the string representation
- func (s ModifyTargetGroupAttributesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyTargetGroupAttributesInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ModifyTargetGroupAttributesInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ModifyTargetGroupAttributesInput"}
- if s.Attributes == nil {
- invalidParams.Add(request.NewErrParamRequired("Attributes"))
- }
- if s.TargetGroupArn == nil {
- invalidParams.Add(request.NewErrParamRequired("TargetGroupArn"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of ModifyTargetGroupAttributes.
- type ModifyTargetGroupAttributesOutput struct {
- _ struct{} `type:"structure"`
- // Information about the attributes.
- Attributes []*TargetGroupAttribute `type:"list"`
- }
- // String returns the string representation
- func (s ModifyTargetGroupAttributesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyTargetGroupAttributesOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for ModifyTargetGroup.
- type ModifyTargetGroupInput struct {
- _ struct{} `type:"structure"`
- // The approximate amount of time, in seconds, between health checks of an individual
- // target.
- HealthCheckIntervalSeconds *int64 `min:"5" type:"integer"`
- // The ping path that is the destination for the health check request.
- HealthCheckPath *string `min:"1" type:"string"`
- // The port to use to connect with the target.
- HealthCheckPort *string `type:"string"`
- // The protocol to use to connect with the target.
- HealthCheckProtocol *string `type:"string" enum:"ProtocolEnum"`
- // The amount of time, in seconds, during which no response means a failed health
- // check.
- HealthCheckTimeoutSeconds *int64 `min:"2" type:"integer"`
- // The number of consecutive health checks successes required before considering
- // an unhealthy target healthy.
- HealthyThresholdCount *int64 `min:"2" type:"integer"`
- // The HTTP codes to use when checking for a successful response from a target.
- Matcher *Matcher `type:"structure"`
- // The Amazon Resource Name (ARN) of the target group.
- //
- // TargetGroupArn is a required field
- TargetGroupArn *string `type:"string" required:"true"`
- // The number of consecutive health check failures required before considering
- // the target unhealthy.
- UnhealthyThresholdCount *int64 `min:"2" type:"integer"`
- }
- // String returns the string representation
- func (s ModifyTargetGroupInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyTargetGroupInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *ModifyTargetGroupInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "ModifyTargetGroupInput"}
- if s.HealthCheckIntervalSeconds != nil && *s.HealthCheckIntervalSeconds < 5 {
- invalidParams.Add(request.NewErrParamMinValue("HealthCheckIntervalSeconds", 5))
- }
- if s.HealthCheckPath != nil && len(*s.HealthCheckPath) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("HealthCheckPath", 1))
- }
- if s.HealthCheckTimeoutSeconds != nil && *s.HealthCheckTimeoutSeconds < 2 {
- invalidParams.Add(request.NewErrParamMinValue("HealthCheckTimeoutSeconds", 2))
- }
- if s.HealthyThresholdCount != nil && *s.HealthyThresholdCount < 2 {
- invalidParams.Add(request.NewErrParamMinValue("HealthyThresholdCount", 2))
- }
- if s.TargetGroupArn == nil {
- invalidParams.Add(request.NewErrParamRequired("TargetGroupArn"))
- }
- if s.UnhealthyThresholdCount != nil && *s.UnhealthyThresholdCount < 2 {
- invalidParams.Add(request.NewErrParamMinValue("UnhealthyThresholdCount", 2))
- }
- if s.Matcher != nil {
- if err := s.Matcher.Validate(); err != nil {
- invalidParams.AddNested("Matcher", err.(request.ErrInvalidParams))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of ModifyTargetGroup.
- type ModifyTargetGroupOutput struct {
- _ struct{} `type:"structure"`
- // Information about the target group.
- TargetGroups []*TargetGroup `type:"list"`
- }
- // String returns the string representation
- func (s ModifyTargetGroupOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s ModifyTargetGroupOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for RegisterTargets.
- type RegisterTargetsInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the target group.
- //
- // TargetGroupArn is a required field
- TargetGroupArn *string `type:"string" required:"true"`
- // The targets. The default port for a target is the port for the target group.
- // You can specify a port override. If a target is already registered, you can
- // register it again using a different port.
- //
- // Targets is a required field
- Targets []*TargetDescription `type:"list" required:"true"`
- }
- // String returns the string representation
- func (s RegisterTargetsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RegisterTargetsInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *RegisterTargetsInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "RegisterTargetsInput"}
- if s.TargetGroupArn == nil {
- invalidParams.Add(request.NewErrParamRequired("TargetGroupArn"))
- }
- if s.Targets == nil {
- invalidParams.Add(request.NewErrParamRequired("Targets"))
- }
- if s.Targets != nil {
- for i, v := range s.Targets {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Targets", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of RegisterTargets.
- type RegisterTargetsOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s RegisterTargetsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RegisterTargetsOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for RemoveTags.
- type RemoveTagsInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the resource.
- //
- // ResourceArns is a required field
- ResourceArns []*string `type:"list" required:"true"`
- // The tag keys for the tags to remove.
- //
- // TagKeys is a required field
- TagKeys []*string `type:"list" required:"true"`
- }
- // String returns the string representation
- func (s RemoveTagsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RemoveTagsInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *RemoveTagsInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "RemoveTagsInput"}
- if s.ResourceArns == nil {
- invalidParams.Add(request.NewErrParamRequired("ResourceArns"))
- }
- if s.TagKeys == nil {
- invalidParams.Add(request.NewErrParamRequired("TagKeys"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of RemoveTags.
- type RemoveTagsOutput struct {
- _ struct{} `type:"structure"`
- }
- // String returns the string representation
- func (s RemoveTagsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RemoveTagsOutput) GoString() string {
- return s.String()
- }
- // Information about a rule.
- type Rule struct {
- _ struct{} `type:"structure"`
- // The actions.
- Actions []*Action `type:"list"`
- // The conditions.
- Conditions []*RuleCondition `type:"list"`
- // Indicates whether this is the default rule.
- IsDefault *bool `type:"boolean"`
- // The priority.
- Priority *string `type:"string"`
- // The Amazon Resource Name (ARN) of the rule.
- RuleArn *string `type:"string"`
- }
- // String returns the string representation
- func (s Rule) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s Rule) GoString() string {
- return s.String()
- }
- // Information about a condition for a rule.
- type RuleCondition struct {
- _ struct{} `type:"structure"`
- // The only possible value is path-pattern.
- Field *string `type:"string"`
- // The path pattern. You can specify a single path pattern.
- //
- // A path pattern is case sensitive, can be up to 255 characters in length,
- // and can contain any of the following characters:
- //
- // * A-Z, a-z, 0-9
- //
- // * _ - . $ / ~ " ' @ : +
- //
- // * & (using &)
- //
- // * * (matches 0 or more characters)
- //
- // * ? (matches exactly 1 character)
- Values []*string `type:"list"`
- }
- // String returns the string representation
- func (s RuleCondition) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RuleCondition) GoString() string {
- return s.String()
- }
- // Information about the priorities for the rules for a listener.
- type RulePriorityPair struct {
- _ struct{} `type:"structure"`
- // The rule priority.
- Priority *int64 `min:"1" type:"integer"`
- // The Amazon Resource Name (ARN) of the rule.
- RuleArn *string `type:"string"`
- }
- // String returns the string representation
- func (s RulePriorityPair) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s RulePriorityPair) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *RulePriorityPair) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "RulePriorityPair"}
- if s.Priority != nil && *s.Priority < 1 {
- invalidParams.Add(request.NewErrParamMinValue("Priority", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the parameters for SetRulePriorities.
- type SetRulePrioritiesInput struct {
- _ struct{} `type:"structure"`
- // The rule priorities.
- //
- // RulePriorities is a required field
- RulePriorities []*RulePriorityPair `type:"list" required:"true"`
- }
- // String returns the string representation
- func (s SetRulePrioritiesInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s SetRulePrioritiesInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *SetRulePrioritiesInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "SetRulePrioritiesInput"}
- if s.RulePriorities == nil {
- invalidParams.Add(request.NewErrParamRequired("RulePriorities"))
- }
- if s.RulePriorities != nil {
- for i, v := range s.RulePriorities {
- if v == nil {
- continue
- }
- if err := v.Validate(); err != nil {
- invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RulePriorities", i), err.(request.ErrInvalidParams))
- }
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of SetRulePriorities.
- type SetRulePrioritiesOutput struct {
- _ struct{} `type:"structure"`
- // Information about the rules.
- Rules []*Rule `type:"list"`
- }
- // String returns the string representation
- func (s SetRulePrioritiesOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s SetRulePrioritiesOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for SetSecurityGroups.
- type SetSecurityGroupsInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the load balancer.
- //
- // LoadBalancerArn is a required field
- LoadBalancerArn *string `type:"string" required:"true"`
- // The IDs of the security groups.
- //
- // SecurityGroups is a required field
- SecurityGroups []*string `type:"list" required:"true"`
- }
- // String returns the string representation
- func (s SetSecurityGroupsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s SetSecurityGroupsInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *SetSecurityGroupsInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "SetSecurityGroupsInput"}
- if s.LoadBalancerArn == nil {
- invalidParams.Add(request.NewErrParamRequired("LoadBalancerArn"))
- }
- if s.SecurityGroups == nil {
- invalidParams.Add(request.NewErrParamRequired("SecurityGroups"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of SetSecurityGroups.
- type SetSecurityGroupsOutput struct {
- _ struct{} `type:"structure"`
- // The IDs of the security groups associated with the load balancer.
- SecurityGroupIds []*string `type:"list"`
- }
- // String returns the string representation
- func (s SetSecurityGroupsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s SetSecurityGroupsOutput) GoString() string {
- return s.String()
- }
- // Contains the parameters for SetSubnets.
- type SetSubnetsInput struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the load balancer.
- //
- // LoadBalancerArn is a required field
- LoadBalancerArn *string `type:"string" required:"true"`
- // The IDs of the subnets. You must specify at least two subnets. You can add
- // only one subnet per Availability Zone.
- //
- // Subnets is a required field
- Subnets []*string `type:"list" required:"true"`
- }
- // String returns the string representation
- func (s SetSubnetsInput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s SetSubnetsInput) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *SetSubnetsInput) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "SetSubnetsInput"}
- if s.LoadBalancerArn == nil {
- invalidParams.Add(request.NewErrParamRequired("LoadBalancerArn"))
- }
- if s.Subnets == nil {
- invalidParams.Add(request.NewErrParamRequired("Subnets"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Contains the output of SetSubnets.
- type SetSubnetsOutput struct {
- _ struct{} `type:"structure"`
- // Information about the subnet and Availability Zone.
- AvailabilityZones []*AvailabilityZone `type:"list"`
- }
- // String returns the string representation
- func (s SetSubnetsOutput) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s SetSubnetsOutput) GoString() string {
- return s.String()
- }
- // Information about a policy used for SSL negotiation.
- type SslPolicy struct {
- _ struct{} `type:"structure"`
- // The ciphers.
- Ciphers []*Cipher `type:"list"`
- // The name of the policy.
- Name *string `type:"string"`
- // The protocols.
- SslProtocols []*string `type:"list"`
- }
- // String returns the string representation
- func (s SslPolicy) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s SslPolicy) GoString() string {
- return s.String()
- }
- // Information about a tag.
- type Tag struct {
- _ struct{} `type:"structure"`
- // The key of the tag.
- //
- // Key is a required field
- Key *string `min:"1" type:"string" required:"true"`
- // The value of the 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()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *Tag) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "Tag"}
- if s.Key == nil {
- invalidParams.Add(request.NewErrParamRequired("Key"))
- }
- if s.Key != nil && len(*s.Key) < 1 {
- invalidParams.Add(request.NewErrParamMinLen("Key", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // The tags associated with a resource.
- type TagDescription struct {
- _ struct{} `type:"structure"`
- // The Amazon Resource Name (ARN) of the resource.
- ResourceArn *string `type:"string"`
- // Information about the tags.
- Tags []*Tag `min:"1" type:"list"`
- }
- // String returns the string representation
- func (s TagDescription) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s TagDescription) GoString() string {
- return s.String()
- }
- // Information about a target.
- type TargetDescription struct {
- _ struct{} `type:"structure"`
- // The ID of the target.
- //
- // Id is a required field
- Id *string `type:"string" required:"true"`
- // The port on which the target is listening.
- Port *int64 `min:"1" type:"integer"`
- }
- // String returns the string representation
- func (s TargetDescription) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s TargetDescription) GoString() string {
- return s.String()
- }
- // Validate inspects the fields of the type to determine if they are valid.
- func (s *TargetDescription) Validate() error {
- invalidParams := request.ErrInvalidParams{Context: "TargetDescription"}
- if s.Id == nil {
- invalidParams.Add(request.NewErrParamRequired("Id"))
- }
- if s.Port != nil && *s.Port < 1 {
- invalidParams.Add(request.NewErrParamMinValue("Port", 1))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- }
- return nil
- }
- // Information about a target group.
- type TargetGroup struct {
- _ struct{} `type:"structure"`
- // The approximate amount of time, in seconds, between health checks of an individual
- // target.
- HealthCheckIntervalSeconds *int64 `min:"5" type:"integer"`
- // The destination for the health check request.
- HealthCheckPath *string `min:"1" type:"string"`
- // The port to use to connect with the target.
- HealthCheckPort *string `type:"string"`
- // The protocol to use to connect with the target.
- HealthCheckProtocol *string `type:"string" enum:"ProtocolEnum"`
- // The amount of time, in seconds, during which no response means a failed health
- // check.
- HealthCheckTimeoutSeconds *int64 `min:"2" type:"integer"`
- // The number of consecutive health checks successes required before considering
- // an unhealthy target healthy.
- HealthyThresholdCount *int64 `min:"2" type:"integer"`
- // The Amazon Resource Names (ARN) of the load balancers that route traffic
- // to this target group.
- LoadBalancerArns []*string `type:"list"`
- // The HTTP codes to use when checking for a successful response from a target.
- Matcher *Matcher `type:"structure"`
- // The port on which the targets are listening.
- Port *int64 `min:"1" type:"integer"`
- // The protocol to use for routing traffic to the targets.
- Protocol *string `type:"string" enum:"ProtocolEnum"`
- // The Amazon Resource Name (ARN) of the target group.
- TargetGroupArn *string `type:"string"`
- // The name of the target group.
- TargetGroupName *string `type:"string"`
- // The number of consecutive health check failures required before considering
- // the target unhealthy.
- UnhealthyThresholdCount *int64 `min:"2" type:"integer"`
- // The ID of the VPC for the targets.
- VpcId *string `type:"string"`
- }
- // String returns the string representation
- func (s TargetGroup) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s TargetGroup) GoString() string {
- return s.String()
- }
- // Information about a target group attribute.
- type TargetGroupAttribute struct {
- _ struct{} `type:"structure"`
- // The name of the attribute.
- //
- // * deregistration_delay.timeout_seconds - The amount time for Elastic Load
- // Balancing to wait before changing the state of a deregistering target
- // from draining to unused. The range is 0-3600 seconds. The default value
- // is 300 seconds.
- //
- // * stickiness.enabled - Indicates whether sticky sessions are enabled.
- // The value is true or false.
- //
- // * stickiness.type - The type of sticky sessions. The possible value is
- // lb_cookie.
- //
- // * stickiness.lb_cookie.duration_seconds - The time period, in seconds,
- // during which requests from a client should be routed to the same target.
- // After this time period expires, the load balancer-generated cookie is
- // considered stale. The range is 1 second to 1 week (604800 seconds). The
- // default value is 1 day (86400 seconds).
- Key *string `type:"string"`
- // The value of the attribute.
- Value *string `type:"string"`
- }
- // String returns the string representation
- func (s TargetGroupAttribute) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s TargetGroupAttribute) GoString() string {
- return s.String()
- }
- // Information about the current health of a target.
- type TargetHealth struct {
- _ struct{} `type:"structure"`
- // A description of the target health that provides additional details. If the
- // state is healthy, a description is not provided.
- Description *string `type:"string"`
- // The reason code. If the target state is healthy, a reason code is not provided.
- //
- // If the target state is initial, the reason code can be one of the following
- // values:
- //
- // * Elb.RegistrationInProgress - The target is in the process of being registered
- // with the load balancer.
- //
- // * Elb.InitialHealthChecking - The load balancer is still sending the target
- // the minimum number of health checks required to determine its health status.
- //
- // If the target state is unhealthy, the reason code can be one of the following
- // values:
- //
- // * Target.ResponseCodeMismatch - The health checks did not return an expected
- // HTTP code.
- //
- // * Target.Timeout - The health check requests timed out.
- //
- // * Target.FailedHealthChecks - The health checks failed because the connection
- // to the target timed out, the target response was malformed, or the target
- // failed the health check for an unknown reason.
- //
- // * Elb.InternalError - The health checks failed due to an internal error.
- //
- // If the target state is unused, the reason code can be one of the following
- // values:
- //
- // * Target.NotRegistered - The target is not registered with the target
- // group.
- //
- // * Target.NotInUse - The target group is not used by any load balancer
- // or the target is in an Availability Zone that is not enabled for its load
- // balancer.
- //
- // * Target.InvalidState - The target is in the stopped or terminated state.
- //
- // If the target state is draining, the reason code can be the following value:
- //
- // * Target.DeregistrationInProgress - The target is in the process of being
- // deregistered and the deregistration delay period has not expired.
- Reason *string `type:"string" enum:"TargetHealthReasonEnum"`
- // The state of the target.
- State *string `type:"string" enum:"TargetHealthStateEnum"`
- }
- // String returns the string representation
- func (s TargetHealth) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s TargetHealth) GoString() string {
- return s.String()
- }
- // Information about the health of a target.
- type TargetHealthDescription struct {
- _ struct{} `type:"structure"`
- // The port to use to connect with the target.
- HealthCheckPort *string `type:"string"`
- // The description of the target.
- Target *TargetDescription `type:"structure"`
- // The health information for the target.
- TargetHealth *TargetHealth `type:"structure"`
- }
- // String returns the string representation
- func (s TargetHealthDescription) String() string {
- return awsutil.Prettify(s)
- }
- // GoString returns the string representation
- func (s TargetHealthDescription) GoString() string {
- return s.String()
- }
- const (
- // ActionTypeEnumForward is a ActionTypeEnum enum value
- ActionTypeEnumForward = "forward"
- )
- const (
- // LoadBalancerSchemeEnumInternetFacing is a LoadBalancerSchemeEnum enum value
- LoadBalancerSchemeEnumInternetFacing = "internet-facing"
- // LoadBalancerSchemeEnumInternal is a LoadBalancerSchemeEnum enum value
- LoadBalancerSchemeEnumInternal = "internal"
- )
- const (
- // LoadBalancerStateEnumActive is a LoadBalancerStateEnum enum value
- LoadBalancerStateEnumActive = "active"
- // LoadBalancerStateEnumProvisioning is a LoadBalancerStateEnum enum value
- LoadBalancerStateEnumProvisioning = "provisioning"
- // LoadBalancerStateEnumFailed is a LoadBalancerStateEnum enum value
- LoadBalancerStateEnumFailed = "failed"
- )
- const (
- // LoadBalancerTypeEnumApplication is a LoadBalancerTypeEnum enum value
- LoadBalancerTypeEnumApplication = "application"
- )
- const (
- // ProtocolEnumHttp is a ProtocolEnum enum value
- ProtocolEnumHttp = "HTTP"
- // ProtocolEnumHttps is a ProtocolEnum enum value
- ProtocolEnumHttps = "HTTPS"
- )
- const (
- // TargetHealthReasonEnumElbRegistrationInProgress is a TargetHealthReasonEnum enum value
- TargetHealthReasonEnumElbRegistrationInProgress = "Elb.RegistrationInProgress"
- // TargetHealthReasonEnumElbInitialHealthChecking is a TargetHealthReasonEnum enum value
- TargetHealthReasonEnumElbInitialHealthChecking = "Elb.InitialHealthChecking"
- // TargetHealthReasonEnumTargetResponseCodeMismatch is a TargetHealthReasonEnum enum value
- TargetHealthReasonEnumTargetResponseCodeMismatch = "Target.ResponseCodeMismatch"
- // TargetHealthReasonEnumTargetTimeout is a TargetHealthReasonEnum enum value
- TargetHealthReasonEnumTargetTimeout = "Target.Timeout"
- // TargetHealthReasonEnumTargetFailedHealthChecks is a TargetHealthReasonEnum enum value
- TargetHealthReasonEnumTargetFailedHealthChecks = "Target.FailedHealthChecks"
- // TargetHealthReasonEnumTargetNotRegistered is a TargetHealthReasonEnum enum value
- TargetHealthReasonEnumTargetNotRegistered = "Target.NotRegistered"
- // TargetHealthReasonEnumTargetNotInUse is a TargetHealthReasonEnum enum value
- TargetHealthReasonEnumTargetNotInUse = "Target.NotInUse"
- // TargetHealthReasonEnumTargetDeregistrationInProgress is a TargetHealthReasonEnum enum value
- TargetHealthReasonEnumTargetDeregistrationInProgress = "Target.DeregistrationInProgress"
- // TargetHealthReasonEnumTargetInvalidState is a TargetHealthReasonEnum enum value
- TargetHealthReasonEnumTargetInvalidState = "Target.InvalidState"
- // TargetHealthReasonEnumElbInternalError is a TargetHealthReasonEnum enum value
- TargetHealthReasonEnumElbInternalError = "Elb.InternalError"
- )
- const (
- // TargetHealthStateEnumInitial is a TargetHealthStateEnum enum value
- TargetHealthStateEnumInitial = "initial"
- // TargetHealthStateEnumHealthy is a TargetHealthStateEnum enum value
- TargetHealthStateEnumHealthy = "healthy"
- // TargetHealthStateEnumUnhealthy is a TargetHealthStateEnum enum value
- TargetHealthStateEnumUnhealthy = "unhealthy"
- // TargetHealthStateEnumUnused is a TargetHealthStateEnum enum value
- TargetHealthStateEnumUnused = "unused"
- // TargetHealthStateEnumDraining is a TargetHealthStateEnum enum value
- TargetHealthStateEnumDraining = "draining"
- )
|