| Index: generated/googleapis_beta/lib/replicapool/v1beta1.dart
 | 
| diff --git a/generated/googleapis_beta/lib/replicapool/v1beta1.dart b/generated/googleapis_beta/lib/replicapool/v1beta1.dart
 | 
| deleted file mode 100644
 | 
| index f0f1414501b3ae372321f0b037a2a83327734309..0000000000000000000000000000000000000000
 | 
| --- a/generated/googleapis_beta/lib/replicapool/v1beta1.dart
 | 
| +++ /dev/null
 | 
| @@ -1,1939 +0,0 @@
 | 
| -library googleapis_beta.replicapool.v1beta1;
 | 
| -
 | 
| -import "dart:core" as core;
 | 
| -import "dart:collection" as collection;
 | 
| -import "dart:async" as async;
 | 
| -import "dart:convert" as convert;
 | 
| -
 | 
| -import "package:crypto/crypto.dart" as crypto;
 | 
| -import 'package:http/http.dart' as http;
 | 
| -import '../src/common_internal.dart' as common_internal;
 | 
| -import '../common/common.dart' as common;
 | 
| -
 | 
| -export '../common/common.dart' show ApiRequestError;
 | 
| -export '../common/common.dart' show DetailedApiRequestError;
 | 
| -
 | 
| -/**
 | 
| - * The Replica Pool API allows users to declaratively provision and manage
 | 
| - * groups of Google Compute Engine instances based on a common template.
 | 
| - */
 | 
