googleclouduseraccounts.pp 94 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420
  1. unit googleclouduseraccounts;
  2. {$MODE objfpc}
  3. {$H+}
  4. interface
  5. uses sysutils, classes, googleservice, restbase, googlebase;
  6. type
  7. //Top-level schema types
  8. TAuditConfig = Class;
  9. TAuthorizedKeysView = Class;
  10. TBinding = Class;
  11. TCondition = Class;
  12. TGroup = Class;
  13. TGroupList = Class;
  14. TGroupsAddMemberRequest = Class;
  15. TGroupsRemoveMemberRequest = Class;
  16. TLinuxAccountViews = Class;
  17. TLinuxGetAuthorizedKeysViewResponse = Class;
  18. TLinuxGetLinuxAccountViewsResponse = Class;
  19. TLinuxGroupView = Class;
  20. TLinuxUserView = Class;
  21. TLogConfig = Class;
  22. TLogConfigCounterOptions = Class;
  23. TOperation = Class;
  24. TOperationList = Class;
  25. TPolicy = Class;
  26. TPublicKey = Class;
  27. TRule = Class;
  28. TTestPermissionsRequest = Class;
  29. TTestPermissionsResponse = Class;
  30. TUser = Class;
  31. TUserList = Class;
  32. TAuditConfigArray = Array of TAuditConfig;
  33. TAuthorizedKeysViewArray = Array of TAuthorizedKeysView;
  34. TBindingArray = Array of TBinding;
  35. TConditionArray = Array of TCondition;
  36. TGroupArray = Array of TGroup;
  37. TGroupListArray = Array of TGroupList;
  38. TGroupsAddMemberRequestArray = Array of TGroupsAddMemberRequest;
  39. TGroupsRemoveMemberRequestArray = Array of TGroupsRemoveMemberRequest;
  40. TLinuxAccountViewsArray = Array of TLinuxAccountViews;
  41. TLinuxGetAuthorizedKeysViewResponseArray = Array of TLinuxGetAuthorizedKeysViewResponse;
  42. TLinuxGetLinuxAccountViewsResponseArray = Array of TLinuxGetLinuxAccountViewsResponse;
  43. TLinuxGroupViewArray = Array of TLinuxGroupView;
  44. TLinuxUserViewArray = Array of TLinuxUserView;
  45. TLogConfigArray = Array of TLogConfig;
  46. TLogConfigCounterOptionsArray = Array of TLogConfigCounterOptions;
  47. TOperationArray = Array of TOperation;
  48. TOperationListArray = Array of TOperationList;
  49. TPolicyArray = Array of TPolicy;
  50. TPublicKeyArray = Array of TPublicKey;
  51. TRuleArray = Array of TRule;
  52. TTestPermissionsRequestArray = Array of TTestPermissionsRequest;
  53. TTestPermissionsResponseArray = Array of TTestPermissionsResponse;
  54. TUserArray = Array of TUser;
  55. TUserListArray = Array of TUserList;
  56. //Anonymous types, using auto-generated names
  57. TOperationTypeerrorTypeerrorsItem = Class;
  58. TOperationTypeerror = Class;
  59. TOperationTypewarningsItemTypedataItem = Class;
  60. TOperationTypewarningsItem = Class;
  61. TGroupListTypeitemsArray = Array of TGroup;
  62. TLinuxAccountViewsTypegroupViewsArray = Array of TLinuxGroupView;
  63. TLinuxAccountViewsTypeuserViewsArray = Array of TLinuxUserView;
  64. TOperationTypeerrorTypeerrorsArray = Array of TOperationTypeerrorTypeerrorsItem;
  65. TOperationTypewarningsItemTypedataArray = Array of TOperationTypewarningsItemTypedataItem;
  66. TOperationTypewarningsArray = Array of TOperationTypewarningsItem;
  67. TOperationListTypeitemsArray = Array of TOperation;
  68. TPolicyTypeauditConfigsArray = Array of TAuditConfig;
  69. TPolicyTypebindingsArray = Array of TBinding;
  70. TPolicyTyperulesArray = Array of TRule;
  71. TRuleTypeconditionsArray = Array of TCondition;
  72. TRuleTypelogConfigsArray = Array of TLogConfig;
  73. TUserTypepublicKeysArray = Array of TPublicKey;
  74. TUserListTypeitemsArray = Array of TUser;
  75. { --------------------------------------------------------------------
  76. TAuditConfig
  77. --------------------------------------------------------------------}
  78. TAuditConfig = Class(TGoogleBaseObject)
  79. Private
  80. FexemptedMembers : TStringArray;
  81. Fservice : String;
  82. Protected
  83. //Property setters
  84. Procedure SetexemptedMembers(AIndex : Integer; const AValue : TStringArray); virtual;
  85. Procedure Setservice(AIndex : Integer; const AValue : String); virtual;
  86. //2.6.4. bug workaround
  87. {$IFDEF VER2_6}
  88. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  89. {$ENDIF VER2_6}
  90. Public
  91. Published
  92. Property exemptedMembers : TStringArray Index 0 Read FexemptedMembers Write SetexemptedMembers;
  93. Property service : String Index 8 Read Fservice Write Setservice;
  94. end;
  95. TAuditConfigClass = Class of TAuditConfig;
  96. { --------------------------------------------------------------------
  97. TAuthorizedKeysView
  98. --------------------------------------------------------------------}
  99. TAuthorizedKeysView = Class(TGoogleBaseObject)
  100. Private
  101. Fkeys : TStringArray;
  102. Fsudoer : boolean;
  103. Protected
  104. //Property setters
  105. Procedure Setkeys(AIndex : Integer; const AValue : TStringArray); virtual;
  106. Procedure Setsudoer(AIndex : Integer; const AValue : boolean); virtual;
  107. //2.6.4. bug workaround
  108. {$IFDEF VER2_6}
  109. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  110. {$ENDIF VER2_6}
  111. Public
  112. Published
  113. Property keys : TStringArray Index 0 Read Fkeys Write Setkeys;
  114. Property sudoer : boolean Index 8 Read Fsudoer Write Setsudoer;
  115. end;
  116. TAuthorizedKeysViewClass = Class of TAuthorizedKeysView;
  117. { --------------------------------------------------------------------
  118. TBinding
  119. --------------------------------------------------------------------}
  120. TBinding = Class(TGoogleBaseObject)
  121. Private
  122. Fmembers : TStringArray;
  123. Frole : String;
  124. Protected
  125. //Property setters
  126. Procedure Setmembers(AIndex : Integer; const AValue : TStringArray); virtual;
  127. Procedure Setrole(AIndex : Integer; const AValue : String); virtual;
  128. //2.6.4. bug workaround
  129. {$IFDEF VER2_6}
  130. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  131. {$ENDIF VER2_6}
  132. Public
  133. Published
  134. Property members : TStringArray Index 0 Read Fmembers Write Setmembers;
  135. Property role : String Index 8 Read Frole Write Setrole;
  136. end;
  137. TBindingClass = Class of TBinding;
  138. { --------------------------------------------------------------------
  139. TCondition
  140. --------------------------------------------------------------------}
  141. TCondition = Class(TGoogleBaseObject)
  142. Private
  143. Fiam : String;
  144. Fop : String;
  145. Fsvc : String;
  146. Fsys : String;
  147. Fvalue : String;
  148. Fvalues : TStringArray;
  149. Protected
  150. //Property setters
  151. Procedure Setiam(AIndex : Integer; const AValue : String); virtual;
  152. Procedure Setop(AIndex : Integer; const AValue : String); virtual;
  153. Procedure Setsvc(AIndex : Integer; const AValue : String); virtual;
  154. Procedure Setsys(AIndex : Integer; const AValue : String); virtual;
  155. Procedure Setvalue(AIndex : Integer; const AValue : String); virtual;
  156. Procedure Setvalues(AIndex : Integer; const AValue : TStringArray); virtual;
  157. //2.6.4. bug workaround
  158. {$IFDEF VER2_6}
  159. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  160. {$ENDIF VER2_6}
  161. Public
  162. Published
  163. Property iam : String Index 0 Read Fiam Write Setiam;
  164. Property op : String Index 8 Read Fop Write Setop;
  165. Property svc : String Index 16 Read Fsvc Write Setsvc;
  166. Property sys : String Index 24 Read Fsys Write Setsys;
  167. Property value : String Index 32 Read Fvalue Write Setvalue;
  168. Property values : TStringArray Index 40 Read Fvalues Write Setvalues;
  169. end;
  170. TConditionClass = Class of TCondition;
  171. { --------------------------------------------------------------------
  172. TGroup
  173. --------------------------------------------------------------------}
  174. TGroup = Class(TGoogleBaseObject)
  175. Private
  176. FcreationTimestamp : String;
  177. Fdescription : String;
  178. Fid : String;
  179. Fkind : String;
  180. Fmembers : TStringArray;
  181. Fname : String;
  182. FselfLink : String;
  183. Protected
  184. //Property setters
  185. Procedure SetcreationTimestamp(AIndex : Integer; const AValue : String); virtual;
  186. Procedure Setdescription(AIndex : Integer; const AValue : String); virtual;
  187. Procedure Setid(AIndex : Integer; const AValue : String); virtual;
  188. Procedure Setkind(AIndex : Integer; const AValue : String); virtual;
  189. Procedure Setmembers(AIndex : Integer; const AValue : TStringArray); virtual;
  190. Procedure Setname(AIndex : Integer; const AValue : String); virtual;
  191. Procedure SetselfLink(AIndex : Integer; const AValue : String); virtual;
  192. //2.6.4. bug workaround
  193. {$IFDEF VER2_6}
  194. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  195. {$ENDIF VER2_6}
  196. Public
  197. Published
  198. Property creationTimestamp : String Index 0 Read FcreationTimestamp Write SetcreationTimestamp;
  199. Property description : String Index 8 Read Fdescription Write Setdescription;
  200. Property id : String Index 16 Read Fid Write Setid;
  201. Property kind : String Index 24 Read Fkind Write Setkind;
  202. Property members : TStringArray Index 32 Read Fmembers Write Setmembers;
  203. Property name : String Index 40 Read Fname Write Setname;
  204. Property selfLink : String Index 48 Read FselfLink Write SetselfLink;
  205. end;
  206. TGroupClass = Class of TGroup;
  207. { --------------------------------------------------------------------
  208. TGroupList
  209. --------------------------------------------------------------------}
  210. TGroupList = Class(TGoogleBaseObject)
  211. Private
  212. Fid : String;
  213. Fitems : TGroupListTypeitemsArray;
  214. Fkind : String;
  215. FnextPageToken : String;
  216. FselfLink : String;
  217. Protected
  218. //Property setters
  219. Procedure Setid(AIndex : Integer; const AValue : String); virtual;
  220. Procedure Setitems(AIndex : Integer; const AValue : TGroupListTypeitemsArray); virtual;
  221. Procedure Setkind(AIndex : Integer; const AValue : String); virtual;
  222. Procedure SetnextPageToken(AIndex : Integer; const AValue : String); virtual;
  223. Procedure SetselfLink(AIndex : Integer; const AValue : String); virtual;
  224. //2.6.4. bug workaround
  225. {$IFDEF VER2_6}
  226. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  227. {$ENDIF VER2_6}
  228. Public
  229. Published
  230. Property id : String Index 0 Read Fid Write Setid;
  231. Property items : TGroupListTypeitemsArray Index 8 Read Fitems Write Setitems;
  232. Property kind : String Index 16 Read Fkind Write Setkind;
  233. Property nextPageToken : String Index 24 Read FnextPageToken Write SetnextPageToken;
  234. Property selfLink : String Index 32 Read FselfLink Write SetselfLink;
  235. end;
  236. TGroupListClass = Class of TGroupList;
  237. { --------------------------------------------------------------------
  238. TGroupsAddMemberRequest
  239. --------------------------------------------------------------------}
  240. TGroupsAddMemberRequest = Class(TGoogleBaseObject)
  241. Private
  242. Fusers : TStringArray;
  243. Protected
  244. //Property setters
  245. Procedure Setusers(AIndex : Integer; const AValue : TStringArray); virtual;
  246. //2.6.4. bug workaround
  247. {$IFDEF VER2_6}
  248. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  249. {$ENDIF VER2_6}
  250. Public
  251. Published
  252. Property users : TStringArray Index 0 Read Fusers Write Setusers;
  253. end;
  254. TGroupsAddMemberRequestClass = Class of TGroupsAddMemberRequest;
  255. { --------------------------------------------------------------------
  256. TGroupsRemoveMemberRequest
  257. --------------------------------------------------------------------}
  258. TGroupsRemoveMemberRequest = Class(TGoogleBaseObject)
  259. Private
  260. Fusers : TStringArray;
  261. Protected
  262. //Property setters
  263. Procedure Setusers(AIndex : Integer; const AValue : TStringArray); virtual;
  264. //2.6.4. bug workaround
  265. {$IFDEF VER2_6}
  266. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  267. {$ENDIF VER2_6}
  268. Public
  269. Published
  270. Property users : TStringArray Index 0 Read Fusers Write Setusers;
  271. end;
  272. TGroupsRemoveMemberRequestClass = Class of TGroupsRemoveMemberRequest;
  273. { --------------------------------------------------------------------
  274. TLinuxAccountViews
  275. --------------------------------------------------------------------}
  276. TLinuxAccountViews = Class(TGoogleBaseObject)
  277. Private
  278. FgroupViews : TLinuxAccountViewsTypegroupViewsArray;
  279. Fkind : String;
  280. FuserViews : TLinuxAccountViewsTypeuserViewsArray;
  281. Protected
  282. //Property setters
  283. Procedure SetgroupViews(AIndex : Integer; const AValue : TLinuxAccountViewsTypegroupViewsArray); virtual;
  284. Procedure Setkind(AIndex : Integer; const AValue : String); virtual;
  285. Procedure SetuserViews(AIndex : Integer; const AValue : TLinuxAccountViewsTypeuserViewsArray); virtual;
  286. //2.6.4. bug workaround
  287. {$IFDEF VER2_6}
  288. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  289. {$ENDIF VER2_6}
  290. Public
  291. Published
  292. Property groupViews : TLinuxAccountViewsTypegroupViewsArray Index 0 Read FgroupViews Write SetgroupViews;
  293. Property kind : String Index 8 Read Fkind Write Setkind;
  294. Property userViews : TLinuxAccountViewsTypeuserViewsArray Index 16 Read FuserViews Write SetuserViews;
  295. end;
  296. TLinuxAccountViewsClass = Class of TLinuxAccountViews;
  297. { --------------------------------------------------------------------
  298. TLinuxGetAuthorizedKeysViewResponse
  299. --------------------------------------------------------------------}
  300. TLinuxGetAuthorizedKeysViewResponse = Class(TGoogleBaseObject)
  301. Private
  302. Fresource : TAuthorizedKeysView;
  303. Protected
  304. //Property setters
  305. Procedure Setresource(AIndex : Integer; const AValue : TAuthorizedKeysView); virtual;
  306. Public
  307. Published
  308. Property resource : TAuthorizedKeysView Index 0 Read Fresource Write Setresource;
  309. end;
  310. TLinuxGetAuthorizedKeysViewResponseClass = Class of TLinuxGetAuthorizedKeysViewResponse;
  311. { --------------------------------------------------------------------
  312. TLinuxGetLinuxAccountViewsResponse
  313. --------------------------------------------------------------------}
  314. TLinuxGetLinuxAccountViewsResponse = Class(TGoogleBaseObject)
  315. Private
  316. Fresource : TLinuxAccountViews;
  317. Protected
  318. //Property setters
  319. Procedure Setresource(AIndex : Integer; const AValue : TLinuxAccountViews); virtual;
  320. Public
  321. Published
  322. Property resource : TLinuxAccountViews Index 0 Read Fresource Write Setresource;
  323. end;
  324. TLinuxGetLinuxAccountViewsResponseClass = Class of TLinuxGetLinuxAccountViewsResponse;
  325. { --------------------------------------------------------------------
  326. TLinuxGroupView
  327. --------------------------------------------------------------------}
  328. TLinuxGroupView = Class(TGoogleBaseObject)
  329. Private
  330. Fgid : integer;
  331. FgroupName : String;
  332. Fmembers : TStringArray;
  333. Protected
  334. //Property setters
  335. Procedure Setgid(AIndex : Integer; const AValue : integer); virtual;
  336. Procedure SetgroupName(AIndex : Integer; const AValue : String); virtual;
  337. Procedure Setmembers(AIndex : Integer; const AValue : TStringArray); virtual;
  338. //2.6.4. bug workaround
  339. {$IFDEF VER2_6}
  340. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  341. {$ENDIF VER2_6}
  342. Public
  343. Published
  344. Property gid : integer Index 0 Read Fgid Write Setgid;
  345. Property groupName : String Index 8 Read FgroupName Write SetgroupName;
  346. Property members : TStringArray Index 16 Read Fmembers Write Setmembers;
  347. end;
  348. TLinuxGroupViewClass = Class of TLinuxGroupView;
  349. { --------------------------------------------------------------------
  350. TLinuxUserView
  351. --------------------------------------------------------------------}
  352. TLinuxUserView = Class(TGoogleBaseObject)
  353. Private
  354. Fgecos : String;
  355. Fgid : integer;
  356. FhomeDirectory : String;
  357. Fshell : String;
  358. Fuid : integer;
  359. Fusername : String;
  360. Protected
  361. //Property setters
  362. Procedure Setgecos(AIndex : Integer; const AValue : String); virtual;
  363. Procedure Setgid(AIndex : Integer; const AValue : integer); virtual;
  364. Procedure SethomeDirectory(AIndex : Integer; const AValue : String); virtual;
  365. Procedure Setshell(AIndex : Integer; const AValue : String); virtual;
  366. Procedure Setuid(AIndex : Integer; const AValue : integer); virtual;
  367. Procedure Setusername(AIndex : Integer; const AValue : String); virtual;
  368. Public
  369. Published
  370. Property gecos : String Index 0 Read Fgecos Write Setgecos;
  371. Property gid : integer Index 8 Read Fgid Write Setgid;
  372. Property homeDirectory : String Index 16 Read FhomeDirectory Write SethomeDirectory;
  373. Property shell : String Index 24 Read Fshell Write Setshell;
  374. Property uid : integer Index 32 Read Fuid Write Setuid;
  375. Property username : String Index 40 Read Fusername Write Setusername;
  376. end;
  377. TLinuxUserViewClass = Class of TLinuxUserView;
  378. { --------------------------------------------------------------------
  379. TLogConfig
  380. --------------------------------------------------------------------}
  381. TLogConfig = Class(TGoogleBaseObject)
  382. Private
  383. Fcounter : TLogConfigCounterOptions;
  384. Protected
  385. //Property setters
  386. Procedure Setcounter(AIndex : Integer; const AValue : TLogConfigCounterOptions); virtual;
  387. Public
  388. Published
  389. Property counter : TLogConfigCounterOptions Index 0 Read Fcounter Write Setcounter;
  390. end;
  391. TLogConfigClass = Class of TLogConfig;
  392. { --------------------------------------------------------------------
  393. TLogConfigCounterOptions
  394. --------------------------------------------------------------------}
  395. TLogConfigCounterOptions = Class(TGoogleBaseObject)
  396. Private
  397. Ffield : String;
  398. Fmetric : String;
  399. Protected
  400. //Property setters
  401. Procedure Setfield(AIndex : Integer; const AValue : String); virtual;
  402. Procedure Setmetric(AIndex : Integer; const AValue : String); virtual;
  403. Public
  404. Published
  405. Property field : String Index 0 Read Ffield Write Setfield;
  406. Property metric : String Index 8 Read Fmetric Write Setmetric;
  407. end;
  408. TLogConfigCounterOptionsClass = Class of TLogConfigCounterOptions;
  409. { --------------------------------------------------------------------
  410. TOperationTypeerrorTypeerrorsItem
  411. --------------------------------------------------------------------}
  412. TOperationTypeerrorTypeerrorsItem = Class(TGoogleBaseObject)
  413. Private
  414. Fcode : String;
  415. Flocation : String;
  416. Fmessage : String;
  417. Protected
  418. //Property setters
  419. Procedure Setcode(AIndex : Integer; const AValue : String); virtual;
  420. Procedure Setlocation(AIndex : Integer; const AValue : String); virtual;
  421. Procedure Setmessage(AIndex : Integer; const AValue : String); virtual;
  422. Public
  423. Published
  424. Property code : String Index 0 Read Fcode Write Setcode;
  425. Property location : String Index 8 Read Flocation Write Setlocation;
  426. Property message : String Index 16 Read Fmessage Write Setmessage;
  427. end;
  428. TOperationTypeerrorTypeerrorsItemClass = Class of TOperationTypeerrorTypeerrorsItem;
  429. { --------------------------------------------------------------------
  430. TOperationTypeerror
  431. --------------------------------------------------------------------}
  432. TOperationTypeerror = Class(TGoogleBaseObject)
  433. Private
  434. Ferrors : TOperationTypeerrorTypeerrorsArray;
  435. Protected
  436. //Property setters
  437. Procedure Seterrors(AIndex : Integer; const AValue : TOperationTypeerrorTypeerrorsArray); virtual;
  438. //2.6.4. bug workaround
  439. {$IFDEF VER2_6}
  440. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  441. {$ENDIF VER2_6}
  442. Public
  443. Published
  444. Property errors : TOperationTypeerrorTypeerrorsArray Index 0 Read Ferrors Write Seterrors;
  445. end;
  446. TOperationTypeerrorClass = Class of TOperationTypeerror;
  447. { --------------------------------------------------------------------
  448. TOperationTypewarningsItemTypedataItem
  449. --------------------------------------------------------------------}
  450. TOperationTypewarningsItemTypedataItem = Class(TGoogleBaseObject)
  451. Private
  452. Fkey : String;
  453. Fvalue : String;
  454. Protected
  455. //Property setters
  456. Procedure Setkey(AIndex : Integer; const AValue : String); virtual;
  457. Procedure Setvalue(AIndex : Integer; const AValue : String); virtual;
  458. Public
  459. Published
  460. Property key : String Index 0 Read Fkey Write Setkey;
  461. Property value : String Index 8 Read Fvalue Write Setvalue;
  462. end;
  463. TOperationTypewarningsItemTypedataItemClass = Class of TOperationTypewarningsItemTypedataItem;
  464. { --------------------------------------------------------------------
  465. TOperationTypewarningsItem
  466. --------------------------------------------------------------------}
  467. TOperationTypewarningsItem = Class(TGoogleBaseObject)
  468. Private
  469. Fcode : String;
  470. Fdata : TOperationTypewarningsItemTypedataArray;
  471. Fmessage : String;
  472. Protected
  473. //Property setters
  474. Procedure Setcode(AIndex : Integer; const AValue : String); virtual;
  475. Procedure Setdata(AIndex : Integer; const AValue : TOperationTypewarningsItemTypedataArray); virtual;
  476. Procedure Setmessage(AIndex : Integer; const AValue : String); virtual;
  477. //2.6.4. bug workaround
  478. {$IFDEF VER2_6}
  479. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  480. {$ENDIF VER2_6}
  481. Public
  482. Published
  483. Property code : String Index 0 Read Fcode Write Setcode;
  484. Property data : TOperationTypewarningsItemTypedataArray Index 8 Read Fdata Write Setdata;
  485. Property message : String Index 16 Read Fmessage Write Setmessage;
  486. end;
  487. TOperationTypewarningsItemClass = Class of TOperationTypewarningsItem;
  488. { --------------------------------------------------------------------
  489. TOperation
  490. --------------------------------------------------------------------}
  491. TOperation = Class(TGoogleBaseObject)
  492. Private
  493. FclientOperationId : String;
  494. FcreationTimestamp : String;
  495. Fdescription : String;
  496. FendTime : String;
  497. Ferror : TOperationTypeerror;
  498. FhttpErrorMessage : String;
  499. FhttpErrorStatusCode : integer;
  500. Fid : String;
  501. FinsertTime : String;
  502. Fkind : String;
  503. Fname : String;
  504. FoperationType : String;
  505. Fprogress : integer;
  506. Fregion : String;
  507. FselfLink : String;
  508. FstartTime : String;
  509. Fstatus : String;
  510. FstatusMessage : String;
  511. FtargetId : String;
  512. FtargetLink : String;
  513. Fuser : String;
  514. Fwarnings : TOperationTypewarningsArray;
  515. Fzone : String;
  516. Protected
  517. //Property setters
  518. Procedure SetclientOperationId(AIndex : Integer; const AValue : String); virtual;
  519. Procedure SetcreationTimestamp(AIndex : Integer; const AValue : String); virtual;
  520. Procedure Setdescription(AIndex : Integer; const AValue : String); virtual;
  521. Procedure SetendTime(AIndex : Integer; const AValue : String); virtual;
  522. Procedure Seterror(AIndex : Integer; const AValue : TOperationTypeerror); virtual;
  523. Procedure SethttpErrorMessage(AIndex : Integer; const AValue : String); virtual;
  524. Procedure SethttpErrorStatusCode(AIndex : Integer; const AValue : integer); virtual;
  525. Procedure Setid(AIndex : Integer; const AValue : String); virtual;
  526. Procedure SetinsertTime(AIndex : Integer; const AValue : String); virtual;
  527. Procedure Setkind(AIndex : Integer; const AValue : String); virtual;
  528. Procedure Setname(AIndex : Integer; const AValue : String); virtual;
  529. Procedure SetoperationType(AIndex : Integer; const AValue : String); virtual;
  530. Procedure Setprogress(AIndex : Integer; const AValue : integer); virtual;
  531. Procedure Setregion(AIndex : Integer; const AValue : String); virtual;
  532. Procedure SetselfLink(AIndex : Integer; const AValue : String); virtual;
  533. Procedure SetstartTime(AIndex : Integer; const AValue : String); virtual;
  534. Procedure Setstatus(AIndex : Integer; const AValue : String); virtual;
  535. Procedure SetstatusMessage(AIndex : Integer; const AValue : String); virtual;
  536. Procedure SettargetId(AIndex : Integer; const AValue : String); virtual;
  537. Procedure SettargetLink(AIndex : Integer; const AValue : String); virtual;
  538. Procedure Setuser(AIndex : Integer; const AValue : String); virtual;
  539. Procedure Setwarnings(AIndex : Integer; const AValue : TOperationTypewarningsArray); virtual;
  540. Procedure Setzone(AIndex : Integer; const AValue : String); virtual;
  541. //2.6.4. bug workaround
  542. {$IFDEF VER2_6}
  543. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  544. {$ENDIF VER2_6}
  545. Public
  546. Published
  547. Property clientOperationId : String Index 0 Read FclientOperationId Write SetclientOperationId;
  548. Property creationTimestamp : String Index 8 Read FcreationTimestamp Write SetcreationTimestamp;
  549. Property description : String Index 16 Read Fdescription Write Setdescription;
  550. Property endTime : String Index 24 Read FendTime Write SetendTime;
  551. Property error : TOperationTypeerror Index 32 Read Ferror Write Seterror;
  552. Property httpErrorMessage : String Index 40 Read FhttpErrorMessage Write SethttpErrorMessage;
  553. Property httpErrorStatusCode : integer Index 48 Read FhttpErrorStatusCode Write SethttpErrorStatusCode;
  554. Property id : String Index 56 Read Fid Write Setid;
  555. Property insertTime : String Index 64 Read FinsertTime Write SetinsertTime;
  556. Property kind : String Index 72 Read Fkind Write Setkind;
  557. Property name : String Index 80 Read Fname Write Setname;
  558. Property operationType : String Index 88 Read FoperationType Write SetoperationType;
  559. Property progress : integer Index 96 Read Fprogress Write Setprogress;
  560. Property region : String Index 104 Read Fregion Write Setregion;
  561. Property selfLink : String Index 112 Read FselfLink Write SetselfLink;
  562. Property startTime : String Index 120 Read FstartTime Write SetstartTime;
  563. Property status : String Index 128 Read Fstatus Write Setstatus;
  564. Property statusMessage : String Index 136 Read FstatusMessage Write SetstatusMessage;
  565. Property targetId : String Index 144 Read FtargetId Write SettargetId;
  566. Property targetLink : String Index 152 Read FtargetLink Write SettargetLink;
  567. Property user : String Index 160 Read Fuser Write Setuser;
  568. Property warnings : TOperationTypewarningsArray Index 168 Read Fwarnings Write Setwarnings;
  569. Property zone : String Index 176 Read Fzone Write Setzone;
  570. end;
  571. TOperationClass = Class of TOperation;
  572. { --------------------------------------------------------------------
  573. TOperationList
  574. --------------------------------------------------------------------}
  575. TOperationList = Class(TGoogleBaseObject)
  576. Private
  577. Fid : String;
  578. Fitems : TOperationListTypeitemsArray;
  579. Fkind : String;
  580. FnextPageToken : String;
  581. FselfLink : String;
  582. Protected
  583. //Property setters
  584. Procedure Setid(AIndex : Integer; const AValue : String); virtual;
  585. Procedure Setitems(AIndex : Integer; const AValue : TOperationListTypeitemsArray); virtual;
  586. Procedure Setkind(AIndex : Integer; const AValue : String); virtual;
  587. Procedure SetnextPageToken(AIndex : Integer; const AValue : String); virtual;
  588. Procedure SetselfLink(AIndex : Integer; const AValue : String); virtual;
  589. //2.6.4. bug workaround
  590. {$IFDEF VER2_6}
  591. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  592. {$ENDIF VER2_6}
  593. Public
  594. Published
  595. Property id : String Index 0 Read Fid Write Setid;
  596. Property items : TOperationListTypeitemsArray Index 8 Read Fitems Write Setitems;
  597. Property kind : String Index 16 Read Fkind Write Setkind;
  598. Property nextPageToken : String Index 24 Read FnextPageToken Write SetnextPageToken;
  599. Property selfLink : String Index 32 Read FselfLink Write SetselfLink;
  600. end;
  601. TOperationListClass = Class of TOperationList;
  602. { --------------------------------------------------------------------
  603. TPolicy
  604. --------------------------------------------------------------------}
  605. TPolicy = Class(TGoogleBaseObject)
  606. Private
  607. FauditConfigs : TPolicyTypeauditConfigsArray;
  608. Fbindings : TPolicyTypebindingsArray;
  609. Fetag : String;
  610. FiamOwned : boolean;
  611. Frules : TPolicyTyperulesArray;
  612. Fversion : integer;
  613. Protected
  614. //Property setters
  615. Procedure SetauditConfigs(AIndex : Integer; const AValue : TPolicyTypeauditConfigsArray); virtual;
  616. Procedure Setbindings(AIndex : Integer; const AValue : TPolicyTypebindingsArray); virtual;
  617. Procedure Setetag(AIndex : Integer; const AValue : String); virtual;
  618. Procedure SetiamOwned(AIndex : Integer; const AValue : boolean); virtual;
  619. Procedure Setrules(AIndex : Integer; const AValue : TPolicyTyperulesArray); virtual;
  620. Procedure Setversion(AIndex : Integer; const AValue : integer); virtual;
  621. //2.6.4. bug workaround
  622. {$IFDEF VER2_6}
  623. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  624. {$ENDIF VER2_6}
  625. Public
  626. Published
  627. Property auditConfigs : TPolicyTypeauditConfigsArray Index 0 Read FauditConfigs Write SetauditConfigs;
  628. Property bindings : TPolicyTypebindingsArray Index 8 Read Fbindings Write Setbindings;
  629. Property etag : String Index 16 Read Fetag Write Setetag;
  630. Property iamOwned : boolean Index 24 Read FiamOwned Write SetiamOwned;
  631. Property rules : TPolicyTyperulesArray Index 32 Read Frules Write Setrules;
  632. Property version : integer Index 40 Read Fversion Write Setversion;
  633. end;
  634. TPolicyClass = Class of TPolicy;
  635. { --------------------------------------------------------------------
  636. TPublicKey
  637. --------------------------------------------------------------------}
  638. TPublicKey = Class(TGoogleBaseObject)
  639. Private
  640. FcreationTimestamp : String;
  641. Fdescription : String;
  642. FexpirationTimestamp : String;
  643. Ffingerprint : String;
  644. Fkey : String;
  645. Protected
  646. //Property setters
  647. Procedure SetcreationTimestamp(AIndex : Integer; const AValue : String); virtual;
  648. Procedure Setdescription(AIndex : Integer; const AValue : String); virtual;
  649. Procedure SetexpirationTimestamp(AIndex : Integer; const AValue : String); virtual;
  650. Procedure Setfingerprint(AIndex : Integer; const AValue : String); virtual;
  651. Procedure Setkey(AIndex : Integer; const AValue : String); virtual;
  652. Public
  653. Published
  654. Property creationTimestamp : String Index 0 Read FcreationTimestamp Write SetcreationTimestamp;
  655. Property description : String Index 8 Read Fdescription Write Setdescription;
  656. Property expirationTimestamp : String Index 16 Read FexpirationTimestamp Write SetexpirationTimestamp;
  657. Property fingerprint : String Index 24 Read Ffingerprint Write Setfingerprint;
  658. Property key : String Index 32 Read Fkey Write Setkey;
  659. end;
  660. TPublicKeyClass = Class of TPublicKey;
  661. { --------------------------------------------------------------------
  662. TRule
  663. --------------------------------------------------------------------}
  664. TRule = Class(TGoogleBaseObject)
  665. Private
  666. Faction : String;
  667. Fconditions : TRuleTypeconditionsArray;
  668. Fdescription : String;
  669. Fins : TStringArray;
  670. FlogConfigs : TRuleTypelogConfigsArray;
  671. FnotIns : TStringArray;
  672. Fpermissions : TStringArray;
  673. Protected
  674. //Property setters
  675. Procedure Setaction(AIndex : Integer; const AValue : String); virtual;
  676. Procedure Setconditions(AIndex : Integer; const AValue : TRuleTypeconditionsArray); virtual;
  677. Procedure Setdescription(AIndex : Integer; const AValue : String); virtual;
  678. Procedure Setins(AIndex : Integer; const AValue : TStringArray); virtual;
  679. Procedure SetlogConfigs(AIndex : Integer; const AValue : TRuleTypelogConfigsArray); virtual;
  680. Procedure SetnotIns(AIndex : Integer; const AValue : TStringArray); virtual;
  681. Procedure Setpermissions(AIndex : Integer; const AValue : TStringArray); virtual;
  682. //2.6.4. bug workaround
  683. {$IFDEF VER2_6}
  684. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  685. {$ENDIF VER2_6}
  686. Public
  687. Published
  688. Property action : String Index 0 Read Faction Write Setaction;
  689. Property conditions : TRuleTypeconditionsArray Index 8 Read Fconditions Write Setconditions;
  690. Property description : String Index 16 Read Fdescription Write Setdescription;
  691. Property ins : TStringArray Index 24 Read Fins Write Setins;
  692. Property logConfigs : TRuleTypelogConfigsArray Index 32 Read FlogConfigs Write SetlogConfigs;
  693. Property notIns : TStringArray Index 40 Read FnotIns Write SetnotIns;
  694. Property permissions : TStringArray Index 48 Read Fpermissions Write Setpermissions;
  695. end;
  696. TRuleClass = Class of TRule;
  697. { --------------------------------------------------------------------
  698. TTestPermissionsRequest
  699. --------------------------------------------------------------------}
  700. TTestPermissionsRequest = Class(TGoogleBaseObject)
  701. Private
  702. Fpermissions : TStringArray;
  703. Protected
  704. //Property setters
  705. Procedure Setpermissions(AIndex : Integer; const AValue : TStringArray); virtual;
  706. //2.6.4. bug workaround
  707. {$IFDEF VER2_6}
  708. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  709. {$ENDIF VER2_6}
  710. Public
  711. Published
  712. Property permissions : TStringArray Index 0 Read Fpermissions Write Setpermissions;
  713. end;
  714. TTestPermissionsRequestClass = Class of TTestPermissionsRequest;
  715. { --------------------------------------------------------------------
  716. TTestPermissionsResponse
  717. --------------------------------------------------------------------}
  718. TTestPermissionsResponse = Class(TGoogleBaseObject)
  719. Private
  720. Fpermissions : TStringArray;
  721. Protected
  722. //Property setters
  723. Procedure Setpermissions(AIndex : Integer; const AValue : TStringArray); virtual;
  724. //2.6.4. bug workaround
  725. {$IFDEF VER2_6}
  726. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  727. {$ENDIF VER2_6}
  728. Public
  729. Published
  730. Property permissions : TStringArray Index 0 Read Fpermissions Write Setpermissions;
  731. end;
  732. TTestPermissionsResponseClass = Class of TTestPermissionsResponse;
  733. { --------------------------------------------------------------------
  734. TUser
  735. --------------------------------------------------------------------}
  736. TUser = Class(TGoogleBaseObject)
  737. Private
  738. FcreationTimestamp : String;
  739. Fdescription : String;
  740. Fgroups : TStringArray;
  741. Fid : String;
  742. Fkind : String;
  743. Fname : String;
  744. Fowner : String;
  745. FpublicKeys : TUserTypepublicKeysArray;
  746. FselfLink : String;
  747. Protected
  748. //Property setters
  749. Procedure SetcreationTimestamp(AIndex : Integer; const AValue : String); virtual;
  750. Procedure Setdescription(AIndex : Integer; const AValue : String); virtual;
  751. Procedure Setgroups(AIndex : Integer; const AValue : TStringArray); virtual;
  752. Procedure Setid(AIndex : Integer; const AValue : String); virtual;
  753. Procedure Setkind(AIndex : Integer; const AValue : String); virtual;
  754. Procedure Setname(AIndex : Integer; const AValue : String); virtual;
  755. Procedure Setowner(AIndex : Integer; const AValue : String); virtual;
  756. Procedure SetpublicKeys(AIndex : Integer; const AValue : TUserTypepublicKeysArray); virtual;
  757. Procedure SetselfLink(AIndex : Integer; const AValue : String); virtual;
  758. //2.6.4. bug workaround
  759. {$IFDEF VER2_6}
  760. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  761. {$ENDIF VER2_6}
  762. Public
  763. Published
  764. Property creationTimestamp : String Index 0 Read FcreationTimestamp Write SetcreationTimestamp;
  765. Property description : String Index 8 Read Fdescription Write Setdescription;
  766. Property groups : TStringArray Index 16 Read Fgroups Write Setgroups;
  767. Property id : String Index 24 Read Fid Write Setid;
  768. Property kind : String Index 32 Read Fkind Write Setkind;
  769. Property name : String Index 40 Read Fname Write Setname;
  770. Property owner : String Index 48 Read Fowner Write Setowner;
  771. Property publicKeys : TUserTypepublicKeysArray Index 56 Read FpublicKeys Write SetpublicKeys;
  772. Property selfLink : String Index 64 Read FselfLink Write SetselfLink;
  773. end;
  774. TUserClass = Class of TUser;
  775. { --------------------------------------------------------------------
  776. TUserList
  777. --------------------------------------------------------------------}
  778. TUserList = Class(TGoogleBaseObject)
  779. Private
  780. Fid : String;
  781. Fitems : TUserListTypeitemsArray;
  782. Fkind : String;
  783. FnextPageToken : String;
  784. FselfLink : String;
  785. Protected
  786. //Property setters
  787. Procedure Setid(AIndex : Integer; const AValue : String); virtual;
  788. Procedure Setitems(AIndex : Integer; const AValue : TUserListTypeitemsArray); virtual;
  789. Procedure Setkind(AIndex : Integer; const AValue : String); virtual;
  790. Procedure SetnextPageToken(AIndex : Integer; const AValue : String); virtual;
  791. Procedure SetselfLink(AIndex : Integer; const AValue : String); virtual;
  792. //2.6.4. bug workaround
  793. {$IFDEF VER2_6}
  794. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  795. {$ENDIF VER2_6}
  796. Public
  797. Published
  798. Property id : String Index 0 Read Fid Write Setid;
  799. Property items : TUserListTypeitemsArray Index 8 Read Fitems Write Setitems;
  800. Property kind : String Index 16 Read Fkind Write Setkind;
  801. Property nextPageToken : String Index 24 Read FnextPageToken Write SetnextPageToken;
  802. Property selfLink : String Index 32 Read FselfLink Write SetselfLink;
  803. end;
  804. TUserListClass = Class of TUserList;
  805. { --------------------------------------------------------------------
  806. TGlobalAccountsOperationsResource
  807. --------------------------------------------------------------------}
  808. //Optional query Options for TGlobalAccountsOperationsResource, method List
  809. TGlobalAccountsOperationsListOptions = Record
  810. filter : String;
  811. maxResults : integer;
  812. orderBy : String;
  813. pageToken : String;
  814. end;
  815. TGlobalAccountsOperationsResource = Class(TGoogleResource)
  816. Public
  817. Class Function ResourceName : String; override;
  818. Class Function DefaultAPI : TGoogleAPIClass; override;
  819. Procedure Delete(operation: string; project: string);
  820. Function Get(operation: string; project: string) : TOperation;
  821. Function List(project: string; AQuery : string = '') : TOperationList;
  822. Function List(project: string; AQuery : TGlobalAccountsOperationslistOptions) : TOperationList;
  823. end;
  824. { --------------------------------------------------------------------
  825. TGroupsResource
  826. --------------------------------------------------------------------}
  827. //Optional query Options for TGroupsResource, method List
  828. TGroupsListOptions = Record
  829. filter : String;
  830. maxResults : integer;
  831. orderBy : String;
  832. pageToken : String;
  833. end;
  834. TGroupsResource = Class(TGoogleResource)
  835. Public
  836. Class Function ResourceName : String; override;
  837. Class Function DefaultAPI : TGoogleAPIClass; override;
  838. Function AddMember(groupName: string; project: string; aGroupsAddMemberRequest : TGroupsAddMemberRequest) : TOperation;
  839. Function Delete(groupName: string; project: string) : TOperation;
  840. Function Get(groupName: string; project: string) : TGroup;
  841. Function GetIamPolicy(project: string; resource: string) : TPolicy;
  842. Function Insert(project: string; aGroup : TGroup) : TOperation;
  843. Function List(project: string; AQuery : string = '') : TGroupList;
  844. Function List(project: string; AQuery : TGroupslistOptions) : TGroupList;
  845. Function RemoveMember(groupName: string; project: string; aGroupsRemoveMemberRequest : TGroupsRemoveMemberRequest) : TOperation;
  846. Function SetIamPolicy(project: string; resource: string; aPolicy : TPolicy) : TPolicy;
  847. Function TestIamPermissions(project: string; resource: string; aTestPermissionsRequest : TTestPermissionsRequest) : TTestPermissionsResponse;
  848. end;
  849. { --------------------------------------------------------------------
  850. TLinuxResource
  851. --------------------------------------------------------------------}
  852. //Optional query Options for TLinuxResource, method GetAuthorizedKeysView
  853. TLinuxGetAuthorizedKeysViewOptions = Record
  854. instance : String;
  855. login : boolean;
  856. end;
  857. //Optional query Options for TLinuxResource, method GetLinuxAccountViews
  858. TLinuxGetLinuxAccountViewsOptions = Record
  859. filter : String;
  860. instance : String;
  861. maxResults : integer;
  862. orderBy : String;
  863. pageToken : String;
  864. end;
  865. TLinuxResource = Class(TGoogleResource)
  866. Public
  867. Class Function ResourceName : String; override;
  868. Class Function DefaultAPI : TGoogleAPIClass; override;
  869. Function GetAuthorizedKeysView(project: string; user: string; zone: string; AQuery : string = '') : TLinuxGetAuthorizedKeysViewResponse;
  870. Function GetAuthorizedKeysView(project: string; user: string; zone: string; AQuery : TLinuxgetAuthorizedKeysViewOptions) : TLinuxGetAuthorizedKeysViewResponse;
  871. Function GetLinuxAccountViews(project: string; zone: string; AQuery : string = '') : TLinuxGetLinuxAccountViewsResponse;
  872. Function GetLinuxAccountViews(project: string; zone: string; AQuery : TLinuxgetLinuxAccountViewsOptions) : TLinuxGetLinuxAccountViewsResponse;
  873. end;
  874. { --------------------------------------------------------------------
  875. TUsersResource
  876. --------------------------------------------------------------------}
  877. //Optional query Options for TUsersResource, method List
  878. TUsersListOptions = Record
  879. filter : String;
  880. maxResults : integer;
  881. orderBy : String;
  882. pageToken : String;
  883. end;
  884. //Optional query Options for TUsersResource, method RemovePublicKey
  885. TUsersRemovePublicKeyOptions = Record
  886. fingerprint : String;
  887. end;
  888. TUsersResource = Class(TGoogleResource)
  889. Public
  890. Class Function ResourceName : String; override;
  891. Class Function DefaultAPI : TGoogleAPIClass; override;
  892. Function AddPublicKey(project: string; user: string; aPublicKey : TPublicKey) : TOperation;
  893. Function Delete(project: string; user: string) : TOperation;
  894. Function Get(project: string; user: string) : TUser;
  895. Function GetIamPolicy(project: string; resource: string) : TPolicy;
  896. Function Insert(project: string; aUser : TUser) : TOperation;
  897. Function List(project: string; AQuery : string = '') : TUserList;
  898. Function List(project: string; AQuery : TUserslistOptions) : TUserList;
  899. Function RemovePublicKey(project: string; user: string; AQuery : string = '') : TOperation;
  900. Function RemovePublicKey(project: string; user: string; AQuery : TUsersremovePublicKeyOptions) : TOperation;
  901. Function SetIamPolicy(project: string; resource: string; aPolicy : TPolicy) : TPolicy;
  902. Function TestIamPermissions(project: string; resource: string; aTestPermissionsRequest : TTestPermissionsRequest) : TTestPermissionsResponse;
  903. end;
  904. { --------------------------------------------------------------------
  905. TClouduseraccountsAPI
  906. --------------------------------------------------------------------}
  907. TClouduseraccountsAPI = Class(TGoogleAPI)
  908. Private
  909. FGlobalAccountsOperationsInstance : TGlobalAccountsOperationsResource;
  910. FGroupsInstance : TGroupsResource;
  911. FLinuxInstance : TLinuxResource;
  912. FUsersInstance : TUsersResource;
  913. Function GetGlobalAccountsOperationsInstance : TGlobalAccountsOperationsResource;virtual;
  914. Function GetGroupsInstance : TGroupsResource;virtual;
  915. Function GetLinuxInstance : TLinuxResource;virtual;
  916. Function GetUsersInstance : TUsersResource;virtual;
  917. Public
  918. //Override class functions with API info
  919. Class Function APIName : String; override;
  920. Class Function APIVersion : String; override;
  921. Class Function APIRevision : String; override;
  922. Class Function APIID : String; override;
  923. Class Function APITitle : String; override;
  924. Class Function APIDescription : String; override;
  925. Class Function APIOwnerDomain : String; override;
  926. Class Function APIOwnerName : String; override;
  927. Class Function APIIcon16 : String; override;
  928. Class Function APIIcon32 : String; override;
  929. Class Function APIdocumentationLink : String; override;
  930. Class Function APIrootUrl : string; override;
  931. Class Function APIbasePath : string;override;
  932. Class Function APIbaseURL : String;override;
  933. Class Function APIProtocol : string;override;
  934. Class Function APIservicePath : string;override;
  935. Class Function APIbatchPath : String;override;
  936. Class Function APIAuthScopes : TScopeInfoArray;override;
  937. Class Function APINeedsAuth : Boolean;override;
  938. Class Procedure RegisterAPIResources; override;
  939. //Add create function for resources
  940. Function CreateGlobalAccountsOperationsResource(AOwner : TComponent) : TGlobalAccountsOperationsResource;virtual;overload;
  941. Function CreateGlobalAccountsOperationsResource : TGlobalAccountsOperationsResource;virtual;overload;
  942. Function CreateGroupsResource(AOwner : TComponent) : TGroupsResource;virtual;overload;
  943. Function CreateGroupsResource : TGroupsResource;virtual;overload;
  944. Function CreateLinuxResource(AOwner : TComponent) : TLinuxResource;virtual;overload;
  945. Function CreateLinuxResource : TLinuxResource;virtual;overload;
  946. Function CreateUsersResource(AOwner : TComponent) : TUsersResource;virtual;overload;
  947. Function CreateUsersResource : TUsersResource;virtual;overload;
  948. //Add default on-demand instances for resources
  949. Property GlobalAccountsOperationsResource : TGlobalAccountsOperationsResource Read GetGlobalAccountsOperationsInstance;
  950. Property GroupsResource : TGroupsResource Read GetGroupsInstance;
  951. Property LinuxResource : TLinuxResource Read GetLinuxInstance;
  952. Property UsersResource : TUsersResource Read GetUsersInstance;
  953. end;
  954. implementation
  955. { --------------------------------------------------------------------
  956. TAuditConfig
  957. --------------------------------------------------------------------}
  958. Procedure TAuditConfig.SetexemptedMembers(AIndex : Integer; const AValue : TStringArray);
  959. begin
  960. If (FexemptedMembers=AValue) then exit;
  961. FexemptedMembers:=AValue;
  962. MarkPropertyChanged(AIndex);
  963. end;
  964. Procedure TAuditConfig.Setservice(AIndex : Integer; const AValue : String);
  965. begin
  966. If (Fservice=AValue) then exit;
  967. Fservice:=AValue;
  968. MarkPropertyChanged(AIndex);
  969. end;
  970. //2.6.4. bug workaround
  971. {$IFDEF VER2_6}
  972. Procedure TAuditConfig.SetArrayLength(Const AName : String; ALength : Longint);
  973. begin
  974. Case AName of
  975. 'exemptedmembers' : SetLength(FexemptedMembers,ALength);
  976. else
  977. Inherited SetArrayLength(AName,ALength);
  978. end;
  979. end;
  980. {$ENDIF VER2_6}
  981. { --------------------------------------------------------------------
  982. TAuthorizedKeysView
  983. --------------------------------------------------------------------}
  984. Procedure TAuthorizedKeysView.Setkeys(AIndex : Integer; const AValue : TStringArray);
  985. begin
  986. If (Fkeys=AValue) then exit;
  987. Fkeys:=AValue;
  988. MarkPropertyChanged(AIndex);
  989. end;
  990. Procedure TAuthorizedKeysView.Setsudoer(AIndex : Integer; const AValue : boolean);
  991. begin
  992. If (Fsudoer=AValue) then exit;
  993. Fsudoer:=AValue;
  994. MarkPropertyChanged(AIndex);
  995. end;
  996. //2.6.4. bug workaround
  997. {$IFDEF VER2_6}
  998. Procedure TAuthorizedKeysView.SetArrayLength(Const AName : String; ALength : Longint);
  999. begin
  1000. Case AName of
  1001. 'keys' : SetLength(Fkeys,ALength);
  1002. else
  1003. Inherited SetArrayLength(AName,ALength);
  1004. end;
  1005. end;
  1006. {$ENDIF VER2_6}
  1007. { --------------------------------------------------------------------
  1008. TBinding
  1009. --------------------------------------------------------------------}
  1010. Procedure TBinding.Setmembers(AIndex : Integer; const AValue : TStringArray);
  1011. begin
  1012. If (Fmembers=AValue) then exit;
  1013. Fmembers:=AValue;
  1014. MarkPropertyChanged(AIndex);
  1015. end;
  1016. Procedure TBinding.Setrole(AIndex : Integer; const AValue : String);
  1017. begin
  1018. If (Frole=AValue) then exit;
  1019. Frole:=AValue;
  1020. MarkPropertyChanged(AIndex);
  1021. end;
  1022. //2.6.4. bug workaround
  1023. {$IFDEF VER2_6}
  1024. Procedure TBinding.SetArrayLength(Const AName : String; ALength : Longint);
  1025. begin
  1026. Case AName of
  1027. 'members' : SetLength(Fmembers,ALength);
  1028. else
  1029. Inherited SetArrayLength(AName,ALength);
  1030. end;
  1031. end;
  1032. {$ENDIF VER2_6}
  1033. { --------------------------------------------------------------------
  1034. TCondition
  1035. --------------------------------------------------------------------}
  1036. Procedure TCondition.Setiam(AIndex : Integer; const AValue : String);
  1037. begin
  1038. If (Fiam=AValue) then exit;
  1039. Fiam:=AValue;
  1040. MarkPropertyChanged(AIndex);
  1041. end;
  1042. Procedure TCondition.Setop(AIndex : Integer; const AValue : String);
  1043. begin
  1044. If (Fop=AValue) then exit;
  1045. Fop:=AValue;
  1046. MarkPropertyChanged(AIndex);
  1047. end;
  1048. Procedure TCondition.Setsvc(AIndex : Integer; const AValue : String);
  1049. begin
  1050. If (Fsvc=AValue) then exit;
  1051. Fsvc:=AValue;
  1052. MarkPropertyChanged(AIndex);
  1053. end;
  1054. Procedure TCondition.Setsys(AIndex : Integer; const AValue : String);
  1055. begin
  1056. If (Fsys=AValue) then exit;
  1057. Fsys:=AValue;
  1058. MarkPropertyChanged(AIndex);
  1059. end;
  1060. Procedure TCondition.Setvalue(AIndex : Integer; const AValue : String);
  1061. begin
  1062. If (Fvalue=AValue) then exit;
  1063. Fvalue:=AValue;
  1064. MarkPropertyChanged(AIndex);
  1065. end;
  1066. Procedure TCondition.Setvalues(AIndex : Integer; const AValue : TStringArray);
  1067. begin
  1068. If (Fvalues=AValue) then exit;
  1069. Fvalues:=AValue;
  1070. MarkPropertyChanged(AIndex);
  1071. end;
  1072. //2.6.4. bug workaround
  1073. {$IFDEF VER2_6}
  1074. Procedure TCondition.SetArrayLength(Const AName : String; ALength : Longint);
  1075. begin
  1076. Case AName of
  1077. 'values' : SetLength(Fvalues,ALength);
  1078. else
  1079. Inherited SetArrayLength(AName,ALength);
  1080. end;
  1081. end;
  1082. {$ENDIF VER2_6}
  1083. { --------------------------------------------------------------------
  1084. TGroup
  1085. --------------------------------------------------------------------}
  1086. Procedure TGroup.SetcreationTimestamp(AIndex : Integer; const AValue : String);
  1087. begin
  1088. If (FcreationTimestamp=AValue) then exit;
  1089. FcreationTimestamp:=AValue;
  1090. MarkPropertyChanged(AIndex);
  1091. end;
  1092. Procedure TGroup.Setdescription(AIndex : Integer; const AValue : String);
  1093. begin
  1094. If (Fdescription=AValue) then exit;
  1095. Fdescription:=AValue;
  1096. MarkPropertyChanged(AIndex);
  1097. end;
  1098. Procedure TGroup.Setid(AIndex : Integer; const AValue : String);
  1099. begin
  1100. If (Fid=AValue) then exit;
  1101. Fid:=AValue;
  1102. MarkPropertyChanged(AIndex);
  1103. end;
  1104. Procedure TGroup.Setkind(AIndex : Integer; const AValue : String);
  1105. begin
  1106. If (Fkind=AValue) then exit;
  1107. Fkind:=AValue;
  1108. MarkPropertyChanged(AIndex);
  1109. end;
  1110. Procedure TGroup.Setmembers(AIndex : Integer; const AValue : TStringArray);
  1111. begin
  1112. If (Fmembers=AValue) then exit;
  1113. Fmembers:=AValue;
  1114. MarkPropertyChanged(AIndex);
  1115. end;
  1116. Procedure TGroup.Setname(AIndex : Integer; const AValue : String);
  1117. begin
  1118. If (Fname=AValue) then exit;
  1119. Fname:=AValue;
  1120. MarkPropertyChanged(AIndex);
  1121. end;
  1122. Procedure TGroup.SetselfLink(AIndex : Integer; const AValue : String);
  1123. begin
  1124. If (FselfLink=AValue) then exit;
  1125. FselfLink:=AValue;
  1126. MarkPropertyChanged(AIndex);
  1127. end;
  1128. //2.6.4. bug workaround
  1129. {$IFDEF VER2_6}
  1130. Procedure TGroup.SetArrayLength(Const AName : String; ALength : Longint);
  1131. begin
  1132. Case AName of
  1133. 'members' : SetLength(Fmembers,ALength);
  1134. else
  1135. Inherited SetArrayLength(AName,ALength);
  1136. end;
  1137. end;
  1138. {$ENDIF VER2_6}
  1139. { --------------------------------------------------------------------
  1140. TGroupList
  1141. --------------------------------------------------------------------}
  1142. Procedure TGroupList.Setid(AIndex : Integer; const AValue : String);
  1143. begin
  1144. If (Fid=AValue) then exit;
  1145. Fid:=AValue;
  1146. MarkPropertyChanged(AIndex);
  1147. end;
  1148. Procedure TGroupList.Setitems(AIndex : Integer; const AValue : TGroupListTypeitemsArray);
  1149. begin
  1150. If (Fitems=AValue) then exit;
  1151. Fitems:=AValue;
  1152. MarkPropertyChanged(AIndex);
  1153. end;
  1154. Procedure TGroupList.Setkind(AIndex : Integer; const AValue : String);
  1155. begin
  1156. If (Fkind=AValue) then exit;
  1157. Fkind:=AValue;
  1158. MarkPropertyChanged(AIndex);
  1159. end;
  1160. Procedure TGroupList.SetnextPageToken(AIndex : Integer; const AValue : String);
  1161. begin
  1162. If (FnextPageToken=AValue) then exit;
  1163. FnextPageToken:=AValue;
  1164. MarkPropertyChanged(AIndex);
  1165. end;
  1166. Procedure TGroupList.SetselfLink(AIndex : Integer; const AValue : String);
  1167. begin
  1168. If (FselfLink=AValue) then exit;
  1169. FselfLink:=AValue;
  1170. MarkPropertyChanged(AIndex);
  1171. end;
  1172. //2.6.4. bug workaround
  1173. {$IFDEF VER2_6}
  1174. Procedure TGroupList.SetArrayLength(Const AName : String; ALength : Longint);
  1175. begin
  1176. Case AName of
  1177. 'items' : SetLength(Fitems,ALength);
  1178. else
  1179. Inherited SetArrayLength(AName,ALength);
  1180. end;
  1181. end;
  1182. {$ENDIF VER2_6}
  1183. { --------------------------------------------------------------------
  1184. TGroupsAddMemberRequest
  1185. --------------------------------------------------------------------}
  1186. Procedure TGroupsAddMemberRequest.Setusers(AIndex : Integer; const AValue : TStringArray);
  1187. begin
  1188. If (Fusers=AValue) then exit;
  1189. Fusers:=AValue;
  1190. MarkPropertyChanged(AIndex);
  1191. end;
  1192. //2.6.4. bug workaround
  1193. {$IFDEF VER2_6}
  1194. Procedure TGroupsAddMemberRequest.SetArrayLength(Const AName : String; ALength : Longint);
  1195. begin
  1196. Case AName of
  1197. 'users' : SetLength(Fusers,ALength);
  1198. else
  1199. Inherited SetArrayLength(AName,ALength);
  1200. end;
  1201. end;
  1202. {$ENDIF VER2_6}
  1203. { --------------------------------------------------------------------
  1204. TGroupsRemoveMemberRequest
  1205. --------------------------------------------------------------------}
  1206. Procedure TGroupsRemoveMemberRequest.Setusers(AIndex : Integer; const AValue : TStringArray);
  1207. begin
  1208. If (Fusers=AValue) then exit;
  1209. Fusers:=AValue;
  1210. MarkPropertyChanged(AIndex);
  1211. end;
  1212. //2.6.4. bug workaround
  1213. {$IFDEF VER2_6}
  1214. Procedure TGroupsRemoveMemberRequest.SetArrayLength(Const AName : String; ALength : Longint);
  1215. begin
  1216. Case AName of
  1217. 'users' : SetLength(Fusers,ALength);
  1218. else
  1219. Inherited SetArrayLength(AName,ALength);
  1220. end;
  1221. end;
  1222. {$ENDIF VER2_6}
  1223. { --------------------------------------------------------------------
  1224. TLinuxAccountViews
  1225. --------------------------------------------------------------------}
  1226. Procedure TLinuxAccountViews.SetgroupViews(AIndex : Integer; const AValue : TLinuxAccountViewsTypegroupViewsArray);
  1227. begin
  1228. If (FgroupViews=AValue) then exit;
  1229. FgroupViews:=AValue;
  1230. MarkPropertyChanged(AIndex);
  1231. end;
  1232. Procedure TLinuxAccountViews.Setkind(AIndex : Integer; const AValue : String);
  1233. begin
  1234. If (Fkind=AValue) then exit;
  1235. Fkind:=AValue;
  1236. MarkPropertyChanged(AIndex);
  1237. end;
  1238. Procedure TLinuxAccountViews.SetuserViews(AIndex : Integer; const AValue : TLinuxAccountViewsTypeuserViewsArray);
  1239. begin
  1240. If (FuserViews=AValue) then exit;
  1241. FuserViews:=AValue;
  1242. MarkPropertyChanged(AIndex);
  1243. end;
  1244. //2.6.4. bug workaround
  1245. {$IFDEF VER2_6}
  1246. Procedure TLinuxAccountViews.SetArrayLength(Const AName : String; ALength : Longint);
  1247. begin
  1248. Case AName of
  1249. 'groupviews' : SetLength(FgroupViews,ALength);
  1250. 'userviews' : SetLength(FuserViews,ALength);
  1251. else
  1252. Inherited SetArrayLength(AName,ALength);
  1253. end;
  1254. end;
  1255. {$ENDIF VER2_6}
  1256. { --------------------------------------------------------------------
  1257. TLinuxGetAuthorizedKeysViewResponse
  1258. --------------------------------------------------------------------}
  1259. Procedure TLinuxGetAuthorizedKeysViewResponse.Setresource(AIndex : Integer; const AValue : TAuthorizedKeysView);
  1260. begin
  1261. If (Fresource=AValue) then exit;
  1262. Fresource:=AValue;
  1263. MarkPropertyChanged(AIndex);
  1264. end;
  1265. { --------------------------------------------------------------------
  1266. TLinuxGetLinuxAccountViewsResponse
  1267. --------------------------------------------------------------------}
  1268. Procedure TLinuxGetLinuxAccountViewsResponse.Setresource(AIndex : Integer; const AValue : TLinuxAccountViews);
  1269. begin
  1270. If (Fresource=AValue) then exit;
  1271. Fresource:=AValue;
  1272. MarkPropertyChanged(AIndex);
  1273. end;
  1274. { --------------------------------------------------------------------
  1275. TLinuxGroupView
  1276. --------------------------------------------------------------------}
  1277. Procedure TLinuxGroupView.Setgid(AIndex : Integer; const AValue : integer);
  1278. begin
  1279. If (Fgid=AValue) then exit;
  1280. Fgid:=AValue;
  1281. MarkPropertyChanged(AIndex);
  1282. end;
  1283. Procedure TLinuxGroupView.SetgroupName(AIndex : Integer; const AValue : String);
  1284. begin
  1285. If (FgroupName=AValue) then exit;
  1286. FgroupName:=AValue;
  1287. MarkPropertyChanged(AIndex);
  1288. end;
  1289. Procedure TLinuxGroupView.Setmembers(AIndex : Integer; const AValue : TStringArray);
  1290. begin
  1291. If (Fmembers=AValue) then exit;
  1292. Fmembers:=AValue;
  1293. MarkPropertyChanged(AIndex);
  1294. end;
  1295. //2.6.4. bug workaround
  1296. {$IFDEF VER2_6}
  1297. Procedure TLinuxGroupView.SetArrayLength(Const AName : String; ALength : Longint);
  1298. begin
  1299. Case AName of
  1300. 'members' : SetLength(Fmembers,ALength);
  1301. else
  1302. Inherited SetArrayLength(AName,ALength);
  1303. end;
  1304. end;
  1305. {$ENDIF VER2_6}
  1306. { --------------------------------------------------------------------
  1307. TLinuxUserView
  1308. --------------------------------------------------------------------}
  1309. Procedure TLinuxUserView.Setgecos(AIndex : Integer; const AValue : String);
  1310. begin
  1311. If (Fgecos=AValue) then exit;
  1312. Fgecos:=AValue;
  1313. MarkPropertyChanged(AIndex);
  1314. end;
  1315. Procedure TLinuxUserView.Setgid(AIndex : Integer; const AValue : integer);
  1316. begin
  1317. If (Fgid=AValue) then exit;
  1318. Fgid:=AValue;
  1319. MarkPropertyChanged(AIndex);
  1320. end;
  1321. Procedure TLinuxUserView.SethomeDirectory(AIndex : Integer; const AValue : String);
  1322. begin
  1323. If (FhomeDirectory=AValue) then exit;
  1324. FhomeDirectory:=AValue;
  1325. MarkPropertyChanged(AIndex);
  1326. end;
  1327. Procedure TLinuxUserView.Setshell(AIndex : Integer; const AValue : String);
  1328. begin
  1329. If (Fshell=AValue) then exit;
  1330. Fshell:=AValue;
  1331. MarkPropertyChanged(AIndex);
  1332. end;
  1333. Procedure TLinuxUserView.Setuid(AIndex : Integer; const AValue : integer);
  1334. begin
  1335. If (Fuid=AValue) then exit;
  1336. Fuid:=AValue;
  1337. MarkPropertyChanged(AIndex);
  1338. end;
  1339. Procedure TLinuxUserView.Setusername(AIndex : Integer; const AValue : String);
  1340. begin
  1341. If (Fusername=AValue) then exit;
  1342. Fusername:=AValue;
  1343. MarkPropertyChanged(AIndex);
  1344. end;
  1345. { --------------------------------------------------------------------
  1346. TLogConfig
  1347. --------------------------------------------------------------------}
  1348. Procedure TLogConfig.Setcounter(AIndex : Integer; const AValue : TLogConfigCounterOptions);
  1349. begin
  1350. If (Fcounter=AValue) then exit;
  1351. Fcounter:=AValue;
  1352. MarkPropertyChanged(AIndex);
  1353. end;
  1354. { --------------------------------------------------------------------
  1355. TLogConfigCounterOptions
  1356. --------------------------------------------------------------------}
  1357. Procedure TLogConfigCounterOptions.Setfield(AIndex : Integer; const AValue : String);
  1358. begin
  1359. If (Ffield=AValue) then exit;
  1360. Ffield:=AValue;
  1361. MarkPropertyChanged(AIndex);
  1362. end;
  1363. Procedure TLogConfigCounterOptions.Setmetric(AIndex : Integer; const AValue : String);
  1364. begin
  1365. If (Fmetric=AValue) then exit;
  1366. Fmetric:=AValue;
  1367. MarkPropertyChanged(AIndex);
  1368. end;
  1369. { --------------------------------------------------------------------
  1370. TOperationTypeerrorTypeerrorsItem
  1371. --------------------------------------------------------------------}
  1372. Procedure TOperationTypeerrorTypeerrorsItem.Setcode(AIndex : Integer; const AValue : String);
  1373. begin
  1374. If (Fcode=AValue) then exit;
  1375. Fcode:=AValue;
  1376. MarkPropertyChanged(AIndex);
  1377. end;
  1378. Procedure TOperationTypeerrorTypeerrorsItem.Setlocation(AIndex : Integer; const AValue : String);
  1379. begin
  1380. If (Flocation=AValue) then exit;
  1381. Flocation:=AValue;
  1382. MarkPropertyChanged(AIndex);
  1383. end;
  1384. Procedure TOperationTypeerrorTypeerrorsItem.Setmessage(AIndex : Integer; const AValue : String);
  1385. begin
  1386. If (Fmessage=AValue) then exit;
  1387. Fmessage:=AValue;
  1388. MarkPropertyChanged(AIndex);
  1389. end;
  1390. { --------------------------------------------------------------------
  1391. TOperationTypeerror
  1392. --------------------------------------------------------------------}
  1393. Procedure TOperationTypeerror.Seterrors(AIndex : Integer; const AValue : TOperationTypeerrorTypeerrorsArray);
  1394. begin
  1395. If (Ferrors=AValue) then exit;
  1396. Ferrors:=AValue;
  1397. MarkPropertyChanged(AIndex);
  1398. end;
  1399. //2.6.4. bug workaround
  1400. {$IFDEF VER2_6}
  1401. Procedure TOperationTypeerror.SetArrayLength(Const AName : String; ALength : Longint);
  1402. begin
  1403. Case AName of
  1404. 'errors' : SetLength(Ferrors,ALength);
  1405. else
  1406. Inherited SetArrayLength(AName,ALength);
  1407. end;
  1408. end;
  1409. {$ENDIF VER2_6}
  1410. { --------------------------------------------------------------------
  1411. TOperationTypewarningsItemTypedataItem
  1412. --------------------------------------------------------------------}
  1413. Procedure TOperationTypewarningsItemTypedataItem.Setkey(AIndex : Integer; const AValue : String);
  1414. begin
  1415. If (Fkey=AValue) then exit;
  1416. Fkey:=AValue;
  1417. MarkPropertyChanged(AIndex);
  1418. end;
  1419. Procedure TOperationTypewarningsItemTypedataItem.Setvalue(AIndex : Integer; const AValue : String);
  1420. begin
  1421. If (Fvalue=AValue) then exit;
  1422. Fvalue:=AValue;
  1423. MarkPropertyChanged(AIndex);
  1424. end;
  1425. { --------------------------------------------------------------------
  1426. TOperationTypewarningsItem
  1427. --------------------------------------------------------------------}
  1428. Procedure TOperationTypewarningsItem.Setcode(AIndex : Integer; const AValue : String);
  1429. begin
  1430. If (Fcode=AValue) then exit;
  1431. Fcode:=AValue;
  1432. MarkPropertyChanged(AIndex);
  1433. end;
  1434. Procedure TOperationTypewarningsItem.Setdata(AIndex : Integer; const AValue : TOperationTypewarningsItemTypedataArray);
  1435. begin
  1436. If (Fdata=AValue) then exit;
  1437. Fdata:=AValue;
  1438. MarkPropertyChanged(AIndex);
  1439. end;
  1440. Procedure TOperationTypewarningsItem.Setmessage(AIndex : Integer; const AValue : String);
  1441. begin
  1442. If (Fmessage=AValue) then exit;
  1443. Fmessage:=AValue;
  1444. MarkPropertyChanged(AIndex);
  1445. end;
  1446. //2.6.4. bug workaround
  1447. {$IFDEF VER2_6}
  1448. Procedure TOperationTypewarningsItem.SetArrayLength(Const AName : String; ALength : Longint);
  1449. begin
  1450. Case AName of
  1451. 'data' : SetLength(Fdata,ALength);
  1452. else
  1453. Inherited SetArrayLength(AName,ALength);
  1454. end;
  1455. end;
  1456. {$ENDIF VER2_6}
  1457. { --------------------------------------------------------------------
  1458. TOperation
  1459. --------------------------------------------------------------------}
  1460. Procedure TOperation.SetclientOperationId(AIndex : Integer; const AValue : String);
  1461. begin
  1462. If (FclientOperationId=AValue) then exit;
  1463. FclientOperationId:=AValue;
  1464. MarkPropertyChanged(AIndex);
  1465. end;
  1466. Procedure TOperation.SetcreationTimestamp(AIndex : Integer; const AValue : String);
  1467. begin
  1468. If (FcreationTimestamp=AValue) then exit;
  1469. FcreationTimestamp:=AValue;
  1470. MarkPropertyChanged(AIndex);
  1471. end;
  1472. Procedure TOperation.Setdescription(AIndex : Integer; const AValue : String);
  1473. begin
  1474. If (Fdescription=AValue) then exit;
  1475. Fdescription:=AValue;
  1476. MarkPropertyChanged(AIndex);
  1477. end;
  1478. Procedure TOperation.SetendTime(AIndex : Integer; const AValue : String);
  1479. begin
  1480. If (FendTime=AValue) then exit;
  1481. FendTime:=AValue;
  1482. MarkPropertyChanged(AIndex);
  1483. end;
  1484. Procedure TOperation.Seterror(AIndex : Integer; const AValue : TOperationTypeerror);
  1485. begin
  1486. If (Ferror=AValue) then exit;
  1487. Ferror:=AValue;
  1488. MarkPropertyChanged(AIndex);
  1489. end;
  1490. Procedure TOperation.SethttpErrorMessage(AIndex : Integer; const AValue : String);
  1491. begin
  1492. If (FhttpErrorMessage=AValue) then exit;
  1493. FhttpErrorMessage:=AValue;
  1494. MarkPropertyChanged(AIndex);
  1495. end;
  1496. Procedure TOperation.SethttpErrorStatusCode(AIndex : Integer; const AValue : integer);
  1497. begin
  1498. If (FhttpErrorStatusCode=AValue) then exit;
  1499. FhttpErrorStatusCode:=AValue;
  1500. MarkPropertyChanged(AIndex);
  1501. end;
  1502. Procedure TOperation.Setid(AIndex : Integer; const AValue : String);
  1503. begin
  1504. If (Fid=AValue) then exit;
  1505. Fid:=AValue;
  1506. MarkPropertyChanged(AIndex);
  1507. end;
  1508. Procedure TOperation.SetinsertTime(AIndex : Integer; const AValue : String);
  1509. begin
  1510. If (FinsertTime=AValue) then exit;
  1511. FinsertTime:=AValue;
  1512. MarkPropertyChanged(AIndex);
  1513. end;
  1514. Procedure TOperation.Setkind(AIndex : Integer; const AValue : String);
  1515. begin
  1516. If (Fkind=AValue) then exit;
  1517. Fkind:=AValue;
  1518. MarkPropertyChanged(AIndex);
  1519. end;
  1520. Procedure TOperation.Setname(AIndex : Integer; const AValue : String);
  1521. begin
  1522. If (Fname=AValue) then exit;
  1523. Fname:=AValue;
  1524. MarkPropertyChanged(AIndex);
  1525. end;
  1526. Procedure TOperation.SetoperationType(AIndex : Integer; const AValue : String);
  1527. begin
  1528. If (FoperationType=AValue) then exit;
  1529. FoperationType:=AValue;
  1530. MarkPropertyChanged(AIndex);
  1531. end;
  1532. Procedure TOperation.Setprogress(AIndex : Integer; const AValue : integer);
  1533. begin
  1534. If (Fprogress=AValue) then exit;
  1535. Fprogress:=AValue;
  1536. MarkPropertyChanged(AIndex);
  1537. end;
  1538. Procedure TOperation.Setregion(AIndex : Integer; const AValue : String);
  1539. begin
  1540. If (Fregion=AValue) then exit;
  1541. Fregion:=AValue;
  1542. MarkPropertyChanged(AIndex);
  1543. end;
  1544. Procedure TOperation.SetselfLink(AIndex : Integer; const AValue : String);
  1545. begin
  1546. If (FselfLink=AValue) then exit;
  1547. FselfLink:=AValue;
  1548. MarkPropertyChanged(AIndex);
  1549. end;
  1550. Procedure TOperation.SetstartTime(AIndex : Integer; const AValue : String);
  1551. begin
  1552. If (FstartTime=AValue) then exit;
  1553. FstartTime:=AValue;
  1554. MarkPropertyChanged(AIndex);
  1555. end;
  1556. Procedure TOperation.Setstatus(AIndex : Integer; const AValue : String);
  1557. begin
  1558. If (Fstatus=AValue) then exit;
  1559. Fstatus:=AValue;
  1560. MarkPropertyChanged(AIndex);
  1561. end;
  1562. Procedure TOperation.SetstatusMessage(AIndex : Integer; const AValue : String);
  1563. begin
  1564. If (FstatusMessage=AValue) then exit;
  1565. FstatusMessage:=AValue;
  1566. MarkPropertyChanged(AIndex);
  1567. end;
  1568. Procedure TOperation.SettargetId(AIndex : Integer; const AValue : String);
  1569. begin
  1570. If (FtargetId=AValue) then exit;
  1571. FtargetId:=AValue;
  1572. MarkPropertyChanged(AIndex);
  1573. end;
  1574. Procedure TOperation.SettargetLink(AIndex : Integer; const AValue : String);
  1575. begin
  1576. If (FtargetLink=AValue) then exit;
  1577. FtargetLink:=AValue;
  1578. MarkPropertyChanged(AIndex);
  1579. end;
  1580. Procedure TOperation.Setuser(AIndex : Integer; const AValue : String);
  1581. begin
  1582. If (Fuser=AValue) then exit;
  1583. Fuser:=AValue;
  1584. MarkPropertyChanged(AIndex);
  1585. end;
  1586. Procedure TOperation.Setwarnings(AIndex : Integer; const AValue : TOperationTypewarningsArray);
  1587. begin
  1588. If (Fwarnings=AValue) then exit;
  1589. Fwarnings:=AValue;
  1590. MarkPropertyChanged(AIndex);
  1591. end;
  1592. Procedure TOperation.Setzone(AIndex : Integer; const AValue : String);
  1593. begin
  1594. If (Fzone=AValue) then exit;
  1595. Fzone:=AValue;
  1596. MarkPropertyChanged(AIndex);
  1597. end;
  1598. //2.6.4. bug workaround
  1599. {$IFDEF VER2_6}
  1600. Procedure TOperation.SetArrayLength(Const AName : String; ALength : Longint);
  1601. begin
  1602. Case AName of
  1603. 'warnings' : SetLength(Fwarnings,ALength);
  1604. else
  1605. Inherited SetArrayLength(AName,ALength);
  1606. end;
  1607. end;
  1608. {$ENDIF VER2_6}
  1609. { --------------------------------------------------------------------
  1610. TOperationList
  1611. --------------------------------------------------------------------}
  1612. Procedure TOperationList.Setid(AIndex : Integer; const AValue : String);
  1613. begin
  1614. If (Fid=AValue) then exit;
  1615. Fid:=AValue;
  1616. MarkPropertyChanged(AIndex);
  1617. end;
  1618. Procedure TOperationList.Setitems(AIndex : Integer; const AValue : TOperationListTypeitemsArray);
  1619. begin
  1620. If (Fitems=AValue) then exit;
  1621. Fitems:=AValue;
  1622. MarkPropertyChanged(AIndex);
  1623. end;
  1624. Procedure TOperationList.Setkind(AIndex : Integer; const AValue : String);
  1625. begin
  1626. If (Fkind=AValue) then exit;
  1627. Fkind:=AValue;
  1628. MarkPropertyChanged(AIndex);
  1629. end;
  1630. Procedure TOperationList.SetnextPageToken(AIndex : Integer; const AValue : String);
  1631. begin
  1632. If (FnextPageToken=AValue) then exit;
  1633. FnextPageToken:=AValue;
  1634. MarkPropertyChanged(AIndex);
  1635. end;
  1636. Procedure TOperationList.SetselfLink(AIndex : Integer; const AValue : String);
  1637. begin
  1638. If (FselfLink=AValue) then exit;
  1639. FselfLink:=AValue;
  1640. MarkPropertyChanged(AIndex);
  1641. end;
  1642. //2.6.4. bug workaround
  1643. {$IFDEF VER2_6}
  1644. Procedure TOperationList.SetArrayLength(Const AName : String; ALength : Longint);
  1645. begin
  1646. Case AName of
  1647. 'items' : SetLength(Fitems,ALength);
  1648. else
  1649. Inherited SetArrayLength(AName,ALength);
  1650. end;
  1651. end;
  1652. {$ENDIF VER2_6}
  1653. { --------------------------------------------------------------------
  1654. TPolicy
  1655. --------------------------------------------------------------------}
  1656. Procedure TPolicy.SetauditConfigs(AIndex : Integer; const AValue : TPolicyTypeauditConfigsArray);
  1657. begin
  1658. If (FauditConfigs=AValue) then exit;
  1659. FauditConfigs:=AValue;
  1660. MarkPropertyChanged(AIndex);
  1661. end;
  1662. Procedure TPolicy.Setbindings(AIndex : Integer; const AValue : TPolicyTypebindingsArray);
  1663. begin
  1664. If (Fbindings=AValue) then exit;
  1665. Fbindings:=AValue;
  1666. MarkPropertyChanged(AIndex);
  1667. end;
  1668. Procedure TPolicy.Setetag(AIndex : Integer; const AValue : String);
  1669. begin
  1670. If (Fetag=AValue) then exit;
  1671. Fetag:=AValue;
  1672. MarkPropertyChanged(AIndex);
  1673. end;
  1674. Procedure TPolicy.SetiamOwned(AIndex : Integer; const AValue : boolean);
  1675. begin
  1676. If (FiamOwned=AValue) then exit;
  1677. FiamOwned:=AValue;
  1678. MarkPropertyChanged(AIndex);
  1679. end;
  1680. Procedure TPolicy.Setrules(AIndex : Integer; const AValue : TPolicyTyperulesArray);
  1681. begin
  1682. If (Frules=AValue) then exit;
  1683. Frules:=AValue;
  1684. MarkPropertyChanged(AIndex);
  1685. end;
  1686. Procedure TPolicy.Setversion(AIndex : Integer; const AValue : integer);
  1687. begin
  1688. If (Fversion=AValue) then exit;
  1689. Fversion:=AValue;
  1690. MarkPropertyChanged(AIndex);
  1691. end;
  1692. //2.6.4. bug workaround
  1693. {$IFDEF VER2_6}
  1694. Procedure TPolicy.SetArrayLength(Const AName : String; ALength : Longint);
  1695. begin
  1696. Case AName of
  1697. 'auditconfigs' : SetLength(FauditConfigs,ALength);
  1698. 'bindings' : SetLength(Fbindings,ALength);
  1699. 'rules' : SetLength(Frules,ALength);
  1700. else
  1701. Inherited SetArrayLength(AName,ALength);
  1702. end;
  1703. end;
  1704. {$ENDIF VER2_6}
  1705. { --------------------------------------------------------------------
  1706. TPublicKey
  1707. --------------------------------------------------------------------}
  1708. Procedure TPublicKey.SetcreationTimestamp(AIndex : Integer; const AValue : String);
  1709. begin
  1710. If (FcreationTimestamp=AValue) then exit;
  1711. FcreationTimestamp:=AValue;
  1712. MarkPropertyChanged(AIndex);
  1713. end;
  1714. Procedure TPublicKey.Setdescription(AIndex : Integer; const AValue : String);
  1715. begin
  1716. If (Fdescription=AValue) then exit;
  1717. Fdescription:=AValue;
  1718. MarkPropertyChanged(AIndex);
  1719. end;
  1720. Procedure TPublicKey.SetexpirationTimestamp(AIndex : Integer; const AValue : String);
  1721. begin
  1722. If (FexpirationTimestamp=AValue) then exit;
  1723. FexpirationTimestamp:=AValue;
  1724. MarkPropertyChanged(AIndex);
  1725. end;
  1726. Procedure TPublicKey.Setfingerprint(AIndex : Integer; const AValue : String);
  1727. begin
  1728. If (Ffingerprint=AValue) then exit;
  1729. Ffingerprint:=AValue;
  1730. MarkPropertyChanged(AIndex);
  1731. end;
  1732. Procedure TPublicKey.Setkey(AIndex : Integer; const AValue : String);
  1733. begin
  1734. If (Fkey=AValue) then exit;
  1735. Fkey:=AValue;
  1736. MarkPropertyChanged(AIndex);
  1737. end;
  1738. { --------------------------------------------------------------------
  1739. TRule
  1740. --------------------------------------------------------------------}
  1741. Procedure TRule.Setaction(AIndex : Integer; const AValue : String);
  1742. begin
  1743. If (Faction=AValue) then exit;
  1744. Faction:=AValue;
  1745. MarkPropertyChanged(AIndex);
  1746. end;
  1747. Procedure TRule.Setconditions(AIndex : Integer; const AValue : TRuleTypeconditionsArray);
  1748. begin
  1749. If (Fconditions=AValue) then exit;
  1750. Fconditions:=AValue;
  1751. MarkPropertyChanged(AIndex);
  1752. end;
  1753. Procedure TRule.Setdescription(AIndex : Integer; const AValue : String);
  1754. begin
  1755. If (Fdescription=AValue) then exit;
  1756. Fdescription:=AValue;
  1757. MarkPropertyChanged(AIndex);
  1758. end;
  1759. Procedure TRule.Setins(AIndex : Integer; const AValue : TStringArray);
  1760. begin
  1761. If (Fins=AValue) then exit;
  1762. Fins:=AValue;
  1763. MarkPropertyChanged(AIndex);
  1764. end;
  1765. Procedure TRule.SetlogConfigs(AIndex : Integer; const AValue : TRuleTypelogConfigsArray);
  1766. begin
  1767. If (FlogConfigs=AValue) then exit;
  1768. FlogConfigs:=AValue;
  1769. MarkPropertyChanged(AIndex);
  1770. end;
  1771. Procedure TRule.SetnotIns(AIndex : Integer; const AValue : TStringArray);
  1772. begin
  1773. If (FnotIns=AValue) then exit;
  1774. FnotIns:=AValue;
  1775. MarkPropertyChanged(AIndex);
  1776. end;
  1777. Procedure TRule.Setpermissions(AIndex : Integer; const AValue : TStringArray);
  1778. begin
  1779. If (Fpermissions=AValue) then exit;
  1780. Fpermissions:=AValue;
  1781. MarkPropertyChanged(AIndex);
  1782. end;
  1783. //2.6.4. bug workaround
  1784. {$IFDEF VER2_6}
  1785. Procedure TRule.SetArrayLength(Const AName : String; ALength : Longint);
  1786. begin
  1787. Case AName of
  1788. 'conditions' : SetLength(Fconditions,ALength);
  1789. 'ins' : SetLength(Fins,ALength);
  1790. 'logconfigs' : SetLength(FlogConfigs,ALength);
  1791. 'notins' : SetLength(FnotIns,ALength);
  1792. 'permissions' : SetLength(Fpermissions,ALength);
  1793. else
  1794. Inherited SetArrayLength(AName,ALength);
  1795. end;
  1796. end;
  1797. {$ENDIF VER2_6}
  1798. { --------------------------------------------------------------------
  1799. TTestPermissionsRequest
  1800. --------------------------------------------------------------------}
  1801. Procedure TTestPermissionsRequest.Setpermissions(AIndex : Integer; const AValue : TStringArray);
  1802. begin
  1803. If (Fpermissions=AValue) then exit;
  1804. Fpermissions:=AValue;
  1805. MarkPropertyChanged(AIndex);
  1806. end;
  1807. //2.6.4. bug workaround
  1808. {$IFDEF VER2_6}
  1809. Procedure TTestPermissionsRequest.SetArrayLength(Const AName : String; ALength : Longint);
  1810. begin
  1811. Case AName of
  1812. 'permissions' : SetLength(Fpermissions,ALength);
  1813. else
  1814. Inherited SetArrayLength(AName,ALength);
  1815. end;
  1816. end;
  1817. {$ENDIF VER2_6}
  1818. { --------------------------------------------------------------------
  1819. TTestPermissionsResponse
  1820. --------------------------------------------------------------------}
  1821. Procedure TTestPermissionsResponse.Setpermissions(AIndex : Integer; const AValue : TStringArray);
  1822. begin
  1823. If (Fpermissions=AValue) then exit;
  1824. Fpermissions:=AValue;
  1825. MarkPropertyChanged(AIndex);
  1826. end;
  1827. //2.6.4. bug workaround
  1828. {$IFDEF VER2_6}
  1829. Procedure TTestPermissionsResponse.SetArrayLength(Const AName : String; ALength : Longint);
  1830. begin
  1831. Case AName of
  1832. 'permissions' : SetLength(Fpermissions,ALength);
  1833. else
  1834. Inherited SetArrayLength(AName,ALength);
  1835. end;
  1836. end;
  1837. {$ENDIF VER2_6}
  1838. { --------------------------------------------------------------------
  1839. TUser
  1840. --------------------------------------------------------------------}
  1841. Procedure TUser.SetcreationTimestamp(AIndex : Integer; const AValue : String);
  1842. begin
  1843. If (FcreationTimestamp=AValue) then exit;
  1844. FcreationTimestamp:=AValue;
  1845. MarkPropertyChanged(AIndex);
  1846. end;
  1847. Procedure TUser.Setdescription(AIndex : Integer; const AValue : String);
  1848. begin
  1849. If (Fdescription=AValue) then exit;
  1850. Fdescription:=AValue;
  1851. MarkPropertyChanged(AIndex);
  1852. end;
  1853. Procedure TUser.Setgroups(AIndex : Integer; const AValue : TStringArray);
  1854. begin
  1855. If (Fgroups=AValue) then exit;
  1856. Fgroups:=AValue;
  1857. MarkPropertyChanged(AIndex);
  1858. end;
  1859. Procedure TUser.Setid(AIndex : Integer; const AValue : String);
  1860. begin
  1861. If (Fid=AValue) then exit;
  1862. Fid:=AValue;
  1863. MarkPropertyChanged(AIndex);
  1864. end;
  1865. Procedure TUser.Setkind(AIndex : Integer; const AValue : String);
  1866. begin
  1867. If (Fkind=AValue) then exit;
  1868. Fkind:=AValue;
  1869. MarkPropertyChanged(AIndex);
  1870. end;
  1871. Procedure TUser.Setname(AIndex : Integer; const AValue : String);
  1872. begin
  1873. If (Fname=AValue) then exit;
  1874. Fname:=AValue;
  1875. MarkPropertyChanged(AIndex);
  1876. end;
  1877. Procedure TUser.Setowner(AIndex : Integer; const AValue : String);
  1878. begin
  1879. If (Fowner=AValue) then exit;
  1880. Fowner:=AValue;
  1881. MarkPropertyChanged(AIndex);
  1882. end;
  1883. Procedure TUser.SetpublicKeys(AIndex : Integer; const AValue : TUserTypepublicKeysArray);
  1884. begin
  1885. If (FpublicKeys=AValue) then exit;
  1886. FpublicKeys:=AValue;
  1887. MarkPropertyChanged(AIndex);
  1888. end;
  1889. Procedure TUser.SetselfLink(AIndex : Integer; const AValue : String);
  1890. begin
  1891. If (FselfLink=AValue) then exit;
  1892. FselfLink:=AValue;
  1893. MarkPropertyChanged(AIndex);
  1894. end;
  1895. //2.6.4. bug workaround
  1896. {$IFDEF VER2_6}
  1897. Procedure TUser.SetArrayLength(Const AName : String; ALength : Longint);
  1898. begin
  1899. Case AName of
  1900. 'groups' : SetLength(Fgroups,ALength);
  1901. 'publickeys' : SetLength(FpublicKeys,ALength);
  1902. else
  1903. Inherited SetArrayLength(AName,ALength);
  1904. end;
  1905. end;
  1906. {$ENDIF VER2_6}
  1907. { --------------------------------------------------------------------
  1908. TUserList
  1909. --------------------------------------------------------------------}
  1910. Procedure TUserList.Setid(AIndex : Integer; const AValue : String);
  1911. begin
  1912. If (Fid=AValue) then exit;
  1913. Fid:=AValue;
  1914. MarkPropertyChanged(AIndex);
  1915. end;
  1916. Procedure TUserList.Setitems(AIndex : Integer; const AValue : TUserListTypeitemsArray);
  1917. begin
  1918. If (Fitems=AValue) then exit;
  1919. Fitems:=AValue;
  1920. MarkPropertyChanged(AIndex);
  1921. end;
  1922. Procedure TUserList.Setkind(AIndex : Integer; const AValue : String);
  1923. begin
  1924. If (Fkind=AValue) then exit;
  1925. Fkind:=AValue;
  1926. MarkPropertyChanged(AIndex);
  1927. end;
  1928. Procedure TUserList.SetnextPageToken(AIndex : Integer; const AValue : String);
  1929. begin
  1930. If (FnextPageToken=AValue) then exit;
  1931. FnextPageToken:=AValue;
  1932. MarkPropertyChanged(AIndex);
  1933. end;
  1934. Procedure TUserList.SetselfLink(AIndex : Integer; const AValue : String);
  1935. begin
  1936. If (FselfLink=AValue) then exit;
  1937. FselfLink:=AValue;
  1938. MarkPropertyChanged(AIndex);
  1939. end;
  1940. //2.6.4. bug workaround
  1941. {$IFDEF VER2_6}
  1942. Procedure TUserList.SetArrayLength(Const AName : String; ALength : Longint);
  1943. begin
  1944. Case AName of
  1945. 'items' : SetLength(Fitems,ALength);
  1946. else
  1947. Inherited SetArrayLength(AName,ALength);
  1948. end;
  1949. end;
  1950. {$ENDIF VER2_6}
  1951. { --------------------------------------------------------------------
  1952. TGlobalAccountsOperationsResource
  1953. --------------------------------------------------------------------}
  1954. Class Function TGlobalAccountsOperationsResource.ResourceName : String;
  1955. begin
  1956. Result:='globalAccountsOperations';
  1957. end;
  1958. Class Function TGlobalAccountsOperationsResource.DefaultAPI : TGoogleAPIClass;
  1959. begin
  1960. Result:=TclouduseraccountsAPI;
  1961. end;
  1962. Procedure TGlobalAccountsOperationsResource.Delete(operation: string; project: string);
  1963. Const
  1964. _HTTPMethod = 'DELETE';
  1965. _Path = '{project}/global/operations/{operation}';
  1966. _Methodid = 'clouduseraccounts.globalAccountsOperations.delete';
  1967. Var
  1968. _P : String;
  1969. begin
  1970. _P:=SubstitutePath(_Path,['operation',operation,'project',project]);
  1971. ServiceCall(_HTTPMethod,_P,'',Nil,Nil);
  1972. end;
  1973. Function TGlobalAccountsOperationsResource.Get(operation: string; project: string) : TOperation;
  1974. Const
  1975. _HTTPMethod = 'GET';
  1976. _Path = '{project}/global/operations/{operation}';
  1977. _Methodid = 'clouduseraccounts.globalAccountsOperations.get';
  1978. Var
  1979. _P : String;
  1980. begin
  1981. _P:=SubstitutePath(_Path,['operation',operation,'project',project]);
  1982. Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TOperation) as TOperation;
  1983. end;
  1984. Function TGlobalAccountsOperationsResource.List(project: string; AQuery : string = '') : TOperationList;
  1985. Const
  1986. _HTTPMethod = 'GET';
  1987. _Path = '{project}/global/operations';
  1988. _Methodid = 'clouduseraccounts.globalAccountsOperations.list';
  1989. Var
  1990. _P : String;
  1991. begin
  1992. _P:=SubstitutePath(_Path,['project',project]);
  1993. Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TOperationList) as TOperationList;
  1994. end;
  1995. Function TGlobalAccountsOperationsResource.List(project: string; AQuery : TGlobalAccountsOperationslistOptions) : TOperationList;
  1996. Var
  1997. _Q : String;
  1998. begin
  1999. _Q:='';
  2000. AddToQuery(_Q,'filter',AQuery.filter);
  2001. AddToQuery(_Q,'maxResults',AQuery.maxResults);
  2002. AddToQuery(_Q,'orderBy',AQuery.orderBy);
  2003. AddToQuery(_Q,'pageToken',AQuery.pageToken);
  2004. Result:=List(project,_Q);
  2005. end;
  2006. { --------------------------------------------------------------------
  2007. TGroupsResource
  2008. --------------------------------------------------------------------}
  2009. Class Function TGroupsResource.ResourceName : String;
  2010. begin
  2011. Result:='groups';
  2012. end;
  2013. Class Function TGroupsResource.DefaultAPI : TGoogleAPIClass;
  2014. begin
  2015. Result:=TclouduseraccountsAPI;
  2016. end;
  2017. Function TGroupsResource.AddMember(groupName: string; project: string; aGroupsAddMemberRequest : TGroupsAddMemberRequest) : TOperation;
  2018. Const
  2019. _HTTPMethod = 'POST';
  2020. _Path = '{project}/global/groups/{groupName}/addMember';
  2021. _Methodid = 'clouduseraccounts.groups.addMember';
  2022. Var
  2023. _P : String;
  2024. begin
  2025. _P:=SubstitutePath(_Path,['groupName',groupName,'project',project]);
  2026. Result:=ServiceCall(_HTTPMethod,_P,'',aGroupsAddMemberRequest,TOperation) as TOperation;
  2027. end;
  2028. Function TGroupsResource.Delete(groupName: string; project: string) : TOperation;
  2029. Const
  2030. _HTTPMethod = 'DELETE';
  2031. _Path = '{project}/global/groups/{groupName}';
  2032. _Methodid = 'clouduseraccounts.groups.delete';
  2033. Var
  2034. _P : String;
  2035. begin
  2036. _P:=SubstitutePath(_Path,['groupName',groupName,'project',project]);
  2037. Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TOperation) as TOperation;
  2038. end;
  2039. Function TGroupsResource.Get(groupName: string; project: string) : TGroup;
  2040. Const
  2041. _HTTPMethod = 'GET';
  2042. _Path = '{project}/global/groups/{groupName}';
  2043. _Methodid = 'clouduseraccounts.groups.get';
  2044. Var
  2045. _P : String;
  2046. begin
  2047. _P:=SubstitutePath(_Path,['groupName',groupName,'project',project]);
  2048. Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TGroup) as TGroup;
  2049. end;
  2050. Function TGroupsResource.GetIamPolicy(project: string; resource: string) : TPolicy;
  2051. Const
  2052. _HTTPMethod = 'GET';
  2053. _Path = '{project}/global/groups/{resource}/getIamPolicy';
  2054. _Methodid = 'clouduseraccounts.groups.getIamPolicy';
  2055. Var
  2056. _P : String;
  2057. begin
  2058. _P:=SubstitutePath(_Path,['project',project,'resource',resource]);
  2059. Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TPolicy) as TPolicy;
  2060. end;
  2061. Function TGroupsResource.Insert(project: string; aGroup : TGroup) : TOperation;
  2062. Const
  2063. _HTTPMethod = 'POST';
  2064. _Path = '{project}/global/groups';
  2065. _Methodid = 'clouduseraccounts.groups.insert';
  2066. Var
  2067. _P : String;
  2068. begin
  2069. _P:=SubstitutePath(_Path,['project',project]);
  2070. Result:=ServiceCall(_HTTPMethod,_P,'',aGroup,TOperation) as TOperation;
  2071. end;
  2072. Function TGroupsResource.List(project: string; AQuery : string = '') : TGroupList;
  2073. Const
  2074. _HTTPMethod = 'GET';
  2075. _Path = '{project}/global/groups';
  2076. _Methodid = 'clouduseraccounts.groups.list';
  2077. Var
  2078. _P : String;
  2079. begin
  2080. _P:=SubstitutePath(_Path,['project',project]);
  2081. Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TGroupList) as TGroupList;
  2082. end;
  2083. Function TGroupsResource.List(project: string; AQuery : TGroupslistOptions) : TGroupList;
  2084. Var
  2085. _Q : String;
  2086. begin
  2087. _Q:='';
  2088. AddToQuery(_Q,'filter',AQuery.filter);
  2089. AddToQuery(_Q,'maxResults',AQuery.maxResults);
  2090. AddToQuery(_Q,'orderBy',AQuery.orderBy);
  2091. AddToQuery(_Q,'pageToken',AQuery.pageToken);
  2092. Result:=List(project,_Q);
  2093. end;
  2094. Function TGroupsResource.RemoveMember(groupName: string; project: string; aGroupsRemoveMemberRequest : TGroupsRemoveMemberRequest) : TOperation;
  2095. Const
  2096. _HTTPMethod = 'POST';
  2097. _Path = '{project}/global/groups/{groupName}/removeMember';
  2098. _Methodid = 'clouduseraccounts.groups.removeMember';
  2099. Var
  2100. _P : String;
  2101. begin
  2102. _P:=SubstitutePath(_Path,['groupName',groupName,'project',project]);
  2103. Result:=ServiceCall(_HTTPMethod,_P,'',aGroupsRemoveMemberRequest,TOperation) as TOperation;
  2104. end;
  2105. Function TGroupsResource.SetIamPolicy(project: string; resource: string; aPolicy : TPolicy) : TPolicy;
  2106. Const
  2107. _HTTPMethod = 'POST';
  2108. _Path = '{project}/global/groups/{resource}/setIamPolicy';
  2109. _Methodid = 'clouduseraccounts.groups.setIamPolicy';
  2110. Var
  2111. _P : String;
  2112. begin
  2113. _P:=SubstitutePath(_Path,['project',project,'resource',resource]);
  2114. Result:=ServiceCall(_HTTPMethod,_P,'',aPolicy,TPolicy) as TPolicy;
  2115. end;
  2116. Function TGroupsResource.TestIamPermissions(project: string; resource: string; aTestPermissionsRequest : TTestPermissionsRequest) : TTestPermissionsResponse;
  2117. Const
  2118. _HTTPMethod = 'POST';
  2119. _Path = '{project}/global/groups/{resource}/testIamPermissions';
  2120. _Methodid = 'clouduseraccounts.groups.testIamPermissions';
  2121. Var
  2122. _P : String;
  2123. begin
  2124. _P:=SubstitutePath(_Path,['project',project,'resource',resource]);
  2125. Result:=ServiceCall(_HTTPMethod,_P,'',aTestPermissionsRequest,TTestPermissionsResponse) as TTestPermissionsResponse;
  2126. end;
  2127. { --------------------------------------------------------------------
  2128. TLinuxResource
  2129. --------------------------------------------------------------------}
  2130. Class Function TLinuxResource.ResourceName : String;
  2131. begin
  2132. Result:='linux';
  2133. end;
  2134. Class Function TLinuxResource.DefaultAPI : TGoogleAPIClass;
  2135. begin
  2136. Result:=TclouduseraccountsAPI;
  2137. end;
  2138. Function TLinuxResource.GetAuthorizedKeysView(project: string; user: string; zone: string; AQuery : string = '') : TLinuxGetAuthorizedKeysViewResponse;
  2139. Const
  2140. _HTTPMethod = 'POST';
  2141. _Path = '{project}/zones/{zone}/authorizedKeysView/{user}';
  2142. _Methodid = 'clouduseraccounts.linux.getAuthorizedKeysView';
  2143. Var
  2144. _P : String;
  2145. begin
  2146. _P:=SubstitutePath(_Path,['project',project,'user',user,'zone',zone]);
  2147. Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TLinuxGetAuthorizedKeysViewResponse) as TLinuxGetAuthorizedKeysViewResponse;
  2148. end;
  2149. Function TLinuxResource.GetAuthorizedKeysView(project: string; user: string; zone: string; AQuery : TLinuxgetAuthorizedKeysViewOptions) : TLinuxGetAuthorizedKeysViewResponse;
  2150. Var
  2151. _Q : String;
  2152. begin
  2153. _Q:='';
  2154. AddToQuery(_Q,'instance',AQuery.instance);
  2155. AddToQuery(_Q,'login',AQuery.login);
  2156. Result:=GetAuthorizedKeysView(project,user,zone,_Q);
  2157. end;
  2158. Function TLinuxResource.GetLinuxAccountViews(project: string; zone: string; AQuery : string = '') : TLinuxGetLinuxAccountViewsResponse;
  2159. Const
  2160. _HTTPMethod = 'POST';
  2161. _Path = '{project}/zones/{zone}/linuxAccountViews';
  2162. _Methodid = 'clouduseraccounts.linux.getLinuxAccountViews';
  2163. Var
  2164. _P : String;
  2165. begin
  2166. _P:=SubstitutePath(_Path,['project',project,'zone',zone]);
  2167. Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TLinuxGetLinuxAccountViewsResponse) as TLinuxGetLinuxAccountViewsResponse;
  2168. end;
  2169. Function TLinuxResource.GetLinuxAccountViews(project: string; zone: string; AQuery : TLinuxgetLinuxAccountViewsOptions) : TLinuxGetLinuxAccountViewsResponse;
  2170. Var
  2171. _Q : String;
  2172. begin
  2173. _Q:='';
  2174. AddToQuery(_Q,'filter',AQuery.filter);
  2175. AddToQuery(_Q,'instance',AQuery.instance);
  2176. AddToQuery(_Q,'maxResults',AQuery.maxResults);
  2177. AddToQuery(_Q,'orderBy',AQuery.orderBy);
  2178. AddToQuery(_Q,'pageToken',AQuery.pageToken);
  2179. Result:=GetLinuxAccountViews(project,zone,_Q);
  2180. end;
  2181. { --------------------------------------------------------------------
  2182. TUsersResource
  2183. --------------------------------------------------------------------}
  2184. Class Function TUsersResource.ResourceName : String;
  2185. begin
  2186. Result:='users';
  2187. end;
  2188. Class Function TUsersResource.DefaultAPI : TGoogleAPIClass;
  2189. begin
  2190. Result:=TclouduseraccountsAPI;
  2191. end;
  2192. Function TUsersResource.AddPublicKey(project: string; user: string; aPublicKey : TPublicKey) : TOperation;
  2193. Const
  2194. _HTTPMethod = 'POST';
  2195. _Path = '{project}/global/users/{user}/addPublicKey';
  2196. _Methodid = 'clouduseraccounts.users.addPublicKey';
  2197. Var
  2198. _P : String;
  2199. begin
  2200. _P:=SubstitutePath(_Path,['project',project,'user',user]);
  2201. Result:=ServiceCall(_HTTPMethod,_P,'',aPublicKey,TOperation) as TOperation;
  2202. end;
  2203. Function TUsersResource.Delete(project: string; user: string) : TOperation;
  2204. Const
  2205. _HTTPMethod = 'DELETE';
  2206. _Path = '{project}/global/users/{user}';
  2207. _Methodid = 'clouduseraccounts.users.delete';
  2208. Var
  2209. _P : String;
  2210. begin
  2211. _P:=SubstitutePath(_Path,['project',project,'user',user]);
  2212. Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TOperation) as TOperation;
  2213. end;
  2214. Function TUsersResource.Get(project: string; user: string) : TUser;
  2215. Const
  2216. _HTTPMethod = 'GET';
  2217. _Path = '{project}/global/users/{user}';
  2218. _Methodid = 'clouduseraccounts.users.get';
  2219. Var
  2220. _P : String;
  2221. begin
  2222. _P:=SubstitutePath(_Path,['project',project,'user',user]);
  2223. Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TUser) as TUser;
  2224. end;
  2225. Function TUsersResource.GetIamPolicy(project: string; resource: string) : TPolicy;
  2226. Const
  2227. _HTTPMethod = 'GET';
  2228. _Path = '{project}/global/users/{resource}/getIamPolicy';
  2229. _Methodid = 'clouduseraccounts.users.getIamPolicy';
  2230. Var
  2231. _P : String;
  2232. begin
  2233. _P:=SubstitutePath(_Path,['project',project,'resource',resource]);
  2234. Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TPolicy) as TPolicy;
  2235. end;
  2236. Function TUsersResource.Insert(project: string; aUser : TUser) : TOperation;
  2237. Const
  2238. _HTTPMethod = 'POST';
  2239. _Path = '{project}/global/users';
  2240. _Methodid = 'clouduseraccounts.users.insert';
  2241. Var
  2242. _P : String;
  2243. begin
  2244. _P:=SubstitutePath(_Path,['project',project]);
  2245. Result:=ServiceCall(_HTTPMethod,_P,'',aUser,TOperation) as TOperation;
  2246. end;
  2247. Function TUsersResource.List(project: string; AQuery : string = '') : TUserList;
  2248. Const
  2249. _HTTPMethod = 'GET';
  2250. _Path = '{project}/global/users';
  2251. _Methodid = 'clouduseraccounts.users.list';
  2252. Var
  2253. _P : String;
  2254. begin
  2255. _P:=SubstitutePath(_Path,['project',project]);
  2256. Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TUserList) as TUserList;
  2257. end;
  2258. Function TUsersResource.List(project: string; AQuery : TUserslistOptions) : TUserList;
  2259. Var
  2260. _Q : String;
  2261. begin
  2262. _Q:='';
  2263. AddToQuery(_Q,'filter',AQuery.filter);
  2264. AddToQuery(_Q,'maxResults',AQuery.maxResults);
  2265. AddToQuery(_Q,'orderBy',AQuery.orderBy);
  2266. AddToQuery(_Q,'pageToken',AQuery.pageToken);
  2267. Result:=List(project,_Q);
  2268. end;
  2269. Function TUsersResource.RemovePublicKey(project: string; user: string; AQuery : string = '') : TOperation;
  2270. Const
  2271. _HTTPMethod = 'POST';
  2272. _Path = '{project}/global/users/{user}/removePublicKey';
  2273. _Methodid = 'clouduseraccounts.users.removePublicKey';
  2274. Var
  2275. _P : String;
  2276. begin
  2277. _P:=SubstitutePath(_Path,['project',project,'user',user]);
  2278. Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TOperation) as TOperation;
  2279. end;
  2280. Function TUsersResource.RemovePublicKey(project: string; user: string; AQuery : TUsersremovePublicKeyOptions) : TOperation;
  2281. Var
  2282. _Q : String;
  2283. begin
  2284. _Q:='';
  2285. AddToQuery(_Q,'fingerprint',AQuery.fingerprint);
  2286. Result:=RemovePublicKey(project,user,_Q);
  2287. end;
  2288. Function TUsersResource.SetIamPolicy(project: string; resource: string; aPolicy : TPolicy) : TPolicy;
  2289. Const
  2290. _HTTPMethod = 'POST';
  2291. _Path = '{project}/global/users/{resource}/setIamPolicy';
  2292. _Methodid = 'clouduseraccounts.users.setIamPolicy';
  2293. Var
  2294. _P : String;
  2295. begin
  2296. _P:=SubstitutePath(_Path,['project',project,'resource',resource]);
  2297. Result:=ServiceCall(_HTTPMethod,_P,'',aPolicy,TPolicy) as TPolicy;
  2298. end;
  2299. Function TUsersResource.TestIamPermissions(project: string; resource: string; aTestPermissionsRequest : TTestPermissionsRequest) : TTestPermissionsResponse;
  2300. Const
  2301. _HTTPMethod = 'POST';
  2302. _Path = '{project}/global/users/{resource}/testIamPermissions';
  2303. _Methodid = 'clouduseraccounts.users.testIamPermissions';
  2304. Var
  2305. _P : String;
  2306. begin
  2307. _P:=SubstitutePath(_Path,['project',project,'resource',resource]);
  2308. Result:=ServiceCall(_HTTPMethod,_P,'',aTestPermissionsRequest,TTestPermissionsResponse) as TTestPermissionsResponse;
  2309. end;
  2310. { --------------------------------------------------------------------
  2311. TClouduseraccountsAPI
  2312. --------------------------------------------------------------------}
  2313. Class Function TClouduseraccountsAPI.APIName : String;
  2314. begin
  2315. Result:='clouduseraccounts';
  2316. end;
  2317. Class Function TClouduseraccountsAPI.APIVersion : String;
  2318. begin
  2319. Result:='vm_alpha';
  2320. end;
  2321. Class Function TClouduseraccountsAPI.APIRevision : String;
  2322. begin
  2323. Result:='20160316';
  2324. end;
  2325. Class Function TClouduseraccountsAPI.APIID : String;
  2326. begin
  2327. Result:='clouduseraccounts:vm_alpha';
  2328. end;
  2329. Class Function TClouduseraccountsAPI.APITitle : String;
  2330. begin
  2331. Result:='Cloud User Accounts API';
  2332. end;
  2333. Class Function TClouduseraccountsAPI.APIDescription : String;
  2334. begin
  2335. Result:='Creates and manages users and groups for accessing Google Compute Engine virtual machines.';
  2336. end;
  2337. Class Function TClouduseraccountsAPI.APIOwnerDomain : String;
  2338. begin
  2339. Result:='google.com';
  2340. end;
  2341. Class Function TClouduseraccountsAPI.APIOwnerName : String;
  2342. begin
  2343. Result:='Google';
  2344. end;
  2345. Class Function TClouduseraccountsAPI.APIIcon16 : String;
  2346. begin
  2347. Result:='https://www.google.com/images/icons/product/compute_engine-16.png';
  2348. end;
  2349. Class Function TClouduseraccountsAPI.APIIcon32 : String;
  2350. begin
  2351. Result:='https://www.google.com/images/icons/product/compute_engine-32.png';
  2352. end;
  2353. Class Function TClouduseraccountsAPI.APIdocumentationLink : String;
  2354. begin
  2355. Result:='https://cloud.google.com/compute/docs/access/user-accounts/api/latest/';
  2356. end;
  2357. Class Function TClouduseraccountsAPI.APIrootUrl : string;
  2358. begin
  2359. Result:='https://www.googleapis.com/';
  2360. end;
  2361. Class Function TClouduseraccountsAPI.APIbasePath : string;
  2362. begin
  2363. Result:='/clouduseraccounts/vm_alpha/projects/';
  2364. end;
  2365. Class Function TClouduseraccountsAPI.APIbaseURL : String;
  2366. begin
  2367. Result:='https://www.googleapis.com/clouduseraccounts/vm_alpha/projects/';
  2368. end;
  2369. Class Function TClouduseraccountsAPI.APIProtocol : string;
  2370. begin
  2371. Result:='rest';
  2372. end;
  2373. Class Function TClouduseraccountsAPI.APIservicePath : string;
  2374. begin
  2375. Result:='clouduseraccounts/vm_alpha/projects/';
  2376. end;
  2377. Class Function TClouduseraccountsAPI.APIbatchPath : String;
  2378. begin
  2379. Result:='batch';
  2380. end;
  2381. Class Function TClouduseraccountsAPI.APIAuthScopes : TScopeInfoArray;
  2382. begin
  2383. SetLength(Result,4);
  2384. Result[0].Name:='https://www.googleapis.com/auth/cloud-platform';
  2385. Result[0].Description:='View and manage your data across Google Cloud Platform services';
  2386. Result[1].Name:='https://www.googleapis.com/auth/cloud-platform.read-only';
  2387. Result[1].Description:='View your data across Google Cloud Platform services';
  2388. Result[2].Name:='https://www.googleapis.com/auth/cloud.useraccounts';
  2389. Result[2].Description:='Manage your Google Cloud User Accounts';
  2390. Result[3].Name:='https://www.googleapis.com/auth/cloud.useraccounts.readonly';
  2391. Result[3].Description:='View your Google Cloud User Accounts';
  2392. end;
  2393. Class Function TClouduseraccountsAPI.APINeedsAuth : Boolean;
  2394. begin
  2395. Result:=True;
  2396. end;
  2397. Class Procedure TClouduseraccountsAPI.RegisterAPIResources;
  2398. begin
  2399. TAuditConfig.RegisterObject;
  2400. TAuthorizedKeysView.RegisterObject;
  2401. TBinding.RegisterObject;
  2402. TCondition.RegisterObject;
  2403. TGroup.RegisterObject;
  2404. TGroupList.RegisterObject;
  2405. TGroupsAddMemberRequest.RegisterObject;
  2406. TGroupsRemoveMemberRequest.RegisterObject;
  2407. TLinuxAccountViews.RegisterObject;
  2408. TLinuxGetAuthorizedKeysViewResponse.RegisterObject;
  2409. TLinuxGetLinuxAccountViewsResponse.RegisterObject;
  2410. TLinuxGroupView.RegisterObject;
  2411. TLinuxUserView.RegisterObject;
  2412. TLogConfig.RegisterObject;
  2413. TLogConfigCounterOptions.RegisterObject;
  2414. TOperationTypeerrorTypeerrorsItem.RegisterObject;
  2415. TOperationTypeerror.RegisterObject;
  2416. TOperationTypewarningsItemTypedataItem.RegisterObject;
  2417. TOperationTypewarningsItem.RegisterObject;
  2418. TOperation.RegisterObject;
  2419. TOperationList.RegisterObject;
  2420. TPolicy.RegisterObject;
  2421. TPublicKey.RegisterObject;
  2422. TRule.RegisterObject;
  2423. TTestPermissionsRequest.RegisterObject;
  2424. TTestPermissionsResponse.RegisterObject;
  2425. TUser.RegisterObject;
  2426. TUserList.RegisterObject;
  2427. end;
  2428. Function TClouduseraccountsAPI.GetGlobalAccountsOperationsInstance : TGlobalAccountsOperationsResource;
  2429. begin
  2430. if (FGlobalAccountsOperationsInstance=Nil) then
  2431. FGlobalAccountsOperationsInstance:=CreateGlobalAccountsOperationsResource;
  2432. Result:=FGlobalAccountsOperationsInstance;
  2433. end;
  2434. Function TClouduseraccountsAPI.CreateGlobalAccountsOperationsResource : TGlobalAccountsOperationsResource;
  2435. begin
  2436. Result:=CreateGlobalAccountsOperationsResource(Self);
  2437. end;
  2438. Function TClouduseraccountsAPI.CreateGlobalAccountsOperationsResource(AOwner : TComponent) : TGlobalAccountsOperationsResource;
  2439. begin
  2440. Result:=TGlobalAccountsOperationsResource.Create(AOwner);
  2441. Result.API:=Self.API;
  2442. end;
  2443. Function TClouduseraccountsAPI.GetGroupsInstance : TGroupsResource;
  2444. begin
  2445. if (FGroupsInstance=Nil) then
  2446. FGroupsInstance:=CreateGroupsResource;
  2447. Result:=FGroupsInstance;
  2448. end;
  2449. Function TClouduseraccountsAPI.CreateGroupsResource : TGroupsResource;
  2450. begin
  2451. Result:=CreateGroupsResource(Self);
  2452. end;
  2453. Function TClouduseraccountsAPI.CreateGroupsResource(AOwner : TComponent) : TGroupsResource;
  2454. begin
  2455. Result:=TGroupsResource.Create(AOwner);
  2456. Result.API:=Self.API;
  2457. end;
  2458. Function TClouduseraccountsAPI.GetLinuxInstance : TLinuxResource;
  2459. begin
  2460. if (FLinuxInstance=Nil) then
  2461. FLinuxInstance:=CreateLinuxResource;
  2462. Result:=FLinuxInstance;
  2463. end;
  2464. Function TClouduseraccountsAPI.CreateLinuxResource : TLinuxResource;
  2465. begin
  2466. Result:=CreateLinuxResource(Self);
  2467. end;
  2468. Function TClouduseraccountsAPI.CreateLinuxResource(AOwner : TComponent) : TLinuxResource;
  2469. begin
  2470. Result:=TLinuxResource.Create(AOwner);
  2471. Result.API:=Self.API;
  2472. end;
  2473. Function TClouduseraccountsAPI.GetUsersInstance : TUsersResource;
  2474. begin
  2475. if (FUsersInstance=Nil) then
  2476. FUsersInstance:=CreateUsersResource;
  2477. Result:=FUsersInstance;
  2478. end;
  2479. Function TClouduseraccountsAPI.CreateUsersResource : TUsersResource;
  2480. begin
  2481. Result:=CreateUsersResource(Self);
  2482. end;
  2483. Function TClouduseraccountsAPI.CreateUsersResource(AOwner : TComponent) : TUsersResource;
  2484. begin
  2485. Result:=TUsersResource.Create(AOwner);
  2486. Result.API:=Self.API;
  2487. end;
  2488. initialization
  2489. TClouduseraccountsAPI.RegisterAPI;
  2490. end.