googlereplicapool.pp 57 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896
  1. unit googlereplicapool;
  2. {$MODE objfpc}
  3. {$H+}
  4. interface
  5. uses sysutils, classes, googleservice, restbase, googlebase;
  6. type
  7. //Top-level schema types
  8. TInstanceGroupManager = Class;
  9. TInstanceGroupManagerList = Class;
  10. TInstanceGroupManagersAbandonInstancesRequest = Class;
  11. TInstanceGroupManagersDeleteInstancesRequest = Class;
  12. TInstanceGroupManagersRecreateInstancesRequest = Class;
  13. TInstanceGroupManagersSetInstanceTemplateRequest = Class;
  14. TInstanceGroupManagersSetTargetPoolsRequest = Class;
  15. TOperation = Class;
  16. TOperationList = Class;
  17. TReplicaPoolAutoHealingPolicy = Class;
  18. TInstanceGroupManagerArray = Array of TInstanceGroupManager;
  19. TInstanceGroupManagerListArray = Array of TInstanceGroupManagerList;
  20. TInstanceGroupManagersAbandonInstancesRequestArray = Array of TInstanceGroupManagersAbandonInstancesRequest;
  21. TInstanceGroupManagersDeleteInstancesRequestArray = Array of TInstanceGroupManagersDeleteInstancesRequest;
  22. TInstanceGroupManagersRecreateInstancesRequestArray = Array of TInstanceGroupManagersRecreateInstancesRequest;
  23. TInstanceGroupManagersSetInstanceTemplateRequestArray = Array of TInstanceGroupManagersSetInstanceTemplateRequest;
  24. TInstanceGroupManagersSetTargetPoolsRequestArray = Array of TInstanceGroupManagersSetTargetPoolsRequest;
  25. TOperationArray = Array of TOperation;
  26. TOperationListArray = Array of TOperationList;
  27. TReplicaPoolAutoHealingPolicyArray = Array of TReplicaPoolAutoHealingPolicy;
  28. //Anonymous types, using auto-generated names
  29. TOperationTypeerrorTypeerrorsItem = Class;
  30. TOperationTypeerror = Class;
  31. TOperationTypewarningsItemTypedataItem = Class;
  32. TOperationTypewarningsItem = Class;
  33. TInstanceGroupManagerTypeautoHealingPoliciesArray = Array of TReplicaPoolAutoHealingPolicy;
  34. TInstanceGroupManagerListTypeitemsArray = Array of TInstanceGroupManager;
  35. TOperationTypeerrorTypeerrorsArray = Array of TOperationTypeerrorTypeerrorsItem;
  36. TOperationTypewarningsItemTypedataArray = Array of TOperationTypewarningsItemTypedataItem;
  37. TOperationTypewarningsArray = Array of TOperationTypewarningsItem;
  38. TOperationListTypeitemsArray = Array of TOperation;
  39. { --------------------------------------------------------------------
  40. TInstanceGroupManager
  41. --------------------------------------------------------------------}
  42. TInstanceGroupManager = Class(TGoogleBaseObject)
  43. Private
  44. FautoHealingPolicies : TInstanceGroupManagerTypeautoHealingPoliciesArray;
  45. FbaseInstanceName : String;
  46. FcreationTimestamp : String;
  47. FcurrentSize : integer;
  48. Fdescription : String;
  49. Ffingerprint : String;
  50. Fgroup : String;
  51. Fid : String;
  52. FinstanceTemplate : String;
  53. Fkind : String;
  54. Fname : String;
  55. FselfLink : String;
  56. FtargetPools : TStringArray;
  57. FtargetSize : integer;
  58. Protected
  59. //Property setters
  60. Procedure SetautoHealingPolicies(AIndex : Integer; const AValue : TInstanceGroupManagerTypeautoHealingPoliciesArray); virtual;
  61. Procedure SetbaseInstanceName(AIndex : Integer; const AValue : String); virtual;
  62. Procedure SetcreationTimestamp(AIndex : Integer; const AValue : String); virtual;
  63. Procedure SetcurrentSize(AIndex : Integer; const AValue : integer); virtual;
  64. Procedure Setdescription(AIndex : Integer; const AValue : String); virtual;
  65. Procedure Setfingerprint(AIndex : Integer; const AValue : String); virtual;
  66. Procedure Setgroup(AIndex : Integer; const AValue : String); virtual;
  67. Procedure Setid(AIndex : Integer; const AValue : String); virtual;
  68. Procedure SetinstanceTemplate(AIndex : Integer; const AValue : String); virtual;
  69. Procedure Setkind(AIndex : Integer; const AValue : String); virtual;
  70. Procedure Setname(AIndex : Integer; const AValue : String); virtual;
  71. Procedure SetselfLink(AIndex : Integer; const AValue : String); virtual;
  72. Procedure SettargetPools(AIndex : Integer; const AValue : TStringArray); virtual;
  73. Procedure SettargetSize(AIndex : Integer; const AValue : integer); virtual;
  74. //2.6.4. bug workaround
  75. {$IFDEF VER2_6}
  76. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  77. {$ENDIF VER2_6}
  78. Public
  79. Published
  80. Property autoHealingPolicies : TInstanceGroupManagerTypeautoHealingPoliciesArray Index 0 Read FautoHealingPolicies Write SetautoHealingPolicies;
  81. Property baseInstanceName : String Index 8 Read FbaseInstanceName Write SetbaseInstanceName;
  82. Property creationTimestamp : String Index 16 Read FcreationTimestamp Write SetcreationTimestamp;
  83. Property currentSize : integer Index 24 Read FcurrentSize Write SetcurrentSize;
  84. Property description : String Index 32 Read Fdescription Write Setdescription;
  85. Property fingerprint : String Index 40 Read Ffingerprint Write Setfingerprint;
  86. Property group : String Index 48 Read Fgroup Write Setgroup;
  87. Property id : String Index 56 Read Fid Write Setid;
  88. Property instanceTemplate : String Index 64 Read FinstanceTemplate Write SetinstanceTemplate;
  89. Property kind : String Index 72 Read Fkind Write Setkind;
  90. Property name : String Index 80 Read Fname Write Setname;
  91. Property selfLink : String Index 88 Read FselfLink Write SetselfLink;
  92. Property targetPools : TStringArray Index 96 Read FtargetPools Write SettargetPools;
  93. Property targetSize : integer Index 104 Read FtargetSize Write SettargetSize;
  94. end;
  95. TInstanceGroupManagerClass = Class of TInstanceGroupManager;
  96. { --------------------------------------------------------------------
  97. TInstanceGroupManagerList
  98. --------------------------------------------------------------------}
  99. TInstanceGroupManagerList = Class(TGoogleBaseObject)
  100. Private
  101. Fid : String;
  102. Fitems : TInstanceGroupManagerListTypeitemsArray;
  103. Fkind : String;
  104. FnextPageToken : String;
  105. FselfLink : String;
  106. Protected
  107. //Property setters
  108. Procedure Setid(AIndex : Integer; const AValue : String); virtual;
  109. Procedure Setitems(AIndex : Integer; const AValue : TInstanceGroupManagerListTypeitemsArray); virtual;
  110. Procedure Setkind(AIndex : Integer; const AValue : String); virtual;
  111. Procedure SetnextPageToken(AIndex : Integer; const AValue : String); virtual;
  112. Procedure SetselfLink(AIndex : Integer; const AValue : String); virtual;
  113. //2.6.4. bug workaround
  114. {$IFDEF VER2_6}
  115. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  116. {$ENDIF VER2_6}
  117. Public
  118. Published
  119. Property id : String Index 0 Read Fid Write Setid;
  120. Property items : TInstanceGroupManagerListTypeitemsArray Index 8 Read Fitems Write Setitems;
  121. Property kind : String Index 16 Read Fkind Write Setkind;
  122. Property nextPageToken : String Index 24 Read FnextPageToken Write SetnextPageToken;
  123. Property selfLink : String Index 32 Read FselfLink Write SetselfLink;
  124. end;
  125. TInstanceGroupManagerListClass = Class of TInstanceGroupManagerList;
  126. { --------------------------------------------------------------------
  127. TInstanceGroupManagersAbandonInstancesRequest
  128. --------------------------------------------------------------------}
  129. TInstanceGroupManagersAbandonInstancesRequest = Class(TGoogleBaseObject)
  130. Private
  131. Finstances : TStringArray;
  132. Protected
  133. //Property setters
  134. Procedure Setinstances(AIndex : Integer; const AValue : TStringArray); virtual;
  135. //2.6.4. bug workaround
  136. {$IFDEF VER2_6}
  137. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  138. {$ENDIF VER2_6}
  139. Public
  140. Published
  141. Property instances : TStringArray Index 0 Read Finstances Write Setinstances;
  142. end;
  143. TInstanceGroupManagersAbandonInstancesRequestClass = Class of TInstanceGroupManagersAbandonInstancesRequest;
  144. { --------------------------------------------------------------------
  145. TInstanceGroupManagersDeleteInstancesRequest
  146. --------------------------------------------------------------------}
  147. TInstanceGroupManagersDeleteInstancesRequest = Class(TGoogleBaseObject)
  148. Private
  149. Finstances : TStringArray;
  150. Protected
  151. //Property setters
  152. Procedure Setinstances(AIndex : Integer; const AValue : TStringArray); virtual;
  153. //2.6.4. bug workaround
  154. {$IFDEF VER2_6}
  155. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  156. {$ENDIF VER2_6}
  157. Public
  158. Published
  159. Property instances : TStringArray Index 0 Read Finstances Write Setinstances;
  160. end;
  161. TInstanceGroupManagersDeleteInstancesRequestClass = Class of TInstanceGroupManagersDeleteInstancesRequest;
  162. { --------------------------------------------------------------------
  163. TInstanceGroupManagersRecreateInstancesRequest
  164. --------------------------------------------------------------------}
  165. TInstanceGroupManagersRecreateInstancesRequest = Class(TGoogleBaseObject)
  166. Private
  167. Finstances : TStringArray;
  168. Protected
  169. //Property setters
  170. Procedure Setinstances(AIndex : Integer; const AValue : TStringArray); virtual;
  171. //2.6.4. bug workaround
  172. {$IFDEF VER2_6}
  173. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  174. {$ENDIF VER2_6}
  175. Public
  176. Published
  177. Property instances : TStringArray Index 0 Read Finstances Write Setinstances;
  178. end;
  179. TInstanceGroupManagersRecreateInstancesRequestClass = Class of TInstanceGroupManagersRecreateInstancesRequest;
  180. { --------------------------------------------------------------------
  181. TInstanceGroupManagersSetInstanceTemplateRequest
  182. --------------------------------------------------------------------}
  183. TInstanceGroupManagersSetInstanceTemplateRequest = Class(TGoogleBaseObject)
  184. Private
  185. FinstanceTemplate : String;
  186. Protected
  187. //Property setters
  188. Procedure SetinstanceTemplate(AIndex : Integer; const AValue : String); virtual;
  189. Public
  190. Published
  191. Property instanceTemplate : String Index 0 Read FinstanceTemplate Write SetinstanceTemplate;
  192. end;
  193. TInstanceGroupManagersSetInstanceTemplateRequestClass = Class of TInstanceGroupManagersSetInstanceTemplateRequest;
  194. { --------------------------------------------------------------------
  195. TInstanceGroupManagersSetTargetPoolsRequest
  196. --------------------------------------------------------------------}
  197. TInstanceGroupManagersSetTargetPoolsRequest = Class(TGoogleBaseObject)
  198. Private
  199. Ffingerprint : String;
  200. FtargetPools : TStringArray;
  201. Protected
  202. //Property setters
  203. Procedure Setfingerprint(AIndex : Integer; const AValue : String); virtual;
  204. Procedure SettargetPools(AIndex : Integer; const AValue : TStringArray); virtual;
  205. //2.6.4. bug workaround
  206. {$IFDEF VER2_6}
  207. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  208. {$ENDIF VER2_6}
  209. Public
  210. Published
  211. Property fingerprint : String Index 0 Read Ffingerprint Write Setfingerprint;
  212. Property targetPools : TStringArray Index 8 Read FtargetPools Write SettargetPools;
  213. end;
  214. TInstanceGroupManagersSetTargetPoolsRequestClass = Class of TInstanceGroupManagersSetTargetPoolsRequest;
  215. { --------------------------------------------------------------------
  216. TOperationTypeerrorTypeerrorsItem
  217. --------------------------------------------------------------------}
  218. TOperationTypeerrorTypeerrorsItem = Class(TGoogleBaseObject)
  219. Private
  220. Fcode : String;
  221. Flocation : String;
  222. Fmessage : String;
  223. Protected
  224. //Property setters
  225. Procedure Setcode(AIndex : Integer; const AValue : String); virtual;
  226. Procedure Setlocation(AIndex : Integer; const AValue : String); virtual;
  227. Procedure Setmessage(AIndex : Integer; const AValue : String); virtual;
  228. Public
  229. Published
  230. Property code : String Index 0 Read Fcode Write Setcode;
  231. Property location : String Index 8 Read Flocation Write Setlocation;
  232. Property message : String Index 16 Read Fmessage Write Setmessage;
  233. end;
  234. TOperationTypeerrorTypeerrorsItemClass = Class of TOperationTypeerrorTypeerrorsItem;
  235. { --------------------------------------------------------------------
  236. TOperationTypeerror
  237. --------------------------------------------------------------------}
  238. TOperationTypeerror = Class(TGoogleBaseObject)
  239. Private
  240. Ferrors : TOperationTypeerrorTypeerrorsArray;
  241. Protected
  242. //Property setters
  243. Procedure Seterrors(AIndex : Integer; const AValue : TOperationTypeerrorTypeerrorsArray); virtual;
  244. //2.6.4. bug workaround
  245. {$IFDEF VER2_6}
  246. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  247. {$ENDIF VER2_6}
  248. Public
  249. Published
  250. Property errors : TOperationTypeerrorTypeerrorsArray Index 0 Read Ferrors Write Seterrors;
  251. end;
  252. TOperationTypeerrorClass = Class of TOperationTypeerror;
  253. { --------------------------------------------------------------------
  254. TOperationTypewarningsItemTypedataItem
  255. --------------------------------------------------------------------}
  256. TOperationTypewarningsItemTypedataItem = Class(TGoogleBaseObject)
  257. Private
  258. Fkey : String;
  259. Fvalue : String;
  260. Protected
  261. //Property setters
  262. Procedure Setkey(AIndex : Integer; const AValue : String); virtual;
  263. Procedure Setvalue(AIndex : Integer; const AValue : String); virtual;
  264. Public
  265. Published
  266. Property key : String Index 0 Read Fkey Write Setkey;
  267. Property value : String Index 8 Read Fvalue Write Setvalue;
  268. end;
  269. TOperationTypewarningsItemTypedataItemClass = Class of TOperationTypewarningsItemTypedataItem;
  270. { --------------------------------------------------------------------
  271. TOperationTypewarningsItem
  272. --------------------------------------------------------------------}
  273. TOperationTypewarningsItem = Class(TGoogleBaseObject)
  274. Private
  275. Fcode : String;
  276. Fdata : TOperationTypewarningsItemTypedataArray;
  277. Fmessage : String;
  278. Protected
  279. //Property setters
  280. Procedure Setcode(AIndex : Integer; const AValue : String); virtual;
  281. Procedure Setdata(AIndex : Integer; const AValue : TOperationTypewarningsItemTypedataArray); virtual;
  282. Procedure Setmessage(AIndex : Integer; const AValue : String); virtual;
  283. //2.6.4. bug workaround
  284. {$IFDEF VER2_6}
  285. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  286. {$ENDIF VER2_6}
  287. Public
  288. Published
  289. Property code : String Index 0 Read Fcode Write Setcode;
  290. Property data : TOperationTypewarningsItemTypedataArray Index 8 Read Fdata Write Setdata;
  291. Property message : String Index 16 Read Fmessage Write Setmessage;
  292. end;
  293. TOperationTypewarningsItemClass = Class of TOperationTypewarningsItem;
  294. { --------------------------------------------------------------------
  295. TOperation
  296. --------------------------------------------------------------------}
  297. TOperation = Class(TGoogleBaseObject)
  298. Private
  299. FclientOperationId : String;
  300. FcreationTimestamp : String;
  301. FendTime : String;
  302. Ferror : TOperationTypeerror;
  303. FhttpErrorMessage : String;
  304. FhttpErrorStatusCode : integer;
  305. Fid : String;
  306. FinsertTime : String;
  307. Fkind : String;
  308. Fname : String;
  309. FoperationType : String;
  310. Fprogress : integer;
  311. Fregion : String;
  312. FselfLink : String;
  313. FstartTime : String;
  314. Fstatus : String;
  315. FstatusMessage : String;
  316. FtargetId : String;
  317. FtargetLink : String;
  318. Fuser : String;
  319. Fwarnings : TOperationTypewarningsArray;
  320. Fzone : String;
  321. Protected
  322. //Property setters
  323. Procedure SetclientOperationId(AIndex : Integer; const AValue : String); virtual;
  324. Procedure SetcreationTimestamp(AIndex : Integer; const AValue : String); virtual;
  325. Procedure SetendTime(AIndex : Integer; const AValue : String); virtual;
  326. Procedure Seterror(AIndex : Integer; const AValue : TOperationTypeerror); virtual;
  327. Procedure SethttpErrorMessage(AIndex : Integer; const AValue : String); virtual;
  328. Procedure SethttpErrorStatusCode(AIndex : Integer; const AValue : integer); virtual;
  329. Procedure Setid(AIndex : Integer; const AValue : String); virtual;
  330. Procedure SetinsertTime(AIndex : Integer; const AValue : String); virtual;
  331. Procedure Setkind(AIndex : Integer; const AValue : String); virtual;
  332. Procedure Setname(AIndex : Integer; const AValue : String); virtual;
  333. Procedure SetoperationType(AIndex : Integer; const AValue : String); virtual;
  334. Procedure Setprogress(AIndex : Integer; const AValue : integer); virtual;
  335. Procedure Setregion(AIndex : Integer; const AValue : String); virtual;
  336. Procedure SetselfLink(AIndex : Integer; const AValue : String); virtual;
  337. Procedure SetstartTime(AIndex : Integer; const AValue : String); virtual;
  338. Procedure Setstatus(AIndex : Integer; const AValue : String); virtual;
  339. Procedure SetstatusMessage(AIndex : Integer; const AValue : String); virtual;
  340. Procedure SettargetId(AIndex : Integer; const AValue : String); virtual;
  341. Procedure SettargetLink(AIndex : Integer; const AValue : String); virtual;
  342. Procedure Setuser(AIndex : Integer; const AValue : String); virtual;
  343. Procedure Setwarnings(AIndex : Integer; const AValue : TOperationTypewarningsArray); virtual;
  344. Procedure Setzone(AIndex : Integer; const AValue : String); virtual;
  345. //2.6.4. bug workaround
  346. {$IFDEF VER2_6}
  347. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  348. {$ENDIF VER2_6}
  349. Public
  350. Published
  351. Property clientOperationId : String Index 0 Read FclientOperationId Write SetclientOperationId;
  352. Property creationTimestamp : String Index 8 Read FcreationTimestamp Write SetcreationTimestamp;
  353. Property endTime : String Index 16 Read FendTime Write SetendTime;
  354. Property error : TOperationTypeerror Index 24 Read Ferror Write Seterror;
  355. Property httpErrorMessage : String Index 32 Read FhttpErrorMessage Write SethttpErrorMessage;
  356. Property httpErrorStatusCode : integer Index 40 Read FhttpErrorStatusCode Write SethttpErrorStatusCode;
  357. Property id : String Index 48 Read Fid Write Setid;
  358. Property insertTime : String Index 56 Read FinsertTime Write SetinsertTime;
  359. Property kind : String Index 64 Read Fkind Write Setkind;
  360. Property name : String Index 72 Read Fname Write Setname;
  361. Property operationType : String Index 80 Read FoperationType Write SetoperationType;
  362. Property progress : integer Index 88 Read Fprogress Write Setprogress;
  363. Property region : String Index 96 Read Fregion Write Setregion;
  364. Property selfLink : String Index 104 Read FselfLink Write SetselfLink;
  365. Property startTime : String Index 112 Read FstartTime Write SetstartTime;
  366. Property status : String Index 120 Read Fstatus Write Setstatus;
  367. Property statusMessage : String Index 128 Read FstatusMessage Write SetstatusMessage;
  368. Property targetId : String Index 136 Read FtargetId Write SettargetId;
  369. Property targetLink : String Index 144 Read FtargetLink Write SettargetLink;
  370. Property user : String Index 152 Read Fuser Write Setuser;
  371. Property warnings : TOperationTypewarningsArray Index 160 Read Fwarnings Write Setwarnings;
  372. Property zone : String Index 168 Read Fzone Write Setzone;
  373. end;
  374. TOperationClass = Class of TOperation;
  375. { --------------------------------------------------------------------
  376. TOperationList
  377. --------------------------------------------------------------------}
  378. TOperationList = Class(TGoogleBaseObject)
  379. Private
  380. Fid : String;
  381. Fitems : TOperationListTypeitemsArray;
  382. Fkind : String;
  383. FnextPageToken : String;
  384. FselfLink : String;
  385. Protected
  386. //Property setters
  387. Procedure Setid(AIndex : Integer; const AValue : String); virtual;
  388. Procedure Setitems(AIndex : Integer; const AValue : TOperationListTypeitemsArray); virtual;
  389. Procedure Setkind(AIndex : Integer; const AValue : String); virtual;
  390. Procedure SetnextPageToken(AIndex : Integer; const AValue : String); virtual;
  391. Procedure SetselfLink(AIndex : Integer; const AValue : String); virtual;
  392. //2.6.4. bug workaround
  393. {$IFDEF VER2_6}
  394. Procedure SetArrayLength(Const AName : String; ALength : Longint); override;
  395. {$ENDIF VER2_6}
  396. Public
  397. Published
  398. Property id : String Index 0 Read Fid Write Setid;
  399. Property items : TOperationListTypeitemsArray Index 8 Read Fitems Write Setitems;
  400. Property kind : String Index 16 Read Fkind Write Setkind;
  401. Property nextPageToken : String Index 24 Read FnextPageToken Write SetnextPageToken;
  402. Property selfLink : String Index 32 Read FselfLink Write SetselfLink;
  403. end;
  404. TOperationListClass = Class of TOperationList;
  405. { --------------------------------------------------------------------
  406. TReplicaPoolAutoHealingPolicy
  407. --------------------------------------------------------------------}
  408. TReplicaPoolAutoHealingPolicy = Class(TGoogleBaseObject)
  409. Private
  410. FactionType : String;
  411. FhealthCheck : String;
  412. Protected
  413. //Property setters
  414. Procedure SetactionType(AIndex : Integer; const AValue : String); virtual;
  415. Procedure SethealthCheck(AIndex : Integer; const AValue : String); virtual;
  416. Public
  417. Published
  418. Property actionType : String Index 0 Read FactionType Write SetactionType;
  419. Property healthCheck : String Index 8 Read FhealthCheck Write SethealthCheck;
  420. end;
  421. TReplicaPoolAutoHealingPolicyClass = Class of TReplicaPoolAutoHealingPolicy;
  422. { --------------------------------------------------------------------
  423. TInstanceGroupManagersResource
  424. --------------------------------------------------------------------}
  425. //Optional query Options for TInstanceGroupManagersResource, method Insert
  426. TInstanceGroupManagersInsertOptions = Record
  427. size : integer;
  428. end;
  429. //Optional query Options for TInstanceGroupManagersResource, method List
  430. TInstanceGroupManagersListOptions = Record
  431. filter : String;
  432. maxResults : integer;
  433. pageToken : String;
  434. end;
  435. //Optional query Options for TInstanceGroupManagersResource, method Resize
  436. TInstanceGroupManagersResizeOptions = Record
  437. size : integer;
  438. end;
  439. TInstanceGroupManagersResource = Class(TGoogleResource)
  440. Public
  441. Class Function ResourceName : String; override;
  442. Class Function DefaultAPI : TGoogleAPIClass; override;
  443. Function AbandonInstances(instanceGroupManager: string; project: string; zone: string; aInstanceGroupManagersAbandonInstancesRequest : TInstanceGroupManagersAbandonInstancesRequest) : TOperation;
  444. Function Delete(instanceGroupManager: string; project: string; zone: string) : TOperation;
  445. Function DeleteInstances(instanceGroupManager: string; project: string; zone: string; aInstanceGroupManagersDeleteInstancesRequest : TInstanceGroupManagersDeleteInstancesRequest) : TOperation;
  446. Function Get(instanceGroupManager: string; project: string; zone: string) : TInstanceGroupManager;
  447. Function Insert(project: string; zone: string; aInstanceGroupManager : TInstanceGroupManager; AQuery : string = '') : TOperation;
  448. Function Insert(project: string; zone: string; aInstanceGroupManager : TInstanceGroupManager; AQuery : TInstanceGroupManagersinsertOptions) : TOperation;
  449. Function List(project: string; zone: string; AQuery : string = '') : TInstanceGroupManagerList;
  450. Function List(project: string; zone: string; AQuery : TInstanceGroupManagerslistOptions) : TInstanceGroupManagerList;
  451. Function RecreateInstances(instanceGroupManager: string; project: string; zone: string; aInstanceGroupManagersRecreateInstancesRequest : TInstanceGroupManagersRecreateInstancesRequest) : TOperation;
  452. Function Resize(instanceGroupManager: string; project: string; zone: string; AQuery : string = '') : TOperation;
  453. Function Resize(instanceGroupManager: string; project: string; zone: string; AQuery : TInstanceGroupManagersresizeOptions) : TOperation;
  454. Function SetInstanceTemplate(instanceGroupManager: string; project: string; zone: string; aInstanceGroupManagersSetInstanceTemplateRequest : TInstanceGroupManagersSetInstanceTemplateRequest) : TOperation;
  455. Function SetTargetPools(instanceGroupManager: string; project: string; zone: string; aInstanceGroupManagersSetTargetPoolsRequest : TInstanceGroupManagersSetTargetPoolsRequest) : TOperation;
  456. end;
  457. { --------------------------------------------------------------------
  458. TZoneOperationsResource
  459. --------------------------------------------------------------------}
  460. //Optional query Options for TZoneOperationsResource, method List
  461. TZoneOperationsListOptions = Record
  462. filter : String;
  463. maxResults : integer;
  464. pageToken : String;
  465. end;
  466. TZoneOperationsResource = Class(TGoogleResource)
  467. Public
  468. Class Function ResourceName : String; override;
  469. Class Function DefaultAPI : TGoogleAPIClass; override;
  470. Function Get(operation: string; project: string; zone: string) : TOperation;
  471. Function List(project: string; zone: string; AQuery : string = '') : TOperationList;
  472. Function List(project: string; zone: string; AQuery : TZoneOperationslistOptions) : TOperationList;
  473. end;
  474. { --------------------------------------------------------------------
  475. TReplicapoolAPI
  476. --------------------------------------------------------------------}
  477. TReplicapoolAPI = Class(TGoogleAPI)
  478. Private
  479. FInstanceGroupManagersInstance : TInstanceGroupManagersResource;
  480. FZoneOperationsInstance : TZoneOperationsResource;
  481. Function GetInstanceGroupManagersInstance : TInstanceGroupManagersResource;virtual;
  482. Function GetZoneOperationsInstance : TZoneOperationsResource;virtual;
  483. Public
  484. //Override class functions with API info
  485. Class Function APIName : String; override;
  486. Class Function APIVersion : String; override;
  487. Class Function APIRevision : String; override;
  488. Class Function APIID : String; override;
  489. Class Function APITitle : String; override;
  490. Class Function APIDescription : String; override;
  491. Class Function APIOwnerDomain : String; override;
  492. Class Function APIOwnerName : String; override;
  493. Class Function APIIcon16 : String; override;
  494. Class Function APIIcon32 : String; override;
  495. Class Function APIdocumentationLink : String; override;
  496. Class Function APIrootUrl : string; override;
  497. Class Function APIbasePath : string;override;
  498. Class Function APIbaseURL : String;override;
  499. Class Function APIProtocol : string;override;
  500. Class Function APIservicePath : string;override;
  501. Class Function APIbatchPath : String;override;
  502. Class Function APIAuthScopes : TScopeInfoArray;override;
  503. Class Function APINeedsAuth : Boolean;override;
  504. Class Procedure RegisterAPIResources; override;
  505. //Add create function for resources
  506. Function CreateInstanceGroupManagersResource(AOwner : TComponent) : TInstanceGroupManagersResource;virtual;overload;
  507. Function CreateInstanceGroupManagersResource : TInstanceGroupManagersResource;virtual;overload;
  508. Function CreateZoneOperationsResource(AOwner : TComponent) : TZoneOperationsResource;virtual;overload;
  509. Function CreateZoneOperationsResource : TZoneOperationsResource;virtual;overload;
  510. //Add default on-demand instances for resources
  511. Property InstanceGroupManagersResource : TInstanceGroupManagersResource Read GetInstanceGroupManagersInstance;
  512. Property ZoneOperationsResource : TZoneOperationsResource Read GetZoneOperationsInstance;
  513. end;
  514. implementation
  515. { --------------------------------------------------------------------
  516. TInstanceGroupManager
  517. --------------------------------------------------------------------}
  518. Procedure TInstanceGroupManager.SetautoHealingPolicies(AIndex : Integer; const AValue : TInstanceGroupManagerTypeautoHealingPoliciesArray);
  519. begin
  520. If (FautoHealingPolicies=AValue) then exit;
  521. FautoHealingPolicies:=AValue;
  522. MarkPropertyChanged(AIndex);
  523. end;
  524. Procedure TInstanceGroupManager.SetbaseInstanceName(AIndex : Integer; const AValue : String);
  525. begin
  526. If (FbaseInstanceName=AValue) then exit;
  527. FbaseInstanceName:=AValue;
  528. MarkPropertyChanged(AIndex);
  529. end;
  530. Procedure TInstanceGroupManager.SetcreationTimestamp(AIndex : Integer; const AValue : String);
  531. begin
  532. If (FcreationTimestamp=AValue) then exit;
  533. FcreationTimestamp:=AValue;
  534. MarkPropertyChanged(AIndex);
  535. end;
  536. Procedure TInstanceGroupManager.SetcurrentSize(AIndex : Integer; const AValue : integer);
  537. begin
  538. If (FcurrentSize=AValue) then exit;
  539. FcurrentSize:=AValue;
  540. MarkPropertyChanged(AIndex);
  541. end;
  542. Procedure TInstanceGroupManager.Setdescription(AIndex : Integer; const AValue : String);
  543. begin
  544. If (Fdescription=AValue) then exit;
  545. Fdescription:=AValue;
  546. MarkPropertyChanged(AIndex);
  547. end;
  548. Procedure TInstanceGroupManager.Setfingerprint(AIndex : Integer; const AValue : String);
  549. begin
  550. If (Ffingerprint=AValue) then exit;
  551. Ffingerprint:=AValue;
  552. MarkPropertyChanged(AIndex);
  553. end;
  554. Procedure TInstanceGroupManager.Setgroup(AIndex : Integer; const AValue : String);
  555. begin
  556. If (Fgroup=AValue) then exit;
  557. Fgroup:=AValue;
  558. MarkPropertyChanged(AIndex);
  559. end;
  560. Procedure TInstanceGroupManager.Setid(AIndex : Integer; const AValue : String);
  561. begin
  562. If (Fid=AValue) then exit;
  563. Fid:=AValue;
  564. MarkPropertyChanged(AIndex);
  565. end;
  566. Procedure TInstanceGroupManager.SetinstanceTemplate(AIndex : Integer; const AValue : String);
  567. begin
  568. If (FinstanceTemplate=AValue) then exit;
  569. FinstanceTemplate:=AValue;
  570. MarkPropertyChanged(AIndex);
  571. end;
  572. Procedure TInstanceGroupManager.Setkind(AIndex : Integer; const AValue : String);
  573. begin
  574. If (Fkind=AValue) then exit;
  575. Fkind:=AValue;
  576. MarkPropertyChanged(AIndex);
  577. end;
  578. Procedure TInstanceGroupManager.Setname(AIndex : Integer; const AValue : String);
  579. begin
  580. If (Fname=AValue) then exit;
  581. Fname:=AValue;
  582. MarkPropertyChanged(AIndex);
  583. end;
  584. Procedure TInstanceGroupManager.SetselfLink(AIndex : Integer; const AValue : String);
  585. begin
  586. If (FselfLink=AValue) then exit;
  587. FselfLink:=AValue;
  588. MarkPropertyChanged(AIndex);
  589. end;
  590. Procedure TInstanceGroupManager.SettargetPools(AIndex : Integer; const AValue : TStringArray);
  591. begin
  592. If (FtargetPools=AValue) then exit;
  593. FtargetPools:=AValue;
  594. MarkPropertyChanged(AIndex);
  595. end;
  596. Procedure TInstanceGroupManager.SettargetSize(AIndex : Integer; const AValue : integer);
  597. begin
  598. If (FtargetSize=AValue) then exit;
  599. FtargetSize:=AValue;
  600. MarkPropertyChanged(AIndex);
  601. end;
  602. //2.6.4. bug workaround
  603. {$IFDEF VER2_6}
  604. Procedure TInstanceGroupManager.SetArrayLength(Const AName : String; ALength : Longint);
  605. begin
  606. Case AName of
  607. 'autohealingpolicies' : SetLength(FautoHealingPolicies,ALength);
  608. 'targetpools' : SetLength(FtargetPools,ALength);
  609. else
  610. Inherited SetArrayLength(AName,ALength);
  611. end;
  612. end;
  613. {$ENDIF VER2_6}
  614. { --------------------------------------------------------------------
  615. TInstanceGroupManagerList
  616. --------------------------------------------------------------------}
  617. Procedure TInstanceGroupManagerList.Setid(AIndex : Integer; const AValue : String);
  618. begin
  619. If (Fid=AValue) then exit;
  620. Fid:=AValue;
  621. MarkPropertyChanged(AIndex);
  622. end;
  623. Procedure TInstanceGroupManagerList.Setitems(AIndex : Integer; const AValue : TInstanceGroupManagerListTypeitemsArray);
  624. begin
  625. If (Fitems=AValue) then exit;
  626. Fitems:=AValue;
  627. MarkPropertyChanged(AIndex);
  628. end;
  629. Procedure TInstanceGroupManagerList.Setkind(AIndex : Integer; const AValue : String);
  630. begin
  631. If (Fkind=AValue) then exit;
  632. Fkind:=AValue;
  633. MarkPropertyChanged(AIndex);
  634. end;
  635. Procedure TInstanceGroupManagerList.SetnextPageToken(AIndex : Integer; const AValue : String);
  636. begin
  637. If (FnextPageToken=AValue) then exit;
  638. FnextPageToken:=AValue;
  639. MarkPropertyChanged(AIndex);
  640. end;
  641. Procedure TInstanceGroupManagerList.SetselfLink(AIndex : Integer; const AValue : String);
  642. begin
  643. If (FselfLink=AValue) then exit;
  644. FselfLink:=AValue;
  645. MarkPropertyChanged(AIndex);
  646. end;
  647. //2.6.4. bug workaround
  648. {$IFDEF VER2_6}
  649. Procedure TInstanceGroupManagerList.SetArrayLength(Const AName : String; ALength : Longint);
  650. begin
  651. Case AName of
  652. 'items' : SetLength(Fitems,ALength);
  653. else
  654. Inherited SetArrayLength(AName,ALength);
  655. end;
  656. end;
  657. {$ENDIF VER2_6}
  658. { --------------------------------------------------------------------
  659. TInstanceGroupManagersAbandonInstancesRequest
  660. --------------------------------------------------------------------}
  661. Procedure TInstanceGroupManagersAbandonInstancesRequest.Setinstances(AIndex : Integer; const AValue : TStringArray);
  662. begin
  663. If (Finstances=AValue) then exit;
  664. Finstances:=AValue;
  665. MarkPropertyChanged(AIndex);
  666. end;
  667. //2.6.4. bug workaround
  668. {$IFDEF VER2_6}
  669. Procedure TInstanceGroupManagersAbandonInstancesRequest.SetArrayLength(Const AName : String; ALength : Longint);
  670. begin
  671. Case AName of
  672. 'instances' : SetLength(Finstances,ALength);
  673. else
  674. Inherited SetArrayLength(AName,ALength);
  675. end;
  676. end;
  677. {$ENDIF VER2_6}
  678. { --------------------------------------------------------------------
  679. TInstanceGroupManagersDeleteInstancesRequest
  680. --------------------------------------------------------------------}
  681. Procedure TInstanceGroupManagersDeleteInstancesRequest.Setinstances(AIndex : Integer; const AValue : TStringArray);
  682. begin
  683. If (Finstances=AValue) then exit;
  684. Finstances:=AValue;
  685. MarkPropertyChanged(AIndex);
  686. end;
  687. //2.6.4. bug workaround
  688. {$IFDEF VER2_6}
  689. Procedure TInstanceGroupManagersDeleteInstancesRequest.SetArrayLength(Const AName : String; ALength : Longint);
  690. begin
  691. Case AName of
  692. 'instances' : SetLength(Finstances,ALength);
  693. else
  694. Inherited SetArrayLength(AName,ALength);
  695. end;
  696. end;
  697. {$ENDIF VER2_6}
  698. { --------------------------------------------------------------------
  699. TInstanceGroupManagersRecreateInstancesRequest
  700. --------------------------------------------------------------------}
  701. Procedure TInstanceGroupManagersRecreateInstancesRequest.Setinstances(AIndex : Integer; const AValue : TStringArray);
  702. begin
  703. If (Finstances=AValue) then exit;
  704. Finstances:=AValue;
  705. MarkPropertyChanged(AIndex);
  706. end;
  707. //2.6.4. bug workaround
  708. {$IFDEF VER2_6}
  709. Procedure TInstanceGroupManagersRecreateInstancesRequest.SetArrayLength(Const AName : String; ALength : Longint);
  710. begin
  711. Case AName of
  712. 'instances' : SetLength(Finstances,ALength);
  713. else
  714. Inherited SetArrayLength(AName,ALength);
  715. end;
  716. end;
  717. {$ENDIF VER2_6}
  718. { --------------------------------------------------------------------
  719. TInstanceGroupManagersSetInstanceTemplateRequest
  720. --------------------------------------------------------------------}
  721. Procedure TInstanceGroupManagersSetInstanceTemplateRequest.SetinstanceTemplate(AIndex : Integer; const AValue : String);
  722. begin
  723. If (FinstanceTemplate=AValue) then exit;
  724. FinstanceTemplate:=AValue;
  725. MarkPropertyChanged(AIndex);
  726. end;
  727. { --------------------------------------------------------------------
  728. TInstanceGroupManagersSetTargetPoolsRequest
  729. --------------------------------------------------------------------}
  730. Procedure TInstanceGroupManagersSetTargetPoolsRequest.Setfingerprint(AIndex : Integer; const AValue : String);
  731. begin
  732. If (Ffingerprint=AValue) then exit;
  733. Ffingerprint:=AValue;
  734. MarkPropertyChanged(AIndex);
  735. end;
  736. Procedure TInstanceGroupManagersSetTargetPoolsRequest.SettargetPools(AIndex : Integer; const AValue : TStringArray);
  737. begin
  738. If (FtargetPools=AValue) then exit;
  739. FtargetPools:=AValue;
  740. MarkPropertyChanged(AIndex);
  741. end;
  742. //2.6.4. bug workaround
  743. {$IFDEF VER2_6}
  744. Procedure TInstanceGroupManagersSetTargetPoolsRequest.SetArrayLength(Const AName : String; ALength : Longint);
  745. begin
  746. Case AName of
  747. 'targetpools' : SetLength(FtargetPools,ALength);
  748. else
  749. Inherited SetArrayLength(AName,ALength);
  750. end;
  751. end;
  752. {$ENDIF VER2_6}
  753. { --------------------------------------------------------------------
  754. TOperationTypeerrorTypeerrorsItem
  755. --------------------------------------------------------------------}
  756. Procedure TOperationTypeerrorTypeerrorsItem.Setcode(AIndex : Integer; const AValue : String);
  757. begin
  758. If (Fcode=AValue) then exit;
  759. Fcode:=AValue;
  760. MarkPropertyChanged(AIndex);
  761. end;
  762. Procedure TOperationTypeerrorTypeerrorsItem.Setlocation(AIndex : Integer; const AValue : String);
  763. begin
  764. If (Flocation=AValue) then exit;
  765. Flocation:=AValue;
  766. MarkPropertyChanged(AIndex);
  767. end;
  768. Procedure TOperationTypeerrorTypeerrorsItem.Setmessage(AIndex : Integer; const AValue : String);
  769. begin
  770. If (Fmessage=AValue) then exit;
  771. Fmessage:=AValue;
  772. MarkPropertyChanged(AIndex);
  773. end;
  774. { --------------------------------------------------------------------
  775. TOperationTypeerror
  776. --------------------------------------------------------------------}
  777. Procedure TOperationTypeerror.Seterrors(AIndex : Integer; const AValue : TOperationTypeerrorTypeerrorsArray);
  778. begin
  779. If (Ferrors=AValue) then exit;
  780. Ferrors:=AValue;
  781. MarkPropertyChanged(AIndex);
  782. end;
  783. //2.6.4. bug workaround
  784. {$IFDEF VER2_6}
  785. Procedure TOperationTypeerror.SetArrayLength(Const AName : String; ALength : Longint);
  786. begin
  787. Case AName of
  788. 'errors' : SetLength(Ferrors,ALength);
  789. else
  790. Inherited SetArrayLength(AName,ALength);
  791. end;
  792. end;
  793. {$ENDIF VER2_6}
  794. { --------------------------------------------------------------------
  795. TOperationTypewarningsItemTypedataItem
  796. --------------------------------------------------------------------}
  797. Procedure TOperationTypewarningsItemTypedataItem.Setkey(AIndex : Integer; const AValue : String);
  798. begin
  799. If (Fkey=AValue) then exit;
  800. Fkey:=AValue;
  801. MarkPropertyChanged(AIndex);
  802. end;
  803. Procedure TOperationTypewarningsItemTypedataItem.Setvalue(AIndex : Integer; const AValue : String);
  804. begin
  805. If (Fvalue=AValue) then exit;
  806. Fvalue:=AValue;
  807. MarkPropertyChanged(AIndex);
  808. end;
  809. { --------------------------------------------------------------------
  810. TOperationTypewarningsItem
  811. --------------------------------------------------------------------}
  812. Procedure TOperationTypewarningsItem.Setcode(AIndex : Integer; const AValue : String);
  813. begin
  814. If (Fcode=AValue) then exit;
  815. Fcode:=AValue;
  816. MarkPropertyChanged(AIndex);
  817. end;
  818. Procedure TOperationTypewarningsItem.Setdata(AIndex : Integer; const AValue : TOperationTypewarningsItemTypedataArray);
  819. begin
  820. If (Fdata=AValue) then exit;
  821. Fdata:=AValue;
  822. MarkPropertyChanged(AIndex);
  823. end;
  824. Procedure TOperationTypewarningsItem.Setmessage(AIndex : Integer; const AValue : String);
  825. begin
  826. If (Fmessage=AValue) then exit;
  827. Fmessage:=AValue;
  828. MarkPropertyChanged(AIndex);
  829. end;
  830. //2.6.4. bug workaround
  831. {$IFDEF VER2_6}
  832. Procedure TOperationTypewarningsItem.SetArrayLength(Const AName : String; ALength : Longint);
  833. begin
  834. Case AName of
  835. 'data' : SetLength(Fdata,ALength);
  836. else
  837. Inherited SetArrayLength(AName,ALength);
  838. end;
  839. end;
  840. {$ENDIF VER2_6}
  841. { --------------------------------------------------------------------
  842. TOperation
  843. --------------------------------------------------------------------}
  844. Procedure TOperation.SetclientOperationId(AIndex : Integer; const AValue : String);
  845. begin
  846. If (FclientOperationId=AValue) then exit;
  847. FclientOperationId:=AValue;
  848. MarkPropertyChanged(AIndex);
  849. end;
  850. Procedure TOperation.SetcreationTimestamp(AIndex : Integer; const AValue : String);
  851. begin
  852. If (FcreationTimestamp=AValue) then exit;
  853. FcreationTimestamp:=AValue;
  854. MarkPropertyChanged(AIndex);
  855. end;
  856. Procedure TOperation.SetendTime(AIndex : Integer; const AValue : String);
  857. begin
  858. If (FendTime=AValue) then exit;
  859. FendTime:=AValue;
  860. MarkPropertyChanged(AIndex);
  861. end;
  862. Procedure TOperation.Seterror(AIndex : Integer; const AValue : TOperationTypeerror);
  863. begin
  864. If (Ferror=AValue) then exit;
  865. Ferror:=AValue;
  866. MarkPropertyChanged(AIndex);
  867. end;
  868. Procedure TOperation.SethttpErrorMessage(AIndex : Integer; const AValue : String);
  869. begin
  870. If (FhttpErrorMessage=AValue) then exit;
  871. FhttpErrorMessage:=AValue;
  872. MarkPropertyChanged(AIndex);
  873. end;
  874. Procedure TOperation.SethttpErrorStatusCode(AIndex : Integer; const AValue : integer);
  875. begin
  876. If (FhttpErrorStatusCode=AValue) then exit;
  877. FhttpErrorStatusCode:=AValue;
  878. MarkPropertyChanged(AIndex);
  879. end;
  880. Procedure TOperation.Setid(AIndex : Integer; const AValue : String);
  881. begin
  882. If (Fid=AValue) then exit;
  883. Fid:=AValue;
  884. MarkPropertyChanged(AIndex);
  885. end;
  886. Procedure TOperation.SetinsertTime(AIndex : Integer; const AValue : String);
  887. begin
  888. If (FinsertTime=AValue) then exit;
  889. FinsertTime:=AValue;
  890. MarkPropertyChanged(AIndex);
  891. end;
  892. Procedure TOperation.Setkind(AIndex : Integer; const AValue : String);
  893. begin
  894. If (Fkind=AValue) then exit;
  895. Fkind:=AValue;
  896. MarkPropertyChanged(AIndex);
  897. end;
  898. Procedure TOperation.Setname(AIndex : Integer; const AValue : String);
  899. begin
  900. If (Fname=AValue) then exit;
  901. Fname:=AValue;
  902. MarkPropertyChanged(AIndex);
  903. end;
  904. Procedure TOperation.SetoperationType(AIndex : Integer; const AValue : String);
  905. begin
  906. If (FoperationType=AValue) then exit;
  907. FoperationType:=AValue;
  908. MarkPropertyChanged(AIndex);
  909. end;
  910. Procedure TOperation.Setprogress(AIndex : Integer; const AValue : integer);
  911. begin
  912. If (Fprogress=AValue) then exit;
  913. Fprogress:=AValue;
  914. MarkPropertyChanged(AIndex);
  915. end;
  916. Procedure TOperation.Setregion(AIndex : Integer; const AValue : String);
  917. begin
  918. If (Fregion=AValue) then exit;
  919. Fregion:=AValue;
  920. MarkPropertyChanged(AIndex);
  921. end;
  922. Procedure TOperation.SetselfLink(AIndex : Integer; const AValue : String);
  923. begin
  924. If (FselfLink=AValue) then exit;
  925. FselfLink:=AValue;
  926. MarkPropertyChanged(AIndex);
  927. end;
  928. Procedure TOperation.SetstartTime(AIndex : Integer; const AValue : String);
  929. begin
  930. If (FstartTime=AValue) then exit;
  931. FstartTime:=AValue;
  932. MarkPropertyChanged(AIndex);
  933. end;
  934. Procedure TOperation.Setstatus(AIndex : Integer; const AValue : String);
  935. begin
  936. If (Fstatus=AValue) then exit;
  937. Fstatus:=AValue;
  938. MarkPropertyChanged(AIndex);
  939. end;
  940. Procedure TOperation.SetstatusMessage(AIndex : Integer; const AValue : String);
  941. begin
  942. If (FstatusMessage=AValue) then exit;
  943. FstatusMessage:=AValue;
  944. MarkPropertyChanged(AIndex);
  945. end;
  946. Procedure TOperation.SettargetId(AIndex : Integer; const AValue : String);
  947. begin
  948. If (FtargetId=AValue) then exit;
  949. FtargetId:=AValue;
  950. MarkPropertyChanged(AIndex);
  951. end;
  952. Procedure TOperation.SettargetLink(AIndex : Integer; const AValue : String);
  953. begin
  954. If (FtargetLink=AValue) then exit;
  955. FtargetLink:=AValue;
  956. MarkPropertyChanged(AIndex);
  957. end;
  958. Procedure TOperation.Setuser(AIndex : Integer; const AValue : String);
  959. begin
  960. If (Fuser=AValue) then exit;
  961. Fuser:=AValue;
  962. MarkPropertyChanged(AIndex);
  963. end;
  964. Procedure TOperation.Setwarnings(AIndex : Integer; const AValue : TOperationTypewarningsArray);
  965. begin
  966. If (Fwarnings=AValue) then exit;
  967. Fwarnings:=AValue;
  968. MarkPropertyChanged(AIndex);
  969. end;
  970. Procedure TOperation.Setzone(AIndex : Integer; const AValue : String);
  971. begin
  972. If (Fzone=AValue) then exit;
  973. Fzone:=AValue;
  974. MarkPropertyChanged(AIndex);
  975. end;
  976. //2.6.4. bug workaround
  977. {$IFDEF VER2_6}
  978. Procedure TOperation.SetArrayLength(Const AName : String; ALength : Longint);
  979. begin
  980. Case AName of
  981. 'warnings' : SetLength(Fwarnings,ALength);
  982. else
  983. Inherited SetArrayLength(AName,ALength);
  984. end;
  985. end;
  986. {$ENDIF VER2_6}
  987. { --------------------------------------------------------------------
  988. TOperationList
  989. --------------------------------------------------------------------}
  990. Procedure TOperationList.Setid(AIndex : Integer; const AValue : String);
  991. begin
  992. If (Fid=AValue) then exit;
  993. Fid:=AValue;
  994. MarkPropertyChanged(AIndex);
  995. end;
  996. Procedure TOperationList.Setitems(AIndex : Integer; const AValue : TOperationListTypeitemsArray);
  997. begin
  998. If (Fitems=AValue) then exit;
  999. Fitems:=AValue;
  1000. MarkPropertyChanged(AIndex);
  1001. end;
  1002. Procedure TOperationList.Setkind(AIndex : Integer; const AValue : String);
  1003. begin
  1004. If (Fkind=AValue) then exit;
  1005. Fkind:=AValue;
  1006. MarkPropertyChanged(AIndex);
  1007. end;
  1008. Procedure TOperationList.SetnextPageToken(AIndex : Integer; const AValue : String);
  1009. begin
  1010. If (FnextPageToken=AValue) then exit;
  1011. FnextPageToken:=AValue;
  1012. MarkPropertyChanged(AIndex);
  1013. end;
  1014. Procedure TOperationList.SetselfLink(AIndex : Integer; const AValue : String);
  1015. begin
  1016. If (FselfLink=AValue) then exit;
  1017. FselfLink:=AValue;
  1018. MarkPropertyChanged(AIndex);
  1019. end;
  1020. //2.6.4. bug workaround
  1021. {$IFDEF VER2_6}
  1022. Procedure TOperationList.SetArrayLength(Const AName : String; ALength : Longint);
  1023. begin
  1024. Case AName of
  1025. 'items' : SetLength(Fitems,ALength);
  1026. else
  1027. Inherited SetArrayLength(AName,ALength);
  1028. end;
  1029. end;
  1030. {$ENDIF VER2_6}
  1031. { --------------------------------------------------------------------
  1032. TReplicaPoolAutoHealingPolicy
  1033. --------------------------------------------------------------------}
  1034. Procedure TReplicaPoolAutoHealingPolicy.SetactionType(AIndex : Integer; const AValue : String);
  1035. begin
  1036. If (FactionType=AValue) then exit;
  1037. FactionType:=AValue;
  1038. MarkPropertyChanged(AIndex);
  1039. end;
  1040. Procedure TReplicaPoolAutoHealingPolicy.SethealthCheck(AIndex : Integer; const AValue : String);
  1041. begin
  1042. If (FhealthCheck=AValue) then exit;
  1043. FhealthCheck:=AValue;
  1044. MarkPropertyChanged(AIndex);
  1045. end;
  1046. { --------------------------------------------------------------------
  1047. TInstanceGroupManagersResource
  1048. --------------------------------------------------------------------}
  1049. Class Function TInstanceGroupManagersResource.ResourceName : String;
  1050. begin
  1051. Result:='instanceGroupManagers';
  1052. end;
  1053. Class Function TInstanceGroupManagersResource.DefaultAPI : TGoogleAPIClass;
  1054. begin
  1055. Result:=TreplicapoolAPI;
  1056. end;
  1057. Function TInstanceGroupManagersResource.AbandonInstances(instanceGroupManager: string; project: string; zone: string; aInstanceGroupManagersAbandonInstancesRequest : TInstanceGroupManagersAbandonInstancesRequest) : TOperation;
  1058. Const
  1059. _HTTPMethod = 'POST';
  1060. _Path = '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances';
  1061. _Methodid = 'replicapool.instanceGroupManagers.abandonInstances';
  1062. Var
  1063. _P : String;
  1064. begin
  1065. _P:=SubstitutePath(_Path,['instanceGroupManager',instanceGroupManager,'project',project,'zone',zone]);
  1066. Result:=ServiceCall(_HTTPMethod,_P,'',aInstanceGroupManagersAbandonInstancesRequest,TOperation) as TOperation;
  1067. end;
  1068. Function TInstanceGroupManagersResource.Delete(instanceGroupManager: string; project: string; zone: string) : TOperation;
  1069. Const
  1070. _HTTPMethod = 'DELETE';
  1071. _Path = '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}';
  1072. _Methodid = 'replicapool.instanceGroupManagers.delete';
  1073. Var
  1074. _P : String;
  1075. begin
  1076. _P:=SubstitutePath(_Path,['instanceGroupManager',instanceGroupManager,'project',project,'zone',zone]);
  1077. Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TOperation) as TOperation;
  1078. end;
  1079. Function TInstanceGroupManagersResource.DeleteInstances(instanceGroupManager: string; project: string; zone: string; aInstanceGroupManagersDeleteInstancesRequest : TInstanceGroupManagersDeleteInstancesRequest) : TOperation;
  1080. Const
  1081. _HTTPMethod = 'POST';
  1082. _Path = '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances';
  1083. _Methodid = 'replicapool.instanceGroupManagers.deleteInstances';
  1084. Var
  1085. _P : String;
  1086. begin
  1087. _P:=SubstitutePath(_Path,['instanceGroupManager',instanceGroupManager,'project',project,'zone',zone]);
  1088. Result:=ServiceCall(_HTTPMethod,_P,'',aInstanceGroupManagersDeleteInstancesRequest,TOperation) as TOperation;
  1089. end;
  1090. Function TInstanceGroupManagersResource.Get(instanceGroupManager: string; project: string; zone: string) : TInstanceGroupManager;
  1091. Const
  1092. _HTTPMethod = 'GET';
  1093. _Path = '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}';
  1094. _Methodid = 'replicapool.instanceGroupManagers.get';
  1095. Var
  1096. _P : String;
  1097. begin
  1098. _P:=SubstitutePath(_Path,['instanceGroupManager',instanceGroupManager,'project',project,'zone',zone]);
  1099. Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TInstanceGroupManager) as TInstanceGroupManager;
  1100. end;
  1101. Function TInstanceGroupManagersResource.Insert(project: string; zone: string; aInstanceGroupManager : TInstanceGroupManager; AQuery : string = '') : TOperation;
  1102. Const
  1103. _HTTPMethod = 'POST';
  1104. _Path = '{project}/zones/{zone}/instanceGroupManagers';
  1105. _Methodid = 'replicapool.instanceGroupManagers.insert';
  1106. Var
  1107. _P : String;
  1108. begin
  1109. _P:=SubstitutePath(_Path,['project',project,'zone',zone]);
  1110. Result:=ServiceCall(_HTTPMethod,_P,AQuery,aInstanceGroupManager,TOperation) as TOperation;
  1111. end;
  1112. Function TInstanceGroupManagersResource.Insert(project: string; zone: string; aInstanceGroupManager : TInstanceGroupManager; AQuery : TInstanceGroupManagersinsertOptions) : TOperation;
  1113. Var
  1114. _Q : String;
  1115. begin
  1116. _Q:='';
  1117. AddToQuery(_Q,'size',AQuery.size);
  1118. Result:=Insert(project,zone,aInstanceGroupManager,_Q);
  1119. end;
  1120. Function TInstanceGroupManagersResource.List(project: string; zone: string; AQuery : string = '') : TInstanceGroupManagerList;
  1121. Const
  1122. _HTTPMethod = 'GET';
  1123. _Path = '{project}/zones/{zone}/instanceGroupManagers';
  1124. _Methodid = 'replicapool.instanceGroupManagers.list';
  1125. Var
  1126. _P : String;
  1127. begin
  1128. _P:=SubstitutePath(_Path,['project',project,'zone',zone]);
  1129. Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TInstanceGroupManagerList) as TInstanceGroupManagerList;
  1130. end;
  1131. Function TInstanceGroupManagersResource.List(project: string; zone: string; AQuery : TInstanceGroupManagerslistOptions) : TInstanceGroupManagerList;
  1132. Var
  1133. _Q : String;
  1134. begin
  1135. _Q:='';
  1136. AddToQuery(_Q,'filter',AQuery.filter);
  1137. AddToQuery(_Q,'maxResults',AQuery.maxResults);
  1138. AddToQuery(_Q,'pageToken',AQuery.pageToken);
  1139. Result:=List(project,zone,_Q);
  1140. end;
  1141. Function TInstanceGroupManagersResource.RecreateInstances(instanceGroupManager: string; project: string; zone: string; aInstanceGroupManagersRecreateInstancesRequest : TInstanceGroupManagersRecreateInstancesRequest) : TOperation;
  1142. Const
  1143. _HTTPMethod = 'POST';
  1144. _Path = '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances';
  1145. _Methodid = 'replicapool.instanceGroupManagers.recreateInstances';
  1146. Var
  1147. _P : String;
  1148. begin
  1149. _P:=SubstitutePath(_Path,['instanceGroupManager',instanceGroupManager,'project',project,'zone',zone]);
  1150. Result:=ServiceCall(_HTTPMethod,_P,'',aInstanceGroupManagersRecreateInstancesRequest,TOperation) as TOperation;
  1151. end;
  1152. Function TInstanceGroupManagersResource.Resize(instanceGroupManager: string; project: string; zone: string; AQuery : string = '') : TOperation;
  1153. Const
  1154. _HTTPMethod = 'POST';
  1155. _Path = '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize';
  1156. _Methodid = 'replicapool.instanceGroupManagers.resize';
  1157. Var
  1158. _P : String;
  1159. begin
  1160. _P:=SubstitutePath(_Path,['instanceGroupManager',instanceGroupManager,'project',project,'zone',zone]);
  1161. Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TOperation) as TOperation;
  1162. end;
  1163. Function TInstanceGroupManagersResource.Resize(instanceGroupManager: string; project: string; zone: string; AQuery : TInstanceGroupManagersresizeOptions) : TOperation;
  1164. Var
  1165. _Q : String;
  1166. begin
  1167. _Q:='';
  1168. AddToQuery(_Q,'size',AQuery.size);
  1169. Result:=Resize(instanceGroupManager,project,zone,_Q);
  1170. end;
  1171. Function TInstanceGroupManagersResource.SetInstanceTemplate(instanceGroupManager: string; project: string; zone: string; aInstanceGroupManagersSetInstanceTemplateRequest : TInstanceGroupManagersSetInstanceTemplateRequest) : TOperation;
  1172. Const
  1173. _HTTPMethod = 'POST';
  1174. _Path = '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate';
  1175. _Methodid = 'replicapool.instanceGroupManagers.setInstanceTemplate';
  1176. Var
  1177. _P : String;
  1178. begin
  1179. _P:=SubstitutePath(_Path,['instanceGroupManager',instanceGroupManager,'project',project,'zone',zone]);
  1180. Result:=ServiceCall(_HTTPMethod,_P,'',aInstanceGroupManagersSetInstanceTemplateRequest,TOperation) as TOperation;
  1181. end;
  1182. Function TInstanceGroupManagersResource.SetTargetPools(instanceGroupManager: string; project: string; zone: string; aInstanceGroupManagersSetTargetPoolsRequest : TInstanceGroupManagersSetTargetPoolsRequest) : TOperation;
  1183. Const
  1184. _HTTPMethod = 'POST';
  1185. _Path = '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools';
  1186. _Methodid = 'replicapool.instanceGroupManagers.setTargetPools';
  1187. Var
  1188. _P : String;
  1189. begin
  1190. _P:=SubstitutePath(_Path,['instanceGroupManager',instanceGroupManager,'project',project,'zone',zone]);
  1191. Result:=ServiceCall(_HTTPMethod,_P,'',aInstanceGroupManagersSetTargetPoolsRequest,TOperation) as TOperation;
  1192. end;
  1193. { --------------------------------------------------------------------
  1194. TZoneOperationsResource
  1195. --------------------------------------------------------------------}
  1196. Class Function TZoneOperationsResource.ResourceName : String;
  1197. begin
  1198. Result:='zoneOperations';
  1199. end;
  1200. Class Function TZoneOperationsResource.DefaultAPI : TGoogleAPIClass;
  1201. begin
  1202. Result:=TreplicapoolAPI;
  1203. end;
  1204. Function TZoneOperationsResource.Get(operation: string; project: string; zone: string) : TOperation;
  1205. Const
  1206. _HTTPMethod = 'GET';
  1207. _Path = '{project}/zones/{zone}/operations/{operation}';
  1208. _Methodid = 'replicapool.zoneOperations.get';
  1209. Var
  1210. _P : String;
  1211. begin
  1212. _P:=SubstitutePath(_Path,['operation',operation,'project',project,'zone',zone]);
  1213. Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TOperation) as TOperation;
  1214. end;
  1215. Function TZoneOperationsResource.List(project: string; zone: string; AQuery : string = '') : TOperationList;
  1216. Const
  1217. _HTTPMethod = 'GET';
  1218. _Path = '{project}/zones/{zone}/operations';
  1219. _Methodid = 'replicapool.zoneOperations.list';
  1220. Var
  1221. _P : String;
  1222. begin
  1223. _P:=SubstitutePath(_Path,['project',project,'zone',zone]);
  1224. Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TOperationList) as TOperationList;
  1225. end;
  1226. Function TZoneOperationsResource.List(project: string; zone: string; AQuery : TZoneOperationslistOptions) : TOperationList;
  1227. Var
  1228. _Q : String;
  1229. begin
  1230. _Q:='';
  1231. AddToQuery(_Q,'filter',AQuery.filter);
  1232. AddToQuery(_Q,'maxResults',AQuery.maxResults);
  1233. AddToQuery(_Q,'pageToken',AQuery.pageToken);
  1234. Result:=List(project,zone,_Q);
  1235. end;
  1236. { --------------------------------------------------------------------
  1237. TReplicapoolAPI
  1238. --------------------------------------------------------------------}
  1239. Class Function TReplicapoolAPI.APIName : String;
  1240. begin
  1241. Result:='replicapool';
  1242. end;
  1243. Class Function TReplicapoolAPI.APIVersion : String;
  1244. begin
  1245. Result:='v1beta2';
  1246. end;
  1247. Class Function TReplicapoolAPI.APIRevision : String;
  1248. begin
  1249. Result:='20160509';
  1250. end;
  1251. Class Function TReplicapoolAPI.APIID : String;
  1252. begin
  1253. Result:='replicapool:v1beta2';
  1254. end;
  1255. Class Function TReplicapoolAPI.APITitle : String;
  1256. begin
  1257. Result:='Google Compute Engine Instance Group Manager API';
  1258. end;
  1259. Class Function TReplicapoolAPI.APIDescription : String;
  1260. begin
  1261. Result:='[Deprecated. Please use Instance Group Manager in Compute API] Provides groups of homogenous Compute Engine instances.';
  1262. end;
  1263. Class Function TReplicapoolAPI.APIOwnerDomain : String;
  1264. begin
  1265. Result:='google.com';
  1266. end;
  1267. Class Function TReplicapoolAPI.APIOwnerName : String;
  1268. begin
  1269. Result:='Google';
  1270. end;
  1271. Class Function TReplicapoolAPI.APIIcon16 : String;
  1272. begin
  1273. Result:='http://www.google.com/images/icons/product/search-16.gif';
  1274. end;
  1275. Class Function TReplicapoolAPI.APIIcon32 : String;
  1276. begin
  1277. Result:='http://www.google.com/images/icons/product/search-32.gif';
  1278. end;
  1279. Class Function TReplicapoolAPI.APIdocumentationLink : String;
  1280. begin
  1281. Result:='https://developers.google.com/compute/docs/instance-groups/manager/v1beta2';
  1282. end;
  1283. Class Function TReplicapoolAPI.APIrootUrl : string;
  1284. begin
  1285. Result:='https://www.googleapis.com/';
  1286. end;
  1287. Class Function TReplicapoolAPI.APIbasePath : string;
  1288. begin
  1289. Result:='/replicapool/v1beta2/projects/';
  1290. end;
  1291. Class Function TReplicapoolAPI.APIbaseURL : String;
  1292. begin
  1293. Result:='https://www.googleapis.com/replicapool/v1beta2/projects/';
  1294. end;
  1295. Class Function TReplicapoolAPI.APIProtocol : string;
  1296. begin
  1297. Result:='rest';
  1298. end;
  1299. Class Function TReplicapoolAPI.APIservicePath : string;
  1300. begin
  1301. Result:='replicapool/v1beta2/projects/';
  1302. end;
  1303. Class Function TReplicapoolAPI.APIbatchPath : String;
  1304. begin
  1305. Result:='batch';
  1306. end;
  1307. Class Function TReplicapoolAPI.APIAuthScopes : TScopeInfoArray;
  1308. begin
  1309. SetLength(Result,4);
  1310. Result[0].Name:='https://www.googleapis.com/auth/cloud-platform';
  1311. Result[0].Description:='View and manage your data across Google Cloud Platform services';
  1312. Result[1].Name:='https://www.googleapis.com/auth/cloud-platform.read-only';
  1313. Result[1].Description:='View your data across Google Cloud Platform services';
  1314. Result[2].Name:='https://www.googleapis.com/auth/compute';
  1315. Result[2].Description:='View and manage your Google Compute Engine resources';
  1316. Result[3].Name:='https://www.googleapis.com/auth/compute.readonly';
  1317. Result[3].Description:='View your Google Compute Engine resources';
  1318. end;
  1319. Class Function TReplicapoolAPI.APINeedsAuth : Boolean;
  1320. begin
  1321. Result:=True;
  1322. end;
  1323. Class Procedure TReplicapoolAPI.RegisterAPIResources;
  1324. begin
  1325. TInstanceGroupManager.RegisterObject;
  1326. TInstanceGroupManagerList.RegisterObject;
  1327. TInstanceGroupManagersAbandonInstancesRequest.RegisterObject;
  1328. TInstanceGroupManagersDeleteInstancesRequest.RegisterObject;
  1329. TInstanceGroupManagersRecreateInstancesRequest.RegisterObject;
  1330. TInstanceGroupManagersSetInstanceTemplateRequest.RegisterObject;
  1331. TInstanceGroupManagersSetTargetPoolsRequest.RegisterObject;
  1332. TOperationTypeerrorTypeerrorsItem.RegisterObject;
  1333. TOperationTypeerror.RegisterObject;
  1334. TOperationTypewarningsItemTypedataItem.RegisterObject;
  1335. TOperationTypewarningsItem.RegisterObject;
  1336. TOperation.RegisterObject;
  1337. TOperationList.RegisterObject;
  1338. TReplicaPoolAutoHealingPolicy.RegisterObject;
  1339. end;
  1340. Function TReplicapoolAPI.GetInstanceGroupManagersInstance : TInstanceGroupManagersResource;
  1341. begin
  1342. if (FInstanceGroupManagersInstance=Nil) then
  1343. FInstanceGroupManagersInstance:=CreateInstanceGroupManagersResource;
  1344. Result:=FInstanceGroupManagersInstance;
  1345. end;
  1346. Function TReplicapoolAPI.CreateInstanceGroupManagersResource : TInstanceGroupManagersResource;
  1347. begin
  1348. Result:=CreateInstanceGroupManagersResource(Self);
  1349. end;
  1350. Function TReplicapoolAPI.CreateInstanceGroupManagersResource(AOwner : TComponent) : TInstanceGroupManagersResource;
  1351. begin
  1352. Result:=TInstanceGroupManagersResource.Create(AOwner);
  1353. Result.API:=Self.API;
  1354. end;
  1355. Function TReplicapoolAPI.GetZoneOperationsInstance : TZoneOperationsResource;
  1356. begin
  1357. if (FZoneOperationsInstance=Nil) then
  1358. FZoneOperationsInstance:=CreateZoneOperationsResource;
  1359. Result:=FZoneOperationsInstance;
  1360. end;
  1361. Function TReplicapoolAPI.CreateZoneOperationsResource : TZoneOperationsResource;
  1362. begin
  1363. Result:=CreateZoneOperationsResource(Self);
  1364. end;
  1365. Function TReplicapoolAPI.CreateZoneOperationsResource(AOwner : TComponent) : TZoneOperationsResource;
  1366. begin
  1367. Result:=TZoneOperationsResource.Create(AOwner);
  1368. Result.API:=Self.API;
  1369. end;
  1370. initialization
  1371. TReplicapoolAPI.RegisterAPI;
  1372. end.