objects.pb.go 198 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561
  1. // Code generated by protoc-gen-gogo.
  2. // source: objects.proto
  3. // DO NOT EDIT!
  4. package api
  5. import proto "github.com/gogo/protobuf/proto"
  6. import fmt "fmt"
  7. import math "math"
  8. import google_protobuf "github.com/gogo/protobuf/types"
  9. import _ "github.com/gogo/protobuf/gogoproto"
  10. import google_protobuf3 "github.com/gogo/protobuf/types"
  11. import _ "github.com/docker/swarmkit/protobuf/plugin"
  12. import github_com_docker_swarmkit_api_deepcopy "github.com/docker/swarmkit/api/deepcopy"
  13. import github_com_docker_go_events "github.com/docker/go-events"
  14. import strings "strings"
  15. import reflect "reflect"
  16. import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys"
  17. import io "io"
  18. // Reference imports to suppress errors if they are not otherwise used.
  19. var _ = proto.Marshal
  20. var _ = fmt.Errorf
  21. var _ = math.Inf
  22. // Meta contains metadata about objects. Every object contains a meta field.
  23. type Meta struct {
  24. // Version tracks the current version of the object.
  25. Version Version `protobuf:"bytes,1,opt,name=version" json:"version"`
  26. // Object timestamps.
  27. // Note: can't use stdtime because these fields are nullable.
  28. CreatedAt *google_protobuf.Timestamp `protobuf:"bytes,2,opt,name=created_at,json=createdAt" json:"created_at,omitempty"`
  29. UpdatedAt *google_protobuf.Timestamp `protobuf:"bytes,3,opt,name=updated_at,json=updatedAt" json:"updated_at,omitempty"`
  30. }
  31. func (m *Meta) Reset() { *m = Meta{} }
  32. func (*Meta) ProtoMessage() {}
  33. func (*Meta) Descriptor() ([]byte, []int) { return fileDescriptorObjects, []int{0} }
  34. // Node provides the internal node state as seen by the cluster.
  35. type Node struct {
  36. // ID specifies the identity of the node.
  37. ID string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  38. Meta Meta `protobuf:"bytes,2,opt,name=meta" json:"meta"`
  39. // Spec defines the desired state of the node as specified by the user.
  40. // The system will honor this and will *never* modify it.
  41. Spec NodeSpec `protobuf:"bytes,3,opt,name=spec" json:"spec"`
  42. // Description encapsulated the properties of the Node as reported by the
  43. // agent.
  44. Description *NodeDescription `protobuf:"bytes,4,opt,name=description" json:"description,omitempty"`
  45. // Status provides the current status of the node, as seen by the manager.
  46. Status NodeStatus `protobuf:"bytes,5,opt,name=status" json:"status"`
  47. // ManagerStatus provides the current status of the node's manager
  48. // component, if the node is a manager.
  49. ManagerStatus *ManagerStatus `protobuf:"bytes,6,opt,name=manager_status,json=managerStatus" json:"manager_status,omitempty"`
  50. // The node attachment to the ingress network.
  51. Attachment *NetworkAttachment `protobuf:"bytes,7,opt,name=attachment" json:"attachment,omitempty"`
  52. // Certificate is the TLS certificate issued for the node, if any.
  53. Certificate Certificate `protobuf:"bytes,8,opt,name=certificate" json:"certificate"`
  54. // Role is the *observed* role for this node. It differs from the
  55. // desired role set in Node.Spec.Role because the role here is only
  56. // updated after the Raft member list has been reconciled with the
  57. // desired role from the spec.
  58. //
  59. // This field represents the current reconciled state. If an action is
  60. // to be performed, first verify the role in the cert. This field only
  61. // shows the privilege level that the CA would currently grant when
  62. // issuing or renewing the node's certificate.
  63. Role NodeRole `protobuf:"varint,9,opt,name=role,proto3,enum=docker.swarmkit.v1.NodeRole" json:"role,omitempty"`
  64. }
  65. func (m *Node) Reset() { *m = Node{} }
  66. func (*Node) ProtoMessage() {}
  67. func (*Node) Descriptor() ([]byte, []int) { return fileDescriptorObjects, []int{1} }
  68. type Service struct {
  69. ID string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  70. Meta Meta `protobuf:"bytes,2,opt,name=meta" json:"meta"`
  71. Spec ServiceSpec `protobuf:"bytes,3,opt,name=spec" json:"spec"`
  72. // SpecVersion versions Spec, to identify changes in the spec. Note that
  73. // this is not directly comparable to the service's Version.
  74. SpecVersion *Version `protobuf:"bytes,10,opt,name=spec_version,json=specVersion" json:"spec_version,omitempty"`
  75. // PreviousSpec is the previous service spec that was in place before
  76. // "Spec".
  77. PreviousSpec *ServiceSpec `protobuf:"bytes,6,opt,name=previous_spec,json=previousSpec" json:"previous_spec,omitempty"`
  78. // PreviousSpecVersion versions PreviousSpec. Note that this is not
  79. // directly comparable to the service's Version.
  80. PreviousSpecVersion *Version `protobuf:"bytes,11,opt,name=previous_spec_version,json=previousSpecVersion" json:"previous_spec_version,omitempty"`
  81. // Runtime state of service endpoint. This may be different
  82. // from the spec version because the user may not have entered
  83. // the optional fields like node_port or virtual_ip and it
  84. // could be auto allocated by the system.
  85. Endpoint *Endpoint `protobuf:"bytes,4,opt,name=endpoint" json:"endpoint,omitempty"`
  86. // UpdateStatus contains the status of an update, if one is in
  87. // progress.
  88. UpdateStatus *UpdateStatus `protobuf:"bytes,5,opt,name=update_status,json=updateStatus" json:"update_status,omitempty"`
  89. }
  90. func (m *Service) Reset() { *m = Service{} }
  91. func (*Service) ProtoMessage() {}
  92. func (*Service) Descriptor() ([]byte, []int) { return fileDescriptorObjects, []int{2} }
  93. // Endpoint specified all the network parameters required to
  94. // correctly discover and load balance a service
  95. type Endpoint struct {
  96. Spec *EndpointSpec `protobuf:"bytes,1,opt,name=spec" json:"spec,omitempty"`
  97. // Runtime state of the exposed ports which may carry
  98. // auto-allocated swarm ports in addition to the user
  99. // configured information.
  100. Ports []*PortConfig `protobuf:"bytes,2,rep,name=ports" json:"ports,omitempty"`
  101. // VirtualIPs specifies the IP addresses under which this endpoint will be
  102. // made available.
  103. VirtualIPs []*Endpoint_VirtualIP `protobuf:"bytes,3,rep,name=virtual_ips,json=virtualIps" json:"virtual_ips,omitempty"`
  104. }
  105. func (m *Endpoint) Reset() { *m = Endpoint{} }
  106. func (*Endpoint) ProtoMessage() {}
  107. func (*Endpoint) Descriptor() ([]byte, []int) { return fileDescriptorObjects, []int{3} }
  108. // VirtualIP specifies a set of networks this endpoint will be attached to
  109. // and the IP addresses the target service will be made available under.
  110. type Endpoint_VirtualIP struct {
  111. // NetworkID for which this endpoint attachment was created.
  112. NetworkID string `protobuf:"bytes,1,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
  113. // A virtual IP is used to address this service in IP
  114. // layer that the client can use to send requests to
  115. // this service. A DNS A/AAAA query on the service
  116. // name might return this IP to the client. This is
  117. // strictly a logical IP and there may not be any
  118. // interfaces assigned this IP address or any route
  119. // created for this address. More than one to
  120. // accommodate for both IPv4 and IPv6
  121. Addr string `protobuf:"bytes,2,opt,name=addr,proto3" json:"addr,omitempty"`
  122. }
  123. func (m *Endpoint_VirtualIP) Reset() { *m = Endpoint_VirtualIP{} }
  124. func (*Endpoint_VirtualIP) ProtoMessage() {}
  125. func (*Endpoint_VirtualIP) Descriptor() ([]byte, []int) { return fileDescriptorObjects, []int{3, 0} }
  126. // Task specifies the parameters for implementing a Spec. A task is effectively
  127. // immutable and idempotent. Once it is dispatched to a node, it will not be
  128. // dispatched to another node.
  129. type Task struct {
  130. ID string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  131. Meta Meta `protobuf:"bytes,2,opt,name=meta" json:"meta"`
  132. // Spec defines the desired state of the task as specified by the user.
  133. // The system will honor this and will *never* modify it.
  134. Spec TaskSpec `protobuf:"bytes,3,opt,name=spec" json:"spec"`
  135. // SpecVersion is copied from Service, to identify which version of the
  136. // spec this task has. Note that this is not directly comparable to the
  137. // service's Version.
  138. SpecVersion *Version `protobuf:"bytes,14,opt,name=spec_version,json=specVersion" json:"spec_version,omitempty"`
  139. // ServiceID indicates the service under which this task is orchestrated. This
  140. // should almost always be set.
  141. ServiceID string `protobuf:"bytes,4,opt,name=service_id,json=serviceId,proto3" json:"service_id,omitempty"`
  142. // Slot is the service slot number for a task.
  143. // For example, if a replicated service has replicas = 2, there will be a
  144. // task with slot = 1, and another with slot = 2.
  145. Slot uint64 `protobuf:"varint,5,opt,name=slot,proto3" json:"slot,omitempty"`
  146. // NodeID indicates the node to which the task is assigned. If this field
  147. // is empty or not set, the task is unassigned.
  148. NodeID string `protobuf:"bytes,6,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"`
  149. // Annotations defines the names and labels for the runtime, as set by
  150. // the cluster manager.
  151. //
  152. // As backup, if this field has an empty name, the runtime will
  153. // allocate a unique name for the actual container.
  154. //
  155. // NOTE(stevvooe): The preserves the ability for us to making naming
  156. // decisions for tasks in orchestrator, albeit, this is left empty for now.
  157. Annotations Annotations `protobuf:"bytes,7,opt,name=annotations" json:"annotations"`
  158. // ServiceAnnotations is a direct copy of the service name and labels when
  159. // this task is created.
  160. //
  161. // Labels set here will *not* be propagated to the runtime target, such as a
  162. // container. Use labels on the runtime target for that purpose.
  163. ServiceAnnotations Annotations `protobuf:"bytes,8,opt,name=service_annotations,json=serviceAnnotations" json:"service_annotations"`
  164. Status TaskStatus `protobuf:"bytes,9,opt,name=status" json:"status"`
  165. // DesiredState is the target state for the task. It is set to
  166. // TaskStateRunning when a task is first created, and changed to
  167. // TaskStateShutdown if the manager wants to terminate the task. This field
  168. // is only written by the manager.
  169. DesiredState TaskState `protobuf:"varint,10,opt,name=desired_state,json=desiredState,proto3,enum=docker.swarmkit.v1.TaskState" json:"desired_state,omitempty"`
  170. // List of network attachments by the task.
  171. Networks []*NetworkAttachment `protobuf:"bytes,11,rep,name=networks" json:"networks,omitempty"`
  172. // A copy of runtime state of service endpoint from Service
  173. // object to be distributed to agents as part of the task.
  174. Endpoint *Endpoint `protobuf:"bytes,12,opt,name=endpoint" json:"endpoint,omitempty"`
  175. // LogDriver specifies the selected log driver to use for the task. Agent
  176. // processes should always favor the value in this field.
  177. //
  178. // If present in the TaskSpec, this will be a copy of that value. The
  179. // orchestrator may choose to insert a value here, which should be honored,
  180. // such a cluster default or policy-based value.
  181. //
  182. // If not present, the daemon's default will be used.
  183. LogDriver *Driver `protobuf:"bytes,13,opt,name=log_driver,json=logDriver" json:"log_driver,omitempty"`
  184. }
  185. func (m *Task) Reset() { *m = Task{} }
  186. func (*Task) ProtoMessage() {}
  187. func (*Task) Descriptor() ([]byte, []int) { return fileDescriptorObjects, []int{4} }
  188. // NetworkAttachment specifies the network parameters of attachment to
  189. // a single network by an object such as task or node.
  190. type NetworkAttachment struct {
  191. // Network state as a whole becomes part of the object so that
  192. // it always is available for use in agents so that agents
  193. // don't have any other dependency during execution.
  194. Network *Network `protobuf:"bytes,1,opt,name=network" json:"network,omitempty"`
  195. // List of IPv4/IPv6 addresses that are assigned to the object
  196. // as part of getting attached to this network.
  197. Addresses []string `protobuf:"bytes,2,rep,name=addresses" json:"addresses,omitempty"`
  198. // List of aliases by which a task is resolved in a network
  199. Aliases []string `protobuf:"bytes,3,rep,name=aliases" json:"aliases,omitempty"`
  200. }
  201. func (m *NetworkAttachment) Reset() { *m = NetworkAttachment{} }
  202. func (*NetworkAttachment) ProtoMessage() {}
  203. func (*NetworkAttachment) Descriptor() ([]byte, []int) { return fileDescriptorObjects, []int{5} }
  204. type Network struct {
  205. ID string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  206. Meta Meta `protobuf:"bytes,2,opt,name=meta" json:"meta"`
  207. Spec NetworkSpec `protobuf:"bytes,3,opt,name=spec" json:"spec"`
  208. // Driver specific operational state provided by the network driver.
  209. DriverState *Driver `protobuf:"bytes,4,opt,name=driver_state,json=driverState" json:"driver_state,omitempty"`
  210. // Runtime state of IPAM options. This may not reflect the
  211. // ipam options from NetworkSpec.
  212. IPAM *IPAMOptions `protobuf:"bytes,5,opt,name=ipam" json:"ipam,omitempty"`
  213. }
  214. func (m *Network) Reset() { *m = Network{} }
  215. func (*Network) ProtoMessage() {}
  216. func (*Network) Descriptor() ([]byte, []int) { return fileDescriptorObjects, []int{6} }
  217. // Cluster provides global cluster settings.
  218. type Cluster struct {
  219. ID string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  220. Meta Meta `protobuf:"bytes,2,opt,name=meta" json:"meta"`
  221. Spec ClusterSpec `protobuf:"bytes,3,opt,name=spec" json:"spec"`
  222. // RootCA contains key material for the root CA.
  223. RootCA RootCA `protobuf:"bytes,4,opt,name=root_ca,json=rootCa" json:"root_ca"`
  224. // Symmetric encryption key distributed by the lead manager. Used by agents
  225. // for securing network bootstrapping and communication.
  226. NetworkBootstrapKeys []*EncryptionKey `protobuf:"bytes,5,rep,name=network_bootstrap_keys,json=networkBootstrapKeys" json:"network_bootstrap_keys,omitempty"`
  227. // Logical clock used to timestamp every key. It allows other managers
  228. // and agents to unambiguously identify the older key to be deleted when
  229. // a new key is allocated on key rotation.
  230. EncryptionKeyLamportClock uint64 `protobuf:"varint,6,opt,name=encryption_key_lamport_clock,json=encryptionKeyLamportClock,proto3" json:"encryption_key_lamport_clock,omitempty"`
  231. // BlacklistedCertificates tracks certificates that should no longer
  232. // be honored. It's a mapping from CN -> BlacklistedCertificate.
  233. // swarm. Their certificates should effectively be blacklisted.
  234. BlacklistedCertificates map[string]*BlacklistedCertificate `protobuf:"bytes,8,rep,name=blacklisted_certificates,json=blacklistedCertificates" json:"blacklisted_certificates,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value"`
  235. // UnlockKeys defines the keys that lock node data at rest. For example,
  236. // this would contain the key encrypting key (KEK) that will encrypt the
  237. // manager TLS keys at rest and the raft encryption keys at rest.
  238. // If the key is empty, the node will be unlocked (will not require a key
  239. // to start up from a shut down state).
  240. UnlockKeys []*EncryptionKey `protobuf:"bytes,9,rep,name=unlock_keys,json=unlockKeys" json:"unlock_keys,omitempty"`
  241. }
  242. func (m *Cluster) Reset() { *m = Cluster{} }
  243. func (*Cluster) ProtoMessage() {}
  244. func (*Cluster) Descriptor() ([]byte, []int) { return fileDescriptorObjects, []int{7} }
  245. // Secret represents a secret that should be passed to a container or a node,
  246. // and is immutable.
  247. type Secret struct {
  248. ID string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  249. Meta Meta `protobuf:"bytes,2,opt,name=meta" json:"meta"`
  250. // Spec contains the actual secret data, as well as any context around the
  251. // secret data that the user provides.
  252. Spec SecretSpec `protobuf:"bytes,3,opt,name=spec" json:"spec"`
  253. // Whether the secret is an internal secret (not set by a user) or not.
  254. Internal bool `protobuf:"varint,4,opt,name=internal,proto3" json:"internal,omitempty"`
  255. }
  256. func (m *Secret) Reset() { *m = Secret{} }
  257. func (*Secret) ProtoMessage() {}
  258. func (*Secret) Descriptor() ([]byte, []int) { return fileDescriptorObjects, []int{8} }
  259. // Config represents a set of configuration files that should be passed to a
  260. // container.
  261. type Config struct {
  262. ID string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  263. Meta Meta `protobuf:"bytes,2,opt,name=meta" json:"meta"`
  264. // Spec contains the actual config data, as well as any context around the
  265. // config data that the user provides.
  266. Spec ConfigSpec `protobuf:"bytes,3,opt,name=spec" json:"spec"`
  267. }
  268. func (m *Config) Reset() { *m = Config{} }
  269. func (*Config) ProtoMessage() {}
  270. func (*Config) Descriptor() ([]byte, []int) { return fileDescriptorObjects, []int{9} }
  271. // Resource is a top-level object with externally defined content and indexing.
  272. // SwarmKit can serve as a store for these objects without understanding their
  273. // meanings.
  274. type Resource struct {
  275. ID string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  276. Meta Meta `protobuf:"bytes,2,opt,name=meta" json:"meta"`
  277. Annotations Annotations `protobuf:"bytes,3,opt,name=annotations" json:"annotations"`
  278. // Kind identifies this class of object. It is essentially a namespace
  279. // to keep IDs or indices from colliding between unrelated Resource
  280. // objects. This must correspond to the name of an Extension.
  281. Kind string `protobuf:"bytes,4,opt,name=kind,proto3" json:"kind,omitempty"`
  282. // Payload bytes. This data is not interpreted in any way by SwarmKit.
  283. // By convention, it should be a marshalled protocol buffers message.
  284. Payload *google_protobuf3.Any `protobuf:"bytes,5,opt,name=payload" json:"payload,omitempty"`
  285. }
  286. func (m *Resource) Reset() { *m = Resource{} }
  287. func (*Resource) ProtoMessage() {}
  288. func (*Resource) Descriptor() ([]byte, []int) { return fileDescriptorObjects, []int{10} }
  289. // Extension declares a type of "resource" object. This message provides some
  290. // metadata about the objects.
  291. type Extension struct {
  292. ID string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  293. Meta Meta `protobuf:"bytes,2,opt,name=meta" json:"meta"`
  294. Annotations Annotations `protobuf:"bytes,3,opt,name=annotations" json:"annotations"`
  295. Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"`
  296. }
  297. func (m *Extension) Reset() { *m = Extension{} }
  298. func (*Extension) ProtoMessage() {}
  299. func (*Extension) Descriptor() ([]byte, []int) { return fileDescriptorObjects, []int{11} }
  300. func init() {
  301. proto.RegisterType((*Meta)(nil), "docker.swarmkit.v1.Meta")
  302. proto.RegisterType((*Node)(nil), "docker.swarmkit.v1.Node")
  303. proto.RegisterType((*Service)(nil), "docker.swarmkit.v1.Service")
  304. proto.RegisterType((*Endpoint)(nil), "docker.swarmkit.v1.Endpoint")
  305. proto.RegisterType((*Endpoint_VirtualIP)(nil), "docker.swarmkit.v1.Endpoint.VirtualIP")
  306. proto.RegisterType((*Task)(nil), "docker.swarmkit.v1.Task")
  307. proto.RegisterType((*NetworkAttachment)(nil), "docker.swarmkit.v1.NetworkAttachment")
  308. proto.RegisterType((*Network)(nil), "docker.swarmkit.v1.Network")
  309. proto.RegisterType((*Cluster)(nil), "docker.swarmkit.v1.Cluster")
  310. proto.RegisterType((*Secret)(nil), "docker.swarmkit.v1.Secret")
  311. proto.RegisterType((*Config)(nil), "docker.swarmkit.v1.Config")
  312. proto.RegisterType((*Resource)(nil), "docker.swarmkit.v1.Resource")
  313. proto.RegisterType((*Extension)(nil), "docker.swarmkit.v1.Extension")
  314. }
  315. func (m *Meta) Copy() *Meta {
  316. if m == nil {
  317. return nil
  318. }
  319. o := &Meta{}
  320. o.CopyFrom(m)
  321. return o
  322. }
  323. func (m *Meta) CopyFrom(src interface{}) {
  324. o := src.(*Meta)
  325. *m = *o
  326. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Version, &o.Version)
  327. if o.CreatedAt != nil {
  328. m.CreatedAt = &google_protobuf.Timestamp{}
  329. github_com_docker_swarmkit_api_deepcopy.Copy(m.CreatedAt, o.CreatedAt)
  330. }
  331. if o.UpdatedAt != nil {
  332. m.UpdatedAt = &google_protobuf.Timestamp{}
  333. github_com_docker_swarmkit_api_deepcopy.Copy(m.UpdatedAt, o.UpdatedAt)
  334. }
  335. }
  336. func (m *Node) Copy() *Node {
  337. if m == nil {
  338. return nil
  339. }
  340. o := &Node{}
  341. o.CopyFrom(m)
  342. return o
  343. }
  344. func (m *Node) CopyFrom(src interface{}) {
  345. o := src.(*Node)
  346. *m = *o
  347. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Meta, &o.Meta)
  348. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Spec, &o.Spec)
  349. if o.Description != nil {
  350. m.Description = &NodeDescription{}
  351. github_com_docker_swarmkit_api_deepcopy.Copy(m.Description, o.Description)
  352. }
  353. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Status, &o.Status)
  354. if o.ManagerStatus != nil {
  355. m.ManagerStatus = &ManagerStatus{}
  356. github_com_docker_swarmkit_api_deepcopy.Copy(m.ManagerStatus, o.ManagerStatus)
  357. }
  358. if o.Attachment != nil {
  359. m.Attachment = &NetworkAttachment{}
  360. github_com_docker_swarmkit_api_deepcopy.Copy(m.Attachment, o.Attachment)
  361. }
  362. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Certificate, &o.Certificate)
  363. }
  364. func (m *Service) Copy() *Service {
  365. if m == nil {
  366. return nil
  367. }
  368. o := &Service{}
  369. o.CopyFrom(m)
  370. return o
  371. }
  372. func (m *Service) CopyFrom(src interface{}) {
  373. o := src.(*Service)
  374. *m = *o
  375. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Meta, &o.Meta)
  376. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Spec, &o.Spec)
  377. if o.SpecVersion != nil {
  378. m.SpecVersion = &Version{}
  379. github_com_docker_swarmkit_api_deepcopy.Copy(m.SpecVersion, o.SpecVersion)
  380. }
  381. if o.PreviousSpec != nil {
  382. m.PreviousSpec = &ServiceSpec{}
  383. github_com_docker_swarmkit_api_deepcopy.Copy(m.PreviousSpec, o.PreviousSpec)
  384. }
  385. if o.PreviousSpecVersion != nil {
  386. m.PreviousSpecVersion = &Version{}
  387. github_com_docker_swarmkit_api_deepcopy.Copy(m.PreviousSpecVersion, o.PreviousSpecVersion)
  388. }
  389. if o.Endpoint != nil {
  390. m.Endpoint = &Endpoint{}
  391. github_com_docker_swarmkit_api_deepcopy.Copy(m.Endpoint, o.Endpoint)
  392. }
  393. if o.UpdateStatus != nil {
  394. m.UpdateStatus = &UpdateStatus{}
  395. github_com_docker_swarmkit_api_deepcopy.Copy(m.UpdateStatus, o.UpdateStatus)
  396. }
  397. }
  398. func (m *Endpoint) Copy() *Endpoint {
  399. if m == nil {
  400. return nil
  401. }
  402. o := &Endpoint{}
  403. o.CopyFrom(m)
  404. return o
  405. }
  406. func (m *Endpoint) CopyFrom(src interface{}) {
  407. o := src.(*Endpoint)
  408. *m = *o
  409. if o.Spec != nil {
  410. m.Spec = &EndpointSpec{}
  411. github_com_docker_swarmkit_api_deepcopy.Copy(m.Spec, o.Spec)
  412. }
  413. if o.Ports != nil {
  414. m.Ports = make([]*PortConfig, len(o.Ports))
  415. for i := range m.Ports {
  416. m.Ports[i] = &PortConfig{}
  417. github_com_docker_swarmkit_api_deepcopy.Copy(m.Ports[i], o.Ports[i])
  418. }
  419. }
  420. if o.VirtualIPs != nil {
  421. m.VirtualIPs = make([]*Endpoint_VirtualIP, len(o.VirtualIPs))
  422. for i := range m.VirtualIPs {
  423. m.VirtualIPs[i] = &Endpoint_VirtualIP{}
  424. github_com_docker_swarmkit_api_deepcopy.Copy(m.VirtualIPs[i], o.VirtualIPs[i])
  425. }
  426. }
  427. }
  428. func (m *Endpoint_VirtualIP) Copy() *Endpoint_VirtualIP {
  429. if m == nil {
  430. return nil
  431. }
  432. o := &Endpoint_VirtualIP{}
  433. o.CopyFrom(m)
  434. return o
  435. }
  436. func (m *Endpoint_VirtualIP) CopyFrom(src interface{}) {
  437. o := src.(*Endpoint_VirtualIP)
  438. *m = *o
  439. }
  440. func (m *Task) Copy() *Task {
  441. if m == nil {
  442. return nil
  443. }
  444. o := &Task{}
  445. o.CopyFrom(m)
  446. return o
  447. }
  448. func (m *Task) CopyFrom(src interface{}) {
  449. o := src.(*Task)
  450. *m = *o
  451. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Meta, &o.Meta)
  452. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Spec, &o.Spec)
  453. if o.SpecVersion != nil {
  454. m.SpecVersion = &Version{}
  455. github_com_docker_swarmkit_api_deepcopy.Copy(m.SpecVersion, o.SpecVersion)
  456. }
  457. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Annotations, &o.Annotations)
  458. github_com_docker_swarmkit_api_deepcopy.Copy(&m.ServiceAnnotations, &o.ServiceAnnotations)
  459. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Status, &o.Status)
  460. if o.Networks != nil {
  461. m.Networks = make([]*NetworkAttachment, len(o.Networks))
  462. for i := range m.Networks {
  463. m.Networks[i] = &NetworkAttachment{}
  464. github_com_docker_swarmkit_api_deepcopy.Copy(m.Networks[i], o.Networks[i])
  465. }
  466. }
  467. if o.Endpoint != nil {
  468. m.Endpoint = &Endpoint{}
  469. github_com_docker_swarmkit_api_deepcopy.Copy(m.Endpoint, o.Endpoint)
  470. }
  471. if o.LogDriver != nil {
  472. m.LogDriver = &Driver{}
  473. github_com_docker_swarmkit_api_deepcopy.Copy(m.LogDriver, o.LogDriver)
  474. }
  475. }
  476. func (m *NetworkAttachment) Copy() *NetworkAttachment {
  477. if m == nil {
  478. return nil
  479. }
  480. o := &NetworkAttachment{}
  481. o.CopyFrom(m)
  482. return o
  483. }
  484. func (m *NetworkAttachment) CopyFrom(src interface{}) {
  485. o := src.(*NetworkAttachment)
  486. *m = *o
  487. if o.Network != nil {
  488. m.Network = &Network{}
  489. github_com_docker_swarmkit_api_deepcopy.Copy(m.Network, o.Network)
  490. }
  491. if o.Addresses != nil {
  492. m.Addresses = make([]string, len(o.Addresses))
  493. copy(m.Addresses, o.Addresses)
  494. }
  495. if o.Aliases != nil {
  496. m.Aliases = make([]string, len(o.Aliases))
  497. copy(m.Aliases, o.Aliases)
  498. }
  499. }
  500. func (m *Network) Copy() *Network {
  501. if m == nil {
  502. return nil
  503. }
  504. o := &Network{}
  505. o.CopyFrom(m)
  506. return o
  507. }
  508. func (m *Network) CopyFrom(src interface{}) {
  509. o := src.(*Network)
  510. *m = *o
  511. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Meta, &o.Meta)
  512. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Spec, &o.Spec)
  513. if o.DriverState != nil {
  514. m.DriverState = &Driver{}
  515. github_com_docker_swarmkit_api_deepcopy.Copy(m.DriverState, o.DriverState)
  516. }
  517. if o.IPAM != nil {
  518. m.IPAM = &IPAMOptions{}
  519. github_com_docker_swarmkit_api_deepcopy.Copy(m.IPAM, o.IPAM)
  520. }
  521. }
  522. func (m *Cluster) Copy() *Cluster {
  523. if m == nil {
  524. return nil
  525. }
  526. o := &Cluster{}
  527. o.CopyFrom(m)
  528. return o
  529. }
  530. func (m *Cluster) CopyFrom(src interface{}) {
  531. o := src.(*Cluster)
  532. *m = *o
  533. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Meta, &o.Meta)
  534. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Spec, &o.Spec)
  535. github_com_docker_swarmkit_api_deepcopy.Copy(&m.RootCA, &o.RootCA)
  536. if o.NetworkBootstrapKeys != nil {
  537. m.NetworkBootstrapKeys = make([]*EncryptionKey, len(o.NetworkBootstrapKeys))
  538. for i := range m.NetworkBootstrapKeys {
  539. m.NetworkBootstrapKeys[i] = &EncryptionKey{}
  540. github_com_docker_swarmkit_api_deepcopy.Copy(m.NetworkBootstrapKeys[i], o.NetworkBootstrapKeys[i])
  541. }
  542. }
  543. if o.BlacklistedCertificates != nil {
  544. m.BlacklistedCertificates = make(map[string]*BlacklistedCertificate, len(o.BlacklistedCertificates))
  545. for k, v := range o.BlacklistedCertificates {
  546. m.BlacklistedCertificates[k] = &BlacklistedCertificate{}
  547. github_com_docker_swarmkit_api_deepcopy.Copy(m.BlacklistedCertificates[k], v)
  548. }
  549. }
  550. if o.UnlockKeys != nil {
  551. m.UnlockKeys = make([]*EncryptionKey, len(o.UnlockKeys))
  552. for i := range m.UnlockKeys {
  553. m.UnlockKeys[i] = &EncryptionKey{}
  554. github_com_docker_swarmkit_api_deepcopy.Copy(m.UnlockKeys[i], o.UnlockKeys[i])
  555. }
  556. }
  557. }
  558. func (m *Secret) Copy() *Secret {
  559. if m == nil {
  560. return nil
  561. }
  562. o := &Secret{}
  563. o.CopyFrom(m)
  564. return o
  565. }
  566. func (m *Secret) CopyFrom(src interface{}) {
  567. o := src.(*Secret)
  568. *m = *o
  569. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Meta, &o.Meta)
  570. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Spec, &o.Spec)
  571. }
  572. func (m *Config) Copy() *Config {
  573. if m == nil {
  574. return nil
  575. }
  576. o := &Config{}
  577. o.CopyFrom(m)
  578. return o
  579. }
  580. func (m *Config) CopyFrom(src interface{}) {
  581. o := src.(*Config)
  582. *m = *o
  583. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Meta, &o.Meta)
  584. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Spec, &o.Spec)
  585. }
  586. func (m *Resource) Copy() *Resource {
  587. if m == nil {
  588. return nil
  589. }
  590. o := &Resource{}
  591. o.CopyFrom(m)
  592. return o
  593. }
  594. func (m *Resource) CopyFrom(src interface{}) {
  595. o := src.(*Resource)
  596. *m = *o
  597. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Meta, &o.Meta)
  598. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Annotations, &o.Annotations)
  599. if o.Payload != nil {
  600. m.Payload = &google_protobuf3.Any{}
  601. github_com_docker_swarmkit_api_deepcopy.Copy(m.Payload, o.Payload)
  602. }
  603. }
  604. func (m *Extension) Copy() *Extension {
  605. if m == nil {
  606. return nil
  607. }
  608. o := &Extension{}
  609. o.CopyFrom(m)
  610. return o
  611. }
  612. func (m *Extension) CopyFrom(src interface{}) {
  613. o := src.(*Extension)
  614. *m = *o
  615. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Meta, &o.Meta)
  616. github_com_docker_swarmkit_api_deepcopy.Copy(&m.Annotations, &o.Annotations)
  617. }
  618. func (m *Meta) Marshal() (dAtA []byte, err error) {
  619. size := m.Size()
  620. dAtA = make([]byte, size)
  621. n, err := m.MarshalTo(dAtA)
  622. if err != nil {
  623. return nil, err
  624. }
  625. return dAtA[:n], nil
  626. }
  627. func (m *Meta) MarshalTo(dAtA []byte) (int, error) {
  628. var i int
  629. _ = i
  630. var l int
  631. _ = l
  632. dAtA[i] = 0xa
  633. i++
  634. i = encodeVarintObjects(dAtA, i, uint64(m.Version.Size()))
  635. n1, err := m.Version.MarshalTo(dAtA[i:])
  636. if err != nil {
  637. return 0, err
  638. }
  639. i += n1
  640. if m.CreatedAt != nil {
  641. dAtA[i] = 0x12
  642. i++
  643. i = encodeVarintObjects(dAtA, i, uint64(m.CreatedAt.Size()))
  644. n2, err := m.CreatedAt.MarshalTo(dAtA[i:])
  645. if err != nil {
  646. return 0, err
  647. }
  648. i += n2
  649. }
  650. if m.UpdatedAt != nil {
  651. dAtA[i] = 0x1a
  652. i++
  653. i = encodeVarintObjects(dAtA, i, uint64(m.UpdatedAt.Size()))
  654. n3, err := m.UpdatedAt.MarshalTo(dAtA[i:])
  655. if err != nil {
  656. return 0, err
  657. }
  658. i += n3
  659. }
  660. return i, nil
  661. }
  662. func (m *Node) Marshal() (dAtA []byte, err error) {
  663. size := m.Size()
  664. dAtA = make([]byte, size)
  665. n, err := m.MarshalTo(dAtA)
  666. if err != nil {
  667. return nil, err
  668. }
  669. return dAtA[:n], nil
  670. }
  671. func (m *Node) MarshalTo(dAtA []byte) (int, error) {
  672. var i int
  673. _ = i
  674. var l int
  675. _ = l
  676. if len(m.ID) > 0 {
  677. dAtA[i] = 0xa
  678. i++
  679. i = encodeVarintObjects(dAtA, i, uint64(len(m.ID)))
  680. i += copy(dAtA[i:], m.ID)
  681. }
  682. dAtA[i] = 0x12
  683. i++
  684. i = encodeVarintObjects(dAtA, i, uint64(m.Meta.Size()))
  685. n4, err := m.Meta.MarshalTo(dAtA[i:])
  686. if err != nil {
  687. return 0, err
  688. }
  689. i += n4
  690. dAtA[i] = 0x1a
  691. i++
  692. i = encodeVarintObjects(dAtA, i, uint64(m.Spec.Size()))
  693. n5, err := m.Spec.MarshalTo(dAtA[i:])
  694. if err != nil {
  695. return 0, err
  696. }
  697. i += n5
  698. if m.Description != nil {
  699. dAtA[i] = 0x22
  700. i++
  701. i = encodeVarintObjects(dAtA, i, uint64(m.Description.Size()))
  702. n6, err := m.Description.MarshalTo(dAtA[i:])
  703. if err != nil {
  704. return 0, err
  705. }
  706. i += n6
  707. }
  708. dAtA[i] = 0x2a
  709. i++
  710. i = encodeVarintObjects(dAtA, i, uint64(m.Status.Size()))
  711. n7, err := m.Status.MarshalTo(dAtA[i:])
  712. if err != nil {
  713. return 0, err
  714. }
  715. i += n7
  716. if m.ManagerStatus != nil {
  717. dAtA[i] = 0x32
  718. i++
  719. i = encodeVarintObjects(dAtA, i, uint64(m.ManagerStatus.Size()))
  720. n8, err := m.ManagerStatus.MarshalTo(dAtA[i:])
  721. if err != nil {
  722. return 0, err
  723. }
  724. i += n8
  725. }
  726. if m.Attachment != nil {
  727. dAtA[i] = 0x3a
  728. i++
  729. i = encodeVarintObjects(dAtA, i, uint64(m.Attachment.Size()))
  730. n9, err := m.Attachment.MarshalTo(dAtA[i:])
  731. if err != nil {
  732. return 0, err
  733. }
  734. i += n9
  735. }
  736. dAtA[i] = 0x42
  737. i++
  738. i = encodeVarintObjects(dAtA, i, uint64(m.Certificate.Size()))
  739. n10, err := m.Certificate.MarshalTo(dAtA[i:])
  740. if err != nil {
  741. return 0, err
  742. }
  743. i += n10
  744. if m.Role != 0 {
  745. dAtA[i] = 0x48
  746. i++
  747. i = encodeVarintObjects(dAtA, i, uint64(m.Role))
  748. }
  749. return i, nil
  750. }
  751. func (m *Service) Marshal() (dAtA []byte, err error) {
  752. size := m.Size()
  753. dAtA = make([]byte, size)
  754. n, err := m.MarshalTo(dAtA)
  755. if err != nil {
  756. return nil, err
  757. }
  758. return dAtA[:n], nil
  759. }
  760. func (m *Service) MarshalTo(dAtA []byte) (int, error) {
  761. var i int
  762. _ = i
  763. var l int
  764. _ = l
  765. if len(m.ID) > 0 {
  766. dAtA[i] = 0xa
  767. i++
  768. i = encodeVarintObjects(dAtA, i, uint64(len(m.ID)))
  769. i += copy(dAtA[i:], m.ID)
  770. }
  771. dAtA[i] = 0x12
  772. i++
  773. i = encodeVarintObjects(dAtA, i, uint64(m.Meta.Size()))
  774. n11, err := m.Meta.MarshalTo(dAtA[i:])
  775. if err != nil {
  776. return 0, err
  777. }
  778. i += n11
  779. dAtA[i] = 0x1a
  780. i++
  781. i = encodeVarintObjects(dAtA, i, uint64(m.Spec.Size()))
  782. n12, err := m.Spec.MarshalTo(dAtA[i:])
  783. if err != nil {
  784. return 0, err
  785. }
  786. i += n12
  787. if m.Endpoint != nil {
  788. dAtA[i] = 0x22
  789. i++
  790. i = encodeVarintObjects(dAtA, i, uint64(m.Endpoint.Size()))
  791. n13, err := m.Endpoint.MarshalTo(dAtA[i:])
  792. if err != nil {
  793. return 0, err
  794. }
  795. i += n13
  796. }
  797. if m.UpdateStatus != nil {
  798. dAtA[i] = 0x2a
  799. i++
  800. i = encodeVarintObjects(dAtA, i, uint64(m.UpdateStatus.Size()))
  801. n14, err := m.UpdateStatus.MarshalTo(dAtA[i:])
  802. if err != nil {
  803. return 0, err
  804. }
  805. i += n14
  806. }
  807. if m.PreviousSpec != nil {
  808. dAtA[i] = 0x32
  809. i++
  810. i = encodeVarintObjects(dAtA, i, uint64(m.PreviousSpec.Size()))
  811. n15, err := m.PreviousSpec.MarshalTo(dAtA[i:])
  812. if err != nil {
  813. return 0, err
  814. }
  815. i += n15
  816. }
  817. if m.SpecVersion != nil {
  818. dAtA[i] = 0x52
  819. i++
  820. i = encodeVarintObjects(dAtA, i, uint64(m.SpecVersion.Size()))
  821. n16, err := m.SpecVersion.MarshalTo(dAtA[i:])
  822. if err != nil {
  823. return 0, err
  824. }
  825. i += n16
  826. }
  827. if m.PreviousSpecVersion != nil {
  828. dAtA[i] = 0x5a
  829. i++
  830. i = encodeVarintObjects(dAtA, i, uint64(m.PreviousSpecVersion.Size()))
  831. n17, err := m.PreviousSpecVersion.MarshalTo(dAtA[i:])
  832. if err != nil {
  833. return 0, err
  834. }
  835. i += n17
  836. }
  837. return i, nil
  838. }
  839. func (m *Endpoint) Marshal() (dAtA []byte, err error) {
  840. size := m.Size()
  841. dAtA = make([]byte, size)
  842. n, err := m.MarshalTo(dAtA)
  843. if err != nil {
  844. return nil, err
  845. }
  846. return dAtA[:n], nil
  847. }
  848. func (m *Endpoint) MarshalTo(dAtA []byte) (int, error) {
  849. var i int
  850. _ = i
  851. var l int
  852. _ = l
  853. if m.Spec != nil {
  854. dAtA[i] = 0xa
  855. i++
  856. i = encodeVarintObjects(dAtA, i, uint64(m.Spec.Size()))
  857. n18, err := m.Spec.MarshalTo(dAtA[i:])
  858. if err != nil {
  859. return 0, err
  860. }
  861. i += n18
  862. }
  863. if len(m.Ports) > 0 {
  864. for _, msg := range m.Ports {
  865. dAtA[i] = 0x12
  866. i++
  867. i = encodeVarintObjects(dAtA, i, uint64(msg.Size()))
  868. n, err := msg.MarshalTo(dAtA[i:])
  869. if err != nil {
  870. return 0, err
  871. }
  872. i += n
  873. }
  874. }
  875. if len(m.VirtualIPs) > 0 {
  876. for _, msg := range m.VirtualIPs {
  877. dAtA[i] = 0x1a
  878. i++
  879. i = encodeVarintObjects(dAtA, i, uint64(msg.Size()))
  880. n, err := msg.MarshalTo(dAtA[i:])
  881. if err != nil {
  882. return 0, err
  883. }
  884. i += n
  885. }
  886. }
  887. return i, nil
  888. }
  889. func (m *Endpoint_VirtualIP) Marshal() (dAtA []byte, err error) {
  890. size := m.Size()
  891. dAtA = make([]byte, size)
  892. n, err := m.MarshalTo(dAtA)
  893. if err != nil {
  894. return nil, err
  895. }
  896. return dAtA[:n], nil
  897. }
  898. func (m *Endpoint_VirtualIP) MarshalTo(dAtA []byte) (int, error) {
  899. var i int
  900. _ = i
  901. var l int
  902. _ = l
  903. if len(m.NetworkID) > 0 {
  904. dAtA[i] = 0xa
  905. i++
  906. i = encodeVarintObjects(dAtA, i, uint64(len(m.NetworkID)))
  907. i += copy(dAtA[i:], m.NetworkID)
  908. }
  909. if len(m.Addr) > 0 {
  910. dAtA[i] = 0x12
  911. i++
  912. i = encodeVarintObjects(dAtA, i, uint64(len(m.Addr)))
  913. i += copy(dAtA[i:], m.Addr)
  914. }
  915. return i, nil
  916. }
  917. func (m *Task) Marshal() (dAtA []byte, err error) {
  918. size := m.Size()
  919. dAtA = make([]byte, size)
  920. n, err := m.MarshalTo(dAtA)
  921. if err != nil {
  922. return nil, err
  923. }
  924. return dAtA[:n], nil
  925. }
  926. func (m *Task) MarshalTo(dAtA []byte) (int, error) {
  927. var i int
  928. _ = i
  929. var l int
  930. _ = l
  931. if len(m.ID) > 0 {
  932. dAtA[i] = 0xa
  933. i++
  934. i = encodeVarintObjects(dAtA, i, uint64(len(m.ID)))
  935. i += copy(dAtA[i:], m.ID)
  936. }
  937. dAtA[i] = 0x12
  938. i++
  939. i = encodeVarintObjects(dAtA, i, uint64(m.Meta.Size()))
  940. n19, err := m.Meta.MarshalTo(dAtA[i:])
  941. if err != nil {
  942. return 0, err
  943. }
  944. i += n19
  945. dAtA[i] = 0x1a
  946. i++
  947. i = encodeVarintObjects(dAtA, i, uint64(m.Spec.Size()))
  948. n20, err := m.Spec.MarshalTo(dAtA[i:])
  949. if err != nil {
  950. return 0, err
  951. }
  952. i += n20
  953. if len(m.ServiceID) > 0 {
  954. dAtA[i] = 0x22
  955. i++
  956. i = encodeVarintObjects(dAtA, i, uint64(len(m.ServiceID)))
  957. i += copy(dAtA[i:], m.ServiceID)
  958. }
  959. if m.Slot != 0 {
  960. dAtA[i] = 0x28
  961. i++
  962. i = encodeVarintObjects(dAtA, i, uint64(m.Slot))
  963. }
  964. if len(m.NodeID) > 0 {
  965. dAtA[i] = 0x32
  966. i++
  967. i = encodeVarintObjects(dAtA, i, uint64(len(m.NodeID)))
  968. i += copy(dAtA[i:], m.NodeID)
  969. }
  970. dAtA[i] = 0x3a
  971. i++
  972. i = encodeVarintObjects(dAtA, i, uint64(m.Annotations.Size()))
  973. n21, err := m.Annotations.MarshalTo(dAtA[i:])
  974. if err != nil {
  975. return 0, err
  976. }
  977. i += n21
  978. dAtA[i] = 0x42
  979. i++
  980. i = encodeVarintObjects(dAtA, i, uint64(m.ServiceAnnotations.Size()))
  981. n22, err := m.ServiceAnnotations.MarshalTo(dAtA[i:])
  982. if err != nil {
  983. return 0, err
  984. }
  985. i += n22
  986. dAtA[i] = 0x4a
  987. i++
  988. i = encodeVarintObjects(dAtA, i, uint64(m.Status.Size()))
  989. n23, err := m.Status.MarshalTo(dAtA[i:])
  990. if err != nil {
  991. return 0, err
  992. }
  993. i += n23
  994. if m.DesiredState != 0 {
  995. dAtA[i] = 0x50
  996. i++
  997. i = encodeVarintObjects(dAtA, i, uint64(m.DesiredState))
  998. }
  999. if len(m.Networks) > 0 {
  1000. for _, msg := range m.Networks {
  1001. dAtA[i] = 0x5a
  1002. i++
  1003. i = encodeVarintObjects(dAtA, i, uint64(msg.Size()))
  1004. n, err := msg.MarshalTo(dAtA[i:])
  1005. if err != nil {
  1006. return 0, err
  1007. }
  1008. i += n
  1009. }
  1010. }
  1011. if m.Endpoint != nil {
  1012. dAtA[i] = 0x62
  1013. i++
  1014. i = encodeVarintObjects(dAtA, i, uint64(m.Endpoint.Size()))
  1015. n24, err := m.Endpoint.MarshalTo(dAtA[i:])
  1016. if err != nil {
  1017. return 0, err
  1018. }
  1019. i += n24
  1020. }
  1021. if m.LogDriver != nil {
  1022. dAtA[i] = 0x6a
  1023. i++
  1024. i = encodeVarintObjects(dAtA, i, uint64(m.LogDriver.Size()))
  1025. n25, err := m.LogDriver.MarshalTo(dAtA[i:])
  1026. if err != nil {
  1027. return 0, err
  1028. }
  1029. i += n25
  1030. }
  1031. if m.SpecVersion != nil {
  1032. dAtA[i] = 0x72
  1033. i++
  1034. i = encodeVarintObjects(dAtA, i, uint64(m.SpecVersion.Size()))
  1035. n26, err := m.SpecVersion.MarshalTo(dAtA[i:])
  1036. if err != nil {
  1037. return 0, err
  1038. }
  1039. i += n26
  1040. }
  1041. return i, nil
  1042. }
  1043. func (m *NetworkAttachment) Marshal() (dAtA []byte, err error) {
  1044. size := m.Size()
  1045. dAtA = make([]byte, size)
  1046. n, err := m.MarshalTo(dAtA)
  1047. if err != nil {
  1048. return nil, err
  1049. }
  1050. return dAtA[:n], nil
  1051. }
  1052. func (m *NetworkAttachment) MarshalTo(dAtA []byte) (int, error) {
  1053. var i int
  1054. _ = i
  1055. var l int
  1056. _ = l
  1057. if m.Network != nil {
  1058. dAtA[i] = 0xa
  1059. i++
  1060. i = encodeVarintObjects(dAtA, i, uint64(m.Network.Size()))
  1061. n27, err := m.Network.MarshalTo(dAtA[i:])
  1062. if err != nil {
  1063. return 0, err
  1064. }
  1065. i += n27
  1066. }
  1067. if len(m.Addresses) > 0 {
  1068. for _, s := range m.Addresses {
  1069. dAtA[i] = 0x12
  1070. i++
  1071. l = len(s)
  1072. for l >= 1<<7 {
  1073. dAtA[i] = uint8(uint64(l)&0x7f | 0x80)
  1074. l >>= 7
  1075. i++
  1076. }
  1077. dAtA[i] = uint8(l)
  1078. i++
  1079. i += copy(dAtA[i:], s)
  1080. }
  1081. }
  1082. if len(m.Aliases) > 0 {
  1083. for _, s := range m.Aliases {
  1084. dAtA[i] = 0x1a
  1085. i++
  1086. l = len(s)
  1087. for l >= 1<<7 {
  1088. dAtA[i] = uint8(uint64(l)&0x7f | 0x80)
  1089. l >>= 7
  1090. i++
  1091. }
  1092. dAtA[i] = uint8(l)
  1093. i++
  1094. i += copy(dAtA[i:], s)
  1095. }
  1096. }
  1097. return i, nil
  1098. }
  1099. func (m *Network) Marshal() (dAtA []byte, err error) {
  1100. size := m.Size()
  1101. dAtA = make([]byte, size)
  1102. n, err := m.MarshalTo(dAtA)
  1103. if err != nil {
  1104. return nil, err
  1105. }
  1106. return dAtA[:n], nil
  1107. }
  1108. func (m *Network) MarshalTo(dAtA []byte) (int, error) {
  1109. var i int
  1110. _ = i
  1111. var l int
  1112. _ = l
  1113. if len(m.ID) > 0 {
  1114. dAtA[i] = 0xa
  1115. i++
  1116. i = encodeVarintObjects(dAtA, i, uint64(len(m.ID)))
  1117. i += copy(dAtA[i:], m.ID)
  1118. }
  1119. dAtA[i] = 0x12
  1120. i++
  1121. i = encodeVarintObjects(dAtA, i, uint64(m.Meta.Size()))
  1122. n28, err := m.Meta.MarshalTo(dAtA[i:])
  1123. if err != nil {
  1124. return 0, err
  1125. }
  1126. i += n28
  1127. dAtA[i] = 0x1a
  1128. i++
  1129. i = encodeVarintObjects(dAtA, i, uint64(m.Spec.Size()))
  1130. n29, err := m.Spec.MarshalTo(dAtA[i:])
  1131. if err != nil {
  1132. return 0, err
  1133. }
  1134. i += n29
  1135. if m.DriverState != nil {
  1136. dAtA[i] = 0x22
  1137. i++
  1138. i = encodeVarintObjects(dAtA, i, uint64(m.DriverState.Size()))
  1139. n30, err := m.DriverState.MarshalTo(dAtA[i:])
  1140. if err != nil {
  1141. return 0, err
  1142. }
  1143. i += n30
  1144. }
  1145. if m.IPAM != nil {
  1146. dAtA[i] = 0x2a
  1147. i++
  1148. i = encodeVarintObjects(dAtA, i, uint64(m.IPAM.Size()))
  1149. n31, err := m.IPAM.MarshalTo(dAtA[i:])
  1150. if err != nil {
  1151. return 0, err
  1152. }
  1153. i += n31
  1154. }
  1155. return i, nil
  1156. }
  1157. func (m *Cluster) Marshal() (dAtA []byte, err error) {
  1158. size := m.Size()
  1159. dAtA = make([]byte, size)
  1160. n, err := m.MarshalTo(dAtA)
  1161. if err != nil {
  1162. return nil, err
  1163. }
  1164. return dAtA[:n], nil
  1165. }
  1166. func (m *Cluster) MarshalTo(dAtA []byte) (int, error) {
  1167. var i int
  1168. _ = i
  1169. var l int
  1170. _ = l
  1171. if len(m.ID) > 0 {
  1172. dAtA[i] = 0xa
  1173. i++
  1174. i = encodeVarintObjects(dAtA, i, uint64(len(m.ID)))
  1175. i += copy(dAtA[i:], m.ID)
  1176. }
  1177. dAtA[i] = 0x12
  1178. i++
  1179. i = encodeVarintObjects(dAtA, i, uint64(m.Meta.Size()))
  1180. n32, err := m.Meta.MarshalTo(dAtA[i:])
  1181. if err != nil {
  1182. return 0, err
  1183. }
  1184. i += n32
  1185. dAtA[i] = 0x1a
  1186. i++
  1187. i = encodeVarintObjects(dAtA, i, uint64(m.Spec.Size()))
  1188. n33, err := m.Spec.MarshalTo(dAtA[i:])
  1189. if err != nil {
  1190. return 0, err
  1191. }
  1192. i += n33
  1193. dAtA[i] = 0x22
  1194. i++
  1195. i = encodeVarintObjects(dAtA, i, uint64(m.RootCA.Size()))
  1196. n34, err := m.RootCA.MarshalTo(dAtA[i:])
  1197. if err != nil {
  1198. return 0, err
  1199. }
  1200. i += n34
  1201. if len(m.NetworkBootstrapKeys) > 0 {
  1202. for _, msg := range m.NetworkBootstrapKeys {
  1203. dAtA[i] = 0x2a
  1204. i++
  1205. i = encodeVarintObjects(dAtA, i, uint64(msg.Size()))
  1206. n, err := msg.MarshalTo(dAtA[i:])
  1207. if err != nil {
  1208. return 0, err
  1209. }
  1210. i += n
  1211. }
  1212. }
  1213. if m.EncryptionKeyLamportClock != 0 {
  1214. dAtA[i] = 0x30
  1215. i++
  1216. i = encodeVarintObjects(dAtA, i, uint64(m.EncryptionKeyLamportClock))
  1217. }
  1218. if len(m.BlacklistedCertificates) > 0 {
  1219. for k, _ := range m.BlacklistedCertificates {
  1220. dAtA[i] = 0x42
  1221. i++
  1222. v := m.BlacklistedCertificates[k]
  1223. msgSize := 0
  1224. if v != nil {
  1225. msgSize = v.Size()
  1226. msgSize += 1 + sovObjects(uint64(msgSize))
  1227. }
  1228. mapSize := 1 + len(k) + sovObjects(uint64(len(k))) + msgSize
  1229. i = encodeVarintObjects(dAtA, i, uint64(mapSize))
  1230. dAtA[i] = 0xa
  1231. i++
  1232. i = encodeVarintObjects(dAtA, i, uint64(len(k)))
  1233. i += copy(dAtA[i:], k)
  1234. if v != nil {
  1235. dAtA[i] = 0x12
  1236. i++
  1237. i = encodeVarintObjects(dAtA, i, uint64(v.Size()))
  1238. n35, err := v.MarshalTo(dAtA[i:])
  1239. if err != nil {
  1240. return 0, err
  1241. }
  1242. i += n35
  1243. }
  1244. }
  1245. }
  1246. if len(m.UnlockKeys) > 0 {
  1247. for _, msg := range m.UnlockKeys {
  1248. dAtA[i] = 0x4a
  1249. i++
  1250. i = encodeVarintObjects(dAtA, i, uint64(msg.Size()))
  1251. n, err := msg.MarshalTo(dAtA[i:])
  1252. if err != nil {
  1253. return 0, err
  1254. }
  1255. i += n
  1256. }
  1257. }
  1258. return i, nil
  1259. }
  1260. func (m *Secret) Marshal() (dAtA []byte, err error) {
  1261. size := m.Size()
  1262. dAtA = make([]byte, size)
  1263. n, err := m.MarshalTo(dAtA)
  1264. if err != nil {
  1265. return nil, err
  1266. }
  1267. return dAtA[:n], nil
  1268. }
  1269. func (m *Secret) MarshalTo(dAtA []byte) (int, error) {
  1270. var i int
  1271. _ = i
  1272. var l int
  1273. _ = l
  1274. if len(m.ID) > 0 {
  1275. dAtA[i] = 0xa
  1276. i++
  1277. i = encodeVarintObjects(dAtA, i, uint64(len(m.ID)))
  1278. i += copy(dAtA[i:], m.ID)
  1279. }
  1280. dAtA[i] = 0x12
  1281. i++
  1282. i = encodeVarintObjects(dAtA, i, uint64(m.Meta.Size()))
  1283. n36, err := m.Meta.MarshalTo(dAtA[i:])
  1284. if err != nil {
  1285. return 0, err
  1286. }
  1287. i += n36
  1288. dAtA[i] = 0x1a
  1289. i++
  1290. i = encodeVarintObjects(dAtA, i, uint64(m.Spec.Size()))
  1291. n37, err := m.Spec.MarshalTo(dAtA[i:])
  1292. if err != nil {
  1293. return 0, err
  1294. }
  1295. i += n37
  1296. if m.Internal {
  1297. dAtA[i] = 0x20
  1298. i++
  1299. if m.Internal {
  1300. dAtA[i] = 1
  1301. } else {
  1302. dAtA[i] = 0
  1303. }
  1304. i++
  1305. }
  1306. return i, nil
  1307. }
  1308. func (m *Config) Marshal() (dAtA []byte, err error) {
  1309. size := m.Size()
  1310. dAtA = make([]byte, size)
  1311. n, err := m.MarshalTo(dAtA)
  1312. if err != nil {
  1313. return nil, err
  1314. }
  1315. return dAtA[:n], nil
  1316. }
  1317. func (m *Config) MarshalTo(dAtA []byte) (int, error) {
  1318. var i int
  1319. _ = i
  1320. var l int
  1321. _ = l
  1322. if len(m.ID) > 0 {
  1323. dAtA[i] = 0xa
  1324. i++
  1325. i = encodeVarintObjects(dAtA, i, uint64(len(m.ID)))
  1326. i += copy(dAtA[i:], m.ID)
  1327. }
  1328. dAtA[i] = 0x12
  1329. i++
  1330. i = encodeVarintObjects(dAtA, i, uint64(m.Meta.Size()))
  1331. n38, err := m.Meta.MarshalTo(dAtA[i:])
  1332. if err != nil {
  1333. return 0, err
  1334. }
  1335. i += n38
  1336. dAtA[i] = 0x1a
  1337. i++
  1338. i = encodeVarintObjects(dAtA, i, uint64(m.Spec.Size()))
  1339. n39, err := m.Spec.MarshalTo(dAtA[i:])
  1340. if err != nil {
  1341. return 0, err
  1342. }
  1343. i += n39
  1344. return i, nil
  1345. }
  1346. func (m *Resource) Marshal() (dAtA []byte, err error) {
  1347. size := m.Size()
  1348. dAtA = make([]byte, size)
  1349. n, err := m.MarshalTo(dAtA)
  1350. if err != nil {
  1351. return nil, err
  1352. }
  1353. return dAtA[:n], nil
  1354. }
  1355. func (m *Resource) MarshalTo(dAtA []byte) (int, error) {
  1356. var i int
  1357. _ = i
  1358. var l int
  1359. _ = l
  1360. if len(m.ID) > 0 {
  1361. dAtA[i] = 0xa
  1362. i++
  1363. i = encodeVarintObjects(dAtA, i, uint64(len(m.ID)))
  1364. i += copy(dAtA[i:], m.ID)
  1365. }
  1366. dAtA[i] = 0x12
  1367. i++
  1368. i = encodeVarintObjects(dAtA, i, uint64(m.Meta.Size()))
  1369. n40, err := m.Meta.MarshalTo(dAtA[i:])
  1370. if err != nil {
  1371. return 0, err
  1372. }
  1373. i += n40
  1374. dAtA[i] = 0x1a
  1375. i++
  1376. i = encodeVarintObjects(dAtA, i, uint64(m.Annotations.Size()))
  1377. n41, err := m.Annotations.MarshalTo(dAtA[i:])
  1378. if err != nil {
  1379. return 0, err
  1380. }
  1381. i += n41
  1382. if len(m.Kind) > 0 {
  1383. dAtA[i] = 0x22
  1384. i++
  1385. i = encodeVarintObjects(dAtA, i, uint64(len(m.Kind)))
  1386. i += copy(dAtA[i:], m.Kind)
  1387. }
  1388. if m.Payload != nil {
  1389. dAtA[i] = 0x2a
  1390. i++
  1391. i = encodeVarintObjects(dAtA, i, uint64(m.Payload.Size()))
  1392. n42, err := m.Payload.MarshalTo(dAtA[i:])
  1393. if err != nil {
  1394. return 0, err
  1395. }
  1396. i += n42
  1397. }
  1398. return i, nil
  1399. }
  1400. func (m *Extension) Marshal() (dAtA []byte, err error) {
  1401. size := m.Size()
  1402. dAtA = make([]byte, size)
  1403. n, err := m.MarshalTo(dAtA)
  1404. if err != nil {
  1405. return nil, err
  1406. }
  1407. return dAtA[:n], nil
  1408. }
  1409. func (m *Extension) MarshalTo(dAtA []byte) (int, error) {
  1410. var i int
  1411. _ = i
  1412. var l int
  1413. _ = l
  1414. if len(m.ID) > 0 {
  1415. dAtA[i] = 0xa
  1416. i++
  1417. i = encodeVarintObjects(dAtA, i, uint64(len(m.ID)))
  1418. i += copy(dAtA[i:], m.ID)
  1419. }
  1420. dAtA[i] = 0x12
  1421. i++
  1422. i = encodeVarintObjects(dAtA, i, uint64(m.Meta.Size()))
  1423. n43, err := m.Meta.MarshalTo(dAtA[i:])
  1424. if err != nil {
  1425. return 0, err
  1426. }
  1427. i += n43
  1428. dAtA[i] = 0x1a
  1429. i++
  1430. i = encodeVarintObjects(dAtA, i, uint64(m.Annotations.Size()))
  1431. n44, err := m.Annotations.MarshalTo(dAtA[i:])
  1432. if err != nil {
  1433. return 0, err
  1434. }
  1435. i += n44
  1436. if len(m.Description) > 0 {
  1437. dAtA[i] = 0x22
  1438. i++
  1439. i = encodeVarintObjects(dAtA, i, uint64(len(m.Description)))
  1440. i += copy(dAtA[i:], m.Description)
  1441. }
  1442. return i, nil
  1443. }
  1444. func encodeFixed64Objects(dAtA []byte, offset int, v uint64) int {
  1445. dAtA[offset] = uint8(v)
  1446. dAtA[offset+1] = uint8(v >> 8)
  1447. dAtA[offset+2] = uint8(v >> 16)
  1448. dAtA[offset+3] = uint8(v >> 24)
  1449. dAtA[offset+4] = uint8(v >> 32)
  1450. dAtA[offset+5] = uint8(v >> 40)
  1451. dAtA[offset+6] = uint8(v >> 48)
  1452. dAtA[offset+7] = uint8(v >> 56)
  1453. return offset + 8
  1454. }
  1455. func encodeFixed32Objects(dAtA []byte, offset int, v uint32) int {
  1456. dAtA[offset] = uint8(v)
  1457. dAtA[offset+1] = uint8(v >> 8)
  1458. dAtA[offset+2] = uint8(v >> 16)
  1459. dAtA[offset+3] = uint8(v >> 24)
  1460. return offset + 4
  1461. }
  1462. func encodeVarintObjects(dAtA []byte, offset int, v uint64) int {
  1463. for v >= 1<<7 {
  1464. dAtA[offset] = uint8(v&0x7f | 0x80)
  1465. v >>= 7
  1466. offset++
  1467. }
  1468. dAtA[offset] = uint8(v)
  1469. return offset + 1
  1470. }
  1471. func (m *Meta) Size() (n int) {
  1472. var l int
  1473. _ = l
  1474. l = m.Version.Size()
  1475. n += 1 + l + sovObjects(uint64(l))
  1476. if m.CreatedAt != nil {
  1477. l = m.CreatedAt.Size()
  1478. n += 1 + l + sovObjects(uint64(l))
  1479. }
  1480. if m.UpdatedAt != nil {
  1481. l = m.UpdatedAt.Size()
  1482. n += 1 + l + sovObjects(uint64(l))
  1483. }
  1484. return n
  1485. }
  1486. func (m *Node) Size() (n int) {
  1487. var l int
  1488. _ = l
  1489. l = len(m.ID)
  1490. if l > 0 {
  1491. n += 1 + l + sovObjects(uint64(l))
  1492. }
  1493. l = m.Meta.Size()
  1494. n += 1 + l + sovObjects(uint64(l))
  1495. l = m.Spec.Size()
  1496. n += 1 + l + sovObjects(uint64(l))
  1497. if m.Description != nil {
  1498. l = m.Description.Size()
  1499. n += 1 + l + sovObjects(uint64(l))
  1500. }
  1501. l = m.Status.Size()
  1502. n += 1 + l + sovObjects(uint64(l))
  1503. if m.ManagerStatus != nil {
  1504. l = m.ManagerStatus.Size()
  1505. n += 1 + l + sovObjects(uint64(l))
  1506. }
  1507. if m.Attachment != nil {
  1508. l = m.Attachment.Size()
  1509. n += 1 + l + sovObjects(uint64(l))
  1510. }
  1511. l = m.Certificate.Size()
  1512. n += 1 + l + sovObjects(uint64(l))
  1513. if m.Role != 0 {
  1514. n += 1 + sovObjects(uint64(m.Role))
  1515. }
  1516. return n
  1517. }
  1518. func (m *Service) Size() (n int) {
  1519. var l int
  1520. _ = l
  1521. l = len(m.ID)
  1522. if l > 0 {
  1523. n += 1 + l + sovObjects(uint64(l))
  1524. }
  1525. l = m.Meta.Size()
  1526. n += 1 + l + sovObjects(uint64(l))
  1527. l = m.Spec.Size()
  1528. n += 1 + l + sovObjects(uint64(l))
  1529. if m.Endpoint != nil {
  1530. l = m.Endpoint.Size()
  1531. n += 1 + l + sovObjects(uint64(l))
  1532. }
  1533. if m.UpdateStatus != nil {
  1534. l = m.UpdateStatus.Size()
  1535. n += 1 + l + sovObjects(uint64(l))
  1536. }
  1537. if m.PreviousSpec != nil {
  1538. l = m.PreviousSpec.Size()
  1539. n += 1 + l + sovObjects(uint64(l))
  1540. }
  1541. if m.SpecVersion != nil {
  1542. l = m.SpecVersion.Size()
  1543. n += 1 + l + sovObjects(uint64(l))
  1544. }
  1545. if m.PreviousSpecVersion != nil {
  1546. l = m.PreviousSpecVersion.Size()
  1547. n += 1 + l + sovObjects(uint64(l))
  1548. }
  1549. return n
  1550. }
  1551. func (m *Endpoint) Size() (n int) {
  1552. var l int
  1553. _ = l
  1554. if m.Spec != nil {
  1555. l = m.Spec.Size()
  1556. n += 1 + l + sovObjects(uint64(l))
  1557. }
  1558. if len(m.Ports) > 0 {
  1559. for _, e := range m.Ports {
  1560. l = e.Size()
  1561. n += 1 + l + sovObjects(uint64(l))
  1562. }
  1563. }
  1564. if len(m.VirtualIPs) > 0 {
  1565. for _, e := range m.VirtualIPs {
  1566. l = e.Size()
  1567. n += 1 + l + sovObjects(uint64(l))
  1568. }
  1569. }
  1570. return n
  1571. }
  1572. func (m *Endpoint_VirtualIP) Size() (n int) {
  1573. var l int
  1574. _ = l
  1575. l = len(m.NetworkID)
  1576. if l > 0 {
  1577. n += 1 + l + sovObjects(uint64(l))
  1578. }
  1579. l = len(m.Addr)
  1580. if l > 0 {
  1581. n += 1 + l + sovObjects(uint64(l))
  1582. }
  1583. return n
  1584. }
  1585. func (m *Task) Size() (n int) {
  1586. var l int
  1587. _ = l
  1588. l = len(m.ID)
  1589. if l > 0 {
  1590. n += 1 + l + sovObjects(uint64(l))
  1591. }
  1592. l = m.Meta.Size()
  1593. n += 1 + l + sovObjects(uint64(l))
  1594. l = m.Spec.Size()
  1595. n += 1 + l + sovObjects(uint64(l))
  1596. l = len(m.ServiceID)
  1597. if l > 0 {
  1598. n += 1 + l + sovObjects(uint64(l))
  1599. }
  1600. if m.Slot != 0 {
  1601. n += 1 + sovObjects(uint64(m.Slot))
  1602. }
  1603. l = len(m.NodeID)
  1604. if l > 0 {
  1605. n += 1 + l + sovObjects(uint64(l))
  1606. }
  1607. l = m.Annotations.Size()
  1608. n += 1 + l + sovObjects(uint64(l))
  1609. l = m.ServiceAnnotations.Size()
  1610. n += 1 + l + sovObjects(uint64(l))
  1611. l = m.Status.Size()
  1612. n += 1 + l + sovObjects(uint64(l))
  1613. if m.DesiredState != 0 {
  1614. n += 1 + sovObjects(uint64(m.DesiredState))
  1615. }
  1616. if len(m.Networks) > 0 {
  1617. for _, e := range m.Networks {
  1618. l = e.Size()
  1619. n += 1 + l + sovObjects(uint64(l))
  1620. }
  1621. }
  1622. if m.Endpoint != nil {
  1623. l = m.Endpoint.Size()
  1624. n += 1 + l + sovObjects(uint64(l))
  1625. }
  1626. if m.LogDriver != nil {
  1627. l = m.LogDriver.Size()
  1628. n += 1 + l + sovObjects(uint64(l))
  1629. }
  1630. if m.SpecVersion != nil {
  1631. l = m.SpecVersion.Size()
  1632. n += 1 + l + sovObjects(uint64(l))
  1633. }
  1634. return n
  1635. }
  1636. func (m *NetworkAttachment) Size() (n int) {
  1637. var l int
  1638. _ = l
  1639. if m.Network != nil {
  1640. l = m.Network.Size()
  1641. n += 1 + l + sovObjects(uint64(l))
  1642. }
  1643. if len(m.Addresses) > 0 {
  1644. for _, s := range m.Addresses {
  1645. l = len(s)
  1646. n += 1 + l + sovObjects(uint64(l))
  1647. }
  1648. }
  1649. if len(m.Aliases) > 0 {
  1650. for _, s := range m.Aliases {
  1651. l = len(s)
  1652. n += 1 + l + sovObjects(uint64(l))
  1653. }
  1654. }
  1655. return n
  1656. }
  1657. func (m *Network) Size() (n int) {
  1658. var l int
  1659. _ = l
  1660. l = len(m.ID)
  1661. if l > 0 {
  1662. n += 1 + l + sovObjects(uint64(l))
  1663. }
  1664. l = m.Meta.Size()
  1665. n += 1 + l + sovObjects(uint64(l))
  1666. l = m.Spec.Size()
  1667. n += 1 + l + sovObjects(uint64(l))
  1668. if m.DriverState != nil {
  1669. l = m.DriverState.Size()
  1670. n += 1 + l + sovObjects(uint64(l))
  1671. }
  1672. if m.IPAM != nil {
  1673. l = m.IPAM.Size()
  1674. n += 1 + l + sovObjects(uint64(l))
  1675. }
  1676. return n
  1677. }
  1678. func (m *Cluster) Size() (n int) {
  1679. var l int
  1680. _ = l
  1681. l = len(m.ID)
  1682. if l > 0 {
  1683. n += 1 + l + sovObjects(uint64(l))
  1684. }
  1685. l = m.Meta.Size()
  1686. n += 1 + l + sovObjects(uint64(l))
  1687. l = m.Spec.Size()
  1688. n += 1 + l + sovObjects(uint64(l))
  1689. l = m.RootCA.Size()
  1690. n += 1 + l + sovObjects(uint64(l))
  1691. if len(m.NetworkBootstrapKeys) > 0 {
  1692. for _, e := range m.NetworkBootstrapKeys {
  1693. l = e.Size()
  1694. n += 1 + l + sovObjects(uint64(l))
  1695. }
  1696. }
  1697. if m.EncryptionKeyLamportClock != 0 {
  1698. n += 1 + sovObjects(uint64(m.EncryptionKeyLamportClock))
  1699. }
  1700. if len(m.BlacklistedCertificates) > 0 {
  1701. for k, v := range m.BlacklistedCertificates {
  1702. _ = k
  1703. _ = v
  1704. l = 0
  1705. if v != nil {
  1706. l = v.Size()
  1707. l += 1 + sovObjects(uint64(l))
  1708. }
  1709. mapEntrySize := 1 + len(k) + sovObjects(uint64(len(k))) + l
  1710. n += mapEntrySize + 1 + sovObjects(uint64(mapEntrySize))
  1711. }
  1712. }
  1713. if len(m.UnlockKeys) > 0 {
  1714. for _, e := range m.UnlockKeys {
  1715. l = e.Size()
  1716. n += 1 + l + sovObjects(uint64(l))
  1717. }
  1718. }
  1719. return n
  1720. }
  1721. func (m *Secret) Size() (n int) {
  1722. var l int
  1723. _ = l
  1724. l = len(m.ID)
  1725. if l > 0 {
  1726. n += 1 + l + sovObjects(uint64(l))
  1727. }
  1728. l = m.Meta.Size()
  1729. n += 1 + l + sovObjects(uint64(l))
  1730. l = m.Spec.Size()
  1731. n += 1 + l + sovObjects(uint64(l))
  1732. if m.Internal {
  1733. n += 2
  1734. }
  1735. return n
  1736. }
  1737. func (m *Config) Size() (n int) {
  1738. var l int
  1739. _ = l
  1740. l = len(m.ID)
  1741. if l > 0 {
  1742. n += 1 + l + sovObjects(uint64(l))
  1743. }
  1744. l = m.Meta.Size()
  1745. n += 1 + l + sovObjects(uint64(l))
  1746. l = m.Spec.Size()
  1747. n += 1 + l + sovObjects(uint64(l))
  1748. return n
  1749. }
  1750. func (m *Resource) Size() (n int) {
  1751. var l int
  1752. _ = l
  1753. l = len(m.ID)
  1754. if l > 0 {
  1755. n += 1 + l + sovObjects(uint64(l))
  1756. }
  1757. l = m.Meta.Size()
  1758. n += 1 + l + sovObjects(uint64(l))
  1759. l = m.Annotations.Size()
  1760. n += 1 + l + sovObjects(uint64(l))
  1761. l = len(m.Kind)
  1762. if l > 0 {
  1763. n += 1 + l + sovObjects(uint64(l))
  1764. }
  1765. if m.Payload != nil {
  1766. l = m.Payload.Size()
  1767. n += 1 + l + sovObjects(uint64(l))
  1768. }
  1769. return n
  1770. }
  1771. func (m *Extension) Size() (n int) {
  1772. var l int
  1773. _ = l
  1774. l = len(m.ID)
  1775. if l > 0 {
  1776. n += 1 + l + sovObjects(uint64(l))
  1777. }
  1778. l = m.Meta.Size()
  1779. n += 1 + l + sovObjects(uint64(l))
  1780. l = m.Annotations.Size()
  1781. n += 1 + l + sovObjects(uint64(l))
  1782. l = len(m.Description)
  1783. if l > 0 {
  1784. n += 1 + l + sovObjects(uint64(l))
  1785. }
  1786. return n
  1787. }
  1788. func sovObjects(x uint64) (n int) {
  1789. for {
  1790. n++
  1791. x >>= 7
  1792. if x == 0 {
  1793. break
  1794. }
  1795. }
  1796. return n
  1797. }
  1798. func sozObjects(x uint64) (n int) {
  1799. return sovObjects(uint64((x << 1) ^ uint64((int64(x) >> 63))))
  1800. }
  1801. type NodeCheckFunc func(t1, t2 *Node) bool
  1802. type EventCreateNode struct {
  1803. Node *Node
  1804. Checks []NodeCheckFunc
  1805. }
  1806. func (e EventCreateNode) Matches(apiEvent github_com_docker_go_events.Event) bool {
  1807. typedEvent, ok := apiEvent.(EventCreateNode)
  1808. if !ok {
  1809. return false
  1810. }
  1811. for _, check := range e.Checks {
  1812. if !check(e.Node, typedEvent.Node) {
  1813. return false
  1814. }
  1815. }
  1816. return true
  1817. }
  1818. type EventUpdateNode struct {
  1819. Node *Node
  1820. OldNode *Node
  1821. Checks []NodeCheckFunc
  1822. }
  1823. func (e EventUpdateNode) Matches(apiEvent github_com_docker_go_events.Event) bool {
  1824. typedEvent, ok := apiEvent.(EventUpdateNode)
  1825. if !ok {
  1826. return false
  1827. }
  1828. for _, check := range e.Checks {
  1829. if !check(e.Node, typedEvent.Node) {
  1830. return false
  1831. }
  1832. }
  1833. return true
  1834. }
  1835. type EventDeleteNode struct {
  1836. Node *Node
  1837. Checks []NodeCheckFunc
  1838. }
  1839. func (e EventDeleteNode) Matches(apiEvent github_com_docker_go_events.Event) bool {
  1840. typedEvent, ok := apiEvent.(EventDeleteNode)
  1841. if !ok {
  1842. return false
  1843. }
  1844. for _, check := range e.Checks {
  1845. if !check(e.Node, typedEvent.Node) {
  1846. return false
  1847. }
  1848. }
  1849. return true
  1850. }
  1851. func (m *Node) CopyStoreObject() StoreObject {
  1852. return m.Copy()
  1853. }
  1854. func (m *Node) GetMeta() Meta {
  1855. return m.Meta
  1856. }
  1857. func (m *Node) SetMeta(meta Meta) {
  1858. m.Meta = meta
  1859. }
  1860. func (m *Node) GetID() string {
  1861. return m.ID
  1862. }
  1863. func (m *Node) EventCreate() Event {
  1864. return EventCreateNode{Node: m}
  1865. }
  1866. func (m *Node) EventUpdate(oldObject StoreObject) Event {
  1867. if oldObject != nil {
  1868. return EventUpdateNode{Node: m, OldNode: oldObject.(*Node)}
  1869. } else {
  1870. return EventUpdateNode{Node: m}
  1871. }
  1872. }
  1873. func (m *Node) EventDelete() Event {
  1874. return EventDeleteNode{Node: m}
  1875. }
  1876. func NodeCheckID(v1, v2 *Node) bool {
  1877. return v1.ID == v2.ID
  1878. }
  1879. func NodeCheckIDPrefix(v1, v2 *Node) bool {
  1880. return strings.HasPrefix(v2.ID, v1.ID)
  1881. }
  1882. func NodeCheckName(v1, v2 *Node) bool {
  1883. if v1.Description == nil || v2.Description == nil {
  1884. return false
  1885. }
  1886. return v1.Description.Hostname == v2.Description.Hostname
  1887. }
  1888. func NodeCheckNamePrefix(v1, v2 *Node) bool {
  1889. if v1.Description == nil || v2.Description == nil {
  1890. return false
  1891. }
  1892. return strings.HasPrefix(v2.Description.Hostname, v1.Description.Hostname)
  1893. }
  1894. func NodeCheckCustom(v1, v2 *Node) bool {
  1895. return checkCustom(v1.Spec.Annotations, v2.Spec.Annotations)
  1896. }
  1897. func NodeCheckCustomPrefix(v1, v2 *Node) bool {
  1898. return checkCustomPrefix(v1.Spec.Annotations, v2.Spec.Annotations)
  1899. }
  1900. func NodeCheckRole(v1, v2 *Node) bool {
  1901. return v1.Role == v2.Role
  1902. }
  1903. func NodeCheckMembership(v1, v2 *Node) bool {
  1904. return v1.Spec.Membership == v2.Spec.Membership
  1905. }
  1906. func ConvertNodeWatch(action WatchActionKind, filters []*SelectBy) ([]Event, error) {
  1907. var (
  1908. m Node
  1909. checkFuncs []NodeCheckFunc
  1910. hasRole bool
  1911. hasMembership bool
  1912. )
  1913. for _, filter := range filters {
  1914. switch v := filter.By.(type) {
  1915. case *SelectBy_ID:
  1916. if m.ID != "" {
  1917. return nil, errConflictingFilters
  1918. }
  1919. m.ID = v.ID
  1920. checkFuncs = append(checkFuncs, NodeCheckID)
  1921. case *SelectBy_IDPrefix:
  1922. if m.ID != "" {
  1923. return nil, errConflictingFilters
  1924. }
  1925. m.ID = v.IDPrefix
  1926. checkFuncs = append(checkFuncs, NodeCheckIDPrefix)
  1927. case *SelectBy_Name:
  1928. if m.Description != nil {
  1929. return nil, errConflictingFilters
  1930. }
  1931. m.Description = &NodeDescription{Hostname: v.Name}
  1932. checkFuncs = append(checkFuncs, NodeCheckName)
  1933. case *SelectBy_NamePrefix:
  1934. if m.Description != nil {
  1935. return nil, errConflictingFilters
  1936. }
  1937. m.Description = &NodeDescription{Hostname: v.NamePrefix}
  1938. checkFuncs = append(checkFuncs, NodeCheckNamePrefix)
  1939. case *SelectBy_Custom:
  1940. if len(m.Spec.Annotations.Indices) != 0 {
  1941. return nil, errConflictingFilters
  1942. }
  1943. m.Spec.Annotations.Indices = []IndexEntry{{Key: v.Custom.Index, Val: v.Custom.Value}}
  1944. checkFuncs = append(checkFuncs, NodeCheckCustom)
  1945. case *SelectBy_CustomPrefix:
  1946. if len(m.Spec.Annotations.Indices) != 0 {
  1947. return nil, errConflictingFilters
  1948. }
  1949. m.Spec.Annotations.Indices = []IndexEntry{{Key: v.CustomPrefix.Index, Val: v.CustomPrefix.Value}}
  1950. checkFuncs = append(checkFuncs, NodeCheckCustomPrefix)
  1951. case *SelectBy_Role:
  1952. if hasRole {
  1953. return nil, errConflictingFilters
  1954. }
  1955. hasRole = true
  1956. m.Role = v.Role
  1957. checkFuncs = append(checkFuncs, NodeCheckRole)
  1958. case *SelectBy_Membership:
  1959. if hasMembership {
  1960. return nil, errConflictingFilters
  1961. }
  1962. hasMembership = true
  1963. m.Spec.Membership = v.Membership
  1964. checkFuncs = append(checkFuncs, NodeCheckMembership)
  1965. }
  1966. }
  1967. var events []Event
  1968. if (action & WatchActionKindCreate) != 0 {
  1969. events = append(events, EventCreateNode{Node: &m, Checks: checkFuncs})
  1970. }
  1971. if (action & WatchActionKindUpdate) != 0 {
  1972. events = append(events, EventUpdateNode{Node: &m, Checks: checkFuncs})
  1973. }
  1974. if (action & WatchActionKindRemove) != 0 {
  1975. events = append(events, EventDeleteNode{Node: &m, Checks: checkFuncs})
  1976. }
  1977. if len(events) == 0 {
  1978. return nil, errUnrecognizedAction
  1979. }
  1980. return events, nil
  1981. }
  1982. type NodeIndexerByID struct{}
  1983. func (indexer NodeIndexerByID) FromArgs(args ...interface{}) ([]byte, error) {
  1984. return fromArgs(args...)
  1985. }
  1986. func (indexer NodeIndexerByID) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  1987. return prefixFromArgs(args...)
  1988. }
  1989. func (indexer NodeIndexerByID) FromObject(obj interface{}) (bool, []byte, error) {
  1990. m := obj.(*Node)
  1991. return true, []byte(m.ID + "\x00"), nil
  1992. }
  1993. type NodeIndexerByName struct{}
  1994. func (indexer NodeIndexerByName) FromArgs(args ...interface{}) ([]byte, error) {
  1995. return fromArgs(args...)
  1996. }
  1997. func (indexer NodeIndexerByName) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  1998. return prefixFromArgs(args...)
  1999. }
  2000. func (indexer NodeIndexerByName) FromObject(obj interface{}) (bool, []byte, error) {
  2001. m := obj.(*Node)
  2002. val := m.Spec.Annotations.Name
  2003. return true, []byte(strings.ToLower(val) + "\x00"), nil
  2004. }
  2005. type NodeCustomIndexer struct{}
  2006. func (indexer NodeCustomIndexer) FromArgs(args ...interface{}) ([]byte, error) {
  2007. return fromArgs(args...)
  2008. }
  2009. func (indexer NodeCustomIndexer) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  2010. return prefixFromArgs(args...)
  2011. }
  2012. func (indexer NodeCustomIndexer) FromObject(obj interface{}) (bool, [][]byte, error) {
  2013. m := obj.(*Node)
  2014. return customIndexer("", &m.Spec.Annotations)
  2015. }
  2016. type ServiceCheckFunc func(t1, t2 *Service) bool
  2017. type EventCreateService struct {
  2018. Service *Service
  2019. Checks []ServiceCheckFunc
  2020. }
  2021. func (e EventCreateService) Matches(apiEvent github_com_docker_go_events.Event) bool {
  2022. typedEvent, ok := apiEvent.(EventCreateService)
  2023. if !ok {
  2024. return false
  2025. }
  2026. for _, check := range e.Checks {
  2027. if !check(e.Service, typedEvent.Service) {
  2028. return false
  2029. }
  2030. }
  2031. return true
  2032. }
  2033. type EventUpdateService struct {
  2034. Service *Service
  2035. OldService *Service
  2036. Checks []ServiceCheckFunc
  2037. }
  2038. func (e EventUpdateService) Matches(apiEvent github_com_docker_go_events.Event) bool {
  2039. typedEvent, ok := apiEvent.(EventUpdateService)
  2040. if !ok {
  2041. return false
  2042. }
  2043. for _, check := range e.Checks {
  2044. if !check(e.Service, typedEvent.Service) {
  2045. return false
  2046. }
  2047. }
  2048. return true
  2049. }
  2050. type EventDeleteService struct {
  2051. Service *Service
  2052. Checks []ServiceCheckFunc
  2053. }
  2054. func (e EventDeleteService) Matches(apiEvent github_com_docker_go_events.Event) bool {
  2055. typedEvent, ok := apiEvent.(EventDeleteService)
  2056. if !ok {
  2057. return false
  2058. }
  2059. for _, check := range e.Checks {
  2060. if !check(e.Service, typedEvent.Service) {
  2061. return false
  2062. }
  2063. }
  2064. return true
  2065. }
  2066. func (m *Service) CopyStoreObject() StoreObject {
  2067. return m.Copy()
  2068. }
  2069. func (m *Service) GetMeta() Meta {
  2070. return m.Meta
  2071. }
  2072. func (m *Service) SetMeta(meta Meta) {
  2073. m.Meta = meta
  2074. }
  2075. func (m *Service) GetID() string {
  2076. return m.ID
  2077. }
  2078. func (m *Service) EventCreate() Event {
  2079. return EventCreateService{Service: m}
  2080. }
  2081. func (m *Service) EventUpdate(oldObject StoreObject) Event {
  2082. if oldObject != nil {
  2083. return EventUpdateService{Service: m, OldService: oldObject.(*Service)}
  2084. } else {
  2085. return EventUpdateService{Service: m}
  2086. }
  2087. }
  2088. func (m *Service) EventDelete() Event {
  2089. return EventDeleteService{Service: m}
  2090. }
  2091. func ServiceCheckID(v1, v2 *Service) bool {
  2092. return v1.ID == v2.ID
  2093. }
  2094. func ServiceCheckIDPrefix(v1, v2 *Service) bool {
  2095. return strings.HasPrefix(v2.ID, v1.ID)
  2096. }
  2097. func ServiceCheckName(v1, v2 *Service) bool {
  2098. return v1.Spec.Annotations.Name == v2.Spec.Annotations.Name
  2099. }
  2100. func ServiceCheckNamePrefix(v1, v2 *Service) bool {
  2101. return strings.HasPrefix(v2.Spec.Annotations.Name, v1.Spec.Annotations.Name)
  2102. }
  2103. func ServiceCheckCustom(v1, v2 *Service) bool {
  2104. return checkCustom(v1.Spec.Annotations, v2.Spec.Annotations)
  2105. }
  2106. func ServiceCheckCustomPrefix(v1, v2 *Service) bool {
  2107. return checkCustomPrefix(v1.Spec.Annotations, v2.Spec.Annotations)
  2108. }
  2109. func ConvertServiceWatch(action WatchActionKind, filters []*SelectBy) ([]Event, error) {
  2110. var (
  2111. m Service
  2112. checkFuncs []ServiceCheckFunc
  2113. )
  2114. for _, filter := range filters {
  2115. switch v := filter.By.(type) {
  2116. case *SelectBy_ID:
  2117. if m.ID != "" {
  2118. return nil, errConflictingFilters
  2119. }
  2120. m.ID = v.ID
  2121. checkFuncs = append(checkFuncs, ServiceCheckID)
  2122. case *SelectBy_IDPrefix:
  2123. if m.ID != "" {
  2124. return nil, errConflictingFilters
  2125. }
  2126. m.ID = v.IDPrefix
  2127. checkFuncs = append(checkFuncs, ServiceCheckIDPrefix)
  2128. case *SelectBy_Name:
  2129. if m.Spec.Annotations.Name != "" {
  2130. return nil, errConflictingFilters
  2131. }
  2132. m.Spec.Annotations.Name = v.Name
  2133. checkFuncs = append(checkFuncs, ServiceCheckName)
  2134. case *SelectBy_NamePrefix:
  2135. if m.Spec.Annotations.Name != "" {
  2136. return nil, errConflictingFilters
  2137. }
  2138. m.Spec.Annotations.Name = v.NamePrefix
  2139. checkFuncs = append(checkFuncs, ServiceCheckNamePrefix)
  2140. case *SelectBy_Custom:
  2141. if len(m.Spec.Annotations.Indices) != 0 {
  2142. return nil, errConflictingFilters
  2143. }
  2144. m.Spec.Annotations.Indices = []IndexEntry{{Key: v.Custom.Index, Val: v.Custom.Value}}
  2145. checkFuncs = append(checkFuncs, ServiceCheckCustom)
  2146. case *SelectBy_CustomPrefix:
  2147. if len(m.Spec.Annotations.Indices) != 0 {
  2148. return nil, errConflictingFilters
  2149. }
  2150. m.Spec.Annotations.Indices = []IndexEntry{{Key: v.CustomPrefix.Index, Val: v.CustomPrefix.Value}}
  2151. checkFuncs = append(checkFuncs, ServiceCheckCustomPrefix)
  2152. }
  2153. }
  2154. var events []Event
  2155. if (action & WatchActionKindCreate) != 0 {
  2156. events = append(events, EventCreateService{Service: &m, Checks: checkFuncs})
  2157. }
  2158. if (action & WatchActionKindUpdate) != 0 {
  2159. events = append(events, EventUpdateService{Service: &m, Checks: checkFuncs})
  2160. }
  2161. if (action & WatchActionKindRemove) != 0 {
  2162. events = append(events, EventDeleteService{Service: &m, Checks: checkFuncs})
  2163. }
  2164. if len(events) == 0 {
  2165. return nil, errUnrecognizedAction
  2166. }
  2167. return events, nil
  2168. }
  2169. type ServiceIndexerByID struct{}
  2170. func (indexer ServiceIndexerByID) FromArgs(args ...interface{}) ([]byte, error) {
  2171. return fromArgs(args...)
  2172. }
  2173. func (indexer ServiceIndexerByID) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  2174. return prefixFromArgs(args...)
  2175. }
  2176. func (indexer ServiceIndexerByID) FromObject(obj interface{}) (bool, []byte, error) {
  2177. m := obj.(*Service)
  2178. return true, []byte(m.ID + "\x00"), nil
  2179. }
  2180. type ServiceIndexerByName struct{}
  2181. func (indexer ServiceIndexerByName) FromArgs(args ...interface{}) ([]byte, error) {
  2182. return fromArgs(args...)
  2183. }
  2184. func (indexer ServiceIndexerByName) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  2185. return prefixFromArgs(args...)
  2186. }
  2187. func (indexer ServiceIndexerByName) FromObject(obj interface{}) (bool, []byte, error) {
  2188. m := obj.(*Service)
  2189. val := m.Spec.Annotations.Name
  2190. return true, []byte(strings.ToLower(val) + "\x00"), nil
  2191. }
  2192. type ServiceCustomIndexer struct{}
  2193. func (indexer ServiceCustomIndexer) FromArgs(args ...interface{}) ([]byte, error) {
  2194. return fromArgs(args...)
  2195. }
  2196. func (indexer ServiceCustomIndexer) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  2197. return prefixFromArgs(args...)
  2198. }
  2199. func (indexer ServiceCustomIndexer) FromObject(obj interface{}) (bool, [][]byte, error) {
  2200. m := obj.(*Service)
  2201. return customIndexer("", &m.Spec.Annotations)
  2202. }
  2203. type TaskCheckFunc func(t1, t2 *Task) bool
  2204. type EventCreateTask struct {
  2205. Task *Task
  2206. Checks []TaskCheckFunc
  2207. }
  2208. func (e EventCreateTask) Matches(apiEvent github_com_docker_go_events.Event) bool {
  2209. typedEvent, ok := apiEvent.(EventCreateTask)
  2210. if !ok {
  2211. return false
  2212. }
  2213. for _, check := range e.Checks {
  2214. if !check(e.Task, typedEvent.Task) {
  2215. return false
  2216. }
  2217. }
  2218. return true
  2219. }
  2220. type EventUpdateTask struct {
  2221. Task *Task
  2222. OldTask *Task
  2223. Checks []TaskCheckFunc
  2224. }
  2225. func (e EventUpdateTask) Matches(apiEvent github_com_docker_go_events.Event) bool {
  2226. typedEvent, ok := apiEvent.(EventUpdateTask)
  2227. if !ok {
  2228. return false
  2229. }
  2230. for _, check := range e.Checks {
  2231. if !check(e.Task, typedEvent.Task) {
  2232. return false
  2233. }
  2234. }
  2235. return true
  2236. }
  2237. type EventDeleteTask struct {
  2238. Task *Task
  2239. Checks []TaskCheckFunc
  2240. }
  2241. func (e EventDeleteTask) Matches(apiEvent github_com_docker_go_events.Event) bool {
  2242. typedEvent, ok := apiEvent.(EventDeleteTask)
  2243. if !ok {
  2244. return false
  2245. }
  2246. for _, check := range e.Checks {
  2247. if !check(e.Task, typedEvent.Task) {
  2248. return false
  2249. }
  2250. }
  2251. return true
  2252. }
  2253. func (m *Task) CopyStoreObject() StoreObject {
  2254. return m.Copy()
  2255. }
  2256. func (m *Task) GetMeta() Meta {
  2257. return m.Meta
  2258. }
  2259. func (m *Task) SetMeta(meta Meta) {
  2260. m.Meta = meta
  2261. }
  2262. func (m *Task) GetID() string {
  2263. return m.ID
  2264. }
  2265. func (m *Task) EventCreate() Event {
  2266. return EventCreateTask{Task: m}
  2267. }
  2268. func (m *Task) EventUpdate(oldObject StoreObject) Event {
  2269. if oldObject != nil {
  2270. return EventUpdateTask{Task: m, OldTask: oldObject.(*Task)}
  2271. } else {
  2272. return EventUpdateTask{Task: m}
  2273. }
  2274. }
  2275. func (m *Task) EventDelete() Event {
  2276. return EventDeleteTask{Task: m}
  2277. }
  2278. func TaskCheckID(v1, v2 *Task) bool {
  2279. return v1.ID == v2.ID
  2280. }
  2281. func TaskCheckIDPrefix(v1, v2 *Task) bool {
  2282. return strings.HasPrefix(v2.ID, v1.ID)
  2283. }
  2284. func TaskCheckName(v1, v2 *Task) bool {
  2285. return v1.Annotations.Name == v2.Annotations.Name
  2286. }
  2287. func TaskCheckNamePrefix(v1, v2 *Task) bool {
  2288. return strings.HasPrefix(v2.Annotations.Name, v1.Annotations.Name)
  2289. }
  2290. func TaskCheckCustom(v1, v2 *Task) bool {
  2291. return checkCustom(v1.Annotations, v2.Annotations)
  2292. }
  2293. func TaskCheckCustomPrefix(v1, v2 *Task) bool {
  2294. return checkCustomPrefix(v1.Annotations, v2.Annotations)
  2295. }
  2296. func TaskCheckNodeID(v1, v2 *Task) bool {
  2297. return v1.NodeID == v2.NodeID
  2298. }
  2299. func TaskCheckServiceID(v1, v2 *Task) bool {
  2300. return v1.ServiceID == v2.ServiceID
  2301. }
  2302. func TaskCheckSlot(v1, v2 *Task) bool {
  2303. return v1.Slot == v2.Slot
  2304. }
  2305. func TaskCheckDesiredState(v1, v2 *Task) bool {
  2306. return v1.DesiredState == v2.DesiredState
  2307. }
  2308. func ConvertTaskWatch(action WatchActionKind, filters []*SelectBy) ([]Event, error) {
  2309. var (
  2310. m Task
  2311. checkFuncs []TaskCheckFunc
  2312. hasDesiredState bool
  2313. )
  2314. for _, filter := range filters {
  2315. switch v := filter.By.(type) {
  2316. case *SelectBy_ID:
  2317. if m.ID != "" {
  2318. return nil, errConflictingFilters
  2319. }
  2320. m.ID = v.ID
  2321. checkFuncs = append(checkFuncs, TaskCheckID)
  2322. case *SelectBy_IDPrefix:
  2323. if m.ID != "" {
  2324. return nil, errConflictingFilters
  2325. }
  2326. m.ID = v.IDPrefix
  2327. checkFuncs = append(checkFuncs, TaskCheckIDPrefix)
  2328. case *SelectBy_Name:
  2329. if m.Annotations.Name != "" {
  2330. return nil, errConflictingFilters
  2331. }
  2332. m.Annotations.Name = v.Name
  2333. checkFuncs = append(checkFuncs, TaskCheckName)
  2334. case *SelectBy_NamePrefix:
  2335. if m.Annotations.Name != "" {
  2336. return nil, errConflictingFilters
  2337. }
  2338. m.Annotations.Name = v.NamePrefix
  2339. checkFuncs = append(checkFuncs, TaskCheckNamePrefix)
  2340. case *SelectBy_Custom:
  2341. if len(m.Annotations.Indices) != 0 {
  2342. return nil, errConflictingFilters
  2343. }
  2344. m.Annotations.Indices = []IndexEntry{{Key: v.Custom.Index, Val: v.Custom.Value}}
  2345. checkFuncs = append(checkFuncs, TaskCheckCustom)
  2346. case *SelectBy_CustomPrefix:
  2347. if len(m.Annotations.Indices) != 0 {
  2348. return nil, errConflictingFilters
  2349. }
  2350. m.Annotations.Indices = []IndexEntry{{Key: v.CustomPrefix.Index, Val: v.CustomPrefix.Value}}
  2351. checkFuncs = append(checkFuncs, TaskCheckCustomPrefix)
  2352. case *SelectBy_ServiceID:
  2353. if m.ServiceID != "" {
  2354. return nil, errConflictingFilters
  2355. }
  2356. m.ServiceID = v.ServiceID
  2357. checkFuncs = append(checkFuncs, TaskCheckServiceID)
  2358. case *SelectBy_NodeID:
  2359. if m.NodeID != "" {
  2360. return nil, errConflictingFilters
  2361. }
  2362. m.NodeID = v.NodeID
  2363. checkFuncs = append(checkFuncs, TaskCheckNodeID)
  2364. case *SelectBy_Slot:
  2365. if m.Slot != 0 || m.ServiceID != "" {
  2366. return nil, errConflictingFilters
  2367. }
  2368. m.ServiceID = v.Slot.ServiceID
  2369. m.Slot = v.Slot.Slot
  2370. checkFuncs = append(checkFuncs, TaskCheckNodeID, TaskCheckSlot)
  2371. case *SelectBy_DesiredState:
  2372. if hasDesiredState {
  2373. return nil, errConflictingFilters
  2374. }
  2375. hasDesiredState = true
  2376. m.DesiredState = v.DesiredState
  2377. checkFuncs = append(checkFuncs, TaskCheckDesiredState)
  2378. }
  2379. }
  2380. var events []Event
  2381. if (action & WatchActionKindCreate) != 0 {
  2382. events = append(events, EventCreateTask{Task: &m, Checks: checkFuncs})
  2383. }
  2384. if (action & WatchActionKindUpdate) != 0 {
  2385. events = append(events, EventUpdateTask{Task: &m, Checks: checkFuncs})
  2386. }
  2387. if (action & WatchActionKindRemove) != 0 {
  2388. events = append(events, EventDeleteTask{Task: &m, Checks: checkFuncs})
  2389. }
  2390. if len(events) == 0 {
  2391. return nil, errUnrecognizedAction
  2392. }
  2393. return events, nil
  2394. }
  2395. type TaskIndexerByID struct{}
  2396. func (indexer TaskIndexerByID) FromArgs(args ...interface{}) ([]byte, error) {
  2397. return fromArgs(args...)
  2398. }
  2399. func (indexer TaskIndexerByID) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  2400. return prefixFromArgs(args...)
  2401. }
  2402. func (indexer TaskIndexerByID) FromObject(obj interface{}) (bool, []byte, error) {
  2403. m := obj.(*Task)
  2404. return true, []byte(m.ID + "\x00"), nil
  2405. }
  2406. type TaskIndexerByName struct{}
  2407. func (indexer TaskIndexerByName) FromArgs(args ...interface{}) ([]byte, error) {
  2408. return fromArgs(args...)
  2409. }
  2410. func (indexer TaskIndexerByName) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  2411. return prefixFromArgs(args...)
  2412. }
  2413. func (indexer TaskIndexerByName) FromObject(obj interface{}) (bool, []byte, error) {
  2414. m := obj.(*Task)
  2415. val := m.Annotations.Name
  2416. return true, []byte(strings.ToLower(val) + "\x00"), nil
  2417. }
  2418. type TaskCustomIndexer struct{}
  2419. func (indexer TaskCustomIndexer) FromArgs(args ...interface{}) ([]byte, error) {
  2420. return fromArgs(args...)
  2421. }
  2422. func (indexer TaskCustomIndexer) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  2423. return prefixFromArgs(args...)
  2424. }
  2425. func (indexer TaskCustomIndexer) FromObject(obj interface{}) (bool, [][]byte, error) {
  2426. m := obj.(*Task)
  2427. return customIndexer("", &m.Annotations)
  2428. }
  2429. type NetworkCheckFunc func(t1, t2 *Network) bool
  2430. type EventCreateNetwork struct {
  2431. Network *Network
  2432. Checks []NetworkCheckFunc
  2433. }
  2434. func (e EventCreateNetwork) Matches(apiEvent github_com_docker_go_events.Event) bool {
  2435. typedEvent, ok := apiEvent.(EventCreateNetwork)
  2436. if !ok {
  2437. return false
  2438. }
  2439. for _, check := range e.Checks {
  2440. if !check(e.Network, typedEvent.Network) {
  2441. return false
  2442. }
  2443. }
  2444. return true
  2445. }
  2446. type EventUpdateNetwork struct {
  2447. Network *Network
  2448. OldNetwork *Network
  2449. Checks []NetworkCheckFunc
  2450. }
  2451. func (e EventUpdateNetwork) Matches(apiEvent github_com_docker_go_events.Event) bool {
  2452. typedEvent, ok := apiEvent.(EventUpdateNetwork)
  2453. if !ok {
  2454. return false
  2455. }
  2456. for _, check := range e.Checks {
  2457. if !check(e.Network, typedEvent.Network) {
  2458. return false
  2459. }
  2460. }
  2461. return true
  2462. }
  2463. type EventDeleteNetwork struct {
  2464. Network *Network
  2465. Checks []NetworkCheckFunc
  2466. }
  2467. func (e EventDeleteNetwork) Matches(apiEvent github_com_docker_go_events.Event) bool {
  2468. typedEvent, ok := apiEvent.(EventDeleteNetwork)
  2469. if !ok {
  2470. return false
  2471. }
  2472. for _, check := range e.Checks {
  2473. if !check(e.Network, typedEvent.Network) {
  2474. return false
  2475. }
  2476. }
  2477. return true
  2478. }
  2479. func (m *Network) CopyStoreObject() StoreObject {
  2480. return m.Copy()
  2481. }
  2482. func (m *Network) GetMeta() Meta {
  2483. return m.Meta
  2484. }
  2485. func (m *Network) SetMeta(meta Meta) {
  2486. m.Meta = meta
  2487. }
  2488. func (m *Network) GetID() string {
  2489. return m.ID
  2490. }
  2491. func (m *Network) EventCreate() Event {
  2492. return EventCreateNetwork{Network: m}
  2493. }
  2494. func (m *Network) EventUpdate(oldObject StoreObject) Event {
  2495. if oldObject != nil {
  2496. return EventUpdateNetwork{Network: m, OldNetwork: oldObject.(*Network)}
  2497. } else {
  2498. return EventUpdateNetwork{Network: m}
  2499. }
  2500. }
  2501. func (m *Network) EventDelete() Event {
  2502. return EventDeleteNetwork{Network: m}
  2503. }
  2504. func NetworkCheckID(v1, v2 *Network) bool {
  2505. return v1.ID == v2.ID
  2506. }
  2507. func NetworkCheckIDPrefix(v1, v2 *Network) bool {
  2508. return strings.HasPrefix(v2.ID, v1.ID)
  2509. }
  2510. func NetworkCheckName(v1, v2 *Network) bool {
  2511. return v1.Spec.Annotations.Name == v2.Spec.Annotations.Name
  2512. }
  2513. func NetworkCheckNamePrefix(v1, v2 *Network) bool {
  2514. return strings.HasPrefix(v2.Spec.Annotations.Name, v1.Spec.Annotations.Name)
  2515. }
  2516. func NetworkCheckCustom(v1, v2 *Network) bool {
  2517. return checkCustom(v1.Spec.Annotations, v2.Spec.Annotations)
  2518. }
  2519. func NetworkCheckCustomPrefix(v1, v2 *Network) bool {
  2520. return checkCustomPrefix(v1.Spec.Annotations, v2.Spec.Annotations)
  2521. }
  2522. func ConvertNetworkWatch(action WatchActionKind, filters []*SelectBy) ([]Event, error) {
  2523. var (
  2524. m Network
  2525. checkFuncs []NetworkCheckFunc
  2526. )
  2527. for _, filter := range filters {
  2528. switch v := filter.By.(type) {
  2529. case *SelectBy_ID:
  2530. if m.ID != "" {
  2531. return nil, errConflictingFilters
  2532. }
  2533. m.ID = v.ID
  2534. checkFuncs = append(checkFuncs, NetworkCheckID)
  2535. case *SelectBy_IDPrefix:
  2536. if m.ID != "" {
  2537. return nil, errConflictingFilters
  2538. }
  2539. m.ID = v.IDPrefix
  2540. checkFuncs = append(checkFuncs, NetworkCheckIDPrefix)
  2541. case *SelectBy_Name:
  2542. if m.Spec.Annotations.Name != "" {
  2543. return nil, errConflictingFilters
  2544. }
  2545. m.Spec.Annotations.Name = v.Name
  2546. checkFuncs = append(checkFuncs, NetworkCheckName)
  2547. case *SelectBy_NamePrefix:
  2548. if m.Spec.Annotations.Name != "" {
  2549. return nil, errConflictingFilters
  2550. }
  2551. m.Spec.Annotations.Name = v.NamePrefix
  2552. checkFuncs = append(checkFuncs, NetworkCheckNamePrefix)
  2553. case *SelectBy_Custom:
  2554. if len(m.Spec.Annotations.Indices) != 0 {
  2555. return nil, errConflictingFilters
  2556. }
  2557. m.Spec.Annotations.Indices = []IndexEntry{{Key: v.Custom.Index, Val: v.Custom.Value}}
  2558. checkFuncs = append(checkFuncs, NetworkCheckCustom)
  2559. case *SelectBy_CustomPrefix:
  2560. if len(m.Spec.Annotations.Indices) != 0 {
  2561. return nil, errConflictingFilters
  2562. }
  2563. m.Spec.Annotations.Indices = []IndexEntry{{Key: v.CustomPrefix.Index, Val: v.CustomPrefix.Value}}
  2564. checkFuncs = append(checkFuncs, NetworkCheckCustomPrefix)
  2565. }
  2566. }
  2567. var events []Event
  2568. if (action & WatchActionKindCreate) != 0 {
  2569. events = append(events, EventCreateNetwork{Network: &m, Checks: checkFuncs})
  2570. }
  2571. if (action & WatchActionKindUpdate) != 0 {
  2572. events = append(events, EventUpdateNetwork{Network: &m, Checks: checkFuncs})
  2573. }
  2574. if (action & WatchActionKindRemove) != 0 {
  2575. events = append(events, EventDeleteNetwork{Network: &m, Checks: checkFuncs})
  2576. }
  2577. if len(events) == 0 {
  2578. return nil, errUnrecognizedAction
  2579. }
  2580. return events, nil
  2581. }
  2582. type NetworkIndexerByID struct{}
  2583. func (indexer NetworkIndexerByID) FromArgs(args ...interface{}) ([]byte, error) {
  2584. return fromArgs(args...)
  2585. }
  2586. func (indexer NetworkIndexerByID) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  2587. return prefixFromArgs(args...)
  2588. }
  2589. func (indexer NetworkIndexerByID) FromObject(obj interface{}) (bool, []byte, error) {
  2590. m := obj.(*Network)
  2591. return true, []byte(m.ID + "\x00"), nil
  2592. }
  2593. type NetworkIndexerByName struct{}
  2594. func (indexer NetworkIndexerByName) FromArgs(args ...interface{}) ([]byte, error) {
  2595. return fromArgs(args...)
  2596. }
  2597. func (indexer NetworkIndexerByName) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  2598. return prefixFromArgs(args...)
  2599. }
  2600. func (indexer NetworkIndexerByName) FromObject(obj interface{}) (bool, []byte, error) {
  2601. m := obj.(*Network)
  2602. val := m.Spec.Annotations.Name
  2603. return true, []byte(strings.ToLower(val) + "\x00"), nil
  2604. }
  2605. type NetworkCustomIndexer struct{}
  2606. func (indexer NetworkCustomIndexer) FromArgs(args ...interface{}) ([]byte, error) {
  2607. return fromArgs(args...)
  2608. }
  2609. func (indexer NetworkCustomIndexer) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  2610. return prefixFromArgs(args...)
  2611. }
  2612. func (indexer NetworkCustomIndexer) FromObject(obj interface{}) (bool, [][]byte, error) {
  2613. m := obj.(*Network)
  2614. return customIndexer("", &m.Spec.Annotations)
  2615. }
  2616. type ClusterCheckFunc func(t1, t2 *Cluster) bool
  2617. type EventCreateCluster struct {
  2618. Cluster *Cluster
  2619. Checks []ClusterCheckFunc
  2620. }
  2621. func (e EventCreateCluster) Matches(apiEvent github_com_docker_go_events.Event) bool {
  2622. typedEvent, ok := apiEvent.(EventCreateCluster)
  2623. if !ok {
  2624. return false
  2625. }
  2626. for _, check := range e.Checks {
  2627. if !check(e.Cluster, typedEvent.Cluster) {
  2628. return false
  2629. }
  2630. }
  2631. return true
  2632. }
  2633. type EventUpdateCluster struct {
  2634. Cluster *Cluster
  2635. OldCluster *Cluster
  2636. Checks []ClusterCheckFunc
  2637. }
  2638. func (e EventUpdateCluster) Matches(apiEvent github_com_docker_go_events.Event) bool {
  2639. typedEvent, ok := apiEvent.(EventUpdateCluster)
  2640. if !ok {
  2641. return false
  2642. }
  2643. for _, check := range e.Checks {
  2644. if !check(e.Cluster, typedEvent.Cluster) {
  2645. return false
  2646. }
  2647. }
  2648. return true
  2649. }
  2650. type EventDeleteCluster struct {
  2651. Cluster *Cluster
  2652. Checks []ClusterCheckFunc
  2653. }
  2654. func (e EventDeleteCluster) Matches(apiEvent github_com_docker_go_events.Event) bool {
  2655. typedEvent, ok := apiEvent.(EventDeleteCluster)
  2656. if !ok {
  2657. return false
  2658. }
  2659. for _, check := range e.Checks {
  2660. if !check(e.Cluster, typedEvent.Cluster) {
  2661. return false
  2662. }
  2663. }
  2664. return true
  2665. }
  2666. func (m *Cluster) CopyStoreObject() StoreObject {
  2667. return m.Copy()
  2668. }
  2669. func (m *Cluster) GetMeta() Meta {
  2670. return m.Meta
  2671. }
  2672. func (m *Cluster) SetMeta(meta Meta) {
  2673. m.Meta = meta
  2674. }
  2675. func (m *Cluster) GetID() string {
  2676. return m.ID
  2677. }
  2678. func (m *Cluster) EventCreate() Event {
  2679. return EventCreateCluster{Cluster: m}
  2680. }
  2681. func (m *Cluster) EventUpdate(oldObject StoreObject) Event {
  2682. if oldObject != nil {
  2683. return EventUpdateCluster{Cluster: m, OldCluster: oldObject.(*Cluster)}
  2684. } else {
  2685. return EventUpdateCluster{Cluster: m}
  2686. }
  2687. }
  2688. func (m *Cluster) EventDelete() Event {
  2689. return EventDeleteCluster{Cluster: m}
  2690. }
  2691. func ClusterCheckID(v1, v2 *Cluster) bool {
  2692. return v1.ID == v2.ID
  2693. }
  2694. func ClusterCheckIDPrefix(v1, v2 *Cluster) bool {
  2695. return strings.HasPrefix(v2.ID, v1.ID)
  2696. }
  2697. func ClusterCheckName(v1, v2 *Cluster) bool {
  2698. return v1.Spec.Annotations.Name == v2.Spec.Annotations.Name
  2699. }
  2700. func ClusterCheckNamePrefix(v1, v2 *Cluster) bool {
  2701. return strings.HasPrefix(v2.Spec.Annotations.Name, v1.Spec.Annotations.Name)
  2702. }
  2703. func ClusterCheckCustom(v1, v2 *Cluster) bool {
  2704. return checkCustom(v1.Spec.Annotations, v2.Spec.Annotations)
  2705. }
  2706. func ClusterCheckCustomPrefix(v1, v2 *Cluster) bool {
  2707. return checkCustomPrefix(v1.Spec.Annotations, v2.Spec.Annotations)
  2708. }
  2709. func ConvertClusterWatch(action WatchActionKind, filters []*SelectBy) ([]Event, error) {
  2710. var (
  2711. m Cluster
  2712. checkFuncs []ClusterCheckFunc
  2713. )
  2714. for _, filter := range filters {
  2715. switch v := filter.By.(type) {
  2716. case *SelectBy_ID:
  2717. if m.ID != "" {
  2718. return nil, errConflictingFilters
  2719. }
  2720. m.ID = v.ID
  2721. checkFuncs = append(checkFuncs, ClusterCheckID)
  2722. case *SelectBy_IDPrefix:
  2723. if m.ID != "" {
  2724. return nil, errConflictingFilters
  2725. }
  2726. m.ID = v.IDPrefix
  2727. checkFuncs = append(checkFuncs, ClusterCheckIDPrefix)
  2728. case *SelectBy_Name:
  2729. if m.Spec.Annotations.Name != "" {
  2730. return nil, errConflictingFilters
  2731. }
  2732. m.Spec.Annotations.Name = v.Name
  2733. checkFuncs = append(checkFuncs, ClusterCheckName)
  2734. case *SelectBy_NamePrefix:
  2735. if m.Spec.Annotations.Name != "" {
  2736. return nil, errConflictingFilters
  2737. }
  2738. m.Spec.Annotations.Name = v.NamePrefix
  2739. checkFuncs = append(checkFuncs, ClusterCheckNamePrefix)
  2740. case *SelectBy_Custom:
  2741. if len(m.Spec.Annotations.Indices) != 0 {
  2742. return nil, errConflictingFilters
  2743. }
  2744. m.Spec.Annotations.Indices = []IndexEntry{{Key: v.Custom.Index, Val: v.Custom.Value}}
  2745. checkFuncs = append(checkFuncs, ClusterCheckCustom)
  2746. case *SelectBy_CustomPrefix:
  2747. if len(m.Spec.Annotations.Indices) != 0 {
  2748. return nil, errConflictingFilters
  2749. }
  2750. m.Spec.Annotations.Indices = []IndexEntry{{Key: v.CustomPrefix.Index, Val: v.CustomPrefix.Value}}
  2751. checkFuncs = append(checkFuncs, ClusterCheckCustomPrefix)
  2752. }
  2753. }
  2754. var events []Event
  2755. if (action & WatchActionKindCreate) != 0 {
  2756. events = append(events, EventCreateCluster{Cluster: &m, Checks: checkFuncs})
  2757. }
  2758. if (action & WatchActionKindUpdate) != 0 {
  2759. events = append(events, EventUpdateCluster{Cluster: &m, Checks: checkFuncs})
  2760. }
  2761. if (action & WatchActionKindRemove) != 0 {
  2762. events = append(events, EventDeleteCluster{Cluster: &m, Checks: checkFuncs})
  2763. }
  2764. if len(events) == 0 {
  2765. return nil, errUnrecognizedAction
  2766. }
  2767. return events, nil
  2768. }
  2769. type ClusterIndexerByID struct{}
  2770. func (indexer ClusterIndexerByID) FromArgs(args ...interface{}) ([]byte, error) {
  2771. return fromArgs(args...)
  2772. }
  2773. func (indexer ClusterIndexerByID) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  2774. return prefixFromArgs(args...)
  2775. }
  2776. func (indexer ClusterIndexerByID) FromObject(obj interface{}) (bool, []byte, error) {
  2777. m := obj.(*Cluster)
  2778. return true, []byte(m.ID + "\x00"), nil
  2779. }
  2780. type ClusterIndexerByName struct{}
  2781. func (indexer ClusterIndexerByName) FromArgs(args ...interface{}) ([]byte, error) {
  2782. return fromArgs(args...)
  2783. }
  2784. func (indexer ClusterIndexerByName) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  2785. return prefixFromArgs(args...)
  2786. }
  2787. func (indexer ClusterIndexerByName) FromObject(obj interface{}) (bool, []byte, error) {
  2788. m := obj.(*Cluster)
  2789. val := m.Spec.Annotations.Name
  2790. return true, []byte(strings.ToLower(val) + "\x00"), nil
  2791. }
  2792. type ClusterCustomIndexer struct{}
  2793. func (indexer ClusterCustomIndexer) FromArgs(args ...interface{}) ([]byte, error) {
  2794. return fromArgs(args...)
  2795. }
  2796. func (indexer ClusterCustomIndexer) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  2797. return prefixFromArgs(args...)
  2798. }
  2799. func (indexer ClusterCustomIndexer) FromObject(obj interface{}) (bool, [][]byte, error) {
  2800. m := obj.(*Cluster)
  2801. return customIndexer("", &m.Spec.Annotations)
  2802. }
  2803. type SecretCheckFunc func(t1, t2 *Secret) bool
  2804. type EventCreateSecret struct {
  2805. Secret *Secret
  2806. Checks []SecretCheckFunc
  2807. }
  2808. func (e EventCreateSecret) Matches(apiEvent github_com_docker_go_events.Event) bool {
  2809. typedEvent, ok := apiEvent.(EventCreateSecret)
  2810. if !ok {
  2811. return false
  2812. }
  2813. for _, check := range e.Checks {
  2814. if !check(e.Secret, typedEvent.Secret) {
  2815. return false
  2816. }
  2817. }
  2818. return true
  2819. }
  2820. type EventUpdateSecret struct {
  2821. Secret *Secret
  2822. OldSecret *Secret
  2823. Checks []SecretCheckFunc
  2824. }
  2825. func (e EventUpdateSecret) Matches(apiEvent github_com_docker_go_events.Event) bool {
  2826. typedEvent, ok := apiEvent.(EventUpdateSecret)
  2827. if !ok {
  2828. return false
  2829. }
  2830. for _, check := range e.Checks {
  2831. if !check(e.Secret, typedEvent.Secret) {
  2832. return false
  2833. }
  2834. }
  2835. return true
  2836. }
  2837. type EventDeleteSecret struct {
  2838. Secret *Secret
  2839. Checks []SecretCheckFunc
  2840. }
  2841. func (e EventDeleteSecret) Matches(apiEvent github_com_docker_go_events.Event) bool {
  2842. typedEvent, ok := apiEvent.(EventDeleteSecret)
  2843. if !ok {
  2844. return false
  2845. }
  2846. for _, check := range e.Checks {
  2847. if !check(e.Secret, typedEvent.Secret) {
  2848. return false
  2849. }
  2850. }
  2851. return true
  2852. }
  2853. func (m *Secret) CopyStoreObject() StoreObject {
  2854. return m.Copy()
  2855. }
  2856. func (m *Secret) GetMeta() Meta {
  2857. return m.Meta
  2858. }
  2859. func (m *Secret) SetMeta(meta Meta) {
  2860. m.Meta = meta
  2861. }
  2862. func (m *Secret) GetID() string {
  2863. return m.ID
  2864. }
  2865. func (m *Secret) EventCreate() Event {
  2866. return EventCreateSecret{Secret: m}
  2867. }
  2868. func (m *Secret) EventUpdate(oldObject StoreObject) Event {
  2869. if oldObject != nil {
  2870. return EventUpdateSecret{Secret: m, OldSecret: oldObject.(*Secret)}
  2871. } else {
  2872. return EventUpdateSecret{Secret: m}
  2873. }
  2874. }
  2875. func (m *Secret) EventDelete() Event {
  2876. return EventDeleteSecret{Secret: m}
  2877. }
  2878. func SecretCheckID(v1, v2 *Secret) bool {
  2879. return v1.ID == v2.ID
  2880. }
  2881. func SecretCheckIDPrefix(v1, v2 *Secret) bool {
  2882. return strings.HasPrefix(v2.ID, v1.ID)
  2883. }
  2884. func SecretCheckName(v1, v2 *Secret) bool {
  2885. return v1.Spec.Annotations.Name == v2.Spec.Annotations.Name
  2886. }
  2887. func SecretCheckNamePrefix(v1, v2 *Secret) bool {
  2888. return strings.HasPrefix(v2.Spec.Annotations.Name, v1.Spec.Annotations.Name)
  2889. }
  2890. func SecretCheckCustom(v1, v2 *Secret) bool {
  2891. return checkCustom(v1.Spec.Annotations, v2.Spec.Annotations)
  2892. }
  2893. func SecretCheckCustomPrefix(v1, v2 *Secret) bool {
  2894. return checkCustomPrefix(v1.Spec.Annotations, v2.Spec.Annotations)
  2895. }
  2896. func ConvertSecretWatch(action WatchActionKind, filters []*SelectBy) ([]Event, error) {
  2897. var (
  2898. m Secret
  2899. checkFuncs []SecretCheckFunc
  2900. )
  2901. for _, filter := range filters {
  2902. switch v := filter.By.(type) {
  2903. case *SelectBy_ID:
  2904. if m.ID != "" {
  2905. return nil, errConflictingFilters
  2906. }
  2907. m.ID = v.ID
  2908. checkFuncs = append(checkFuncs, SecretCheckID)
  2909. case *SelectBy_IDPrefix:
  2910. if m.ID != "" {
  2911. return nil, errConflictingFilters
  2912. }
  2913. m.ID = v.IDPrefix
  2914. checkFuncs = append(checkFuncs, SecretCheckIDPrefix)
  2915. case *SelectBy_Name:
  2916. if m.Spec.Annotations.Name != "" {
  2917. return nil, errConflictingFilters
  2918. }
  2919. m.Spec.Annotations.Name = v.Name
  2920. checkFuncs = append(checkFuncs, SecretCheckName)
  2921. case *SelectBy_NamePrefix:
  2922. if m.Spec.Annotations.Name != "" {
  2923. return nil, errConflictingFilters
  2924. }
  2925. m.Spec.Annotations.Name = v.NamePrefix
  2926. checkFuncs = append(checkFuncs, SecretCheckNamePrefix)
  2927. case *SelectBy_Custom:
  2928. if len(m.Spec.Annotations.Indices) != 0 {
  2929. return nil, errConflictingFilters
  2930. }
  2931. m.Spec.Annotations.Indices = []IndexEntry{{Key: v.Custom.Index, Val: v.Custom.Value}}
  2932. checkFuncs = append(checkFuncs, SecretCheckCustom)
  2933. case *SelectBy_CustomPrefix:
  2934. if len(m.Spec.Annotations.Indices) != 0 {
  2935. return nil, errConflictingFilters
  2936. }
  2937. m.Spec.Annotations.Indices = []IndexEntry{{Key: v.CustomPrefix.Index, Val: v.CustomPrefix.Value}}
  2938. checkFuncs = append(checkFuncs, SecretCheckCustomPrefix)
  2939. }
  2940. }
  2941. var events []Event
  2942. if (action & WatchActionKindCreate) != 0 {
  2943. events = append(events, EventCreateSecret{Secret: &m, Checks: checkFuncs})
  2944. }
  2945. if (action & WatchActionKindUpdate) != 0 {
  2946. events = append(events, EventUpdateSecret{Secret: &m, Checks: checkFuncs})
  2947. }
  2948. if (action & WatchActionKindRemove) != 0 {
  2949. events = append(events, EventDeleteSecret{Secret: &m, Checks: checkFuncs})
  2950. }
  2951. if len(events) == 0 {
  2952. return nil, errUnrecognizedAction
  2953. }
  2954. return events, nil
  2955. }
  2956. type SecretIndexerByID struct{}
  2957. func (indexer SecretIndexerByID) FromArgs(args ...interface{}) ([]byte, error) {
  2958. return fromArgs(args...)
  2959. }
  2960. func (indexer SecretIndexerByID) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  2961. return prefixFromArgs(args...)
  2962. }
  2963. func (indexer SecretIndexerByID) FromObject(obj interface{}) (bool, []byte, error) {
  2964. m := obj.(*Secret)
  2965. return true, []byte(m.ID + "\x00"), nil
  2966. }
  2967. type SecretIndexerByName struct{}
  2968. func (indexer SecretIndexerByName) FromArgs(args ...interface{}) ([]byte, error) {
  2969. return fromArgs(args...)
  2970. }
  2971. func (indexer SecretIndexerByName) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  2972. return prefixFromArgs(args...)
  2973. }
  2974. func (indexer SecretIndexerByName) FromObject(obj interface{}) (bool, []byte, error) {
  2975. m := obj.(*Secret)
  2976. val := m.Spec.Annotations.Name
  2977. return true, []byte(strings.ToLower(val) + "\x00"), nil
  2978. }
  2979. type SecretCustomIndexer struct{}
  2980. func (indexer SecretCustomIndexer) FromArgs(args ...interface{}) ([]byte, error) {
  2981. return fromArgs(args...)
  2982. }
  2983. func (indexer SecretCustomIndexer) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  2984. return prefixFromArgs(args...)
  2985. }
  2986. func (indexer SecretCustomIndexer) FromObject(obj interface{}) (bool, [][]byte, error) {
  2987. m := obj.(*Secret)
  2988. return customIndexer("", &m.Spec.Annotations)
  2989. }
  2990. type ConfigCheckFunc func(t1, t2 *Config) bool
  2991. type EventCreateConfig struct {
  2992. Config *Config
  2993. Checks []ConfigCheckFunc
  2994. }
  2995. func (e EventCreateConfig) Matches(apiEvent github_com_docker_go_events.Event) bool {
  2996. typedEvent, ok := apiEvent.(EventCreateConfig)
  2997. if !ok {
  2998. return false
  2999. }
  3000. for _, check := range e.Checks {
  3001. if !check(e.Config, typedEvent.Config) {
  3002. return false
  3003. }
  3004. }
  3005. return true
  3006. }
  3007. type EventUpdateConfig struct {
  3008. Config *Config
  3009. OldConfig *Config
  3010. Checks []ConfigCheckFunc
  3011. }
  3012. func (e EventUpdateConfig) Matches(apiEvent github_com_docker_go_events.Event) bool {
  3013. typedEvent, ok := apiEvent.(EventUpdateConfig)
  3014. if !ok {
  3015. return false
  3016. }
  3017. for _, check := range e.Checks {
  3018. if !check(e.Config, typedEvent.Config) {
  3019. return false
  3020. }
  3021. }
  3022. return true
  3023. }
  3024. type EventDeleteConfig struct {
  3025. Config *Config
  3026. Checks []ConfigCheckFunc
  3027. }
  3028. func (e EventDeleteConfig) Matches(apiEvent github_com_docker_go_events.Event) bool {
  3029. typedEvent, ok := apiEvent.(EventDeleteConfig)
  3030. if !ok {
  3031. return false
  3032. }
  3033. for _, check := range e.Checks {
  3034. if !check(e.Config, typedEvent.Config) {
  3035. return false
  3036. }
  3037. }
  3038. return true
  3039. }
  3040. func (m *Config) CopyStoreObject() StoreObject {
  3041. return m.Copy()
  3042. }
  3043. func (m *Config) GetMeta() Meta {
  3044. return m.Meta
  3045. }
  3046. func (m *Config) SetMeta(meta Meta) {
  3047. m.Meta = meta
  3048. }
  3049. func (m *Config) GetID() string {
  3050. return m.ID
  3051. }
  3052. func (m *Config) EventCreate() Event {
  3053. return EventCreateConfig{Config: m}
  3054. }
  3055. func (m *Config) EventUpdate(oldObject StoreObject) Event {
  3056. if oldObject != nil {
  3057. return EventUpdateConfig{Config: m, OldConfig: oldObject.(*Config)}
  3058. } else {
  3059. return EventUpdateConfig{Config: m}
  3060. }
  3061. }
  3062. func (m *Config) EventDelete() Event {
  3063. return EventDeleteConfig{Config: m}
  3064. }
  3065. func ConfigCheckID(v1, v2 *Config) bool {
  3066. return v1.ID == v2.ID
  3067. }
  3068. func ConfigCheckIDPrefix(v1, v2 *Config) bool {
  3069. return strings.HasPrefix(v2.ID, v1.ID)
  3070. }
  3071. func ConfigCheckName(v1, v2 *Config) bool {
  3072. return v1.Spec.Annotations.Name == v2.Spec.Annotations.Name
  3073. }
  3074. func ConfigCheckNamePrefix(v1, v2 *Config) bool {
  3075. return strings.HasPrefix(v2.Spec.Annotations.Name, v1.Spec.Annotations.Name)
  3076. }
  3077. func ConfigCheckCustom(v1, v2 *Config) bool {
  3078. return checkCustom(v1.Spec.Annotations, v2.Spec.Annotations)
  3079. }
  3080. func ConfigCheckCustomPrefix(v1, v2 *Config) bool {
  3081. return checkCustomPrefix(v1.Spec.Annotations, v2.Spec.Annotations)
  3082. }
  3083. func ConvertConfigWatch(action WatchActionKind, filters []*SelectBy) ([]Event, error) {
  3084. var (
  3085. m Config
  3086. checkFuncs []ConfigCheckFunc
  3087. )
  3088. for _, filter := range filters {
  3089. switch v := filter.By.(type) {
  3090. case *SelectBy_ID:
  3091. if m.ID != "" {
  3092. return nil, errConflictingFilters
  3093. }
  3094. m.ID = v.ID
  3095. checkFuncs = append(checkFuncs, ConfigCheckID)
  3096. case *SelectBy_IDPrefix:
  3097. if m.ID != "" {
  3098. return nil, errConflictingFilters
  3099. }
  3100. m.ID = v.IDPrefix
  3101. checkFuncs = append(checkFuncs, ConfigCheckIDPrefix)
  3102. case *SelectBy_Name:
  3103. if m.Spec.Annotations.Name != "" {
  3104. return nil, errConflictingFilters
  3105. }
  3106. m.Spec.Annotations.Name = v.Name
  3107. checkFuncs = append(checkFuncs, ConfigCheckName)
  3108. case *SelectBy_NamePrefix:
  3109. if m.Spec.Annotations.Name != "" {
  3110. return nil, errConflictingFilters
  3111. }
  3112. m.Spec.Annotations.Name = v.NamePrefix
  3113. checkFuncs = append(checkFuncs, ConfigCheckNamePrefix)
  3114. case *SelectBy_Custom:
  3115. if len(m.Spec.Annotations.Indices) != 0 {
  3116. return nil, errConflictingFilters
  3117. }
  3118. m.Spec.Annotations.Indices = []IndexEntry{{Key: v.Custom.Index, Val: v.Custom.Value}}
  3119. checkFuncs = append(checkFuncs, ConfigCheckCustom)
  3120. case *SelectBy_CustomPrefix:
  3121. if len(m.Spec.Annotations.Indices) != 0 {
  3122. return nil, errConflictingFilters
  3123. }
  3124. m.Spec.Annotations.Indices = []IndexEntry{{Key: v.CustomPrefix.Index, Val: v.CustomPrefix.Value}}
  3125. checkFuncs = append(checkFuncs, ConfigCheckCustomPrefix)
  3126. }
  3127. }
  3128. var events []Event
  3129. if (action & WatchActionKindCreate) != 0 {
  3130. events = append(events, EventCreateConfig{Config: &m, Checks: checkFuncs})
  3131. }
  3132. if (action & WatchActionKindUpdate) != 0 {
  3133. events = append(events, EventUpdateConfig{Config: &m, Checks: checkFuncs})
  3134. }
  3135. if (action & WatchActionKindRemove) != 0 {
  3136. events = append(events, EventDeleteConfig{Config: &m, Checks: checkFuncs})
  3137. }
  3138. if len(events) == 0 {
  3139. return nil, errUnrecognizedAction
  3140. }
  3141. return events, nil
  3142. }
  3143. type ConfigIndexerByID struct{}
  3144. func (indexer ConfigIndexerByID) FromArgs(args ...interface{}) ([]byte, error) {
  3145. return fromArgs(args...)
  3146. }
  3147. func (indexer ConfigIndexerByID) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  3148. return prefixFromArgs(args...)
  3149. }
  3150. func (indexer ConfigIndexerByID) FromObject(obj interface{}) (bool, []byte, error) {
  3151. m := obj.(*Config)
  3152. return true, []byte(m.ID + "\x00"), nil
  3153. }
  3154. type ConfigIndexerByName struct{}
  3155. func (indexer ConfigIndexerByName) FromArgs(args ...interface{}) ([]byte, error) {
  3156. return fromArgs(args...)
  3157. }
  3158. func (indexer ConfigIndexerByName) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  3159. return prefixFromArgs(args...)
  3160. }
  3161. func (indexer ConfigIndexerByName) FromObject(obj interface{}) (bool, []byte, error) {
  3162. m := obj.(*Config)
  3163. val := m.Spec.Annotations.Name
  3164. return true, []byte(strings.ToLower(val) + "\x00"), nil
  3165. }
  3166. type ConfigCustomIndexer struct{}
  3167. func (indexer ConfigCustomIndexer) FromArgs(args ...interface{}) ([]byte, error) {
  3168. return fromArgs(args...)
  3169. }
  3170. func (indexer ConfigCustomIndexer) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  3171. return prefixFromArgs(args...)
  3172. }
  3173. func (indexer ConfigCustomIndexer) FromObject(obj interface{}) (bool, [][]byte, error) {
  3174. m := obj.(*Config)
  3175. return customIndexer("", &m.Spec.Annotations)
  3176. }
  3177. type ResourceCheckFunc func(t1, t2 *Resource) bool
  3178. type EventCreateResource struct {
  3179. Resource *Resource
  3180. Checks []ResourceCheckFunc
  3181. }
  3182. func (e EventCreateResource) Matches(apiEvent github_com_docker_go_events.Event) bool {
  3183. typedEvent, ok := apiEvent.(EventCreateResource)
  3184. if !ok {
  3185. return false
  3186. }
  3187. for _, check := range e.Checks {
  3188. if !check(e.Resource, typedEvent.Resource) {
  3189. return false
  3190. }
  3191. }
  3192. return true
  3193. }
  3194. type EventUpdateResource struct {
  3195. Resource *Resource
  3196. OldResource *Resource
  3197. Checks []ResourceCheckFunc
  3198. }
  3199. func (e EventUpdateResource) Matches(apiEvent github_com_docker_go_events.Event) bool {
  3200. typedEvent, ok := apiEvent.(EventUpdateResource)
  3201. if !ok {
  3202. return false
  3203. }
  3204. for _, check := range e.Checks {
  3205. if !check(e.Resource, typedEvent.Resource) {
  3206. return false
  3207. }
  3208. }
  3209. return true
  3210. }
  3211. type EventDeleteResource struct {
  3212. Resource *Resource
  3213. Checks []ResourceCheckFunc
  3214. }
  3215. func (e EventDeleteResource) Matches(apiEvent github_com_docker_go_events.Event) bool {
  3216. typedEvent, ok := apiEvent.(EventDeleteResource)
  3217. if !ok {
  3218. return false
  3219. }
  3220. for _, check := range e.Checks {
  3221. if !check(e.Resource, typedEvent.Resource) {
  3222. return false
  3223. }
  3224. }
  3225. return true
  3226. }
  3227. func (m *Resource) CopyStoreObject() StoreObject {
  3228. return m.Copy()
  3229. }
  3230. func (m *Resource) GetMeta() Meta {
  3231. return m.Meta
  3232. }
  3233. func (m *Resource) SetMeta(meta Meta) {
  3234. m.Meta = meta
  3235. }
  3236. func (m *Resource) GetID() string {
  3237. return m.ID
  3238. }
  3239. func (m *Resource) EventCreate() Event {
  3240. return EventCreateResource{Resource: m}
  3241. }
  3242. func (m *Resource) EventUpdate(oldObject StoreObject) Event {
  3243. if oldObject != nil {
  3244. return EventUpdateResource{Resource: m, OldResource: oldObject.(*Resource)}
  3245. } else {
  3246. return EventUpdateResource{Resource: m}
  3247. }
  3248. }
  3249. func (m *Resource) EventDelete() Event {
  3250. return EventDeleteResource{Resource: m}
  3251. }
  3252. func ResourceCheckID(v1, v2 *Resource) bool {
  3253. return v1.ID == v2.ID
  3254. }
  3255. func ResourceCheckIDPrefix(v1, v2 *Resource) bool {
  3256. return strings.HasPrefix(v2.ID, v1.ID)
  3257. }
  3258. func ResourceCheckName(v1, v2 *Resource) bool {
  3259. return v1.Annotations.Name == v2.Annotations.Name
  3260. }
  3261. func ResourceCheckNamePrefix(v1, v2 *Resource) bool {
  3262. return strings.HasPrefix(v2.Annotations.Name, v1.Annotations.Name)
  3263. }
  3264. func ResourceCheckCustom(v1, v2 *Resource) bool {
  3265. return checkCustom(v1.Annotations, v2.Annotations)
  3266. }
  3267. func ResourceCheckCustomPrefix(v1, v2 *Resource) bool {
  3268. return checkCustomPrefix(v1.Annotations, v2.Annotations)
  3269. }
  3270. func ResourceCheckKind(v1, v2 *Resource) bool {
  3271. return v1.Kind == v2.Kind
  3272. }
  3273. func ConvertResourceWatch(action WatchActionKind, filters []*SelectBy, kind string) ([]Event, error) {
  3274. var (
  3275. m Resource
  3276. checkFuncs []ResourceCheckFunc
  3277. )
  3278. m.Kind = kind
  3279. checkFuncs = append(checkFuncs, ResourceCheckKind)
  3280. for _, filter := range filters {
  3281. switch v := filter.By.(type) {
  3282. case *SelectBy_ID:
  3283. if m.ID != "" {
  3284. return nil, errConflictingFilters
  3285. }
  3286. m.ID = v.ID
  3287. checkFuncs = append(checkFuncs, ResourceCheckID)
  3288. case *SelectBy_IDPrefix:
  3289. if m.ID != "" {
  3290. return nil, errConflictingFilters
  3291. }
  3292. m.ID = v.IDPrefix
  3293. checkFuncs = append(checkFuncs, ResourceCheckIDPrefix)
  3294. case *SelectBy_Name:
  3295. if m.Annotations.Name != "" {
  3296. return nil, errConflictingFilters
  3297. }
  3298. m.Annotations.Name = v.Name
  3299. checkFuncs = append(checkFuncs, ResourceCheckName)
  3300. case *SelectBy_NamePrefix:
  3301. if m.Annotations.Name != "" {
  3302. return nil, errConflictingFilters
  3303. }
  3304. m.Annotations.Name = v.NamePrefix
  3305. checkFuncs = append(checkFuncs, ResourceCheckNamePrefix)
  3306. case *SelectBy_Custom:
  3307. if len(m.Annotations.Indices) != 0 {
  3308. return nil, errConflictingFilters
  3309. }
  3310. m.Annotations.Indices = []IndexEntry{{Key: v.Custom.Index, Val: v.Custom.Value}}
  3311. checkFuncs = append(checkFuncs, ResourceCheckCustom)
  3312. case *SelectBy_CustomPrefix:
  3313. if len(m.Annotations.Indices) != 0 {
  3314. return nil, errConflictingFilters
  3315. }
  3316. m.Annotations.Indices = []IndexEntry{{Key: v.CustomPrefix.Index, Val: v.CustomPrefix.Value}}
  3317. checkFuncs = append(checkFuncs, ResourceCheckCustomPrefix)
  3318. }
  3319. }
  3320. var events []Event
  3321. if (action & WatchActionKindCreate) != 0 {
  3322. events = append(events, EventCreateResource{Resource: &m, Checks: checkFuncs})
  3323. }
  3324. if (action & WatchActionKindUpdate) != 0 {
  3325. events = append(events, EventUpdateResource{Resource: &m, Checks: checkFuncs})
  3326. }
  3327. if (action & WatchActionKindRemove) != 0 {
  3328. events = append(events, EventDeleteResource{Resource: &m, Checks: checkFuncs})
  3329. }
  3330. if len(events) == 0 {
  3331. return nil, errUnrecognizedAction
  3332. }
  3333. return events, nil
  3334. }
  3335. type ResourceIndexerByID struct{}
  3336. func (indexer ResourceIndexerByID) FromArgs(args ...interface{}) ([]byte, error) {
  3337. return fromArgs(args...)
  3338. }
  3339. func (indexer ResourceIndexerByID) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  3340. return prefixFromArgs(args...)
  3341. }
  3342. func (indexer ResourceIndexerByID) FromObject(obj interface{}) (bool, []byte, error) {
  3343. m := obj.(*Resource)
  3344. return true, []byte(m.ID + "\x00"), nil
  3345. }
  3346. type ResourceIndexerByName struct{}
  3347. func (indexer ResourceIndexerByName) FromArgs(args ...interface{}) ([]byte, error) {
  3348. return fromArgs(args...)
  3349. }
  3350. func (indexer ResourceIndexerByName) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  3351. return prefixFromArgs(args...)
  3352. }
  3353. func (indexer ResourceIndexerByName) FromObject(obj interface{}) (bool, []byte, error) {
  3354. m := obj.(*Resource)
  3355. val := m.Annotations.Name
  3356. return true, []byte(strings.ToLower(val) + "\x00"), nil
  3357. }
  3358. type ResourceCustomIndexer struct{}
  3359. func (indexer ResourceCustomIndexer) FromArgs(args ...interface{}) ([]byte, error) {
  3360. return fromArgs(args...)
  3361. }
  3362. func (indexer ResourceCustomIndexer) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  3363. return prefixFromArgs(args...)
  3364. }
  3365. func (indexer ResourceCustomIndexer) FromObject(obj interface{}) (bool, [][]byte, error) {
  3366. m := obj.(*Resource)
  3367. return customIndexer("", &m.Annotations)
  3368. }
  3369. type ExtensionCheckFunc func(t1, t2 *Extension) bool
  3370. type EventCreateExtension struct {
  3371. Extension *Extension
  3372. Checks []ExtensionCheckFunc
  3373. }
  3374. func (e EventCreateExtension) Matches(apiEvent github_com_docker_go_events.Event) bool {
  3375. typedEvent, ok := apiEvent.(EventCreateExtension)
  3376. if !ok {
  3377. return false
  3378. }
  3379. for _, check := range e.Checks {
  3380. if !check(e.Extension, typedEvent.Extension) {
  3381. return false
  3382. }
  3383. }
  3384. return true
  3385. }
  3386. type EventUpdateExtension struct {
  3387. Extension *Extension
  3388. OldExtension *Extension
  3389. Checks []ExtensionCheckFunc
  3390. }
  3391. func (e EventUpdateExtension) Matches(apiEvent github_com_docker_go_events.Event) bool {
  3392. typedEvent, ok := apiEvent.(EventUpdateExtension)
  3393. if !ok {
  3394. return false
  3395. }
  3396. for _, check := range e.Checks {
  3397. if !check(e.Extension, typedEvent.Extension) {
  3398. return false
  3399. }
  3400. }
  3401. return true
  3402. }
  3403. type EventDeleteExtension struct {
  3404. Extension *Extension
  3405. Checks []ExtensionCheckFunc
  3406. }
  3407. func (e EventDeleteExtension) Matches(apiEvent github_com_docker_go_events.Event) bool {
  3408. typedEvent, ok := apiEvent.(EventDeleteExtension)
  3409. if !ok {
  3410. return false
  3411. }
  3412. for _, check := range e.Checks {
  3413. if !check(e.Extension, typedEvent.Extension) {
  3414. return false
  3415. }
  3416. }
  3417. return true
  3418. }
  3419. func (m *Extension) CopyStoreObject() StoreObject {
  3420. return m.Copy()
  3421. }
  3422. func (m *Extension) GetMeta() Meta {
  3423. return m.Meta
  3424. }
  3425. func (m *Extension) SetMeta(meta Meta) {
  3426. m.Meta = meta
  3427. }
  3428. func (m *Extension) GetID() string {
  3429. return m.ID
  3430. }
  3431. func (m *Extension) EventCreate() Event {
  3432. return EventCreateExtension{Extension: m}
  3433. }
  3434. func (m *Extension) EventUpdate(oldObject StoreObject) Event {
  3435. if oldObject != nil {
  3436. return EventUpdateExtension{Extension: m, OldExtension: oldObject.(*Extension)}
  3437. } else {
  3438. return EventUpdateExtension{Extension: m}
  3439. }
  3440. }
  3441. func (m *Extension) EventDelete() Event {
  3442. return EventDeleteExtension{Extension: m}
  3443. }
  3444. func ExtensionCheckID(v1, v2 *Extension) bool {
  3445. return v1.ID == v2.ID
  3446. }
  3447. func ExtensionCheckIDPrefix(v1, v2 *Extension) bool {
  3448. return strings.HasPrefix(v2.ID, v1.ID)
  3449. }
  3450. func ExtensionCheckName(v1, v2 *Extension) bool {
  3451. return v1.Annotations.Name == v2.Annotations.Name
  3452. }
  3453. func ExtensionCheckNamePrefix(v1, v2 *Extension) bool {
  3454. return strings.HasPrefix(v2.Annotations.Name, v1.Annotations.Name)
  3455. }
  3456. func ExtensionCheckCustom(v1, v2 *Extension) bool {
  3457. return checkCustom(v1.Annotations, v2.Annotations)
  3458. }
  3459. func ExtensionCheckCustomPrefix(v1, v2 *Extension) bool {
  3460. return checkCustomPrefix(v1.Annotations, v2.Annotations)
  3461. }
  3462. func ConvertExtensionWatch(action WatchActionKind, filters []*SelectBy) ([]Event, error) {
  3463. var (
  3464. m Extension
  3465. checkFuncs []ExtensionCheckFunc
  3466. )
  3467. for _, filter := range filters {
  3468. switch v := filter.By.(type) {
  3469. case *SelectBy_ID:
  3470. if m.ID != "" {
  3471. return nil, errConflictingFilters
  3472. }
  3473. m.ID = v.ID
  3474. checkFuncs = append(checkFuncs, ExtensionCheckID)
  3475. case *SelectBy_IDPrefix:
  3476. if m.ID != "" {
  3477. return nil, errConflictingFilters
  3478. }
  3479. m.ID = v.IDPrefix
  3480. checkFuncs = append(checkFuncs, ExtensionCheckIDPrefix)
  3481. case *SelectBy_Name:
  3482. if m.Annotations.Name != "" {
  3483. return nil, errConflictingFilters
  3484. }
  3485. m.Annotations.Name = v.Name
  3486. checkFuncs = append(checkFuncs, ExtensionCheckName)
  3487. case *SelectBy_NamePrefix:
  3488. if m.Annotations.Name != "" {
  3489. return nil, errConflictingFilters
  3490. }
  3491. m.Annotations.Name = v.NamePrefix
  3492. checkFuncs = append(checkFuncs, ExtensionCheckNamePrefix)
  3493. case *SelectBy_Custom:
  3494. if len(m.Annotations.Indices) != 0 {
  3495. return nil, errConflictingFilters
  3496. }
  3497. m.Annotations.Indices = []IndexEntry{{Key: v.Custom.Index, Val: v.Custom.Value}}
  3498. checkFuncs = append(checkFuncs, ExtensionCheckCustom)
  3499. case *SelectBy_CustomPrefix:
  3500. if len(m.Annotations.Indices) != 0 {
  3501. return nil, errConflictingFilters
  3502. }
  3503. m.Annotations.Indices = []IndexEntry{{Key: v.CustomPrefix.Index, Val: v.CustomPrefix.Value}}
  3504. checkFuncs = append(checkFuncs, ExtensionCheckCustomPrefix)
  3505. }
  3506. }
  3507. var events []Event
  3508. if (action & WatchActionKindCreate) != 0 {
  3509. events = append(events, EventCreateExtension{Extension: &m, Checks: checkFuncs})
  3510. }
  3511. if (action & WatchActionKindUpdate) != 0 {
  3512. events = append(events, EventUpdateExtension{Extension: &m, Checks: checkFuncs})
  3513. }
  3514. if (action & WatchActionKindRemove) != 0 {
  3515. events = append(events, EventDeleteExtension{Extension: &m, Checks: checkFuncs})
  3516. }
  3517. if len(events) == 0 {
  3518. return nil, errUnrecognizedAction
  3519. }
  3520. return events, nil
  3521. }
  3522. type ExtensionIndexerByID struct{}
  3523. func (indexer ExtensionIndexerByID) FromArgs(args ...interface{}) ([]byte, error) {
  3524. return fromArgs(args...)
  3525. }
  3526. func (indexer ExtensionIndexerByID) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  3527. return prefixFromArgs(args...)
  3528. }
  3529. func (indexer ExtensionIndexerByID) FromObject(obj interface{}) (bool, []byte, error) {
  3530. m := obj.(*Extension)
  3531. return true, []byte(m.ID + "\x00"), nil
  3532. }
  3533. type ExtensionIndexerByName struct{}
  3534. func (indexer ExtensionIndexerByName) FromArgs(args ...interface{}) ([]byte, error) {
  3535. return fromArgs(args...)
  3536. }
  3537. func (indexer ExtensionIndexerByName) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  3538. return prefixFromArgs(args...)
  3539. }
  3540. func (indexer ExtensionIndexerByName) FromObject(obj interface{}) (bool, []byte, error) {
  3541. m := obj.(*Extension)
  3542. val := m.Annotations.Name
  3543. return true, []byte(strings.ToLower(val) + "\x00"), nil
  3544. }
  3545. type ExtensionCustomIndexer struct{}
  3546. func (indexer ExtensionCustomIndexer) FromArgs(args ...interface{}) ([]byte, error) {
  3547. return fromArgs(args...)
  3548. }
  3549. func (indexer ExtensionCustomIndexer) PrefixFromArgs(args ...interface{}) ([]byte, error) {
  3550. return prefixFromArgs(args...)
  3551. }
  3552. func (indexer ExtensionCustomIndexer) FromObject(obj interface{}) (bool, [][]byte, error) {
  3553. m := obj.(*Extension)
  3554. return customIndexer("", &m.Annotations)
  3555. }
  3556. func NewStoreAction(c Event) (StoreAction, error) {
  3557. var sa StoreAction
  3558. switch v := c.(type) {
  3559. case EventCreateNode:
  3560. sa.Action = StoreActionKindCreate
  3561. sa.Target = &StoreAction_Node{Node: v.Node}
  3562. case EventUpdateNode:
  3563. sa.Action = StoreActionKindUpdate
  3564. sa.Target = &StoreAction_Node{Node: v.Node}
  3565. case EventDeleteNode:
  3566. sa.Action = StoreActionKindRemove
  3567. sa.Target = &StoreAction_Node{Node: v.Node}
  3568. case EventCreateService:
  3569. sa.Action = StoreActionKindCreate
  3570. sa.Target = &StoreAction_Service{Service: v.Service}
  3571. case EventUpdateService:
  3572. sa.Action = StoreActionKindUpdate
  3573. sa.Target = &StoreAction_Service{Service: v.Service}
  3574. case EventDeleteService:
  3575. sa.Action = StoreActionKindRemove
  3576. sa.Target = &StoreAction_Service{Service: v.Service}
  3577. case EventCreateTask:
  3578. sa.Action = StoreActionKindCreate
  3579. sa.Target = &StoreAction_Task{Task: v.Task}
  3580. case EventUpdateTask:
  3581. sa.Action = StoreActionKindUpdate
  3582. sa.Target = &StoreAction_Task{Task: v.Task}
  3583. case EventDeleteTask:
  3584. sa.Action = StoreActionKindRemove
  3585. sa.Target = &StoreAction_Task{Task: v.Task}
  3586. case EventCreateNetwork:
  3587. sa.Action = StoreActionKindCreate
  3588. sa.Target = &StoreAction_Network{Network: v.Network}
  3589. case EventUpdateNetwork:
  3590. sa.Action = StoreActionKindUpdate
  3591. sa.Target = &StoreAction_Network{Network: v.Network}
  3592. case EventDeleteNetwork:
  3593. sa.Action = StoreActionKindRemove
  3594. sa.Target = &StoreAction_Network{Network: v.Network}
  3595. case EventCreateCluster:
  3596. sa.Action = StoreActionKindCreate
  3597. sa.Target = &StoreAction_Cluster{Cluster: v.Cluster}
  3598. case EventUpdateCluster:
  3599. sa.Action = StoreActionKindUpdate
  3600. sa.Target = &StoreAction_Cluster{Cluster: v.Cluster}
  3601. case EventDeleteCluster:
  3602. sa.Action = StoreActionKindRemove
  3603. sa.Target = &StoreAction_Cluster{Cluster: v.Cluster}
  3604. case EventCreateSecret:
  3605. sa.Action = StoreActionKindCreate
  3606. sa.Target = &StoreAction_Secret{Secret: v.Secret}
  3607. case EventUpdateSecret:
  3608. sa.Action = StoreActionKindUpdate
  3609. sa.Target = &StoreAction_Secret{Secret: v.Secret}
  3610. case EventDeleteSecret:
  3611. sa.Action = StoreActionKindRemove
  3612. sa.Target = &StoreAction_Secret{Secret: v.Secret}
  3613. case EventCreateConfig:
  3614. sa.Action = StoreActionKindCreate
  3615. sa.Target = &StoreAction_Config{Config: v.Config}
  3616. case EventUpdateConfig:
  3617. sa.Action = StoreActionKindUpdate
  3618. sa.Target = &StoreAction_Config{Config: v.Config}
  3619. case EventDeleteConfig:
  3620. sa.Action = StoreActionKindRemove
  3621. sa.Target = &StoreAction_Config{Config: v.Config}
  3622. case EventCreateResource:
  3623. sa.Action = StoreActionKindCreate
  3624. sa.Target = &StoreAction_Resource{Resource: v.Resource}
  3625. case EventUpdateResource:
  3626. sa.Action = StoreActionKindUpdate
  3627. sa.Target = &StoreAction_Resource{Resource: v.Resource}
  3628. case EventDeleteResource:
  3629. sa.Action = StoreActionKindRemove
  3630. sa.Target = &StoreAction_Resource{Resource: v.Resource}
  3631. case EventCreateExtension:
  3632. sa.Action = StoreActionKindCreate
  3633. sa.Target = &StoreAction_Extension{Extension: v.Extension}
  3634. case EventUpdateExtension:
  3635. sa.Action = StoreActionKindUpdate
  3636. sa.Target = &StoreAction_Extension{Extension: v.Extension}
  3637. case EventDeleteExtension:
  3638. sa.Action = StoreActionKindRemove
  3639. sa.Target = &StoreAction_Extension{Extension: v.Extension}
  3640. default:
  3641. return StoreAction{}, errUnknownStoreAction
  3642. }
  3643. return sa, nil
  3644. }
  3645. func EventFromStoreAction(sa StoreAction, oldObject StoreObject) (Event, error) {
  3646. switch v := sa.Target.(type) {
  3647. case *StoreAction_Node:
  3648. switch sa.Action {
  3649. case StoreActionKindCreate:
  3650. return EventCreateNode{Node: v.Node}, nil
  3651. case StoreActionKindUpdate:
  3652. if oldObject != nil {
  3653. return EventUpdateNode{Node: v.Node, OldNode: oldObject.(*Node)}, nil
  3654. } else {
  3655. return EventUpdateNode{Node: v.Node}, nil
  3656. }
  3657. case StoreActionKindRemove:
  3658. return EventDeleteNode{Node: v.Node}, nil
  3659. }
  3660. case *StoreAction_Service:
  3661. switch sa.Action {
  3662. case StoreActionKindCreate:
  3663. return EventCreateService{Service: v.Service}, nil
  3664. case StoreActionKindUpdate:
  3665. if oldObject != nil {
  3666. return EventUpdateService{Service: v.Service, OldService: oldObject.(*Service)}, nil
  3667. } else {
  3668. return EventUpdateService{Service: v.Service}, nil
  3669. }
  3670. case StoreActionKindRemove:
  3671. return EventDeleteService{Service: v.Service}, nil
  3672. }
  3673. case *StoreAction_Task:
  3674. switch sa.Action {
  3675. case StoreActionKindCreate:
  3676. return EventCreateTask{Task: v.Task}, nil
  3677. case StoreActionKindUpdate:
  3678. if oldObject != nil {
  3679. return EventUpdateTask{Task: v.Task, OldTask: oldObject.(*Task)}, nil
  3680. } else {
  3681. return EventUpdateTask{Task: v.Task}, nil
  3682. }
  3683. case StoreActionKindRemove:
  3684. return EventDeleteTask{Task: v.Task}, nil
  3685. }
  3686. case *StoreAction_Network:
  3687. switch sa.Action {
  3688. case StoreActionKindCreate:
  3689. return EventCreateNetwork{Network: v.Network}, nil
  3690. case StoreActionKindUpdate:
  3691. if oldObject != nil {
  3692. return EventUpdateNetwork{Network: v.Network, OldNetwork: oldObject.(*Network)}, nil
  3693. } else {
  3694. return EventUpdateNetwork{Network: v.Network}, nil
  3695. }
  3696. case StoreActionKindRemove:
  3697. return EventDeleteNetwork{Network: v.Network}, nil
  3698. }
  3699. case *StoreAction_Cluster:
  3700. switch sa.Action {
  3701. case StoreActionKindCreate:
  3702. return EventCreateCluster{Cluster: v.Cluster}, nil
  3703. case StoreActionKindUpdate:
  3704. if oldObject != nil {
  3705. return EventUpdateCluster{Cluster: v.Cluster, OldCluster: oldObject.(*Cluster)}, nil
  3706. } else {
  3707. return EventUpdateCluster{Cluster: v.Cluster}, nil
  3708. }
  3709. case StoreActionKindRemove:
  3710. return EventDeleteCluster{Cluster: v.Cluster}, nil
  3711. }
  3712. case *StoreAction_Secret:
  3713. switch sa.Action {
  3714. case StoreActionKindCreate:
  3715. return EventCreateSecret{Secret: v.Secret}, nil
  3716. case StoreActionKindUpdate:
  3717. if oldObject != nil {
  3718. return EventUpdateSecret{Secret: v.Secret, OldSecret: oldObject.(*Secret)}, nil
  3719. } else {
  3720. return EventUpdateSecret{Secret: v.Secret}, nil
  3721. }
  3722. case StoreActionKindRemove:
  3723. return EventDeleteSecret{Secret: v.Secret}, nil
  3724. }
  3725. case *StoreAction_Config:
  3726. switch sa.Action {
  3727. case StoreActionKindCreate:
  3728. return EventCreateConfig{Config: v.Config}, nil
  3729. case StoreActionKindUpdate:
  3730. if oldObject != nil {
  3731. return EventUpdateConfig{Config: v.Config, OldConfig: oldObject.(*Config)}, nil
  3732. } else {
  3733. return EventUpdateConfig{Config: v.Config}, nil
  3734. }
  3735. case StoreActionKindRemove:
  3736. return EventDeleteConfig{Config: v.Config}, nil
  3737. }
  3738. case *StoreAction_Resource:
  3739. switch sa.Action {
  3740. case StoreActionKindCreate:
  3741. return EventCreateResource{Resource: v.Resource}, nil
  3742. case StoreActionKindUpdate:
  3743. if oldObject != nil {
  3744. return EventUpdateResource{Resource: v.Resource, OldResource: oldObject.(*Resource)}, nil
  3745. } else {
  3746. return EventUpdateResource{Resource: v.Resource}, nil
  3747. }
  3748. case StoreActionKindRemove:
  3749. return EventDeleteResource{Resource: v.Resource}, nil
  3750. }
  3751. case *StoreAction_Extension:
  3752. switch sa.Action {
  3753. case StoreActionKindCreate:
  3754. return EventCreateExtension{Extension: v.Extension}, nil
  3755. case StoreActionKindUpdate:
  3756. if oldObject != nil {
  3757. return EventUpdateExtension{Extension: v.Extension, OldExtension: oldObject.(*Extension)}, nil
  3758. } else {
  3759. return EventUpdateExtension{Extension: v.Extension}, nil
  3760. }
  3761. case StoreActionKindRemove:
  3762. return EventDeleteExtension{Extension: v.Extension}, nil
  3763. }
  3764. }
  3765. return nil, errUnknownStoreAction
  3766. }
  3767. func WatchMessageEvent(c Event) *WatchMessage_Event {
  3768. switch v := c.(type) {
  3769. case EventCreateNode:
  3770. return &WatchMessage_Event{Action: WatchActionKindCreate, Object: &Object{Object: &Object_Node{Node: v.Node}}}
  3771. case EventUpdateNode:
  3772. if v.OldNode != nil {
  3773. return &WatchMessage_Event{Action: WatchActionKindUpdate, Object: &Object{Object: &Object_Node{Node: v.Node}}, OldObject: &Object{Object: &Object_Node{Node: v.OldNode}}}
  3774. } else {
  3775. return &WatchMessage_Event{Action: WatchActionKindUpdate, Object: &Object{Object: &Object_Node{Node: v.Node}}}
  3776. }
  3777. case EventDeleteNode:
  3778. return &WatchMessage_Event{Action: WatchActionKindRemove, Object: &Object{Object: &Object_Node{Node: v.Node}}}
  3779. case EventCreateService:
  3780. return &WatchMessage_Event{Action: WatchActionKindCreate, Object: &Object{Object: &Object_Service{Service: v.Service}}}
  3781. case EventUpdateService:
  3782. if v.OldService != nil {
  3783. return &WatchMessage_Event{Action: WatchActionKindUpdate, Object: &Object{Object: &Object_Service{Service: v.Service}}, OldObject: &Object{Object: &Object_Service{Service: v.OldService}}}
  3784. } else {
  3785. return &WatchMessage_Event{Action: WatchActionKindUpdate, Object: &Object{Object: &Object_Service{Service: v.Service}}}
  3786. }
  3787. case EventDeleteService:
  3788. return &WatchMessage_Event{Action: WatchActionKindRemove, Object: &Object{Object: &Object_Service{Service: v.Service}}}
  3789. case EventCreateTask:
  3790. return &WatchMessage_Event{Action: WatchActionKindCreate, Object: &Object{Object: &Object_Task{Task: v.Task}}}
  3791. case EventUpdateTask:
  3792. if v.OldTask != nil {
  3793. return &WatchMessage_Event{Action: WatchActionKindUpdate, Object: &Object{Object: &Object_Task{Task: v.Task}}, OldObject: &Object{Object: &Object_Task{Task: v.OldTask}}}
  3794. } else {
  3795. return &WatchMessage_Event{Action: WatchActionKindUpdate, Object: &Object{Object: &Object_Task{Task: v.Task}}}
  3796. }
  3797. case EventDeleteTask:
  3798. return &WatchMessage_Event{Action: WatchActionKindRemove, Object: &Object{Object: &Object_Task{Task: v.Task}}}
  3799. case EventCreateNetwork:
  3800. return &WatchMessage_Event{Action: WatchActionKindCreate, Object: &Object{Object: &Object_Network{Network: v.Network}}}
  3801. case EventUpdateNetwork:
  3802. if v.OldNetwork != nil {
  3803. return &WatchMessage_Event{Action: WatchActionKindUpdate, Object: &Object{Object: &Object_Network{Network: v.Network}}, OldObject: &Object{Object: &Object_Network{Network: v.OldNetwork}}}
  3804. } else {
  3805. return &WatchMessage_Event{Action: WatchActionKindUpdate, Object: &Object{Object: &Object_Network{Network: v.Network}}}
  3806. }
  3807. case EventDeleteNetwork:
  3808. return &WatchMessage_Event{Action: WatchActionKindRemove, Object: &Object{Object: &Object_Network{Network: v.Network}}}
  3809. case EventCreateCluster:
  3810. return &WatchMessage_Event{Action: WatchActionKindCreate, Object: &Object{Object: &Object_Cluster{Cluster: v.Cluster}}}
  3811. case EventUpdateCluster:
  3812. if v.OldCluster != nil {
  3813. return &WatchMessage_Event{Action: WatchActionKindUpdate, Object: &Object{Object: &Object_Cluster{Cluster: v.Cluster}}, OldObject: &Object{Object: &Object_Cluster{Cluster: v.OldCluster}}}
  3814. } else {
  3815. return &WatchMessage_Event{Action: WatchActionKindUpdate, Object: &Object{Object: &Object_Cluster{Cluster: v.Cluster}}}
  3816. }
  3817. case EventDeleteCluster:
  3818. return &WatchMessage_Event{Action: WatchActionKindRemove, Object: &Object{Object: &Object_Cluster{Cluster: v.Cluster}}}
  3819. case EventCreateSecret:
  3820. return &WatchMessage_Event{Action: WatchActionKindCreate, Object: &Object{Object: &Object_Secret{Secret: v.Secret}}}
  3821. case EventUpdateSecret:
  3822. if v.OldSecret != nil {
  3823. return &WatchMessage_Event{Action: WatchActionKindUpdate, Object: &Object{Object: &Object_Secret{Secret: v.Secret}}, OldObject: &Object{Object: &Object_Secret{Secret: v.OldSecret}}}
  3824. } else {
  3825. return &WatchMessage_Event{Action: WatchActionKindUpdate, Object: &Object{Object: &Object_Secret{Secret: v.Secret}}}
  3826. }
  3827. case EventDeleteSecret:
  3828. return &WatchMessage_Event{Action: WatchActionKindRemove, Object: &Object{Object: &Object_Secret{Secret: v.Secret}}}
  3829. case EventCreateConfig:
  3830. return &WatchMessage_Event{Action: WatchActionKindCreate, Object: &Object{Object: &Object_Config{Config: v.Config}}}
  3831. case EventUpdateConfig:
  3832. if v.OldConfig != nil {
  3833. return &WatchMessage_Event{Action: WatchActionKindUpdate, Object: &Object{Object: &Object_Config{Config: v.Config}}, OldObject: &Object{Object: &Object_Config{Config: v.OldConfig}}}
  3834. } else {
  3835. return &WatchMessage_Event{Action: WatchActionKindUpdate, Object: &Object{Object: &Object_Config{Config: v.Config}}}
  3836. }
  3837. case EventDeleteConfig:
  3838. return &WatchMessage_Event{Action: WatchActionKindRemove, Object: &Object{Object: &Object_Config{Config: v.Config}}}
  3839. case EventCreateResource:
  3840. return &WatchMessage_Event{Action: WatchActionKindCreate, Object: &Object{Object: &Object_Resource{Resource: v.Resource}}}
  3841. case EventUpdateResource:
  3842. if v.OldResource != nil {
  3843. return &WatchMessage_Event{Action: WatchActionKindUpdate, Object: &Object{Object: &Object_Resource{Resource: v.Resource}}, OldObject: &Object{Object: &Object_Resource{Resource: v.OldResource}}}
  3844. } else {
  3845. return &WatchMessage_Event{Action: WatchActionKindUpdate, Object: &Object{Object: &Object_Resource{Resource: v.Resource}}}
  3846. }
  3847. case EventDeleteResource:
  3848. return &WatchMessage_Event{Action: WatchActionKindRemove, Object: &Object{Object: &Object_Resource{Resource: v.Resource}}}
  3849. case EventCreateExtension:
  3850. return &WatchMessage_Event{Action: WatchActionKindCreate, Object: &Object{Object: &Object_Extension{Extension: v.Extension}}}
  3851. case EventUpdateExtension:
  3852. if v.OldExtension != nil {
  3853. return &WatchMessage_Event{Action: WatchActionKindUpdate, Object: &Object{Object: &Object_Extension{Extension: v.Extension}}, OldObject: &Object{Object: &Object_Extension{Extension: v.OldExtension}}}
  3854. } else {
  3855. return &WatchMessage_Event{Action: WatchActionKindUpdate, Object: &Object{Object: &Object_Extension{Extension: v.Extension}}}
  3856. }
  3857. case EventDeleteExtension:
  3858. return &WatchMessage_Event{Action: WatchActionKindRemove, Object: &Object{Object: &Object_Extension{Extension: v.Extension}}}
  3859. }
  3860. return nil
  3861. }
  3862. func ConvertWatchArgs(entries []*WatchRequest_WatchEntry) ([]Event, error) {
  3863. var events []Event
  3864. for _, entry := range entries {
  3865. var newEvents []Event
  3866. var err error
  3867. switch entry.Kind {
  3868. case "":
  3869. return nil, errNoKindSpecified
  3870. case "node":
  3871. newEvents, err = ConvertNodeWatch(entry.Action, entry.Filters)
  3872. case "service":
  3873. newEvents, err = ConvertServiceWatch(entry.Action, entry.Filters)
  3874. case "task":
  3875. newEvents, err = ConvertTaskWatch(entry.Action, entry.Filters)
  3876. case "network":
  3877. newEvents, err = ConvertNetworkWatch(entry.Action, entry.Filters)
  3878. case "cluster":
  3879. newEvents, err = ConvertClusterWatch(entry.Action, entry.Filters)
  3880. case "secret":
  3881. newEvents, err = ConvertSecretWatch(entry.Action, entry.Filters)
  3882. case "config":
  3883. newEvents, err = ConvertConfigWatch(entry.Action, entry.Filters)
  3884. default:
  3885. newEvents, err = ConvertResourceWatch(entry.Action, entry.Filters, entry.Kind)
  3886. case "extension":
  3887. newEvents, err = ConvertExtensionWatch(entry.Action, entry.Filters)
  3888. }
  3889. if err != nil {
  3890. return nil, err
  3891. }
  3892. events = append(events, newEvents...)
  3893. }
  3894. return events, nil
  3895. }
  3896. func (this *Meta) String() string {
  3897. if this == nil {
  3898. return "nil"
  3899. }
  3900. s := strings.Join([]string{`&Meta{`,
  3901. `Version:` + strings.Replace(strings.Replace(this.Version.String(), "Version", "Version", 1), `&`, ``, 1) + `,`,
  3902. `CreatedAt:` + strings.Replace(fmt.Sprintf("%v", this.CreatedAt), "Timestamp", "google_protobuf.Timestamp", 1) + `,`,
  3903. `UpdatedAt:` + strings.Replace(fmt.Sprintf("%v", this.UpdatedAt), "Timestamp", "google_protobuf.Timestamp", 1) + `,`,
  3904. `}`,
  3905. }, "")
  3906. return s
  3907. }
  3908. func (this *Node) String() string {
  3909. if this == nil {
  3910. return "nil"
  3911. }
  3912. s := strings.Join([]string{`&Node{`,
  3913. `ID:` + fmt.Sprintf("%v", this.ID) + `,`,
  3914. `Meta:` + strings.Replace(strings.Replace(this.Meta.String(), "Meta", "Meta", 1), `&`, ``, 1) + `,`,
  3915. `Spec:` + strings.Replace(strings.Replace(this.Spec.String(), "NodeSpec", "NodeSpec", 1), `&`, ``, 1) + `,`,
  3916. `Description:` + strings.Replace(fmt.Sprintf("%v", this.Description), "NodeDescription", "NodeDescription", 1) + `,`,
  3917. `Status:` + strings.Replace(strings.Replace(this.Status.String(), "NodeStatus", "NodeStatus", 1), `&`, ``, 1) + `,`,
  3918. `ManagerStatus:` + strings.Replace(fmt.Sprintf("%v", this.ManagerStatus), "ManagerStatus", "ManagerStatus", 1) + `,`,
  3919. `Attachment:` + strings.Replace(fmt.Sprintf("%v", this.Attachment), "NetworkAttachment", "NetworkAttachment", 1) + `,`,
  3920. `Certificate:` + strings.Replace(strings.Replace(this.Certificate.String(), "Certificate", "Certificate", 1), `&`, ``, 1) + `,`,
  3921. `Role:` + fmt.Sprintf("%v", this.Role) + `,`,
  3922. `}`,
  3923. }, "")
  3924. return s
  3925. }
  3926. func (this *Service) String() string {
  3927. if this == nil {
  3928. return "nil"
  3929. }
  3930. s := strings.Join([]string{`&Service{`,
  3931. `ID:` + fmt.Sprintf("%v", this.ID) + `,`,
  3932. `Meta:` + strings.Replace(strings.Replace(this.Meta.String(), "Meta", "Meta", 1), `&`, ``, 1) + `,`,
  3933. `Spec:` + strings.Replace(strings.Replace(this.Spec.String(), "ServiceSpec", "ServiceSpec", 1), `&`, ``, 1) + `,`,
  3934. `Endpoint:` + strings.Replace(fmt.Sprintf("%v", this.Endpoint), "Endpoint", "Endpoint", 1) + `,`,
  3935. `UpdateStatus:` + strings.Replace(fmt.Sprintf("%v", this.UpdateStatus), "UpdateStatus", "UpdateStatus", 1) + `,`,
  3936. `PreviousSpec:` + strings.Replace(fmt.Sprintf("%v", this.PreviousSpec), "ServiceSpec", "ServiceSpec", 1) + `,`,
  3937. `SpecVersion:` + strings.Replace(fmt.Sprintf("%v", this.SpecVersion), "Version", "Version", 1) + `,`,
  3938. `PreviousSpecVersion:` + strings.Replace(fmt.Sprintf("%v", this.PreviousSpecVersion), "Version", "Version", 1) + `,`,
  3939. `}`,
  3940. }, "")
  3941. return s
  3942. }
  3943. func (this *Endpoint) String() string {
  3944. if this == nil {
  3945. return "nil"
  3946. }
  3947. s := strings.Join([]string{`&Endpoint{`,
  3948. `Spec:` + strings.Replace(fmt.Sprintf("%v", this.Spec), "EndpointSpec", "EndpointSpec", 1) + `,`,
  3949. `Ports:` + strings.Replace(fmt.Sprintf("%v", this.Ports), "PortConfig", "PortConfig", 1) + `,`,
  3950. `VirtualIPs:` + strings.Replace(fmt.Sprintf("%v", this.VirtualIPs), "Endpoint_VirtualIP", "Endpoint_VirtualIP", 1) + `,`,
  3951. `}`,
  3952. }, "")
  3953. return s
  3954. }
  3955. func (this *Endpoint_VirtualIP) String() string {
  3956. if this == nil {
  3957. return "nil"
  3958. }
  3959. s := strings.Join([]string{`&Endpoint_VirtualIP{`,
  3960. `NetworkID:` + fmt.Sprintf("%v", this.NetworkID) + `,`,
  3961. `Addr:` + fmt.Sprintf("%v", this.Addr) + `,`,
  3962. `}`,
  3963. }, "")
  3964. return s
  3965. }
  3966. func (this *Task) String() string {
  3967. if this == nil {
  3968. return "nil"
  3969. }
  3970. s := strings.Join([]string{`&Task{`,
  3971. `ID:` + fmt.Sprintf("%v", this.ID) + `,`,
  3972. `Meta:` + strings.Replace(strings.Replace(this.Meta.String(), "Meta", "Meta", 1), `&`, ``, 1) + `,`,
  3973. `Spec:` + strings.Replace(strings.Replace(this.Spec.String(), "TaskSpec", "TaskSpec", 1), `&`, ``, 1) + `,`,
  3974. `ServiceID:` + fmt.Sprintf("%v", this.ServiceID) + `,`,
  3975. `Slot:` + fmt.Sprintf("%v", this.Slot) + `,`,
  3976. `NodeID:` + fmt.Sprintf("%v", this.NodeID) + `,`,
  3977. `Annotations:` + strings.Replace(strings.Replace(this.Annotations.String(), "Annotations", "Annotations", 1), `&`, ``, 1) + `,`,
  3978. `ServiceAnnotations:` + strings.Replace(strings.Replace(this.ServiceAnnotations.String(), "Annotations", "Annotations", 1), `&`, ``, 1) + `,`,
  3979. `Status:` + strings.Replace(strings.Replace(this.Status.String(), "TaskStatus", "TaskStatus", 1), `&`, ``, 1) + `,`,
  3980. `DesiredState:` + fmt.Sprintf("%v", this.DesiredState) + `,`,
  3981. `Networks:` + strings.Replace(fmt.Sprintf("%v", this.Networks), "NetworkAttachment", "NetworkAttachment", 1) + `,`,
  3982. `Endpoint:` + strings.Replace(fmt.Sprintf("%v", this.Endpoint), "Endpoint", "Endpoint", 1) + `,`,
  3983. `LogDriver:` + strings.Replace(fmt.Sprintf("%v", this.LogDriver), "Driver", "Driver", 1) + `,`,
  3984. `SpecVersion:` + strings.Replace(fmt.Sprintf("%v", this.SpecVersion), "Version", "Version", 1) + `,`,
  3985. `}`,
  3986. }, "")
  3987. return s
  3988. }
  3989. func (this *NetworkAttachment) String() string {
  3990. if this == nil {
  3991. return "nil"
  3992. }
  3993. s := strings.Join([]string{`&NetworkAttachment{`,
  3994. `Network:` + strings.Replace(fmt.Sprintf("%v", this.Network), "Network", "Network", 1) + `,`,
  3995. `Addresses:` + fmt.Sprintf("%v", this.Addresses) + `,`,
  3996. `Aliases:` + fmt.Sprintf("%v", this.Aliases) + `,`,
  3997. `}`,
  3998. }, "")
  3999. return s
  4000. }
  4001. func (this *Network) String() string {
  4002. if this == nil {
  4003. return "nil"
  4004. }
  4005. s := strings.Join([]string{`&Network{`,
  4006. `ID:` + fmt.Sprintf("%v", this.ID) + `,`,
  4007. `Meta:` + strings.Replace(strings.Replace(this.Meta.String(), "Meta", "Meta", 1), `&`, ``, 1) + `,`,
  4008. `Spec:` + strings.Replace(strings.Replace(this.Spec.String(), "NetworkSpec", "NetworkSpec", 1), `&`, ``, 1) + `,`,
  4009. `DriverState:` + strings.Replace(fmt.Sprintf("%v", this.DriverState), "Driver", "Driver", 1) + `,`,
  4010. `IPAM:` + strings.Replace(fmt.Sprintf("%v", this.IPAM), "IPAMOptions", "IPAMOptions", 1) + `,`,
  4011. `}`,
  4012. }, "")
  4013. return s
  4014. }
  4015. func (this *Cluster) String() string {
  4016. if this == nil {
  4017. return "nil"
  4018. }
  4019. keysForBlacklistedCertificates := make([]string, 0, len(this.BlacklistedCertificates))
  4020. for k, _ := range this.BlacklistedCertificates {
  4021. keysForBlacklistedCertificates = append(keysForBlacklistedCertificates, k)
  4022. }
  4023. github_com_gogo_protobuf_sortkeys.Strings(keysForBlacklistedCertificates)
  4024. mapStringForBlacklistedCertificates := "map[string]*BlacklistedCertificate{"
  4025. for _, k := range keysForBlacklistedCertificates {
  4026. mapStringForBlacklistedCertificates += fmt.Sprintf("%v: %v,", k, this.BlacklistedCertificates[k])
  4027. }
  4028. mapStringForBlacklistedCertificates += "}"
  4029. s := strings.Join([]string{`&Cluster{`,
  4030. `ID:` + fmt.Sprintf("%v", this.ID) + `,`,
  4031. `Meta:` + strings.Replace(strings.Replace(this.Meta.String(), "Meta", "Meta", 1), `&`, ``, 1) + `,`,
  4032. `Spec:` + strings.Replace(strings.Replace(this.Spec.String(), "ClusterSpec", "ClusterSpec", 1), `&`, ``, 1) + `,`,
  4033. `RootCA:` + strings.Replace(strings.Replace(this.RootCA.String(), "RootCA", "RootCA", 1), `&`, ``, 1) + `,`,
  4034. `NetworkBootstrapKeys:` + strings.Replace(fmt.Sprintf("%v", this.NetworkBootstrapKeys), "EncryptionKey", "EncryptionKey", 1) + `,`,
  4035. `EncryptionKeyLamportClock:` + fmt.Sprintf("%v", this.EncryptionKeyLamportClock) + `,`,
  4036. `BlacklistedCertificates:` + mapStringForBlacklistedCertificates + `,`,
  4037. `UnlockKeys:` + strings.Replace(fmt.Sprintf("%v", this.UnlockKeys), "EncryptionKey", "EncryptionKey", 1) + `,`,
  4038. `}`,
  4039. }, "")
  4040. return s
  4041. }
  4042. func (this *Secret) String() string {
  4043. if this == nil {
  4044. return "nil"
  4045. }
  4046. s := strings.Join([]string{`&Secret{`,
  4047. `ID:` + fmt.Sprintf("%v", this.ID) + `,`,
  4048. `Meta:` + strings.Replace(strings.Replace(this.Meta.String(), "Meta", "Meta", 1), `&`, ``, 1) + `,`,
  4049. `Spec:` + strings.Replace(strings.Replace(this.Spec.String(), "SecretSpec", "SecretSpec", 1), `&`, ``, 1) + `,`,
  4050. `Internal:` + fmt.Sprintf("%v", this.Internal) + `,`,
  4051. `}`,
  4052. }, "")
  4053. return s
  4054. }
  4055. func (this *Config) String() string {
  4056. if this == nil {
  4057. return "nil"
  4058. }
  4059. s := strings.Join([]string{`&Config{`,
  4060. `ID:` + fmt.Sprintf("%v", this.ID) + `,`,
  4061. `Meta:` + strings.Replace(strings.Replace(this.Meta.String(), "Meta", "Meta", 1), `&`, ``, 1) + `,`,
  4062. `Spec:` + strings.Replace(strings.Replace(this.Spec.String(), "ConfigSpec", "ConfigSpec", 1), `&`, ``, 1) + `,`,
  4063. `}`,
  4064. }, "")
  4065. return s
  4066. }
  4067. func (this *Resource) String() string {
  4068. if this == nil {
  4069. return "nil"
  4070. }
  4071. s := strings.Join([]string{`&Resource{`,
  4072. `ID:` + fmt.Sprintf("%v", this.ID) + `,`,
  4073. `Meta:` + strings.Replace(strings.Replace(this.Meta.String(), "Meta", "Meta", 1), `&`, ``, 1) + `,`,
  4074. `Annotations:` + strings.Replace(strings.Replace(this.Annotations.String(), "Annotations", "Annotations", 1), `&`, ``, 1) + `,`,
  4075. `Kind:` + fmt.Sprintf("%v", this.Kind) + `,`,
  4076. `Payload:` + strings.Replace(fmt.Sprintf("%v", this.Payload), "Any", "google_protobuf3.Any", 1) + `,`,
  4077. `}`,
  4078. }, "")
  4079. return s
  4080. }
  4081. func (this *Extension) String() string {
  4082. if this == nil {
  4083. return "nil"
  4084. }
  4085. s := strings.Join([]string{`&Extension{`,
  4086. `ID:` + fmt.Sprintf("%v", this.ID) + `,`,
  4087. `Meta:` + strings.Replace(strings.Replace(this.Meta.String(), "Meta", "Meta", 1), `&`, ``, 1) + `,`,
  4088. `Annotations:` + strings.Replace(strings.Replace(this.Annotations.String(), "Annotations", "Annotations", 1), `&`, ``, 1) + `,`,
  4089. `Description:` + fmt.Sprintf("%v", this.Description) + `,`,
  4090. `}`,
  4091. }, "")
  4092. return s
  4093. }
  4094. func valueToStringObjects(v interface{}) string {
  4095. rv := reflect.ValueOf(v)
  4096. if rv.IsNil() {
  4097. return "nil"
  4098. }
  4099. pv := reflect.Indirect(rv).Interface()
  4100. return fmt.Sprintf("*%v", pv)
  4101. }
  4102. func (m *Meta) Unmarshal(dAtA []byte) error {
  4103. l := len(dAtA)
  4104. iNdEx := 0
  4105. for iNdEx < l {
  4106. preIndex := iNdEx
  4107. var wire uint64
  4108. for shift := uint(0); ; shift += 7 {
  4109. if shift >= 64 {
  4110. return ErrIntOverflowObjects
  4111. }
  4112. if iNdEx >= l {
  4113. return io.ErrUnexpectedEOF
  4114. }
  4115. b := dAtA[iNdEx]
  4116. iNdEx++
  4117. wire |= (uint64(b) & 0x7F) << shift
  4118. if b < 0x80 {
  4119. break
  4120. }
  4121. }
  4122. fieldNum := int32(wire >> 3)
  4123. wireType := int(wire & 0x7)
  4124. if wireType == 4 {
  4125. return fmt.Errorf("proto: Meta: wiretype end group for non-group")
  4126. }
  4127. if fieldNum <= 0 {
  4128. return fmt.Errorf("proto: Meta: illegal tag %d (wire type %d)", fieldNum, wire)
  4129. }
  4130. switch fieldNum {
  4131. case 1:
  4132. if wireType != 2 {
  4133. return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType)
  4134. }
  4135. var msglen int
  4136. for shift := uint(0); ; shift += 7 {
  4137. if shift >= 64 {
  4138. return ErrIntOverflowObjects
  4139. }
  4140. if iNdEx >= l {
  4141. return io.ErrUnexpectedEOF
  4142. }
  4143. b := dAtA[iNdEx]
  4144. iNdEx++
  4145. msglen |= (int(b) & 0x7F) << shift
  4146. if b < 0x80 {
  4147. break
  4148. }
  4149. }
  4150. if msglen < 0 {
  4151. return ErrInvalidLengthObjects
  4152. }
  4153. postIndex := iNdEx + msglen
  4154. if postIndex > l {
  4155. return io.ErrUnexpectedEOF
  4156. }
  4157. if err := m.Version.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4158. return err
  4159. }
  4160. iNdEx = postIndex
  4161. case 2:
  4162. if wireType != 2 {
  4163. return fmt.Errorf("proto: wrong wireType = %d for field CreatedAt", wireType)
  4164. }
  4165. var msglen int
  4166. for shift := uint(0); ; shift += 7 {
  4167. if shift >= 64 {
  4168. return ErrIntOverflowObjects
  4169. }
  4170. if iNdEx >= l {
  4171. return io.ErrUnexpectedEOF
  4172. }
  4173. b := dAtA[iNdEx]
  4174. iNdEx++
  4175. msglen |= (int(b) & 0x7F) << shift
  4176. if b < 0x80 {
  4177. break
  4178. }
  4179. }
  4180. if msglen < 0 {
  4181. return ErrInvalidLengthObjects
  4182. }
  4183. postIndex := iNdEx + msglen
  4184. if postIndex > l {
  4185. return io.ErrUnexpectedEOF
  4186. }
  4187. if m.CreatedAt == nil {
  4188. m.CreatedAt = &google_protobuf.Timestamp{}
  4189. }
  4190. if err := m.CreatedAt.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4191. return err
  4192. }
  4193. iNdEx = postIndex
  4194. case 3:
  4195. if wireType != 2 {
  4196. return fmt.Errorf("proto: wrong wireType = %d for field UpdatedAt", wireType)
  4197. }
  4198. var msglen int
  4199. for shift := uint(0); ; shift += 7 {
  4200. if shift >= 64 {
  4201. return ErrIntOverflowObjects
  4202. }
  4203. if iNdEx >= l {
  4204. return io.ErrUnexpectedEOF
  4205. }
  4206. b := dAtA[iNdEx]
  4207. iNdEx++
  4208. msglen |= (int(b) & 0x7F) << shift
  4209. if b < 0x80 {
  4210. break
  4211. }
  4212. }
  4213. if msglen < 0 {
  4214. return ErrInvalidLengthObjects
  4215. }
  4216. postIndex := iNdEx + msglen
  4217. if postIndex > l {
  4218. return io.ErrUnexpectedEOF
  4219. }
  4220. if m.UpdatedAt == nil {
  4221. m.UpdatedAt = &google_protobuf.Timestamp{}
  4222. }
  4223. if err := m.UpdatedAt.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4224. return err
  4225. }
  4226. iNdEx = postIndex
  4227. default:
  4228. iNdEx = preIndex
  4229. skippy, err := skipObjects(dAtA[iNdEx:])
  4230. if err != nil {
  4231. return err
  4232. }
  4233. if skippy < 0 {
  4234. return ErrInvalidLengthObjects
  4235. }
  4236. if (iNdEx + skippy) > l {
  4237. return io.ErrUnexpectedEOF
  4238. }
  4239. iNdEx += skippy
  4240. }
  4241. }
  4242. if iNdEx > l {
  4243. return io.ErrUnexpectedEOF
  4244. }
  4245. return nil
  4246. }
  4247. func (m *Node) Unmarshal(dAtA []byte) error {
  4248. l := len(dAtA)
  4249. iNdEx := 0
  4250. for iNdEx < l {
  4251. preIndex := iNdEx
  4252. var wire uint64
  4253. for shift := uint(0); ; shift += 7 {
  4254. if shift >= 64 {
  4255. return ErrIntOverflowObjects
  4256. }
  4257. if iNdEx >= l {
  4258. return io.ErrUnexpectedEOF
  4259. }
  4260. b := dAtA[iNdEx]
  4261. iNdEx++
  4262. wire |= (uint64(b) & 0x7F) << shift
  4263. if b < 0x80 {
  4264. break
  4265. }
  4266. }
  4267. fieldNum := int32(wire >> 3)
  4268. wireType := int(wire & 0x7)
  4269. if wireType == 4 {
  4270. return fmt.Errorf("proto: Node: wiretype end group for non-group")
  4271. }
  4272. if fieldNum <= 0 {
  4273. return fmt.Errorf("proto: Node: illegal tag %d (wire type %d)", fieldNum, wire)
  4274. }
  4275. switch fieldNum {
  4276. case 1:
  4277. if wireType != 2 {
  4278. return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
  4279. }
  4280. var stringLen uint64
  4281. for shift := uint(0); ; shift += 7 {
  4282. if shift >= 64 {
  4283. return ErrIntOverflowObjects
  4284. }
  4285. if iNdEx >= l {
  4286. return io.ErrUnexpectedEOF
  4287. }
  4288. b := dAtA[iNdEx]
  4289. iNdEx++
  4290. stringLen |= (uint64(b) & 0x7F) << shift
  4291. if b < 0x80 {
  4292. break
  4293. }
  4294. }
  4295. intStringLen := int(stringLen)
  4296. if intStringLen < 0 {
  4297. return ErrInvalidLengthObjects
  4298. }
  4299. postIndex := iNdEx + intStringLen
  4300. if postIndex > l {
  4301. return io.ErrUnexpectedEOF
  4302. }
  4303. m.ID = string(dAtA[iNdEx:postIndex])
  4304. iNdEx = postIndex
  4305. case 2:
  4306. if wireType != 2 {
  4307. return fmt.Errorf("proto: wrong wireType = %d for field Meta", wireType)
  4308. }
  4309. var msglen int
  4310. for shift := uint(0); ; shift += 7 {
  4311. if shift >= 64 {
  4312. return ErrIntOverflowObjects
  4313. }
  4314. if iNdEx >= l {
  4315. return io.ErrUnexpectedEOF
  4316. }
  4317. b := dAtA[iNdEx]
  4318. iNdEx++
  4319. msglen |= (int(b) & 0x7F) << shift
  4320. if b < 0x80 {
  4321. break
  4322. }
  4323. }
  4324. if msglen < 0 {
  4325. return ErrInvalidLengthObjects
  4326. }
  4327. postIndex := iNdEx + msglen
  4328. if postIndex > l {
  4329. return io.ErrUnexpectedEOF
  4330. }
  4331. if err := m.Meta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4332. return err
  4333. }
  4334. iNdEx = postIndex
  4335. case 3:
  4336. if wireType != 2 {
  4337. return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType)
  4338. }
  4339. var msglen int
  4340. for shift := uint(0); ; shift += 7 {
  4341. if shift >= 64 {
  4342. return ErrIntOverflowObjects
  4343. }
  4344. if iNdEx >= l {
  4345. return io.ErrUnexpectedEOF
  4346. }
  4347. b := dAtA[iNdEx]
  4348. iNdEx++
  4349. msglen |= (int(b) & 0x7F) << shift
  4350. if b < 0x80 {
  4351. break
  4352. }
  4353. }
  4354. if msglen < 0 {
  4355. return ErrInvalidLengthObjects
  4356. }
  4357. postIndex := iNdEx + msglen
  4358. if postIndex > l {
  4359. return io.ErrUnexpectedEOF
  4360. }
  4361. if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4362. return err
  4363. }
  4364. iNdEx = postIndex
  4365. case 4:
  4366. if wireType != 2 {
  4367. return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
  4368. }
  4369. var msglen int
  4370. for shift := uint(0); ; shift += 7 {
  4371. if shift >= 64 {
  4372. return ErrIntOverflowObjects
  4373. }
  4374. if iNdEx >= l {
  4375. return io.ErrUnexpectedEOF
  4376. }
  4377. b := dAtA[iNdEx]
  4378. iNdEx++
  4379. msglen |= (int(b) & 0x7F) << shift
  4380. if b < 0x80 {
  4381. break
  4382. }
  4383. }
  4384. if msglen < 0 {
  4385. return ErrInvalidLengthObjects
  4386. }
  4387. postIndex := iNdEx + msglen
  4388. if postIndex > l {
  4389. return io.ErrUnexpectedEOF
  4390. }
  4391. if m.Description == nil {
  4392. m.Description = &NodeDescription{}
  4393. }
  4394. if err := m.Description.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4395. return err
  4396. }
  4397. iNdEx = postIndex
  4398. case 5:
  4399. if wireType != 2 {
  4400. return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType)
  4401. }
  4402. var msglen int
  4403. for shift := uint(0); ; shift += 7 {
  4404. if shift >= 64 {
  4405. return ErrIntOverflowObjects
  4406. }
  4407. if iNdEx >= l {
  4408. return io.ErrUnexpectedEOF
  4409. }
  4410. b := dAtA[iNdEx]
  4411. iNdEx++
  4412. msglen |= (int(b) & 0x7F) << shift
  4413. if b < 0x80 {
  4414. break
  4415. }
  4416. }
  4417. if msglen < 0 {
  4418. return ErrInvalidLengthObjects
  4419. }
  4420. postIndex := iNdEx + msglen
  4421. if postIndex > l {
  4422. return io.ErrUnexpectedEOF
  4423. }
  4424. if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4425. return err
  4426. }
  4427. iNdEx = postIndex
  4428. case 6:
  4429. if wireType != 2 {
  4430. return fmt.Errorf("proto: wrong wireType = %d for field ManagerStatus", wireType)
  4431. }
  4432. var msglen int
  4433. for shift := uint(0); ; shift += 7 {
  4434. if shift >= 64 {
  4435. return ErrIntOverflowObjects
  4436. }
  4437. if iNdEx >= l {
  4438. return io.ErrUnexpectedEOF
  4439. }
  4440. b := dAtA[iNdEx]
  4441. iNdEx++
  4442. msglen |= (int(b) & 0x7F) << shift
  4443. if b < 0x80 {
  4444. break
  4445. }
  4446. }
  4447. if msglen < 0 {
  4448. return ErrInvalidLengthObjects
  4449. }
  4450. postIndex := iNdEx + msglen
  4451. if postIndex > l {
  4452. return io.ErrUnexpectedEOF
  4453. }
  4454. if m.ManagerStatus == nil {
  4455. m.ManagerStatus = &ManagerStatus{}
  4456. }
  4457. if err := m.ManagerStatus.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4458. return err
  4459. }
  4460. iNdEx = postIndex
  4461. case 7:
  4462. if wireType != 2 {
  4463. return fmt.Errorf("proto: wrong wireType = %d for field Attachment", wireType)
  4464. }
  4465. var msglen int
  4466. for shift := uint(0); ; shift += 7 {
  4467. if shift >= 64 {
  4468. return ErrIntOverflowObjects
  4469. }
  4470. if iNdEx >= l {
  4471. return io.ErrUnexpectedEOF
  4472. }
  4473. b := dAtA[iNdEx]
  4474. iNdEx++
  4475. msglen |= (int(b) & 0x7F) << shift
  4476. if b < 0x80 {
  4477. break
  4478. }
  4479. }
  4480. if msglen < 0 {
  4481. return ErrInvalidLengthObjects
  4482. }
  4483. postIndex := iNdEx + msglen
  4484. if postIndex > l {
  4485. return io.ErrUnexpectedEOF
  4486. }
  4487. if m.Attachment == nil {
  4488. m.Attachment = &NetworkAttachment{}
  4489. }
  4490. if err := m.Attachment.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4491. return err
  4492. }
  4493. iNdEx = postIndex
  4494. case 8:
  4495. if wireType != 2 {
  4496. return fmt.Errorf("proto: wrong wireType = %d for field Certificate", wireType)
  4497. }
  4498. var msglen int
  4499. for shift := uint(0); ; shift += 7 {
  4500. if shift >= 64 {
  4501. return ErrIntOverflowObjects
  4502. }
  4503. if iNdEx >= l {
  4504. return io.ErrUnexpectedEOF
  4505. }
  4506. b := dAtA[iNdEx]
  4507. iNdEx++
  4508. msglen |= (int(b) & 0x7F) << shift
  4509. if b < 0x80 {
  4510. break
  4511. }
  4512. }
  4513. if msglen < 0 {
  4514. return ErrInvalidLengthObjects
  4515. }
  4516. postIndex := iNdEx + msglen
  4517. if postIndex > l {
  4518. return io.ErrUnexpectedEOF
  4519. }
  4520. if err := m.Certificate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4521. return err
  4522. }
  4523. iNdEx = postIndex
  4524. case 9:
  4525. if wireType != 0 {
  4526. return fmt.Errorf("proto: wrong wireType = %d for field Role", wireType)
  4527. }
  4528. m.Role = 0
  4529. for shift := uint(0); ; shift += 7 {
  4530. if shift >= 64 {
  4531. return ErrIntOverflowObjects
  4532. }
  4533. if iNdEx >= l {
  4534. return io.ErrUnexpectedEOF
  4535. }
  4536. b := dAtA[iNdEx]
  4537. iNdEx++
  4538. m.Role |= (NodeRole(b) & 0x7F) << shift
  4539. if b < 0x80 {
  4540. break
  4541. }
  4542. }
  4543. default:
  4544. iNdEx = preIndex
  4545. skippy, err := skipObjects(dAtA[iNdEx:])
  4546. if err != nil {
  4547. return err
  4548. }
  4549. if skippy < 0 {
  4550. return ErrInvalidLengthObjects
  4551. }
  4552. if (iNdEx + skippy) > l {
  4553. return io.ErrUnexpectedEOF
  4554. }
  4555. iNdEx += skippy
  4556. }
  4557. }
  4558. if iNdEx > l {
  4559. return io.ErrUnexpectedEOF
  4560. }
  4561. return nil
  4562. }
  4563. func (m *Service) Unmarshal(dAtA []byte) error {
  4564. l := len(dAtA)
  4565. iNdEx := 0
  4566. for iNdEx < l {
  4567. preIndex := iNdEx
  4568. var wire uint64
  4569. for shift := uint(0); ; shift += 7 {
  4570. if shift >= 64 {
  4571. return ErrIntOverflowObjects
  4572. }
  4573. if iNdEx >= l {
  4574. return io.ErrUnexpectedEOF
  4575. }
  4576. b := dAtA[iNdEx]
  4577. iNdEx++
  4578. wire |= (uint64(b) & 0x7F) << shift
  4579. if b < 0x80 {
  4580. break
  4581. }
  4582. }
  4583. fieldNum := int32(wire >> 3)
  4584. wireType := int(wire & 0x7)
  4585. if wireType == 4 {
  4586. return fmt.Errorf("proto: Service: wiretype end group for non-group")
  4587. }
  4588. if fieldNum <= 0 {
  4589. return fmt.Errorf("proto: Service: illegal tag %d (wire type %d)", fieldNum, wire)
  4590. }
  4591. switch fieldNum {
  4592. case 1:
  4593. if wireType != 2 {
  4594. return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
  4595. }
  4596. var stringLen uint64
  4597. for shift := uint(0); ; shift += 7 {
  4598. if shift >= 64 {
  4599. return ErrIntOverflowObjects
  4600. }
  4601. if iNdEx >= l {
  4602. return io.ErrUnexpectedEOF
  4603. }
  4604. b := dAtA[iNdEx]
  4605. iNdEx++
  4606. stringLen |= (uint64(b) & 0x7F) << shift
  4607. if b < 0x80 {
  4608. break
  4609. }
  4610. }
  4611. intStringLen := int(stringLen)
  4612. if intStringLen < 0 {
  4613. return ErrInvalidLengthObjects
  4614. }
  4615. postIndex := iNdEx + intStringLen
  4616. if postIndex > l {
  4617. return io.ErrUnexpectedEOF
  4618. }
  4619. m.ID = string(dAtA[iNdEx:postIndex])
  4620. iNdEx = postIndex
  4621. case 2:
  4622. if wireType != 2 {
  4623. return fmt.Errorf("proto: wrong wireType = %d for field Meta", wireType)
  4624. }
  4625. var msglen int
  4626. for shift := uint(0); ; shift += 7 {
  4627. if shift >= 64 {
  4628. return ErrIntOverflowObjects
  4629. }
  4630. if iNdEx >= l {
  4631. return io.ErrUnexpectedEOF
  4632. }
  4633. b := dAtA[iNdEx]
  4634. iNdEx++
  4635. msglen |= (int(b) & 0x7F) << shift
  4636. if b < 0x80 {
  4637. break
  4638. }
  4639. }
  4640. if msglen < 0 {
  4641. return ErrInvalidLengthObjects
  4642. }
  4643. postIndex := iNdEx + msglen
  4644. if postIndex > l {
  4645. return io.ErrUnexpectedEOF
  4646. }
  4647. if err := m.Meta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4648. return err
  4649. }
  4650. iNdEx = postIndex
  4651. case 3:
  4652. if wireType != 2 {
  4653. return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType)
  4654. }
  4655. var msglen int
  4656. for shift := uint(0); ; shift += 7 {
  4657. if shift >= 64 {
  4658. return ErrIntOverflowObjects
  4659. }
  4660. if iNdEx >= l {
  4661. return io.ErrUnexpectedEOF
  4662. }
  4663. b := dAtA[iNdEx]
  4664. iNdEx++
  4665. msglen |= (int(b) & 0x7F) << shift
  4666. if b < 0x80 {
  4667. break
  4668. }
  4669. }
  4670. if msglen < 0 {
  4671. return ErrInvalidLengthObjects
  4672. }
  4673. postIndex := iNdEx + msglen
  4674. if postIndex > l {
  4675. return io.ErrUnexpectedEOF
  4676. }
  4677. if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4678. return err
  4679. }
  4680. iNdEx = postIndex
  4681. case 4:
  4682. if wireType != 2 {
  4683. return fmt.Errorf("proto: wrong wireType = %d for field Endpoint", wireType)
  4684. }
  4685. var msglen int
  4686. for shift := uint(0); ; shift += 7 {
  4687. if shift >= 64 {
  4688. return ErrIntOverflowObjects
  4689. }
  4690. if iNdEx >= l {
  4691. return io.ErrUnexpectedEOF
  4692. }
  4693. b := dAtA[iNdEx]
  4694. iNdEx++
  4695. msglen |= (int(b) & 0x7F) << shift
  4696. if b < 0x80 {
  4697. break
  4698. }
  4699. }
  4700. if msglen < 0 {
  4701. return ErrInvalidLengthObjects
  4702. }
  4703. postIndex := iNdEx + msglen
  4704. if postIndex > l {
  4705. return io.ErrUnexpectedEOF
  4706. }
  4707. if m.Endpoint == nil {
  4708. m.Endpoint = &Endpoint{}
  4709. }
  4710. if err := m.Endpoint.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4711. return err
  4712. }
  4713. iNdEx = postIndex
  4714. case 5:
  4715. if wireType != 2 {
  4716. return fmt.Errorf("proto: wrong wireType = %d for field UpdateStatus", wireType)
  4717. }
  4718. var msglen int
  4719. for shift := uint(0); ; shift += 7 {
  4720. if shift >= 64 {
  4721. return ErrIntOverflowObjects
  4722. }
  4723. if iNdEx >= l {
  4724. return io.ErrUnexpectedEOF
  4725. }
  4726. b := dAtA[iNdEx]
  4727. iNdEx++
  4728. msglen |= (int(b) & 0x7F) << shift
  4729. if b < 0x80 {
  4730. break
  4731. }
  4732. }
  4733. if msglen < 0 {
  4734. return ErrInvalidLengthObjects
  4735. }
  4736. postIndex := iNdEx + msglen
  4737. if postIndex > l {
  4738. return io.ErrUnexpectedEOF
  4739. }
  4740. if m.UpdateStatus == nil {
  4741. m.UpdateStatus = &UpdateStatus{}
  4742. }
  4743. if err := m.UpdateStatus.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4744. return err
  4745. }
  4746. iNdEx = postIndex
  4747. case 6:
  4748. if wireType != 2 {
  4749. return fmt.Errorf("proto: wrong wireType = %d for field PreviousSpec", wireType)
  4750. }
  4751. var msglen int
  4752. for shift := uint(0); ; shift += 7 {
  4753. if shift >= 64 {
  4754. return ErrIntOverflowObjects
  4755. }
  4756. if iNdEx >= l {
  4757. return io.ErrUnexpectedEOF
  4758. }
  4759. b := dAtA[iNdEx]
  4760. iNdEx++
  4761. msglen |= (int(b) & 0x7F) << shift
  4762. if b < 0x80 {
  4763. break
  4764. }
  4765. }
  4766. if msglen < 0 {
  4767. return ErrInvalidLengthObjects
  4768. }
  4769. postIndex := iNdEx + msglen
  4770. if postIndex > l {
  4771. return io.ErrUnexpectedEOF
  4772. }
  4773. if m.PreviousSpec == nil {
  4774. m.PreviousSpec = &ServiceSpec{}
  4775. }
  4776. if err := m.PreviousSpec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4777. return err
  4778. }
  4779. iNdEx = postIndex
  4780. case 10:
  4781. if wireType != 2 {
  4782. return fmt.Errorf("proto: wrong wireType = %d for field SpecVersion", wireType)
  4783. }
  4784. var msglen int
  4785. for shift := uint(0); ; shift += 7 {
  4786. if shift >= 64 {
  4787. return ErrIntOverflowObjects
  4788. }
  4789. if iNdEx >= l {
  4790. return io.ErrUnexpectedEOF
  4791. }
  4792. b := dAtA[iNdEx]
  4793. iNdEx++
  4794. msglen |= (int(b) & 0x7F) << shift
  4795. if b < 0x80 {
  4796. break
  4797. }
  4798. }
  4799. if msglen < 0 {
  4800. return ErrInvalidLengthObjects
  4801. }
  4802. postIndex := iNdEx + msglen
  4803. if postIndex > l {
  4804. return io.ErrUnexpectedEOF
  4805. }
  4806. if m.SpecVersion == nil {
  4807. m.SpecVersion = &Version{}
  4808. }
  4809. if err := m.SpecVersion.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4810. return err
  4811. }
  4812. iNdEx = postIndex
  4813. case 11:
  4814. if wireType != 2 {
  4815. return fmt.Errorf("proto: wrong wireType = %d for field PreviousSpecVersion", wireType)
  4816. }
  4817. var msglen int
  4818. for shift := uint(0); ; shift += 7 {
  4819. if shift >= 64 {
  4820. return ErrIntOverflowObjects
  4821. }
  4822. if iNdEx >= l {
  4823. return io.ErrUnexpectedEOF
  4824. }
  4825. b := dAtA[iNdEx]
  4826. iNdEx++
  4827. msglen |= (int(b) & 0x7F) << shift
  4828. if b < 0x80 {
  4829. break
  4830. }
  4831. }
  4832. if msglen < 0 {
  4833. return ErrInvalidLengthObjects
  4834. }
  4835. postIndex := iNdEx + msglen
  4836. if postIndex > l {
  4837. return io.ErrUnexpectedEOF
  4838. }
  4839. if m.PreviousSpecVersion == nil {
  4840. m.PreviousSpecVersion = &Version{}
  4841. }
  4842. if err := m.PreviousSpecVersion.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4843. return err
  4844. }
  4845. iNdEx = postIndex
  4846. default:
  4847. iNdEx = preIndex
  4848. skippy, err := skipObjects(dAtA[iNdEx:])
  4849. if err != nil {
  4850. return err
  4851. }
  4852. if skippy < 0 {
  4853. return ErrInvalidLengthObjects
  4854. }
  4855. if (iNdEx + skippy) > l {
  4856. return io.ErrUnexpectedEOF
  4857. }
  4858. iNdEx += skippy
  4859. }
  4860. }
  4861. if iNdEx > l {
  4862. return io.ErrUnexpectedEOF
  4863. }
  4864. return nil
  4865. }
  4866. func (m *Endpoint) Unmarshal(dAtA []byte) error {
  4867. l := len(dAtA)
  4868. iNdEx := 0
  4869. for iNdEx < l {
  4870. preIndex := iNdEx
  4871. var wire uint64
  4872. for shift := uint(0); ; shift += 7 {
  4873. if shift >= 64 {
  4874. return ErrIntOverflowObjects
  4875. }
  4876. if iNdEx >= l {
  4877. return io.ErrUnexpectedEOF
  4878. }
  4879. b := dAtA[iNdEx]
  4880. iNdEx++
  4881. wire |= (uint64(b) & 0x7F) << shift
  4882. if b < 0x80 {
  4883. break
  4884. }
  4885. }
  4886. fieldNum := int32(wire >> 3)
  4887. wireType := int(wire & 0x7)
  4888. if wireType == 4 {
  4889. return fmt.Errorf("proto: Endpoint: wiretype end group for non-group")
  4890. }
  4891. if fieldNum <= 0 {
  4892. return fmt.Errorf("proto: Endpoint: illegal tag %d (wire type %d)", fieldNum, wire)
  4893. }
  4894. switch fieldNum {
  4895. case 1:
  4896. if wireType != 2 {
  4897. return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType)
  4898. }
  4899. var msglen int
  4900. for shift := uint(0); ; shift += 7 {
  4901. if shift >= 64 {
  4902. return ErrIntOverflowObjects
  4903. }
  4904. if iNdEx >= l {
  4905. return io.ErrUnexpectedEOF
  4906. }
  4907. b := dAtA[iNdEx]
  4908. iNdEx++
  4909. msglen |= (int(b) & 0x7F) << shift
  4910. if b < 0x80 {
  4911. break
  4912. }
  4913. }
  4914. if msglen < 0 {
  4915. return ErrInvalidLengthObjects
  4916. }
  4917. postIndex := iNdEx + msglen
  4918. if postIndex > l {
  4919. return io.ErrUnexpectedEOF
  4920. }
  4921. if m.Spec == nil {
  4922. m.Spec = &EndpointSpec{}
  4923. }
  4924. if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4925. return err
  4926. }
  4927. iNdEx = postIndex
  4928. case 2:
  4929. if wireType != 2 {
  4930. return fmt.Errorf("proto: wrong wireType = %d for field Ports", wireType)
  4931. }
  4932. var msglen int
  4933. for shift := uint(0); ; shift += 7 {
  4934. if shift >= 64 {
  4935. return ErrIntOverflowObjects
  4936. }
  4937. if iNdEx >= l {
  4938. return io.ErrUnexpectedEOF
  4939. }
  4940. b := dAtA[iNdEx]
  4941. iNdEx++
  4942. msglen |= (int(b) & 0x7F) << shift
  4943. if b < 0x80 {
  4944. break
  4945. }
  4946. }
  4947. if msglen < 0 {
  4948. return ErrInvalidLengthObjects
  4949. }
  4950. postIndex := iNdEx + msglen
  4951. if postIndex > l {
  4952. return io.ErrUnexpectedEOF
  4953. }
  4954. m.Ports = append(m.Ports, &PortConfig{})
  4955. if err := m.Ports[len(m.Ports)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4956. return err
  4957. }
  4958. iNdEx = postIndex
  4959. case 3:
  4960. if wireType != 2 {
  4961. return fmt.Errorf("proto: wrong wireType = %d for field VirtualIPs", wireType)
  4962. }
  4963. var msglen int
  4964. for shift := uint(0); ; shift += 7 {
  4965. if shift >= 64 {
  4966. return ErrIntOverflowObjects
  4967. }
  4968. if iNdEx >= l {
  4969. return io.ErrUnexpectedEOF
  4970. }
  4971. b := dAtA[iNdEx]
  4972. iNdEx++
  4973. msglen |= (int(b) & 0x7F) << shift
  4974. if b < 0x80 {
  4975. break
  4976. }
  4977. }
  4978. if msglen < 0 {
  4979. return ErrInvalidLengthObjects
  4980. }
  4981. postIndex := iNdEx + msglen
  4982. if postIndex > l {
  4983. return io.ErrUnexpectedEOF
  4984. }
  4985. m.VirtualIPs = append(m.VirtualIPs, &Endpoint_VirtualIP{})
  4986. if err := m.VirtualIPs[len(m.VirtualIPs)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  4987. return err
  4988. }
  4989. iNdEx = postIndex
  4990. default:
  4991. iNdEx = preIndex
  4992. skippy, err := skipObjects(dAtA[iNdEx:])
  4993. if err != nil {
  4994. return err
  4995. }
  4996. if skippy < 0 {
  4997. return ErrInvalidLengthObjects
  4998. }
  4999. if (iNdEx + skippy) > l {
  5000. return io.ErrUnexpectedEOF
  5001. }
  5002. iNdEx += skippy
  5003. }
  5004. }
  5005. if iNdEx > l {
  5006. return io.ErrUnexpectedEOF
  5007. }
  5008. return nil
  5009. }
  5010. func (m *Endpoint_VirtualIP) Unmarshal(dAtA []byte) error {
  5011. l := len(dAtA)
  5012. iNdEx := 0
  5013. for iNdEx < l {
  5014. preIndex := iNdEx
  5015. var wire uint64
  5016. for shift := uint(0); ; shift += 7 {
  5017. if shift >= 64 {
  5018. return ErrIntOverflowObjects
  5019. }
  5020. if iNdEx >= l {
  5021. return io.ErrUnexpectedEOF
  5022. }
  5023. b := dAtA[iNdEx]
  5024. iNdEx++
  5025. wire |= (uint64(b) & 0x7F) << shift
  5026. if b < 0x80 {
  5027. break
  5028. }
  5029. }
  5030. fieldNum := int32(wire >> 3)
  5031. wireType := int(wire & 0x7)
  5032. if wireType == 4 {
  5033. return fmt.Errorf("proto: VirtualIP: wiretype end group for non-group")
  5034. }
  5035. if fieldNum <= 0 {
  5036. return fmt.Errorf("proto: VirtualIP: illegal tag %d (wire type %d)", fieldNum, wire)
  5037. }
  5038. switch fieldNum {
  5039. case 1:
  5040. if wireType != 2 {
  5041. return fmt.Errorf("proto: wrong wireType = %d for field NetworkID", wireType)
  5042. }
  5043. var stringLen uint64
  5044. for shift := uint(0); ; shift += 7 {
  5045. if shift >= 64 {
  5046. return ErrIntOverflowObjects
  5047. }
  5048. if iNdEx >= l {
  5049. return io.ErrUnexpectedEOF
  5050. }
  5051. b := dAtA[iNdEx]
  5052. iNdEx++
  5053. stringLen |= (uint64(b) & 0x7F) << shift
  5054. if b < 0x80 {
  5055. break
  5056. }
  5057. }
  5058. intStringLen := int(stringLen)
  5059. if intStringLen < 0 {
  5060. return ErrInvalidLengthObjects
  5061. }
  5062. postIndex := iNdEx + intStringLen
  5063. if postIndex > l {
  5064. return io.ErrUnexpectedEOF
  5065. }
  5066. m.NetworkID = string(dAtA[iNdEx:postIndex])
  5067. iNdEx = postIndex
  5068. case 2:
  5069. if wireType != 2 {
  5070. return fmt.Errorf("proto: wrong wireType = %d for field Addr", wireType)
  5071. }
  5072. var stringLen uint64
  5073. for shift := uint(0); ; shift += 7 {
  5074. if shift >= 64 {
  5075. return ErrIntOverflowObjects
  5076. }
  5077. if iNdEx >= l {
  5078. return io.ErrUnexpectedEOF
  5079. }
  5080. b := dAtA[iNdEx]
  5081. iNdEx++
  5082. stringLen |= (uint64(b) & 0x7F) << shift
  5083. if b < 0x80 {
  5084. break
  5085. }
  5086. }
  5087. intStringLen := int(stringLen)
  5088. if intStringLen < 0 {
  5089. return ErrInvalidLengthObjects
  5090. }
  5091. postIndex := iNdEx + intStringLen
  5092. if postIndex > l {
  5093. return io.ErrUnexpectedEOF
  5094. }
  5095. m.Addr = string(dAtA[iNdEx:postIndex])
  5096. iNdEx = postIndex
  5097. default:
  5098. iNdEx = preIndex
  5099. skippy, err := skipObjects(dAtA[iNdEx:])
  5100. if err != nil {
  5101. return err
  5102. }
  5103. if skippy < 0 {
  5104. return ErrInvalidLengthObjects
  5105. }
  5106. if (iNdEx + skippy) > l {
  5107. return io.ErrUnexpectedEOF
  5108. }
  5109. iNdEx += skippy
  5110. }
  5111. }
  5112. if iNdEx > l {
  5113. return io.ErrUnexpectedEOF
  5114. }
  5115. return nil
  5116. }
  5117. func (m *Task) Unmarshal(dAtA []byte) error {
  5118. l := len(dAtA)
  5119. iNdEx := 0
  5120. for iNdEx < l {
  5121. preIndex := iNdEx
  5122. var wire uint64
  5123. for shift := uint(0); ; shift += 7 {
  5124. if shift >= 64 {
  5125. return ErrIntOverflowObjects
  5126. }
  5127. if iNdEx >= l {
  5128. return io.ErrUnexpectedEOF
  5129. }
  5130. b := dAtA[iNdEx]
  5131. iNdEx++
  5132. wire |= (uint64(b) & 0x7F) << shift
  5133. if b < 0x80 {
  5134. break
  5135. }
  5136. }
  5137. fieldNum := int32(wire >> 3)
  5138. wireType := int(wire & 0x7)
  5139. if wireType == 4 {
  5140. return fmt.Errorf("proto: Task: wiretype end group for non-group")
  5141. }
  5142. if fieldNum <= 0 {
  5143. return fmt.Errorf("proto: Task: illegal tag %d (wire type %d)", fieldNum, wire)
  5144. }
  5145. switch fieldNum {
  5146. case 1:
  5147. if wireType != 2 {
  5148. return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
  5149. }
  5150. var stringLen uint64
  5151. for shift := uint(0); ; shift += 7 {
  5152. if shift >= 64 {
  5153. return ErrIntOverflowObjects
  5154. }
  5155. if iNdEx >= l {
  5156. return io.ErrUnexpectedEOF
  5157. }
  5158. b := dAtA[iNdEx]
  5159. iNdEx++
  5160. stringLen |= (uint64(b) & 0x7F) << shift
  5161. if b < 0x80 {
  5162. break
  5163. }
  5164. }
  5165. intStringLen := int(stringLen)
  5166. if intStringLen < 0 {
  5167. return ErrInvalidLengthObjects
  5168. }
  5169. postIndex := iNdEx + intStringLen
  5170. if postIndex > l {
  5171. return io.ErrUnexpectedEOF
  5172. }
  5173. m.ID = string(dAtA[iNdEx:postIndex])
  5174. iNdEx = postIndex
  5175. case 2:
  5176. if wireType != 2 {
  5177. return fmt.Errorf("proto: wrong wireType = %d for field Meta", wireType)
  5178. }
  5179. var msglen int
  5180. for shift := uint(0); ; shift += 7 {
  5181. if shift >= 64 {
  5182. return ErrIntOverflowObjects
  5183. }
  5184. if iNdEx >= l {
  5185. return io.ErrUnexpectedEOF
  5186. }
  5187. b := dAtA[iNdEx]
  5188. iNdEx++
  5189. msglen |= (int(b) & 0x7F) << shift
  5190. if b < 0x80 {
  5191. break
  5192. }
  5193. }
  5194. if msglen < 0 {
  5195. return ErrInvalidLengthObjects
  5196. }
  5197. postIndex := iNdEx + msglen
  5198. if postIndex > l {
  5199. return io.ErrUnexpectedEOF
  5200. }
  5201. if err := m.Meta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5202. return err
  5203. }
  5204. iNdEx = postIndex
  5205. case 3:
  5206. if wireType != 2 {
  5207. return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType)
  5208. }
  5209. var msglen int
  5210. for shift := uint(0); ; shift += 7 {
  5211. if shift >= 64 {
  5212. return ErrIntOverflowObjects
  5213. }
  5214. if iNdEx >= l {
  5215. return io.ErrUnexpectedEOF
  5216. }
  5217. b := dAtA[iNdEx]
  5218. iNdEx++
  5219. msglen |= (int(b) & 0x7F) << shift
  5220. if b < 0x80 {
  5221. break
  5222. }
  5223. }
  5224. if msglen < 0 {
  5225. return ErrInvalidLengthObjects
  5226. }
  5227. postIndex := iNdEx + msglen
  5228. if postIndex > l {
  5229. return io.ErrUnexpectedEOF
  5230. }
  5231. if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5232. return err
  5233. }
  5234. iNdEx = postIndex
  5235. case 4:
  5236. if wireType != 2 {
  5237. return fmt.Errorf("proto: wrong wireType = %d for field ServiceID", wireType)
  5238. }
  5239. var stringLen uint64
  5240. for shift := uint(0); ; shift += 7 {
  5241. if shift >= 64 {
  5242. return ErrIntOverflowObjects
  5243. }
  5244. if iNdEx >= l {
  5245. return io.ErrUnexpectedEOF
  5246. }
  5247. b := dAtA[iNdEx]
  5248. iNdEx++
  5249. stringLen |= (uint64(b) & 0x7F) << shift
  5250. if b < 0x80 {
  5251. break
  5252. }
  5253. }
  5254. intStringLen := int(stringLen)
  5255. if intStringLen < 0 {
  5256. return ErrInvalidLengthObjects
  5257. }
  5258. postIndex := iNdEx + intStringLen
  5259. if postIndex > l {
  5260. return io.ErrUnexpectedEOF
  5261. }
  5262. m.ServiceID = string(dAtA[iNdEx:postIndex])
  5263. iNdEx = postIndex
  5264. case 5:
  5265. if wireType != 0 {
  5266. return fmt.Errorf("proto: wrong wireType = %d for field Slot", wireType)
  5267. }
  5268. m.Slot = 0
  5269. for shift := uint(0); ; shift += 7 {
  5270. if shift >= 64 {
  5271. return ErrIntOverflowObjects
  5272. }
  5273. if iNdEx >= l {
  5274. return io.ErrUnexpectedEOF
  5275. }
  5276. b := dAtA[iNdEx]
  5277. iNdEx++
  5278. m.Slot |= (uint64(b) & 0x7F) << shift
  5279. if b < 0x80 {
  5280. break
  5281. }
  5282. }
  5283. case 6:
  5284. if wireType != 2 {
  5285. return fmt.Errorf("proto: wrong wireType = %d for field NodeID", wireType)
  5286. }
  5287. var stringLen uint64
  5288. for shift := uint(0); ; shift += 7 {
  5289. if shift >= 64 {
  5290. return ErrIntOverflowObjects
  5291. }
  5292. if iNdEx >= l {
  5293. return io.ErrUnexpectedEOF
  5294. }
  5295. b := dAtA[iNdEx]
  5296. iNdEx++
  5297. stringLen |= (uint64(b) & 0x7F) << shift
  5298. if b < 0x80 {
  5299. break
  5300. }
  5301. }
  5302. intStringLen := int(stringLen)
  5303. if intStringLen < 0 {
  5304. return ErrInvalidLengthObjects
  5305. }
  5306. postIndex := iNdEx + intStringLen
  5307. if postIndex > l {
  5308. return io.ErrUnexpectedEOF
  5309. }
  5310. m.NodeID = string(dAtA[iNdEx:postIndex])
  5311. iNdEx = postIndex
  5312. case 7:
  5313. if wireType != 2 {
  5314. return fmt.Errorf("proto: wrong wireType = %d for field Annotations", wireType)
  5315. }
  5316. var msglen int
  5317. for shift := uint(0); ; shift += 7 {
  5318. if shift >= 64 {
  5319. return ErrIntOverflowObjects
  5320. }
  5321. if iNdEx >= l {
  5322. return io.ErrUnexpectedEOF
  5323. }
  5324. b := dAtA[iNdEx]
  5325. iNdEx++
  5326. msglen |= (int(b) & 0x7F) << shift
  5327. if b < 0x80 {
  5328. break
  5329. }
  5330. }
  5331. if msglen < 0 {
  5332. return ErrInvalidLengthObjects
  5333. }
  5334. postIndex := iNdEx + msglen
  5335. if postIndex > l {
  5336. return io.ErrUnexpectedEOF
  5337. }
  5338. if err := m.Annotations.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5339. return err
  5340. }
  5341. iNdEx = postIndex
  5342. case 8:
  5343. if wireType != 2 {
  5344. return fmt.Errorf("proto: wrong wireType = %d for field ServiceAnnotations", wireType)
  5345. }
  5346. var msglen int
  5347. for shift := uint(0); ; shift += 7 {
  5348. if shift >= 64 {
  5349. return ErrIntOverflowObjects
  5350. }
  5351. if iNdEx >= l {
  5352. return io.ErrUnexpectedEOF
  5353. }
  5354. b := dAtA[iNdEx]
  5355. iNdEx++
  5356. msglen |= (int(b) & 0x7F) << shift
  5357. if b < 0x80 {
  5358. break
  5359. }
  5360. }
  5361. if msglen < 0 {
  5362. return ErrInvalidLengthObjects
  5363. }
  5364. postIndex := iNdEx + msglen
  5365. if postIndex > l {
  5366. return io.ErrUnexpectedEOF
  5367. }
  5368. if err := m.ServiceAnnotations.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5369. return err
  5370. }
  5371. iNdEx = postIndex
  5372. case 9:
  5373. if wireType != 2 {
  5374. return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType)
  5375. }
  5376. var msglen int
  5377. for shift := uint(0); ; shift += 7 {
  5378. if shift >= 64 {
  5379. return ErrIntOverflowObjects
  5380. }
  5381. if iNdEx >= l {
  5382. return io.ErrUnexpectedEOF
  5383. }
  5384. b := dAtA[iNdEx]
  5385. iNdEx++
  5386. msglen |= (int(b) & 0x7F) << shift
  5387. if b < 0x80 {
  5388. break
  5389. }
  5390. }
  5391. if msglen < 0 {
  5392. return ErrInvalidLengthObjects
  5393. }
  5394. postIndex := iNdEx + msglen
  5395. if postIndex > l {
  5396. return io.ErrUnexpectedEOF
  5397. }
  5398. if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5399. return err
  5400. }
  5401. iNdEx = postIndex
  5402. case 10:
  5403. if wireType != 0 {
  5404. return fmt.Errorf("proto: wrong wireType = %d for field DesiredState", wireType)
  5405. }
  5406. m.DesiredState = 0
  5407. for shift := uint(0); ; shift += 7 {
  5408. if shift >= 64 {
  5409. return ErrIntOverflowObjects
  5410. }
  5411. if iNdEx >= l {
  5412. return io.ErrUnexpectedEOF
  5413. }
  5414. b := dAtA[iNdEx]
  5415. iNdEx++
  5416. m.DesiredState |= (TaskState(b) & 0x7F) << shift
  5417. if b < 0x80 {
  5418. break
  5419. }
  5420. }
  5421. case 11:
  5422. if wireType != 2 {
  5423. return fmt.Errorf("proto: wrong wireType = %d for field Networks", wireType)
  5424. }
  5425. var msglen int
  5426. for shift := uint(0); ; shift += 7 {
  5427. if shift >= 64 {
  5428. return ErrIntOverflowObjects
  5429. }
  5430. if iNdEx >= l {
  5431. return io.ErrUnexpectedEOF
  5432. }
  5433. b := dAtA[iNdEx]
  5434. iNdEx++
  5435. msglen |= (int(b) & 0x7F) << shift
  5436. if b < 0x80 {
  5437. break
  5438. }
  5439. }
  5440. if msglen < 0 {
  5441. return ErrInvalidLengthObjects
  5442. }
  5443. postIndex := iNdEx + msglen
  5444. if postIndex > l {
  5445. return io.ErrUnexpectedEOF
  5446. }
  5447. m.Networks = append(m.Networks, &NetworkAttachment{})
  5448. if err := m.Networks[len(m.Networks)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5449. return err
  5450. }
  5451. iNdEx = postIndex
  5452. case 12:
  5453. if wireType != 2 {
  5454. return fmt.Errorf("proto: wrong wireType = %d for field Endpoint", wireType)
  5455. }
  5456. var msglen int
  5457. for shift := uint(0); ; shift += 7 {
  5458. if shift >= 64 {
  5459. return ErrIntOverflowObjects
  5460. }
  5461. if iNdEx >= l {
  5462. return io.ErrUnexpectedEOF
  5463. }
  5464. b := dAtA[iNdEx]
  5465. iNdEx++
  5466. msglen |= (int(b) & 0x7F) << shift
  5467. if b < 0x80 {
  5468. break
  5469. }
  5470. }
  5471. if msglen < 0 {
  5472. return ErrInvalidLengthObjects
  5473. }
  5474. postIndex := iNdEx + msglen
  5475. if postIndex > l {
  5476. return io.ErrUnexpectedEOF
  5477. }
  5478. if m.Endpoint == nil {
  5479. m.Endpoint = &Endpoint{}
  5480. }
  5481. if err := m.Endpoint.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5482. return err
  5483. }
  5484. iNdEx = postIndex
  5485. case 13:
  5486. if wireType != 2 {
  5487. return fmt.Errorf("proto: wrong wireType = %d for field LogDriver", wireType)
  5488. }
  5489. var msglen int
  5490. for shift := uint(0); ; shift += 7 {
  5491. if shift >= 64 {
  5492. return ErrIntOverflowObjects
  5493. }
  5494. if iNdEx >= l {
  5495. return io.ErrUnexpectedEOF
  5496. }
  5497. b := dAtA[iNdEx]
  5498. iNdEx++
  5499. msglen |= (int(b) & 0x7F) << shift
  5500. if b < 0x80 {
  5501. break
  5502. }
  5503. }
  5504. if msglen < 0 {
  5505. return ErrInvalidLengthObjects
  5506. }
  5507. postIndex := iNdEx + msglen
  5508. if postIndex > l {
  5509. return io.ErrUnexpectedEOF
  5510. }
  5511. if m.LogDriver == nil {
  5512. m.LogDriver = &Driver{}
  5513. }
  5514. if err := m.LogDriver.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5515. return err
  5516. }
  5517. iNdEx = postIndex
  5518. case 14:
  5519. if wireType != 2 {
  5520. return fmt.Errorf("proto: wrong wireType = %d for field SpecVersion", wireType)
  5521. }
  5522. var msglen int
  5523. for shift := uint(0); ; shift += 7 {
  5524. if shift >= 64 {
  5525. return ErrIntOverflowObjects
  5526. }
  5527. if iNdEx >= l {
  5528. return io.ErrUnexpectedEOF
  5529. }
  5530. b := dAtA[iNdEx]
  5531. iNdEx++
  5532. msglen |= (int(b) & 0x7F) << shift
  5533. if b < 0x80 {
  5534. break
  5535. }
  5536. }
  5537. if msglen < 0 {
  5538. return ErrInvalidLengthObjects
  5539. }
  5540. postIndex := iNdEx + msglen
  5541. if postIndex > l {
  5542. return io.ErrUnexpectedEOF
  5543. }
  5544. if m.SpecVersion == nil {
  5545. m.SpecVersion = &Version{}
  5546. }
  5547. if err := m.SpecVersion.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5548. return err
  5549. }
  5550. iNdEx = postIndex
  5551. default:
  5552. iNdEx = preIndex
  5553. skippy, err := skipObjects(dAtA[iNdEx:])
  5554. if err != nil {
  5555. return err
  5556. }
  5557. if skippy < 0 {
  5558. return ErrInvalidLengthObjects
  5559. }
  5560. if (iNdEx + skippy) > l {
  5561. return io.ErrUnexpectedEOF
  5562. }
  5563. iNdEx += skippy
  5564. }
  5565. }
  5566. if iNdEx > l {
  5567. return io.ErrUnexpectedEOF
  5568. }
  5569. return nil
  5570. }
  5571. func (m *NetworkAttachment) Unmarshal(dAtA []byte) error {
  5572. l := len(dAtA)
  5573. iNdEx := 0
  5574. for iNdEx < l {
  5575. preIndex := iNdEx
  5576. var wire uint64
  5577. for shift := uint(0); ; shift += 7 {
  5578. if shift >= 64 {
  5579. return ErrIntOverflowObjects
  5580. }
  5581. if iNdEx >= l {
  5582. return io.ErrUnexpectedEOF
  5583. }
  5584. b := dAtA[iNdEx]
  5585. iNdEx++
  5586. wire |= (uint64(b) & 0x7F) << shift
  5587. if b < 0x80 {
  5588. break
  5589. }
  5590. }
  5591. fieldNum := int32(wire >> 3)
  5592. wireType := int(wire & 0x7)
  5593. if wireType == 4 {
  5594. return fmt.Errorf("proto: NetworkAttachment: wiretype end group for non-group")
  5595. }
  5596. if fieldNum <= 0 {
  5597. return fmt.Errorf("proto: NetworkAttachment: illegal tag %d (wire type %d)", fieldNum, wire)
  5598. }
  5599. switch fieldNum {
  5600. case 1:
  5601. if wireType != 2 {
  5602. return fmt.Errorf("proto: wrong wireType = %d for field Network", wireType)
  5603. }
  5604. var msglen int
  5605. for shift := uint(0); ; shift += 7 {
  5606. if shift >= 64 {
  5607. return ErrIntOverflowObjects
  5608. }
  5609. if iNdEx >= l {
  5610. return io.ErrUnexpectedEOF
  5611. }
  5612. b := dAtA[iNdEx]
  5613. iNdEx++
  5614. msglen |= (int(b) & 0x7F) << shift
  5615. if b < 0x80 {
  5616. break
  5617. }
  5618. }
  5619. if msglen < 0 {
  5620. return ErrInvalidLengthObjects
  5621. }
  5622. postIndex := iNdEx + msglen
  5623. if postIndex > l {
  5624. return io.ErrUnexpectedEOF
  5625. }
  5626. if m.Network == nil {
  5627. m.Network = &Network{}
  5628. }
  5629. if err := m.Network.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5630. return err
  5631. }
  5632. iNdEx = postIndex
  5633. case 2:
  5634. if wireType != 2 {
  5635. return fmt.Errorf("proto: wrong wireType = %d for field Addresses", wireType)
  5636. }
  5637. var stringLen uint64
  5638. for shift := uint(0); ; shift += 7 {
  5639. if shift >= 64 {
  5640. return ErrIntOverflowObjects
  5641. }
  5642. if iNdEx >= l {
  5643. return io.ErrUnexpectedEOF
  5644. }
  5645. b := dAtA[iNdEx]
  5646. iNdEx++
  5647. stringLen |= (uint64(b) & 0x7F) << shift
  5648. if b < 0x80 {
  5649. break
  5650. }
  5651. }
  5652. intStringLen := int(stringLen)
  5653. if intStringLen < 0 {
  5654. return ErrInvalidLengthObjects
  5655. }
  5656. postIndex := iNdEx + intStringLen
  5657. if postIndex > l {
  5658. return io.ErrUnexpectedEOF
  5659. }
  5660. m.Addresses = append(m.Addresses, string(dAtA[iNdEx:postIndex]))
  5661. iNdEx = postIndex
  5662. case 3:
  5663. if wireType != 2 {
  5664. return fmt.Errorf("proto: wrong wireType = %d for field Aliases", wireType)
  5665. }
  5666. var stringLen uint64
  5667. for shift := uint(0); ; shift += 7 {
  5668. if shift >= 64 {
  5669. return ErrIntOverflowObjects
  5670. }
  5671. if iNdEx >= l {
  5672. return io.ErrUnexpectedEOF
  5673. }
  5674. b := dAtA[iNdEx]
  5675. iNdEx++
  5676. stringLen |= (uint64(b) & 0x7F) << shift
  5677. if b < 0x80 {
  5678. break
  5679. }
  5680. }
  5681. intStringLen := int(stringLen)
  5682. if intStringLen < 0 {
  5683. return ErrInvalidLengthObjects
  5684. }
  5685. postIndex := iNdEx + intStringLen
  5686. if postIndex > l {
  5687. return io.ErrUnexpectedEOF
  5688. }
  5689. m.Aliases = append(m.Aliases, string(dAtA[iNdEx:postIndex]))
  5690. iNdEx = postIndex
  5691. default:
  5692. iNdEx = preIndex
  5693. skippy, err := skipObjects(dAtA[iNdEx:])
  5694. if err != nil {
  5695. return err
  5696. }
  5697. if skippy < 0 {
  5698. return ErrInvalidLengthObjects
  5699. }
  5700. if (iNdEx + skippy) > l {
  5701. return io.ErrUnexpectedEOF
  5702. }
  5703. iNdEx += skippy
  5704. }
  5705. }
  5706. if iNdEx > l {
  5707. return io.ErrUnexpectedEOF
  5708. }
  5709. return nil
  5710. }
  5711. func (m *Network) Unmarshal(dAtA []byte) error {
  5712. l := len(dAtA)
  5713. iNdEx := 0
  5714. for iNdEx < l {
  5715. preIndex := iNdEx
  5716. var wire uint64
  5717. for shift := uint(0); ; shift += 7 {
  5718. if shift >= 64 {
  5719. return ErrIntOverflowObjects
  5720. }
  5721. if iNdEx >= l {
  5722. return io.ErrUnexpectedEOF
  5723. }
  5724. b := dAtA[iNdEx]
  5725. iNdEx++
  5726. wire |= (uint64(b) & 0x7F) << shift
  5727. if b < 0x80 {
  5728. break
  5729. }
  5730. }
  5731. fieldNum := int32(wire >> 3)
  5732. wireType := int(wire & 0x7)
  5733. if wireType == 4 {
  5734. return fmt.Errorf("proto: Network: wiretype end group for non-group")
  5735. }
  5736. if fieldNum <= 0 {
  5737. return fmt.Errorf("proto: Network: illegal tag %d (wire type %d)", fieldNum, wire)
  5738. }
  5739. switch fieldNum {
  5740. case 1:
  5741. if wireType != 2 {
  5742. return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
  5743. }
  5744. var stringLen uint64
  5745. for shift := uint(0); ; shift += 7 {
  5746. if shift >= 64 {
  5747. return ErrIntOverflowObjects
  5748. }
  5749. if iNdEx >= l {
  5750. return io.ErrUnexpectedEOF
  5751. }
  5752. b := dAtA[iNdEx]
  5753. iNdEx++
  5754. stringLen |= (uint64(b) & 0x7F) << shift
  5755. if b < 0x80 {
  5756. break
  5757. }
  5758. }
  5759. intStringLen := int(stringLen)
  5760. if intStringLen < 0 {
  5761. return ErrInvalidLengthObjects
  5762. }
  5763. postIndex := iNdEx + intStringLen
  5764. if postIndex > l {
  5765. return io.ErrUnexpectedEOF
  5766. }
  5767. m.ID = string(dAtA[iNdEx:postIndex])
  5768. iNdEx = postIndex
  5769. case 2:
  5770. if wireType != 2 {
  5771. return fmt.Errorf("proto: wrong wireType = %d for field Meta", wireType)
  5772. }
  5773. var msglen int
  5774. for shift := uint(0); ; shift += 7 {
  5775. if shift >= 64 {
  5776. return ErrIntOverflowObjects
  5777. }
  5778. if iNdEx >= l {
  5779. return io.ErrUnexpectedEOF
  5780. }
  5781. b := dAtA[iNdEx]
  5782. iNdEx++
  5783. msglen |= (int(b) & 0x7F) << shift
  5784. if b < 0x80 {
  5785. break
  5786. }
  5787. }
  5788. if msglen < 0 {
  5789. return ErrInvalidLengthObjects
  5790. }
  5791. postIndex := iNdEx + msglen
  5792. if postIndex > l {
  5793. return io.ErrUnexpectedEOF
  5794. }
  5795. if err := m.Meta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5796. return err
  5797. }
  5798. iNdEx = postIndex
  5799. case 3:
  5800. if wireType != 2 {
  5801. return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType)
  5802. }
  5803. var msglen int
  5804. for shift := uint(0); ; shift += 7 {
  5805. if shift >= 64 {
  5806. return ErrIntOverflowObjects
  5807. }
  5808. if iNdEx >= l {
  5809. return io.ErrUnexpectedEOF
  5810. }
  5811. b := dAtA[iNdEx]
  5812. iNdEx++
  5813. msglen |= (int(b) & 0x7F) << shift
  5814. if b < 0x80 {
  5815. break
  5816. }
  5817. }
  5818. if msglen < 0 {
  5819. return ErrInvalidLengthObjects
  5820. }
  5821. postIndex := iNdEx + msglen
  5822. if postIndex > l {
  5823. return io.ErrUnexpectedEOF
  5824. }
  5825. if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5826. return err
  5827. }
  5828. iNdEx = postIndex
  5829. case 4:
  5830. if wireType != 2 {
  5831. return fmt.Errorf("proto: wrong wireType = %d for field DriverState", wireType)
  5832. }
  5833. var msglen int
  5834. for shift := uint(0); ; shift += 7 {
  5835. if shift >= 64 {
  5836. return ErrIntOverflowObjects
  5837. }
  5838. if iNdEx >= l {
  5839. return io.ErrUnexpectedEOF
  5840. }
  5841. b := dAtA[iNdEx]
  5842. iNdEx++
  5843. msglen |= (int(b) & 0x7F) << shift
  5844. if b < 0x80 {
  5845. break
  5846. }
  5847. }
  5848. if msglen < 0 {
  5849. return ErrInvalidLengthObjects
  5850. }
  5851. postIndex := iNdEx + msglen
  5852. if postIndex > l {
  5853. return io.ErrUnexpectedEOF
  5854. }
  5855. if m.DriverState == nil {
  5856. m.DriverState = &Driver{}
  5857. }
  5858. if err := m.DriverState.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5859. return err
  5860. }
  5861. iNdEx = postIndex
  5862. case 5:
  5863. if wireType != 2 {
  5864. return fmt.Errorf("proto: wrong wireType = %d for field IPAM", wireType)
  5865. }
  5866. var msglen int
  5867. for shift := uint(0); ; shift += 7 {
  5868. if shift >= 64 {
  5869. return ErrIntOverflowObjects
  5870. }
  5871. if iNdEx >= l {
  5872. return io.ErrUnexpectedEOF
  5873. }
  5874. b := dAtA[iNdEx]
  5875. iNdEx++
  5876. msglen |= (int(b) & 0x7F) << shift
  5877. if b < 0x80 {
  5878. break
  5879. }
  5880. }
  5881. if msglen < 0 {
  5882. return ErrInvalidLengthObjects
  5883. }
  5884. postIndex := iNdEx + msglen
  5885. if postIndex > l {
  5886. return io.ErrUnexpectedEOF
  5887. }
  5888. if m.IPAM == nil {
  5889. m.IPAM = &IPAMOptions{}
  5890. }
  5891. if err := m.IPAM.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  5892. return err
  5893. }
  5894. iNdEx = postIndex
  5895. default:
  5896. iNdEx = preIndex
  5897. skippy, err := skipObjects(dAtA[iNdEx:])
  5898. if err != nil {
  5899. return err
  5900. }
  5901. if skippy < 0 {
  5902. return ErrInvalidLengthObjects
  5903. }
  5904. if (iNdEx + skippy) > l {
  5905. return io.ErrUnexpectedEOF
  5906. }
  5907. iNdEx += skippy
  5908. }
  5909. }
  5910. if iNdEx > l {
  5911. return io.ErrUnexpectedEOF
  5912. }
  5913. return nil
  5914. }
  5915. func (m *Cluster) Unmarshal(dAtA []byte) error {
  5916. l := len(dAtA)
  5917. iNdEx := 0
  5918. for iNdEx < l {
  5919. preIndex := iNdEx
  5920. var wire uint64
  5921. for shift := uint(0); ; shift += 7 {
  5922. if shift >= 64 {
  5923. return ErrIntOverflowObjects
  5924. }
  5925. if iNdEx >= l {
  5926. return io.ErrUnexpectedEOF
  5927. }
  5928. b := dAtA[iNdEx]
  5929. iNdEx++
  5930. wire |= (uint64(b) & 0x7F) << shift
  5931. if b < 0x80 {
  5932. break
  5933. }
  5934. }
  5935. fieldNum := int32(wire >> 3)
  5936. wireType := int(wire & 0x7)
  5937. if wireType == 4 {
  5938. return fmt.Errorf("proto: Cluster: wiretype end group for non-group")
  5939. }
  5940. if fieldNum <= 0 {
  5941. return fmt.Errorf("proto: Cluster: illegal tag %d (wire type %d)", fieldNum, wire)
  5942. }
  5943. switch fieldNum {
  5944. case 1:
  5945. if wireType != 2 {
  5946. return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
  5947. }
  5948. var stringLen uint64
  5949. for shift := uint(0); ; shift += 7 {
  5950. if shift >= 64 {
  5951. return ErrIntOverflowObjects
  5952. }
  5953. if iNdEx >= l {
  5954. return io.ErrUnexpectedEOF
  5955. }
  5956. b := dAtA[iNdEx]
  5957. iNdEx++
  5958. stringLen |= (uint64(b) & 0x7F) << shift
  5959. if b < 0x80 {
  5960. break
  5961. }
  5962. }
  5963. intStringLen := int(stringLen)
  5964. if intStringLen < 0 {
  5965. return ErrInvalidLengthObjects
  5966. }
  5967. postIndex := iNdEx + intStringLen
  5968. if postIndex > l {
  5969. return io.ErrUnexpectedEOF
  5970. }
  5971. m.ID = string(dAtA[iNdEx:postIndex])
  5972. iNdEx = postIndex
  5973. case 2:
  5974. if wireType != 2 {
  5975. return fmt.Errorf("proto: wrong wireType = %d for field Meta", wireType)
  5976. }
  5977. var msglen int
  5978. for shift := uint(0); ; shift += 7 {
  5979. if shift >= 64 {
  5980. return ErrIntOverflowObjects
  5981. }
  5982. if iNdEx >= l {
  5983. return io.ErrUnexpectedEOF
  5984. }
  5985. b := dAtA[iNdEx]
  5986. iNdEx++
  5987. msglen |= (int(b) & 0x7F) << shift
  5988. if b < 0x80 {
  5989. break
  5990. }
  5991. }
  5992. if msglen < 0 {
  5993. return ErrInvalidLengthObjects
  5994. }
  5995. postIndex := iNdEx + msglen
  5996. if postIndex > l {
  5997. return io.ErrUnexpectedEOF
  5998. }
  5999. if err := m.Meta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6000. return err
  6001. }
  6002. iNdEx = postIndex
  6003. case 3:
  6004. if wireType != 2 {
  6005. return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType)
  6006. }
  6007. var msglen int
  6008. for shift := uint(0); ; shift += 7 {
  6009. if shift >= 64 {
  6010. return ErrIntOverflowObjects
  6011. }
  6012. if iNdEx >= l {
  6013. return io.ErrUnexpectedEOF
  6014. }
  6015. b := dAtA[iNdEx]
  6016. iNdEx++
  6017. msglen |= (int(b) & 0x7F) << shift
  6018. if b < 0x80 {
  6019. break
  6020. }
  6021. }
  6022. if msglen < 0 {
  6023. return ErrInvalidLengthObjects
  6024. }
  6025. postIndex := iNdEx + msglen
  6026. if postIndex > l {
  6027. return io.ErrUnexpectedEOF
  6028. }
  6029. if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6030. return err
  6031. }
  6032. iNdEx = postIndex
  6033. case 4:
  6034. if wireType != 2 {
  6035. return fmt.Errorf("proto: wrong wireType = %d for field RootCA", wireType)
  6036. }
  6037. var msglen int
  6038. for shift := uint(0); ; shift += 7 {
  6039. if shift >= 64 {
  6040. return ErrIntOverflowObjects
  6041. }
  6042. if iNdEx >= l {
  6043. return io.ErrUnexpectedEOF
  6044. }
  6045. b := dAtA[iNdEx]
  6046. iNdEx++
  6047. msglen |= (int(b) & 0x7F) << shift
  6048. if b < 0x80 {
  6049. break
  6050. }
  6051. }
  6052. if msglen < 0 {
  6053. return ErrInvalidLengthObjects
  6054. }
  6055. postIndex := iNdEx + msglen
  6056. if postIndex > l {
  6057. return io.ErrUnexpectedEOF
  6058. }
  6059. if err := m.RootCA.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6060. return err
  6061. }
  6062. iNdEx = postIndex
  6063. case 5:
  6064. if wireType != 2 {
  6065. return fmt.Errorf("proto: wrong wireType = %d for field NetworkBootstrapKeys", wireType)
  6066. }
  6067. var msglen int
  6068. for shift := uint(0); ; shift += 7 {
  6069. if shift >= 64 {
  6070. return ErrIntOverflowObjects
  6071. }
  6072. if iNdEx >= l {
  6073. return io.ErrUnexpectedEOF
  6074. }
  6075. b := dAtA[iNdEx]
  6076. iNdEx++
  6077. msglen |= (int(b) & 0x7F) << shift
  6078. if b < 0x80 {
  6079. break
  6080. }
  6081. }
  6082. if msglen < 0 {
  6083. return ErrInvalidLengthObjects
  6084. }
  6085. postIndex := iNdEx + msglen
  6086. if postIndex > l {
  6087. return io.ErrUnexpectedEOF
  6088. }
  6089. m.NetworkBootstrapKeys = append(m.NetworkBootstrapKeys, &EncryptionKey{})
  6090. if err := m.NetworkBootstrapKeys[len(m.NetworkBootstrapKeys)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6091. return err
  6092. }
  6093. iNdEx = postIndex
  6094. case 6:
  6095. if wireType != 0 {
  6096. return fmt.Errorf("proto: wrong wireType = %d for field EncryptionKeyLamportClock", wireType)
  6097. }
  6098. m.EncryptionKeyLamportClock = 0
  6099. for shift := uint(0); ; shift += 7 {
  6100. if shift >= 64 {
  6101. return ErrIntOverflowObjects
  6102. }
  6103. if iNdEx >= l {
  6104. return io.ErrUnexpectedEOF
  6105. }
  6106. b := dAtA[iNdEx]
  6107. iNdEx++
  6108. m.EncryptionKeyLamportClock |= (uint64(b) & 0x7F) << shift
  6109. if b < 0x80 {
  6110. break
  6111. }
  6112. }
  6113. case 8:
  6114. if wireType != 2 {
  6115. return fmt.Errorf("proto: wrong wireType = %d for field BlacklistedCertificates", wireType)
  6116. }
  6117. var msglen int
  6118. for shift := uint(0); ; shift += 7 {
  6119. if shift >= 64 {
  6120. return ErrIntOverflowObjects
  6121. }
  6122. if iNdEx >= l {
  6123. return io.ErrUnexpectedEOF
  6124. }
  6125. b := dAtA[iNdEx]
  6126. iNdEx++
  6127. msglen |= (int(b) & 0x7F) << shift
  6128. if b < 0x80 {
  6129. break
  6130. }
  6131. }
  6132. if msglen < 0 {
  6133. return ErrInvalidLengthObjects
  6134. }
  6135. postIndex := iNdEx + msglen
  6136. if postIndex > l {
  6137. return io.ErrUnexpectedEOF
  6138. }
  6139. var keykey uint64
  6140. for shift := uint(0); ; shift += 7 {
  6141. if shift >= 64 {
  6142. return ErrIntOverflowObjects
  6143. }
  6144. if iNdEx >= l {
  6145. return io.ErrUnexpectedEOF
  6146. }
  6147. b := dAtA[iNdEx]
  6148. iNdEx++
  6149. keykey |= (uint64(b) & 0x7F) << shift
  6150. if b < 0x80 {
  6151. break
  6152. }
  6153. }
  6154. var stringLenmapkey uint64
  6155. for shift := uint(0); ; shift += 7 {
  6156. if shift >= 64 {
  6157. return ErrIntOverflowObjects
  6158. }
  6159. if iNdEx >= l {
  6160. return io.ErrUnexpectedEOF
  6161. }
  6162. b := dAtA[iNdEx]
  6163. iNdEx++
  6164. stringLenmapkey |= (uint64(b) & 0x7F) << shift
  6165. if b < 0x80 {
  6166. break
  6167. }
  6168. }
  6169. intStringLenmapkey := int(stringLenmapkey)
  6170. if intStringLenmapkey < 0 {
  6171. return ErrInvalidLengthObjects
  6172. }
  6173. postStringIndexmapkey := iNdEx + intStringLenmapkey
  6174. if postStringIndexmapkey > l {
  6175. return io.ErrUnexpectedEOF
  6176. }
  6177. mapkey := string(dAtA[iNdEx:postStringIndexmapkey])
  6178. iNdEx = postStringIndexmapkey
  6179. if m.BlacklistedCertificates == nil {
  6180. m.BlacklistedCertificates = make(map[string]*BlacklistedCertificate)
  6181. }
  6182. if iNdEx < postIndex {
  6183. var valuekey uint64
  6184. for shift := uint(0); ; shift += 7 {
  6185. if shift >= 64 {
  6186. return ErrIntOverflowObjects
  6187. }
  6188. if iNdEx >= l {
  6189. return io.ErrUnexpectedEOF
  6190. }
  6191. b := dAtA[iNdEx]
  6192. iNdEx++
  6193. valuekey |= (uint64(b) & 0x7F) << shift
  6194. if b < 0x80 {
  6195. break
  6196. }
  6197. }
  6198. var mapmsglen int
  6199. for shift := uint(0); ; shift += 7 {
  6200. if shift >= 64 {
  6201. return ErrIntOverflowObjects
  6202. }
  6203. if iNdEx >= l {
  6204. return io.ErrUnexpectedEOF
  6205. }
  6206. b := dAtA[iNdEx]
  6207. iNdEx++
  6208. mapmsglen |= (int(b) & 0x7F) << shift
  6209. if b < 0x80 {
  6210. break
  6211. }
  6212. }
  6213. if mapmsglen < 0 {
  6214. return ErrInvalidLengthObjects
  6215. }
  6216. postmsgIndex := iNdEx + mapmsglen
  6217. if mapmsglen < 0 {
  6218. return ErrInvalidLengthObjects
  6219. }
  6220. if postmsgIndex > l {
  6221. return io.ErrUnexpectedEOF
  6222. }
  6223. mapvalue := &BlacklistedCertificate{}
  6224. if err := mapvalue.Unmarshal(dAtA[iNdEx:postmsgIndex]); err != nil {
  6225. return err
  6226. }
  6227. iNdEx = postmsgIndex
  6228. m.BlacklistedCertificates[mapkey] = mapvalue
  6229. } else {
  6230. var mapvalue *BlacklistedCertificate
  6231. m.BlacklistedCertificates[mapkey] = mapvalue
  6232. }
  6233. iNdEx = postIndex
  6234. case 9:
  6235. if wireType != 2 {
  6236. return fmt.Errorf("proto: wrong wireType = %d for field UnlockKeys", wireType)
  6237. }
  6238. var msglen int
  6239. for shift := uint(0); ; shift += 7 {
  6240. if shift >= 64 {
  6241. return ErrIntOverflowObjects
  6242. }
  6243. if iNdEx >= l {
  6244. return io.ErrUnexpectedEOF
  6245. }
  6246. b := dAtA[iNdEx]
  6247. iNdEx++
  6248. msglen |= (int(b) & 0x7F) << shift
  6249. if b < 0x80 {
  6250. break
  6251. }
  6252. }
  6253. if msglen < 0 {
  6254. return ErrInvalidLengthObjects
  6255. }
  6256. postIndex := iNdEx + msglen
  6257. if postIndex > l {
  6258. return io.ErrUnexpectedEOF
  6259. }
  6260. m.UnlockKeys = append(m.UnlockKeys, &EncryptionKey{})
  6261. if err := m.UnlockKeys[len(m.UnlockKeys)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6262. return err
  6263. }
  6264. iNdEx = postIndex
  6265. default:
  6266. iNdEx = preIndex
  6267. skippy, err := skipObjects(dAtA[iNdEx:])
  6268. if err != nil {
  6269. return err
  6270. }
  6271. if skippy < 0 {
  6272. return ErrInvalidLengthObjects
  6273. }
  6274. if (iNdEx + skippy) > l {
  6275. return io.ErrUnexpectedEOF
  6276. }
  6277. iNdEx += skippy
  6278. }
  6279. }
  6280. if iNdEx > l {
  6281. return io.ErrUnexpectedEOF
  6282. }
  6283. return nil
  6284. }
  6285. func (m *Secret) Unmarshal(dAtA []byte) error {
  6286. l := len(dAtA)
  6287. iNdEx := 0
  6288. for iNdEx < l {
  6289. preIndex := iNdEx
  6290. var wire uint64
  6291. for shift := uint(0); ; shift += 7 {
  6292. if shift >= 64 {
  6293. return ErrIntOverflowObjects
  6294. }
  6295. if iNdEx >= l {
  6296. return io.ErrUnexpectedEOF
  6297. }
  6298. b := dAtA[iNdEx]
  6299. iNdEx++
  6300. wire |= (uint64(b) & 0x7F) << shift
  6301. if b < 0x80 {
  6302. break
  6303. }
  6304. }
  6305. fieldNum := int32(wire >> 3)
  6306. wireType := int(wire & 0x7)
  6307. if wireType == 4 {
  6308. return fmt.Errorf("proto: Secret: wiretype end group for non-group")
  6309. }
  6310. if fieldNum <= 0 {
  6311. return fmt.Errorf("proto: Secret: illegal tag %d (wire type %d)", fieldNum, wire)
  6312. }
  6313. switch fieldNum {
  6314. case 1:
  6315. if wireType != 2 {
  6316. return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
  6317. }
  6318. var stringLen uint64
  6319. for shift := uint(0); ; shift += 7 {
  6320. if shift >= 64 {
  6321. return ErrIntOverflowObjects
  6322. }
  6323. if iNdEx >= l {
  6324. return io.ErrUnexpectedEOF
  6325. }
  6326. b := dAtA[iNdEx]
  6327. iNdEx++
  6328. stringLen |= (uint64(b) & 0x7F) << shift
  6329. if b < 0x80 {
  6330. break
  6331. }
  6332. }
  6333. intStringLen := int(stringLen)
  6334. if intStringLen < 0 {
  6335. return ErrInvalidLengthObjects
  6336. }
  6337. postIndex := iNdEx + intStringLen
  6338. if postIndex > l {
  6339. return io.ErrUnexpectedEOF
  6340. }
  6341. m.ID = string(dAtA[iNdEx:postIndex])
  6342. iNdEx = postIndex
  6343. case 2:
  6344. if wireType != 2 {
  6345. return fmt.Errorf("proto: wrong wireType = %d for field Meta", wireType)
  6346. }
  6347. var msglen int
  6348. for shift := uint(0); ; shift += 7 {
  6349. if shift >= 64 {
  6350. return ErrIntOverflowObjects
  6351. }
  6352. if iNdEx >= l {
  6353. return io.ErrUnexpectedEOF
  6354. }
  6355. b := dAtA[iNdEx]
  6356. iNdEx++
  6357. msglen |= (int(b) & 0x7F) << shift
  6358. if b < 0x80 {
  6359. break
  6360. }
  6361. }
  6362. if msglen < 0 {
  6363. return ErrInvalidLengthObjects
  6364. }
  6365. postIndex := iNdEx + msglen
  6366. if postIndex > l {
  6367. return io.ErrUnexpectedEOF
  6368. }
  6369. if err := m.Meta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6370. return err
  6371. }
  6372. iNdEx = postIndex
  6373. case 3:
  6374. if wireType != 2 {
  6375. return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType)
  6376. }
  6377. var msglen int
  6378. for shift := uint(0); ; shift += 7 {
  6379. if shift >= 64 {
  6380. return ErrIntOverflowObjects
  6381. }
  6382. if iNdEx >= l {
  6383. return io.ErrUnexpectedEOF
  6384. }
  6385. b := dAtA[iNdEx]
  6386. iNdEx++
  6387. msglen |= (int(b) & 0x7F) << shift
  6388. if b < 0x80 {
  6389. break
  6390. }
  6391. }
  6392. if msglen < 0 {
  6393. return ErrInvalidLengthObjects
  6394. }
  6395. postIndex := iNdEx + msglen
  6396. if postIndex > l {
  6397. return io.ErrUnexpectedEOF
  6398. }
  6399. if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6400. return err
  6401. }
  6402. iNdEx = postIndex
  6403. case 4:
  6404. if wireType != 0 {
  6405. return fmt.Errorf("proto: wrong wireType = %d for field Internal", wireType)
  6406. }
  6407. var v int
  6408. for shift := uint(0); ; shift += 7 {
  6409. if shift >= 64 {
  6410. return ErrIntOverflowObjects
  6411. }
  6412. if iNdEx >= l {
  6413. return io.ErrUnexpectedEOF
  6414. }
  6415. b := dAtA[iNdEx]
  6416. iNdEx++
  6417. v |= (int(b) & 0x7F) << shift
  6418. if b < 0x80 {
  6419. break
  6420. }
  6421. }
  6422. m.Internal = bool(v != 0)
  6423. default:
  6424. iNdEx = preIndex
  6425. skippy, err := skipObjects(dAtA[iNdEx:])
  6426. if err != nil {
  6427. return err
  6428. }
  6429. if skippy < 0 {
  6430. return ErrInvalidLengthObjects
  6431. }
  6432. if (iNdEx + skippy) > l {
  6433. return io.ErrUnexpectedEOF
  6434. }
  6435. iNdEx += skippy
  6436. }
  6437. }
  6438. if iNdEx > l {
  6439. return io.ErrUnexpectedEOF
  6440. }
  6441. return nil
  6442. }
  6443. func (m *Config) Unmarshal(dAtA []byte) error {
  6444. l := len(dAtA)
  6445. iNdEx := 0
  6446. for iNdEx < l {
  6447. preIndex := iNdEx
  6448. var wire uint64
  6449. for shift := uint(0); ; shift += 7 {
  6450. if shift >= 64 {
  6451. return ErrIntOverflowObjects
  6452. }
  6453. if iNdEx >= l {
  6454. return io.ErrUnexpectedEOF
  6455. }
  6456. b := dAtA[iNdEx]
  6457. iNdEx++
  6458. wire |= (uint64(b) & 0x7F) << shift
  6459. if b < 0x80 {
  6460. break
  6461. }
  6462. }
  6463. fieldNum := int32(wire >> 3)
  6464. wireType := int(wire & 0x7)
  6465. if wireType == 4 {
  6466. return fmt.Errorf("proto: Config: wiretype end group for non-group")
  6467. }
  6468. if fieldNum <= 0 {
  6469. return fmt.Errorf("proto: Config: illegal tag %d (wire type %d)", fieldNum, wire)
  6470. }
  6471. switch fieldNum {
  6472. case 1:
  6473. if wireType != 2 {
  6474. return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
  6475. }
  6476. var stringLen uint64
  6477. for shift := uint(0); ; shift += 7 {
  6478. if shift >= 64 {
  6479. return ErrIntOverflowObjects
  6480. }
  6481. if iNdEx >= l {
  6482. return io.ErrUnexpectedEOF
  6483. }
  6484. b := dAtA[iNdEx]
  6485. iNdEx++
  6486. stringLen |= (uint64(b) & 0x7F) << shift
  6487. if b < 0x80 {
  6488. break
  6489. }
  6490. }
  6491. intStringLen := int(stringLen)
  6492. if intStringLen < 0 {
  6493. return ErrInvalidLengthObjects
  6494. }
  6495. postIndex := iNdEx + intStringLen
  6496. if postIndex > l {
  6497. return io.ErrUnexpectedEOF
  6498. }
  6499. m.ID = string(dAtA[iNdEx:postIndex])
  6500. iNdEx = postIndex
  6501. case 2:
  6502. if wireType != 2 {
  6503. return fmt.Errorf("proto: wrong wireType = %d for field Meta", wireType)
  6504. }
  6505. var msglen int
  6506. for shift := uint(0); ; shift += 7 {
  6507. if shift >= 64 {
  6508. return ErrIntOverflowObjects
  6509. }
  6510. if iNdEx >= l {
  6511. return io.ErrUnexpectedEOF
  6512. }
  6513. b := dAtA[iNdEx]
  6514. iNdEx++
  6515. msglen |= (int(b) & 0x7F) << shift
  6516. if b < 0x80 {
  6517. break
  6518. }
  6519. }
  6520. if msglen < 0 {
  6521. return ErrInvalidLengthObjects
  6522. }
  6523. postIndex := iNdEx + msglen
  6524. if postIndex > l {
  6525. return io.ErrUnexpectedEOF
  6526. }
  6527. if err := m.Meta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6528. return err
  6529. }
  6530. iNdEx = postIndex
  6531. case 3:
  6532. if wireType != 2 {
  6533. return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType)
  6534. }
  6535. var msglen int
  6536. for shift := uint(0); ; shift += 7 {
  6537. if shift >= 64 {
  6538. return ErrIntOverflowObjects
  6539. }
  6540. if iNdEx >= l {
  6541. return io.ErrUnexpectedEOF
  6542. }
  6543. b := dAtA[iNdEx]
  6544. iNdEx++
  6545. msglen |= (int(b) & 0x7F) << shift
  6546. if b < 0x80 {
  6547. break
  6548. }
  6549. }
  6550. if msglen < 0 {
  6551. return ErrInvalidLengthObjects
  6552. }
  6553. postIndex := iNdEx + msglen
  6554. if postIndex > l {
  6555. return io.ErrUnexpectedEOF
  6556. }
  6557. if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6558. return err
  6559. }
  6560. iNdEx = postIndex
  6561. default:
  6562. iNdEx = preIndex
  6563. skippy, err := skipObjects(dAtA[iNdEx:])
  6564. if err != nil {
  6565. return err
  6566. }
  6567. if skippy < 0 {
  6568. return ErrInvalidLengthObjects
  6569. }
  6570. if (iNdEx + skippy) > l {
  6571. return io.ErrUnexpectedEOF
  6572. }
  6573. iNdEx += skippy
  6574. }
  6575. }
  6576. if iNdEx > l {
  6577. return io.ErrUnexpectedEOF
  6578. }
  6579. return nil
  6580. }
  6581. func (m *Resource) Unmarshal(dAtA []byte) error {
  6582. l := len(dAtA)
  6583. iNdEx := 0
  6584. for iNdEx < l {
  6585. preIndex := iNdEx
  6586. var wire uint64
  6587. for shift := uint(0); ; shift += 7 {
  6588. if shift >= 64 {
  6589. return ErrIntOverflowObjects
  6590. }
  6591. if iNdEx >= l {
  6592. return io.ErrUnexpectedEOF
  6593. }
  6594. b := dAtA[iNdEx]
  6595. iNdEx++
  6596. wire |= (uint64(b) & 0x7F) << shift
  6597. if b < 0x80 {
  6598. break
  6599. }
  6600. }
  6601. fieldNum := int32(wire >> 3)
  6602. wireType := int(wire & 0x7)
  6603. if wireType == 4 {
  6604. return fmt.Errorf("proto: Resource: wiretype end group for non-group")
  6605. }
  6606. if fieldNum <= 0 {
  6607. return fmt.Errorf("proto: Resource: illegal tag %d (wire type %d)", fieldNum, wire)
  6608. }
  6609. switch fieldNum {
  6610. case 1:
  6611. if wireType != 2 {
  6612. return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
  6613. }
  6614. var stringLen uint64
  6615. for shift := uint(0); ; shift += 7 {
  6616. if shift >= 64 {
  6617. return ErrIntOverflowObjects
  6618. }
  6619. if iNdEx >= l {
  6620. return io.ErrUnexpectedEOF
  6621. }
  6622. b := dAtA[iNdEx]
  6623. iNdEx++
  6624. stringLen |= (uint64(b) & 0x7F) << shift
  6625. if b < 0x80 {
  6626. break
  6627. }
  6628. }
  6629. intStringLen := int(stringLen)
  6630. if intStringLen < 0 {
  6631. return ErrInvalidLengthObjects
  6632. }
  6633. postIndex := iNdEx + intStringLen
  6634. if postIndex > l {
  6635. return io.ErrUnexpectedEOF
  6636. }
  6637. m.ID = string(dAtA[iNdEx:postIndex])
  6638. iNdEx = postIndex
  6639. case 2:
  6640. if wireType != 2 {
  6641. return fmt.Errorf("proto: wrong wireType = %d for field Meta", wireType)
  6642. }
  6643. var msglen int
  6644. for shift := uint(0); ; shift += 7 {
  6645. if shift >= 64 {
  6646. return ErrIntOverflowObjects
  6647. }
  6648. if iNdEx >= l {
  6649. return io.ErrUnexpectedEOF
  6650. }
  6651. b := dAtA[iNdEx]
  6652. iNdEx++
  6653. msglen |= (int(b) & 0x7F) << shift
  6654. if b < 0x80 {
  6655. break
  6656. }
  6657. }
  6658. if msglen < 0 {
  6659. return ErrInvalidLengthObjects
  6660. }
  6661. postIndex := iNdEx + msglen
  6662. if postIndex > l {
  6663. return io.ErrUnexpectedEOF
  6664. }
  6665. if err := m.Meta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6666. return err
  6667. }
  6668. iNdEx = postIndex
  6669. case 3:
  6670. if wireType != 2 {
  6671. return fmt.Errorf("proto: wrong wireType = %d for field Annotations", wireType)
  6672. }
  6673. var msglen int
  6674. for shift := uint(0); ; shift += 7 {
  6675. if shift >= 64 {
  6676. return ErrIntOverflowObjects
  6677. }
  6678. if iNdEx >= l {
  6679. return io.ErrUnexpectedEOF
  6680. }
  6681. b := dAtA[iNdEx]
  6682. iNdEx++
  6683. msglen |= (int(b) & 0x7F) << shift
  6684. if b < 0x80 {
  6685. break
  6686. }
  6687. }
  6688. if msglen < 0 {
  6689. return ErrInvalidLengthObjects
  6690. }
  6691. postIndex := iNdEx + msglen
  6692. if postIndex > l {
  6693. return io.ErrUnexpectedEOF
  6694. }
  6695. if err := m.Annotations.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6696. return err
  6697. }
  6698. iNdEx = postIndex
  6699. case 4:
  6700. if wireType != 2 {
  6701. return fmt.Errorf("proto: wrong wireType = %d for field Kind", wireType)
  6702. }
  6703. var stringLen uint64
  6704. for shift := uint(0); ; shift += 7 {
  6705. if shift >= 64 {
  6706. return ErrIntOverflowObjects
  6707. }
  6708. if iNdEx >= l {
  6709. return io.ErrUnexpectedEOF
  6710. }
  6711. b := dAtA[iNdEx]
  6712. iNdEx++
  6713. stringLen |= (uint64(b) & 0x7F) << shift
  6714. if b < 0x80 {
  6715. break
  6716. }
  6717. }
  6718. intStringLen := int(stringLen)
  6719. if intStringLen < 0 {
  6720. return ErrInvalidLengthObjects
  6721. }
  6722. postIndex := iNdEx + intStringLen
  6723. if postIndex > l {
  6724. return io.ErrUnexpectedEOF
  6725. }
  6726. m.Kind = string(dAtA[iNdEx:postIndex])
  6727. iNdEx = postIndex
  6728. case 5:
  6729. if wireType != 2 {
  6730. return fmt.Errorf("proto: wrong wireType = %d for field Payload", wireType)
  6731. }
  6732. var msglen int
  6733. for shift := uint(0); ; shift += 7 {
  6734. if shift >= 64 {
  6735. return ErrIntOverflowObjects
  6736. }
  6737. if iNdEx >= l {
  6738. return io.ErrUnexpectedEOF
  6739. }
  6740. b := dAtA[iNdEx]
  6741. iNdEx++
  6742. msglen |= (int(b) & 0x7F) << shift
  6743. if b < 0x80 {
  6744. break
  6745. }
  6746. }
  6747. if msglen < 0 {
  6748. return ErrInvalidLengthObjects
  6749. }
  6750. postIndex := iNdEx + msglen
  6751. if postIndex > l {
  6752. return io.ErrUnexpectedEOF
  6753. }
  6754. if m.Payload == nil {
  6755. m.Payload = &google_protobuf3.Any{}
  6756. }
  6757. if err := m.Payload.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6758. return err
  6759. }
  6760. iNdEx = postIndex
  6761. default:
  6762. iNdEx = preIndex
  6763. skippy, err := skipObjects(dAtA[iNdEx:])
  6764. if err != nil {
  6765. return err
  6766. }
  6767. if skippy < 0 {
  6768. return ErrInvalidLengthObjects
  6769. }
  6770. if (iNdEx + skippy) > l {
  6771. return io.ErrUnexpectedEOF
  6772. }
  6773. iNdEx += skippy
  6774. }
  6775. }
  6776. if iNdEx > l {
  6777. return io.ErrUnexpectedEOF
  6778. }
  6779. return nil
  6780. }
  6781. func (m *Extension) Unmarshal(dAtA []byte) error {
  6782. l := len(dAtA)
  6783. iNdEx := 0
  6784. for iNdEx < l {
  6785. preIndex := iNdEx
  6786. var wire uint64
  6787. for shift := uint(0); ; shift += 7 {
  6788. if shift >= 64 {
  6789. return ErrIntOverflowObjects
  6790. }
  6791. if iNdEx >= l {
  6792. return io.ErrUnexpectedEOF
  6793. }
  6794. b := dAtA[iNdEx]
  6795. iNdEx++
  6796. wire |= (uint64(b) & 0x7F) << shift
  6797. if b < 0x80 {
  6798. break
  6799. }
  6800. }
  6801. fieldNum := int32(wire >> 3)
  6802. wireType := int(wire & 0x7)
  6803. if wireType == 4 {
  6804. return fmt.Errorf("proto: Extension: wiretype end group for non-group")
  6805. }
  6806. if fieldNum <= 0 {
  6807. return fmt.Errorf("proto: Extension: illegal tag %d (wire type %d)", fieldNum, wire)
  6808. }
  6809. switch fieldNum {
  6810. case 1:
  6811. if wireType != 2 {
  6812. return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType)
  6813. }
  6814. var stringLen uint64
  6815. for shift := uint(0); ; shift += 7 {
  6816. if shift >= 64 {
  6817. return ErrIntOverflowObjects
  6818. }
  6819. if iNdEx >= l {
  6820. return io.ErrUnexpectedEOF
  6821. }
  6822. b := dAtA[iNdEx]
  6823. iNdEx++
  6824. stringLen |= (uint64(b) & 0x7F) << shift
  6825. if b < 0x80 {
  6826. break
  6827. }
  6828. }
  6829. intStringLen := int(stringLen)
  6830. if intStringLen < 0 {
  6831. return ErrInvalidLengthObjects
  6832. }
  6833. postIndex := iNdEx + intStringLen
  6834. if postIndex > l {
  6835. return io.ErrUnexpectedEOF
  6836. }
  6837. m.ID = string(dAtA[iNdEx:postIndex])
  6838. iNdEx = postIndex
  6839. case 2:
  6840. if wireType != 2 {
  6841. return fmt.Errorf("proto: wrong wireType = %d for field Meta", wireType)
  6842. }
  6843. var msglen int
  6844. for shift := uint(0); ; shift += 7 {
  6845. if shift >= 64 {
  6846. return ErrIntOverflowObjects
  6847. }
  6848. if iNdEx >= l {
  6849. return io.ErrUnexpectedEOF
  6850. }
  6851. b := dAtA[iNdEx]
  6852. iNdEx++
  6853. msglen |= (int(b) & 0x7F) << shift
  6854. if b < 0x80 {
  6855. break
  6856. }
  6857. }
  6858. if msglen < 0 {
  6859. return ErrInvalidLengthObjects
  6860. }
  6861. postIndex := iNdEx + msglen
  6862. if postIndex > l {
  6863. return io.ErrUnexpectedEOF
  6864. }
  6865. if err := m.Meta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6866. return err
  6867. }
  6868. iNdEx = postIndex
  6869. case 3:
  6870. if wireType != 2 {
  6871. return fmt.Errorf("proto: wrong wireType = %d for field Annotations", wireType)
  6872. }
  6873. var msglen int
  6874. for shift := uint(0); ; shift += 7 {
  6875. if shift >= 64 {
  6876. return ErrIntOverflowObjects
  6877. }
  6878. if iNdEx >= l {
  6879. return io.ErrUnexpectedEOF
  6880. }
  6881. b := dAtA[iNdEx]
  6882. iNdEx++
  6883. msglen |= (int(b) & 0x7F) << shift
  6884. if b < 0x80 {
  6885. break
  6886. }
  6887. }
  6888. if msglen < 0 {
  6889. return ErrInvalidLengthObjects
  6890. }
  6891. postIndex := iNdEx + msglen
  6892. if postIndex > l {
  6893. return io.ErrUnexpectedEOF
  6894. }
  6895. if err := m.Annotations.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
  6896. return err
  6897. }
  6898. iNdEx = postIndex
  6899. case 4:
  6900. if wireType != 2 {
  6901. return fmt.Errorf("proto: wrong wireType = %d for field Description", wireType)
  6902. }
  6903. var stringLen uint64
  6904. for shift := uint(0); ; shift += 7 {
  6905. if shift >= 64 {
  6906. return ErrIntOverflowObjects
  6907. }
  6908. if iNdEx >= l {
  6909. return io.ErrUnexpectedEOF
  6910. }
  6911. b := dAtA[iNdEx]
  6912. iNdEx++
  6913. stringLen |= (uint64(b) & 0x7F) << shift
  6914. if b < 0x80 {
  6915. break
  6916. }
  6917. }
  6918. intStringLen := int(stringLen)
  6919. if intStringLen < 0 {
  6920. return ErrInvalidLengthObjects
  6921. }
  6922. postIndex := iNdEx + intStringLen
  6923. if postIndex > l {
  6924. return io.ErrUnexpectedEOF
  6925. }
  6926. m.Description = string(dAtA[iNdEx:postIndex])
  6927. iNdEx = postIndex
  6928. default:
  6929. iNdEx = preIndex
  6930. skippy, err := skipObjects(dAtA[iNdEx:])
  6931. if err != nil {
  6932. return err
  6933. }
  6934. if skippy < 0 {
  6935. return ErrInvalidLengthObjects
  6936. }
  6937. if (iNdEx + skippy) > l {
  6938. return io.ErrUnexpectedEOF
  6939. }
  6940. iNdEx += skippy
  6941. }
  6942. }
  6943. if iNdEx > l {
  6944. return io.ErrUnexpectedEOF
  6945. }
  6946. return nil
  6947. }
  6948. func skipObjects(dAtA []byte) (n int, err error) {
  6949. l := len(dAtA)
  6950. iNdEx := 0
  6951. for iNdEx < l {
  6952. var wire uint64
  6953. for shift := uint(0); ; shift += 7 {
  6954. if shift >= 64 {
  6955. return 0, ErrIntOverflowObjects
  6956. }
  6957. if iNdEx >= l {
  6958. return 0, io.ErrUnexpectedEOF
  6959. }
  6960. b := dAtA[iNdEx]
  6961. iNdEx++
  6962. wire |= (uint64(b) & 0x7F) << shift
  6963. if b < 0x80 {
  6964. break
  6965. }
  6966. }
  6967. wireType := int(wire & 0x7)
  6968. switch wireType {
  6969. case 0:
  6970. for shift := uint(0); ; shift += 7 {
  6971. if shift >= 64 {
  6972. return 0, ErrIntOverflowObjects
  6973. }
  6974. if iNdEx >= l {
  6975. return 0, io.ErrUnexpectedEOF
  6976. }
  6977. iNdEx++
  6978. if dAtA[iNdEx-1] < 0x80 {
  6979. break
  6980. }
  6981. }
  6982. return iNdEx, nil
  6983. case 1:
  6984. iNdEx += 8
  6985. return iNdEx, nil
  6986. case 2:
  6987. var length int
  6988. for shift := uint(0); ; shift += 7 {
  6989. if shift >= 64 {
  6990. return 0, ErrIntOverflowObjects
  6991. }
  6992. if iNdEx >= l {
  6993. return 0, io.ErrUnexpectedEOF
  6994. }
  6995. b := dAtA[iNdEx]
  6996. iNdEx++
  6997. length |= (int(b) & 0x7F) << shift
  6998. if b < 0x80 {
  6999. break
  7000. }
  7001. }
  7002. iNdEx += length
  7003. if length < 0 {
  7004. return 0, ErrInvalidLengthObjects
  7005. }
  7006. return iNdEx, nil
  7007. case 3:
  7008. for {
  7009. var innerWire uint64
  7010. var start int = iNdEx
  7011. for shift := uint(0); ; shift += 7 {
  7012. if shift >= 64 {
  7013. return 0, ErrIntOverflowObjects
  7014. }
  7015. if iNdEx >= l {
  7016. return 0, io.ErrUnexpectedEOF
  7017. }
  7018. b := dAtA[iNdEx]
  7019. iNdEx++
  7020. innerWire |= (uint64(b) & 0x7F) << shift
  7021. if b < 0x80 {
  7022. break
  7023. }
  7024. }
  7025. innerWireType := int(innerWire & 0x7)
  7026. if innerWireType == 4 {
  7027. break
  7028. }
  7029. next, err := skipObjects(dAtA[start:])
  7030. if err != nil {
  7031. return 0, err
  7032. }
  7033. iNdEx = start + next
  7034. }
  7035. return iNdEx, nil
  7036. case 4:
  7037. return iNdEx, nil
  7038. case 5:
  7039. iNdEx += 4
  7040. return iNdEx, nil
  7041. default:
  7042. return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
  7043. }
  7044. }
  7045. panic("unreachable")
  7046. }
  7047. var (
  7048. ErrInvalidLengthObjects = fmt.Errorf("proto: negative length found during unmarshaling")
  7049. ErrIntOverflowObjects = fmt.Errorf("proto: integer overflow")
  7050. )
  7051. func init() { proto.RegisterFile("objects.proto", fileDescriptorObjects) }
  7052. var fileDescriptorObjects = []byte{
  7053. // 1405 bytes of a gzipped FileDescriptorProto
  7054. 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x57, 0xc1, 0x6f, 0x1b, 0x45,
  7055. 0x17, 0xef, 0xda, 0x1b, 0xdb, 0xfb, 0x9c, 0x58, 0xf9, 0xa6, 0xf9, 0xf2, 0x6d, 0xf3, 0x05, 0x3b,
  7056. 0xb8, 0x02, 0x55, 0xa8, 0x72, 0x4a, 0x29, 0x28, 0x0d, 0x14, 0x6a, 0x27, 0x11, 0xb5, 0x4a, 0x69,
  7057. 0x34, 0x2d, 0x2d, 0x37, 0x33, 0xd9, 0x9d, 0xba, 0x8b, 0xd7, 0x3b, 0xab, 0x9d, 0xb1, 0x8b, 0x6f,
  7058. 0x88, 0x63, 0xfe, 0x81, 0xdc, 0x38, 0xf4, 0xc4, 0x1d, 0x2e, 0x5c, 0x38, 0xf7, 0xc8, 0x09, 0x71,
  7059. 0x8a, 0xa8, 0xff, 0x0b, 0x24, 0x0e, 0x68, 0x66, 0x67, 0x9d, 0x4d, 0xbd, 0x4e, 0x5a, 0x54, 0x45,
  7060. 0x9c, 0x3c, 0xb3, 0xf3, 0xfb, 0xbd, 0x79, 0xef, 0xcd, 0x6f, 0xde, 0x3c, 0xc3, 0x02, 0xdb, 0xfb,
  7061. 0x9a, 0x3a, 0x82, 0x37, 0xc2, 0x88, 0x09, 0x86, 0x90, 0xcb, 0x9c, 0x1e, 0x8d, 0x1a, 0xfc, 0x09,
  7062. 0x89, 0xfa, 0x3d, 0x4f, 0x34, 0x86, 0xef, 0xae, 0x94, 0xc5, 0x28, 0xa4, 0x1a, 0xb0, 0x52, 0xe6,
  7063. 0x21, 0x75, 0x92, 0x49, 0xad, 0xcb, 0x58, 0xd7, 0xa7, 0xeb, 0x6a, 0xb6, 0x37, 0x78, 0xb4, 0x2e,
  7064. 0xbc, 0x3e, 0xe5, 0x82, 0xf4, 0x43, 0x0d, 0x58, 0xea, 0xb2, 0x2e, 0x53, 0xc3, 0x75, 0x39, 0xd2,
  7065. 0x5f, 0x2f, 0xbc, 0x48, 0x23, 0xc1, 0x48, 0x2f, 0x9d, 0x0f, 0xfd, 0x41, 0xd7, 0x0b, 0xd6, 0xe3,
  7066. 0x9f, 0xf8, 0x63, 0xfd, 0x67, 0x03, 0xcc, 0x3b, 0x54, 0x10, 0xf4, 0x21, 0x14, 0x87, 0x34, 0xe2,
  7067. 0x1e, 0x0b, 0x6c, 0x63, 0xcd, 0xb8, 0x54, 0xbe, 0xfa, 0xff, 0xc6, 0xb4, 0xbf, 0x8d, 0x07, 0x31,
  7068. 0xa4, 0x65, 0x3e, 0x3b, 0xac, 0x9d, 0xc3, 0x09, 0x03, 0x5d, 0x07, 0x70, 0x22, 0x4a, 0x04, 0x75,
  7069. 0x3b, 0x44, 0xd8, 0x39, 0xc5, 0x5f, 0x69, 0xc4, 0xae, 0x34, 0x12, 0x57, 0x1a, 0xf7, 0x93, 0x08,
  7070. 0xb0, 0xa5, 0xd1, 0x4d, 0x21, 0xa9, 0x83, 0xd0, 0x4d, 0xa8, 0xf9, 0xd3, 0xa9, 0x1a, 0xdd, 0x14,
  7071. 0xf5, 0x1f, 0x4d, 0x30, 0x3f, 0x67, 0x2e, 0x45, 0xcb, 0x90, 0xf3, 0x5c, 0xe5, 0xb6, 0xd5, 0x2a,
  7072. 0x8c, 0x0f, 0x6b, 0xb9, 0xf6, 0x36, 0xce, 0x79, 0x2e, 0xba, 0x0a, 0x66, 0x9f, 0x0a, 0xa2, 0x1d,
  7073. 0xb2, 0xb3, 0x02, 0x92, 0xb1, 0xeb, 0x68, 0x14, 0x16, 0x7d, 0x00, 0xa6, 0x3c, 0x06, 0xed, 0xc9,
  7074. 0x6a, 0x16, 0x47, 0xee, 0x79, 0x2f, 0xa4, 0x4e, 0xc2, 0x93, 0x78, 0xb4, 0x03, 0x65, 0x97, 0x72,
  7075. 0x27, 0xf2, 0x42, 0x21, 0x73, 0x68, 0x2a, 0xfa, 0xc5, 0x59, 0xf4, 0xed, 0x23, 0x28, 0x4e, 0xf3,
  7076. 0xd0, 0x47, 0x50, 0xe0, 0x82, 0x88, 0x01, 0xb7, 0xe7, 0x94, 0x85, 0xea, 0x4c, 0x07, 0x14, 0x4a,
  7077. 0xbb, 0xa0, 0x39, 0xe8, 0x16, 0x54, 0xfa, 0x24, 0x20, 0x5d, 0x1a, 0x75, 0xb4, 0x95, 0x82, 0xb2,
  7078. 0xf2, 0x66, 0x66, 0xe8, 0x31, 0x32, 0x36, 0x84, 0x17, 0xfa, 0xe9, 0x29, 0xda, 0x01, 0x20, 0x42,
  7079. 0x10, 0xe7, 0x71, 0x9f, 0x06, 0xc2, 0x2e, 0x2a, 0x2b, 0x6f, 0x65, 0xfa, 0x42, 0xc5, 0x13, 0x16,
  7080. 0xf5, 0x9a, 0x13, 0x30, 0x4e, 0x11, 0xd1, 0xa7, 0x50, 0x76, 0x68, 0x24, 0xbc, 0x47, 0x9e, 0x43,
  7081. 0x04, 0xb5, 0x4b, 0xca, 0x4e, 0x2d, 0xcb, 0xce, 0xd6, 0x11, 0x4c, 0x07, 0x95, 0x66, 0xa2, 0x2b,
  7082. 0x60, 0x46, 0xcc, 0xa7, 0xb6, 0xb5, 0x66, 0x5c, 0xaa, 0xcc, 0x3e, 0x16, 0xcc, 0x7c, 0x8a, 0x15,
  7083. 0x72, 0x73, 0x79, 0xff, 0xa0, 0x8e, 0x60, 0xb1, 0x64, 0x2c, 0x1a, 0x4a, 0x1a, 0xc6, 0x15, 0xe3,
  7084. 0x4b, 0xe3, 0x2b, 0xa3, 0xfe, 0x57, 0x1e, 0x8a, 0xf7, 0x68, 0x34, 0xf4, 0x9c, 0xd7, 0x2b, 0x9c,
  7085. 0xeb, 0xc7, 0x84, 0x93, 0x19, 0xa3, 0xde, 0x76, 0x4a, 0x3b, 0x1b, 0x50, 0xa2, 0x81, 0x1b, 0x32,
  7086. 0x2f, 0x10, 0x5a, 0x38, 0x99, 0x01, 0xee, 0x68, 0x0c, 0x9e, 0xa0, 0xd1, 0x0e, 0x2c, 0xc4, 0xf7,
  7087. 0xa1, 0x73, 0x4c, 0x35, 0x6b, 0x59, 0xf4, 0x2f, 0x14, 0x50, 0x1f, 0xf7, 0xfc, 0x20, 0x35, 0x43,
  7088. 0xdb, 0xb0, 0x10, 0x46, 0x74, 0xe8, 0xb1, 0x01, 0xef, 0xa8, 0x20, 0x0a, 0x2f, 0x15, 0x04, 0x9e,
  7089. 0x4f, 0x58, 0x72, 0x86, 0x3e, 0x86, 0x79, 0x49, 0xee, 0x24, 0x75, 0x04, 0x4e, 0xad, 0x23, 0x58,
  7090. 0x95, 0x3c, 0x3d, 0x41, 0x77, 0xe1, 0xbf, 0xc7, 0xbc, 0x98, 0x18, 0x2a, 0x9f, 0x6e, 0xe8, 0x7c,
  7091. 0xda, 0x13, 0xfd, 0x71, 0x13, 0xed, 0x1f, 0xd4, 0x2b, 0x30, 0x9f, 0x96, 0x40, 0xfd, 0xfb, 0x1c,
  7092. 0x94, 0x92, 0x44, 0xa2, 0x6b, 0xfa, 0xcc, 0x8c, 0xd9, 0x59, 0x4b, 0xb0, 0x2a, 0xde, 0xf8, 0xb8,
  7093. 0xae, 0xc1, 0x5c, 0xc8, 0x22, 0xc1, 0xed, 0xdc, 0x5a, 0x7e, 0xd6, 0x15, 0xdd, 0x65, 0x91, 0xd8,
  7094. 0x62, 0xc1, 0x23, 0xaf, 0x8b, 0x63, 0x30, 0x7a, 0x08, 0xe5, 0xa1, 0x17, 0x89, 0x01, 0xf1, 0x3b,
  7095. 0x5e, 0xc8, 0xed, 0xbc, 0xe2, 0xbe, 0x7d, 0xd2, 0x96, 0x8d, 0x07, 0x31, 0xbe, 0xbd, 0xdb, 0xaa,
  7096. 0x8c, 0x0f, 0x6b, 0x30, 0x99, 0x72, 0x0c, 0xda, 0x54, 0x3b, 0xe4, 0x2b, 0x77, 0xc0, 0x9a, 0xac,
  7097. 0xa0, 0xcb, 0x00, 0x41, 0x7c, 0x23, 0x3b, 0x13, 0x65, 0x2f, 0x8c, 0x0f, 0x6b, 0x96, 0xbe, 0xa7,
  7098. 0xed, 0x6d, 0x6c, 0x69, 0x40, 0xdb, 0x45, 0x08, 0x4c, 0xe2, 0xba, 0x91, 0xd2, 0xb9, 0x85, 0xd5,
  7099. 0xb8, 0xfe, 0x43, 0x01, 0xcc, 0xfb, 0x84, 0xf7, 0xce, 0xba, 0xaa, 0xca, 0x3d, 0xa7, 0x6e, 0xc6,
  7100. 0x65, 0x00, 0x1e, 0xeb, 0x4d, 0x86, 0x63, 0x1e, 0x85, 0xa3, 0x55, 0x28, 0xc3, 0xd1, 0x80, 0x38,
  7101. 0x1c, 0xee, 0x33, 0xa1, 0x2e, 0x81, 0x89, 0xd5, 0x18, 0x5d, 0x84, 0x62, 0xc0, 0x5c, 0x45, 0x2f,
  7102. 0x28, 0x3a, 0x8c, 0x0f, 0x6b, 0x05, 0x59, 0x2b, 0xda, 0xdb, 0xb8, 0x20, 0x97, 0xda, 0xae, 0x2c,
  7103. 0x53, 0x24, 0x08, 0x98, 0x20, 0xb2, 0x06, 0x73, 0x5d, 0xee, 0x32, 0xd5, 0xdf, 0x3c, 0x82, 0x25,
  7104. 0x65, 0x2a, 0xc5, 0x44, 0x0f, 0xe0, 0x7c, 0xe2, 0x6f, 0xda, 0x60, 0xe9, 0x55, 0x0c, 0x22, 0x6d,
  7105. 0x21, 0xb5, 0x92, 0x7a, 0x16, 0xac, 0xd9, 0xcf, 0x82, 0xca, 0x60, 0xd6, 0xb3, 0xd0, 0x82, 0x05,
  7106. 0x97, 0x72, 0x2f, 0xa2, 0xae, 0x2a, 0x13, 0x54, 0xdd, 0xcc, 0xca, 0xd5, 0x37, 0x4e, 0x32, 0x42,
  7107. 0xf1, 0xbc, 0xe6, 0xa8, 0x19, 0x6a, 0x42, 0x49, 0xeb, 0x86, 0xdb, 0x65, 0xa5, 0xdd, 0x97, 0x7c,
  7108. 0x0e, 0x26, 0xb4, 0x63, 0x65, 0x6e, 0xfe, 0x95, 0xca, 0xdc, 0x75, 0x00, 0x9f, 0x75, 0x3b, 0x6e,
  7109. 0xe4, 0x0d, 0x69, 0x64, 0x2f, 0xe8, 0x26, 0x21, 0x83, 0xbb, 0xad, 0x10, 0xd8, 0xf2, 0x59, 0x37,
  7110. 0x1e, 0x4e, 0x15, 0xa5, 0xca, 0xab, 0x15, 0xa5, 0xcd, 0x95, 0xfd, 0x83, 0xfa, 0x32, 0x2c, 0xa5,
  7111. 0x6b, 0xc8, 0x86, 0x71, 0xd3, 0xb8, 0x65, 0xec, 0x1a, 0xf5, 0xef, 0x0c, 0xf8, 0xcf, 0x54, 0xc0,
  7112. 0xe8, 0x7d, 0x28, 0xea, 0x90, 0x4f, 0xea, 0xa4, 0x34, 0x0f, 0x27, 0x58, 0xb4, 0x0a, 0x96, 0xbc,
  7113. 0x7f, 0x94, 0x73, 0x1a, 0x57, 0x16, 0x0b, 0x1f, 0x7d, 0x40, 0x36, 0x14, 0x89, 0xef, 0x11, 0xb9,
  7114. 0x96, 0x57, 0x6b, 0xc9, 0xb4, 0xfe, 0x34, 0x07, 0x45, 0x6d, 0xec, 0xac, 0xdf, 0x33, 0xbd, 0xed,
  7115. 0xd4, 0xad, 0xbd, 0x01, 0xf3, 0xf1, 0x51, 0x69, 0xb9, 0x99, 0xa7, 0x1e, 0x58, 0x39, 0xc6, 0xc7,
  7116. 0x52, 0xbb, 0x01, 0xa6, 0x17, 0x92, 0xbe, 0x7e, 0xcb, 0x32, 0x77, 0x6e, 0xef, 0x36, 0xef, 0xdc,
  7117. 0x0d, 0xe3, 0x5b, 0x53, 0x1a, 0x1f, 0xd6, 0x4c, 0xf9, 0x01, 0x2b, 0x5a, 0x66, 0xd5, 0xff, 0x69,
  7118. 0x0e, 0x8a, 0x5b, 0xfe, 0x80, 0x0b, 0x1a, 0x9d, 0x75, 0x92, 0xf4, 0xb6, 0x53, 0x49, 0xda, 0x82,
  7119. 0x62, 0xc4, 0x98, 0xe8, 0x38, 0xe4, 0xa4, 0xfc, 0x60, 0xc6, 0xc4, 0x56, 0xb3, 0x55, 0x91, 0x44,
  7120. 0x59, 0xb8, 0xe2, 0x39, 0x2e, 0x48, 0xea, 0x16, 0x41, 0x0f, 0x61, 0x39, 0x29, 0xf7, 0x7b, 0x8c,
  7121. 0x09, 0x2e, 0x22, 0x12, 0x76, 0x7a, 0x74, 0x24, 0x1b, 0x81, 0xfc, 0xac, 0xc6, 0x6f, 0x27, 0x70,
  7122. 0xa2, 0x91, 0x4a, 0xde, 0x6d, 0x3a, 0xc2, 0x4b, 0xda, 0x40, 0x2b, 0xe1, 0xdf, 0xa6, 0x23, 0x8e,
  7123. 0x3e, 0x81, 0x55, 0x3a, 0x81, 0x49, 0x8b, 0x1d, 0x9f, 0xf4, 0xe5, 0x43, 0xd6, 0x71, 0x7c, 0xe6,
  7124. 0xf4, 0x54, 0x2d, 0x35, 0xf1, 0x05, 0x9a, 0x36, 0xf5, 0x59, 0x8c, 0xd8, 0x92, 0x00, 0xc4, 0xc1,
  7125. 0xde, 0xf3, 0x89, 0xd3, 0xf3, 0x3d, 0x2e, 0x7b, 0xfb, 0x54, 0x2f, 0x27, 0xcb, 0xa1, 0xf4, 0x6d,
  7126. 0xe3, 0x84, 0x6c, 0x35, 0x5a, 0x47, 0xdc, 0x54, 0x67, 0xc8, 0x77, 0x02, 0x11, 0x8d, 0xf0, 0xff,
  7127. 0xf6, 0xb2, 0x57, 0x51, 0x0b, 0xca, 0x83, 0x40, 0x6e, 0x1f, 0xe7, 0xc0, 0x7a, 0xd9, 0x1c, 0x40,
  7128. 0xcc, 0x92, 0x91, 0xaf, 0x0c, 0x61, 0xf5, 0xa4, 0xcd, 0xd1, 0x22, 0xe4, 0x7b, 0x74, 0x14, 0xeb,
  7129. 0x07, 0xcb, 0x21, 0xba, 0x09, 0x73, 0x43, 0xe2, 0x0f, 0xa8, 0x56, 0xce, 0x3b, 0x59, 0xfb, 0x65,
  7130. 0x9b, 0xc4, 0x31, 0x71, 0x33, 0xb7, 0x61, 0x64, 0xca, 0xf6, 0x17, 0x03, 0x0a, 0xf7, 0xa8, 0x13,
  7131. 0x51, 0xf1, 0x5a, 0x55, 0xbb, 0x71, 0x4c, 0xb5, 0xd5, 0xec, 0x2e, 0x4f, 0xee, 0x3a, 0x25, 0xda,
  7132. 0x15, 0x28, 0x79, 0x81, 0xa0, 0x51, 0x40, 0x7c, 0xa5, 0xda, 0x12, 0x9e, 0xcc, 0x33, 0x03, 0x78,
  7133. 0x6a, 0x40, 0x21, 0x6e, 0x83, 0xce, 0x3a, 0x80, 0x78, 0xd7, 0x17, 0x03, 0xc8, 0x74, 0xf2, 0x4f,
  7134. 0x03, 0x4a, 0x98, 0x72, 0x36, 0x88, 0x5e, 0xf3, 0x5f, 0x82, 0x17, 0xda, 0x8a, 0xfc, 0x3f, 0x6e,
  7135. 0x2b, 0x10, 0x98, 0x3d, 0x2f, 0xd0, 0x0d, 0x10, 0x56, 0x63, 0xd4, 0x80, 0x62, 0x48, 0x46, 0x3e,
  7136. 0x23, 0xae, 0x2e, 0x94, 0x4b, 0x53, 0xff, 0x9a, 0x9b, 0xc1, 0x08, 0x27, 0xa0, 0xcd, 0xa5, 0xfd,
  7137. 0x83, 0xfa, 0x22, 0x54, 0xd2, 0x91, 0x3f, 0x36, 0xea, 0xbf, 0x19, 0x60, 0xed, 0x7c, 0x23, 0x68,
  7138. 0xa0, 0x3a, 0xf0, 0x7f, 0x65, 0xf0, 0x6b, 0xd3, 0xff, 0xac, 0xad, 0x63, 0x7f, 0x9a, 0xb3, 0x0e,
  7139. 0xb5, 0x65, 0x3f, 0x7b, 0x5e, 0x3d, 0xf7, 0xfb, 0xf3, 0xea, 0xb9, 0x6f, 0xc7, 0x55, 0xe3, 0xd9,
  7140. 0xb8, 0x6a, 0xfc, 0x3a, 0xae, 0x1a, 0x7f, 0x8c, 0xab, 0xc6, 0x5e, 0x41, 0xe5, 0xe7, 0xbd, 0xbf,
  7141. 0x03, 0x00, 0x00, 0xff, 0xff, 0xa3, 0x7d, 0xca, 0x6a, 0x9f, 0x11, 0x00, 0x00,
  7142. }