1unit googlemanager; 2{ 3 ********************************************************************** 4 This file is part of the Free Component Library (FCL) 5 Copyright (c) 2015 The free pascal team. 6 7 See the file COPYING.FPC, included in this distribution, 8 for details about the copyright. 9 10 This program is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 14 ********************************************************************** 15} 16//Generated on: 16-5-15 08:53:05 17{$MODE objfpc} 18{$H+} 19 20interface 21 22uses sysutils, classes, googleservice, restbase, googlebase; 23 24type 25 26 //Top-level schema types 27 TAccessConfig = Class; 28 TAction = Class; 29 TAllowedRule = Class; 30 TAutoscalingModule = Class; 31 TAutoscalingModuleStatus = Class; 32 TDeployState = Class; 33 TDeployment = Class; 34 TDeploymentsListResponse = Class; 35 TDiskAttachment = Class; 36 TEnvVariable = Class; 37 TExistingDisk = Class; 38 TFirewallModule = Class; 39 TFirewallModuleStatus = Class; 40 THealthCheckModule = Class; 41 THealthCheckModuleStatus = Class; 42 TLbModule = Class; 43 TLbModuleStatus = Class; 44 TMetadata = Class; 45 TMetadataItem = Class; 46 TModule = Class; 47 TModuleStatus = Class; 48 TNetworkInterface = Class; 49 TNetworkModule = Class; 50 TNetworkModuleStatus = Class; 51 TNewDisk = Class; 52 TNewDiskInitializeParams = Class; 53 TParamOverride = Class; 54 TReplicaPoolModule = Class; 55 TReplicaPoolModuleStatus = Class; 56 TReplicaPoolParams = Class; 57 TReplicaPoolParamsV1Beta1 = Class; 58 TServiceAccount = Class; 59 TTag = Class; 60 TTemplate = Class; 61 TTemplatesListResponse = Class; 62 TAccessConfigArray = Array of TAccessConfig; 63 TActionArray = Array of TAction; 64 TAllowedRuleArray = Array of TAllowedRule; 65 TAutoscalingModuleArray = Array of TAutoscalingModule; 66 TAutoscalingModuleStatusArray = Array of TAutoscalingModuleStatus; 67 TDeployStateArray = Array of TDeployState; 68 TDeploymentArray = Array of TDeployment; 69 TDeploymentsListResponseArray = Array of TDeploymentsListResponse; 70 TDiskAttachmentArray = Array of TDiskAttachment; 71 TEnvVariableArray = Array of TEnvVariable; 72 TExistingDiskArray = Array of TExistingDisk; 73 TFirewallModuleArray = Array of TFirewallModule; 74 TFirewallModuleStatusArray = Array of TFirewallModuleStatus; 75 THealthCheckModuleArray = Array of THealthCheckModule; 76 THealthCheckModuleStatusArray = Array of THealthCheckModuleStatus; 77 TLbModuleArray = Array of TLbModule; 78 TLbModuleStatusArray = Array of TLbModuleStatus; 79 TMetadataArray = Array of TMetadata; 80 TMetadataItemArray = Array of TMetadataItem; 81 TModuleArray = Array of TModule; 82 TModuleStatusArray = Array of TModuleStatus; 83 TNetworkInterfaceArray = Array of TNetworkInterface; 84 TNetworkModuleArray = Array of TNetworkModule; 85 TNetworkModuleStatusArray = Array of TNetworkModuleStatus; 86 TNewDiskArray = Array of TNewDisk; 87 TNewDiskInitializeParamsArray = Array of TNewDiskInitializeParams; 88 TParamOverrideArray = Array of TParamOverride; 89 TReplicaPoolModuleArray = Array of TReplicaPoolModule; 90 TReplicaPoolModuleStatusArray = Array of TReplicaPoolModuleStatus; 91 TReplicaPoolParamsArray = Array of TReplicaPoolParams; 92 TReplicaPoolParamsV1Beta1Array = Array of TReplicaPoolParamsV1Beta1; 93 TServiceAccountArray = Array of TServiceAccount; 94 TTagArray = Array of TTag; 95 TTemplateArray = Array of TTemplate; 96 TTemplatesListResponseArray = Array of TTemplatesListResponse; 97 //Anonymous types, using auto-generated names 98 TDeploymentTypemodules = Class; 99 TReplicaPoolModuleTypeenvVariables = Class; 100 TTemplateTypeactions = Class; 101 TTemplateTypemodules = Class; 102 TDeploymentTypeoverridesArray = Array of TParamOverride; 103 TDeploymentsListResponseTyperesourcesArray = Array of TDeployment; 104 TFirewallModuleTypeallowedArray = Array of TAllowedRule; 105 TMetadataTypeitemsArray = Array of TMetadataItem; 106 TNetworkInterfaceTypeaccessConfigsArray = Array of TAccessConfig; 107 TReplicaPoolParamsV1Beta1TypedisksToAttachArray = Array of TExistingDisk; 108 TReplicaPoolParamsV1Beta1TypedisksToCreateArray = Array of TNewDisk; 109 TReplicaPoolParamsV1Beta1TypenetworkInterfacesArray = Array of TNetworkInterface; 110 TReplicaPoolParamsV1Beta1TypeserviceAccountsArray = Array of TServiceAccount; 111 TTemplatesListResponseTyperesourcesArray = Array of TTemplate; 112 113 { -------------------------------------------------------------------- 114 TAccessConfig 115 --------------------------------------------------------------------} 116 117 TAccessConfig = Class(TGoogleBaseObject) 118 Private 119 Fname : String; 120 FnatIp : String; 121 F_type : String; 122 Protected 123 Class Function ExportPropertyName(Const AName : String) : string; override; 124 //Property setters 125 Procedure Setname(AIndex : Integer; const AValue : String); virtual; 126 Procedure SetnatIp(AIndex : Integer; const AValue : String); virtual; 127 Procedure Set_type(AIndex : Integer; const AValue : String); virtual; 128 Public 129 Published 130 Property name : String Index 0 Read Fname Write Setname; 131 Property natIp : String Index 8 Read FnatIp Write SetnatIp; 132 Property _type : String Index 16 Read F_type Write Set_type; 133 end; 134 TAccessConfigClass = Class of TAccessConfig; 135 136 { -------------------------------------------------------------------- 137 TAction 138 --------------------------------------------------------------------} 139 140 TAction = Class(TGoogleBaseObject) 141 Private 142 Fcommands : TStringArray; 143 FtimeoutMs : integer; 144 Protected 145 //Property setters 146 Procedure Setcommands(AIndex : Integer; AValue : TStringArray); virtual; 147 Procedure SettimeoutMs(AIndex : Integer; AValue : integer); virtual; 148 //2.6.4. bug workaround 149 {$IFDEF VER2_6} 150 Procedure SetArrayLength(Const AName : String; ALength : Longint); override; 151 {$ENDIF VER2_6} 152 Public 153 Published 154 Property commands : TStringArray Index 0 Read Fcommands Write Setcommands; 155 Property timeoutMs : integer Index 8 Read FtimeoutMs Write SettimeoutMs; 156 end; 157 TActionClass = Class of TAction; 158 159 { -------------------------------------------------------------------- 160 TAllowedRule 161 --------------------------------------------------------------------} 162 163 TAllowedRule = Class(TGoogleBaseObject) 164 Private 165 FIPProtocol : String; 166 Fports : TStringArray; 167 Protected 168 //Property setters 169 Procedure SetIPProtocol(AIndex : Integer; const AValue : String); virtual; 170 Procedure Setports(AIndex : Integer; 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 IPProtocol : String Index 0 Read FIPProtocol Write SetIPProtocol; 178 Property ports : TStringArray Index 8 Read Fports Write Setports; 179 end; 180 TAllowedRuleClass = Class of TAllowedRule; 181 182 { -------------------------------------------------------------------- 183 TAutoscalingModule 184 --------------------------------------------------------------------} 185 186 TAutoscalingModule = Class(TGoogleBaseObject) 187 Private 188 FcoolDownPeriodSec : integer; 189 Fdescription : String; 190 FmaxNumReplicas : integer; 191 FminNumReplicas : integer; 192 FsignalType : String; 193 FtargetModule : String; 194 FtargetUtilization : double; 195 Protected 196 //Property setters 197 Procedure SetcoolDownPeriodSec(AIndex : Integer; AValue : integer); virtual; 198 Procedure Setdescription(AIndex : Integer; const AValue : String); virtual; 199 Procedure SetmaxNumReplicas(AIndex : Integer; AValue : integer); virtual; 200 Procedure SetminNumReplicas(AIndex : Integer; AValue : integer); virtual; 201 Procedure SetsignalType(AIndex : Integer; const AValue : String); virtual; 202 Procedure SettargetModule(AIndex : Integer; const AValue : String); virtual; 203 Procedure SettargetUtilization(AIndex : Integer; AValue : double); virtual; 204 Public 205 Published 206 Property coolDownPeriodSec : integer Index 0 Read FcoolDownPeriodSec Write SetcoolDownPeriodSec; 207 Property description : String Index 8 Read Fdescription Write Setdescription; 208 Property maxNumReplicas : integer Index 16 Read FmaxNumReplicas Write SetmaxNumReplicas; 209 Property minNumReplicas : integer Index 24 Read FminNumReplicas Write SetminNumReplicas; 210 Property signalType : String Index 32 Read FsignalType Write SetsignalType; 211 Property targetModule : String Index 40 Read FtargetModule Write SettargetModule; 212 Property targetUtilization : double Index 48 Read FtargetUtilization Write SettargetUtilization; 213 end; 214 TAutoscalingModuleClass = Class of TAutoscalingModule; 215 216 { -------------------------------------------------------------------- 217 TAutoscalingModuleStatus 218 --------------------------------------------------------------------} 219 220 TAutoscalingModuleStatus = Class(TGoogleBaseObject) 221 Private 222 FautoscalingConfigUrl : String; 223 Protected 224 //Property setters 225 Procedure SetautoscalingConfigUrl(AIndex : Integer; const AValue : String); virtual; 226 Public 227 Published 228 Property autoscalingConfigUrl : String Index 0 Read FautoscalingConfigUrl Write SetautoscalingConfigUrl; 229 end; 230 TAutoscalingModuleStatusClass = Class of TAutoscalingModuleStatus; 231 232 { -------------------------------------------------------------------- 233 TDeployState 234 --------------------------------------------------------------------} 235 236 TDeployState = Class(TGoogleBaseObject) 237 Private 238 Fdetails : String; 239 Fstatus : String; 240 Protected 241 //Property setters 242 Procedure Setdetails(AIndex : Integer; const AValue : String); virtual; 243 Procedure Setstatus(AIndex : Integer; const AValue : String); virtual; 244 Public 245 Published 246 Property details : String Index 0 Read Fdetails Write Setdetails; 247 Property status : String Index 8 Read Fstatus Write Setstatus; 248 end; 249 TDeployStateClass = Class of TDeployState; 250 251 { -------------------------------------------------------------------- 252 TDeploymentTypemodules 253 --------------------------------------------------------------------} 254 255 TDeploymentTypemodules = Class(TGoogleBaseObject) 256 Private 257 Protected 258 //Property setters 259 Public 260 Class Function AllowAdditionalProperties : Boolean; override; 261 Published 262 end; 263 TDeploymentTypemodulesClass = Class of TDeploymentTypemodules; 264 265 { -------------------------------------------------------------------- 266 TDeployment 267 --------------------------------------------------------------------} 268 269 TDeployment = Class(TGoogleBaseObject) 270 Private 271 FcreationDate : String; 272 Fdescription : String; 273 Fmodules : TDeploymentTypemodules; 274 Fname : String; 275 Foverrides : TDeploymentTypeoverridesArray; 276 Fstate : TDeployState; 277 FtemplateName : String; 278 Protected 279 //Property setters 280 Procedure SetcreationDate(AIndex : Integer; const AValue : String); virtual; 281 Procedure Setdescription(AIndex : Integer; const AValue : String); virtual; 282 Procedure Setmodules(AIndex : Integer; AValue : TDeploymentTypemodules); virtual; 283 Procedure Setname(AIndex : Integer; const AValue : String); virtual; 284 Procedure Setoverrides(AIndex : Integer; AValue : TDeploymentTypeoverridesArray); virtual; 285 Procedure Setstate(AIndex : Integer; AValue : TDeployState); virtual; 286 Procedure SettemplateName(AIndex : Integer; const AValue : String); virtual; 287 //2.6.4. bug workaround 288 {$IFDEF VER2_6} 289 Procedure SetArrayLength(Const AName : String; ALength : Longint); override; 290 {$ENDIF VER2_6} 291 Public 292 Published 293 Property creationDate : String Index 0 Read FcreationDate Write SetcreationDate; 294 Property description : String Index 8 Read Fdescription Write Setdescription; 295 Property modules : TDeploymentTypemodules Index 16 Read Fmodules Write Setmodules; 296 Property name : String Index 24 Read Fname Write Setname; 297 Property overrides : TDeploymentTypeoverridesArray Index 32 Read Foverrides Write Setoverrides; 298 Property state : TDeployState Index 40 Read Fstate Write Setstate; 299 Property templateName : String Index 48 Read FtemplateName Write SettemplateName; 300 end; 301 TDeploymentClass = Class of TDeployment; 302 303 { -------------------------------------------------------------------- 304 TDeploymentsListResponse 305 --------------------------------------------------------------------} 306 307 TDeploymentsListResponse = Class(TGoogleBaseObject) 308 Private 309 FnextPageToken : String; 310 Fresources : TDeploymentsListResponseTyperesourcesArray; 311 Protected 312 //Property setters 313 Procedure SetnextPageToken(AIndex : Integer; const AValue : String); virtual; 314 Procedure Setresources(AIndex : Integer; AValue : TDeploymentsListResponseTyperesourcesArray); virtual; 315 //2.6.4. bug workaround 316 {$IFDEF VER2_6} 317 Procedure SetArrayLength(Const AName : String; ALength : Longint); override; 318 {$ENDIF VER2_6} 319 Public 320 Published 321 Property nextPageToken : String Index 0 Read FnextPageToken Write SetnextPageToken; 322 Property resources : TDeploymentsListResponseTyperesourcesArray Index 8 Read Fresources Write Setresources; 323 end; 324 TDeploymentsListResponseClass = Class of TDeploymentsListResponse; 325 326 { -------------------------------------------------------------------- 327 TDiskAttachment 328 --------------------------------------------------------------------} 329 330 TDiskAttachment = Class(TGoogleBaseObject) 331 Private 332 FdeviceName : String; 333 Findex : integer; 334 Protected 335 //Property setters 336 Procedure SetdeviceName(AIndex : Integer; const AValue : String); virtual; 337 Procedure Setindex(AIndex : Integer; AValue : integer); virtual; 338 Public 339 Published 340 Property deviceName : String Index 0 Read FdeviceName Write SetdeviceName; 341 Property index : integer Index 8 Read Findex Write Setindex; 342 end; 343 TDiskAttachmentClass = Class of TDiskAttachment; 344 345 { -------------------------------------------------------------------- 346 TEnvVariable 347 --------------------------------------------------------------------} 348 349 TEnvVariable = Class(TGoogleBaseObject) 350 Private 351 Fhidden : boolean; 352 Fvalue : String; 353 Protected 354 //Property setters 355 Procedure Sethidden(AIndex : Integer; AValue : boolean); virtual; 356 Procedure Setvalue(AIndex : Integer; const AValue : String); virtual; 357 Public 358 Published 359 Property hidden : boolean Index 0 Read Fhidden Write Sethidden; 360 Property value : String Index 8 Read Fvalue Write Setvalue; 361 end; 362 TEnvVariableClass = Class of TEnvVariable; 363 364 { -------------------------------------------------------------------- 365 TExistingDisk 366 --------------------------------------------------------------------} 367 368 TExistingDisk = Class(TGoogleBaseObject) 369 Private 370 Fattachment : TDiskAttachment; 371 Fsource : String; 372 Protected 373 //Property setters 374 Procedure Setattachment(AIndex : Integer; AValue : TDiskAttachment); virtual; 375 Procedure Setsource(AIndex : Integer; const AValue : String); virtual; 376 Public 377 Published 378 Property attachment : TDiskAttachment Index 0 Read Fattachment Write Setattachment; 379 Property source : String Index 8 Read Fsource Write Setsource; 380 end; 381 TExistingDiskClass = Class of TExistingDisk; 382 383 { -------------------------------------------------------------------- 384 TFirewallModule 385 --------------------------------------------------------------------} 386 387 TFirewallModule = Class(TGoogleBaseObject) 388 Private 389 Fallowed : TFirewallModuleTypeallowedArray; 390 Fdescription : String; 391 Fnetwork : String; 392 FsourceRanges : TStringArray; 393 FsourceTags : TStringArray; 394 FtargetTags : TStringArray; 395 Protected 396 //Property setters 397 Procedure Setallowed(AIndex : Integer; AValue : TFirewallModuleTypeallowedArray); virtual; 398 Procedure Setdescription(AIndex : Integer; const AValue : String); virtual; 399 Procedure Setnetwork(AIndex : Integer; const AValue : String); virtual; 400 Procedure SetsourceRanges(AIndex : Integer; AValue : TStringArray); virtual; 401 Procedure SetsourceTags(AIndex : Integer; AValue : TStringArray); virtual; 402 Procedure SettargetTags(AIndex : Integer; AValue : TStringArray); virtual; 403 //2.6.4. bug workaround 404 {$IFDEF VER2_6} 405 Procedure SetArrayLength(Const AName : String; ALength : Longint); override; 406 {$ENDIF VER2_6} 407 Public 408 Published 409 Property allowed : TFirewallModuleTypeallowedArray Index 0 Read Fallowed Write Setallowed; 410 Property description : String Index 8 Read Fdescription Write Setdescription; 411 Property network : String Index 16 Read Fnetwork Write Setnetwork; 412 Property sourceRanges : TStringArray Index 24 Read FsourceRanges Write SetsourceRanges; 413 Property sourceTags : TStringArray Index 32 Read FsourceTags Write SetsourceTags; 414 Property targetTags : TStringArray Index 40 Read FtargetTags Write SettargetTags; 415 end; 416 TFirewallModuleClass = Class of TFirewallModule; 417 418 { -------------------------------------------------------------------- 419 TFirewallModuleStatus 420 --------------------------------------------------------------------} 421 422 TFirewallModuleStatus = Class(TGoogleBaseObject) 423 Private 424 FfirewallUrl : String; 425 Protected 426 //Property setters 427 Procedure SetfirewallUrl(AIndex : Integer; const AValue : String); virtual; 428 Public 429 Published 430 Property firewallUrl : String Index 0 Read FfirewallUrl Write SetfirewallUrl; 431 end; 432 TFirewallModuleStatusClass = Class of TFirewallModuleStatus; 433 434 { -------------------------------------------------------------------- 435 THealthCheckModule 436 --------------------------------------------------------------------} 437 438 THealthCheckModule = Class(TGoogleBaseObject) 439 Private 440 FcheckIntervalSec : integer; 441 Fdescription : String; 442 FhealthyThreshold : integer; 443 Fhost : String; 444 Fpath : String; 445 Fport : integer; 446 FtimeoutSec : integer; 447 FunhealthyThreshold : integer; 448 Protected 449 //Property setters 450 Procedure SetcheckIntervalSec(AIndex : Integer; AValue : integer); virtual; 451 Procedure Setdescription(AIndex : Integer; const AValue : String); virtual; 452 Procedure SethealthyThreshold(AIndex : Integer; AValue : integer); virtual; 453 Procedure Sethost(AIndex : Integer; const AValue : String); virtual; 454 Procedure Setpath(AIndex : Integer; const AValue : String); virtual; 455 Procedure Setport(AIndex : Integer; AValue : integer); virtual; 456 Procedure SettimeoutSec(AIndex : Integer; AValue : integer); virtual; 457 Procedure SetunhealthyThreshold(AIndex : Integer; AValue : integer); virtual; 458 Public 459 Published 460 Property checkIntervalSec : integer Index 0 Read FcheckIntervalSec Write SetcheckIntervalSec; 461 Property description : String Index 8 Read Fdescription Write Setdescription; 462 Property healthyThreshold : integer Index 16 Read FhealthyThreshold Write SethealthyThreshold; 463 Property host : String Index 24 Read Fhost Write Sethost; 464 Property path : String Index 32 Read Fpath Write Setpath; 465 Property port : integer Index 40 Read Fport Write Setport; 466 Property timeoutSec : integer Index 48 Read FtimeoutSec Write SettimeoutSec; 467 Property unhealthyThreshold : integer Index 56 Read FunhealthyThreshold Write SetunhealthyThreshold; 468 end; 469 THealthCheckModuleClass = Class of THealthCheckModule; 470 471 { -------------------------------------------------------------------- 472 THealthCheckModuleStatus 473 --------------------------------------------------------------------} 474 475 THealthCheckModuleStatus = Class(TGoogleBaseObject) 476 Private 477 FhealthCheckUrl : String; 478 Protected 479 //Property setters 480 Procedure SethealthCheckUrl(AIndex : Integer; const AValue : String); virtual; 481 Public 482 Published 483 Property healthCheckUrl : String Index 0 Read FhealthCheckUrl Write SethealthCheckUrl; 484 end; 485 THealthCheckModuleStatusClass = Class of THealthCheckModuleStatus; 486 487 { -------------------------------------------------------------------- 488 TLbModule 489 --------------------------------------------------------------------} 490 491 TLbModule = Class(TGoogleBaseObject) 492 Private 493 Fdescription : String; 494 FhealthChecks : TStringArray; 495 FipAddress : String; 496 FipProtocol : String; 497 FportRange : String; 498 FsessionAffinity : String; 499 FtargetModules : TStringArray; 500 Protected 501 //Property setters 502 Procedure Setdescription(AIndex : Integer; const AValue : String); virtual; 503 Procedure SethealthChecks(AIndex : Integer; AValue : TStringArray); virtual; 504 Procedure SetipAddress(AIndex : Integer; const AValue : String); virtual; 505 Procedure SetipProtocol(AIndex : Integer; const AValue : String); virtual; 506 Procedure SetportRange(AIndex : Integer; const AValue : String); virtual; 507 Procedure SetsessionAffinity(AIndex : Integer; const AValue : String); virtual; 508 Procedure SettargetModules(AIndex : Integer; AValue : TStringArray); virtual; 509 //2.6.4. bug workaround 510 {$IFDEF VER2_6} 511 Procedure SetArrayLength(Const AName : String; ALength : Longint); override; 512 {$ENDIF VER2_6} 513 Public 514 Published 515 Property description : String Index 0 Read Fdescription Write Setdescription; 516 Property healthChecks : TStringArray Index 8 Read FhealthChecks Write SethealthChecks; 517 Property ipAddress : String Index 16 Read FipAddress Write SetipAddress; 518 Property ipProtocol : String Index 24 Read FipProtocol Write SetipProtocol; 519 Property portRange : String Index 32 Read FportRange Write SetportRange; 520 Property sessionAffinity : String Index 40 Read FsessionAffinity Write SetsessionAffinity; 521 Property targetModules : TStringArray Index 48 Read FtargetModules Write SettargetModules; 522 end; 523 TLbModuleClass = Class of TLbModule; 524 525 { -------------------------------------------------------------------- 526 TLbModuleStatus 527 --------------------------------------------------------------------} 528 529 TLbModuleStatus = Class(TGoogleBaseObject) 530 Private 531 FforwardingRuleUrl : String; 532 FtargetPoolUrl : String; 533 Protected 534 //Property setters 535 Procedure SetforwardingRuleUrl(AIndex : Integer; const AValue : String); virtual; 536 Procedure SettargetPoolUrl(AIndex : Integer; const AValue : String); virtual; 537 Public 538 Published 539 Property forwardingRuleUrl : String Index 0 Read FforwardingRuleUrl Write SetforwardingRuleUrl; 540 Property targetPoolUrl : String Index 8 Read FtargetPoolUrl Write SettargetPoolUrl; 541 end; 542 TLbModuleStatusClass = Class of TLbModuleStatus; 543 544 { -------------------------------------------------------------------- 545 TMetadata 546 --------------------------------------------------------------------} 547 548 TMetadata = Class(TGoogleBaseObject) 549 Private 550 FfingerPrint : String; 551 Fitems : TMetadataTypeitemsArray; 552 Protected 553 //Property setters 554 Procedure SetfingerPrint(AIndex : Integer; const AValue : String); virtual; 555 Procedure Setitems(AIndex : Integer; AValue : TMetadataTypeitemsArray); virtual; 556 //2.6.4. bug workaround 557 {$IFDEF VER2_6} 558 Procedure SetArrayLength(Const AName : String; ALength : Longint); override; 559 {$ENDIF VER2_6} 560 Public 561 Published 562 Property fingerPrint : String Index 0 Read FfingerPrint Write SetfingerPrint; 563 Property items : TMetadataTypeitemsArray Index 8 Read Fitems Write Setitems; 564 end; 565 TMetadataClass = Class of TMetadata; 566 567 { -------------------------------------------------------------------- 568 TMetadataItem 569 --------------------------------------------------------------------} 570 571 TMetadataItem = Class(TGoogleBaseObject) 572 Private 573 Fkey : String; 574 Fvalue : String; 575 Protected 576 //Property setters 577 Procedure Setkey(AIndex : Integer; const AValue : String); virtual; 578 Procedure Setvalue(AIndex : Integer; const AValue : String); virtual; 579 Public 580 Published 581 Property key : String Index 0 Read Fkey Write Setkey; 582 Property value : String Index 8 Read Fvalue Write Setvalue; 583 end; 584 TMetadataItemClass = Class of TMetadataItem; 585 586 { -------------------------------------------------------------------- 587 TModule 588 --------------------------------------------------------------------} 589 590 TModule = Class(TGoogleBaseObject) 591 Private 592 FautoscalingModule : TAutoscalingModule; 593 FfirewallModule : TFirewallModule; 594 FhealthCheckModule : THealthCheckModule; 595 FlbModule : TLbModule; 596 FnetworkModule : TNetworkModule; 597 FreplicaPoolModule : TReplicaPoolModule; 598 F_type : String; 599 Protected 600 Class Function ExportPropertyName(Const AName : String) : string; override; 601 //Property setters 602 Procedure SetautoscalingModule(AIndex : Integer; AValue : TAutoscalingModule); virtual; 603 Procedure SetfirewallModule(AIndex : Integer; AValue : TFirewallModule); virtual; 604 Procedure SethealthCheckModule(AIndex : Integer; AValue : THealthCheckModule); virtual; 605 Procedure SetlbModule(AIndex : Integer; AValue : TLbModule); virtual; 606 Procedure SetnetworkModule(AIndex : Integer; AValue : TNetworkModule); virtual; 607 Procedure SetreplicaPoolModule(AIndex : Integer; AValue : TReplicaPoolModule); virtual; 608 Procedure Set_type(AIndex : Integer; const AValue : String); virtual; 609 Public 610 Published 611 Property autoscalingModule : TAutoscalingModule Index 0 Read FautoscalingModule Write SetautoscalingModule; 612 Property firewallModule : TFirewallModule Index 8 Read FfirewallModule Write SetfirewallModule; 613 Property healthCheckModule : THealthCheckModule Index 16 Read FhealthCheckModule Write SethealthCheckModule; 614 Property lbModule : TLbModule Index 24 Read FlbModule Write SetlbModule; 615 Property networkModule : TNetworkModule Index 32 Read FnetworkModule Write SetnetworkModule; 616 Property replicaPoolModule : TReplicaPoolModule Index 40 Read FreplicaPoolModule Write SetreplicaPoolModule; 617 Property _type : String Index 48 Read F_type Write Set_type; 618 end; 619 TModuleClass = Class of TModule; 620 621 { -------------------------------------------------------------------- 622 TModuleStatus 623 --------------------------------------------------------------------} 624 625 TModuleStatus = Class(TGoogleBaseObject) 626 Private 627 FautoscalingModuleStatus : TAutoscalingModuleStatus; 628 FfirewallModuleStatus : TFirewallModuleStatus; 629 FhealthCheckModuleStatus : THealthCheckModuleStatus; 630 FlbModuleStatus : TLbModuleStatus; 631 FnetworkModuleStatus : TNetworkModuleStatus; 632 FreplicaPoolModuleStatus : TReplicaPoolModuleStatus; 633 Fstate : TDeployState; 634 F_type : String; 635 Protected 636 Class Function ExportPropertyName(Const AName : String) : string; override; 637 //Property setters 638 Procedure SetautoscalingModuleStatus(AIndex : Integer; AValue : TAutoscalingModuleStatus); virtual; 639 Procedure SetfirewallModuleStatus(AIndex : Integer; AValue : TFirewallModuleStatus); virtual; 640 Procedure SethealthCheckModuleStatus(AIndex : Integer; AValue : THealthCheckModuleStatus); virtual; 641 Procedure SetlbModuleStatus(AIndex : Integer; AValue : TLbModuleStatus); virtual; 642 Procedure SetnetworkModuleStatus(AIndex : Integer; AValue : TNetworkModuleStatus); virtual; 643 Procedure SetreplicaPoolModuleStatus(AIndex : Integer; AValue : TReplicaPoolModuleStatus); virtual; 644 Procedure Setstate(AIndex : Integer; AValue : TDeployState); virtual; 645 Procedure Set_type(AIndex : Integer; const AValue : String); virtual; 646 Public 647 Published 648 Property autoscalingModuleStatus : TAutoscalingModuleStatus Index 0 Read FautoscalingModuleStatus Write SetautoscalingModuleStatus; 649 Property firewallModuleStatus : TFirewallModuleStatus Index 8 Read FfirewallModuleStatus Write SetfirewallModuleStatus; 650 Property healthCheckModuleStatus : THealthCheckModuleStatus Index 16 Read FhealthCheckModuleStatus Write SethealthCheckModuleStatus; 651 Property lbModuleStatus : TLbModuleStatus Index 24 Read FlbModuleStatus Write SetlbModuleStatus; 652 Property networkModuleStatus : TNetworkModuleStatus Index 32 Read FnetworkModuleStatus Write SetnetworkModuleStatus; 653 Property replicaPoolModuleStatus : TReplicaPoolModuleStatus Index 40 Read FreplicaPoolModuleStatus Write SetreplicaPoolModuleStatus; 654 Property state : TDeployState Index 48 Read Fstate Write Setstate; 655 Property _type : String Index 56 Read F_type Write Set_type; 656 end; 657 TModuleStatusClass = Class of TModuleStatus; 658 659 { -------------------------------------------------------------------- 660 TNetworkInterface 661 --------------------------------------------------------------------} 662 663 TNetworkInterface = Class(TGoogleBaseObject) 664 Private 665 FaccessConfigs : TNetworkInterfaceTypeaccessConfigsArray; 666 Fname : String; 667 Fnetwork : String; 668 FnetworkIp : String; 669 Protected 670 //Property setters 671 Procedure SetaccessConfigs(AIndex : Integer; AValue : TNetworkInterfaceTypeaccessConfigsArray); virtual; 672 Procedure Setname(AIndex : Integer; const AValue : String); virtual; 673 Procedure Setnetwork(AIndex : Integer; const AValue : String); virtual; 674 Procedure SetnetworkIp(AIndex : Integer; const AValue : String); virtual; 675 //2.6.4. bug workaround 676 {$IFDEF VER2_6} 677 Procedure SetArrayLength(Const AName : String; ALength : Longint); override; 678 {$ENDIF VER2_6} 679 Public 680 Published 681 Property accessConfigs : TNetworkInterfaceTypeaccessConfigsArray Index 0 Read FaccessConfigs Write SetaccessConfigs; 682 Property name : String Index 8 Read Fname Write Setname; 683 Property network : String Index 16 Read Fnetwork Write Setnetwork; 684 Property networkIp : String Index 24 Read FnetworkIp Write SetnetworkIp; 685 end; 686 TNetworkInterfaceClass = Class of TNetworkInterface; 687 688 { -------------------------------------------------------------------- 689 TNetworkModule 690 --------------------------------------------------------------------} 691 692 TNetworkModule = Class(TGoogleBaseObject) 693 Private 694 FIPv4Range : String; 695 Fdescription : String; 696 FgatewayIPv4 : String; 697 Protected 698 //Property setters 699 Procedure SetIPv4Range(AIndex : Integer; const AValue : String); virtual; 700 Procedure Setdescription(AIndex : Integer; const AValue : String); virtual; 701 Procedure SetgatewayIPv4(AIndex : Integer; const AValue : String); virtual; 702 Public 703 Published 704 Property IPv4Range : String Index 0 Read FIPv4Range Write SetIPv4Range; 705 Property description : String Index 8 Read Fdescription Write Setdescription; 706 Property gatewayIPv4 : String Index 16 Read FgatewayIPv4 Write SetgatewayIPv4; 707 end; 708 TNetworkModuleClass = Class of TNetworkModule; 709 710 { -------------------------------------------------------------------- 711 TNetworkModuleStatus 712 --------------------------------------------------------------------} 713 714 TNetworkModuleStatus = Class(TGoogleBaseObject) 715 Private 716 FnetworkUrl : String; 717 Protected 718 //Property setters 719 Procedure SetnetworkUrl(AIndex : Integer; const AValue : String); virtual; 720 Public 721 Published 722 Property networkUrl : String Index 0 Read FnetworkUrl Write SetnetworkUrl; 723 end; 724 TNetworkModuleStatusClass = Class of TNetworkModuleStatus; 725 726 { -------------------------------------------------------------------- 727 TNewDisk 728 --------------------------------------------------------------------} 729 730 TNewDisk = Class(TGoogleBaseObject) 731 Private 732 Fattachment : TDiskAttachment; 733 FautoDelete : boolean; 734 Fboot : boolean; 735 FinitializeParams : TNewDiskInitializeParams; 736 Protected 737 //Property setters 738 Procedure Setattachment(AIndex : Integer; AValue : TDiskAttachment); virtual; 739 Procedure SetautoDelete(AIndex : Integer; AValue : boolean); virtual; 740 Procedure Setboot(AIndex : Integer; AValue : boolean); virtual; 741 Procedure SetinitializeParams(AIndex : Integer; AValue : TNewDiskInitializeParams); virtual; 742 Public 743 Published 744 Property attachment : TDiskAttachment Index 0 Read Fattachment Write Setattachment; 745 Property autoDelete : boolean Index 8 Read FautoDelete Write SetautoDelete; 746 Property boot : boolean Index 16 Read Fboot Write Setboot; 747 Property initializeParams : TNewDiskInitializeParams Index 24 Read FinitializeParams Write SetinitializeParams; 748 end; 749 TNewDiskClass = Class of TNewDisk; 750 751 { -------------------------------------------------------------------- 752 TNewDiskInitializeParams 753 --------------------------------------------------------------------} 754 755 TNewDiskInitializeParams = Class(TGoogleBaseObject) 756 Private 757 FdiskSizeGb : String; 758 FdiskType : String; 759 FsourceImage : String; 760 Protected 761 //Property setters 762 Procedure SetdiskSizeGb(AIndex : Integer; const AValue : String); virtual; 763 Procedure SetdiskType(AIndex : Integer; const AValue : String); virtual; 764 Procedure SetsourceImage(AIndex : Integer; const AValue : String); virtual; 765 Public 766 Published 767 Property diskSizeGb : String Index 0 Read FdiskSizeGb Write SetdiskSizeGb; 768 Property diskType : String Index 8 Read FdiskType Write SetdiskType; 769 Property sourceImage : String Index 16 Read FsourceImage Write SetsourceImage; 770 end; 771 TNewDiskInitializeParamsClass = Class of TNewDiskInitializeParams; 772 773 { -------------------------------------------------------------------- 774 TParamOverride 775 --------------------------------------------------------------------} 776 777 TParamOverride = Class(TGoogleBaseObject) 778 Private 779 Fpath : String; 780 Fvalue : String; 781 Protected 782 //Property setters 783 Procedure Setpath(AIndex : Integer; const AValue : String); virtual; 784 Procedure Setvalue(AIndex : Integer; const AValue : String); virtual; 785 Public 786 Published 787 Property path : String Index 0 Read Fpath Write Setpath; 788 Property value : String Index 8 Read Fvalue Write Setvalue; 789 end; 790 TParamOverrideClass = Class of TParamOverride; 791 792 { -------------------------------------------------------------------- 793 TReplicaPoolModuleTypeenvVariables 794 --------------------------------------------------------------------} 795 796 TReplicaPoolModuleTypeenvVariables = Class(TGoogleBaseObject) 797 Private 798 Protected 799 //Property setters 800 Public 801 Class Function AllowAdditionalProperties : Boolean; override; 802 Published 803 end; 804 TReplicaPoolModuleTypeenvVariablesClass = Class of TReplicaPoolModuleTypeenvVariables; 805 806 { -------------------------------------------------------------------- 807 TReplicaPoolModule 808 --------------------------------------------------------------------} 809 810 TReplicaPoolModule = Class(TGoogleBaseObject) 811 Private 812 FenvVariables : TReplicaPoolModuleTypeenvVariables; 813 FhealthChecks : TStringArray; 814 FnumReplicas : integer; 815 FreplicaPoolParams : TReplicaPoolParams; 816 FresourceView : String; 817 Protected 818 //Property setters 819 Procedure SetenvVariables(AIndex : Integer; AValue : TReplicaPoolModuleTypeenvVariables); virtual; 820 Procedure SethealthChecks(AIndex : Integer; AValue : TStringArray); virtual; 821 Procedure SetnumReplicas(AIndex : Integer; AValue : integer); virtual; 822 Procedure SetreplicaPoolParams(AIndex : Integer; AValue : TReplicaPoolParams); virtual; 823 Procedure SetresourceView(AIndex : Integer; const AValue : String); virtual; 824 //2.6.4. bug workaround 825 {$IFDEF VER2_6} 826 Procedure SetArrayLength(Const AName : String; ALength : Longint); override; 827 {$ENDIF VER2_6} 828 Public 829 Published 830 Property envVariables : TReplicaPoolModuleTypeenvVariables Index 0 Read FenvVariables Write SetenvVariables; 831 Property healthChecks : TStringArray Index 8 Read FhealthChecks Write SethealthChecks; 832 Property numReplicas : integer Index 16 Read FnumReplicas Write SetnumReplicas; 833 Property replicaPoolParams : TReplicaPoolParams Index 24 Read FreplicaPoolParams Write SetreplicaPoolParams; 834 Property resourceView : String Index 32 Read FresourceView Write SetresourceView; 835 end; 836 TReplicaPoolModuleClass = Class of TReplicaPoolModule; 837 838 { -------------------------------------------------------------------- 839 TReplicaPoolModuleStatus 840 --------------------------------------------------------------------} 841 842 TReplicaPoolModuleStatus = Class(TGoogleBaseObject) 843 Private 844 FreplicaPoolUrl : String; 845 FresourceViewUrl : String; 846 Protected 847 //Property setters 848 Procedure SetreplicaPoolUrl(AIndex : Integer; const AValue : String); virtual; 849 Procedure SetresourceViewUrl(AIndex : Integer; const AValue : String); virtual; 850 Public 851 Published 852 Property replicaPoolUrl : String Index 0 Read FreplicaPoolUrl Write SetreplicaPoolUrl; 853 Property resourceViewUrl : String Index 8 Read FresourceViewUrl Write SetresourceViewUrl; 854 end; 855 TReplicaPoolModuleStatusClass = Class of TReplicaPoolModuleStatus; 856 857 { -------------------------------------------------------------------- 858 TReplicaPoolParams 859 --------------------------------------------------------------------} 860 861 TReplicaPoolParams = Class(TGoogleBaseObject) 862 Private 863 Fv1beta1 : TReplicaPoolParamsV1Beta1; 864 Protected 865 //Property setters 866 Procedure Setv1beta1(AIndex : Integer; AValue : TReplicaPoolParamsV1Beta1); virtual; 867 Public 868 Published 869 Property v1beta1 : TReplicaPoolParamsV1Beta1 Index 0 Read Fv1beta1 Write Setv1beta1; 870 end; 871 TReplicaPoolParamsClass = Class of TReplicaPoolParams; 872 873 { -------------------------------------------------------------------- 874 TReplicaPoolParamsV1Beta1 875 --------------------------------------------------------------------} 876 877 TReplicaPoolParamsV1Beta1 = Class(TGoogleBaseObject) 878 Private 879 FautoRestart : boolean; 880 FbaseInstanceName : String; 881 FcanIpForward : boolean; 882 Fdescription : String; 883 FdisksToAttach : TReplicaPoolParamsV1Beta1TypedisksToAttachArray; 884 FdisksToCreate : TReplicaPoolParamsV1Beta1TypedisksToCreateArray; 885 FinitAction : String; 886 FmachineType : String; 887 Fmetadata : TMetadata; 888 FnetworkInterfaces : TReplicaPoolParamsV1Beta1TypenetworkInterfacesArray; 889 FonHostMaintenance : String; 890 FserviceAccounts : TReplicaPoolParamsV1Beta1TypeserviceAccountsArray; 891 Ftags : TTag; 892 Fzone : String; 893 Protected 894 //Property setters 895 Procedure SetautoRestart(AIndex : Integer; AValue : boolean); virtual; 896 Procedure SetbaseInstanceName(AIndex : Integer; const AValue : String); virtual; 897 Procedure SetcanIpForward(AIndex : Integer; AValue : boolean); virtual; 898 Procedure Setdescription(AIndex : Integer; const AValue : String); virtual; 899 Procedure SetdisksToAttach(AIndex : Integer; AValue : TReplicaPoolParamsV1Beta1TypedisksToAttachArray); virtual; 900 Procedure SetdisksToCreate(AIndex : Integer; AValue : TReplicaPoolParamsV1Beta1TypedisksToCreateArray); virtual; 901 Procedure SetinitAction(AIndex : Integer; const AValue : String); virtual; 902 Procedure SetmachineType(AIndex : Integer; const AValue : String); virtual; 903 Procedure Setmetadata(AIndex : Integer; AValue : TMetadata); virtual; 904 Procedure SetnetworkInterfaces(AIndex : Integer; AValue : TReplicaPoolParamsV1Beta1TypenetworkInterfacesArray); virtual; 905 Procedure SetonHostMaintenance(AIndex : Integer; const AValue : String); virtual; 906 Procedure SetserviceAccounts(AIndex : Integer; AValue : TReplicaPoolParamsV1Beta1TypeserviceAccountsArray); virtual; 907 Procedure Settags(AIndex : Integer; AValue : TTag); virtual; 908 Procedure Setzone(AIndex : Integer; const AValue : String); virtual; 909 //2.6.4. bug workaround 910 {$IFDEF VER2_6} 911 Procedure SetArrayLength(Const AName : String; ALength : Longint); override; 912 {$ENDIF VER2_6} 913 Public 914 Published 915 Property autoRestart : boolean Index 0 Read FautoRestart Write SetautoRestart; 916 Property baseInstanceName : String Index 8 Read FbaseInstanceName Write SetbaseInstanceName; 917 Property canIpForward : boolean Index 16 Read FcanIpForward Write SetcanIpForward; 918 Property description : String Index 24 Read Fdescription Write Setdescription; 919 Property disksToAttach : TReplicaPoolParamsV1Beta1TypedisksToAttachArray Index 32 Read FdisksToAttach Write SetdisksToAttach; 920 Property disksToCreate : TReplicaPoolParamsV1Beta1TypedisksToCreateArray Index 40 Read FdisksToCreate Write SetdisksToCreate; 921 Property initAction : String Index 48 Read FinitAction Write SetinitAction; 922 Property machineType : String Index 56 Read FmachineType Write SetmachineType; 923 Property metadata : TMetadata Index 64 Read Fmetadata Write Setmetadata; 924 Property networkInterfaces : TReplicaPoolParamsV1Beta1TypenetworkInterfacesArray Index 72 Read FnetworkInterfaces Write SetnetworkInterfaces; 925 Property onHostMaintenance : String Index 80 Read FonHostMaintenance Write SetonHostMaintenance; 926 Property serviceAccounts : TReplicaPoolParamsV1Beta1TypeserviceAccountsArray Index 88 Read FserviceAccounts Write SetserviceAccounts; 927 Property tags : TTag Index 96 Read Ftags Write Settags; 928 Property zone : String Index 104 Read Fzone Write Setzone; 929 end; 930 TReplicaPoolParamsV1Beta1Class = Class of TReplicaPoolParamsV1Beta1; 931 932 { -------------------------------------------------------------------- 933 TServiceAccount 934 --------------------------------------------------------------------} 935 936 TServiceAccount = Class(TGoogleBaseObject) 937 Private 938 Femail : String; 939 Fscopes : TStringArray; 940 Protected 941 //Property setters 942 Procedure Setemail(AIndex : Integer; const AValue : String); virtual; 943 Procedure Setscopes(AIndex : Integer; AValue : TStringArray); virtual; 944 //2.6.4. bug workaround 945 {$IFDEF VER2_6} 946 Procedure SetArrayLength(Const AName : String; ALength : Longint); override; 947 {$ENDIF VER2_6} 948 Public 949 Published 950 Property email : String Index 0 Read Femail Write Setemail; 951 Property scopes : TStringArray Index 8 Read Fscopes Write Setscopes; 952 end; 953 TServiceAccountClass = Class of TServiceAccount; 954 955 { -------------------------------------------------------------------- 956 TTag 957 --------------------------------------------------------------------} 958 959 TTag = Class(TGoogleBaseObject) 960 Private 961 FfingerPrint : String; 962 Fitems : TStringArray; 963 Protected 964 //Property setters 965 Procedure SetfingerPrint(AIndex : Integer; const AValue : String); virtual; 966 Procedure Setitems(AIndex : Integer; AValue : TStringArray); virtual; 967 //2.6.4. bug workaround 968 {$IFDEF VER2_6} 969 Procedure SetArrayLength(Const AName : String; ALength : Longint); override; 970 {$ENDIF VER2_6} 971 Public 972 Published 973 Property fingerPrint : String Index 0 Read FfingerPrint Write SetfingerPrint; 974 Property items : TStringArray Index 8 Read Fitems Write Setitems; 975 end; 976 TTagClass = Class of TTag; 977 978 { -------------------------------------------------------------------- 979 TTemplateTypeactions 980 --------------------------------------------------------------------} 981 982 TTemplateTypeactions = Class(TGoogleBaseObject) 983 Private 984 Protected 985 //Property setters 986 Public 987 Class Function AllowAdditionalProperties : Boolean; override; 988 Published 989 end; 990 TTemplateTypeactionsClass = Class of TTemplateTypeactions; 991 992 { -------------------------------------------------------------------- 993 TTemplateTypemodules 994 --------------------------------------------------------------------} 995 996 TTemplateTypemodules = Class(TGoogleBaseObject) 997 Private 998 Protected 999 //Property setters 1000 Public 1001 Class Function AllowAdditionalProperties : Boolean; override; 1002 Published 1003 end; 1004 TTemplateTypemodulesClass = Class of TTemplateTypemodules; 1005 1006 { -------------------------------------------------------------------- 1007 TTemplate 1008 --------------------------------------------------------------------} 1009 1010 TTemplate = Class(TGoogleBaseObject) 1011 Private 1012 Factions : TTemplateTypeactions; 1013 Fdescription : String; 1014 Fmodules : TTemplateTypemodules; 1015 Fname : String; 1016 Protected 1017 //Property setters 1018 Procedure Setactions(AIndex : Integer; AValue : TTemplateTypeactions); virtual; 1019 Procedure Setdescription(AIndex : Integer; const AValue : String); virtual; 1020 Procedure Setmodules(AIndex : Integer; AValue : TTemplateTypemodules); virtual; 1021 Procedure Setname(AIndex : Integer; const AValue : String); virtual; 1022 Public 1023 Published 1024 Property actions : TTemplateTypeactions Index 0 Read Factions Write Setactions; 1025 Property description : String Index 8 Read Fdescription Write Setdescription; 1026 Property modules : TTemplateTypemodules Index 16 Read Fmodules Write Setmodules; 1027 Property name : String Index 24 Read Fname Write Setname; 1028 end; 1029 TTemplateClass = Class of TTemplate; 1030 1031 { -------------------------------------------------------------------- 1032 TTemplatesListResponse 1033 --------------------------------------------------------------------} 1034 1035 TTemplatesListResponse = Class(TGoogleBaseObject) 1036 Private 1037 FnextPageToken : String; 1038 Fresources : TTemplatesListResponseTyperesourcesArray; 1039 Protected 1040 //Property setters 1041 Procedure SetnextPageToken(AIndex : Integer; const AValue : String); virtual; 1042 Procedure Setresources(AIndex : Integer; AValue : TTemplatesListResponseTyperesourcesArray); virtual; 1043 //2.6.4. bug workaround 1044 {$IFDEF VER2_6} 1045 Procedure SetArrayLength(Const AName : String; ALength : Longint); override; 1046 {$ENDIF VER2_6} 1047 Public 1048 Published 1049 Property nextPageToken : String Index 0 Read FnextPageToken Write SetnextPageToken; 1050 Property resources : TTemplatesListResponseTyperesourcesArray Index 8 Read Fresources Write Setresources; 1051 end; 1052 TTemplatesListResponseClass = Class of TTemplatesListResponse; 1053 1054 { -------------------------------------------------------------------- 1055 TDeploymentsResource 1056 --------------------------------------------------------------------} 1057 1058 1059 //Optional query Options for TDeploymentsResource, method List 1060 1061 TDeploymentsListOptions = Record 1062 maxResults : integer; 1063 pageToken : String; 1064 end; 1065 1066 TDeploymentsResource = Class(TGoogleResource) 1067 Public 1068 Class Function ResourceName : String; override; 1069 Class Function DefaultAPI : TGoogleAPIClass; override; 1070 Procedure Delete(deploymentName: string; projectId: string; region: string); 1071 Function Get(deploymentName: string; projectId: string; region: string) : TDeployment; 1072 Function Insert(projectId: string; region: string; aDeployment : TDeployment) : TDeployment; 1073 Function List(projectId: string; region: string; AQuery : string = '') : TDeploymentsListResponse; 1074 Function List(projectId: string; region: string; AQuery : TDeploymentslistOptions) : TDeploymentsListResponse; 1075 end; 1076 1077 1078 { -------------------------------------------------------------------- 1079 TTemplatesResource 1080 --------------------------------------------------------------------} 1081 1082 1083 //Optional query Options for TTemplatesResource, method List 1084 1085 TTemplatesListOptions = Record 1086 maxResults : integer; 1087 pageToken : String; 1088 end; 1089 1090 TTemplatesResource = Class(TGoogleResource) 1091 Public 1092 Class Function ResourceName : String; override; 1093 Class Function DefaultAPI : TGoogleAPIClass; override; 1094 Procedure Delete(projectId: string; templateName: string); 1095 Function Get(projectId: string; templateName: string) : TTemplate; 1096 Function Insert(projectId: string; aTemplate : TTemplate) : TTemplate; 1097 Function List(projectId: string; AQuery : string = '') : TTemplatesListResponse; 1098 Function List(projectId: string; AQuery : TTemplateslistOptions) : TTemplatesListResponse; 1099 end; 1100 1101 1102 { -------------------------------------------------------------------- 1103 TManagerAPI 1104 --------------------------------------------------------------------} 1105 1106 TManagerAPI = Class(TGoogleAPI) 1107 Private 1108 FDeploymentsInstance : TDeploymentsResource; 1109 FTemplatesInstance : TTemplatesResource; 1110 Function GetDeploymentsInstance : TDeploymentsResource;virtual; 1111 Function GetTemplatesInstance : TTemplatesResource;virtual; 1112 Public 1113 //Override class functions with API info 1114 Class Function APIName : String; override; 1115 Class Function APIVersion : String; override; 1116 Class Function APIRevision : String; override; 1117 Class Function APIID : String; override; 1118 Class Function APITitle : String; override; 1119 Class Function APIDescription : String; override; 1120 Class Function APIOwnerDomain : String; override; 1121 Class Function APIOwnerName : String; override; 1122 Class Function APIIcon16 : String; override; 1123 Class Function APIIcon32 : String; override; 1124 Class Function APIdocumentationLink : String; override; 1125 Class Function APIrootUrl : string; override; 1126 Class Function APIbasePath : string;override; 1127 Class Function APIbaseURL : String;override; 1128 Class Function APIProtocol : string;override; 1129 Class Function APIservicePath : string;override; 1130 Class Function APIbatchPath : String;override; 1131 Class Function APIAuthScopes : TScopeInfoArray;override; 1132 Class Function APINeedsAuth : Boolean;override; 1133 Class Procedure RegisterAPIResources; override; 1134 //Add create function for resources 1135 Function CreateDeploymentsResource(AOwner : TComponent) : TDeploymentsResource;virtual;overload; 1136 Function CreateDeploymentsResource : TDeploymentsResource;virtual;overload; 1137 Function CreateTemplatesResource(AOwner : TComponent) : TTemplatesResource;virtual;overload; 1138 Function CreateTemplatesResource : TTemplatesResource;virtual;overload; 1139 //Add default on-demand instances for resources 1140 Property DeploymentsResource : TDeploymentsResource Read GetDeploymentsInstance; 1141 Property TemplatesResource : TTemplatesResource Read GetTemplatesInstance; 1142 end; 1143 1144implementation 1145 1146 1147{ -------------------------------------------------------------------- 1148 TAccessConfig 1149 --------------------------------------------------------------------} 1150 1151 1152Procedure TAccessConfig.Setname(AIndex : Integer; const AValue : String); 1153 1154begin 1155 If (Fname=AValue) then exit; 1156 Fname:=AValue; 1157 MarkPropertyChanged(AIndex); 1158end; 1159 1160 1161 1162Procedure TAccessConfig.SetnatIp(AIndex : Integer; const AValue : String); 1163 1164begin 1165 If (FnatIp=AValue) then exit; 1166 FnatIp:=AValue; 1167 MarkPropertyChanged(AIndex); 1168end; 1169 1170 1171 1172Procedure TAccessConfig.Set_type(AIndex : Integer; const AValue : String); 1173 1174begin 1175 If (F_type=AValue) then exit; 1176 F_type:=AValue; 1177 MarkPropertyChanged(AIndex); 1178end; 1179 1180 1181 1182Class Function TAccessConfig.ExportPropertyName(Const AName : String) :String; 1183 1184begin 1185 Case AName of 1186 '_type' : Result:='type'; 1187 else 1188 Result:=Inherited ExportPropertyName(AName); 1189 end; 1190end; 1191 1192 1193 1194 1195{ -------------------------------------------------------------------- 1196 TAction 1197 --------------------------------------------------------------------} 1198 1199 1200Procedure TAction.Setcommands(AIndex : Integer; AValue : TStringArray); 1201 1202begin 1203 If (Fcommands=AValue) then exit; 1204 Fcommands:=AValue; 1205 MarkPropertyChanged(AIndex); 1206end; 1207 1208 1209 1210Procedure TAction.SettimeoutMs(AIndex : Integer; AValue : integer); 1211 1212begin 1213 If (FtimeoutMs=AValue) then exit; 1214 FtimeoutMs:=AValue; 1215 MarkPropertyChanged(AIndex); 1216end; 1217 1218 1219//2.6.4. bug workaround 1220{$IFDEF VER2_6} 1221Procedure TAction.SetArrayLength(Const AName : String; ALength : Longint); 1222 1223begin 1224 Case AName of 1225 'commands' : SetLength(Fcommands,ALength); 1226 else 1227 Inherited SetArrayLength(AName,ALength); 1228 end; 1229end; 1230{$ENDIF VER2_6} 1231 1232 1233 1234 1235{ -------------------------------------------------------------------- 1236 TAllowedRule 1237 --------------------------------------------------------------------} 1238 1239 1240Procedure TAllowedRule.SetIPProtocol(AIndex : Integer; const AValue : String); 1241 1242begin 1243 If (FIPProtocol=AValue) then exit; 1244 FIPProtocol:=AValue; 1245 MarkPropertyChanged(AIndex); 1246end; 1247 1248 1249 1250Procedure TAllowedRule.Setports(AIndex : Integer; AValue : TStringArray); 1251 1252begin 1253 If (Fports=AValue) then exit; 1254 Fports:=AValue; 1255 MarkPropertyChanged(AIndex); 1256end; 1257 1258 1259//2.6.4. bug workaround 1260{$IFDEF VER2_6} 1261Procedure TAllowedRule.SetArrayLength(Const AName : String; ALength : Longint); 1262 1263begin 1264 Case AName of 1265 'ports' : SetLength(Fports,ALength); 1266 else 1267 Inherited SetArrayLength(AName,ALength); 1268 end; 1269end; 1270{$ENDIF VER2_6} 1271 1272 1273 1274 1275{ -------------------------------------------------------------------- 1276 TAutoscalingModule 1277 --------------------------------------------------------------------} 1278 1279 1280Procedure TAutoscalingModule.SetcoolDownPeriodSec(AIndex : Integer; AValue : integer); 1281 1282begin 1283 If (FcoolDownPeriodSec=AValue) then exit; 1284 FcoolDownPeriodSec:=AValue; 1285 MarkPropertyChanged(AIndex); 1286end; 1287 1288 1289 1290Procedure TAutoscalingModule.Setdescription(AIndex : Integer; const AValue : String); 1291 1292begin 1293 If (Fdescription=AValue) then exit; 1294 Fdescription:=AValue; 1295 MarkPropertyChanged(AIndex); 1296end; 1297 1298 1299 1300Procedure TAutoscalingModule.SetmaxNumReplicas(AIndex : Integer; AValue : integer); 1301 1302begin 1303 If (FmaxNumReplicas=AValue) then exit; 1304 FmaxNumReplicas:=AValue; 1305 MarkPropertyChanged(AIndex); 1306end; 1307 1308 1309 1310Procedure TAutoscalingModule.SetminNumReplicas(AIndex : Integer; AValue : integer); 1311 1312begin 1313 If (FminNumReplicas=AValue) then exit; 1314 FminNumReplicas:=AValue; 1315 MarkPropertyChanged(AIndex); 1316end; 1317 1318 1319 1320Procedure TAutoscalingModule.SetsignalType(AIndex : Integer; const AValue : String); 1321 1322begin 1323 If (FsignalType=AValue) then exit; 1324 FsignalType:=AValue; 1325 MarkPropertyChanged(AIndex); 1326end; 1327 1328 1329 1330Procedure TAutoscalingModule.SettargetModule(AIndex : Integer; const AValue : String); 1331 1332begin 1333 If (FtargetModule=AValue) then exit; 1334 FtargetModule:=AValue; 1335 MarkPropertyChanged(AIndex); 1336end; 1337 1338 1339 1340Procedure TAutoscalingModule.SettargetUtilization(AIndex : Integer; AValue : double); 1341 1342begin 1343 If (FtargetUtilization=AValue) then exit; 1344 FtargetUtilization:=AValue; 1345 MarkPropertyChanged(AIndex); 1346end; 1347 1348 1349 1350 1351 1352{ -------------------------------------------------------------------- 1353 TAutoscalingModuleStatus 1354 --------------------------------------------------------------------} 1355 1356 1357Procedure TAutoscalingModuleStatus.SetautoscalingConfigUrl(AIndex : Integer; const AValue : String); 1358 1359begin 1360 If (FautoscalingConfigUrl=AValue) then exit; 1361 FautoscalingConfigUrl:=AValue; 1362 MarkPropertyChanged(AIndex); 1363end; 1364 1365 1366 1367 1368 1369{ -------------------------------------------------------------------- 1370 TDeployState 1371 --------------------------------------------------------------------} 1372 1373 1374Procedure TDeployState.Setdetails(AIndex : Integer; const AValue : String); 1375 1376begin 1377 If (Fdetails=AValue) then exit; 1378 Fdetails:=AValue; 1379 MarkPropertyChanged(AIndex); 1380end; 1381 1382 1383 1384Procedure TDeployState.Setstatus(AIndex : Integer; const AValue : String); 1385 1386begin 1387 If (Fstatus=AValue) then exit; 1388 Fstatus:=AValue; 1389 MarkPropertyChanged(AIndex); 1390end; 1391 1392 1393 1394 1395 1396{ -------------------------------------------------------------------- 1397 TDeploymentTypemodules 1398 --------------------------------------------------------------------} 1399 1400 1401Class Function TDeploymentTypemodules.AllowAdditionalProperties : Boolean; 1402 1403begin 1404 Result:=True; 1405end; 1406 1407 1408 1409{ -------------------------------------------------------------------- 1410 TDeployment 1411 --------------------------------------------------------------------} 1412 1413 1414Procedure TDeployment.SetcreationDate(AIndex : Integer; const AValue : String); 1415 1416begin 1417 If (FcreationDate=AValue) then exit; 1418 FcreationDate:=AValue; 1419 MarkPropertyChanged(AIndex); 1420end; 1421 1422 1423 1424Procedure TDeployment.Setdescription(AIndex : Integer; const AValue : String); 1425 1426begin 1427 If (Fdescription=AValue) then exit; 1428 Fdescription:=AValue; 1429 MarkPropertyChanged(AIndex); 1430end; 1431 1432 1433 1434Procedure TDeployment.Setmodules(AIndex : Integer; AValue : TDeploymentTypemodules); 1435 1436begin 1437 If (Fmodules=AValue) then exit; 1438 Fmodules:=AValue; 1439 MarkPropertyChanged(AIndex); 1440end; 1441 1442 1443 1444Procedure TDeployment.Setname(AIndex : Integer; const AValue : String); 1445 1446begin 1447 If (Fname=AValue) then exit; 1448 Fname:=AValue; 1449 MarkPropertyChanged(AIndex); 1450end; 1451 1452 1453 1454Procedure TDeployment.Setoverrides(AIndex : Integer; AValue : TDeploymentTypeoverridesArray); 1455 1456begin 1457 If (Foverrides=AValue) then exit; 1458 Foverrides:=AValue; 1459 MarkPropertyChanged(AIndex); 1460end; 1461 1462 1463 1464Procedure TDeployment.Setstate(AIndex : Integer; AValue : TDeployState); 1465 1466begin 1467 If (Fstate=AValue) then exit; 1468 Fstate:=AValue; 1469 MarkPropertyChanged(AIndex); 1470end; 1471 1472 1473 1474Procedure TDeployment.SettemplateName(AIndex : Integer; const AValue : String); 1475 1476begin 1477 If (FtemplateName=AValue) then exit; 1478 FtemplateName:=AValue; 1479 MarkPropertyChanged(AIndex); 1480end; 1481 1482 1483//2.6.4. bug workaround 1484{$IFDEF VER2_6} 1485Procedure TDeployment.SetArrayLength(Const AName : String; ALength : Longint); 1486 1487begin 1488 Case AName of 1489 'overrides' : SetLength(Foverrides,ALength); 1490 else 1491 Inherited SetArrayLength(AName,ALength); 1492 end; 1493end; 1494{$ENDIF VER2_6} 1495 1496 1497 1498 1499{ -------------------------------------------------------------------- 1500 TDeploymentsListResponse 1501 --------------------------------------------------------------------} 1502 1503 1504Procedure TDeploymentsListResponse.SetnextPageToken(AIndex : Integer; const AValue : String); 1505 1506begin 1507 If (FnextPageToken=AValue) then exit; 1508 FnextPageToken:=AValue; 1509 MarkPropertyChanged(AIndex); 1510end; 1511 1512 1513 1514Procedure TDeploymentsListResponse.Setresources(AIndex : Integer; AValue : TDeploymentsListResponseTyperesourcesArray); 1515 1516begin 1517 If (Fresources=AValue) then exit; 1518 Fresources:=AValue; 1519 MarkPropertyChanged(AIndex); 1520end; 1521 1522 1523//2.6.4. bug workaround 1524{$IFDEF VER2_6} 1525Procedure TDeploymentsListResponse.SetArrayLength(Const AName : String; ALength : Longint); 1526 1527begin 1528 Case AName of 1529 'resources' : SetLength(Fresources,ALength); 1530 else 1531 Inherited SetArrayLength(AName,ALength); 1532 end; 1533end; 1534{$ENDIF VER2_6} 1535 1536 1537 1538 1539{ -------------------------------------------------------------------- 1540 TDiskAttachment 1541 --------------------------------------------------------------------} 1542 1543 1544Procedure TDiskAttachment.SetdeviceName(AIndex : Integer; const AValue : String); 1545 1546begin 1547 If (FdeviceName=AValue) then exit; 1548 FdeviceName:=AValue; 1549 MarkPropertyChanged(AIndex); 1550end; 1551 1552 1553 1554Procedure TDiskAttachment.Setindex(AIndex : Integer; AValue : integer); 1555 1556begin 1557 If (Findex=AValue) then exit; 1558 Findex:=AValue; 1559 MarkPropertyChanged(AIndex); 1560end; 1561 1562 1563 1564 1565 1566{ -------------------------------------------------------------------- 1567 TEnvVariable 1568 --------------------------------------------------------------------} 1569 1570 1571Procedure TEnvVariable.Sethidden(AIndex : Integer; AValue : boolean); 1572 1573begin 1574 If (Fhidden=AValue) then exit; 1575 Fhidden:=AValue; 1576 MarkPropertyChanged(AIndex); 1577end; 1578 1579 1580 1581Procedure TEnvVariable.Setvalue(AIndex : Integer; const AValue : String); 1582 1583begin 1584 If (Fvalue=AValue) then exit; 1585 Fvalue:=AValue; 1586 MarkPropertyChanged(AIndex); 1587end; 1588 1589 1590 1591 1592 1593{ -------------------------------------------------------------------- 1594 TExistingDisk 1595 --------------------------------------------------------------------} 1596 1597 1598Procedure TExistingDisk.Setattachment(AIndex : Integer; AValue : TDiskAttachment); 1599 1600begin 1601 If (Fattachment=AValue) then exit; 1602 Fattachment:=AValue; 1603 MarkPropertyChanged(AIndex); 1604end; 1605 1606 1607 1608Procedure TExistingDisk.Setsource(AIndex : Integer; const AValue : String); 1609 1610begin 1611 If (Fsource=AValue) then exit; 1612 Fsource:=AValue; 1613 MarkPropertyChanged(AIndex); 1614end; 1615 1616 1617 1618 1619 1620{ -------------------------------------------------------------------- 1621 TFirewallModule 1622 --------------------------------------------------------------------} 1623 1624 1625Procedure TFirewallModule.Setallowed(AIndex : Integer; AValue : TFirewallModuleTypeallowedArray); 1626 1627begin 1628 If (Fallowed=AValue) then exit; 1629 Fallowed:=AValue; 1630 MarkPropertyChanged(AIndex); 1631end; 1632 1633 1634 1635Procedure TFirewallModule.Setdescription(AIndex : Integer; const AValue : String); 1636 1637begin 1638 If (Fdescription=AValue) then exit; 1639 Fdescription:=AValue; 1640 MarkPropertyChanged(AIndex); 1641end; 1642 1643 1644 1645Procedure TFirewallModule.Setnetwork(AIndex : Integer; const AValue : String); 1646 1647begin 1648 If (Fnetwork=AValue) then exit; 1649 Fnetwork:=AValue; 1650 MarkPropertyChanged(AIndex); 1651end; 1652 1653 1654 1655Procedure TFirewallModule.SetsourceRanges(AIndex : Integer; AValue : TStringArray); 1656 1657begin 1658 If (FsourceRanges=AValue) then exit; 1659 FsourceRanges:=AValue; 1660 MarkPropertyChanged(AIndex); 1661end; 1662 1663 1664 1665Procedure TFirewallModule.SetsourceTags(AIndex : Integer; AValue : TStringArray); 1666 1667begin 1668 If (FsourceTags=AValue) then exit; 1669 FsourceTags:=AValue; 1670 MarkPropertyChanged(AIndex); 1671end; 1672 1673 1674 1675Procedure TFirewallModule.SettargetTags(AIndex : Integer; AValue : TStringArray); 1676 1677begin 1678 If (FtargetTags=AValue) then exit; 1679 FtargetTags:=AValue; 1680 MarkPropertyChanged(AIndex); 1681end; 1682 1683 1684//2.6.4. bug workaround 1685{$IFDEF VER2_6} 1686Procedure TFirewallModule.SetArrayLength(Const AName : String; ALength : Longint); 1687 1688begin 1689 Case AName of 1690 'allowed' : SetLength(Fallowed,ALength); 1691 'sourceranges' : SetLength(FsourceRanges,ALength); 1692 'sourcetags' : SetLength(FsourceTags,ALength); 1693 'targettags' : SetLength(FtargetTags,ALength); 1694 else 1695 Inherited SetArrayLength(AName,ALength); 1696 end; 1697end; 1698{$ENDIF VER2_6} 1699 1700 1701 1702 1703{ -------------------------------------------------------------------- 1704 TFirewallModuleStatus 1705 --------------------------------------------------------------------} 1706 1707 1708Procedure TFirewallModuleStatus.SetfirewallUrl(AIndex : Integer; const AValue : String); 1709 1710begin 1711 If (FfirewallUrl=AValue) then exit; 1712 FfirewallUrl:=AValue; 1713 MarkPropertyChanged(AIndex); 1714end; 1715 1716 1717 1718 1719 1720{ -------------------------------------------------------------------- 1721 THealthCheckModule 1722 --------------------------------------------------------------------} 1723 1724 1725Procedure THealthCheckModule.SetcheckIntervalSec(AIndex : Integer; AValue : integer); 1726 1727begin 1728 If (FcheckIntervalSec=AValue) then exit; 1729 FcheckIntervalSec:=AValue; 1730 MarkPropertyChanged(AIndex); 1731end; 1732 1733 1734 1735Procedure THealthCheckModule.Setdescription(AIndex : Integer; const AValue : String); 1736 1737begin 1738 If (Fdescription=AValue) then exit; 1739 Fdescription:=AValue; 1740 MarkPropertyChanged(AIndex); 1741end; 1742 1743 1744 1745Procedure THealthCheckModule.SethealthyThreshold(AIndex : Integer; AValue : integer); 1746 1747begin 1748 If (FhealthyThreshold=AValue) then exit; 1749 FhealthyThreshold:=AValue; 1750 MarkPropertyChanged(AIndex); 1751end; 1752 1753 1754 1755Procedure THealthCheckModule.Sethost(AIndex : Integer; const AValue : String); 1756 1757begin 1758 If (Fhost=AValue) then exit; 1759 Fhost:=AValue; 1760 MarkPropertyChanged(AIndex); 1761end; 1762 1763 1764 1765Procedure THealthCheckModule.Setpath(AIndex : Integer; const AValue : String); 1766 1767begin 1768 If (Fpath=AValue) then exit; 1769 Fpath:=AValue; 1770 MarkPropertyChanged(AIndex); 1771end; 1772 1773 1774 1775Procedure THealthCheckModule.Setport(AIndex : Integer; AValue : integer); 1776 1777begin 1778 If (Fport=AValue) then exit; 1779 Fport:=AValue; 1780 MarkPropertyChanged(AIndex); 1781end; 1782 1783 1784 1785Procedure THealthCheckModule.SettimeoutSec(AIndex : Integer; AValue : integer); 1786 1787begin 1788 If (FtimeoutSec=AValue) then exit; 1789 FtimeoutSec:=AValue; 1790 MarkPropertyChanged(AIndex); 1791end; 1792 1793 1794 1795Procedure THealthCheckModule.SetunhealthyThreshold(AIndex : Integer; AValue : integer); 1796 1797begin 1798 If (FunhealthyThreshold=AValue) then exit; 1799 FunhealthyThreshold:=AValue; 1800 MarkPropertyChanged(AIndex); 1801end; 1802 1803 1804 1805 1806 1807{ -------------------------------------------------------------------- 1808 THealthCheckModuleStatus 1809 --------------------------------------------------------------------} 1810 1811 1812Procedure THealthCheckModuleStatus.SethealthCheckUrl(AIndex : Integer; const AValue : String); 1813 1814begin 1815 If (FhealthCheckUrl=AValue) then exit; 1816 FhealthCheckUrl:=AValue; 1817 MarkPropertyChanged(AIndex); 1818end; 1819 1820 1821 1822 1823 1824{ -------------------------------------------------------------------- 1825 TLbModule 1826 --------------------------------------------------------------------} 1827 1828 1829Procedure TLbModule.Setdescription(AIndex : Integer; const AValue : String); 1830 1831begin 1832 If (Fdescription=AValue) then exit; 1833 Fdescription:=AValue; 1834 MarkPropertyChanged(AIndex); 1835end; 1836 1837 1838 1839Procedure TLbModule.SethealthChecks(AIndex : Integer; AValue : TStringArray); 1840 1841begin 1842 If (FhealthChecks=AValue) then exit; 1843 FhealthChecks:=AValue; 1844 MarkPropertyChanged(AIndex); 1845end; 1846 1847 1848 1849Procedure TLbModule.SetipAddress(AIndex : Integer; const AValue : String); 1850 1851begin 1852 If (FipAddress=AValue) then exit; 1853 FipAddress:=AValue; 1854 MarkPropertyChanged(AIndex); 1855end; 1856 1857 1858 1859Procedure TLbModule.SetipProtocol(AIndex : Integer; const AValue : String); 1860 1861begin 1862 If (FipProtocol=AValue) then exit; 1863 FipProtocol:=AValue; 1864 MarkPropertyChanged(AIndex); 1865end; 1866 1867 1868 1869Procedure TLbModule.SetportRange(AIndex : Integer; const AValue : String); 1870 1871begin 1872 If (FportRange=AValue) then exit; 1873 FportRange:=AValue; 1874 MarkPropertyChanged(AIndex); 1875end; 1876 1877 1878 1879Procedure TLbModule.SetsessionAffinity(AIndex : Integer; const AValue : String); 1880 1881begin 1882 If (FsessionAffinity=AValue) then exit; 1883 FsessionAffinity:=AValue; 1884 MarkPropertyChanged(AIndex); 1885end; 1886 1887 1888 1889Procedure TLbModule.SettargetModules(AIndex : Integer; AValue : TStringArray); 1890 1891begin 1892 If (FtargetModules=AValue) then exit; 1893 FtargetModules:=AValue; 1894 MarkPropertyChanged(AIndex); 1895end; 1896 1897 1898//2.6.4. bug workaround 1899{$IFDEF VER2_6} 1900Procedure TLbModule.SetArrayLength(Const AName : String; ALength : Longint); 1901 1902begin 1903 Case AName of 1904 'healthchecks' : SetLength(FhealthChecks,ALength); 1905 'targetmodules' : SetLength(FtargetModules,ALength); 1906 else 1907 Inherited SetArrayLength(AName,ALength); 1908 end; 1909end; 1910{$ENDIF VER2_6} 1911 1912 1913 1914 1915{ -------------------------------------------------------------------- 1916 TLbModuleStatus 1917 --------------------------------------------------------------------} 1918 1919 1920Procedure TLbModuleStatus.SetforwardingRuleUrl(AIndex : Integer; const AValue : String); 1921 1922begin 1923 If (FforwardingRuleUrl=AValue) then exit; 1924 FforwardingRuleUrl:=AValue; 1925 MarkPropertyChanged(AIndex); 1926end; 1927 1928 1929 1930Procedure TLbModuleStatus.SettargetPoolUrl(AIndex : Integer; const AValue : String); 1931 1932begin 1933 If (FtargetPoolUrl=AValue) then exit; 1934 FtargetPoolUrl:=AValue; 1935 MarkPropertyChanged(AIndex); 1936end; 1937 1938 1939 1940 1941 1942{ -------------------------------------------------------------------- 1943 TMetadata 1944 --------------------------------------------------------------------} 1945 1946 1947Procedure TMetadata.SetfingerPrint(AIndex : Integer; const AValue : String); 1948 1949begin 1950 If (FfingerPrint=AValue) then exit; 1951 FfingerPrint:=AValue; 1952 MarkPropertyChanged(AIndex); 1953end; 1954 1955 1956 1957Procedure TMetadata.Setitems(AIndex : Integer; AValue : TMetadataTypeitemsArray); 1958 1959begin 1960 If (Fitems=AValue) then exit; 1961 Fitems:=AValue; 1962 MarkPropertyChanged(AIndex); 1963end; 1964 1965 1966//2.6.4. bug workaround 1967{$IFDEF VER2_6} 1968Procedure TMetadata.SetArrayLength(Const AName : String; ALength : Longint); 1969 1970begin 1971 Case AName of 1972 'items' : SetLength(Fitems,ALength); 1973 else 1974 Inherited SetArrayLength(AName,ALength); 1975 end; 1976end; 1977{$ENDIF VER2_6} 1978 1979 1980 1981 1982{ -------------------------------------------------------------------- 1983 TMetadataItem 1984 --------------------------------------------------------------------} 1985 1986 1987Procedure TMetadataItem.Setkey(AIndex : Integer; const AValue : String); 1988 1989begin 1990 If (Fkey=AValue) then exit; 1991 Fkey:=AValue; 1992 MarkPropertyChanged(AIndex); 1993end; 1994 1995 1996 1997Procedure TMetadataItem.Setvalue(AIndex : Integer; const AValue : String); 1998 1999begin 2000 If (Fvalue=AValue) then exit; 2001 Fvalue:=AValue; 2002 MarkPropertyChanged(AIndex); 2003end; 2004 2005 2006 2007 2008 2009{ -------------------------------------------------------------------- 2010 TModule 2011 --------------------------------------------------------------------} 2012 2013 2014Procedure TModule.SetautoscalingModule(AIndex : Integer; AValue : TAutoscalingModule); 2015 2016begin 2017 If (FautoscalingModule=AValue) then exit; 2018 FautoscalingModule:=AValue; 2019 MarkPropertyChanged(AIndex); 2020end; 2021 2022 2023 2024Procedure TModule.SetfirewallModule(AIndex : Integer; AValue : TFirewallModule); 2025 2026begin 2027 If (FfirewallModule=AValue) then exit; 2028 FfirewallModule:=AValue; 2029 MarkPropertyChanged(AIndex); 2030end; 2031 2032 2033 2034Procedure TModule.SethealthCheckModule(AIndex : Integer; AValue : THealthCheckModule); 2035 2036begin 2037 If (FhealthCheckModule=AValue) then exit; 2038 FhealthCheckModule:=AValue; 2039 MarkPropertyChanged(AIndex); 2040end; 2041 2042 2043 2044Procedure TModule.SetlbModule(AIndex : Integer; AValue : TLbModule); 2045 2046begin 2047 If (FlbModule=AValue) then exit; 2048 FlbModule:=AValue; 2049 MarkPropertyChanged(AIndex); 2050end; 2051 2052 2053 2054Procedure TModule.SetnetworkModule(AIndex : Integer; AValue : TNetworkModule); 2055 2056begin 2057 If (FnetworkModule=AValue) then exit; 2058 FnetworkModule:=AValue; 2059 MarkPropertyChanged(AIndex); 2060end; 2061 2062 2063 2064Procedure TModule.SetreplicaPoolModule(AIndex : Integer; AValue : TReplicaPoolModule); 2065 2066begin 2067 If (FreplicaPoolModule=AValue) then exit; 2068 FreplicaPoolModule:=AValue; 2069 MarkPropertyChanged(AIndex); 2070end; 2071 2072 2073 2074Procedure TModule.Set_type(AIndex : Integer; const AValue : String); 2075 2076begin 2077 If (F_type=AValue) then exit; 2078 F_type:=AValue; 2079 MarkPropertyChanged(AIndex); 2080end; 2081 2082 2083 2084Class Function TModule.ExportPropertyName(Const AName : String) :String; 2085 2086begin 2087 Case AName of 2088 '_type' : Result:='type'; 2089 else 2090 Result:=Inherited ExportPropertyName(AName); 2091 end; 2092end; 2093 2094 2095 2096 2097{ -------------------------------------------------------------------- 2098 TModuleStatus 2099 --------------------------------------------------------------------} 2100 2101 2102Procedure TModuleStatus.SetautoscalingModuleStatus(AIndex : Integer; AValue : TAutoscalingModuleStatus); 2103 2104begin 2105 If (FautoscalingModuleStatus=AValue) then exit; 2106 FautoscalingModuleStatus:=AValue; 2107 MarkPropertyChanged(AIndex); 2108end; 2109 2110 2111 2112Procedure TModuleStatus.SetfirewallModuleStatus(AIndex : Integer; AValue : TFirewallModuleStatus); 2113 2114begin 2115 If (FfirewallModuleStatus=AValue) then exit; 2116 FfirewallModuleStatus:=AValue; 2117 MarkPropertyChanged(AIndex); 2118end; 2119 2120 2121 2122Procedure TModuleStatus.SethealthCheckModuleStatus(AIndex : Integer; AValue : THealthCheckModuleStatus); 2123 2124begin 2125 If (FhealthCheckModuleStatus=AValue) then exit; 2126 FhealthCheckModuleStatus:=AValue; 2127 MarkPropertyChanged(AIndex); 2128end; 2129 2130 2131 2132Procedure TModuleStatus.SetlbModuleStatus(AIndex : Integer; AValue : TLbModuleStatus); 2133 2134begin 2135 If (FlbModuleStatus=AValue) then exit; 2136 FlbModuleStatus:=AValue; 2137 MarkPropertyChanged(AIndex); 2138end; 2139 2140 2141 2142Procedure TModuleStatus.SetnetworkModuleStatus(AIndex : Integer; AValue : TNetworkModuleStatus); 2143 2144begin 2145 If (FnetworkModuleStatus=AValue) then exit; 2146 FnetworkModuleStatus:=AValue; 2147 MarkPropertyChanged(AIndex); 2148end; 2149 2150 2151 2152Procedure TModuleStatus.SetreplicaPoolModuleStatus(AIndex : Integer; AValue : TReplicaPoolModuleStatus); 2153 2154begin 2155 If (FreplicaPoolModuleStatus=AValue) then exit; 2156 FreplicaPoolModuleStatus:=AValue; 2157 MarkPropertyChanged(AIndex); 2158end; 2159 2160 2161 2162Procedure TModuleStatus.Setstate(AIndex : Integer; AValue : TDeployState); 2163 2164begin 2165 If (Fstate=AValue) then exit; 2166 Fstate:=AValue; 2167 MarkPropertyChanged(AIndex); 2168end; 2169 2170 2171 2172Procedure TModuleStatus.Set_type(AIndex : Integer; const AValue : String); 2173 2174begin 2175 If (F_type=AValue) then exit; 2176 F_type:=AValue; 2177 MarkPropertyChanged(AIndex); 2178end; 2179 2180 2181 2182Class Function TModuleStatus.ExportPropertyName(Const AName : String) :String; 2183 2184begin 2185 Case AName of 2186 '_type' : Result:='type'; 2187 else 2188 Result:=Inherited ExportPropertyName(AName); 2189 end; 2190end; 2191 2192 2193 2194 2195{ -------------------------------------------------------------------- 2196 TNetworkInterface 2197 --------------------------------------------------------------------} 2198 2199 2200Procedure TNetworkInterface.SetaccessConfigs(AIndex : Integer; AValue : TNetworkInterfaceTypeaccessConfigsArray); 2201 2202begin 2203 If (FaccessConfigs=AValue) then exit; 2204 FaccessConfigs:=AValue; 2205 MarkPropertyChanged(AIndex); 2206end; 2207 2208 2209 2210Procedure TNetworkInterface.Setname(AIndex : Integer; const AValue : String); 2211 2212begin 2213 If (Fname=AValue) then exit; 2214 Fname:=AValue; 2215 MarkPropertyChanged(AIndex); 2216end; 2217 2218 2219 2220Procedure TNetworkInterface.Setnetwork(AIndex : Integer; const AValue : String); 2221 2222begin 2223 If (Fnetwork=AValue) then exit; 2224 Fnetwork:=AValue; 2225 MarkPropertyChanged(AIndex); 2226end; 2227 2228 2229 2230Procedure TNetworkInterface.SetnetworkIp(AIndex : Integer; const AValue : String); 2231 2232begin 2233 If (FnetworkIp=AValue) then exit; 2234 FnetworkIp:=AValue; 2235 MarkPropertyChanged(AIndex); 2236end; 2237 2238 2239//2.6.4. bug workaround 2240{$IFDEF VER2_6} 2241Procedure TNetworkInterface.SetArrayLength(Const AName : String; ALength : Longint); 2242 2243begin 2244 Case AName of 2245 'accessconfigs' : SetLength(FaccessConfigs,ALength); 2246 else 2247 Inherited SetArrayLength(AName,ALength); 2248 end; 2249end; 2250{$ENDIF VER2_6} 2251 2252 2253 2254 2255{ -------------------------------------------------------------------- 2256 TNetworkModule 2257 --------------------------------------------------------------------} 2258 2259 2260Procedure TNetworkModule.SetIPv4Range(AIndex : Integer; const AValue : String); 2261 2262begin 2263 If (FIPv4Range=AValue) then exit; 2264 FIPv4Range:=AValue; 2265 MarkPropertyChanged(AIndex); 2266end; 2267 2268 2269 2270Procedure TNetworkModule.Setdescription(AIndex : Integer; const AValue : String); 2271 2272begin 2273 If (Fdescription=AValue) then exit; 2274 Fdescription:=AValue; 2275 MarkPropertyChanged(AIndex); 2276end; 2277 2278 2279 2280Procedure TNetworkModule.SetgatewayIPv4(AIndex : Integer; const AValue : String); 2281 2282begin 2283 If (FgatewayIPv4=AValue) then exit; 2284 FgatewayIPv4:=AValue; 2285 MarkPropertyChanged(AIndex); 2286end; 2287 2288 2289 2290 2291 2292{ -------------------------------------------------------------------- 2293 TNetworkModuleStatus 2294 --------------------------------------------------------------------} 2295 2296 2297Procedure TNetworkModuleStatus.SetnetworkUrl(AIndex : Integer; const AValue : String); 2298 2299begin 2300 If (FnetworkUrl=AValue) then exit; 2301 FnetworkUrl:=AValue; 2302 MarkPropertyChanged(AIndex); 2303end; 2304 2305 2306 2307 2308 2309{ -------------------------------------------------------------------- 2310 TNewDisk 2311 --------------------------------------------------------------------} 2312 2313 2314Procedure TNewDisk.Setattachment(AIndex : Integer; AValue : TDiskAttachment); 2315 2316begin 2317 If (Fattachment=AValue) then exit; 2318 Fattachment:=AValue; 2319 MarkPropertyChanged(AIndex); 2320end; 2321 2322 2323 2324Procedure TNewDisk.SetautoDelete(AIndex : Integer; AValue : boolean); 2325 2326begin 2327 If (FautoDelete=AValue) then exit; 2328 FautoDelete:=AValue; 2329 MarkPropertyChanged(AIndex); 2330end; 2331 2332 2333 2334Procedure TNewDisk.Setboot(AIndex : Integer; AValue : boolean); 2335 2336begin 2337 If (Fboot=AValue) then exit; 2338 Fboot:=AValue; 2339 MarkPropertyChanged(AIndex); 2340end; 2341 2342 2343 2344Procedure TNewDisk.SetinitializeParams(AIndex : Integer; AValue : TNewDiskInitializeParams); 2345 2346begin 2347 If (FinitializeParams=AValue) then exit; 2348 FinitializeParams:=AValue; 2349 MarkPropertyChanged(AIndex); 2350end; 2351 2352 2353 2354 2355 2356{ -------------------------------------------------------------------- 2357 TNewDiskInitializeParams 2358 --------------------------------------------------------------------} 2359 2360 2361Procedure TNewDiskInitializeParams.SetdiskSizeGb(AIndex : Integer; const AValue : String); 2362 2363begin 2364 If (FdiskSizeGb=AValue) then exit; 2365 FdiskSizeGb:=AValue; 2366 MarkPropertyChanged(AIndex); 2367end; 2368 2369 2370 2371Procedure TNewDiskInitializeParams.SetdiskType(AIndex : Integer; const AValue : String); 2372 2373begin 2374 If (FdiskType=AValue) then exit; 2375 FdiskType:=AValue; 2376 MarkPropertyChanged(AIndex); 2377end; 2378 2379 2380 2381Procedure TNewDiskInitializeParams.SetsourceImage(AIndex : Integer; const AValue : String); 2382 2383begin 2384 If (FsourceImage=AValue) then exit; 2385 FsourceImage:=AValue; 2386 MarkPropertyChanged(AIndex); 2387end; 2388 2389 2390 2391 2392 2393{ -------------------------------------------------------------------- 2394 TParamOverride 2395 --------------------------------------------------------------------} 2396 2397 2398Procedure TParamOverride.Setpath(AIndex : Integer; const AValue : String); 2399 2400begin 2401 If (Fpath=AValue) then exit; 2402 Fpath:=AValue; 2403 MarkPropertyChanged(AIndex); 2404end; 2405 2406 2407 2408Procedure TParamOverride.Setvalue(AIndex : Integer; const AValue : String); 2409 2410begin 2411 If (Fvalue=AValue) then exit; 2412 Fvalue:=AValue; 2413 MarkPropertyChanged(AIndex); 2414end; 2415 2416 2417 2418 2419 2420{ -------------------------------------------------------------------- 2421 TReplicaPoolModuleTypeenvVariables 2422 --------------------------------------------------------------------} 2423 2424 2425Class Function TReplicaPoolModuleTypeenvVariables.AllowAdditionalProperties : Boolean; 2426 2427begin 2428 Result:=True; 2429end; 2430 2431 2432 2433{ -------------------------------------------------------------------- 2434 TReplicaPoolModule 2435 --------------------------------------------------------------------} 2436 2437 2438Procedure TReplicaPoolModule.SetenvVariables(AIndex : Integer; AValue : TReplicaPoolModuleTypeenvVariables); 2439 2440begin 2441 If (FenvVariables=AValue) then exit; 2442 FenvVariables:=AValue; 2443 MarkPropertyChanged(AIndex); 2444end; 2445 2446 2447 2448Procedure TReplicaPoolModule.SethealthChecks(AIndex : Integer; AValue : TStringArray); 2449 2450begin 2451 If (FhealthChecks=AValue) then exit; 2452 FhealthChecks:=AValue; 2453 MarkPropertyChanged(AIndex); 2454end; 2455 2456 2457 2458Procedure TReplicaPoolModule.SetnumReplicas(AIndex : Integer; AValue : integer); 2459 2460begin 2461 If (FnumReplicas=AValue) then exit; 2462 FnumReplicas:=AValue; 2463 MarkPropertyChanged(AIndex); 2464end; 2465 2466 2467 2468Procedure TReplicaPoolModule.SetreplicaPoolParams(AIndex : Integer; AValue : TReplicaPoolParams); 2469 2470begin 2471 If (FreplicaPoolParams=AValue) then exit; 2472 FreplicaPoolParams:=AValue; 2473 MarkPropertyChanged(AIndex); 2474end; 2475 2476 2477 2478Procedure TReplicaPoolModule.SetresourceView(AIndex : Integer; const AValue : String); 2479 2480begin 2481 If (FresourceView=AValue) then exit; 2482 FresourceView:=AValue; 2483 MarkPropertyChanged(AIndex); 2484end; 2485 2486 2487//2.6.4. bug workaround 2488{$IFDEF VER2_6} 2489Procedure TReplicaPoolModule.SetArrayLength(Const AName : String; ALength : Longint); 2490 2491begin 2492 Case AName of 2493 'healthchecks' : SetLength(FhealthChecks,ALength); 2494 else 2495 Inherited SetArrayLength(AName,ALength); 2496 end; 2497end; 2498{$ENDIF VER2_6} 2499 2500 2501 2502 2503{ -------------------------------------------------------------------- 2504 TReplicaPoolModuleStatus 2505 --------------------------------------------------------------------} 2506 2507 2508Procedure TReplicaPoolModuleStatus.SetreplicaPoolUrl(AIndex : Integer; const AValue : String); 2509 2510begin 2511 If (FreplicaPoolUrl=AValue) then exit; 2512 FreplicaPoolUrl:=AValue; 2513 MarkPropertyChanged(AIndex); 2514end; 2515 2516 2517 2518Procedure TReplicaPoolModuleStatus.SetresourceViewUrl(AIndex : Integer; const AValue : String); 2519 2520begin 2521 If (FresourceViewUrl=AValue) then exit; 2522 FresourceViewUrl:=AValue; 2523 MarkPropertyChanged(AIndex); 2524end; 2525 2526 2527 2528 2529 2530{ -------------------------------------------------------------------- 2531 TReplicaPoolParams 2532 --------------------------------------------------------------------} 2533 2534 2535Procedure TReplicaPoolParams.Setv1beta1(AIndex : Integer; AValue : TReplicaPoolParamsV1Beta1); 2536 2537begin 2538 If (Fv1beta1=AValue) then exit; 2539 Fv1beta1:=AValue; 2540 MarkPropertyChanged(AIndex); 2541end; 2542 2543 2544 2545 2546 2547{ -------------------------------------------------------------------- 2548 TReplicaPoolParamsV1Beta1 2549 --------------------------------------------------------------------} 2550 2551 2552Procedure TReplicaPoolParamsV1Beta1.SetautoRestart(AIndex : Integer; AValue : boolean); 2553 2554begin 2555 If (FautoRestart=AValue) then exit; 2556 FautoRestart:=AValue; 2557 MarkPropertyChanged(AIndex); 2558end; 2559 2560 2561 2562Procedure TReplicaPoolParamsV1Beta1.SetbaseInstanceName(AIndex : Integer; const AValue : String); 2563 2564begin 2565 If (FbaseInstanceName=AValue) then exit; 2566 FbaseInstanceName:=AValue; 2567 MarkPropertyChanged(AIndex); 2568end; 2569 2570 2571 2572Procedure TReplicaPoolParamsV1Beta1.SetcanIpForward(AIndex : Integer; AValue : boolean); 2573 2574begin 2575 If (FcanIpForward=AValue) then exit; 2576 FcanIpForward:=AValue; 2577 MarkPropertyChanged(AIndex); 2578end; 2579 2580 2581 2582Procedure TReplicaPoolParamsV1Beta1.Setdescription(AIndex : Integer; const AValue : String); 2583 2584begin 2585 If (Fdescription=AValue) then exit; 2586 Fdescription:=AValue; 2587 MarkPropertyChanged(AIndex); 2588end; 2589 2590 2591 2592Procedure TReplicaPoolParamsV1Beta1.SetdisksToAttach(AIndex : Integer; AValue : TReplicaPoolParamsV1Beta1TypedisksToAttachArray); 2593 2594begin 2595 If (FdisksToAttach=AValue) then exit; 2596 FdisksToAttach:=AValue; 2597 MarkPropertyChanged(AIndex); 2598end; 2599 2600 2601 2602Procedure TReplicaPoolParamsV1Beta1.SetdisksToCreate(AIndex : Integer; AValue : TReplicaPoolParamsV1Beta1TypedisksToCreateArray); 2603 2604begin 2605 If (FdisksToCreate=AValue) then exit; 2606 FdisksToCreate:=AValue; 2607 MarkPropertyChanged(AIndex); 2608end; 2609 2610 2611 2612Procedure TReplicaPoolParamsV1Beta1.SetinitAction(AIndex : Integer; const AValue : String); 2613 2614begin 2615 If (FinitAction=AValue) then exit; 2616 FinitAction:=AValue; 2617 MarkPropertyChanged(AIndex); 2618end; 2619 2620 2621 2622Procedure TReplicaPoolParamsV1Beta1.SetmachineType(AIndex : Integer; const AValue : String); 2623 2624begin 2625 If (FmachineType=AValue) then exit; 2626 FmachineType:=AValue; 2627 MarkPropertyChanged(AIndex); 2628end; 2629 2630 2631 2632Procedure TReplicaPoolParamsV1Beta1.Setmetadata(AIndex : Integer; AValue : TMetadata); 2633 2634begin 2635 If (Fmetadata=AValue) then exit; 2636 Fmetadata:=AValue; 2637 MarkPropertyChanged(AIndex); 2638end; 2639 2640 2641 2642Procedure TReplicaPoolParamsV1Beta1.SetnetworkInterfaces(AIndex : Integer; AValue : TReplicaPoolParamsV1Beta1TypenetworkInterfacesArray); 2643 2644begin 2645 If (FnetworkInterfaces=AValue) then exit; 2646 FnetworkInterfaces:=AValue; 2647 MarkPropertyChanged(AIndex); 2648end; 2649 2650 2651 2652Procedure TReplicaPoolParamsV1Beta1.SetonHostMaintenance(AIndex : Integer; const AValue : String); 2653 2654begin 2655 If (FonHostMaintenance=AValue) then exit; 2656 FonHostMaintenance:=AValue; 2657 MarkPropertyChanged(AIndex); 2658end; 2659 2660 2661 2662Procedure TReplicaPoolParamsV1Beta1.SetserviceAccounts(AIndex : Integer; AValue : TReplicaPoolParamsV1Beta1TypeserviceAccountsArray); 2663 2664begin 2665 If (FserviceAccounts=AValue) then exit; 2666 FserviceAccounts:=AValue; 2667 MarkPropertyChanged(AIndex); 2668end; 2669 2670 2671 2672Procedure TReplicaPoolParamsV1Beta1.Settags(AIndex : Integer; AValue : TTag); 2673 2674begin 2675 If (Ftags=AValue) then exit; 2676 Ftags:=AValue; 2677 MarkPropertyChanged(AIndex); 2678end; 2679 2680 2681 2682Procedure TReplicaPoolParamsV1Beta1.Setzone(AIndex : Integer; const AValue : String); 2683 2684begin 2685 If (Fzone=AValue) then exit; 2686 Fzone:=AValue; 2687 MarkPropertyChanged(AIndex); 2688end; 2689 2690 2691//2.6.4. bug workaround 2692{$IFDEF VER2_6} 2693Procedure TReplicaPoolParamsV1Beta1.SetArrayLength(Const AName : String; ALength : Longint); 2694 2695begin 2696 Case AName of 2697 'diskstoattach' : SetLength(FdisksToAttach,ALength); 2698 'diskstocreate' : SetLength(FdisksToCreate,ALength); 2699 'networkinterfaces' : SetLength(FnetworkInterfaces,ALength); 2700 'serviceaccounts' : SetLength(FserviceAccounts,ALength); 2701 else 2702 Inherited SetArrayLength(AName,ALength); 2703 end; 2704end; 2705{$ENDIF VER2_6} 2706 2707 2708 2709 2710{ -------------------------------------------------------------------- 2711 TServiceAccount 2712 --------------------------------------------------------------------} 2713 2714 2715Procedure TServiceAccount.Setemail(AIndex : Integer; const AValue : String); 2716 2717begin 2718 If (Femail=AValue) then exit; 2719 Femail:=AValue; 2720 MarkPropertyChanged(AIndex); 2721end; 2722 2723 2724 2725Procedure TServiceAccount.Setscopes(AIndex : Integer; AValue : TStringArray); 2726 2727begin 2728 If (Fscopes=AValue) then exit; 2729 Fscopes:=AValue; 2730 MarkPropertyChanged(AIndex); 2731end; 2732 2733 2734//2.6.4. bug workaround 2735{$IFDEF VER2_6} 2736Procedure TServiceAccount.SetArrayLength(Const AName : String; ALength : Longint); 2737 2738begin 2739 Case AName of 2740 'scopes' : SetLength(Fscopes,ALength); 2741 else 2742 Inherited SetArrayLength(AName,ALength); 2743 end; 2744end; 2745{$ENDIF VER2_6} 2746 2747 2748 2749 2750{ -------------------------------------------------------------------- 2751 TTag 2752 --------------------------------------------------------------------} 2753 2754 2755Procedure TTag.SetfingerPrint(AIndex : Integer; const AValue : String); 2756 2757begin 2758 If (FfingerPrint=AValue) then exit; 2759 FfingerPrint:=AValue; 2760 MarkPropertyChanged(AIndex); 2761end; 2762 2763 2764 2765Procedure TTag.Setitems(AIndex : Integer; AValue : TStringArray); 2766 2767begin 2768 If (Fitems=AValue) then exit; 2769 Fitems:=AValue; 2770 MarkPropertyChanged(AIndex); 2771end; 2772 2773 2774//2.6.4. bug workaround 2775{$IFDEF VER2_6} 2776Procedure TTag.SetArrayLength(Const AName : String; ALength : Longint); 2777 2778begin 2779 Case AName of 2780 'items' : SetLength(Fitems,ALength); 2781 else 2782 Inherited SetArrayLength(AName,ALength); 2783 end; 2784end; 2785{$ENDIF VER2_6} 2786 2787 2788 2789 2790{ -------------------------------------------------------------------- 2791 TTemplateTypeactions 2792 --------------------------------------------------------------------} 2793 2794 2795Class Function TTemplateTypeactions.AllowAdditionalProperties : Boolean; 2796 2797begin 2798 Result:=True; 2799end; 2800 2801 2802 2803{ -------------------------------------------------------------------- 2804 TTemplateTypemodules 2805 --------------------------------------------------------------------} 2806 2807 2808Class Function TTemplateTypemodules.AllowAdditionalProperties : Boolean; 2809 2810begin 2811 Result:=True; 2812end; 2813 2814 2815 2816{ -------------------------------------------------------------------- 2817 TTemplate 2818 --------------------------------------------------------------------} 2819 2820 2821Procedure TTemplate.Setactions(AIndex : Integer; AValue : TTemplateTypeactions); 2822 2823begin 2824 If (Factions=AValue) then exit; 2825 Factions:=AValue; 2826 MarkPropertyChanged(AIndex); 2827end; 2828 2829 2830 2831Procedure TTemplate.Setdescription(AIndex : Integer; const AValue : String); 2832 2833begin 2834 If (Fdescription=AValue) then exit; 2835 Fdescription:=AValue; 2836 MarkPropertyChanged(AIndex); 2837end; 2838 2839 2840 2841Procedure TTemplate.Setmodules(AIndex : Integer; AValue : TTemplateTypemodules); 2842 2843begin 2844 If (Fmodules=AValue) then exit; 2845 Fmodules:=AValue; 2846 MarkPropertyChanged(AIndex); 2847end; 2848 2849 2850 2851Procedure TTemplate.Setname(AIndex : Integer; const AValue : String); 2852 2853begin 2854 If (Fname=AValue) then exit; 2855 Fname:=AValue; 2856 MarkPropertyChanged(AIndex); 2857end; 2858 2859 2860 2861 2862 2863{ -------------------------------------------------------------------- 2864 TTemplatesListResponse 2865 --------------------------------------------------------------------} 2866 2867 2868Procedure TTemplatesListResponse.SetnextPageToken(AIndex : Integer; const AValue : String); 2869 2870begin 2871 If (FnextPageToken=AValue) then exit; 2872 FnextPageToken:=AValue; 2873 MarkPropertyChanged(AIndex); 2874end; 2875 2876 2877 2878Procedure TTemplatesListResponse.Setresources(AIndex : Integer; AValue : TTemplatesListResponseTyperesourcesArray); 2879 2880begin 2881 If (Fresources=AValue) then exit; 2882 Fresources:=AValue; 2883 MarkPropertyChanged(AIndex); 2884end; 2885 2886 2887//2.6.4. bug workaround 2888{$IFDEF VER2_6} 2889Procedure TTemplatesListResponse.SetArrayLength(Const AName : String; ALength : Longint); 2890 2891begin 2892 Case AName of 2893 'resources' : SetLength(Fresources,ALength); 2894 else 2895 Inherited SetArrayLength(AName,ALength); 2896 end; 2897end; 2898{$ENDIF VER2_6} 2899 2900 2901 2902 2903{ -------------------------------------------------------------------- 2904 TDeploymentsResource 2905 --------------------------------------------------------------------} 2906 2907 2908Class Function TDeploymentsResource.ResourceName : String; 2909 2910begin 2911 Result:='deployments'; 2912end; 2913 2914Class Function TDeploymentsResource.DefaultAPI : TGoogleAPIClass; 2915 2916begin 2917 Result:=TmanagerAPI; 2918end; 2919 2920Procedure TDeploymentsResource.Delete(deploymentName: string; projectId: string; region: string); 2921 2922Const 2923 _HTTPMethod = 'DELETE'; 2924 _Path = '{projectId}/regions/{region}/deployments/{deploymentName}'; 2925 _Methodid = 'manager.deployments.delete'; 2926 2927Var 2928 _P : String; 2929 2930begin 2931 _P:=SubstitutePath(_Path,['deploymentName',deploymentName,'projectId',projectId,'region',region]); 2932 ServiceCall(_HTTPMethod,_P,'',Nil,Nil); 2933end; 2934 2935Function TDeploymentsResource.Get(deploymentName: string; projectId: string; region: string) : TDeployment; 2936 2937Const 2938 _HTTPMethod = 'GET'; 2939 _Path = '{projectId}/regions/{region}/deployments/{deploymentName}'; 2940 _Methodid = 'manager.deployments.get'; 2941 2942Var 2943 _P : String; 2944 2945begin 2946 _P:=SubstitutePath(_Path,['deploymentName',deploymentName,'projectId',projectId,'region',region]); 2947 Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TDeployment) as TDeployment; 2948end; 2949 2950Function TDeploymentsResource.Insert(projectId: string; region: string; aDeployment : TDeployment) : TDeployment; 2951 2952Const 2953 _HTTPMethod = 'POST'; 2954 _Path = '{projectId}/regions/{region}/deployments'; 2955 _Methodid = 'manager.deployments.insert'; 2956 2957Var 2958 _P : String; 2959 2960begin 2961 _P:=SubstitutePath(_Path,['projectId',projectId,'region',region]); 2962 Result:=ServiceCall(_HTTPMethod,_P,'',aDeployment,TDeployment) as TDeployment; 2963end; 2964 2965Function TDeploymentsResource.List(projectId: string; region: string; AQuery : string = '') : TDeploymentsListResponse; 2966 2967Const 2968 _HTTPMethod = 'GET'; 2969 _Path = '{projectId}/regions/{region}/deployments'; 2970 _Methodid = 'manager.deployments.list'; 2971 2972Var 2973 _P : String; 2974 2975begin 2976 _P:=SubstitutePath(_Path,['projectId',projectId,'region',region]); 2977 Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TDeploymentsListResponse) as TDeploymentsListResponse; 2978end; 2979 2980 2981Function TDeploymentsResource.List(projectId: string; region: string; AQuery : TDeploymentslistOptions) : TDeploymentsListResponse; 2982 2983Var 2984 _Q : String; 2985 2986begin 2987 _Q:=''; 2988 AddToQuery(_Q,'maxResults',AQuery.maxResults); 2989 AddToQuery(_Q,'pageToken',AQuery.pageToken); 2990 Result:=List(projectId,region,_Q); 2991end; 2992 2993 2994 2995{ -------------------------------------------------------------------- 2996 TTemplatesResource 2997 --------------------------------------------------------------------} 2998 2999 3000Class Function TTemplatesResource.ResourceName : String; 3001 3002begin 3003 Result:='templates'; 3004end; 3005 3006Class Function TTemplatesResource.DefaultAPI : TGoogleAPIClass; 3007 3008begin 3009 Result:=TmanagerAPI; 3010end; 3011 3012Procedure TTemplatesResource.Delete(projectId: string; templateName: string); 3013 3014Const 3015 _HTTPMethod = 'DELETE'; 3016 _Path = '{projectId}/templates/{templateName}'; 3017 _Methodid = 'manager.templates.delete'; 3018 3019Var 3020 _P : String; 3021 3022begin 3023 _P:=SubstitutePath(_Path,['projectId',projectId,'templateName',templateName]); 3024 ServiceCall(_HTTPMethod,_P,'',Nil,Nil); 3025end; 3026 3027Function TTemplatesResource.Get(projectId: string; templateName: string) : TTemplate; 3028 3029Const 3030 _HTTPMethod = 'GET'; 3031 _Path = '{projectId}/templates/{templateName}'; 3032 _Methodid = 'manager.templates.get'; 3033 3034Var 3035 _P : String; 3036 3037begin 3038 _P:=SubstitutePath(_Path,['projectId',projectId,'templateName',templateName]); 3039 Result:=ServiceCall(_HTTPMethod,_P,'',Nil,TTemplate) as TTemplate; 3040end; 3041 3042Function TTemplatesResource.Insert(projectId: string; aTemplate : TTemplate) : TTemplate; 3043 3044Const 3045 _HTTPMethod = 'POST'; 3046 _Path = '{projectId}/templates'; 3047 _Methodid = 'manager.templates.insert'; 3048 3049Var 3050 _P : String; 3051 3052begin 3053 _P:=SubstitutePath(_Path,['projectId',projectId]); 3054 Result:=ServiceCall(_HTTPMethod,_P,'',aTemplate,TTemplate) as TTemplate; 3055end; 3056 3057Function TTemplatesResource.List(projectId: string; AQuery : string = '') : TTemplatesListResponse; 3058 3059Const 3060 _HTTPMethod = 'GET'; 3061 _Path = '{projectId}/templates'; 3062 _Methodid = 'manager.templates.list'; 3063 3064Var 3065 _P : String; 3066 3067begin 3068 _P:=SubstitutePath(_Path,['projectId',projectId]); 3069 Result:=ServiceCall(_HTTPMethod,_P,AQuery,Nil,TTemplatesListResponse) as TTemplatesListResponse; 3070end; 3071 3072 3073Function TTemplatesResource.List(projectId: string; AQuery : TTemplateslistOptions) : TTemplatesListResponse; 3074 3075Var 3076 _Q : String; 3077 3078begin 3079 _Q:=''; 3080 AddToQuery(_Q,'maxResults',AQuery.maxResults); 3081 AddToQuery(_Q,'pageToken',AQuery.pageToken); 3082 Result:=List(projectId,_Q); 3083end; 3084 3085 3086 3087{ -------------------------------------------------------------------- 3088 TManagerAPI 3089 --------------------------------------------------------------------} 3090 3091Class Function TManagerAPI.APIName : String; 3092 3093begin 3094 Result:='manager'; 3095end; 3096 3097Class Function TManagerAPI.APIVersion : String; 3098 3099begin 3100 Result:='v1beta2'; 3101end; 3102 3103Class Function TManagerAPI.APIRevision : String; 3104 3105begin 3106 Result:='20140915'; 3107end; 3108 3109Class Function TManagerAPI.APIID : String; 3110 3111begin 3112 Result:='manager:v1beta2'; 3113end; 3114 3115Class Function TManagerAPI.APITitle : String; 3116 3117begin 3118 Result:='Deployment Manager API'; 3119end; 3120 3121Class Function TManagerAPI.APIDescription : String; 3122 3123begin 3124 Result:='The Deployment Manager API allows users to declaratively configure, deploy and run complex solutions on the Google Cloud Platform.'; 3125end; 3126 3127Class Function TManagerAPI.APIOwnerDomain : String; 3128 3129begin 3130 Result:='google.com'; 3131end; 3132 3133Class Function TManagerAPI.APIOwnerName : String; 3134 3135begin 3136 Result:='Google'; 3137end; 3138 3139Class Function TManagerAPI.APIIcon16 : String; 3140 3141begin 3142 Result:='http://www.google.com/images/icons/product/search-16.gif'; 3143end; 3144 3145Class Function TManagerAPI.APIIcon32 : String; 3146 3147begin 3148 Result:='http://www.google.com/images/icons/product/search-32.gif'; 3149end; 3150 3151Class Function TManagerAPI.APIdocumentationLink : String; 3152 3153begin 3154 Result:='https://developers.google.com/deployment-manager/'; 3155end; 3156 3157Class Function TManagerAPI.APIrootUrl : string; 3158 3159begin 3160 Result:='https://www.googleapis.com:443/'; 3161end; 3162 3163Class Function TManagerAPI.APIbasePath : string; 3164 3165begin 3166 Result:='/manager/v1beta2/projects/'; 3167end; 3168 3169Class Function TManagerAPI.APIbaseURL : String; 3170 3171begin 3172 Result:='https://www.googleapis.com:443/manager/v1beta2/projects/'; 3173end; 3174 3175Class Function TManagerAPI.APIProtocol : string; 3176 3177begin 3178 Result:='rest'; 3179end; 3180 3181Class Function TManagerAPI.APIservicePath : string; 3182 3183begin 3184 Result:='manager/v1beta2/projects/'; 3185end; 3186 3187Class Function TManagerAPI.APIbatchPath : String; 3188 3189begin 3190 Result:='batch'; 3191end; 3192 3193Class Function TManagerAPI.APIAuthScopes : TScopeInfoArray; 3194 3195begin 3196 SetLength(Result,6); 3197 Result[0].Name:='https://www.googleapis.com/auth/appengine.admin'; 3198 Result[0].Description:='View and manage your applications deployed on Google App Engine'; 3199 Result[1].Name:='https://www.googleapis.com/auth/cloud-platform'; 3200 Result[1].Description:='View and manage your data across Google Cloud Platform services'; 3201 Result[2].Name:='https://www.googleapis.com/auth/compute'; 3202 Result[2].Description:='View and manage your Google Compute Engine resources'; 3203 Result[3].Name:='https://www.googleapis.com/auth/devstorage.read_write'; 3204 Result[3].Description:='Manage your data in Google Cloud Storage'; 3205 Result[4].Name:='https://www.googleapis.com/auth/ndev.cloudman'; 3206 Result[4].Description:='View and manage your Google Cloud Platform management resources and deployment status information'; 3207 Result[5].Name:='https://www.googleapis.com/auth/ndev.cloudman.readonly'; 3208 Result[5].Description:='View your Google Cloud Platform management resources and deployment status information'; 3209 3210end; 3211 3212Class Function TManagerAPI.APINeedsAuth : Boolean; 3213 3214begin 3215 Result:=True; 3216end; 3217 3218Class Procedure TManagerAPI.RegisterAPIResources; 3219 3220begin 3221 TAccessConfig.RegisterObject; 3222 TAction.RegisterObject; 3223 TAllowedRule.RegisterObject; 3224 TAutoscalingModule.RegisterObject; 3225 TAutoscalingModuleStatus.RegisterObject; 3226 TDeployState.RegisterObject; 3227 TDeploymentTypemodules.RegisterObject; 3228 TDeployment.RegisterObject; 3229 TDeploymentsListResponse.RegisterObject; 3230 TDiskAttachment.RegisterObject; 3231 TEnvVariable.RegisterObject; 3232 TExistingDisk.RegisterObject; 3233 TFirewallModule.RegisterObject; 3234 TFirewallModuleStatus.RegisterObject; 3235 THealthCheckModule.RegisterObject; 3236 THealthCheckModuleStatus.RegisterObject; 3237 TLbModule.RegisterObject; 3238 TLbModuleStatus.RegisterObject; 3239 TMetadata.RegisterObject; 3240 TMetadataItem.RegisterObject; 3241 TModule.RegisterObject; 3242 TModuleStatus.RegisterObject; 3243 TNetworkInterface.RegisterObject; 3244 TNetworkModule.RegisterObject; 3245 TNetworkModuleStatus.RegisterObject; 3246 TNewDisk.RegisterObject; 3247 TNewDiskInitializeParams.RegisterObject; 3248 TParamOverride.RegisterObject; 3249 TReplicaPoolModuleTypeenvVariables.RegisterObject; 3250 TReplicaPoolModule.RegisterObject; 3251 TReplicaPoolModuleStatus.RegisterObject; 3252 TReplicaPoolParams.RegisterObject; 3253 TReplicaPoolParamsV1Beta1.RegisterObject; 3254 TServiceAccount.RegisterObject; 3255 TTag.RegisterObject; 3256 TTemplateTypeactions.RegisterObject; 3257 TTemplateTypemodules.RegisterObject; 3258 TTemplate.RegisterObject; 3259 TTemplatesListResponse.RegisterObject; 3260end; 3261 3262 3263Function TManagerAPI.GetDeploymentsInstance : TDeploymentsResource; 3264 3265begin 3266 if (FDeploymentsInstance=Nil) then 3267 FDeploymentsInstance:=CreateDeploymentsResource; 3268 Result:=FDeploymentsInstance; 3269end; 3270 3271Function TManagerAPI.CreateDeploymentsResource : TDeploymentsResource; 3272 3273begin 3274 Result:=CreateDeploymentsResource(Self); 3275end; 3276 3277 3278Function TManagerAPI.CreateDeploymentsResource(AOwner : TComponent) : TDeploymentsResource; 3279 3280begin 3281 Result:=TDeploymentsResource.Create(AOwner); 3282 Result.API:=Self.API; 3283end; 3284 3285 3286 3287Function TManagerAPI.GetTemplatesInstance : TTemplatesResource; 3288 3289begin 3290 if (FTemplatesInstance=Nil) then 3291 FTemplatesInstance:=CreateTemplatesResource; 3292 Result:=FTemplatesInstance; 3293end; 3294 3295Function TManagerAPI.CreateTemplatesResource : TTemplatesResource; 3296 3297begin 3298 Result:=CreateTemplatesResource(Self); 3299end; 3300 3301 3302Function TManagerAPI.CreateTemplatesResource(AOwner : TComponent) : TTemplatesResource; 3303 3304begin 3305 Result:=TTemplatesResource.Create(AOwner); 3306 Result.API:=Self.API; 3307end; 3308 3309 3310 3311initialization 3312 TManagerAPI.RegisterAPI; 3313end. 3314