| OLD | NEW |
| (Empty) |
| 1 library googleapis_beta.replicapool.v1beta1; | |
| 2 | |
| 3 import "dart:core" as core; | |
| 4 import "dart:collection" as collection; | |
| 5 import "dart:async" as async; | |
| 6 import "dart:convert" as convert; | |
| 7 | |
| 8 import "package:crypto/crypto.dart" as crypto; | |
| 9 import 'package:http/http.dart' as http; | |
| 10 import '../src/common_internal.dart' as common_internal; | |
| 11 import '../common/common.dart' as common; | |
| 12 | |
| 13 export '../common/common.dart' show ApiRequestError; | |
| 14 export '../common/common.dart' show DetailedApiRequestError; | |
| 15 | |
| 16 /** | |
| 17 * The Replica Pool API allows users to declaratively provision and manage | |
| 18 * groups of Google Compute Engine instances based on a common template. | |
| 19 */ | |
| 20 class ReplicapoolApi { | |
| 21 /** View and manage your data across Google Cloud Platform services */ | |
| 22 static const CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platf
orm"; | |
| 23 | |
| 24 /** | |
| 25 * View and manage your Google Cloud Platform management resources and | |
| 26 * deployment status information | |
| 27 */ | |
| 28 static const NdevCloudmanScope = "https://www.googleapis.com/auth/ndev.cloudma
n"; | |
| 29 | |
| 30 /** | |
| 31 * View your Google Cloud Platform management resources and deployment status | |
| 32 * information | |
| 33 */ | |
| 34 static const NdevCloudmanReadonlyScope = "https://www.googleapis.com/auth/ndev
.cloudman.readonly"; | |
| 35 | |
| 36 /** View and manage replica pools */ | |
| 37 static const ReplicapoolScope = "https://www.googleapis.com/auth/replicapool"; | |
| 38 | |
| 39 /** View replica pools */ | |
| 40 static const ReplicapoolReadonlyScope = "https://www.googleapis.com/auth/repli
capool.readonly"; | |
| 41 | |
| 42 | |
| 43 final common_internal.ApiRequester _requester; | |
| 44 | |
| 45 PoolsResourceApi get pools => new PoolsResourceApi(_requester); | |
| 46 ReplicasResourceApi get replicas => new ReplicasResourceApi(_requester); | |
| 47 | |
| 48 ReplicapoolApi(http.Client client) : | |
| 49 _requester = new common_internal.ApiRequester(client, "https://www.googlea
pis.com/", "replicapool/v1beta1/projects/"); | |
| 50 } | |
| 51 | |
| 52 | |
| 53 /** Not documented yet. */ | |
| 54 class PoolsResourceApi { | |
| 55 final common_internal.ApiRequester _requester; | |
| 56 | |
| 57 PoolsResourceApi(common_internal.ApiRequester client) : | |
| 58 _requester = client; | |
| 59 | |
| 60 /** | |
| 61 * Deletes a replica pool. | |
| 62 * | |
| 63 * [request] - The metadata request object. | |
| 64 * | |
| 65 * Request parameters: | |
| 66 * | |
| 67 * [projectName] - The project ID for this replica pool. | |
| 68 * | |
| 69 * [zone] - The zone for this replica pool. | |
| 70 * | |
| 71 * [poolName] - The name of the replica pool for this request. | |
| 72 * | |
| 73 * Completes with a [common.ApiRequestError] if the API endpoint returned an | |
| 74 * error. | |
| 75 * | |
| 76 * If the used [http.Client] completes with an error when making a REST call, | |
| 77 * this method will complete with the same error. | |
| 78 */ | |
| 79 async.Future delete(PoolsDeleteRequest request, core.String projectName, core.
String zone, core.String poolName) { | |
| 80 var _url = null; | |
| 81 var _queryParams = new core.Map(); | |
| 82 var _uploadMedia = null; | |
| 83 var _uploadOptions = null; | |
| 84 var _downloadOptions = common.DownloadOptions.Metadata; | |
| 85 var _body = null; | |
| 86 | |
| 87 if (request != null) { | |
| 88 _body = convert.JSON.encode((request).toJson()); | |
| 89 } | |
| 90 if (projectName == null) { | |
| 91 throw new core.ArgumentError("Parameter projectName is required."); | |
| 92 } | |
| 93 if (zone == null) { | |
| 94 throw new core.ArgumentError("Parameter zone is required."); | |
| 95 } | |
| 96 if (poolName == null) { | |
| 97 throw new core.ArgumentError("Parameter poolName is required."); | |
| 98 } | |
| 99 | |
| 100 _downloadOptions = null; | |
| 101 | |
| 102 _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + c
ommon_internal.Escaper.ecapeVariable('$zone') + '/pools/' + common_internal.Esca
per.ecapeVariable('$poolName'); | |
| 103 | |
| 104 var _response = _requester.request(_url, | |
| 105 "POST", | |
| 106 body: _body, | |
| 107 queryParams: _queryParams, | |
| 108 uploadOptions: _uploadOptions, | |
| 109 uploadMedia: _uploadMedia, | |
| 110 downloadOptions: _downloadOptions); | |
| 111 return _response.then((data) => null); | |
| 112 } | |
| 113 | |
| 114 /** | |
| 115 * Gets information about a single replica pool. | |
| 116 * | |
| 117 * Request parameters: | |
| 118 * | |
| 119 * [projectName] - The project ID for this replica pool. | |
| 120 * | |
| 121 * [zone] - The zone for this replica pool. | |
| 122 * | |
| 123 * [poolName] - The name of the replica pool for this request. | |
| 124 * | |
| 125 * Completes with a [Pool]. | |
| 126 * | |
| 127 * Completes with a [common.ApiRequestError] if the API endpoint returned an | |
| 128 * error. | |
| 129 * | |
| 130 * If the used [http.Client] completes with an error when making a REST call, | |
| 131 * this method will complete with the same error. | |
| 132 */ | |
| 133 async.Future<Pool> get(core.String projectName, core.String zone, core.String
poolName) { | |
| 134 var _url = null; | |
| 135 var _queryParams = new core.Map(); | |
| 136 var _uploadMedia = null; | |
| 137 var _uploadOptions = null; | |
| 138 var _downloadOptions = common.DownloadOptions.Metadata; | |
| 139 var _body = null; | |
| 140 | |
| 141 if (projectName == null) { | |
| 142 throw new core.ArgumentError("Parameter projectName is required."); | |
| 143 } | |
| 144 if (zone == null) { | |
| 145 throw new core.ArgumentError("Parameter zone is required."); | |
| 146 } | |
| 147 if (poolName == null) { | |
| 148 throw new core.ArgumentError("Parameter poolName is required."); | |
| 149 } | |
| 150 | |
| 151 | |
| 152 _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + c
ommon_internal.Escaper.ecapeVariable('$zone') + '/pools/' + common_internal.Esca
per.ecapeVariable('$poolName'); | |
| 153 | |
| 154 var _response = _requester.request(_url, | |
| 155 "GET", | |
| 156 body: _body, | |
| 157 queryParams: _queryParams, | |
| 158 uploadOptions: _uploadOptions, | |
| 159 uploadMedia: _uploadMedia, | |
| 160 downloadOptions: _downloadOptions); | |
| 161 return _response.then((data) => new Pool.fromJson(data)); | |
| 162 } | |
| 163 | |
| 164 /** | |
| 165 * Inserts a new replica pool. | |
| 166 * | |
| 167 * [request] - The metadata request object. | |
| 168 * | |
| 169 * Request parameters: | |
| 170 * | |
| 171 * [projectName] - The project ID for this replica pool. | |
| 172 * | |
| 173 * [zone] - The zone for this replica pool. | |
| 174 * | |
| 175 * Completes with a [Pool]. | |
| 176 * | |
| 177 * Completes with a [common.ApiRequestError] if the API endpoint returned an | |
| 178 * error. | |
| 179 * | |
| 180 * If the used [http.Client] completes with an error when making a REST call, | |
| 181 * this method will complete with the same error. | |
| 182 */ | |
| 183 async.Future<Pool> insert(Pool request, core.String projectName, core.String z
one) { | |
| 184 var _url = null; | |
| 185 var _queryParams = new core.Map(); | |
| 186 var _uploadMedia = null; | |
| 187 var _uploadOptions = null; | |
| 188 var _downloadOptions = common.DownloadOptions.Metadata; | |
| 189 var _body = null; | |
| 190 | |
| 191 if (request != null) { | |
| 192 _body = convert.JSON.encode((request).toJson()); | |
| 193 } | |
| 194 if (projectName == null) { | |
| 195 throw new core.ArgumentError("Parameter projectName is required."); | |
| 196 } | |
| 197 if (zone == null) { | |
| 198 throw new core.ArgumentError("Parameter zone is required."); | |
| 199 } | |
| 200 | |
| 201 | |
| 202 _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + c
ommon_internal.Escaper.ecapeVariable('$zone') + '/pools'; | |
| 203 | |
| 204 var _response = _requester.request(_url, | |
| 205 "POST", | |
| 206 body: _body, | |
| 207 queryParams: _queryParams, | |
| 208 uploadOptions: _uploadOptions, | |
| 209 uploadMedia: _uploadMedia, | |
| 210 downloadOptions: _downloadOptions); | |
| 211 return _response.then((data) => new Pool.fromJson(data)); | |
| 212 } | |
| 213 | |
| 214 /** | |
| 215 * List all replica pools. | |
| 216 * | |
| 217 * Request parameters: | |
| 218 * | |
| 219 * [projectName] - The project ID for this request. | |
| 220 * | |
| 221 * [zone] - The zone for this replica pool. | |
| 222 * | |
| 223 * [maxResults] - Maximum count of results to be returned. Acceptable values | |
| 224 * are 0 to 100, inclusive. (Default: 50) | |
| 225 * Value must be between "0" and "1000". | |
| 226 * | |
| 227 * [pageToken] - Set this to the nextPageToken value returned by a previous | |
| 228 * list request to obtain the next page of results from the previous list | |
| 229 * request. | |
| 230 * | |
| 231 * Completes with a [PoolsListResponse]. | |
| 232 * | |
| 233 * Completes with a [common.ApiRequestError] if the API endpoint returned an | |
| 234 * error. | |
| 235 * | |
| 236 * If the used [http.Client] completes with an error when making a REST call, | |
| 237 * this method will complete with the same error. | |
| 238 */ | |
| 239 async.Future<PoolsListResponse> list(core.String projectName, core.String zone
, {core.int maxResults, core.String pageToken}) { | |
| 240 var _url = null; | |
| 241 var _queryParams = new core.Map(); | |
| 242 var _uploadMedia = null; | |
| 243 var _uploadOptions = null; | |
| 244 var _downloadOptions = common.DownloadOptions.Metadata; | |
| 245 var _body = null; | |
| 246 | |
| 247 if (projectName == null) { | |
| 248 throw new core.ArgumentError("Parameter projectName is required."); | |
| 249 } | |
| 250 if (zone == null) { | |
| 251 throw new core.ArgumentError("Parameter zone is required."); | |
| 252 } | |
| 253 if (maxResults != null) { | |
| 254 _queryParams["maxResults"] = ["${maxResults}"]; | |
| 255 } | |
| 256 if (pageToken != null) { | |
| 257 _queryParams["pageToken"] = [pageToken]; | |
| 258 } | |
| 259 | |
| 260 | |
| 261 _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + c
ommon_internal.Escaper.ecapeVariable('$zone') + '/pools'; | |
| 262 | |
| 263 var _response = _requester.request(_url, | |
| 264 "GET", | |
| 265 body: _body, | |
| 266 queryParams: _queryParams, | |
| 267 uploadOptions: _uploadOptions, | |
| 268 uploadMedia: _uploadMedia, | |
| 269 downloadOptions: _downloadOptions); | |
| 270 return _response.then((data) => new PoolsListResponse.fromJson(data)); | |
| 271 } | |
| 272 | |
| 273 /** | |
| 274 * Resize a pool. This is an asynchronous operation, and multiple overlapping | |
| 275 * resize requests can be made. Replica Pools will use the information from | |
| 276 * the last resize request. | |
| 277 * | |
| 278 * Request parameters: | |
| 279 * | |
| 280 * [projectName] - The project ID for this replica pool. | |
| 281 * | |
| 282 * [zone] - The zone for this replica pool. | |
| 283 * | |
| 284 * [poolName] - The name of the replica pool for this request. | |
| 285 * | |
| 286 * [numReplicas] - The desired number of replicas to resize to. If this number | |
| 287 * is larger than the existing number of replicas, new replicas will be added. | |
| 288 * If the number is smaller, then existing replicas will be deleted. | |
| 289 * | |
| 290 * Completes with a [Pool]. | |
| 291 * | |
| 292 * Completes with a [common.ApiRequestError] if the API endpoint returned an | |
| 293 * error. | |
| 294 * | |
| 295 * If the used [http.Client] completes with an error when making a REST call, | |
| 296 * this method will complete with the same error. | |
| 297 */ | |
| 298 async.Future<Pool> resize(core.String projectName, core.String zone, core.Stri
ng poolName, {core.int numReplicas}) { | |
| 299 var _url = null; | |
| 300 var _queryParams = new core.Map(); | |
| 301 var _uploadMedia = null; | |
| 302 var _uploadOptions = null; | |
| 303 var _downloadOptions = common.DownloadOptions.Metadata; | |
| 304 var _body = null; | |
| 305 | |
| 306 if (projectName == null) { | |
| 307 throw new core.ArgumentError("Parameter projectName is required."); | |
| 308 } | |
| 309 if (zone == null) { | |
| 310 throw new core.ArgumentError("Parameter zone is required."); | |
| 311 } | |
| 312 if (poolName == null) { | |
| 313 throw new core.ArgumentError("Parameter poolName is required."); | |
| 314 } | |
| 315 if (numReplicas != null) { | |
| 316 _queryParams["numReplicas"] = ["${numReplicas}"]; | |
| 317 } | |
| 318 | |
| 319 | |
| 320 _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + c
ommon_internal.Escaper.ecapeVariable('$zone') + '/pools/' + common_internal.Esca
per.ecapeVariable('$poolName') + '/resize'; | |
| 321 | |
| 322 var _response = _requester.request(_url, | |
| 323 "POST", | |
| 324 body: _body, | |
| 325 queryParams: _queryParams, | |
| 326 uploadOptions: _uploadOptions, | |
| 327 uploadMedia: _uploadMedia, | |
| 328 downloadOptions: _downloadOptions); | |
| 329 return _response.then((data) => new Pool.fromJson(data)); | |
| 330 } | |
| 331 | |
| 332 /** | |
| 333 * Update the template used by the pool. | |
| 334 * | |
| 335 * [request] - The metadata request object. | |
| 336 * | |
| 337 * Request parameters: | |
| 338 * | |
| 339 * [projectName] - The project ID for this replica pool. | |
| 340 * | |
| 341 * [zone] - The zone for this replica pool. | |
| 342 * | |
| 343 * [poolName] - The name of the replica pool for this request. | |
| 344 * | |
| 345 * Completes with a [common.ApiRequestError] if the API endpoint returned an | |
| 346 * error. | |
| 347 * | |
| 348 * If the used [http.Client] completes with an error when making a REST call, | |
| 349 * this method will complete with the same error. | |
| 350 */ | |
| 351 async.Future updatetemplate(Template request, core.String projectName, core.St
ring zone, core.String poolName) { | |
| 352 var _url = null; | |
| 353 var _queryParams = new core.Map(); | |
| 354 var _uploadMedia = null; | |
| 355 var _uploadOptions = null; | |
| 356 var _downloadOptions = common.DownloadOptions.Metadata; | |
| 357 var _body = null; | |
| 358 | |
| 359 if (request != null) { | |
| 360 _body = convert.JSON.encode((request).toJson()); | |
| 361 } | |
| 362 if (projectName == null) { | |
| 363 throw new core.ArgumentError("Parameter projectName is required."); | |
| 364 } | |
| 365 if (zone == null) { | |
| 366 throw new core.ArgumentError("Parameter zone is required."); | |
| 367 } | |
| 368 if (poolName == null) { | |
| 369 throw new core.ArgumentError("Parameter poolName is required."); | |
| 370 } | |
| 371 | |
| 372 _downloadOptions = null; | |
| 373 | |
| 374 _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + c
ommon_internal.Escaper.ecapeVariable('$zone') + '/pools/' + common_internal.Esca
per.ecapeVariable('$poolName') + '/updateTemplate'; | |
| 375 | |
| 376 var _response = _requester.request(_url, | |
| 377 "POST", | |
| 378 body: _body, | |
| 379 queryParams: _queryParams, | |
| 380 uploadOptions: _uploadOptions, | |
| 381 uploadMedia: _uploadMedia, | |
| 382 downloadOptions: _downloadOptions); | |
| 383 return _response.then((data) => null); | |
| 384 } | |
| 385 | |
| 386 } | |
| 387 | |
| 388 | |
| 389 /** Not documented yet. */ | |
| 390 class ReplicasResourceApi { | |
| 391 final common_internal.ApiRequester _requester; | |
| 392 | |
| 393 ReplicasResourceApi(common_internal.ApiRequester client) : | |
| 394 _requester = client; | |
| 395 | |
| 396 /** | |
| 397 * Deletes a replica from the pool. | |
| 398 * | |
| 399 * [request] - The metadata request object. | |
| 400 * | |
| 401 * Request parameters: | |
| 402 * | |
| 403 * [projectName] - The project ID for this request. | |
| 404 * | |
| 405 * [zone] - The zone where the replica lives. | |
| 406 * | |
| 407 * [poolName] - The replica pool name for this request. | |
| 408 * | |
| 409 * [replicaName] - The name of the replica for this request. | |
| 410 * | |
| 411 * Completes with a [Replica]. | |
| 412 * | |
| 413 * Completes with a [common.ApiRequestError] if the API endpoint returned an | |
| 414 * error. | |
| 415 * | |
| 416 * If the used [http.Client] completes with an error when making a REST call, | |
| 417 * this method will complete with the same error. | |
| 418 */ | |
| 419 async.Future<Replica> delete(ReplicasDeleteRequest request, core.String projec
tName, core.String zone, core.String poolName, core.String replicaName) { | |
| 420 var _url = null; | |
| 421 var _queryParams = new core.Map(); | |
| 422 var _uploadMedia = null; | |
| 423 var _uploadOptions = null; | |
| 424 var _downloadOptions = common.DownloadOptions.Metadata; | |
| 425 var _body = null; | |
| 426 | |
| 427 if (request != null) { | |
| 428 _body = convert.JSON.encode((request).toJson()); | |
| 429 } | |
| 430 if (projectName == null) { | |
| 431 throw new core.ArgumentError("Parameter projectName is required."); | |
| 432 } | |
| 433 if (zone == null) { | |
| 434 throw new core.ArgumentError("Parameter zone is required."); | |
| 435 } | |
| 436 if (poolName == null) { | |
| 437 throw new core.ArgumentError("Parameter poolName is required."); | |
| 438 } | |
| 439 if (replicaName == null) { | |
| 440 throw new core.ArgumentError("Parameter replicaName is required."); | |
| 441 } | |
| 442 | |
| 443 | |
| 444 _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + c
ommon_internal.Escaper.ecapeVariable('$zone') + '/pools/' + common_internal.Esca
per.ecapeVariable('$poolName') + '/replicas/' + common_internal.Escaper.ecapeVar
iable('$replicaName'); | |
| 445 | |
| 446 var _response = _requester.request(_url, | |
| 447 "POST", | |
| 448 body: _body, | |
| 449 queryParams: _queryParams, | |
| 450 uploadOptions: _uploadOptions, | |
| 451 uploadMedia: _uploadMedia, | |
| 452 downloadOptions: _downloadOptions); | |
| 453 return _response.then((data) => new Replica.fromJson(data)); | |
| 454 } | |
| 455 | |
| 456 /** | |
| 457 * Gets information about a specific replica. | |
| 458 * | |
| 459 * Request parameters: | |
| 460 * | |
| 461 * [projectName] - The project ID for this request. | |
| 462 * | |
| 463 * [zone] - The zone where the replica lives. | |
| 464 * | |
| 465 * [poolName] - The replica pool name for this request. | |
| 466 * | |
| 467 * [replicaName] - The name of the replica for this request. | |
| 468 * | |
| 469 * Completes with a [Replica]. | |
| 470 * | |
| 471 * Completes with a [common.ApiRequestError] if the API endpoint returned an | |
| 472 * error. | |
| 473 * | |
| 474 * If the used [http.Client] completes with an error when making a REST call, | |
| 475 * this method will complete with the same error. | |
| 476 */ | |
| 477 async.Future<Replica> get(core.String projectName, core.String zone, core.Stri
ng poolName, core.String replicaName) { | |
| 478 var _url = null; | |
| 479 var _queryParams = new core.Map(); | |
| 480 var _uploadMedia = null; | |
| 481 var _uploadOptions = null; | |
| 482 var _downloadOptions = common.DownloadOptions.Metadata; | |
| 483 var _body = null; | |
| 484 | |
| 485 if (projectName == null) { | |
| 486 throw new core.ArgumentError("Parameter projectName is required."); | |
| 487 } | |
| 488 if (zone == null) { | |
| 489 throw new core.ArgumentError("Parameter zone is required."); | |
| 490 } | |
| 491 if (poolName == null) { | |
| 492 throw new core.ArgumentError("Parameter poolName is required."); | |
| 493 } | |
| 494 if (replicaName == null) { | |
| 495 throw new core.ArgumentError("Parameter replicaName is required."); | |
| 496 } | |
| 497 | |
| 498 | |
| 499 _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + c
ommon_internal.Escaper.ecapeVariable('$zone') + '/pools/' + common_internal.Esca
per.ecapeVariable('$poolName') + '/replicas/' + common_internal.Escaper.ecapeVar
iable('$replicaName'); | |
| 500 | |
| 501 var _response = _requester.request(_url, | |
| 502 "GET", | |
| 503 body: _body, | |
| 504 queryParams: _queryParams, | |
| 505 uploadOptions: _uploadOptions, | |
| 506 uploadMedia: _uploadMedia, | |
| 507 downloadOptions: _downloadOptions); | |
| 508 return _response.then((data) => new Replica.fromJson(data)); | |
| 509 } | |
| 510 | |
| 511 /** | |
| 512 * Lists all replicas in a pool. | |
| 513 * | |
| 514 * Request parameters: | |
| 515 * | |
| 516 * [projectName] - The project ID for this request. | |
| 517 * | |
| 518 * [zone] - The zone where the replica pool lives. | |
| 519 * | |
| 520 * [poolName] - The replica pool name for this request. | |
| 521 * | |
| 522 * [maxResults] - Maximum count of results to be returned. Acceptable values | |
| 523 * are 0 to 100, inclusive. (Default: 50) | |
| 524 * Value must be between "0" and "1000". | |
| 525 * | |
| 526 * [pageToken] - Set this to the nextPageToken value returned by a previous | |
| 527 * list request to obtain the next page of results from the previous list | |
| 528 * request. | |
| 529 * | |
| 530 * Completes with a [ReplicasListResponse]. | |
| 531 * | |
| 532 * Completes with a [common.ApiRequestError] if the API endpoint returned an | |
| 533 * error. | |
| 534 * | |
| 535 * If the used [http.Client] completes with an error when making a REST call, | |
| 536 * this method will complete with the same error. | |
| 537 */ | |
| 538 async.Future<ReplicasListResponse> list(core.String projectName, core.String z
one, core.String poolName, {core.int maxResults, core.String pageToken}) { | |
| 539 var _url = null; | |
| 540 var _queryParams = new core.Map(); | |
| 541 var _uploadMedia = null; | |
| 542 var _uploadOptions = null; | |
| 543 var _downloadOptions = common.DownloadOptions.Metadata; | |
| 544 var _body = null; | |
| 545 | |
| 546 if (projectName == null) { | |
| 547 throw new core.ArgumentError("Parameter projectName is required."); | |
| 548 } | |
| 549 if (zone == null) { | |
| 550 throw new core.ArgumentError("Parameter zone is required."); | |
| 551 } | |
| 552 if (poolName == null) { | |
| 553 throw new core.ArgumentError("Parameter poolName is required."); | |
| 554 } | |
| 555 if (maxResults != null) { | |
| 556 _queryParams["maxResults"] = ["${maxResults}"]; | |
| 557 } | |
| 558 if (pageToken != null) { | |
| 559 _queryParams["pageToken"] = [pageToken]; | |
| 560 } | |
| 561 | |
| 562 | |
| 563 _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + c
ommon_internal.Escaper.ecapeVariable('$zone') + '/pools/' + common_internal.Esca
per.ecapeVariable('$poolName') + '/replicas'; | |
| 564 | |
| 565 var _response = _requester.request(_url, | |
| 566 "GET", | |
| 567 body: _body, | |
| 568 queryParams: _queryParams, | |
| 569 uploadOptions: _uploadOptions, | |
| 570 uploadMedia: _uploadMedia, | |
| 571 downloadOptions: _downloadOptions); | |
| 572 return _response.then((data) => new ReplicasListResponse.fromJson(data)); | |
| 573 } | |
| 574 | |
| 575 /** | |
| 576 * Restarts a replica in a pool. | |
| 577 * | |
| 578 * Request parameters: | |
| 579 * | |
| 580 * [projectName] - The project ID for this request. | |
| 581 * | |
| 582 * [zone] - The zone where the replica lives. | |
| 583 * | |
| 584 * [poolName] - The replica pool name for this request. | |
| 585 * | |
| 586 * [replicaName] - The name of the replica for this request. | |
| 587 * | |
| 588 * Completes with a [Replica]. | |
| 589 * | |
| 590 * Completes with a [common.ApiRequestError] if the API endpoint returned an | |
| 591 * error. | |
| 592 * | |
| 593 * If the used [http.Client] completes with an error when making a REST call, | |
| 594 * this method will complete with the same error. | |
| 595 */ | |
| 596 async.Future<Replica> restart(core.String projectName, core.String zone, core.
String poolName, core.String replicaName) { | |
| 597 var _url = null; | |
| 598 var _queryParams = new core.Map(); | |
| 599 var _uploadMedia = null; | |
| 600 var _uploadOptions = null; | |
| 601 var _downloadOptions = common.DownloadOptions.Metadata; | |
| 602 var _body = null; | |
| 603 | |
| 604 if (projectName == null) { | |
| 605 throw new core.ArgumentError("Parameter projectName is required."); | |
| 606 } | |
| 607 if (zone == null) { | |
| 608 throw new core.ArgumentError("Parameter zone is required."); | |
| 609 } | |
| 610 if (poolName == null) { | |
| 611 throw new core.ArgumentError("Parameter poolName is required."); | |
| 612 } | |
| 613 if (replicaName == null) { | |
| 614 throw new core.ArgumentError("Parameter replicaName is required."); | |
| 615 } | |
| 616 | |
| 617 | |
| 618 _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + c
ommon_internal.Escaper.ecapeVariable('$zone') + '/pools/' + common_internal.Esca
per.ecapeVariable('$poolName') + '/replicas/' + common_internal.Escaper.ecapeVar
iable('$replicaName') + '/restart'; | |
| 619 | |
| 620 var _response = _requester.request(_url, | |
| 621 "POST", | |
| 622 body: _body, | |
| 623 queryParams: _queryParams, | |
| 624 uploadOptions: _uploadOptions, | |
| 625 uploadMedia: _uploadMedia, | |
| 626 downloadOptions: _downloadOptions); | |
| 627 return _response.then((data) => new Replica.fromJson(data)); | |
| 628 } | |
| 629 | |
| 630 } | |
| 631 | |
| 632 | |
| 633 | |
| 634 /** | |
| 635 * A Compute Engine network accessConfig. Identical to the accessConfig on | |
| 636 * corresponding Compute Engine resource. | |
| 637 */ | |
| 638 class AccessConfig { | |
| 639 /** Name of this access configuration. */ | |
| 640 core.String name; | |
| 641 | |
| 642 /** An external IP address associated with this instance. */ | |
| 643 core.String natIp; | |
| 644 | |
| 645 /** | |
| 646 * Type of this access configuration file. Currently only ONE_TO_ONE_NAT is | |
| 647 * supported. | |
| 648 */ | |
| 649 core.String type; | |
| 650 | |
| 651 | |
| 652 AccessConfig(); | |
| 653 | |
| 654 AccessConfig.fromJson(core.Map _json) { | |
| 655 if (_json.containsKey("name")) { | |
| 656 name = _json["name"]; | |
| 657 } | |
| 658 if (_json.containsKey("natIp")) { | |
| 659 natIp = _json["natIp"]; | |
| 660 } | |
| 661 if (_json.containsKey("type")) { | |
| 662 type = _json["type"]; | |
| 663 } | |
| 664 } | |
| 665 | |
| 666 core.Map toJson() { | |
| 667 var _json = new core.Map(); | |
| 668 if (name != null) { | |
| 669 _json["name"] = name; | |
| 670 } | |
| 671 if (natIp != null) { | |
| 672 _json["natIp"] = natIp; | |
| 673 } | |
| 674 if (type != null) { | |
| 675 _json["type"] = type; | |
| 676 } | |
| 677 return _json; | |
| 678 } | |
| 679 } | |
| 680 | |
| 681 | |
| 682 /** An action that gets executed during initialization of the replicas. */ | |
| 683 class Action { | |
| 684 /** | |
| 685 * A list of commands to run, one per line. If any command fails, the whole | |
| 686 * action is considered a failure and no further actions are run. This also | |
| 687 * marks the virtual machine or replica as a failure. | |
| 688 */ | |
| 689 core.List<core.String> commands; | |
| 690 | |
| 691 /** | |
| 692 * A list of environment variables to use for the commands in this action. | |
| 693 */ | |
| 694 core.List<EnvVariable> envVariables; | |
| 695 | |
| 696 /** | |
| 697 * If an action's commands on a particular replica do not finish in the | |
| 698 * specified timeoutMilliSeconds, the replica is considered to be in a FAILING | |
| 699 * state. No efforts are made to stop any processes that were spawned or | |
| 700 * created as the result of running the action's commands. The default is the | |
| 701 * max allowed value, 1 hour (i.e. 3600000 milliseconds). | |
| 702 */ | |
| 703 core.int timeoutMilliSeconds; | |
| 704 | |
| 705 | |
| 706 Action(); | |
| 707 | |
| 708 Action.fromJson(core.Map _json) { | |
| 709 if (_json.containsKey("commands")) { | |
| 710 commands = _json["commands"]; | |
| 711 } | |
| 712 if (_json.containsKey("envVariables")) { | |
| 713 envVariables = _json["envVariables"].map((value) => new EnvVariable.fromJs
on(value)).toList(); | |
| 714 } | |
| 715 if (_json.containsKey("timeoutMilliSeconds")) { | |
| 716 timeoutMilliSeconds = _json["timeoutMilliSeconds"]; | |
| 717 } | |
| 718 } | |
| 719 | |
| 720 core.Map toJson() { | |
| 721 var _json = new core.Map(); | |
| 722 if (commands != null) { | |
| 723 _json["commands"] = commands; | |
| 724 } | |
| 725 if (envVariables != null) { | |
| 726 _json["envVariables"] = envVariables.map((value) => (value).toJson()).toLi
st(); | |
| 727 } | |
| 728 if (timeoutMilliSeconds != null) { | |
| 729 _json["timeoutMilliSeconds"] = timeoutMilliSeconds; | |
| 730 } | |
| 731 return _json; | |
| 732 } | |
| 733 } | |
| 734 | |
| 735 | |
| 736 /** Specifies how to attach a disk to a Replica. */ | |
| 737 class DiskAttachment { | |
| 738 /** The device name of this disk. */ | |
| 739 core.String deviceName; | |
| 740 | |
| 741 /** | |
| 742 * A zero-based index to assign to this disk, where 0 is reserved for the boot | |
| 743 * disk. If not specified, this is assigned by the server. | |
| 744 */ | |
| 745 core.int index; | |
| 746 | |
| 747 | |
| 748 DiskAttachment(); | |
| 749 | |
| 750 DiskAttachment.fromJson(core.Map _json) { | |
| 751 if (_json.containsKey("deviceName")) { | |
| 752 deviceName = _json["deviceName"]; | |
| 753 } | |
| 754 if (_json.containsKey("index")) { | |
| 755 index = _json["index"]; | |
| 756 } | |
| 757 } | |
| 758 | |
| 759 core.Map toJson() { | |
| 760 var _json = new core.Map(); | |
| 761 if (deviceName != null) { | |
| 762 _json["deviceName"] = deviceName; | |
| 763 } | |
| 764 if (index != null) { | |
| 765 _json["index"] = index; | |
| 766 } | |
| 767 return _json; | |
| 768 } | |
| 769 } | |
| 770 | |
| 771 | |
| 772 /** An environment variable to set for an action. */ | |
| 773 class EnvVariable { | |
| 774 /** Deprecated, do not use. */ | |
| 775 core.bool hidden; | |
| 776 | |
| 777 /** The name of the environment variable. */ | |
| 778 core.String name; | |
| 779 | |
| 780 /** The value of the variable. */ | |
| 781 core.String value; | |
| 782 | |
| 783 | |
| 784 EnvVariable(); | |
| 785 | |
| 786 EnvVariable.fromJson(core.Map _json) { | |
| 787 if (_json.containsKey("hidden")) { | |
| 788 hidden = _json["hidden"]; | |
| 789 } | |
| 790 if (_json.containsKey("name")) { | |
| 791 name = _json["name"]; | |
| 792 } | |
| 793 if (_json.containsKey("value")) { | |
| 794 value = _json["value"]; | |
| 795 } | |
| 796 } | |
| 797 | |
| 798 core.Map toJson() { | |
| 799 var _json = new core.Map(); | |
| 800 if (hidden != null) { | |
| 801 _json["hidden"] = hidden; | |
| 802 } | |
| 803 if (name != null) { | |
| 804 _json["name"] = name; | |
| 805 } | |
| 806 if (value != null) { | |
| 807 _json["value"] = value; | |
| 808 } | |
| 809 return _json; | |
| 810 } | |
| 811 } | |
| 812 | |
| 813 | |
| 814 /** | |
| 815 * A pre-existing persistent disk that will be attached to every Replica in the | |
| 816 * Pool in READ_ONLY mode. | |
| 817 */ | |
| 818 class ExistingDisk { | |
| 819 /** How the disk will be attached to the Replica. */ | |
| 820 DiskAttachment attachment; | |
| 821 | |
| 822 /** | |
| 823 * The name of the Persistent Disk resource. The Persistent Disk resource must | |
| 824 * be in the same zone as the Pool. | |
| 825 */ | |
| 826 core.String source; | |
| 827 | |
| 828 | |
| 829 ExistingDisk(); | |
| 830 | |
| 831 ExistingDisk.fromJson(core.Map _json) { | |
| 832 if (_json.containsKey("attachment")) { | |
| 833 attachment = new DiskAttachment.fromJson(_json["attachment"]); | |
| 834 } | |
| 835 if (_json.containsKey("source")) { | |
| 836 source = _json["source"]; | |
| 837 } | |
| 838 } | |
| 839 | |
| 840 core.Map toJson() { | |
| 841 var _json = new core.Map(); | |
| 842 if (attachment != null) { | |
| 843 _json["attachment"] = (attachment).toJson(); | |
| 844 } | |
| 845 if (source != null) { | |
| 846 _json["source"] = source; | |
| 847 } | |
| 848 return _json; | |
| 849 } | |
| 850 } | |
| 851 | |
| 852 | |
| 853 /** Not documented yet. */ | |
| 854 class HealthCheck { | |
| 855 /** | |
| 856 * How often (in seconds) to make HTTP requests for this healthcheck. The | |
| 857 * default value is 5 seconds. | |
| 858 */ | |
| 859 core.int checkIntervalSec; | |
| 860 | |
| 861 /** The description for this health check. */ | |
| 862 core.String description; | |
| 863 | |
| 864 /** | |
| 865 * The number of consecutive health check requests that need to succeed before | |
| 866 * the replica is considered healthy again. The default value is 2. | |
| 867 */ | |
| 868 core.int healthyThreshold; | |
| 869 | |
| 870 /** | |
| 871 * The value of the host header in the HTTP health check request. If left | |
| 872 * empty (default value), the localhost IP 127.0.0.1 will be used. | |
| 873 */ | |
| 874 core.String host; | |
| 875 | |
| 876 /** The name of this health check. */ | |
| 877 core.String name; | |
| 878 | |
| 879 /** | |
| 880 * The localhost request path to send this health check, in the format | |
| 881 * /path/to/use. For example, /healthcheck. | |
| 882 */ | |
| 883 core.String path; | |
| 884 | |
| 885 /** The TCP port for the health check requests. */ | |
| 886 core.int port; | |
| 887 | |
| 888 /** | |
| 889 * How long (in seconds) to wait before a timeout failure for this | |
| 890 * healthcheck. The default value is 5 seconds. | |
| 891 */ | |
| 892 core.int timeoutSec; | |
| 893 | |
| 894 /** | |
| 895 * The number of consecutive health check requests that need to fail in order | |
| 896 * to consider the replica unhealthy. The default value is 2. | |
| 897 */ | |
| 898 core.int unhealthyThreshold; | |
| 899 | |
| 900 | |
| 901 HealthCheck(); | |
| 902 | |
| 903 HealthCheck.fromJson(core.Map _json) { | |
| 904 if (_json.containsKey("checkIntervalSec")) { | |
| 905 checkIntervalSec = _json["checkIntervalSec"]; | |
| 906 } | |
| 907 if (_json.containsKey("description")) { | |
| 908 description = _json["description"]; | |
| 909 } | |
| 910 if (_json.containsKey("healthyThreshold")) { | |
| 911 healthyThreshold = _json["healthyThreshold"]; | |
| 912 } | |
| 913 if (_json.containsKey("host")) { | |
| 914 host = _json["host"]; | |
| 915 } | |
| 916 if (_json.containsKey("name")) { | |
| 917 name = _json["name"]; | |
| 918 } | |
| 919 if (_json.containsKey("path")) { | |
| 920 path = _json["path"]; | |
| 921 } | |
| 922 if (_json.containsKey("port")) { | |
| 923 port = _json["port"]; | |
| 924 } | |
| 925 if (_json.containsKey("timeoutSec")) { | |
| 926 timeoutSec = _json["timeoutSec"]; | |
| 927 } | |
| 928 if (_json.containsKey("unhealthyThreshold")) { | |
| 929 unhealthyThreshold = _json["unhealthyThreshold"]; | |
| 930 } | |
| 931 } | |
| 932 | |
| 933 core.Map toJson() { | |
| 934 var _json = new core.Map(); | |
| 935 if (checkIntervalSec != null) { | |
| 936 _json["checkIntervalSec"] = checkIntervalSec; | |
| 937 } | |
| 938 if (description != null) { | |
| 939 _json["description"] = description; | |
| 940 } | |
| 941 if (healthyThreshold != null) { | |
| 942 _json["healthyThreshold"] = healthyThreshold; | |
| 943 } | |
| 944 if (host != null) { | |
| 945 _json["host"] = host; | |
| 946 } | |
| 947 if (name != null) { | |
| 948 _json["name"] = name; | |
| 949 } | |
| 950 if (path != null) { | |
| 951 _json["path"] = path; | |
| 952 } | |
| 953 if (port != null) { | |
| 954 _json["port"] = port; | |
| 955 } | |
| 956 if (timeoutSec != null) { | |
| 957 _json["timeoutSec"] = timeoutSec; | |
| 958 } | |
| 959 if (unhealthyThreshold != null) { | |
| 960 _json["unhealthyThreshold"] = unhealthyThreshold; | |
| 961 } | |
| 962 return _json; | |
| 963 } | |
| 964 } | |
| 965 | |
| 966 | |
| 967 /** A label to apply to this replica pool. */ | |
| 968 class Label { | |
| 969 /** The key for this label. */ | |
| 970 core.String key; | |
| 971 | |
| 972 /** The value of this label. */ | |
| 973 core.String value; | |
| 974 | |
| 975 | |
| 976 Label(); | |
| 977 | |
| 978 Label.fromJson(core.Map _json) { | |
| 979 if (_json.containsKey("key")) { | |
| 980 key = _json["key"]; | |
| 981 } | |
| 982 if (_json.containsKey("value")) { | |
| 983 value = _json["value"]; | |
| 984 } | |
| 985 } | |
| 986 | |
| 987 core.Map toJson() { | |
| 988 var _json = new core.Map(); | |
| 989 if (key != null) { | |
| 990 _json["key"] = key; | |
| 991 } | |
| 992 if (value != null) { | |
| 993 _json["value"] = value; | |
| 994 } | |
| 995 return _json; | |
| 996 } | |
| 997 } | |
| 998 | |
| 999 | |
| 1000 /** | |
| 1001 * A Compute Engine metadata entry. Identical to the metadata on the | |
| 1002 * corresponding Compute Engine resource. | |
| 1003 */ | |
| 1004 class Metadata { | |
| 1005 /** | |
| 1006 * The fingerprint of the metadata. Required for updating the metadata entries | |
| 1007 * for this instance. | |
| 1008 */ | |
| 1009 core.String fingerPrint; | |
| 1010 | |
| 1011 /** A list of metadata items. */ | |
| 1012 core.List<MetadataItem> items; | |
| 1013 | |
| 1014 | |
| 1015 Metadata(); | |
| 1016 | |
| 1017 Metadata.fromJson(core.Map _json) { | |
| 1018 if (_json.containsKey("fingerPrint")) { | |
| 1019 fingerPrint = _json["fingerPrint"]; | |
| 1020 } | |
| 1021 if (_json.containsKey("items")) { | |
| 1022 items = _json["items"].map((value) => new MetadataItem.fromJson(value)).to
List(); | |
| 1023 } | |
| 1024 } | |
| 1025 | |
| 1026 core.Map toJson() { | |
| 1027 var _json = new core.Map(); | |
| 1028 if (fingerPrint != null) { | |
| 1029 _json["fingerPrint"] = fingerPrint; | |
| 1030 } | |
| 1031 if (items != null) { | |
| 1032 _json["items"] = items.map((value) => (value).toJson()).toList(); | |
| 1033 } | |
| 1034 return _json; | |
| 1035 } | |
| 1036 } | |
| 1037 | |
| 1038 | |
| 1039 /** | |
| 1040 * A Compute Engine metadata item, defined as a key:value pair. Identical to the | |
| 1041 * metadata on the corresponding Compute Engine resource. | |
| 1042 */ | |
| 1043 class MetadataItem { | |
| 1044 /** A metadata key. */ | |
| 1045 core.String key; | |
| 1046 | |
| 1047 /** A metadata value. */ | |
| 1048 core.String value; | |
| 1049 | |
| 1050 | |
| 1051 MetadataItem(); | |
| 1052 | |
| 1053 MetadataItem.fromJson(core.Map _json) { | |
| 1054 if (_json.containsKey("key")) { | |
| 1055 key = _json["key"]; | |
| 1056 } | |
| 1057 if (_json.containsKey("value")) { | |
| 1058 value = _json["value"]; | |
| 1059 } | |
| 1060 } | |
| 1061 | |
| 1062 core.Map toJson() { | |
| 1063 var _json = new core.Map(); | |
| 1064 if (key != null) { | |
| 1065 _json["key"] = key; | |
| 1066 } | |
| 1067 if (value != null) { | |
| 1068 _json["value"] = value; | |
| 1069 } | |
| 1070 return _json; | |
| 1071 } | |
| 1072 } | |
| 1073 | |
| 1074 | |
| 1075 /** | |
| 1076 * A Compute Engine NetworkInterface resource. Identical to the NetworkInterface | |
| 1077 * on the corresponding Compute Engine resource. | |
| 1078 */ | |
| 1079 class NetworkInterface { | |
| 1080 /** | |
| 1081 * An array of configurations for this interface. This specifies how this | |
| 1082 * interface is configured to interact with other network services. | |
| 1083 */ | |
| 1084 core.List<AccessConfig> accessConfigs; | |
| 1085 | |
| 1086 /** Name the Network resource to which this interface applies. */ | |
| 1087 core.String network; | |
| 1088 | |
| 1089 /** | |
| 1090 * An optional IPV4 internal network address to assign to the instance for | |
| 1091 * this network interface. | |
| 1092 */ | |
| 1093 core.String networkIp; | |
| 1094 | |
| 1095 | |
| 1096 NetworkInterface(); | |
| 1097 | |
| 1098 NetworkInterface.fromJson(core.Map _json) { | |
| 1099 if (_json.containsKey("accessConfigs")) { | |
| 1100 accessConfigs = _json["accessConfigs"].map((value) => new AccessConfig.fro
mJson(value)).toList(); | |
| 1101 } | |
| 1102 if (_json.containsKey("network")) { | |
| 1103 network = _json["network"]; | |
| 1104 } | |
| 1105 if (_json.containsKey("networkIp")) { | |
| 1106 networkIp = _json["networkIp"]; | |
| 1107 } | |
| 1108 } | |
| 1109 | |
| 1110 core.Map toJson() { | |
| 1111 var _json = new core.Map(); | |
| 1112 if (accessConfigs != null) { | |
| 1113 _json["accessConfigs"] = accessConfigs.map((value) => (value).toJson()).to
List(); | |
| 1114 } | |
| 1115 if (network != null) { | |
| 1116 _json["network"] = network; | |
| 1117 } | |
| 1118 if (networkIp != null) { | |
| 1119 _json["networkIp"] = networkIp; | |
| 1120 } | |
| 1121 return _json; | |
| 1122 } | |
| 1123 } | |
| 1124 | |
| 1125 | |
| 1126 /** | |
| 1127 * A Persistent Disk resource that will be created and attached to each Replica | |
| 1128 * in the Pool. Each Replica will have a unique persistent disk that is created | |
| 1129 * and attached to that Replica in READ_WRITE mode. | |
| 1130 */ | |
| 1131 class NewDisk { | |
| 1132 /** How the disk will be attached to the Replica. */ | |
| 1133 DiskAttachment attachment; | |
| 1134 | |
| 1135 /** | |
| 1136 * If true, then this disk will be deleted when the instance is deleted. The | |
| 1137 * default value is true. | |
| 1138 */ | |
| 1139 core.bool autoDelete; | |
| 1140 | |
| 1141 /** If true, indicates that this is the root persistent disk. */ | |
| 1142 core.bool boot; | |
| 1143 | |
| 1144 /** | |
| 1145 * Create the new disk using these parameters. The name of the disk will be | |
| 1146 * <instance_name>-<four_random_charactersgt;. | |
| 1147 */ | |
| 1148 NewDiskInitializeParams initializeParams; | |
| 1149 | |
| 1150 | |
| 1151 NewDisk(); | |
| 1152 | |
| 1153 NewDisk.fromJson(core.Map _json) { | |
| 1154 if (_json.containsKey("attachment")) { | |
| 1155 attachment = new DiskAttachment.fromJson(_json["attachment"]); | |
| 1156 } | |
| 1157 if (_json.containsKey("autoDelete")) { | |
| 1158 autoDelete = _json["autoDelete"]; | |
| 1159 } | |
| 1160 if (_json.containsKey("boot")) { | |
| 1161 boot = _json["boot"]; | |
| 1162 } | |
| 1163 if (_json.containsKey("initializeParams")) { | |
| 1164 initializeParams = new NewDiskInitializeParams.fromJson(_json["initializeP
arams"]); | |
| 1165 } | |
| 1166 } | |
| 1167 | |
| 1168 core.Map toJson() { | |
| 1169 var _json = new core.Map(); | |
| 1170 if (attachment != null) { | |
| 1171 _json["attachment"] = (attachment).toJson(); | |
| 1172 } | |
| 1173 if (autoDelete != null) { | |
| 1174 _json["autoDelete"] = autoDelete; | |
| 1175 } | |
| 1176 if (boot != null) { | |
| 1177 _json["boot"] = boot; | |
| 1178 } | |
| 1179 if (initializeParams != null) { | |
| 1180 _json["initializeParams"] = (initializeParams).toJson(); | |
| 1181 } | |
| 1182 return _json; | |
| 1183 } | |
| 1184 } | |
| 1185 | |
| 1186 | |
| 1187 /** Initialization parameters for creating a new disk. */ | |
| 1188 class NewDiskInitializeParams { | |
| 1189 /** The size of the created disk in gigabytes. */ | |
| 1190 core.String diskSizeGb; | |
| 1191 | |
| 1192 /** | |
| 1193 * Name of the disk type resource describing which disk type to use to create | |
| 1194 * the disk. For example 'pd-ssd' or 'pd-standard'. Default is 'pd-standard' | |
| 1195 */ | |
| 1196 core.String diskType; | |
| 1197 | |
| 1198 /** | |
| 1199 * The name or fully-qualified URL of a source image to use to create this | |
| 1200 * disk. If you provide a name of the source image, Replica Pool will look for | |
| 1201 * an image with that name in your project. If you are specifying an image | |
| 1202 * provided by Compute Engine, you will need to provide the full URL with the | |
| 1203 * correct project, such as: | |
| 1204 * http://www.googleapis.com/compute/v1/projects/debian-cloud/ | |
| 1205 * global/images/debian-wheezy-7-vYYYYMMDD | |
| 1206 */ | |
| 1207 core.String sourceImage; | |
| 1208 | |
| 1209 | |
| 1210 NewDiskInitializeParams(); | |
| 1211 | |
| 1212 NewDiskInitializeParams.fromJson(core.Map _json) { | |
| 1213 if (_json.containsKey("diskSizeGb")) { | |
| 1214 diskSizeGb = _json["diskSizeGb"]; | |
| 1215 } | |
| 1216 if (_json.containsKey("diskType")) { | |
| 1217 diskType = _json["diskType"]; | |
| 1218 } | |
| 1219 if (_json.containsKey("sourceImage")) { | |
| 1220 sourceImage = _json["sourceImage"]; | |
| 1221 } | |
| 1222 } | |
| 1223 | |
| 1224 core.Map toJson() { | |
| 1225 var _json = new core.Map(); | |
| 1226 if (diskSizeGb != null) { | |
| 1227 _json["diskSizeGb"] = diskSizeGb; | |
| 1228 } | |
| 1229 if (diskType != null) { | |
| 1230 _json["diskType"] = diskType; | |
| 1231 } | |
| 1232 if (sourceImage != null) { | |
| 1233 _json["sourceImage"] = sourceImage; | |
| 1234 } | |
| 1235 return _json; | |
| 1236 } | |
| 1237 } | |
| 1238 | |
| 1239 | |
| 1240 /** Not documented yet. */ | |
| 1241 class Pool { | |
| 1242 /** | |
| 1243 * Whether replicas in this pool should be restarted if they experience a | |
| 1244 * failure. The default value is true. | |
| 1245 */ | |
| 1246 core.bool autoRestart; | |
| 1247 | |
| 1248 /** | |
| 1249 * The base instance name to use for the replicas in this pool. This must | |
| 1250 * match the regex [a-z]([-a-z0-9]*[a-z0-9])?. If specified, the instances in | |
| 1251 * this replica pool will be named in the format <base-instance-name>-<ID>. | |
| 1252 * The <ID> postfix will be a four character alphanumeric identifier generated | |
| 1253 * by the service. | |
| 1254 * | |
| 1255 * If this is not specified by the user, a random base instance name is | |
| 1256 * generated by the service. | |
| 1257 */ | |
| 1258 core.String baseInstanceName; | |
| 1259 | |
| 1260 /** [Output Only] The current number of replicas in the pool. */ | |
| 1261 core.int currentNumReplicas; | |
| 1262 | |
| 1263 /** An optional description of the replica pool. */ | |
| 1264 core.String description; | |
| 1265 | |
| 1266 /** Deprecated. Please use template[].healthChecks instead. */ | |
| 1267 core.List<HealthCheck> healthChecks; | |
| 1268 | |
| 1269 /** | |
| 1270 * The initial number of replicas this pool should have. You must provide a | |
| 1271 * value greater than or equal to 0. | |
| 1272 */ | |
| 1273 core.int initialNumReplicas; | |
| 1274 | |
| 1275 /** | |
| 1276 * A list of labels to attach to this replica pool and all created virtual | |
| 1277 * machines in this replica pool. | |
| 1278 */ | |
| 1279 core.List<Label> labels; | |
| 1280 | |
| 1281 /** | |
| 1282 * The name of the replica pool. Must follow the regex | |
| 1283 * [a-z]([-a-z0-9]*[a-z0-9])? and be 1-28 characters long. | |
| 1284 */ | |
| 1285 core.String name; | |
| 1286 | |
| 1287 /** Deprecated! Use initial_num_replicas instead. */ | |
| 1288 core.int numReplicas; | |
| 1289 | |
| 1290 /** | |
| 1291 * The list of resource views that should be updated with all the replicas | |
| 1292 * that are managed by this pool. | |
| 1293 */ | |
| 1294 core.List<core.String> resourceViews; | |
| 1295 | |
| 1296 /** [Output Only] A self-link to the replica pool. */ | |
| 1297 core.String selfLink; | |
| 1298 | |
| 1299 /** Deprecated, please use target_pools instead. */ | |
| 1300 core.String targetPool; | |
| 1301 | |
| 1302 /** | |
| 1303 * A list of target pools to update with the replicas that are managed by this | |
| 1304 * pool. If specified, the replicas in this replica pool will be added to the | |
| 1305 * specified target pools for load balancing purposes. The replica pool must | |
| 1306 * live in the same region as the specified target pools. These values must be | |
| 1307 * the target pool resource names, and not fully qualified URLs. | |
| 1308 */ | |
| 1309 core.List<core.String> targetPools; | |
| 1310 | |
| 1311 /** | |
| 1312 * The template to use when creating replicas in this pool. This template is | |
| 1313 * used during initial instance creation of the pool, when growing the pool in | |
| 1314 * size, or when a replica restarts. | |
| 1315 */ | |
| 1316 Template template; | |
| 1317 | |
| 1318 /** Deprecated! Do not set. */ | |
| 1319 core.String type; | |
| 1320 | |
| 1321 | |
| 1322 Pool(); | |
| 1323 | |
| 1324 Pool.fromJson(core.Map _json) { | |
| 1325 if (_json.containsKey("autoRestart")) { | |
| 1326 autoRestart = _json["autoRestart"]; | |
| 1327 } | |
| 1328 if (_json.containsKey("baseInstanceName")) { | |
| 1329 baseInstanceName = _json["baseInstanceName"]; | |
| 1330 } | |
| 1331 if (_json.containsKey("currentNumReplicas")) { | |
| 1332 currentNumReplicas = _json["currentNumReplicas"]; | |
| 1333 } | |
| 1334 if (_json.containsKey("description")) { | |
| 1335 description = _json["description"]; | |
| 1336 } | |
| 1337 if (_json.containsKey("healthChecks")) { | |
| 1338 healthChecks = _json["healthChecks"].map((value) => new HealthCheck.fromJs
on(value)).toList(); | |
| 1339 } | |
| 1340 if (_json.containsKey("initialNumReplicas")) { | |
| 1341 initialNumReplicas = _json["initialNumReplicas"]; | |
| 1342 } | |
| 1343 if (_json.containsKey("labels")) { | |
| 1344 labels = _json["labels"].map((value) => new Label.fromJson(value)).toList(
); | |
| 1345 } | |
| 1346 if (_json.containsKey("name")) { | |
| 1347 name = _json["name"]; | |
| 1348 } | |
| 1349 if (_json.containsKey("numReplicas")) { | |
| 1350 numReplicas = _json["numReplicas"]; | |
| 1351 } | |
| 1352 if (_json.containsKey("resourceViews")) { | |
| 1353 resourceViews = _json["resourceViews"]; | |
| 1354 } | |
| 1355 if (_json.containsKey("selfLink")) { | |
| 1356 selfLink = _json["selfLink"]; | |
| 1357 } | |
| 1358 if (_json.containsKey("targetPool")) { | |
| 1359 targetPool = _json["targetPool"]; | |
| 1360 } | |
| 1361 if (_json.containsKey("targetPools")) { | |
| 1362 targetPools = _json["targetPools"]; | |
| 1363 } | |
| 1364 if (_json.containsKey("template")) { | |
| 1365 template = new Template.fromJson(_json["template"]); | |
| 1366 } | |
| 1367 if (_json.containsKey("type")) { | |
| 1368 type = _json["type"]; | |
| 1369 } | |
| 1370 } | |
| 1371 | |
| 1372 core.Map toJson() { | |
| 1373 var _json = new core.Map(); | |
| 1374 if (autoRestart != null) { | |
| 1375 _json["autoRestart"] = autoRestart; | |
| 1376 } | |
| 1377 if (baseInstanceName != null) { | |
| 1378 _json["baseInstanceName"] = baseInstanceName; | |
| 1379 } | |
| 1380 if (currentNumReplicas != null) { | |
| 1381 _json["currentNumReplicas"] = currentNumReplicas; | |
| 1382 } | |
| 1383 if (description != null) { | |
| 1384 _json["description"] = description; | |
| 1385 } | |
| 1386 if (healthChecks != null) { | |
| 1387 _json["healthChecks"] = healthChecks.map((value) => (value).toJson()).toLi
st(); | |
| 1388 } | |
| 1389 if (initialNumReplicas != null) { | |
| 1390 _json["initialNumReplicas"] = initialNumReplicas; | |
| 1391 } | |
| 1392 if (labels != null) { | |
| 1393 _json["labels"] = labels.map((value) => (value).toJson()).toList(); | |
| 1394 } | |
| 1395 if (name != null) { | |
| 1396 _json["name"] = name; | |
| 1397 } | |
| 1398 if (numReplicas != null) { | |
| 1399 _json["numReplicas"] = numReplicas; | |
| 1400 } | |
| 1401 if (resourceViews != null) { | |
| 1402 _json["resourceViews"] = resourceViews; | |
| 1403 } | |
| 1404 if (selfLink != null) { | |
| 1405 _json["selfLink"] = selfLink; | |
| 1406 } | |
| 1407 if (targetPool != null) { | |
| 1408 _json["targetPool"] = targetPool; | |
| 1409 } | |
| 1410 if (targetPools != null) { | |
| 1411 _json["targetPools"] = targetPools; | |
| 1412 } | |
| 1413 if (template != null) { | |
| 1414 _json["template"] = (template).toJson(); | |
| 1415 } | |
| 1416 if (type != null) { | |
| 1417 _json["type"] = type; | |
| 1418 } | |
| 1419 return _json; | |
| 1420 } | |
| 1421 } | |
| 1422 | |
| 1423 | |
| 1424 /** Not documented yet. */ | |
| 1425 class PoolsDeleteRequest { | |
| 1426 /** | |
| 1427 * If there are instances you would like to keep, you can specify them here. | |
| 1428 * These instances won't be deleted, but the associated replica objects will | |
| 1429 * be removed. | |
| 1430 */ | |
| 1431 core.List<core.String> abandonInstances; | |
| 1432 | |
| 1433 | |
| 1434 PoolsDeleteRequest(); | |
| 1435 | |
| 1436 PoolsDeleteRequest.fromJson(core.Map _json) { | |
| 1437 if (_json.containsKey("abandonInstances")) { | |
| 1438 abandonInstances = _json["abandonInstances"]; | |
| 1439 } | |
| 1440 } | |
| 1441 | |
| 1442 core.Map toJson() { | |
| 1443 var _json = new core.Map(); | |
| 1444 if (abandonInstances != null) { | |
| 1445 _json["abandonInstances"] = abandonInstances; | |
| 1446 } | |
| 1447 return _json; | |
| 1448 } | |
| 1449 } | |
| 1450 | |
| 1451 | |
| 1452 /** Not documented yet. */ | |
| 1453 class PoolsListResponse { | |
| 1454 /** Not documented yet. */ | |
| 1455 core.String nextPageToken; | |
| 1456 | |
| 1457 /** Not documented yet. */ | |
| 1458 core.List<Pool> resources; | |
| 1459 | |
| 1460 | |
| 1461 PoolsListResponse(); | |
| 1462 | |
| 1463 PoolsListResponse.fromJson(core.Map _json) { | |
| 1464 if (_json.containsKey("nextPageToken")) { | |
| 1465 nextPageToken = _json["nextPageToken"]; | |
| 1466 } | |
| 1467 if (_json.containsKey("resources")) { | |
| 1468 resources = _json["resources"].map((value) => new Pool.fromJson(value)).to
List(); | |
| 1469 } | |
| 1470 } | |
| 1471 | |
| 1472 core.Map toJson() { | |
| 1473 var _json = new core.Map(); | |
| 1474 if (nextPageToken != null) { | |
| 1475 _json["nextPageToken"] = nextPageToken; | |
| 1476 } | |
| 1477 if (resources != null) { | |
| 1478 _json["resources"] = resources.map((value) => (value).toJson()).toList(); | |
| 1479 } | |
| 1480 return _json; | |
| 1481 } | |
| 1482 } | |
| 1483 | |
| 1484 | |
| 1485 /** | |
| 1486 * An individual Replica within a Pool. Replicas are automatically created by | |
| 1487 * the replica pool, using the template provided by the user. You cannot | |
| 1488 * directly create replicas. | |
| 1489 */ | |
| 1490 class Replica { | |
| 1491 /** [Output Only] The name of the Replica object. */ | |
| 1492 core.String name; | |
| 1493 | |
| 1494 /** [Output Only] The self-link of the Replica. */ | |
| 1495 core.String selfLink; | |
| 1496 | |
| 1497 /** [Output Only] Last known status of the Replica. */ | |
| 1498 ReplicaStatus status; | |
| 1499 | |
| 1500 | |
| 1501 Replica(); | |
| 1502 | |
| 1503 Replica.fromJson(core.Map _json) { | |
| 1504 if (_json.containsKey("name")) { | |
| 1505 name = _json["name"]; | |
| 1506 } | |
| 1507 if (_json.containsKey("selfLink")) { | |
| 1508 selfLink = _json["selfLink"]; | |
| 1509 } | |
| 1510 if (_json.containsKey("status")) { | |
| 1511 status = new ReplicaStatus.fromJson(_json["status"]); | |
| 1512 } | |
| 1513 } | |
| 1514 | |
| 1515 core.Map toJson() { | |
| 1516 var _json = new core.Map(); | |
| 1517 if (name != null) { | |
| 1518 _json["name"] = name; | |
| 1519 } | |
| 1520 if (selfLink != null) { | |
| 1521 _json["selfLink"] = selfLink; | |
| 1522 } | |
| 1523 if (status != null) { | |
| 1524 _json["status"] = (status).toJson(); | |
| 1525 } | |
| 1526 return _json; | |
| 1527 } | |
| 1528 } | |
| 1529 | |
| 1530 | |
| 1531 /** The current status of a Replica. */ | |
| 1532 class ReplicaStatus { | |
| 1533 /** | |
| 1534 * [Output Only] Human-readable details about the current state of the replica | |
| 1535 */ | |
| 1536 core.String details; | |
| 1537 | |
| 1538 /** [Output Only] The state of the Replica. */ | |
| 1539 core.String state; | |
| 1540 | |
| 1541 /** [Output Only] The template used to build the replica. */ | |
| 1542 core.String templateVersion; | |
| 1543 | |
| 1544 /** | |
| 1545 * [Output Only] Link to the virtual machine that this Replica represents. | |
| 1546 */ | |
| 1547 core.String vmLink; | |
| 1548 | |
| 1549 /** | |
| 1550 * [Output Only] The time that this Replica got to the RUNNING state, in RFC | |
| 1551 * 3339 format. If the start time is unknown, UNKNOWN is returned. | |
| 1552 */ | |
| 1553 core.String vmStartTime; | |
| 1554 | |
| 1555 | |
| 1556 ReplicaStatus(); | |
| 1557 | |
| 1558 ReplicaStatus.fromJson(core.Map _json) { | |
| 1559 if (_json.containsKey("details")) { | |
| 1560 details = _json["details"]; | |
| 1561 } | |
| 1562 if (_json.containsKey("state")) { | |
| 1563 state = _json["state"]; | |
| 1564 } | |
| 1565 if (_json.containsKey("templateVersion")) { | |
| 1566 templateVersion = _json["templateVersion"]; | |
| 1567 } | |
| 1568 if (_json.containsKey("vmLink")) { | |
| 1569 vmLink = _json["vmLink"]; | |
| 1570 } | |
| 1571 if (_json.containsKey("vmStartTime")) { | |
| 1572 vmStartTime = _json["vmStartTime"]; | |
| 1573 } | |
| 1574 } | |
| 1575 | |
| 1576 core.Map toJson() { | |
| 1577 var _json = new core.Map(); | |
| 1578 if (details != null) { | |
| 1579 _json["details"] = details; | |
| 1580 } | |
| 1581 if (state != null) { | |
| 1582 _json["state"] = state; | |
| 1583 } | |
| 1584 if (templateVersion != null) { | |
| 1585 _json["templateVersion"] = templateVersion; | |
| 1586 } | |
| 1587 if (vmLink != null) { | |
| 1588 _json["vmLink"] = vmLink; | |
| 1589 } | |
| 1590 if (vmStartTime != null) { | |
| 1591 _json["vmStartTime"] = vmStartTime; | |
| 1592 } | |
| 1593 return _json; | |
| 1594 } | |
| 1595 } | |
| 1596 | |
| 1597 | |
| 1598 /** Not documented yet. */ | |
| 1599 class ReplicasDeleteRequest { | |
| 1600 /** | |
| 1601 * Whether the instance resource represented by this replica should be deleted | |
| 1602 * or abandoned. If abandoned, the replica will be deleted but the virtual | |
| 1603 * machine instance will remain. By default, this is set to false and the | |
| 1604 * instance will be deleted along with the replica. | |
| 1605 */ | |
| 1606 core.bool abandonInstance; | |
| 1607 | |
| 1608 | |
| 1609 ReplicasDeleteRequest(); | |
| 1610 | |
| 1611 ReplicasDeleteRequest.fromJson(core.Map _json) { | |
| 1612 if (_json.containsKey("abandonInstance")) { | |
| 1613 abandonInstance = _json["abandonInstance"]; | |
| 1614 } | |
| 1615 } | |
| 1616 | |
| 1617 core.Map toJson() { | |
| 1618 var _json = new core.Map(); | |
| 1619 if (abandonInstance != null) { | |
| 1620 _json["abandonInstance"] = abandonInstance; | |
| 1621 } | |
| 1622 return _json; | |
| 1623 } | |
| 1624 } | |
| 1625 | |
| 1626 | |
| 1627 /** Not documented yet. */ | |
| 1628 class ReplicasListResponse { | |
| 1629 /** Not documented yet. */ | |
| 1630 core.String nextPageToken; | |
| 1631 | |
| 1632 /** Not documented yet. */ | |
| 1633 core.List<Replica> resources; | |
| 1634 | |
| 1635 | |
| 1636 ReplicasListResponse(); | |
| 1637 | |
| 1638 ReplicasListResponse.fromJson(core.Map _json) { | |
| 1639 if (_json.containsKey("nextPageToken")) { | |
| 1640 nextPageToken = _json["nextPageToken"]; | |
| 1641 } | |
| 1642 if (_json.containsKey("resources")) { | |
| 1643 resources = _json["resources"].map((value) => new Replica.fromJson(value))
.toList(); | |
| 1644 } | |
| 1645 } | |
| 1646 | |
| 1647 core.Map toJson() { | |
| 1648 var _json = new core.Map(); | |
| 1649 if (nextPageToken != null) { | |
| 1650 _json["nextPageToken"] = nextPageToken; | |
| 1651 } | |
| 1652 if (resources != null) { | |
| 1653 _json["resources"] = resources.map((value) => (value).toJson()).toList(); | |
| 1654 } | |
| 1655 return _json; | |
| 1656 } | |
| 1657 } | |
| 1658 | |
| 1659 | |
| 1660 /** | |
| 1661 * A Compute Engine service account, identical to the Compute Engine resource. | |
| 1662 */ | |
| 1663 class ServiceAccount { | |
| 1664 /** | |
| 1665 * The service account email address, for example: | |
| 1666 * 123845678986@project.gserviceaccount.com | |
| 1667 */ | |
| 1668 core.String email; | |
| 1669 | |
| 1670 /** | |
| 1671 * The list of OAuth2 scopes to obtain for the service account, for example: | |
| 1672 * https://www.googleapis.com/auth/devstorage.full_control | |
| 1673 */ | |
| 1674 core.List<core.String> scopes; | |
| 1675 | |
| 1676 | |
| 1677 ServiceAccount(); | |
| 1678 | |
| 1679 ServiceAccount.fromJson(core.Map _json) { | |
| 1680 if (_json.containsKey("email")) { | |
| 1681 email = _json["email"]; | |
| 1682 } | |
| 1683 if (_json.containsKey("scopes")) { | |
| 1684 scopes = _json["scopes"]; | |
| 1685 } | |
| 1686 } | |
| 1687 | |
| 1688 core.Map toJson() { | |
| 1689 var _json = new core.Map(); | |
| 1690 if (email != null) { | |
| 1691 _json["email"] = email; | |
| 1692 } | |
| 1693 if (scopes != null) { | |
| 1694 _json["scopes"] = scopes; | |
| 1695 } | |
| 1696 return _json; | |
| 1697 } | |
| 1698 } | |
| 1699 | |
| 1700 | |
| 1701 /** | |
| 1702 * A Compute Engine Instance tag, identical to the tags on the corresponding | |
| 1703 * Compute Engine Instance resource. | |
| 1704 */ | |
| 1705 class Tag { | |
| 1706 /** The fingerprint of the tag. Required for updating the list of tags. */ | |
| 1707 core.String fingerPrint; | |
| 1708 | |
| 1709 /** Items contained in this tag. */ | |
| 1710 core.List<core.String> items; | |
| 1711 | |
| 1712 | |
| 1713 Tag(); | |
| 1714 | |
| 1715 Tag.fromJson(core.Map _json) { | |
| 1716 if (_json.containsKey("fingerPrint")) { | |
| 1717 fingerPrint = _json["fingerPrint"]; | |
| 1718 } | |
| 1719 if (_json.containsKey("items")) { | |
| 1720 items = _json["items"]; | |
| 1721 } | |
| 1722 } | |
| 1723 | |
| 1724 core.Map toJson() { | |
| 1725 var _json = new core.Map(); | |
| 1726 if (fingerPrint != null) { | |
| 1727 _json["fingerPrint"] = fingerPrint; | |
| 1728 } | |
| 1729 if (items != null) { | |
| 1730 _json["items"] = items; | |
| 1731 } | |
| 1732 return _json; | |
| 1733 } | |
| 1734 } | |
| 1735 | |
| 1736 | |
| 1737 /** The template used for creating replicas in the pool. */ | |
| 1738 class Template { | |
| 1739 /** | |
| 1740 * An action to run during initialization of your replicas. An action is run | |
| 1741 * as shell commands which are executed one after the other in the same bash | |
| 1742 * shell, so any state established by one command is inherited by later | |
| 1743 * commands. | |
| 1744 */ | |
| 1745 Action action; | |
| 1746 | |
| 1747 /** | |
| 1748 * A list of HTTP Health Checks to configure for this replica pool and all | |
| 1749 * virtual machines in this replica pool. | |
| 1750 */ | |
| 1751 core.List<HealthCheck> healthChecks; | |
| 1752 | |
| 1753 /** | |
| 1754 * A free-form string describing the version of this template. You can provide | |
| 1755 * any versioning string you would like. For example, version1 or template-v1. | |
| 1756 */ | |
| 1757 core.String version; | |
| 1758 | |
| 1759 /** | |
| 1760 * The virtual machine parameters to use for creating replicas. You can define | |
| 1761 * settings such as the machine type and the image of replicas in this pool. | |
| 1762 * This is required if replica type is SMART_VM. | |
| 1763 */ | |
| 1764 VmParams vmParams; | |
| 1765 | |
| 1766 | |
| 1767 Template(); | |
| 1768 | |
| 1769 Template.fromJson(core.Map _json) { | |
| 1770 if (_json.containsKey("action")) { | |
| 1771 action = new Action.fromJson(_json["action"]); | |
| 1772 } | |
| 1773 if (_json.containsKey("healthChecks")) { | |
| 1774 healthChecks = _json["healthChecks"].map((value) => new HealthCheck.fromJs
on(value)).toList(); | |
| 1775 } | |
| 1776 if (_json.containsKey("version")) { | |
| 1777 version = _json["version"]; | |
| 1778 } | |
| 1779 if (_json.containsKey("vmParams")) { | |
| 1780 vmParams = new VmParams.fromJson(_json["vmParams"]); | |
| 1781 } | |
| 1782 } | |
| 1783 | |
| 1784 core.Map toJson() { | |
| 1785 var _json = new core.Map(); | |
| 1786 if (action != null) { | |
| 1787 _json["action"] = (action).toJson(); | |
| 1788 } | |
| 1789 if (healthChecks != null) { | |
| 1790 _json["healthChecks"] = healthChecks.map((value) => (value).toJson()).toLi
st(); | |
| 1791 } | |
| 1792 if (version != null) { | |
| 1793 _json["version"] = version; | |
| 1794 } | |
| 1795 if (vmParams != null) { | |
| 1796 _json["vmParams"] = (vmParams).toJson(); | |
| 1797 } | |
| 1798 return _json; | |
| 1799 } | |
| 1800 } | |
| 1801 | |
| 1802 | |
| 1803 /** | |
| 1804 * Parameters for creating a Compute Engine Instance resource. Most fields are | |
| 1805 * identical to the corresponding Compute Engine resource. | |
| 1806 */ | |
| 1807 class VmParams { | |
| 1808 /** Deprecated. Please use baseInstanceName instead. */ | |
| 1809 core.String baseInstanceName; | |
| 1810 | |
| 1811 /** | |
| 1812 * Enables IP Forwarding, which allows this instance to receive packets | |
| 1813 * destined for a different IP address, and send packets with a different | |
| 1814 * source IP. See IP Forwarding for more information. | |
| 1815 */ | |
| 1816 core.bool canIpForward; | |
| 1817 | |
| 1818 /** An optional textual description of the instance. */ | |
| 1819 core.String description; | |
| 1820 | |
| 1821 /** | |
| 1822 * A list of existing Persistent Disk resources to attach to each replica in | |
| 1823 * the pool. Each disk will be attached in read-only mode to every replica. | |
| 1824 */ | |
| 1825 core.List<ExistingDisk> disksToAttach; | |
| 1826 | |
| 1827 /** | |
| 1828 * A list of Disk resources to create and attach to each Replica in the Pool. | |
| 1829 * Currently, you can only define one disk and it must be a root persistent | |
| 1830 * disk. Note that Replica Pool will create a root persistent disk for each | |
| 1831 * replica. | |
| 1832 */ | |
| 1833 core.List<NewDisk> disksToCreate; | |
| 1834 | |
| 1835 /** | |
| 1836 * The machine type for this instance. The resource name (e.g. n1-standard-1). | |
| 1837 */ | |
| 1838 core.String machineType; | |
| 1839 | |
| 1840 /** The metadata key/value pairs assigned to this instance. */ | |
| 1841 Metadata metadata; | |
| 1842 | |
| 1843 /** | |
| 1844 * A list of network interfaces for the instance. Currently only one interface | |
| 1845 * is supported by Google Compute Engine, ONE_TO_ONE_NAT. | |
| 1846 */ | |
| 1847 core.List<NetworkInterface> networkInterfaces; | |
| 1848 | |
| 1849 /** Not documented yet. */ | |
| 1850 core.String onHostMaintenance; | |
| 1851 | |
| 1852 /** A list of Service Accounts to enable for this instance. */ | |
| 1853 core.List<ServiceAccount> serviceAccounts; | |
| 1854 | |
| 1855 /** | |
| 1856 * A list of tags to apply to the Google Compute Engine instance to identify | |
| 1857 * resources. | |
| 1858 */ | |
| 1859 Tag tags; | |
| 1860 | |
| 1861 | |
| 1862 VmParams(); | |
| 1863 | |
| 1864 VmParams.fromJson(core.Map _json) { | |
| 1865 if (_json.containsKey("baseInstanceName")) { | |
| 1866 baseInstanceName = _json["baseInstanceName"]; | |
| 1867 } | |
| 1868 if (_json.containsKey("canIpForward")) { | |
| 1869 canIpForward = _json["canIpForward"]; | |
| 1870 } | |
| 1871 if (_json.containsKey("description")) { | |
| 1872 description = _json["description"]; | |
| 1873 } | |
| 1874 if (_json.containsKey("disksToAttach")) { | |
| 1875 disksToAttach = _json["disksToAttach"].map((value) => new ExistingDisk.fro
mJson(value)).toList(); | |
| 1876 } | |
| 1877 if (_json.containsKey("disksToCreate")) { | |
| 1878 disksToCreate = _json["disksToCreate"].map((value) => new NewDisk.fromJson
(value)).toList(); | |
| 1879 } | |
| 1880 if (_json.containsKey("machineType")) { | |
| 1881 machineType = _json["machineType"]; | |
| 1882 } | |
| 1883 if (_json.containsKey("metadata")) { | |
| 1884 metadata = new Metadata.fromJson(_json["metadata"]); | |
| 1885 } | |
| 1886 if (_json.containsKey("networkInterfaces")) { | |
| 1887 networkInterfaces = _json["networkInterfaces"].map((value) => new NetworkI
nterface.fromJson(value)).toList(); | |
| 1888 } | |
| 1889 if (_json.containsKey("onHostMaintenance")) { | |
| 1890 onHostMaintenance = _json["onHostMaintenance"]; | |
| 1891 } | |
| 1892 if (_json.containsKey("serviceAccounts")) { | |
| 1893 serviceAccounts = _json["serviceAccounts"].map((value) => new ServiceAccou
nt.fromJson(value)).toList(); | |
| 1894 } | |
| 1895 if (_json.containsKey("tags")) { | |
| 1896 tags = new Tag.fromJson(_json["tags"]); | |
| 1897 } | |
| 1898 } | |
| 1899 | |
| 1900 core.Map toJson() { | |
| 1901 var _json = new core.Map(); | |
| 1902 if (baseInstanceName != null) { | |
| 1903 _json["baseInstanceName"] = baseInstanceName; | |
| 1904 } | |
| 1905 if (canIpForward != null) { | |
| 1906 _json["canIpForward"] = canIpForward; | |
| 1907 } | |
| 1908 if (description != null) { | |
| 1909 _json["description"] = description; | |
| 1910 } | |
| 1911 if (disksToAttach != null) { | |
| 1912 _json["disksToAttach"] = disksToAttach.map((value) => (value).toJson()).to
List(); | |
| 1913 } | |
| 1914 if (disksToCreate != null) { | |
| 1915 _json["disksToCreate"] = disksToCreate.map((value) => (value).toJson()).to
List(); | |
| 1916 } | |
| 1917 if (machineType != null) { | |
| 1918 _json["machineType"] = machineType; | |
| 1919 } | |
| 1920 if (metadata != null) { | |
| 1921 _json["metadata"] = (metadata).toJson(); | |
| 1922 } | |
| 1923 if (networkInterfaces != null) { | |
| 1924 _json["networkInterfaces"] = networkInterfaces.map((value) => (value).toJs
on()).toList(); | |
| 1925 } | |
| 1926 if (onHostMaintenance != null) { | |
| 1927 _json["onHostMaintenance"] = onHostMaintenance; | |
| 1928 } | |
| 1929 if (serviceAccounts != null) { | |
| 1930 _json["serviceAccounts"] = serviceAccounts.map((value) => (value).toJson()
).toList(); | |
| 1931 } | |
| 1932 if (tags != null) { | |
| 1933 _json["tags"] = (tags).toJson(); | |
| 1934 } | |
| 1935 return _json; | |
| 1936 } | |
| 1937 } | |
| 1938 | |
| 1939 | |
| OLD | NEW |