| -class ReplicapoolApi {
 | 
| -  /** View and manage your data across Google Cloud Platform services */
 | 
| -  static const CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform";
 | 
| -
 | 
| -  /**
 | 
| -   * View and manage your Google Cloud Platform management resources and
 | 
| -   * deployment status information
 | 
| -   */
 | 
| -  static const NdevCloudmanScope = "https://www.googleapis.com/auth/ndev.cloudman";
 | 
| -
 | 
| -  /**
 | 
| -   * View your Google Cloud Platform management resources and deployment status
 | 
| -   * information
 | 
| -   */
 | 
| -  static const NdevCloudmanReadonlyScope = "https://www.googleapis.com/auth/ndev.cloudman.readonly";
 | 
| -
 | 
| -  /** View and manage replica pools */
 | 
| -  static const ReplicapoolScope = "https://www.googleapis.com/auth/replicapool";
 | 
| -
 | 
| -  /** View replica pools */
 | 
| -  static const ReplicapoolReadonlyScope = "https://www.googleapis.com/auth/replicapool.readonly";
 | 
| -
 | 
| -
 | 
| -  final common_internal.ApiRequester _requester;
 | 
| -
 | 
| -  PoolsResourceApi get pools => new PoolsResourceApi(_requester);
 | 
| -  ReplicasResourceApi get replicas => new ReplicasResourceApi(_requester);
 | 
| -
 | 
| -  ReplicapoolApi(http.Client client) : 
 | 
| -      _requester = new common_internal.ApiRequester(client, "https://www.googleapis.com/", "replicapool/v1beta1/projects/");
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/** Not documented yet. */
 | 
| -class PoolsResourceApi {
 | 
| -  final common_internal.ApiRequester _requester;
 | 
| -
 | 
| -  PoolsResourceApi(common_internal.ApiRequester client) : 
 | 
| -      _requester = client;
 | 
| -
 | 
| -  /**
 | 
| -   * Deletes a replica pool.
 | 
| -   *
 | 
| -   * [request] - The metadata request object.
 | 
| -   *
 | 
| -   * Request parameters:
 | 
| -   *
 | 
| -   * [projectName] - The project ID for this replica pool.
 | 
| -   *
 | 
| -   * [zone] - The zone for this replica pool.
 | 
| -   *
 | 
| -   * [poolName] - The name of the replica pool for this request.
 | 
| -   *
 | 
| -   * Completes with a [common.ApiRequestError] if the API endpoint returned an
 | 
| -   * error.
 | 
| -   *
 | 
| -   * If the used [http.Client] completes with an error when making a REST call,
 | 
| -   * this method  will complete with the same error.
 | 
| -   */
 | 
| -  async.Future delete(PoolsDeleteRequest request, core.String projectName, core.String zone, core.String poolName) {
 | 
| -    var _url = null;
 | 
| -    var _queryParams = new core.Map();
 | 
| -    var _uploadMedia = null;
 | 
| -    var _uploadOptions = null;
 | 
| -    var _downloadOptions = common.DownloadOptions.Metadata;
 | 
| -    var _body = null;
 | 
| -
 | 
| -    if (request != null) {
 | 
| -      _body = convert.JSON.encode((request).toJson());
 | 
| -    }
 | 
| -    if (projectName == null) {
 | 
| -      throw new core.ArgumentError("Parameter projectName is required.");
 | 
| -    }
 | 
| -    if (zone == null) {
 | 
| -      throw new core.ArgumentError("Parameter zone is required.");
 | 
| -    }
 | 
| -    if (poolName == null) {
 | 
| -      throw new core.ArgumentError("Parameter poolName is required.");
 | 
| -    }
 | 
| -
 | 
| -    _downloadOptions = null;
 | 
| -
 | 
| -    _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + common_internal.Escaper.ecapeVariable('$zone') + '/pools/' + common_internal.Escaper.ecapeVariable('$poolName');
 | 
| -
 | 
| -    var _response = _requester.request(_url,
 | 
| -                                       "POST",
 | 
| -                                       body: _body,
 | 
| -                                       queryParams: _queryParams,
 | 
| -                                       uploadOptions: _uploadOptions,
 | 
| -                                       uploadMedia: _uploadMedia,
 | 
| -                                       downloadOptions: _downloadOptions);
 | 
| -    return _response.then((data) => null);
 | 
| -  }
 | 
| -
 | 
| -  /**
 | 
| -   * Gets information about a single replica pool.
 | 
| -   *
 | 
| -   * Request parameters:
 | 
| -   *
 | 
| -   * [projectName] - The project ID for this replica pool.
 | 
| -   *
 | 
| -   * [zone] - The zone for this replica pool.
 | 
| -   *
 | 
| -   * [poolName] - The name of the replica pool for this request.
 | 
| -   *
 | 
| -   * Completes with a [Pool].
 | 
| -   *
 | 
| -   * Completes with a [common.ApiRequestError] if the API endpoint returned an
 | 
| -   * error.
 | 
| -   *
 | 
| -   * If the used [http.Client] completes with an error when making a REST call,
 | 
| -   * this method  will complete with the same error.
 | 
| -   */
 | 
| -  async.Future<Pool> get(core.String projectName, core.String zone, core.String poolName) {
 | 
| -    var _url = null;
 | 
| -    var _queryParams = new core.Map();
 | 
| -    var _uploadMedia = null;
 | 
| -    var _uploadOptions = null;
 | 
| -    var _downloadOptions = common.DownloadOptions.Metadata;
 | 
| -    var _body = null;
 | 
| -
 | 
| -    if (projectName == null) {
 | 
| -      throw new core.ArgumentError("Parameter projectName is required.");
 | 
| -    }
 | 
| -    if (zone == null) {
 | 
| -      throw new core.ArgumentError("Parameter zone is required.");
 | 
| -    }
 | 
| -    if (poolName == null) {
 | 
| -      throw new core.ArgumentError("Parameter poolName is required.");
 | 
| -    }
 | 
| -
 | 
| -
 | 
| -    _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + common_internal.Escaper.ecapeVariable('$zone') + '/pools/' + common_internal.Escaper.ecapeVariable('$poolName');
 | 
| -
 | 
| -    var _response = _requester.request(_url,
 | 
| -                                       "GET",
 | 
| -                                       body: _body,
 | 
| -                                       queryParams: _queryParams,
 | 
| -                                       uploadOptions: _uploadOptions,
 | 
| -                                       uploadMedia: _uploadMedia,
 | 
| -                                       downloadOptions: _downloadOptions);
 | 
| -    return _response.then((data) => new Pool.fromJson(data));
 | 
| -  }
 | 
| -
 | 
| -  /**
 | 
| -   * Inserts a new replica pool.
 | 
| -   *
 | 
| -   * [request] - The metadata request object.
 | 
| -   *
 | 
| -   * Request parameters:
 | 
| -   *
 | 
| -   * [projectName] - The project ID for this replica pool.
 | 
| -   *
 | 
| -   * [zone] - The zone for this replica pool.
 | 
| -   *
 | 
| -   * Completes with a [Pool].
 | 
| -   *
 | 
| -   * Completes with a [common.ApiRequestError] if the API endpoint returned an
 | 
| -   * error.
 | 
| -   *
 | 
| -   * If the used [http.Client] completes with an error when making a REST call,
 | 
| -   * this method  will complete with the same error.
 | 
| -   */
 | 
| -  async.Future<Pool> insert(Pool request, core.String projectName, core.String zone) {
 | 
| -    var _url = null;
 | 
| -    var _queryParams = new core.Map();
 | 
| -    var _uploadMedia = null;
 | 
| -    var _uploadOptions = null;
 | 
| -    var _downloadOptions = common.DownloadOptions.Metadata;
 | 
| -    var _body = null;
 | 
| -
 | 
| -    if (request != null) {
 | 
| -      _body = convert.JSON.encode((request).toJson());
 | 
| -    }
 | 
| -    if (projectName == null) {
 | 
| -      throw new core.ArgumentError("Parameter projectName is required.");
 | 
| -    }
 | 
| -    if (zone == null) {
 | 
| -      throw new core.ArgumentError("Parameter zone is required.");
 | 
| -    }
 | 
| -
 | 
| -
 | 
| -    _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + common_internal.Escaper.ecapeVariable('$zone') + '/pools';
 | 
| -
 | 
| -    var _response = _requester.request(_url,
 | 
| -                                       "POST",
 | 
| -                                       body: _body,
 | 
| -                                       queryParams: _queryParams,
 | 
| -                                       uploadOptions: _uploadOptions,
 | 
| -                                       uploadMedia: _uploadMedia,
 | 
| -                                       downloadOptions: _downloadOptions);
 | 
| -    return _response.then((data) => new Pool.fromJson(data));
 | 
| -  }
 | 
| -
 | 
| -  /**
 | 
| -   * List all replica pools.
 | 
| -   *
 | 
| -   * Request parameters:
 | 
| -   *
 | 
| -   * [projectName] - The project ID for this request.
 | 
| -   *
 | 
| -   * [zone] - The zone for this replica pool.
 | 
| -   *
 | 
| -   * [maxResults] - Maximum count of results to be returned. Acceptable values
 | 
| -   * are 0 to 100, inclusive. (Default: 50)
 | 
| -   * Value must be between "0" and "1000".
 | 
| -   *
 | 
| -   * [pageToken] - Set this to the nextPageToken value returned by a previous
 | 
| -   * list request to obtain the next page of results from the previous list
 | 
| -   * request.
 | 
| -   *
 | 
| -   * Completes with a [PoolsListResponse].
 | 
| -   *
 | 
| -   * Completes with a [common.ApiRequestError] if the API endpoint returned an
 | 
| -   * error.
 | 
| -   *
 | 
| -   * If the used [http.Client] completes with an error when making a REST call,
 | 
| -   * this method  will complete with the same error.
 | 
| -   */
 | 
| -  async.Future<PoolsListResponse> list(core.String projectName, core.String zone, {core.int maxResults, core.String pageToken}) {
 | 
| -    var _url = null;
 | 
| -    var _queryParams = new core.Map();
 | 
| -    var _uploadMedia = null;
 | 
| -    var _uploadOptions = null;
 | 
| -    var _downloadOptions = common.DownloadOptions.Metadata;
 | 
| -    var _body = null;
 | 
| -
 | 
| -    if (projectName == null) {
 | 
| -      throw new core.ArgumentError("Parameter projectName is required.");
 | 
| -    }
 | 
| -    if (zone == null) {
 | 
| -      throw new core.ArgumentError("Parameter zone is required.");
 | 
| -    }
 | 
| -    if (maxResults != null) {
 | 
| -      _queryParams["maxResults"] = ["${maxResults}"];
 | 
| -    }
 | 
| -    if (pageToken != null) {
 | 
| -      _queryParams["pageToken"] = [pageToken];
 | 
| -    }
 | 
| -
 | 
| -
 | 
| -    _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + common_internal.Escaper.ecapeVariable('$zone') + '/pools';
 | 
| -
 | 
| -    var _response = _requester.request(_url,
 | 
| -                                       "GET",
 | 
| -                                       body: _body,
 | 
| -                                       queryParams: _queryParams,
 | 
| -                                       uploadOptions: _uploadOptions,
 | 
| -                                       uploadMedia: _uploadMedia,
 | 
| -                                       downloadOptions: _downloadOptions);
 | 
| -    return _response.then((data) => new PoolsListResponse.fromJson(data));
 | 
| -  }
 | 
| -
 | 
| -  /**
 | 
| -   * Resize a pool. This is an asynchronous operation, and multiple overlapping
 | 
| -   * resize requests can be made. Replica Pools will use the information from
 | 
| -   * the last resize request.
 | 
| -   *
 | 
| -   * Request parameters:
 | 
| -   *
 | 
| -   * [projectName] - The project ID for this replica pool.
 | 
| -   *
 | 
| -   * [zone] - The zone for this replica pool.
 | 
| -   *
 | 
| -   * [poolName] - The name of the replica pool for this request.
 | 
| -   *
 | 
| -   * [numReplicas] - The desired number of replicas to resize to. If this number
 | 
| -   * is larger than the existing number of replicas, new replicas will be added.
 | 
| -   * If the number is smaller, then existing replicas will be deleted.
 | 
| -   *
 | 
| -   * Completes with a [Pool].
 | 
| -   *
 | 
| -   * Completes with a [common.ApiRequestError] if the API endpoint returned an
 | 
| -   * error.
 | 
| -   *
 | 
| -   * If the used [http.Client] completes with an error when making a REST call,
 | 
| -   * this method  will complete with the same error.
 | 
| -   */
 | 
| -  async.Future<Pool> resize(core.String projectName, core.String zone, core.String poolName, {core.int numReplicas}) {
 | 
| -    var _url = null;
 | 
| -    var _queryParams = new core.Map();
 | 
| -    var _uploadMedia = null;
 | 
| -    var _uploadOptions = null;
 | 
| -    var _downloadOptions = common.DownloadOptions.Metadata;
 | 
| -    var _body = null;
 | 
| -
 | 
| -    if (projectName == null) {
 | 
| -      throw new core.ArgumentError("Parameter projectName is required.");
 | 
| -    }
 | 
| -    if (zone == null) {
 | 
| -      throw new core.ArgumentError("Parameter zone is required.");
 | 
| -    }
 | 
| -    if (poolName == null) {
 | 
| -      throw new core.ArgumentError("Parameter poolName is required.");
 | 
| -    }
 | 
| -    if (numReplicas != null) {
 | 
| -      _queryParams["numReplicas"] = ["${numReplicas}"];
 | 
| -    }
 | 
| -
 | 
| -
 | 
| -    _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + common_internal.Escaper.ecapeVariable('$zone') + '/pools/' + common_internal.Escaper.ecapeVariable('$poolName') + '/resize';
 | 
| -
 | 
| -    var _response = _requester.request(_url,
 | 
| -                                       "POST",
 | 
| -                                       body: _body,
 | 
| -                                       queryParams: _queryParams,
 | 
| -                                       uploadOptions: _uploadOptions,
 | 
| -                                       uploadMedia: _uploadMedia,
 | 
| -                                       downloadOptions: _downloadOptions);
 | 
| -    return _response.then((data) => new Pool.fromJson(data));
 | 
| -  }
 | 
| -
 | 
| -  /**
 | 
| -   * Update the template used by the pool.
 | 
| -   *
 | 
| -   * [request] - The metadata request object.
 | 
| -   *
 | 
| -   * Request parameters:
 | 
| -   *
 | 
| -   * [projectName] - The project ID for this replica pool.
 | 
| -   *
 | 
| -   * [zone] - The zone for this replica pool.
 | 
| -   *
 | 
| -   * [poolName] - The name of the replica pool for this request.
 | 
| -   *
 | 
| -   * Completes with a [common.ApiRequestError] if the API endpoint returned an
 | 
| -   * error.
 | 
| -   *
 | 
| -   * If the used [http.Client] completes with an error when making a REST call,
 | 
| -   * this method  will complete with the same error.
 | 
| -   */
 | 
| -  async.Future updatetemplate(Template request, core.String projectName, core.String zone, core.String poolName) {
 | 
| -    var _url = null;
 | 
| -    var _queryParams = new core.Map();
 | 
| -    var _uploadMedia = null;
 | 
| -    var _uploadOptions = null;
 | 
| -    var _downloadOptions = common.DownloadOptions.Metadata;
 | 
| -    var _body = null;
 | 
| -
 | 
| -    if (request != null) {
 | 
| -      _body = convert.JSON.encode((request).toJson());
 | 
| -    }
 | 
| -    if (projectName == null) {
 | 
| -      throw new core.ArgumentError("Parameter projectName is required.");
 | 
| -    }
 | 
| -    if (zone == null) {
 | 
| -      throw new core.ArgumentError("Parameter zone is required.");
 | 
| -    }
 | 
| -    if (poolName == null) {
 | 
| -      throw new core.ArgumentError("Parameter poolName is required.");
 | 
| -    }
 | 
| -
 | 
| -    _downloadOptions = null;
 | 
| -
 | 
| -    _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + common_internal.Escaper.ecapeVariable('$zone') + '/pools/' + common_internal.Escaper.ecapeVariable('$poolName') + '/updateTemplate';
 | 
| -
 | 
| -    var _response = _requester.request(_url,
 | 
| -                                       "POST",
 | 
| -                                       body: _body,
 | 
| -                                       queryParams: _queryParams,
 | 
| -                                       uploadOptions: _uploadOptions,
 | 
| -                                       uploadMedia: _uploadMedia,
 | 
| -                                       downloadOptions: _downloadOptions);
 | 
| -    return _response.then((data) => null);
 | 
| -  }
 | 
| -
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/** Not documented yet. */
 | 
| -class ReplicasResourceApi {
 | 
| -  final common_internal.ApiRequester _requester;
 | 
| -
 | 
| -  ReplicasResourceApi(common_internal.ApiRequester client) : 
 | 
| -      _requester = client;
 | 
| -
 | 
| -  /**
 | 
| -   * Deletes a replica from the pool.
 | 
| -   *
 | 
| -   * [request] - The metadata request object.
 | 
| -   *
 | 
| -   * Request parameters:
 | 
| -   *
 | 
| -   * [projectName] - The project ID for this request.
 | 
| -   *
 | 
| -   * [zone] - The zone where the replica lives.
 | 
| -   *
 | 
| -   * [poolName] - The replica pool name for this request.
 | 
| -   *
 | 
| -   * [replicaName] - The name of the replica for this request.
 | 
| -   *
 | 
| -   * Completes with a [Replica].
 | 
| -   *
 | 
| -   * Completes with a [common.ApiRequestError] if the API endpoint returned an
 | 
| -   * error.
 | 
| -   *
 | 
| -   * If the used [http.Client] completes with an error when making a REST call,
 | 
| -   * this method  will complete with the same error.
 | 
| -   */
 | 
| -  async.Future<Replica> delete(ReplicasDeleteRequest request, core.String projectName, core.String zone, core.String poolName, core.String replicaName) {
 | 
| -    var _url = null;
 | 
| -    var _queryParams = new core.Map();
 | 
| -    var _uploadMedia = null;
 | 
| -    var _uploadOptions = null;
 | 
| -    var _downloadOptions = common.DownloadOptions.Metadata;
 | 
| -    var _body = null;
 | 
| -
 | 
| -    if (request != null) {
 | 
| -      _body = convert.JSON.encode((request).toJson());
 | 
| -    }
 | 
| -    if (projectName == null) {
 | 
| -      throw new core.ArgumentError("Parameter projectName is required.");
 | 
| -    }
 | 
| -    if (zone == null) {
 | 
| -      throw new core.ArgumentError("Parameter zone is required.");
 | 
| -    }
 | 
| -    if (poolName == null) {
 | 
| -      throw new core.ArgumentError("Parameter poolName is required.");
 | 
| -    }
 | 
| -    if (replicaName == null) {
 | 
| -      throw new core.ArgumentError("Parameter replicaName is required.");
 | 
| -    }
 | 
| -
 | 
| -
 | 
| -    _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + common_internal.Escaper.ecapeVariable('$zone') + '/pools/' + common_internal.Escaper.ecapeVariable('$poolName') + '/replicas/' + common_internal.Escaper.ecapeVariable('$replicaName');
 | 
| -
 | 
| -    var _response = _requester.request(_url,
 | 
| -                                       "POST",
 | 
| -                                       body: _body,
 | 
| -                                       queryParams: _queryParams,
 | 
| -                                       uploadOptions: _uploadOptions,
 | 
| -                                       uploadMedia: _uploadMedia,
 | 
| -                                       downloadOptions: _downloadOptions);
 | 
| -    return _response.then((data) => new Replica.fromJson(data));
 | 
| -  }
 | 
| -
 | 
| -  /**
 | 
| -   * Gets information about a specific replica.
 | 
| -   *
 | 
| -   * Request parameters:
 | 
| -   *
 | 
| -   * [projectName] - The project ID for this request.
 | 
| -   *
 | 
| -   * [zone] - The zone where the replica lives.
 | 
| -   *
 | 
| -   * [poolName] - The replica pool name for this request.
 | 
| -   *
 | 
| -   * [replicaName] - The name of the replica for this request.
 | 
| -   *
 | 
| -   * Completes with a [Replica].
 | 
| -   *
 | 
| -   * Completes with a [common.ApiRequestError] if the API endpoint returned an
 | 
| -   * error.
 | 
| -   *
 | 
| -   * If the used [http.Client] completes with an error when making a REST call,
 | 
| -   * this method  will complete with the same error.
 | 
| -   */
 | 
| -  async.Future<Replica> get(core.String projectName, core.String zone, core.String poolName, core.String replicaName) {
 | 
| -    var _url = null;
 | 
| -    var _queryParams = new core.Map();
 | 
| -    var _uploadMedia = null;
 | 
| -    var _uploadOptions = null;
 | 
| -    var _downloadOptions = common.DownloadOptions.Metadata;
 | 
| -    var _body = null;
 | 
| -
 | 
| -    if (projectName == null) {
 | 
| -      throw new core.ArgumentError("Parameter projectName is required.");
 | 
| -    }
 | 
| -    if (zone == null) {
 | 
| -      throw new core.ArgumentError("Parameter zone is required.");
 | 
| -    }
 | 
| -    if (poolName == null) {
 | 
| -      throw new core.ArgumentError("Parameter poolName is required.");
 | 
| -    }
 | 
| -    if (replicaName == null) {
 | 
| -      throw new core.ArgumentError("Parameter replicaName is required.");
 | 
| -    }
 | 
| -
 | 
| -
 | 
| -    _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + common_internal.Escaper.ecapeVariable('$zone') + '/pools/' + common_internal.Escaper.ecapeVariable('$poolName') + '/replicas/' + common_internal.Escaper.ecapeVariable('$replicaName');
 | 
| -
 | 
| -    var _response = _requester.request(_url,
 | 
| -                                       "GET",
 | 
| -                                       body: _body,
 | 
| -                                       queryParams: _queryParams,
 | 
| -                                       uploadOptions: _uploadOptions,
 | 
| -                                       uploadMedia: _uploadMedia,
 | 
| -                                       downloadOptions: _downloadOptions);
 | 
| -    return _response.then((data) => new Replica.fromJson(data));
 | 
| -  }
 | 
| -
 | 
| -  /**
 | 
| -   * Lists all replicas in a pool.
 | 
| -   *
 | 
| -   * Request parameters:
 | 
| -   *
 | 
| -   * [projectName] - The project ID for this request.
 | 
| -   *
 | 
| -   * [zone] - The zone where the replica pool lives.
 | 
| -   *
 | 
| -   * [poolName] - The replica pool name for this request.
 | 
| -   *
 | 
| -   * [maxResults] - Maximum count of results to be returned. Acceptable values
 | 
| -   * are 0 to 100, inclusive. (Default: 50)
 | 
| -   * Value must be between "0" and "1000".
 | 
| -   *
 | 
| -   * [pageToken] - Set this to the nextPageToken value returned by a previous
 | 
| -   * list request to obtain the next page of results from the previous list
 | 
| -   * request.
 | 
| -   *
 | 
| -   * Completes with a [ReplicasListResponse].
 | 
| -   *
 | 
| -   * Completes with a [common.ApiRequestError] if the API endpoint returned an
 | 
| -   * error.
 | 
| -   *
 | 
| -   * If the used [http.Client] completes with an error when making a REST call,
 | 
| -   * this method  will complete with the same error.
 | 
| -   */
 | 
| -  async.Future<ReplicasListResponse> list(core.String projectName, core.String zone, core.String poolName, {core.int maxResults, core.String pageToken}) {
 | 
| -    var _url = null;
 | 
| -    var _queryParams = new core.Map();
 | 
| -    var _uploadMedia = null;
 | 
| -    var _uploadOptions = null;
 | 
| -    var _downloadOptions = common.DownloadOptions.Metadata;
 | 
| -    var _body = null;
 | 
| -
 | 
| -    if (projectName == null) {
 | 
| -      throw new core.ArgumentError("Parameter projectName is required.");
 | 
| -    }
 | 
| -    if (zone == null) {
 | 
| -      throw new core.ArgumentError("Parameter zone is required.");
 | 
| -    }
 | 
| -    if (poolName == null) {
 | 
| -      throw new core.ArgumentError("Parameter poolName is required.");
 | 
| -    }
 | 
| -    if (maxResults != null) {
 | 
| -      _queryParams["maxResults"] = ["${maxResults}"];
 | 
| -    }
 | 
| -    if (pageToken != null) {
 | 
| -      _queryParams["pageToken"] = [pageToken];
 | 
| -    }
 | 
| -
 | 
| -
 | 
| -    _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + common_internal.Escaper.ecapeVariable('$zone') + '/pools/' + common_internal.Escaper.ecapeVariable('$poolName') + '/replicas';
 | 
| -
 | 
| -    var _response = _requester.request(_url,
 | 
| -                                       "GET",
 | 
| -                                       body: _body,
 | 
| -                                       queryParams: _queryParams,
 | 
| -                                       uploadOptions: _uploadOptions,
 | 
| -                                       uploadMedia: _uploadMedia,
 | 
| -                                       downloadOptions: _downloadOptions);
 | 
| -    return _response.then((data) => new ReplicasListResponse.fromJson(data));
 | 
| -  }
 | 
| -
 | 
| -  /**
 | 
| -   * Restarts a replica in a pool.
 | 
| -   *
 | 
| -   * Request parameters:
 | 
| -   *
 | 
| -   * [projectName] - The project ID for this request.
 | 
| -   *
 | 
| -   * [zone] - The zone where the replica lives.
 | 
| -   *
 | 
| -   * [poolName] - The replica pool name for this request.
 | 
| -   *
 | 
| -   * [replicaName] - The name of the replica for this request.
 | 
| -   *
 | 
| -   * Completes with a [Replica].
 | 
| -   *
 | 
| -   * Completes with a [common.ApiRequestError] if the API endpoint returned an
 | 
| -   * error.
 | 
| -   *
 | 
| -   * If the used [http.Client] completes with an error when making a REST call,
 | 
| -   * this method  will complete with the same error.
 | 
| -   */
 | 
| -  async.Future<Replica> restart(core.String projectName, core.String zone, core.String poolName, core.String replicaName) {
 | 
| -    var _url = null;
 | 
| -    var _queryParams = new core.Map();
 | 
| -    var _uploadMedia = null;
 | 
| -    var _uploadOptions = null;
 | 
| -    var _downloadOptions = common.DownloadOptions.Metadata;
 | 
| -    var _body = null;
 | 
| -
 | 
| -    if (projectName == null) {
 | 
| -      throw new core.ArgumentError("Parameter projectName is required.");
 | 
| -    }
 | 
| -    if (zone == null) {
 | 
| -      throw new core.ArgumentError("Parameter zone is required.");
 | 
| -    }
 | 
| -    if (poolName == null) {
 | 
| -      throw new core.ArgumentError("Parameter poolName is required.");
 | 
| -    }
 | 
| -    if (replicaName == null) {
 | 
| -      throw new core.ArgumentError("Parameter replicaName is required.");
 | 
| -    }
 | 
| -
 | 
| -
 | 
| -    _url = common_internal.Escaper.ecapeVariable('$projectName') + '/zones/' + common_internal.Escaper.ecapeVariable('$zone') + '/pools/' + common_internal.Escaper.ecapeVariable('$poolName') + '/replicas/' + common_internal.Escaper.ecapeVariable('$replicaName') + '/restart';
 | 
| -
 | 
| -    var _response = _requester.request(_url,
 | 
| -                                       "POST",
 | 
| -                                       body: _body,
 | 
| -                                       queryParams: _queryParams,
 | 
| -                                       uploadOptions: _uploadOptions,
 | 
| -                                       uploadMedia: _uploadMedia,
 | 
| -                                       downloadOptions: _downloadOptions);
 | 
| -    return _response.then((data) => new Replica.fromJson(data));
 | 
| -  }
 | 
| -
 | 
| -}
 | 
| -
 | 
| -
 | 
| -
 | 
| -/**
 | 
| - * A Compute Engine network accessConfig. Identical to the accessConfig on
 | 
| - * corresponding Compute Engine resource.
 | 
| - */
 | 
| -class AccessConfig {
 | 
| -  /** Name of this access configuration. */
 | 
| -  core.String name;
 | 
| -
 | 
| -  /** An external IP address associated with this instance. */
 | 
| -  core.String natIp;
 | 
| -
 | 
| -  /**
 | 
| -   * Type of this access configuration file. Currently only ONE_TO_ONE_NAT is
 | 
| -   * supported.
 | 
| -   */
 | 
| -  core.String type;
 | 
| -
 | 
| -
 | 
| -  AccessConfig();
 | 
| -
 | 
| -  AccessConfig.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("name")) {
 | 
| -      name = _json["name"];
 | 
| -    }
 | 
| -    if (_json.containsKey("natIp")) {
 | 
| -      natIp = _json["natIp"];
 | 
| -    }
 | 
| -    if (_json.containsKey("type")) {
 | 
| -      type = _json["type"];
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (name != null) {
 | 
| -      _json["name"] = name;
 | 
| -    }
 | 
| -    if (natIp != null) {
 | 
| -      _json["natIp"] = natIp;
 | 
| -    }
 | 
| -    if (type != null) {
 | 
| -      _json["type"] = type;
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/** An action that gets executed during initialization of the replicas. */
 | 
| -class Action {
 | 
| -  /**
 | 
| -   * A list of commands to run, one per line. If any command fails, the whole
 | 
| -   * action is considered a failure and no further actions are run. This also
 | 
| -   * marks the virtual machine or replica as a failure.
 | 
| -   */
 | 
| -  core.List<core.String> commands;
 | 
| -
 | 
| -  /**
 | 
| -   * A list of environment variables to use for the commands in this action.
 | 
| -   */
 | 
| -  core.List<EnvVariable> envVariables;
 | 
| -
 | 
| -  /**
 | 
| -   * If an action's commands on a particular replica do not finish in the
 | 
| -   * specified timeoutMilliSeconds, the replica is considered to be in a FAILING
 | 
| -   * state. No efforts are made to stop any processes that were spawned or
 | 
| -   * created as the result of running the action's commands. The default is the
 | 
| -   * max allowed value, 1 hour (i.e. 3600000 milliseconds).
 | 
| -   */
 | 
| -  core.int timeoutMilliSeconds;
 | 
| -
 | 
| -
 | 
| -  Action();
 | 
| -
 | 
| -  Action.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("commands")) {
 | 
| -      commands = _json["commands"];
 | 
| -    }
 | 
| -    if (_json.containsKey("envVariables")) {
 | 
| -      envVariables = _json["envVariables"].map((value) => new EnvVariable.fromJson(value)).toList();
 | 
| -    }
 | 
| -    if (_json.containsKey("timeoutMilliSeconds")) {
 | 
| -      timeoutMilliSeconds = _json["timeoutMilliSeconds"];
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (commands != null) {
 | 
| -      _json["commands"] = commands;
 | 
| -    }
 | 
| -    if (envVariables != null) {
 | 
| -      _json["envVariables"] = envVariables.map((value) => (value).toJson()).toList();
 | 
| -    }
 | 
| -    if (timeoutMilliSeconds != null) {
 | 
| -      _json["timeoutMilliSeconds"] = timeoutMilliSeconds;
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/** Specifies how to attach a disk to a Replica. */
 | 
| -class DiskAttachment {
 | 
| -  /** The device name of this disk. */
 | 
| -  core.String deviceName;
 | 
| -
 | 
| -  /**
 | 
| -   * A zero-based index to assign to this disk, where 0 is reserved for the boot
 | 
| -   * disk. If not specified, this is assigned by the server.
 | 
| -   */
 | 
| -  core.int index;
 | 
| -
 | 
| -
 | 
| -  DiskAttachment();
 | 
| -
 | 
| -  DiskAttachment.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("deviceName")) {
 | 
| -      deviceName = _json["deviceName"];
 | 
| -    }
 | 
| -    if (_json.containsKey("index")) {
 | 
| -      index = _json["index"];
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (deviceName != null) {
 | 
| -      _json["deviceName"] = deviceName;
 | 
| -    }
 | 
| -    if (index != null) {
 | 
| -      _json["index"] = index;
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/** An environment variable to set for an action. */
 | 
| -class EnvVariable {
 | 
| -  /** Deprecated, do not use. */
 | 
| -  core.bool hidden;
 | 
| -
 | 
| -  /** The name of the environment variable. */
 | 
| -  core.String name;
 | 
| -
 | 
| -  /** The value of the variable. */
 | 
| -  core.String value;
 | 
| -
 | 
| -
 | 
| -  EnvVariable();
 | 
| -
 | 
| -  EnvVariable.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("hidden")) {
 | 
| -      hidden = _json["hidden"];
 | 
| -    }
 | 
| -    if (_json.containsKey("name")) {
 | 
| -      name = _json["name"];
 | 
| -    }
 | 
| -    if (_json.containsKey("value")) {
 | 
| -      value = _json["value"];
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (hidden != null) {
 | 
| -      _json["hidden"] = hidden;
 | 
| -    }
 | 
| -    if (name != null) {
 | 
| -      _json["name"] = name;
 | 
| -    }
 | 
| -    if (value != null) {
 | 
| -      _json["value"] = value;
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/**
 | 
| - * A pre-existing persistent disk that will be attached to every Replica in the
 | 
| - * Pool in READ_ONLY mode.
 | 
| - */
 | 
| -class ExistingDisk {
 | 
| -  /** How the disk will be attached to the Replica. */
 | 
| -  DiskAttachment attachment;
 | 
| -
 | 
| -  /**
 | 
| -   * The name of the Persistent Disk resource. The Persistent Disk resource must
 | 
| -   * be in the same zone as the Pool.
 | 
| -   */
 | 
| -  core.String source;
 | 
| -
 | 
| -
 | 
| -  ExistingDisk();
 | 
| -
 | 
| -  ExistingDisk.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("attachment")) {
 | 
| -      attachment = new DiskAttachment.fromJson(_json["attachment"]);
 | 
| -    }
 | 
| -    if (_json.containsKey("source")) {
 | 
| -      source = _json["source"];
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (attachment != null) {
 | 
| -      _json["attachment"] = (attachment).toJson();
 | 
| -    }
 | 
| -    if (source != null) {
 | 
| -      _json["source"] = source;
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/** Not documented yet. */
 | 
| -class HealthCheck {
 | 
| -  /**
 | 
| -   * How often (in seconds) to make HTTP requests for this healthcheck. The
 | 
| -   * default value is 5 seconds.
 | 
| -   */
 | 
| -  core.int checkIntervalSec;
 | 
| -
 | 
| -  /** The description for this health check. */
 | 
| -  core.String description;
 | 
| -
 | 
| -  /**
 | 
| -   * The number of consecutive health check requests that need to succeed before
 | 
| -   * the replica is considered healthy again. The default value is 2.
 | 
| -   */
 | 
| -  core.int healthyThreshold;
 | 
| -
 | 
| -  /**
 | 
| -   * The value of the host header in the HTTP health check request. If left
 | 
| -   * empty (default value), the localhost IP 127.0.0.1 will be used.
 | 
| -   */
 | 
| -  core.String host;
 | 
| -
 | 
| -  /** The name of this health check. */
 | 
| -  core.String name;
 | 
| -
 | 
| -  /**
 | 
| -   * The localhost request path to send this health check, in the format
 | 
| -   * /path/to/use. For example, /healthcheck.
 | 
| -   */
 | 
| -  core.String path;
 | 
| -
 | 
| -  /** The TCP port for the health check requests. */
 | 
| -  core.int port;
 | 
| -
 | 
| -  /**
 | 
| -   * How long (in seconds) to wait before a timeout failure for this
 | 
| -   * healthcheck. The default value is 5 seconds.
 | 
| -   */
 | 
| -  core.int timeoutSec;
 | 
| -
 | 
| -  /**
 | 
| -   * The number of consecutive health check requests that need to fail in order
 | 
| -   * to consider the replica unhealthy. The default value is 2.
 | 
| -   */
 | 
| -  core.int unhealthyThreshold;
 | 
| -
 | 
| -
 | 
| -  HealthCheck();
 | 
| -
 | 
| -  HealthCheck.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("checkIntervalSec")) {
 | 
| -      checkIntervalSec = _json["checkIntervalSec"];
 | 
| -    }
 | 
| -    if (_json.containsKey("description")) {
 | 
| -      description = _json["description"];
 | 
| -    }
 | 
| -    if (_json.containsKey("healthyThreshold")) {
 | 
| -      healthyThreshold = _json["healthyThreshold"];
 | 
| -    }
 | 
| -    if (_json.containsKey("host")) {
 | 
| -      host = _json["host"];
 | 
| -    }
 | 
| -    if (_json.containsKey("name")) {
 | 
| -      name = _json["name"];
 | 
| -    }
 | 
| -    if (_json.containsKey("path")) {
 | 
| -      path = _json["path"];
 | 
| -    }
 | 
| -    if (_json.containsKey("port")) {
 | 
| -      port = _json["port"];
 | 
| -    }
 | 
| -    if (_json.containsKey("timeoutSec")) {
 | 
| -      timeoutSec = _json["timeoutSec"];
 | 
| -    }
 | 
| -    if (_json.containsKey("unhealthyThreshold")) {
 | 
| -      unhealthyThreshold = _json["unhealthyThreshold"];
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (checkIntervalSec != null) {
 | 
| -      _json["checkIntervalSec"] = checkIntervalSec;
 | 
| -    }
 | 
| -    if (description != null) {
 | 
| -      _json["description"] = description;
 | 
| -    }
 | 
| -    if (healthyThreshold != null) {
 | 
| -      _json["healthyThreshold"] = healthyThreshold;
 | 
| -    }
 | 
| -    if (host != null) {
 | 
| -      _json["host"] = host;
 | 
| -    }
 | 
| -    if (name != null) {
 | 
| -      _json["name"] = name;
 | 
| -    }
 | 
| -    if (path != null) {
 | 
| -      _json["path"] = path;
 | 
| -    }
 | 
| -    if (port != null) {
 | 
| -      _json["port"] = port;
 | 
| -    }
 | 
| -    if (timeoutSec != null) {
 | 
| -      _json["timeoutSec"] = timeoutSec;
 | 
| -    }
 | 
| -    if (unhealthyThreshold != null) {
 | 
| -      _json["unhealthyThreshold"] = unhealthyThreshold;
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/** A label to apply to this replica pool. */
 | 
| -class Label {
 | 
| -  /** The key for this label. */
 | 
| -  core.String key;
 | 
| -
 | 
| -  /** The value of this label. */
 | 
| -  core.String value;
 | 
| -
 | 
| -
 | 
| -  Label();
 | 
| -
 | 
| -  Label.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("key")) {
 | 
| -      key = _json["key"];
 | 
| -    }
 | 
| -    if (_json.containsKey("value")) {
 | 
| -      value = _json["value"];
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (key != null) {
 | 
| -      _json["key"] = key;
 | 
| -    }
 | 
| -    if (value != null) {
 | 
| -      _json["value"] = value;
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/**
 | 
| - * A Compute Engine metadata entry. Identical to the metadata on the
 | 
| - * corresponding Compute Engine resource.
 | 
| - */
 | 
| -class Metadata {
 | 
| -  /**
 | 
| -   * The fingerprint of the metadata. Required for updating the metadata entries
 | 
| -   * for this instance.
 | 
| -   */
 | 
| -  core.String fingerPrint;
 | 
| -
 | 
| -  /** A list of metadata items. */
 | 
| -  core.List<MetadataItem> items;
 | 
| -
 | 
| -
 | 
| -  Metadata();
 | 
| -
 | 
| -  Metadata.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("fingerPrint")) {
 | 
| -      fingerPrint = _json["fingerPrint"];
 | 
| -    }
 | 
| -    if (_json.containsKey("items")) {
 | 
| -      items = _json["items"].map((value) => new MetadataItem.fromJson(value)).toList();
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (fingerPrint != null) {
 | 
| -      _json["fingerPrint"] = fingerPrint;
 | 
| -    }
 | 
| -    if (items != null) {
 | 
| -      _json["items"] = items.map((value) => (value).toJson()).toList();
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/**
 | 
| - * A Compute Engine metadata item, defined as a key:value pair. Identical to the
 | 
| - * metadata on the corresponding Compute Engine resource.
 | 
| - */
 | 
| -class MetadataItem {
 | 
| -  /** A metadata key. */
 | 
| -  core.String key;
 | 
| -
 | 
| -  /** A metadata value. */
 | 
| -  core.String value;
 | 
| -
 | 
| -
 | 
| -  MetadataItem();
 | 
| -
 | 
| -  MetadataItem.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("key")) {
 | 
| -      key = _json["key"];
 | 
| -    }
 | 
| -    if (_json.containsKey("value")) {
 | 
| -      value = _json["value"];
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (key != null) {
 | 
| -      _json["key"] = key;
 | 
| -    }
 | 
| -    if (value != null) {
 | 
| -      _json["value"] = value;
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/**
 | 
| - * A Compute Engine NetworkInterface resource. Identical to the NetworkInterface
 | 
| - * on the corresponding Compute Engine resource.
 | 
| - */
 | 
| -class NetworkInterface {
 | 
| -  /**
 | 
| -   * An array of configurations for this interface. This specifies how this
 | 
| -   * interface is configured to interact with other network services.
 | 
| -   */
 | 
| -  core.List<AccessConfig> accessConfigs;
 | 
| -
 | 
| -  /** Name the Network resource to which this interface applies. */
 | 
| -  core.String network;
 | 
| -
 | 
| -  /**
 | 
| -   * An optional IPV4 internal network address to assign to the instance for
 | 
| -   * this network interface.
 | 
| -   */
 | 
| -  core.String networkIp;
 | 
| -
 | 
| -
 | 
| -  NetworkInterface();
 | 
| -
 | 
| -  NetworkInterface.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("accessConfigs")) {
 | 
| -      accessConfigs = _json["accessConfigs"].map((value) => new AccessConfig.fromJson(value)).toList();
 | 
| -    }
 | 
| -    if (_json.containsKey("network")) {
 | 
| -      network = _json["network"];
 | 
| -    }
 | 
| -    if (_json.containsKey("networkIp")) {
 | 
| -      networkIp = _json["networkIp"];
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (accessConfigs != null) {
 | 
| -      _json["accessConfigs"] = accessConfigs.map((value) => (value).toJson()).toList();
 | 
| -    }
 | 
| -    if (network != null) {
 | 
| -      _json["network"] = network;
 | 
| -    }
 | 
| -    if (networkIp != null) {
 | 
| -      _json["networkIp"] = networkIp;
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/**
 | 
| - * A Persistent Disk resource that will be created and attached to each Replica
 | 
| - * in the Pool. Each Replica will have a unique persistent disk that is created
 | 
| - * and attached to that Replica in READ_WRITE mode.
 | 
| - */
 | 
| -class NewDisk {
 | 
| -  /** How the disk will be attached to the Replica. */
 | 
| -  DiskAttachment attachment;
 | 
| -
 | 
| -  /**
 | 
| -   * If true, then this disk will be deleted when the instance is deleted. The
 | 
| -   * default value is true.
 | 
| -   */
 | 
| -  core.bool autoDelete;
 | 
| -
 | 
| -  /** If true, indicates that this is the root persistent disk. */
 | 
| -  core.bool boot;
 | 
| -
 | 
| -  /**
 | 
| -   * Create the new disk using these parameters. The name of the disk will be
 | 
| -   * <instance_name>-<four_random_charactersgt;.
 | 
| -   */
 | 
| -  NewDiskInitializeParams initializeParams;
 | 
| -
 | 
| -
 | 
| -  NewDisk();
 | 
| -
 | 
| -  NewDisk.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("attachment")) {
 | 
| -      attachment = new DiskAttachment.fromJson(_json["attachment"]);
 | 
| -    }
 | 
| -    if (_json.containsKey("autoDelete")) {
 | 
| -      autoDelete = _json["autoDelete"];
 | 
| -    }
 | 
| -    if (_json.containsKey("boot")) {
 | 
| -      boot = _json["boot"];
 | 
| -    }
 | 
| -    if (_json.containsKey("initializeParams")) {
 | 
| -      initializeParams = new NewDiskInitializeParams.fromJson(_json["initializeParams"]);
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (attachment != null) {
 | 
| -      _json["attachment"] = (attachment).toJson();
 | 
| -    }
 | 
| -    if (autoDelete != null) {
 | 
| -      _json["autoDelete"] = autoDelete;
 | 
| -    }
 | 
| -    if (boot != null) {
 | 
| -      _json["boot"] = boot;
 | 
| -    }
 | 
| -    if (initializeParams != null) {
 | 
| -      _json["initializeParams"] = (initializeParams).toJson();
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/** Initialization parameters for creating a new disk. */
 | 
| -class NewDiskInitializeParams {
 | 
| -  /** The size of the created disk in gigabytes. */
 | 
| -  core.String diskSizeGb;
 | 
| -
 | 
| -  /**
 | 
| -   * Name of the disk type resource describing which disk type to use to create
 | 
| -   * the disk. For example 'pd-ssd' or 'pd-standard'. Default is 'pd-standard'
 | 
| -   */
 | 
| -  core.String diskType;
 | 
| -
 | 
| -  /**
 | 
| -   * The name or fully-qualified URL of a source image to use to create this
 | 
| -   * disk. If you provide a name of the source image, Replica Pool will look for
 | 
| -   * an image with that name in your project. If you are specifying an image
 | 
| -   * provided by Compute Engine, you will need to provide the full URL with the
 | 
| -   * correct project, such as:
 | 
| -   * http://www.googleapis.com/compute/v1/projects/debian-cloud/
 | 
| -   * global/images/debian-wheezy-7-vYYYYMMDD
 | 
| -   */
 | 
| -  core.String sourceImage;
 | 
| -
 | 
| -
 | 
| -  NewDiskInitializeParams();
 | 
| -
 | 
| -  NewDiskInitializeParams.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("diskSizeGb")) {
 | 
| -      diskSizeGb = _json["diskSizeGb"];
 | 
| -    }
 | 
| -    if (_json.containsKey("diskType")) {
 | 
| -      diskType = _json["diskType"];
 | 
| -    }
 | 
| -    if (_json.containsKey("sourceImage")) {
 | 
| -      sourceImage = _json["sourceImage"];
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (diskSizeGb != null) {
 | 
| -      _json["diskSizeGb"] = diskSizeGb;
 | 
| -    }
 | 
| -    if (diskType != null) {
 | 
| -      _json["diskType"] = diskType;
 | 
| -    }
 | 
| -    if (sourceImage != null) {
 | 
| -      _json["sourceImage"] = sourceImage;
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/** Not documented yet. */
 | 
| -class Pool {
 | 
| -  /**
 | 
| -   * Whether replicas in this pool should be restarted if they experience a
 | 
| -   * failure. The default value is true.
 | 
| -   */
 | 
| -  core.bool autoRestart;
 | 
| -
 | 
| -  /**
 | 
| -   * The base instance name to use for the replicas in this pool. This must
 | 
| -   * match the regex [a-z]([-a-z0-9]*[a-z0-9])?. If specified, the instances in
 | 
| -   * this replica pool will be named in the format <base-instance-name>-<ID>.
 | 
| -   * The <ID> postfix will be a four character alphanumeric identifier generated
 | 
| -   * by the service.
 | 
| -   *
 | 
| -   * If this is not specified by the user, a random base instance name is
 | 
| -   * generated by the service.
 | 
| -   */
 | 
| -  core.String baseInstanceName;
 | 
| -
 | 
| -  /** [Output Only] The current number of replicas in the pool. */
 | 
| -  core.int currentNumReplicas;
 | 
| -
 | 
| -  /** An optional description of the replica pool. */
 | 
| -  core.String description;
 | 
| -
 | 
| -  /** Deprecated. Please use template[].healthChecks instead. */
 | 
| -  core.List<HealthCheck> healthChecks;
 | 
| -
 | 
| -  /**
 | 
| -   * The initial number of replicas this pool should have. You must provide a
 | 
| -   * value greater than or equal to 0.
 | 
| -   */
 | 
| -  core.int initialNumReplicas;
 | 
| -
 | 
| -  /**
 | 
| -   * A list of labels to attach to this replica pool and all created virtual
 | 
| -   * machines in this replica pool.
 | 
| -   */
 | 
| -  core.List<Label> labels;
 | 
| -
 | 
| -  /**
 | 
| -   * The name of the replica pool. Must follow the regex
 | 
| -   * [a-z]([-a-z0-9]*[a-z0-9])? and be 1-28 characters long.
 | 
| -   */
 | 
| -  core.String name;
 | 
| -
 | 
| -  /** Deprecated! Use initial_num_replicas instead. */
 | 
| -  core.int numReplicas;
 | 
| -
 | 
| -  /**
 | 
| -   * The list of resource views that should be updated with all the replicas
 | 
| -   * that are managed by this pool.
 | 
| -   */
 | 
| -  core.List<core.String> resourceViews;
 | 
| -
 | 
| -  /** [Output Only] A self-link to the replica pool. */
 | 
| -  core.String selfLink;
 | 
| -
 | 
| -  /** Deprecated, please use target_pools instead. */
 | 
| -  core.String targetPool;
 | 
| -
 | 
| -  /**
 | 
| -   * A list of target pools to update with the replicas that are managed by this
 | 
| -   * pool. If specified, the replicas in this replica pool will be added to the
 | 
| -   * specified target pools for load balancing purposes. The replica pool must
 | 
| -   * live in the same region as the specified target pools. These values must be
 | 
| -   * the target pool resource names, and not fully qualified URLs.
 | 
| -   */
 | 
| -  core.List<core.String> targetPools;
 | 
| -
 | 
| -  /**
 | 
| -   * The template to use when creating replicas in this pool. This template is
 | 
| -   * used during initial instance creation of the pool, when growing the pool in
 | 
| -   * size, or when a replica restarts.
 | 
| -   */
 | 
| -  Template template;
 | 
| -
 | 
| -  /** Deprecated! Do not set. */
 | 
| -  core.String type;
 | 
| -
 | 
| -
 | 
| -  Pool();
 | 
| -
 | 
| -  Pool.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("autoRestart")) {
 | 
| -      autoRestart = _json["autoRestart"];
 | 
| -    }
 | 
| -    if (_json.containsKey("baseInstanceName")) {
 | 
| -      baseInstanceName = _json["baseInstanceName"];
 | 
| -    }
 | 
| -    if (_json.containsKey("currentNumReplicas")) {
 | 
| -      currentNumReplicas = _json["currentNumReplicas"];
 | 
| -    }
 | 
| -    if (_json.containsKey("description")) {
 | 
| -      description = _json["description"];
 | 
| -    }
 | 
| -    if (_json.containsKey("healthChecks")) {
 | 
| -      healthChecks = _json["healthChecks"].map((value) => new HealthCheck.fromJson(value)).toList();
 | 
| -    }
 | 
| -    if (_json.containsKey("initialNumReplicas")) {
 | 
| -      initialNumReplicas = _json["initialNumReplicas"];
 | 
| -    }
 | 
| -    if (_json.containsKey("labels")) {
 | 
| -      labels = _json["labels"].map((value) => new Label.fromJson(value)).toList();
 | 
| -    }
 | 
| -    if (_json.containsKey("name")) {
 | 
| -      name = _json["name"];
 | 
| -    }
 | 
| -    if (_json.containsKey("numReplicas")) {
 | 
| -      numReplicas = _json["numReplicas"];
 | 
| -    }
 | 
| -    if (_json.containsKey("resourceViews")) {
 | 
| -      resourceViews = _json["resourceViews"];
 | 
| -    }
 | 
| -    if (_json.containsKey("selfLink")) {
 | 
| -      selfLink = _json["selfLink"];
 | 
| -    }
 | 
| -    if (_json.containsKey("targetPool")) {
 | 
| -      targetPool = _json["targetPool"];
 | 
| -    }
 | 
| -    if (_json.containsKey("targetPools")) {
 | 
| -      targetPools = _json["targetPools"];
 | 
| -    }
 | 
| -    if (_json.containsKey("template")) {
 | 
| -      template = new Template.fromJson(_json["template"]);
 | 
| -    }
 | 
| -    if (_json.containsKey("type")) {
 | 
| -      type = _json["type"];
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (autoRestart != null) {
 | 
| -      _json["autoRestart"] = autoRestart;
 | 
| -    }
 | 
| -    if (baseInstanceName != null) {
 | 
| -      _json["baseInstanceName"] = baseInstanceName;
 | 
| -    }
 | 
| -    if (currentNumReplicas != null) {
 | 
| -      _json["currentNumReplicas"] = currentNumReplicas;
 | 
| -    }
 | 
| -    if (description != null) {
 | 
| -      _json["description"] = description;
 | 
| -    }
 | 
| -    if (healthChecks != null) {
 | 
| -      _json["healthChecks"] = healthChecks.map((value) => (value).toJson()).toList();
 | 
| -    }
 | 
| -    if (initialNumReplicas != null) {
 | 
| -      _json["initialNumReplicas"] = initialNumReplicas;
 | 
| -    }
 | 
| -    if (labels != null) {
 | 
| -      _json["labels"] = labels.map((value) => (value).toJson()).toList();
 | 
| -    }
 | 
| -    if (name != null) {
 | 
| -      _json["name"] = name;
 | 
| -    }
 | 
| -    if (numReplicas != null) {
 | 
| -      _json["numReplicas"] = numReplicas;
 | 
| -    }
 | 
| -    if (resourceViews != null) {
 | 
| -      _json["resourceViews"] = resourceViews;
 | 
| -    }
 | 
| -    if (selfLink != null) {
 | 
| -      _json["selfLink"] = selfLink;
 | 
| -    }
 | 
| -    if (targetPool != null) {
 | 
| -      _json["targetPool"] = targetPool;
 | 
| -    }
 | 
| -    if (targetPools != null) {
 | 
| -      _json["targetPools"] = targetPools;
 | 
| -    }
 | 
| -    if (template != null) {
 | 
| -      _json["template"] = (template).toJson();
 | 
| -    }
 | 
| -    if (type != null) {
 | 
| -      _json["type"] = type;
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/** Not documented yet. */
 | 
| -class PoolsDeleteRequest {
 | 
| -  /**
 | 
| -   * If there are instances you would like to keep, you can specify them here.
 | 
| -   * These instances won't be deleted, but the associated replica objects will
 | 
| -   * be removed.
 | 
| -   */
 | 
| -  core.List<core.String> abandonInstances;
 | 
| -
 | 
| -
 | 
| -  PoolsDeleteRequest();
 | 
| -
 | 
| -  PoolsDeleteRequest.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("abandonInstances")) {
 | 
| -      abandonInstances = _json["abandonInstances"];
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (abandonInstances != null) {
 | 
| -      _json["abandonInstances"] = abandonInstances;
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/** Not documented yet. */
 | 
| -class PoolsListResponse {
 | 
| -  /** Not documented yet. */
 | 
| -  core.String nextPageToken;
 | 
| -
 | 
| -  /** Not documented yet. */
 | 
| -  core.List<Pool> resources;
 | 
| -
 | 
| -
 | 
| -  PoolsListResponse();
 | 
| -
 | 
| -  PoolsListResponse.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("nextPageToken")) {
 | 
| -      nextPageToken = _json["nextPageToken"];
 | 
| -    }
 | 
| -    if (_json.containsKey("resources")) {
 | 
| -      resources = _json["resources"].map((value) => new Pool.fromJson(value)).toList();
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (nextPageToken != null) {
 | 
| -      _json["nextPageToken"] = nextPageToken;
 | 
| -    }
 | 
| -    if (resources != null) {
 | 
| -      _json["resources"] = resources.map((value) => (value).toJson()).toList();
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/**
 | 
| - * An individual Replica within a Pool. Replicas are automatically created by
 | 
| - * the replica pool, using the template provided by the user. You cannot
 | 
| - * directly create replicas.
 | 
| - */
 | 
| -class Replica {
 | 
| -  /** [Output Only] The name of the Replica object. */
 | 
| -  core.String name;
 | 
| -
 | 
| -  /** [Output Only] The self-link of the Replica. */
 | 
| -  core.String selfLink;
 | 
| -
 | 
| -  /** [Output Only] Last known status of the Replica. */
 | 
| -  ReplicaStatus status;
 | 
| -
 | 
| -
 | 
| -  Replica();
 | 
| -
 | 
| -  Replica.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("name")) {
 | 
| -      name = _json["name"];
 | 
| -    }
 | 
| -    if (_json.containsKey("selfLink")) {
 | 
| -      selfLink = _json["selfLink"];
 | 
| -    }
 | 
| -    if (_json.containsKey("status")) {
 | 
| -      status = new ReplicaStatus.fromJson(_json["status"]);
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (name != null) {
 | 
| -      _json["name"] = name;
 | 
| -    }
 | 
| -    if (selfLink != null) {
 | 
| -      _json["selfLink"] = selfLink;
 | 
| -    }
 | 
| -    if (status != null) {
 | 
| -      _json["status"] = (status).toJson();
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/** The current status of a Replica. */
 | 
| -class ReplicaStatus {
 | 
| -  /**
 | 
| -   * [Output Only] Human-readable details about the current state of the replica
 | 
| -   */
 | 
| -  core.String details;
 | 
| -
 | 
| -  /** [Output Only] The state of the Replica. */
 | 
| -  core.String state;
 | 
| -
 | 
| -  /** [Output Only] The template used to build the replica. */
 | 
| -  core.String templateVersion;
 | 
| -
 | 
| -  /**
 | 
| -   * [Output Only] Link to the virtual machine that this Replica represents.
 | 
| -   */
 | 
| -  core.String vmLink;
 | 
| -
 | 
| -  /**
 | 
| -   * [Output Only] The time that this Replica got to the RUNNING state, in RFC
 | 
| -   * 3339 format. If the start time is unknown, UNKNOWN is returned.
 | 
| -   */
 | 
| -  core.String vmStartTime;
 | 
| -
 | 
| -
 | 
| -  ReplicaStatus();
 | 
| -
 | 
| -  ReplicaStatus.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("details")) {
 | 
| -      details = _json["details"];
 | 
| -    }
 | 
| -    if (_json.containsKey("state")) {
 | 
| -      state = _json["state"];
 | 
| -    }
 | 
| -    if (_json.containsKey("templateVersion")) {
 | 
| -      templateVersion = _json["templateVersion"];
 | 
| -    }
 | 
| -    if (_json.containsKey("vmLink")) {
 | 
| -      vmLink = _json["vmLink"];
 | 
| -    }
 | 
| -    if (_json.containsKey("vmStartTime")) {
 | 
| -      vmStartTime = _json["vmStartTime"];
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (details != null) {
 | 
| -      _json["details"] = details;
 | 
| -    }
 | 
| -    if (state != null) {
 | 
| -      _json["state"] = state;
 | 
| -    }
 | 
| -    if (templateVersion != null) {
 | 
| -      _json["templateVersion"] = templateVersion;
 | 
| -    }
 | 
| -    if (vmLink != null) {
 | 
| -      _json["vmLink"] = vmLink;
 | 
| -    }
 | 
| -    if (vmStartTime != null) {
 | 
| -      _json["vmStartTime"] = vmStartTime;
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/** Not documented yet. */
 | 
| -class ReplicasDeleteRequest {
 | 
| -  /**
 | 
| -   * Whether the instance resource represented by this replica should be deleted
 | 
| -   * or abandoned. If abandoned, the replica will be deleted but the virtual
 | 
| -   * machine instance will remain. By default, this is set to false and the
 | 
| -   * instance will be deleted along with the replica.
 | 
| -   */
 | 
| -  core.bool abandonInstance;
 | 
| -
 | 
| -
 | 
| -  ReplicasDeleteRequest();
 | 
| -
 | 
| -  ReplicasDeleteRequest.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("abandonInstance")) {
 | 
| -      abandonInstance = _json["abandonInstance"];
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (abandonInstance != null) {
 | 
| -      _json["abandonInstance"] = abandonInstance;
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/** Not documented yet. */
 | 
| -class ReplicasListResponse {
 | 
| -  /** Not documented yet. */
 | 
| -  core.String nextPageToken;
 | 
| -
 | 
| -  /** Not documented yet. */
 | 
| -  core.List<Replica> resources;
 | 
| -
 | 
| -
 | 
| -  ReplicasListResponse();
 | 
| -
 | 
| -  ReplicasListResponse.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("nextPageToken")) {
 | 
| -      nextPageToken = _json["nextPageToken"];
 | 
| -    }
 | 
| -    if (_json.containsKey("resources")) {
 | 
| -      resources = _json["resources"].map((value) => new Replica.fromJson(value)).toList();
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (nextPageToken != null) {
 | 
| -      _json["nextPageToken"] = nextPageToken;
 | 
| -    }
 | 
| -    if (resources != null) {
 | 
| -      _json["resources"] = resources.map((value) => (value).toJson()).toList();
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/**
 | 
| - * A Compute Engine service account, identical to the Compute Engine resource.
 | 
| - */
 | 
| -class ServiceAccount {
 | 
| -  /**
 | 
| -   * The service account email address, for example:
 | 
| -   * 123845678986@project.gserviceaccount.com
 | 
| -   */
 | 
| -  core.String email;
 | 
| -
 | 
| -  /**
 | 
| -   * The list of OAuth2 scopes to obtain for the service account, for example:
 | 
| -   * https://www.googleapis.com/auth/devstorage.full_control
 | 
| -   */
 | 
| -  core.List<core.String> scopes;
 | 
| -
 | 
| -
 | 
| -  ServiceAccount();
 | 
| -
 | 
| -  ServiceAccount.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("email")) {
 | 
| -      email = _json["email"];
 | 
| -    }
 | 
| -    if (_json.containsKey("scopes")) {
 | 
| -      scopes = _json["scopes"];
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (email != null) {
 | 
| -      _json["email"] = email;
 | 
| -    }
 | 
| -    if (scopes != null) {
 | 
| -      _json["scopes"] = scopes;
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/**
 | 
| - * A Compute Engine Instance tag, identical to the tags on the corresponding
 | 
| - * Compute Engine Instance resource.
 | 
| - */
 | 
| -class Tag {
 | 
| -  /** The fingerprint of the tag. Required for updating the list of tags. */
 | 
| -  core.String fingerPrint;
 | 
| -
 | 
| -  /** Items contained in this tag. */
 | 
| -  core.List<core.String> items;
 | 
| -
 | 
| -
 | 
| -  Tag();
 | 
| -
 | 
| -  Tag.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("fingerPrint")) {
 | 
| -      fingerPrint = _json["fingerPrint"];
 | 
| -    }
 | 
| -    if (_json.containsKey("items")) {
 | 
| -      items = _json["items"];
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (fingerPrint != null) {
 | 
| -      _json["fingerPrint"] = fingerPrint;
 | 
| -    }
 | 
| -    if (items != null) {
 | 
| -      _json["items"] = items;
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/** The template used for creating replicas in the pool. */
 | 
| -class Template {
 | 
| -  /**
 | 
| -   * An action to run during initialization of your replicas. An action is run
 | 
| -   * as shell commands which are executed one after the other in the same bash
 | 
| -   * shell, so any state established by one command is inherited by later
 | 
| -   * commands.
 | 
| -   */
 | 
| -  Action action;
 | 
| -
 | 
| -  /**
 | 
| -   * A list of HTTP Health Checks to configure for this replica pool and all
 | 
| -   * virtual machines in this replica pool.
 | 
| -   */
 | 
| -  core.List<HealthCheck> healthChecks;
 | 
| -
 | 
| -  /**
 | 
| -   * A free-form string describing the version of this template. You can provide
 | 
| -   * any versioning string you would like. For example, version1 or template-v1.
 | 
| -   */
 | 
| -  core.String version;
 | 
| -
 | 
| -  /**
 | 
| -   * The virtual machine parameters to use for creating replicas. You can define
 | 
| -   * settings such as the machine type and the image of replicas in this pool.
 | 
| -   * This is required if replica type is SMART_VM.
 | 
| -   */
 | 
| -  VmParams vmParams;
 | 
| -
 | 
| -
 | 
| -  Template();
 | 
| -
 | 
| -  Template.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("action")) {
 | 
| -      action = new Action.fromJson(_json["action"]);
 | 
| -    }
 | 
| -    if (_json.containsKey("healthChecks")) {
 | 
| -      healthChecks = _json["healthChecks"].map((value) => new HealthCheck.fromJson(value)).toList();
 | 
| -    }
 | 
| -    if (_json.containsKey("version")) {
 | 
| -      version = _json["version"];
 | 
| -    }
 | 
| -    if (_json.containsKey("vmParams")) {
 | 
| -      vmParams = new VmParams.fromJson(_json["vmParams"]);
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (action != null) {
 | 
| -      _json["action"] = (action).toJson();
 | 
| -    }
 | 
| -    if (healthChecks != null) {
 | 
| -      _json["healthChecks"] = healthChecks.map((value) => (value).toJson()).toList();
 | 
| -    }
 | 
| -    if (version != null) {
 | 
| -      _json["version"] = version;
 | 
| -    }
 | 
| -    if (vmParams != null) {
 | 
| -      _json["vmParams"] = (vmParams).toJson();
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| -/**
 | 
| - * Parameters for creating a Compute Engine Instance resource. Most fields are
 | 
| - * identical to the corresponding Compute Engine resource.
 | 
| - */
 | 
| -class VmParams {
 | 
| -  /** Deprecated. Please use baseInstanceName instead. */
 | 
| -  core.String baseInstanceName;
 | 
| -
 | 
| -  /**
 | 
| -   * Enables IP Forwarding, which allows this instance to receive packets
 | 
| -   * destined for a different IP address, and send packets with a different
 | 
| -   * source IP. See IP Forwarding for more information.
 | 
| -   */
 | 
| -  core.bool canIpForward;
 | 
| -
 | 
| -  /** An optional textual description of the instance. */
 | 
| -  core.String description;
 | 
| -
 | 
| -  /**
 | 
| -   * A list of existing Persistent Disk resources to attach to each replica in
 | 
| -   * the pool. Each disk will be attached in read-only mode to every replica.
 | 
| -   */
 | 
| -  core.List<ExistingDisk> disksToAttach;
 | 
| -
 | 
| -  /**
 | 
| -   * A list of Disk resources to create and attach to each Replica in the Pool.
 | 
| -   * Currently, you can only define one disk and it must be a root persistent
 | 
| -   * disk. Note that Replica Pool will create a root persistent disk for each
 | 
| -   * replica.
 | 
| -   */
 | 
| -  core.List<NewDisk> disksToCreate;
 | 
| -
 | 
| -  /**
 | 
| -   * The machine type for this instance. The resource name (e.g. n1-standard-1).
 | 
| -   */
 | 
| -  core.String machineType;
 | 
| -
 | 
| -  /** The metadata key/value pairs assigned to this instance. */
 | 
| -  Metadata metadata;
 | 
| -
 | 
| -  /**
 | 
| -   * A list of network interfaces for the instance. Currently only one interface
 | 
| -   * is supported by Google Compute Engine, ONE_TO_ONE_NAT.
 | 
| -   */
 | 
| -  core.List<NetworkInterface> networkInterfaces;
 | 
| -
 | 
| -  /** Not documented yet. */
 | 
| -  core.String onHostMaintenance;
 | 
| -
 | 
| -  /** A list of Service Accounts to enable for this instance. */
 | 
| -  core.List<ServiceAccount> serviceAccounts;
 | 
| -
 | 
| -  /**
 | 
| -   * A list of tags to apply to the Google Compute Engine instance to identify
 | 
| -   * resources.
 | 
| -   */
 | 
| -  Tag tags;
 | 
| -
 | 
| -
 | 
| -  VmParams();
 | 
| -
 | 
| -  VmParams.fromJson(core.Map _json) {
 | 
| -    if (_json.containsKey("baseInstanceName")) {
 | 
| -      baseInstanceName = _json["baseInstanceName"];
 | 
| -    }
 | 
| -    if (_json.containsKey("canIpForward")) {
 | 
| -      canIpForward = _json["canIpForward"];
 | 
| -    }
 | 
| -    if (_json.containsKey("description")) {
 | 
| -      description = _json["description"];
 | 
| -    }
 | 
| -    if (_json.containsKey("disksToAttach")) {
 | 
| -      disksToAttach = _json["disksToAttach"].map((value) => new ExistingDisk.fromJson(value)).toList();
 | 
| -    }
 | 
| -    if (_json.containsKey("disksToCreate")) {
 | 
| -      disksToCreate = _json["disksToCreate"].map((value) => new NewDisk.fromJson(value)).toList();
 | 
| -    }
 | 
| -    if (_json.containsKey("machineType")) {
 | 
| -      machineType = _json["machineType"];
 | 
| -    }
 | 
| -    if (_json.containsKey("metadata")) {
 | 
| -      metadata = new Metadata.fromJson(_json["metadata"]);
 | 
| -    }
 | 
| -    if (_json.containsKey("networkInterfaces")) {
 | 
| -      networkInterfaces = _json["networkInterfaces"].map((value) => new NetworkInterface.fromJson(value)).toList();
 | 
| -    }
 | 
| -    if (_json.containsKey("onHostMaintenance")) {
 | 
| -      onHostMaintenance = _json["onHostMaintenance"];
 | 
| -    }
 | 
| -    if (_json.containsKey("serviceAccounts")) {
 | 
| -      serviceAccounts = _json["serviceAccounts"].map((value) => new ServiceAccount.fromJson(value)).toList();
 | 
| -    }
 | 
| -    if (_json.containsKey("tags")) {
 | 
| -      tags = new Tag.fromJson(_json["tags"]);
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  core.Map toJson() {
 | 
| -    var _json = new core.Map();
 | 
| -    if (baseInstanceName != null) {
 | 
| -      _json["baseInstanceName"] = baseInstanceName;
 | 
| -    }
 | 
| -    if (canIpForward != null) {
 | 
| -      _json["canIpForward"] = canIpForward;
 | 
| -    }
 | 
| -    if (description != null) {
 | 
| -      _json["description"] = description;
 | 
| -    }
 | 
| -    if (disksToAttach != null) {
 | 
| -      _json["disksToAttach"] = disksToAttach.map((value) => (value).toJson()).toList();
 | 
| -    }
 | 
| -    if (disksToCreate != null) {
 | 
| -      _json["disksToCreate"] = disksToCreate.map((value) => (value).toJson()).toList();
 | 
| -    }
 | 
| -    if (machineType != null) {
 | 
| -      _json["machineType"] = machineType;
 | 
| -    }
 | 
| -    if (metadata != null) {
 | 
| -      _json["metadata"] = (metadata).toJson();
 | 
| -    }
 | 
| -    if (networkInterfaces != null) {
 | 
| -      _json["networkInterfaces"] = networkInterfaces.map((value) => (value).toJson()).toList();
 | 
| -    }
 | 
| -    if (onHostMaintenance != null) {
 | 
| -      _json["onHostMaintenance"] = onHostMaintenance;
 | 
| -    }
 | 
| -    if (serviceAccounts != null) {
 | 
| -      _json["serviceAccounts"] = serviceAccounts.map((value) => (value).toJson()).toList();
 | 
| -    }
 | 
| -    if (tags != null) {
 | 
| -      _json["tags"] = (tags).toJson();
 | 
| -    }
 | 
| -    return _json;
 | 
| -  }
 | 
| -}
 | 
| -
 | 
| -
 | 
| 
 |