Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(222)

Unified Diff: generated/googleapis/lib/compute/v1.dart

Issue 2039113004: Api-roll 37: 2016-06-06 (Closed) Base URL: git@github.com:dart-lang/googleapis.git@master
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: generated/googleapis/lib/compute/v1.dart
diff --git a/generated/googleapis/lib/compute/v1.dart b/generated/googleapis/lib/compute/v1.dart
index 37dd0b5285f4bb91c2f72bab8de2d7f498e3d32b..cdf8f24dc50eb2783ace69bd03fdf6cf3c6b66dc 100644
--- a/generated/googleapis/lib/compute/v1.dart
+++ b/generated/googleapis/lib/compute/v1.dart
@@ -7,7 +7,6 @@ import 'dart:async' as async;
import 'dart:convert' as convert;
import 'package:_discoveryapis_commons/_discoveryapis_commons.dart' as commons;
-import 'package:crypto/crypto.dart' as crypto;
import 'package:http/http.dart' as http;
export 'package:_discoveryapis_commons/_discoveryapis_commons.dart' show
@@ -61,6 +60,7 @@ class ComputeApi {
ProjectsResourceApi get projects => new ProjectsResourceApi(_requester);
RegionOperationsResourceApi get regionOperations => new RegionOperationsResourceApi(_requester);
RegionsResourceApi get regions => new RegionsResourceApi(_requester);
+ RoutersResourceApi get routers => new RoutersResourceApi(_requester);
RoutesResourceApi get routes => new RoutesResourceApi(_requester);
SnapshotsResourceApi get snapshots => new SnapshotsResourceApi(_requester);
SslCertificatesResourceApi get sslCertificates => new SslCertificatesResourceApi(_requester);
@@ -4523,12 +4523,10 @@ class ImagesResourceApi {
* Retrieves the list of private images available to the specified project.
* Private images are images you create that belong to your project. This
* method does not get any images that belong to other projects, including
- * publicly-available images, like Debian 7. If you want to get a list of
+ * publicly-available images, like Debian 8. If you want to get a list of
* publicly-available images, use this method to make a request to the
* respective image project, such as debian-cloud or windows-cloud.
*
- * See Accessing images for more information.
- *
* Request parameters:
*
* [project] - Project ID for this request.
@@ -7321,6 +7319,65 @@ class InstancesResourceApi {
}
/**
+ * Starts an instance that was stopped using the using the instances().stop
+ * method. For more information, see Restart an instance.
+ *
+ * [request] - The metadata request object.
+ *
+ * Request parameters:
+ *
+ * [project] - Project ID for this request.
+ * Value must have pattern
+ * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
+ *
+ * [zone] - The name of the zone for this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * [instance] - Name of the instance resource to start.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * Completes with a [Operation].
+ *
+ * Completes with a [commons.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<Operation> startWithEncryptionKey(InstancesStartWithEncryptionKeyRequest request, core.String project, core.String zone, core.String instance) {
+ var _url = null;
+ var _queryParams = new core.Map();
+ var _uploadMedia = null;
+ var _uploadOptions = null;
+ var _downloadOptions = commons.DownloadOptions.Metadata;
+ var _body = null;
+
+ if (request != null) {
+ _body = convert.JSON.encode((request).toJson());
+ }
+ if (project == null) {
+ throw new core.ArgumentError("Parameter project is required.");
+ }
+ if (zone == null) {
+ throw new core.ArgumentError("Parameter zone is required.");
+ }
+ if (instance == null) {
+ throw new core.ArgumentError("Parameter instance is required.");
+ }
+
+ _url = commons.Escaper.ecapeVariable('$project') + '/zones/' + commons.Escaper.ecapeVariable('$zone') + '/instances/' + commons.Escaper.ecapeVariable('$instance') + '/startWithEncryptionKey';
+
+ var _response = _requester.request(_url,
+ "POST",
+ body: _body,
+ queryParams: _queryParams,
+ uploadOptions: _uploadOptions,
+ uploadMedia: _uploadMedia,
+ downloadOptions: _downloadOptions);
+ return _response.then((data) => new Operation.fromJson(data));
+ }
+
+ /**
* Stops a running instance, shutting it down cleanly, and allows you to
* restart the instance at a later time. Stopped instances do not incur
* per-minute, virtual machine usage charges while they are stopped, but any
@@ -8510,14 +8567,14 @@ class RegionsResourceApi {
}
-class RoutesResourceApi {
+class RoutersResourceApi {
final commons.ApiRequester _requester;
- RoutesResourceApi(commons.ApiRequester client) :
+ RoutersResourceApi(commons.ApiRequester client) :
_requester = client;
/**
- * Deletes the specified Route resource.
+ * Retrieves an aggregated list of routers.
*
* Request parameters:
*
@@ -8525,7 +8582,97 @@ class RoutesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [route] - Name of the Route resource to delete.
+ * [filter] - Sets a filter expression for filtering listed resources, in the
+ * form filter={expression}. Your {expression} must be in the format:
+ * field_name comparison_string literal_string.
+ *
+ * The field_name is the name of the field you want to compare. Only atomic
+ * field types are supported (string, number, boolean). The comparison_string
+ * must be either eq (equals) or ne (not equals). The literal_string is the
+ * string value to filter to. The literal value must be valid for the type of
+ * field you are filtering by (string, number, boolean). For string fields,
+ * the literal value is interpreted as a regular expression using RE2 syntax.
+ * The literal value must match the entire field.
+ *
+ * For example, to filter for instances that do not have a name of
+ * example-instance, you would use filter=name ne example-instance.
+ *
+ * Compute Engine Beta API Only: When filtering in the Beta API, you can also
+ * filter on nested fields. For example, you could filter on instances that
+ * have set the scheduling.automaticRestart field to true. Use filtering on
+ * nested fields to take advantage of labels to organize and search for
+ * results based on label values.
+ *
+ * The Beta API also supports filtering on multiple expressions by providing
+ * each separate expression within parentheses. For example,
+ * (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple
+ * expressions are treated as AND expressions, meaning that resources must
+ * match all expressions to pass the filters.
+ *
+ * [maxResults] - The maximum number of results per page that should be
+ * returned. If the number of available results is larger than maxResults,
+ * Compute Engine returns a nextPageToken that can be used to get the next
+ * page of results in subsequent list requests.
+ * Value must be between "0" and "500".
+ *
+ * [pageToken] - Specifies a page token to use. Set pageToken to the
+ * nextPageToken returned by a previous list request to get the next page of
+ * results.
+ *
+ * Completes with a [RouterAggregatedList].
+ *
+ * Completes with a [commons.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<RouterAggregatedList> aggregatedList(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
+ var _url = null;
+ var _queryParams = new core.Map();
+ var _uploadMedia = null;
+ var _uploadOptions = null;
+ var _downloadOptions = commons.DownloadOptions.Metadata;
+ var _body = null;
+
+ if (project == null) {
+ throw new core.ArgumentError("Parameter project is required.");
+ }
+ if (filter != null) {
+ _queryParams["filter"] = [filter];
+ }
+ if (maxResults != null) {
+ _queryParams["maxResults"] = ["${maxResults}"];
+ }
+ if (pageToken != null) {
+ _queryParams["pageToken"] = [pageToken];
+ }
+
+ _url = commons.Escaper.ecapeVariable('$project') + '/aggregated/routers';
+
+ var _response = _requester.request(_url,
+ "GET",
+ body: _body,
+ queryParams: _queryParams,
+ uploadOptions: _uploadOptions,
+ uploadMedia: _uploadMedia,
+ downloadOptions: _downloadOptions);
+ return _response.then((data) => new RouterAggregatedList.fromJson(data));
+ }
+
+ /**
+ * Deletes the specified Router resource.
+ *
+ * Request parameters:
+ *
+ * [project] - Project ID for this request.
+ * Value must have pattern
+ * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
+ *
+ * [region] - Name of the region for this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * [router] - Name of the Router resource to delete.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
* Completes with a [Operation].
@@ -8536,7 +8683,7 @@ class RoutesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> delete(core.String project, core.String route) {
+ async.Future<Operation> delete(core.String project, core.String region, core.String router) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -8547,11 +8694,14 @@ class RoutesResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (route == null) {
- throw new core.ArgumentError("Parameter route is required.");
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
+ if (router == null) {
+ throw new core.ArgumentError("Parameter router is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/routes/' + commons.Escaper.ecapeVariable('$route');
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/routers/' + commons.Escaper.ecapeVariable('$router');
var _response = _requester.request(_url,
"DELETE",
@@ -8564,7 +8714,7 @@ class RoutesResourceApi {
}
/**
- * Returns the specified Route resource. Get a list of available routes by
+ * Returns the specified Router resource. Get a list of available routers by
* making a list() request.
*
* Request parameters:
@@ -8573,10 +8723,13 @@ class RoutesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [route] - Name of the Route resource to return.
+ * [region] - Name of the region for this request.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * Completes with a [Route].
+ * [router] - Name of the Router resource to return.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * Completes with a [Router].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -8584,7 +8737,7 @@ class RoutesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Route> get(core.String project, core.String route) {
+ async.Future<Router> get(core.String project, core.String region, core.String router) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -8595,11 +8748,14 @@ class RoutesResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (route == null) {
- throw new core.ArgumentError("Parameter route is required.");
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
+ if (router == null) {
+ throw new core.ArgumentError("Parameter router is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/routes/' + commons.Escaper.ecapeVariable('$route');
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/routers/' + commons.Escaper.ecapeVariable('$router');
var _response = _requester.request(_url,
"GET",
@@ -8608,12 +8764,65 @@ class RoutesResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new Route.fromJson(data));
+ return _response.then((data) => new Router.fromJson(data));
}
/**
- * Creates a Route resource in the specified project using the data included
- * in the request.
+ * Retrieves runtime information of the specified router.
+ *
+ * Request parameters:
+ *
+ * [project] - Project ID for this request.
+ * Value must have pattern
+ * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
+ *
+ * [region] - Name of the region for this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * [router] - Name of the Router resource to query.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * Completes with a [RouterStatusResponse].
+ *
+ * Completes with a [commons.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<RouterStatusResponse> getRouterStatus(core.String project, core.String region, core.String router) {
+ var _url = null;
+ var _queryParams = new core.Map();
+ var _uploadMedia = null;
+ var _uploadOptions = null;
+ var _downloadOptions = commons.DownloadOptions.Metadata;
+ var _body = null;
+
+ if (project == null) {
+ throw new core.ArgumentError("Parameter project is required.");
+ }
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
+ if (router == null) {
+ throw new core.ArgumentError("Parameter router is required.");
+ }
+
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/routers/' + commons.Escaper.ecapeVariable('$router') + '/getRouterStatus';
+
+ var _response = _requester.request(_url,
+ "GET",
+ body: _body,
+ queryParams: _queryParams,
+ uploadOptions: _uploadOptions,
+ uploadMedia: _uploadMedia,
+ downloadOptions: _downloadOptions);
+ return _response.then((data) => new RouterStatusResponse.fromJson(data));
+ }
+
+ /**
+ * Creates a Router resource in the specified project and region using the
+ * data included in the request.
*
* [request] - The metadata request object.
*
@@ -8623,6 +8832,9 @@ class RoutesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
+ * [region] - Name of the region for this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
* Completes with a [Operation].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
@@ -8631,7 +8843,7 @@ class RoutesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> insert(Route request, core.String project) {
+ async.Future<Operation> insert(Router request, core.String project, core.String region) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -8645,8 +8857,11 @@ class RoutesResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
- _url = commons.Escaper.ecapeVariable('$project') + '/global/routes';
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/routers';
var _response = _requester.request(_url,
"POST",
@@ -8659,7 +8874,7 @@ class RoutesResourceApi {
}
/**
- * Retrieves the list of Route resources available to the specified project.
+ * Retrieves a list of Router resources available to the specified project.
*
* Request parameters:
*
@@ -8667,6 +8882,9 @@ class RoutesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
+ * [region] - Name of the region for this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
* [filter] - Sets a filter expression for filtering listed resources, in the
* form filter={expression}. Your {expression} must be in the format:
* field_name comparison_string literal_string.
@@ -8704,7 +8922,7 @@ class RoutesResourceApi {
* nextPageToken returned by a previous list request to get the next page of
* results.
*
- * Completes with a [RouteList].
+ * Completes with a [RouterList].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -8712,7 +8930,7 @@ class RoutesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<RouteList> list(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
+ async.Future<RouterList> list(core.String project, core.String region, {core.String filter, core.int maxResults, core.String pageToken}) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -8723,6 +8941,9 @@ class RoutesResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
if (filter != null) {
_queryParams["filter"] = [filter];
}
@@ -8733,7 +8954,7 @@ class RoutesResourceApi {
_queryParams["pageToken"] = [pageToken];
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/routes';
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/routers';
var _response = _requester.request(_url,
"GET",
@@ -8742,26 +8963,14 @@ class RoutesResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new RouteList.fromJson(data));
+ return _response.then((data) => new RouterList.fromJson(data));
}
-}
-
-
-class SnapshotsResourceApi {
- final commons.ApiRequester _requester;
-
- SnapshotsResourceApi(commons.ApiRequester client) :
- _requester = client;
-
/**
- * Deletes the specified Snapshot resource. Keep in mind that deleting a
- * single snapshot might not necessarily delete all the data on that snapshot.
- * If any data on the snapshot that is marked for deletion is needed for
- * subsequent snapshots, the data will be moved to the next corresponding
- * snapshot.
+ * Updates the entire content of the Router resource. This method supports
+ * patch semantics.
*
- * For more information, see Deleting snaphots.
+ * [request] - The metadata request object.
*
* Request parameters:
*
@@ -8769,7 +8978,10 @@ class SnapshotsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [snapshot] - Name of the Snapshot resource to delete.
+ * [region] - Name of the region for this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * [router] - Name of the Router resource to update.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
* Completes with a [Operation].
@@ -8780,7 +8992,7 @@ class SnapshotsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> delete(core.String project, core.String snapshot) {
+ async.Future<Operation> patch(Router request, core.String project, core.String region, core.String router) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -8788,17 +9000,23 @@ class SnapshotsResourceApi {
var _downloadOptions = commons.DownloadOptions.Metadata;
var _body = null;
+ if (request != null) {
+ _body = convert.JSON.encode((request).toJson());
+ }
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (snapshot == null) {
- throw new core.ArgumentError("Parameter snapshot is required.");
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
+ if (router == null) {
+ throw new core.ArgumentError("Parameter router is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/snapshots/' + commons.Escaper.ecapeVariable('$snapshot');
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/routers/' + commons.Escaper.ecapeVariable('$router');
var _response = _requester.request(_url,
- "DELETE",
+ "PATCH",
body: _body,
queryParams: _queryParams,
uploadOptions: _uploadOptions,
@@ -8808,56 +9026,9 @@ class SnapshotsResourceApi {
}
/**
- * Returns the specified Snapshot resource. Get a list of available snapshots
- * by making a list() request.
- *
- * Request parameters:
+ * Updates the entire content of the Router resource.
*
- * [project] - Project ID for this request.
- * Value must have pattern
- * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
- *
- * [snapshot] - Name of the Snapshot resource to return.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
- * Completes with a [Snapshot].
- *
- * Completes with a [commons.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<Snapshot> get(core.String project, core.String snapshot) {
- var _url = null;
- var _queryParams = new core.Map();
- var _uploadMedia = null;
- var _uploadOptions = null;
- var _downloadOptions = commons.DownloadOptions.Metadata;
- var _body = null;
-
- if (project == null) {
- throw new core.ArgumentError("Parameter project is required.");
- }
- if (snapshot == null) {
- throw new core.ArgumentError("Parameter snapshot is required.");
- }
-
- _url = commons.Escaper.ecapeVariable('$project') + '/global/snapshots/' + commons.Escaper.ecapeVariable('$snapshot');
-
- var _response = _requester.request(_url,
- "GET",
- body: _body,
- queryParams: _queryParams,
- uploadOptions: _uploadOptions,
- uploadMedia: _uploadMedia,
- downloadOptions: _downloadOptions);
- return _response.then((data) => new Snapshot.fromJson(data));
- }
-
- /**
- * Retrieves the list of Snapshot resources contained within the specified
- * project.
+ * [request] - The metadata request object.
*
* Request parameters:
*
@@ -8865,44 +9036,13 @@ class SnapshotsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [filter] - Sets a filter expression for filtering listed resources, in the
- * form filter={expression}. Your {expression} must be in the format:
- * field_name comparison_string literal_string.
- *
- * The field_name is the name of the field you want to compare. Only atomic
- * field types are supported (string, number, boolean). The comparison_string
- * must be either eq (equals) or ne (not equals). The literal_string is the
- * string value to filter to. The literal value must be valid for the type of
- * field you are filtering by (string, number, boolean). For string fields,
- * the literal value is interpreted as a regular expression using RE2 syntax.
- * The literal value must match the entire field.
- *
- * For example, to filter for instances that do not have a name of
- * example-instance, you would use filter=name ne example-instance.
- *
- * Compute Engine Beta API Only: When filtering in the Beta API, you can also
- * filter on nested fields. For example, you could filter on instances that
- * have set the scheduling.automaticRestart field to true. Use filtering on
- * nested fields to take advantage of labels to organize and search for
- * results based on label values.
- *
- * The Beta API also supports filtering on multiple expressions by providing
- * each separate expression within parentheses. For example,
- * (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple
- * expressions are treated as AND expressions, meaning that resources must
- * match all expressions to pass the filters.
- *
- * [maxResults] - The maximum number of results per page that should be
- * returned. If the number of available results is larger than maxResults,
- * Compute Engine returns a nextPageToken that can be used to get the next
- * page of results in subsequent list requests.
- * Value must be between "0" and "500".
+ * [region] - Name of the region for this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * [pageToken] - Specifies a page token to use. Set pageToken to the
- * nextPageToken returned by a previous list request to get the next page of
- * results.
+ * [router] - Name of the Router resource to update.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * Completes with a [SnapshotList].
+ * Completes with a [Operation].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -8910,7 +9050,7 @@ class SnapshotsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<SnapshotList> list(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
+ async.Future<Operation> update(Router request, core.String project, core.String region, core.String router) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -8918,42 +9058,42 @@ class SnapshotsResourceApi {
var _downloadOptions = commons.DownloadOptions.Metadata;
var _body = null;
+ if (request != null) {
+ _body = convert.JSON.encode((request).toJson());
+ }
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (filter != null) {
- _queryParams["filter"] = [filter];
- }
- if (maxResults != null) {
- _queryParams["maxResults"] = ["${maxResults}"];
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
}
- if (pageToken != null) {
- _queryParams["pageToken"] = [pageToken];
+ if (router == null) {
+ throw new core.ArgumentError("Parameter router is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/snapshots';
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/routers/' + commons.Escaper.ecapeVariable('$router');
var _response = _requester.request(_url,
- "GET",
+ "PUT",
body: _body,
queryParams: _queryParams,
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new SnapshotList.fromJson(data));
+ return _response.then((data) => new Operation.fromJson(data));
}
}
-class SslCertificatesResourceApi {
+class RoutesResourceApi {
final commons.ApiRequester _requester;
- SslCertificatesResourceApi(commons.ApiRequester client) :
+ RoutesResourceApi(commons.ApiRequester client) :
_requester = client;
/**
- * Deletes the specified SslCertificate resource.
+ * Deletes the specified Route resource.
*
* Request parameters:
*
@@ -8961,7 +9101,7 @@ class SslCertificatesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [sslCertificate] - Name of the SslCertificate resource to delete.
+ * [route] - Name of the Route resource to delete.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
* Completes with a [Operation].
@@ -8972,7 +9112,7 @@ class SslCertificatesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> delete(core.String project, core.String sslCertificate) {
+ async.Future<Operation> delete(core.String project, core.String route) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -8983,11 +9123,11 @@ class SslCertificatesResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (sslCertificate == null) {
- throw new core.ArgumentError("Parameter sslCertificate is required.");
+ if (route == null) {
+ throw new core.ArgumentError("Parameter route is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/sslCertificates/' + commons.Escaper.ecapeVariable('$sslCertificate');
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/routes/' + commons.Escaper.ecapeVariable('$route');
var _response = _requester.request(_url,
"DELETE",
@@ -9000,8 +9140,8 @@ class SslCertificatesResourceApi {
}
/**
- * Returns the specified SslCertificate resource. Get a list of available SSL
- * certificates by making a list() request.
+ * Returns the specified Route resource. Get a list of available routes by
+ * making a list() request.
*
* Request parameters:
*
@@ -9009,10 +9149,10 @@ class SslCertificatesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [sslCertificate] - Name of the SslCertificate resource to return.
+ * [route] - Name of the Route resource to return.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * Completes with a [SslCertificate].
+ * Completes with a [Route].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -9020,7 +9160,7 @@ class SslCertificatesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<SslCertificate> get(core.String project, core.String sslCertificate) {
+ async.Future<Route> get(core.String project, core.String route) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -9031,11 +9171,11 @@ class SslCertificatesResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (sslCertificate == null) {
- throw new core.ArgumentError("Parameter sslCertificate is required.");
+ if (route == null) {
+ throw new core.ArgumentError("Parameter route is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/sslCertificates/' + commons.Escaper.ecapeVariable('$sslCertificate');
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/routes/' + commons.Escaper.ecapeVariable('$route');
var _response = _requester.request(_url,
"GET",
@@ -9044,12 +9184,12 @@ class SslCertificatesResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new SslCertificate.fromJson(data));
+ return _response.then((data) => new Route.fromJson(data));
}
/**
- * Creates a SslCertificate resource in the specified project using the data
- * included in the request.
+ * Creates a Route resource in the specified project using the data included
+ * in the request.
*
* [request] - The metadata request object.
*
@@ -9067,7 +9207,7 @@ class SslCertificatesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> insert(SslCertificate request, core.String project) {
+ async.Future<Operation> insert(Route request, core.String project) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -9082,7 +9222,7 @@ class SslCertificatesResourceApi {
throw new core.ArgumentError("Parameter project is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/sslCertificates';
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/routes';
var _response = _requester.request(_url,
"POST",
@@ -9095,8 +9235,7 @@ class SslCertificatesResourceApi {
}
/**
- * Retrieves the list of SslCertificate resources available to the specified
- * project.
+ * Retrieves the list of Route resources available to the specified project.
*
* Request parameters:
*
@@ -9141,7 +9280,7 @@ class SslCertificatesResourceApi {
* nextPageToken returned by a previous list request to get the next page of
* results.
*
- * Completes with a [SslCertificateList].
+ * Completes with a [RouteList].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -9149,7 +9288,7 @@ class SslCertificatesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<SslCertificateList> list(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
+ async.Future<RouteList> list(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -9170,7 +9309,7 @@ class SslCertificatesResourceApi {
_queryParams["pageToken"] = [pageToken];
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/sslCertificates';
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/routes';
var _response = _requester.request(_url,
"GET",
@@ -9179,20 +9318,26 @@ class SslCertificatesResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new SslCertificateList.fromJson(data));
+ return _response.then((data) => new RouteList.fromJson(data));
}
}
-class SubnetworksResourceApi {
+class SnapshotsResourceApi {
final commons.ApiRequester _requester;
- SubnetworksResourceApi(commons.ApiRequester client) :
+ SnapshotsResourceApi(commons.ApiRequester client) :
_requester = client;
/**
- * Retrieves an aggregated list of subnetworks.
+ * Deletes the specified Snapshot resource. Keep in mind that deleting a
+ * single snapshot might not necessarily delete all the data on that snapshot.
+ * If any data on the snapshot that is marked for deletion is needed for
+ * subsequent snapshots, the data will be moved to the next corresponding
+ * snapshot.
+ *
+ * For more information, see Deleting snaphots.
*
* Request parameters:
*
@@ -9200,44 +9345,10 @@ class SubnetworksResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [filter] - Sets a filter expression for filtering listed resources, in the
- * form filter={expression}. Your {expression} must be in the format:
- * field_name comparison_string literal_string.
- *
- * The field_name is the name of the field you want to compare. Only atomic
- * field types are supported (string, number, boolean). The comparison_string
- * must be either eq (equals) or ne (not equals). The literal_string is the
- * string value to filter to. The literal value must be valid for the type of
- * field you are filtering by (string, number, boolean). For string fields,
- * the literal value is interpreted as a regular expression using RE2 syntax.
- * The literal value must match the entire field.
- *
- * For example, to filter for instances that do not have a name of
- * example-instance, you would use filter=name ne example-instance.
- *
- * Compute Engine Beta API Only: When filtering in the Beta API, you can also
- * filter on nested fields. For example, you could filter on instances that
- * have set the scheduling.automaticRestart field to true. Use filtering on
- * nested fields to take advantage of labels to organize and search for
- * results based on label values.
- *
- * The Beta API also supports filtering on multiple expressions by providing
- * each separate expression within parentheses. For example,
- * (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple
- * expressions are treated as AND expressions, meaning that resources must
- * match all expressions to pass the filters.
- *
- * [maxResults] - The maximum number of results per page that should be
- * returned. If the number of available results is larger than maxResults,
- * Compute Engine returns a nextPageToken that can be used to get the next
- * page of results in subsequent list requests.
- * Value must be between "0" and "500".
- *
- * [pageToken] - Specifies a page token to use. Set pageToken to the
- * nextPageToken returned by a previous list request to get the next page of
- * results.
+ * [snapshot] - Name of the Snapshot resource to delete.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * Completes with a [SubnetworkAggregatedList].
+ * Completes with a [Operation].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -9245,7 +9356,7 @@ class SubnetworksResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<SubnetworkAggregatedList> aggregatedList(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
+ async.Future<Operation> delete(core.String project, core.String snapshot) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -9256,30 +9367,25 @@ class SubnetworksResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (filter != null) {
- _queryParams["filter"] = [filter];
- }
- if (maxResults != null) {
- _queryParams["maxResults"] = ["${maxResults}"];
- }
- if (pageToken != null) {
- _queryParams["pageToken"] = [pageToken];
+ if (snapshot == null) {
+ throw new core.ArgumentError("Parameter snapshot is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/aggregated/subnetworks';
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/snapshots/' + commons.Escaper.ecapeVariable('$snapshot');
var _response = _requester.request(_url,
- "GET",
+ "DELETE",
body: _body,
queryParams: _queryParams,
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new SubnetworkAggregatedList.fromJson(data));
+ return _response.then((data) => new Operation.fromJson(data));
}
/**
- * Deletes the specified subnetwork.
+ * Returns the specified Snapshot resource. Get a list of available snapshots
+ * by making a list() request.
*
* Request parameters:
*
@@ -9287,13 +9393,10 @@ class SubnetworksResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [region] - Name of the region scoping this request.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
- * [subnetwork] - Name of the Subnetwork resource to delete.
+ * [snapshot] - Name of the Snapshot resource to return.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * Completes with a [Operation].
+ * Completes with a [Snapshot].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -9301,7 +9404,7 @@ class SubnetworksResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> delete(core.String project, core.String region, core.String subnetwork) {
+ async.Future<Snapshot> get(core.String project, core.String snapshot) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -9312,68 +9415,11 @@ class SubnetworksResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (region == null) {
- throw new core.ArgumentError("Parameter region is required.");
- }
- if (subnetwork == null) {
- throw new core.ArgumentError("Parameter subnetwork is required.");
- }
-
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/subnetworks/' + commons.Escaper.ecapeVariable('$subnetwork');
-
- var _response = _requester.request(_url,
- "DELETE",
- body: _body,
- queryParams: _queryParams,
- uploadOptions: _uploadOptions,
- uploadMedia: _uploadMedia,
- downloadOptions: _downloadOptions);
- return _response.then((data) => new Operation.fromJson(data));
- }
-
- /**
- * Returns the specified subnetwork. Get a list of available subnetworks
- * list() request.
- *
- * Request parameters:
- *
- * [project] - Project ID for this request.
- * Value must have pattern
- * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
- *
- * [region] - Name of the region scoping this request.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
- * [subnetwork] - Name of the Subnetwork resource to return.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
- * Completes with a [Subnetwork].
- *
- * Completes with a [commons.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<Subnetwork> get(core.String project, core.String region, core.String subnetwork) {
- var _url = null;
- var _queryParams = new core.Map();
- var _uploadMedia = null;
- var _uploadOptions = null;
- var _downloadOptions = commons.DownloadOptions.Metadata;
- var _body = null;
-
- if (project == null) {
- throw new core.ArgumentError("Parameter project is required.");
- }
- if (region == null) {
- throw new core.ArgumentError("Parameter region is required.");
- }
- if (subnetwork == null) {
- throw new core.ArgumentError("Parameter subnetwork is required.");
+ if (snapshot == null) {
+ throw new core.ArgumentError("Parameter snapshot is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/subnetworks/' + commons.Escaper.ecapeVariable('$subnetwork');
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/snapshots/' + commons.Escaper.ecapeVariable('$snapshot');
var _response = _requester.request(_url,
"GET",
@@ -9382,64 +9428,12 @@ class SubnetworksResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new Subnetwork.fromJson(data));
- }
-
- /**
- * Creates a subnetwork in the specified project using the data included in
- * the request.
- *
- * [request] - The metadata request object.
- *
- * Request parameters:
- *
- * [project] - Project ID for this request.
- * Value must have pattern
- * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
- *
- * [region] - Name of the region scoping this request.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
- * Completes with a [Operation].
- *
- * Completes with a [commons.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<Operation> insert(Subnetwork request, core.String project, core.String region) {
- var _url = null;
- var _queryParams = new core.Map();
- var _uploadMedia = null;
- var _uploadOptions = null;
- var _downloadOptions = commons.DownloadOptions.Metadata;
- var _body = null;
-
- if (request != null) {
- _body = convert.JSON.encode((request).toJson());
- }
- if (project == null) {
- throw new core.ArgumentError("Parameter project is required.");
- }
- if (region == null) {
- throw new core.ArgumentError("Parameter region is required.");
- }
-
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/subnetworks';
-
- var _response = _requester.request(_url,
- "POST",
- body: _body,
- queryParams: _queryParams,
- uploadOptions: _uploadOptions,
- uploadMedia: _uploadMedia,
- downloadOptions: _downloadOptions);
- return _response.then((data) => new Operation.fromJson(data));
+ return _response.then((data) => new Snapshot.fromJson(data));
}
/**
- * Retrieves a list of subnetworks available to the specified project.
+ * Retrieves the list of Snapshot resources contained within the specified
+ * project.
*
* Request parameters:
*
@@ -9447,9 +9441,6 @@ class SubnetworksResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [region] - Name of the region scoping this request.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
* [filter] - Sets a filter expression for filtering listed resources, in the
* form filter={expression}. Your {expression} must be in the format:
* field_name comparison_string literal_string.
@@ -9487,7 +9478,7 @@ class SubnetworksResourceApi {
* nextPageToken returned by a previous list request to get the next page of
* results.
*
- * Completes with a [SubnetworkList].
+ * Completes with a [SnapshotList].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -9495,7 +9486,7 @@ class SubnetworksResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<SubnetworkList> list(core.String project, core.String region, {core.String filter, core.int maxResults, core.String pageToken}) {
+ async.Future<SnapshotList> list(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -9506,9 +9497,6 @@ class SubnetworksResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (region == null) {
- throw new core.ArgumentError("Parameter region is required.");
- }
if (filter != null) {
_queryParams["filter"] = [filter];
}
@@ -9519,7 +9507,7 @@ class SubnetworksResourceApi {
_queryParams["pageToken"] = [pageToken];
}
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/subnetworks';
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/snapshots';
var _response = _requester.request(_url,
"GET",
@@ -9528,20 +9516,20 @@ class SubnetworksResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new SubnetworkList.fromJson(data));
+ return _response.then((data) => new SnapshotList.fromJson(data));
}
}
-class TargetHttpProxiesResourceApi {
+class SslCertificatesResourceApi {
final commons.ApiRequester _requester;
- TargetHttpProxiesResourceApi(commons.ApiRequester client) :
+ SslCertificatesResourceApi(commons.ApiRequester client) :
_requester = client;
/**
- * Deletes the specified TargetHttpProxy resource.
+ * Deletes the specified SslCertificate resource.
*
* Request parameters:
*
@@ -9549,7 +9537,7 @@ class TargetHttpProxiesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [targetHttpProxy] - Name of the TargetHttpProxy resource to delete.
+ * [sslCertificate] - Name of the SslCertificate resource to delete.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
* Completes with a [Operation].
@@ -9560,7 +9548,7 @@ class TargetHttpProxiesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> delete(core.String project, core.String targetHttpProxy) {
+ async.Future<Operation> delete(core.String project, core.String sslCertificate) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -9571,11 +9559,11 @@ class TargetHttpProxiesResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (targetHttpProxy == null) {
- throw new core.ArgumentError("Parameter targetHttpProxy is required.");
+ if (sslCertificate == null) {
+ throw new core.ArgumentError("Parameter sslCertificate is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/targetHttpProxies/' + commons.Escaper.ecapeVariable('$targetHttpProxy');
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/sslCertificates/' + commons.Escaper.ecapeVariable('$sslCertificate');
var _response = _requester.request(_url,
"DELETE",
@@ -9588,8 +9576,8 @@ class TargetHttpProxiesResourceApi {
}
/**
- * Returns the specified TargetHttpProxy resource. Get a list of available
- * target HTTP proxies by making a list() request.
+ * Returns the specified SslCertificate resource. Get a list of available SSL
+ * certificates by making a list() request.
*
* Request parameters:
*
@@ -9597,10 +9585,10 @@ class TargetHttpProxiesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [targetHttpProxy] - Name of the TargetHttpProxy resource to return.
+ * [sslCertificate] - Name of the SslCertificate resource to return.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * Completes with a [TargetHttpProxy].
+ * Completes with a [SslCertificate].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -9608,7 +9596,7 @@ class TargetHttpProxiesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<TargetHttpProxy> get(core.String project, core.String targetHttpProxy) {
+ async.Future<SslCertificate> get(core.String project, core.String sslCertificate) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -9619,11 +9607,11 @@ class TargetHttpProxiesResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (targetHttpProxy == null) {
- throw new core.ArgumentError("Parameter targetHttpProxy is required.");
+ if (sslCertificate == null) {
+ throw new core.ArgumentError("Parameter sslCertificate is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/targetHttpProxies/' + commons.Escaper.ecapeVariable('$targetHttpProxy');
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/sslCertificates/' + commons.Escaper.ecapeVariable('$sslCertificate');
var _response = _requester.request(_url,
"GET",
@@ -9632,11 +9620,11 @@ class TargetHttpProxiesResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new TargetHttpProxy.fromJson(data));
+ return _response.then((data) => new SslCertificate.fromJson(data));
}
/**
- * Creates a TargetHttpProxy resource in the specified project using the data
+ * Creates a SslCertificate resource in the specified project using the data
* included in the request.
*
* [request] - The metadata request object.
@@ -9655,7 +9643,7 @@ class TargetHttpProxiesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> insert(TargetHttpProxy request, core.String project) {
+ async.Future<Operation> insert(SslCertificate request, core.String project) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -9670,7 +9658,7 @@ class TargetHttpProxiesResourceApi {
throw new core.ArgumentError("Parameter project is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/targetHttpProxies';
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/sslCertificates';
var _response = _requester.request(_url,
"POST",
@@ -9683,7 +9671,7 @@ class TargetHttpProxiesResourceApi {
}
/**
- * Retrieves the list of TargetHttpProxy resources available to the specified
+ * Retrieves the list of SslCertificate resources available to the specified
* project.
*
* Request parameters:
@@ -9729,7 +9717,7 @@ class TargetHttpProxiesResourceApi {
* nextPageToken returned by a previous list request to get the next page of
* results.
*
- * Completes with a [TargetHttpProxyList].
+ * Completes with a [SslCertificateList].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -9737,7 +9725,7 @@ class TargetHttpProxiesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<TargetHttpProxyList> list(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
+ async.Future<SslCertificateList> list(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -9758,7 +9746,7 @@ class TargetHttpProxiesResourceApi {
_queryParams["pageToken"] = [pageToken];
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/targetHttpProxies';
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/sslCertificates';
var _response = _requester.request(_url,
"GET",
@@ -9767,13 +9755,20 @@ class TargetHttpProxiesResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new TargetHttpProxyList.fromJson(data));
+ return _response.then((data) => new SslCertificateList.fromJson(data));
}
+}
+
+
+class SubnetworksResourceApi {
+ final commons.ApiRequester _requester;
+
+ SubnetworksResourceApi(commons.ApiRequester client) :
+ _requester = client;
+
/**
- * Changes the URL map for TargetHttpProxy.
- *
- * [request] - The metadata request object.
+ * Retrieves an aggregated list of subnetworks.
*
* Request parameters:
*
@@ -9781,10 +9776,44 @@ class TargetHttpProxiesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [targetHttpProxy] - Name of the TargetHttpProxy to set a URL map for.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ * [filter] - Sets a filter expression for filtering listed resources, in the
+ * form filter={expression}. Your {expression} must be in the format:
+ * field_name comparison_string literal_string.
*
- * Completes with a [Operation].
+ * The field_name is the name of the field you want to compare. Only atomic
+ * field types are supported (string, number, boolean). The comparison_string
+ * must be either eq (equals) or ne (not equals). The literal_string is the
+ * string value to filter to. The literal value must be valid for the type of
+ * field you are filtering by (string, number, boolean). For string fields,
+ * the literal value is interpreted as a regular expression using RE2 syntax.
+ * The literal value must match the entire field.
+ *
+ * For example, to filter for instances that do not have a name of
+ * example-instance, you would use filter=name ne example-instance.
+ *
+ * Compute Engine Beta API Only: When filtering in the Beta API, you can also
+ * filter on nested fields. For example, you could filter on instances that
+ * have set the scheduling.automaticRestart field to true. Use filtering on
+ * nested fields to take advantage of labels to organize and search for
+ * results based on label values.
+ *
+ * The Beta API also supports filtering on multiple expressions by providing
+ * each separate expression within parentheses. For example,
+ * (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple
+ * expressions are treated as AND expressions, meaning that resources must
+ * match all expressions to pass the filters.
+ *
+ * [maxResults] - The maximum number of results per page that should be
+ * returned. If the number of available results is larger than maxResults,
+ * Compute Engine returns a nextPageToken that can be used to get the next
+ * page of results in subsequent list requests.
+ * Value must be between "0" and "500".
+ *
+ * [pageToken] - Specifies a page token to use. Set pageToken to the
+ * nextPageToken returned by a previous list request to get the next page of
+ * results.
+ *
+ * Completes with a [SubnetworkAggregatedList].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -9792,7 +9821,7 @@ class TargetHttpProxiesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> setUrlMap(UrlMapReference request, core.String project, core.String targetHttpProxy) {
+ async.Future<SubnetworkAggregatedList> aggregatedList(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -9800,39 +9829,33 @@ class TargetHttpProxiesResourceApi {
var _downloadOptions = commons.DownloadOptions.Metadata;
var _body = null;
- if (request != null) {
- _body = convert.JSON.encode((request).toJson());
- }
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (targetHttpProxy == null) {
- throw new core.ArgumentError("Parameter targetHttpProxy is required.");
+ if (filter != null) {
+ _queryParams["filter"] = [filter];
+ }
+ if (maxResults != null) {
+ _queryParams["maxResults"] = ["${maxResults}"];
+ }
+ if (pageToken != null) {
+ _queryParams["pageToken"] = [pageToken];
}
- _url = commons.Escaper.ecapeVariable('$project') + '/targetHttpProxies/' + commons.Escaper.ecapeVariable('$targetHttpProxy') + '/setUrlMap';
+ _url = commons.Escaper.ecapeVariable('$project') + '/aggregated/subnetworks';
var _response = _requester.request(_url,
- "POST",
+ "GET",
body: _body,
queryParams: _queryParams,
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new Operation.fromJson(data));
+ return _response.then((data) => new SubnetworkAggregatedList.fromJson(data));
}
-}
-
-
-class TargetHttpsProxiesResourceApi {
- final commons.ApiRequester _requester;
-
- TargetHttpsProxiesResourceApi(commons.ApiRequester client) :
- _requester = client;
-
/**
- * Deletes the specified TargetHttpsProxy resource.
+ * Deletes the specified subnetwork.
*
* Request parameters:
*
@@ -9840,7 +9863,10 @@ class TargetHttpsProxiesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [targetHttpsProxy] - Name of the TargetHttpsProxy resource to delete.
+ * [region] - Name of the region scoping this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * [subnetwork] - Name of the Subnetwork resource to delete.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
* Completes with a [Operation].
@@ -9851,7 +9877,7 @@ class TargetHttpsProxiesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> delete(core.String project, core.String targetHttpsProxy) {
+ async.Future<Operation> delete(core.String project, core.String region, core.String subnetwork) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -9862,11 +9888,14 @@ class TargetHttpsProxiesResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (targetHttpsProxy == null) {
- throw new core.ArgumentError("Parameter targetHttpsProxy is required.");
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
+ if (subnetwork == null) {
+ throw new core.ArgumentError("Parameter subnetwork is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/targetHttpsProxies/' + commons.Escaper.ecapeVariable('$targetHttpsProxy');
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/subnetworks/' + commons.Escaper.ecapeVariable('$subnetwork');
var _response = _requester.request(_url,
"DELETE",
@@ -9879,8 +9908,8 @@ class TargetHttpsProxiesResourceApi {
}
/**
- * Returns the specified TargetHttpsProxy resource. Get a list of available
- * target HTTPS proxies by making a list() request.
+ * Returns the specified subnetwork. Get a list of available subnetworks
+ * list() request.
*
* Request parameters:
*
@@ -9888,10 +9917,13 @@ class TargetHttpsProxiesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [targetHttpsProxy] - Name of the TargetHttpsProxy resource to return.
+ * [region] - Name of the region scoping this request.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * Completes with a [TargetHttpsProxy].
+ * [subnetwork] - Name of the Subnetwork resource to return.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * Completes with a [Subnetwork].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -9899,7 +9931,7 @@ class TargetHttpsProxiesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<TargetHttpsProxy> get(core.String project, core.String targetHttpsProxy) {
+ async.Future<Subnetwork> get(core.String project, core.String region, core.String subnetwork) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -9910,11 +9942,14 @@ class TargetHttpsProxiesResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (targetHttpsProxy == null) {
- throw new core.ArgumentError("Parameter targetHttpsProxy is required.");
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
+ if (subnetwork == null) {
+ throw new core.ArgumentError("Parameter subnetwork is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/targetHttpsProxies/' + commons.Escaper.ecapeVariable('$targetHttpsProxy');
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/subnetworks/' + commons.Escaper.ecapeVariable('$subnetwork');
var _response = _requester.request(_url,
"GET",
@@ -9923,12 +9958,12 @@ class TargetHttpsProxiesResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new TargetHttpsProxy.fromJson(data));
+ return _response.then((data) => new Subnetwork.fromJson(data));
}
/**
- * Creates a TargetHttpsProxy resource in the specified project using the data
- * included in the request.
+ * Creates a subnetwork in the specified project using the data included in
+ * the request.
*
* [request] - The metadata request object.
*
@@ -9938,6 +9973,9 @@ class TargetHttpsProxiesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
+ * [region] - Name of the region scoping this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
* Completes with a [Operation].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
@@ -9946,7 +9984,7 @@ class TargetHttpsProxiesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> insert(TargetHttpsProxy request, core.String project) {
+ async.Future<Operation> insert(Subnetwork request, core.String project, core.String region) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -9960,8 +9998,11 @@ class TargetHttpsProxiesResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
- _url = commons.Escaper.ecapeVariable('$project') + '/global/targetHttpsProxies';
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/subnetworks';
var _response = _requester.request(_url,
"POST",
@@ -9974,8 +10015,7 @@ class TargetHttpsProxiesResourceApi {
}
/**
- * Retrieves the list of TargetHttpsProxy resources available to the specified
- * project.
+ * Retrieves a list of subnetworks available to the specified project.
*
* Request parameters:
*
@@ -9983,6 +10023,9 @@ class TargetHttpsProxiesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
+ * [region] - Name of the region scoping this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
* [filter] - Sets a filter expression for filtering listed resources, in the
* form filter={expression}. Your {expression} must be in the format:
* field_name comparison_string literal_string.
@@ -10020,7 +10063,7 @@ class TargetHttpsProxiesResourceApi {
* nextPageToken returned by a previous list request to get the next page of
* results.
*
- * Completes with a [TargetHttpsProxyList].
+ * Completes with a [SubnetworkList].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -10028,7 +10071,7 @@ class TargetHttpsProxiesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<TargetHttpsProxyList> list(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
+ async.Future<SubnetworkList> list(core.String project, core.String region, {core.String filter, core.int maxResults, core.String pageToken}) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -10039,6 +10082,9 @@ class TargetHttpsProxiesResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
if (filter != null) {
_queryParams["filter"] = [filter];
}
@@ -10049,7 +10095,7 @@ class TargetHttpsProxiesResourceApi {
_queryParams["pageToken"] = [pageToken];
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/targetHttpsProxies';
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/subnetworks';
var _response = _requester.request(_url,
"GET",
@@ -10058,13 +10104,20 @@ class TargetHttpsProxiesResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new TargetHttpsProxyList.fromJson(data));
+ return _response.then((data) => new SubnetworkList.fromJson(data));
}
+}
+
+
+class TargetHttpProxiesResourceApi {
+ final commons.ApiRequester _requester;
+
+ TargetHttpProxiesResourceApi(commons.ApiRequester client) :
+ _requester = client;
+
/**
- * Replaces SslCertificates for TargetHttpsProxy.
- *
- * [request] - The metadata request object.
+ * Deletes the specified TargetHttpProxy resource.
*
* Request parameters:
*
@@ -10072,8 +10125,7 @@ class TargetHttpsProxiesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [targetHttpsProxy] - Name of the TargetHttpsProxy resource to set an
- * SslCertificates resource for.
+ * [targetHttpProxy] - Name of the TargetHttpProxy resource to delete.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
* Completes with a [Operation].
@@ -10084,7 +10136,7 @@ class TargetHttpsProxiesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> setSslCertificates(TargetHttpsProxiesSetSslCertificatesRequest request, core.String project, core.String targetHttpsProxy) {
+ async.Future<Operation> delete(core.String project, core.String targetHttpProxy) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -10092,20 +10144,17 @@ class TargetHttpsProxiesResourceApi {
var _downloadOptions = commons.DownloadOptions.Metadata;
var _body = null;
- if (request != null) {
- _body = convert.JSON.encode((request).toJson());
- }
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (targetHttpsProxy == null) {
- throw new core.ArgumentError("Parameter targetHttpsProxy is required.");
+ if (targetHttpProxy == null) {
+ throw new core.ArgumentError("Parameter targetHttpProxy is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/targetHttpsProxies/' + commons.Escaper.ecapeVariable('$targetHttpsProxy') + '/setSslCertificates';
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/targetHttpProxies/' + commons.Escaper.ecapeVariable('$targetHttpProxy');
var _response = _requester.request(_url,
- "POST",
+ "DELETE",
body: _body,
queryParams: _queryParams,
uploadOptions: _uploadOptions,
@@ -10115,9 +10164,8 @@ class TargetHttpsProxiesResourceApi {
}
/**
- * Changes the URL map for TargetHttpsProxy.
- *
- * [request] - The metadata request object.
+ * Returns the specified TargetHttpProxy resource. Get a list of available
+ * target HTTP proxies by making a list() request.
*
* Request parameters:
*
@@ -10125,10 +10173,56 @@ class TargetHttpsProxiesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [targetHttpsProxy] - Name of the TargetHttpsProxy resource whose URL map is
- * to be set.
+ * [targetHttpProxy] - Name of the TargetHttpProxy resource to return.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
+ * Completes with a [TargetHttpProxy].
+ *
+ * Completes with a [commons.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<TargetHttpProxy> get(core.String project, core.String targetHttpProxy) {
+ var _url = null;
+ var _queryParams = new core.Map();
+ var _uploadMedia = null;
+ var _uploadOptions = null;
+ var _downloadOptions = commons.DownloadOptions.Metadata;
+ var _body = null;
+
+ if (project == null) {
+ throw new core.ArgumentError("Parameter project is required.");
+ }
+ if (targetHttpProxy == null) {
+ throw new core.ArgumentError("Parameter targetHttpProxy is required.");
+ }
+
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/targetHttpProxies/' + commons.Escaper.ecapeVariable('$targetHttpProxy');
+
+ var _response = _requester.request(_url,
+ "GET",
+ body: _body,
+ queryParams: _queryParams,
+ uploadOptions: _uploadOptions,
+ uploadMedia: _uploadMedia,
+ downloadOptions: _downloadOptions);
+ return _response.then((data) => new TargetHttpProxy.fromJson(data));
+ }
+
+ /**
+ * Creates a TargetHttpProxy resource in the specified project using the data
+ * included in the request.
+ *
+ * [request] - The metadata request object.
+ *
+ * Request parameters:
+ *
+ * [project] - Project ID for this request.
+ * Value must have pattern
+ * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
+ *
* Completes with a [Operation].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
@@ -10137,7 +10231,7 @@ class TargetHttpsProxiesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> setUrlMap(UrlMapReference request, core.String project, core.String targetHttpsProxy) {
+ async.Future<Operation> insert(TargetHttpProxy request, core.String project) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -10151,11 +10245,8 @@ class TargetHttpsProxiesResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (targetHttpsProxy == null) {
- throw new core.ArgumentError("Parameter targetHttpsProxy is required.");
- }
- _url = commons.Escaper.ecapeVariable('$project') + '/targetHttpsProxies/' + commons.Escaper.ecapeVariable('$targetHttpsProxy') + '/setUrlMap';
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/targetHttpProxies';
var _response = _requester.request(_url,
"POST",
@@ -10167,17 +10258,9 @@ class TargetHttpsProxiesResourceApi {
return _response.then((data) => new Operation.fromJson(data));
}
-}
-
-
-class TargetInstancesResourceApi {
- final commons.ApiRequester _requester;
-
- TargetInstancesResourceApi(commons.ApiRequester client) :
- _requester = client;
-
/**
- * Retrieves an aggregated list of target instances.
+ * Retrieves the list of TargetHttpProxy resources available to the specified
+ * project.
*
* Request parameters:
*
@@ -10222,7 +10305,7 @@ class TargetInstancesResourceApi {
* nextPageToken returned by a previous list request to get the next page of
* results.
*
- * Completes with a [TargetInstanceAggregatedList].
+ * Completes with a [TargetHttpProxyList].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -10230,7 +10313,7 @@ class TargetInstancesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<TargetInstanceAggregatedList> aggregatedList(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
+ async.Future<TargetHttpProxyList> list(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -10251,7 +10334,7 @@ class TargetInstancesResourceApi {
_queryParams["pageToken"] = [pageToken];
}
- _url = commons.Escaper.ecapeVariable('$project') + '/aggregated/targetInstances';
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/targetHttpProxies';
var _response = _requester.request(_url,
"GET",
@@ -10260,11 +10343,13 @@ class TargetInstancesResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new TargetInstanceAggregatedList.fromJson(data));
+ return _response.then((data) => new TargetHttpProxyList.fromJson(data));
}
/**
- * Deletes the specified TargetInstance resource.
+ * Changes the URL map for TargetHttpProxy.
+ *
+ * [request] - The metadata request object.
*
* Request parameters:
*
@@ -10272,10 +10357,7 @@ class TargetInstancesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [zone] - Name of the zone scoping this request.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
- * [targetInstance] - Name of the TargetInstance resource to delete.
+ * [targetHttpProxy] - Name of the TargetHttpProxy to set a URL map for.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
* Completes with a [Operation].
@@ -10286,7 +10368,7 @@ class TargetInstancesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> delete(core.String project, core.String zone, core.String targetInstance) {
+ async.Future<Operation> setUrlMap(UrlMapReference request, core.String project, core.String targetHttpProxy) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -10294,20 +10376,20 @@ class TargetInstancesResourceApi {
var _downloadOptions = commons.DownloadOptions.Metadata;
var _body = null;
+ if (request != null) {
+ _body = convert.JSON.encode((request).toJson());
+ }
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (zone == null) {
- throw new core.ArgumentError("Parameter zone is required.");
- }
- if (targetInstance == null) {
- throw new core.ArgumentError("Parameter targetInstance is required.");
+ if (targetHttpProxy == null) {
+ throw new core.ArgumentError("Parameter targetHttpProxy is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/zones/' + commons.Escaper.ecapeVariable('$zone') + '/targetInstances/' + commons.Escaper.ecapeVariable('$targetInstance');
+ _url = commons.Escaper.ecapeVariable('$project') + '/targetHttpProxies/' + commons.Escaper.ecapeVariable('$targetHttpProxy') + '/setUrlMap';
var _response = _requester.request(_url,
- "DELETE",
+ "POST",
body: _body,
queryParams: _queryParams,
uploadOptions: _uploadOptions,
@@ -10316,9 +10398,17 @@ class TargetInstancesResourceApi {
return _response.then((data) => new Operation.fromJson(data));
}
+}
+
+
+class TargetHttpsProxiesResourceApi {
+ final commons.ApiRequester _requester;
+
+ TargetHttpsProxiesResourceApi(commons.ApiRequester client) :
+ _requester = client;
+
/**
- * Returns the specified TargetInstance resource. Get a list of available
- * target instances by making a list() request.
+ * Deletes the specified TargetHttpsProxy resource.
*
* Request parameters:
*
@@ -10326,13 +10416,10 @@ class TargetInstancesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [zone] - Name of the zone scoping this request.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
- * [targetInstance] - Name of the TargetInstance resource to return.
+ * [targetHttpsProxy] - Name of the TargetHttpsProxy resource to delete.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * Completes with a [TargetInstance].
+ * Completes with a [Operation].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -10340,7 +10427,7 @@ class TargetInstancesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<TargetInstance> get(core.String project, core.String zone, core.String targetInstance) {
+ async.Future<Operation> delete(core.String project, core.String targetHttpsProxy) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -10351,30 +10438,25 @@ class TargetInstancesResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (zone == null) {
- throw new core.ArgumentError("Parameter zone is required.");
- }
- if (targetInstance == null) {
- throw new core.ArgumentError("Parameter targetInstance is required.");
+ if (targetHttpsProxy == null) {
+ throw new core.ArgumentError("Parameter targetHttpsProxy is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/zones/' + commons.Escaper.ecapeVariable('$zone') + '/targetInstances/' + commons.Escaper.ecapeVariable('$targetInstance');
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/targetHttpsProxies/' + commons.Escaper.ecapeVariable('$targetHttpsProxy');
var _response = _requester.request(_url,
- "GET",
+ "DELETE",
body: _body,
queryParams: _queryParams,
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new TargetInstance.fromJson(data));
+ return _response.then((data) => new Operation.fromJson(data));
}
/**
- * Creates a TargetInstance resource in the specified project and zone using
- * the data included in the request.
- *
- * [request] - The metadata request object.
+ * Returns the specified TargetHttpsProxy resource. Get a list of available
+ * target HTTPS proxies by making a list() request.
*
* Request parameters:
*
@@ -10382,9 +10464,56 @@ class TargetInstancesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [zone] - Name of the zone scoping this request.
+ * [targetHttpsProxy] - Name of the TargetHttpsProxy resource to return.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
+ * Completes with a [TargetHttpsProxy].
+ *
+ * Completes with a [commons.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<TargetHttpsProxy> get(core.String project, core.String targetHttpsProxy) {
+ var _url = null;
+ var _queryParams = new core.Map();
+ var _uploadMedia = null;
+ var _uploadOptions = null;
+ var _downloadOptions = commons.DownloadOptions.Metadata;
+ var _body = null;
+
+ if (project == null) {
+ throw new core.ArgumentError("Parameter project is required.");
+ }
+ if (targetHttpsProxy == null) {
+ throw new core.ArgumentError("Parameter targetHttpsProxy is required.");
+ }
+
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/targetHttpsProxies/' + commons.Escaper.ecapeVariable('$targetHttpsProxy');
+
+ var _response = _requester.request(_url,
+ "GET",
+ body: _body,
+ queryParams: _queryParams,
+ uploadOptions: _uploadOptions,
+ uploadMedia: _uploadMedia,
+ downloadOptions: _downloadOptions);
+ return _response.then((data) => new TargetHttpsProxy.fromJson(data));
+ }
+
+ /**
+ * Creates a TargetHttpsProxy resource in the specified project using the data
+ * included in the request.
+ *
+ * [request] - The metadata request object.
+ *
+ * Request parameters:
+ *
+ * [project] - Project ID for this request.
+ * Value must have pattern
+ * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
+ *
* Completes with a [Operation].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
@@ -10393,7 +10522,7 @@ class TargetInstancesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> insert(TargetInstance request, core.String project, core.String zone) {
+ async.Future<Operation> insert(TargetHttpsProxy request, core.String project) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -10407,11 +10536,8 @@ class TargetInstancesResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (zone == null) {
- throw new core.ArgumentError("Parameter zone is required.");
- }
- _url = commons.Escaper.ecapeVariable('$project') + '/zones/' + commons.Escaper.ecapeVariable('$zone') + '/targetInstances';
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/targetHttpsProxies';
var _response = _requester.request(_url,
"POST",
@@ -10424,8 +10550,8 @@ class TargetInstancesResourceApi {
}
/**
- * Retrieves a list of TargetInstance resources available to the specified
- * project and zone.
+ * Retrieves the list of TargetHttpsProxy resources available to the specified
+ * project.
*
* Request parameters:
*
@@ -10433,9 +10559,6 @@ class TargetInstancesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [zone] - Name of the zone scoping this request.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
* [filter] - Sets a filter expression for filtering listed resources, in the
* form filter={expression}. Your {expression} must be in the format:
* field_name comparison_string literal_string.
@@ -10473,7 +10596,7 @@ class TargetInstancesResourceApi {
* nextPageToken returned by a previous list request to get the next page of
* results.
*
- * Completes with a [TargetInstanceList].
+ * Completes with a [TargetHttpsProxyList].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -10481,7 +10604,7 @@ class TargetInstancesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<TargetInstanceList> list(core.String project, core.String zone, {core.String filter, core.int maxResults, core.String pageToken}) {
+ async.Future<TargetHttpsProxyList> list(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -10492,9 +10615,6 @@ class TargetInstancesResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (zone == null) {
- throw new core.ArgumentError("Parameter zone is required.");
- }
if (filter != null) {
_queryParams["filter"] = [filter];
}
@@ -10505,7 +10625,7 @@ class TargetInstancesResourceApi {
_queryParams["pageToken"] = [pageToken];
}
- _url = commons.Escaper.ecapeVariable('$project') + '/zones/' + commons.Escaper.ecapeVariable('$zone') + '/targetInstances';
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/targetHttpsProxies';
var _response = _requester.request(_url,
"GET",
@@ -10514,20 +10634,11 @@ class TargetInstancesResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new TargetInstanceList.fromJson(data));
+ return _response.then((data) => new TargetHttpsProxyList.fromJson(data));
}
-}
-
-
-class TargetPoolsResourceApi {
- final commons.ApiRequester _requester;
-
- TargetPoolsResourceApi(commons.ApiRequester client) :
- _requester = client;
-
/**
- * Adds health check URLs to a target pool.
+ * Replaces SslCertificates for TargetHttpsProxy.
*
* [request] - The metadata request object.
*
@@ -10537,10 +10648,8 @@ class TargetPoolsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [region] - Name of the region scoping this request.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
- * [targetPool] - Name of the target pool to add a health check to.
+ * [targetHttpsProxy] - Name of the TargetHttpsProxy resource to set an
+ * SslCertificates resource for.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
* Completes with a [Operation].
@@ -10551,7 +10660,7 @@ class TargetPoolsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> addHealthCheck(TargetPoolsAddHealthCheckRequest request, core.String project, core.String region, core.String targetPool) {
+ async.Future<Operation> setSslCertificates(TargetHttpsProxiesSetSslCertificatesRequest request, core.String project, core.String targetHttpsProxy) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -10565,14 +10674,11 @@ class TargetPoolsResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (region == null) {
- throw new core.ArgumentError("Parameter region is required.");
- }
- if (targetPool == null) {
- throw new core.ArgumentError("Parameter targetPool is required.");
+ if (targetHttpsProxy == null) {
+ throw new core.ArgumentError("Parameter targetHttpsProxy is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools/' + commons.Escaper.ecapeVariable('$targetPool') + '/addHealthCheck';
+ _url = commons.Escaper.ecapeVariable('$project') + '/targetHttpsProxies/' + commons.Escaper.ecapeVariable('$targetHttpsProxy') + '/setSslCertificates';
var _response = _requester.request(_url,
"POST",
@@ -10585,7 +10691,7 @@ class TargetPoolsResourceApi {
}
/**
- * Adds an instance to a target pool.
+ * Changes the URL map for TargetHttpsProxy.
*
* [request] - The metadata request object.
*
@@ -10595,10 +10701,8 @@ class TargetPoolsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [region] - Name of the region scoping this request.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
- * [targetPool] - Name of the TargetPool resource to add instances to.
+ * [targetHttpsProxy] - Name of the TargetHttpsProxy resource whose URL map is
+ * to be set.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
* Completes with a [Operation].
@@ -10609,7 +10713,7 @@ class TargetPoolsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> addInstance(TargetPoolsAddInstanceRequest request, core.String project, core.String region, core.String targetPool) {
+ async.Future<Operation> setUrlMap(UrlMapReference request, core.String project, core.String targetHttpsProxy) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -10623,14 +10727,11 @@ class TargetPoolsResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (region == null) {
- throw new core.ArgumentError("Parameter region is required.");
- }
- if (targetPool == null) {
- throw new core.ArgumentError("Parameter targetPool is required.");
+ if (targetHttpsProxy == null) {
+ throw new core.ArgumentError("Parameter targetHttpsProxy is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools/' + commons.Escaper.ecapeVariable('$targetPool') + '/addInstance';
+ _url = commons.Escaper.ecapeVariable('$project') + '/targetHttpsProxies/' + commons.Escaper.ecapeVariable('$targetHttpsProxy') + '/setUrlMap';
var _response = _requester.request(_url,
"POST",
@@ -10642,8 +10743,17 @@ class TargetPoolsResourceApi {
return _response.then((data) => new Operation.fromJson(data));
}
+}
+
+
+class TargetInstancesResourceApi {
+ final commons.ApiRequester _requester;
+
+ TargetInstancesResourceApi(commons.ApiRequester client) :
+ _requester = client;
+
/**
- * Retrieves an aggregated list of target pools.
+ * Retrieves an aggregated list of target instances.
*
* Request parameters:
*
@@ -10688,7 +10798,7 @@ class TargetPoolsResourceApi {
* nextPageToken returned by a previous list request to get the next page of
* results.
*
- * Completes with a [TargetPoolAggregatedList].
+ * Completes with a [TargetInstanceAggregatedList].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -10696,7 +10806,7 @@ class TargetPoolsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<TargetPoolAggregatedList> aggregatedList(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
+ async.Future<TargetInstanceAggregatedList> aggregatedList(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -10717,7 +10827,7 @@ class TargetPoolsResourceApi {
_queryParams["pageToken"] = [pageToken];
}
- _url = commons.Escaper.ecapeVariable('$project') + '/aggregated/targetPools';
+ _url = commons.Escaper.ecapeVariable('$project') + '/aggregated/targetInstances';
var _response = _requester.request(_url,
"GET",
@@ -10726,11 +10836,11 @@ class TargetPoolsResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new TargetPoolAggregatedList.fromJson(data));
+ return _response.then((data) => new TargetInstanceAggregatedList.fromJson(data));
}
/**
- * Deletes the specified target pool.
+ * Deletes the specified TargetInstance resource.
*
* Request parameters:
*
@@ -10738,10 +10848,10 @@ class TargetPoolsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [region] - Name of the region scoping this request.
+ * [zone] - Name of the zone scoping this request.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * [targetPool] - Name of the TargetPool resource to delete.
+ * [targetInstance] - Name of the TargetInstance resource to delete.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
* Completes with a [Operation].
@@ -10752,7 +10862,7 @@ class TargetPoolsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> delete(core.String project, core.String region, core.String targetPool) {
+ async.Future<Operation> delete(core.String project, core.String zone, core.String targetInstance) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -10763,14 +10873,14 @@ class TargetPoolsResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (region == null) {
- throw new core.ArgumentError("Parameter region is required.");
+ if (zone == null) {
+ throw new core.ArgumentError("Parameter zone is required.");
}
- if (targetPool == null) {
- throw new core.ArgumentError("Parameter targetPool is required.");
+ if (targetInstance == null) {
+ throw new core.ArgumentError("Parameter targetInstance is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools/' + commons.Escaper.ecapeVariable('$targetPool');
+ _url = commons.Escaper.ecapeVariable('$project') + '/zones/' + commons.Escaper.ecapeVariable('$zone') + '/targetInstances/' + commons.Escaper.ecapeVariable('$targetInstance');
var _response = _requester.request(_url,
"DELETE",
@@ -10783,8 +10893,8 @@ class TargetPoolsResourceApi {
}
/**
- * Returns the specified target pool. Get a list of available target pools by
- * making a list() request.
+ * Returns the specified TargetInstance resource. Get a list of available
+ * target instances by making a list() request.
*
* Request parameters:
*
@@ -10792,13 +10902,13 @@ class TargetPoolsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [region] - Name of the region scoping this request.
+ * [zone] - Name of the zone scoping this request.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * [targetPool] - Name of the TargetPool resource to return.
+ * [targetInstance] - Name of the TargetInstance resource to return.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * Completes with a [TargetPool].
+ * Completes with a [TargetInstance].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -10806,7 +10916,7 @@ class TargetPoolsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<TargetPool> get(core.String project, core.String region, core.String targetPool) {
+ async.Future<TargetInstance> get(core.String project, core.String zone, core.String targetInstance) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -10817,14 +10927,14 @@ class TargetPoolsResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (region == null) {
- throw new core.ArgumentError("Parameter region is required.");
+ if (zone == null) {
+ throw new core.ArgumentError("Parameter zone is required.");
}
- if (targetPool == null) {
- throw new core.ArgumentError("Parameter targetPool is required.");
+ if (targetInstance == null) {
+ throw new core.ArgumentError("Parameter targetInstance is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools/' + commons.Escaper.ecapeVariable('$targetPool');
+ _url = commons.Escaper.ecapeVariable('$project') + '/zones/' + commons.Escaper.ecapeVariable('$zone') + '/targetInstances/' + commons.Escaper.ecapeVariable('$targetInstance');
var _response = _requester.request(_url,
"GET",
@@ -10833,12 +10943,12 @@ class TargetPoolsResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new TargetPool.fromJson(data));
+ return _response.then((data) => new TargetInstance.fromJson(data));
}
/**
- * Gets the most recent health check results for each IP for the instance that
- * is referenced by the given target pool.
+ * Creates a TargetInstance resource in the specified project and zone using
+ * the data included in the request.
*
* [request] - The metadata request object.
*
@@ -10848,14 +10958,10 @@ class TargetPoolsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [region] - Name of the region scoping this request.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
- * [targetPool] - Name of the TargetPool resource to which the queried
- * instance belongs.
+ * [zone] - Name of the zone scoping this request.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * Completes with a [TargetPoolInstanceHealth].
+ * Completes with a [Operation].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -10863,7 +10969,7 @@ class TargetPoolsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<TargetPoolInstanceHealth> getHealth(InstanceReference request, core.String project, core.String region, core.String targetPool) {
+ async.Future<Operation> insert(TargetInstance request, core.String project, core.String zone) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -10877,14 +10983,11 @@ class TargetPoolsResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (region == null) {
- throw new core.ArgumentError("Parameter region is required.");
- }
- if (targetPool == null) {
- throw new core.ArgumentError("Parameter targetPool is required.");
+ if (zone == null) {
+ throw new core.ArgumentError("Parameter zone is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools/' + commons.Escaper.ecapeVariable('$targetPool') + '/getHealth';
+ _url = commons.Escaper.ecapeVariable('$project') + '/zones/' + commons.Escaper.ecapeVariable('$zone') + '/targetInstances';
var _response = _requester.request(_url,
"POST",
@@ -10893,14 +10996,12 @@ class TargetPoolsResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new TargetPoolInstanceHealth.fromJson(data));
+ return _response.then((data) => new Operation.fromJson(data));
}
/**
- * Creates a target pool in the specified project and region using the data
- * included in the request.
- *
- * [request] - The metadata request object.
+ * Retrieves a list of TargetInstance resources available to the specified
+ * project and zone.
*
* Request parameters:
*
@@ -10908,71 +11009,20 @@ class TargetPoolsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [region] - Name of the region scoping this request.
+ * [zone] - Name of the zone scoping this request.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * Completes with a [Operation].
+ * [filter] - Sets a filter expression for filtering listed resources, in the
+ * form filter={expression}. Your {expression} must be in the format:
+ * field_name comparison_string literal_string.
*
- * Completes with a [commons.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<Operation> insert(TargetPool request, core.String project, core.String region) {
- var _url = null;
- var _queryParams = new core.Map();
- var _uploadMedia = null;
- var _uploadOptions = null;
- var _downloadOptions = commons.DownloadOptions.Metadata;
- var _body = null;
-
- if (request != null) {
- _body = convert.JSON.encode((request).toJson());
- }
- if (project == null) {
- throw new core.ArgumentError("Parameter project is required.");
- }
- if (region == null) {
- throw new core.ArgumentError("Parameter region is required.");
- }
-
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools';
-
- var _response = _requester.request(_url,
- "POST",
- body: _body,
- queryParams: _queryParams,
- uploadOptions: _uploadOptions,
- uploadMedia: _uploadMedia,
- downloadOptions: _downloadOptions);
- return _response.then((data) => new Operation.fromJson(data));
- }
-
- /**
- * Retrieves a list of target pools available to the specified project and
- * region.
- *
- * Request parameters:
- *
- * [project] - Project ID for this request.
- * Value must have pattern
- * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
- *
- * [region] - Name of the region scoping this request.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
- * [filter] - Sets a filter expression for filtering listed resources, in the
- * form filter={expression}. Your {expression} must be in the format:
- * field_name comparison_string literal_string.
- *
- * The field_name is the name of the field you want to compare. Only atomic
- * field types are supported (string, number, boolean). The comparison_string
- * must be either eq (equals) or ne (not equals). The literal_string is the
- * string value to filter to. The literal value must be valid for the type of
- * field you are filtering by (string, number, boolean). For string fields,
- * the literal value is interpreted as a regular expression using RE2 syntax.
- * The literal value must match the entire field.
+ * The field_name is the name of the field you want to compare. Only atomic
+ * field types are supported (string, number, boolean). The comparison_string
+ * must be either eq (equals) or ne (not equals). The literal_string is the
+ * string value to filter to. The literal value must be valid for the type of
+ * field you are filtering by (string, number, boolean). For string fields,
+ * the literal value is interpreted as a regular expression using RE2 syntax.
+ * The literal value must match the entire field.
*
* For example, to filter for instances that do not have a name of
* example-instance, you would use filter=name ne example-instance.
@@ -10999,7 +11049,7 @@ class TargetPoolsResourceApi {
* nextPageToken returned by a previous list request to get the next page of
* results.
*
- * Completes with a [TargetPoolList].
+ * Completes with a [TargetInstanceList].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -11007,7 +11057,7 @@ class TargetPoolsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<TargetPoolList> list(core.String project, core.String region, {core.String filter, core.int maxResults, core.String pageToken}) {
+ async.Future<TargetInstanceList> list(core.String project, core.String zone, {core.String filter, core.int maxResults, core.String pageToken}) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -11018,8 +11068,8 @@ class TargetPoolsResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (region == null) {
- throw new core.ArgumentError("Parameter region is required.");
+ if (zone == null) {
+ throw new core.ArgumentError("Parameter zone is required.");
}
if (filter != null) {
_queryParams["filter"] = [filter];
@@ -11031,7 +11081,7 @@ class TargetPoolsResourceApi {
_queryParams["pageToken"] = [pageToken];
}
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools';
+ _url = commons.Escaper.ecapeVariable('$project') + '/zones/' + commons.Escaper.ecapeVariable('$zone') + '/targetInstances';
var _response = _requester.request(_url,
"GET",
@@ -11040,69 +11090,20 @@ class TargetPoolsResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new TargetPoolList.fromJson(data));
+ return _response.then((data) => new TargetInstanceList.fromJson(data));
}
- /**
- * Removes health check URL from a target pool.
- *
- * [request] - The metadata request object.
- *
- * Request parameters:
- *
- * [project] - Project ID for this request.
- * Value must have pattern
- * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
- *
- * [region] - Name of the region for this request.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
- * [targetPool] - Name of the target pool to remove health checks from.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
- * Completes with a [Operation].
- *
- * Completes with a [commons.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<Operation> removeHealthCheck(TargetPoolsRemoveHealthCheckRequest request, core.String project, core.String region, core.String targetPool) {
- var _url = null;
- var _queryParams = new core.Map();
- var _uploadMedia = null;
- var _uploadOptions = null;
- var _downloadOptions = commons.DownloadOptions.Metadata;
- var _body = null;
+}
- if (request != null) {
- _body = convert.JSON.encode((request).toJson());
- }
- if (project == null) {
- throw new core.ArgumentError("Parameter project is required.");
- }
- if (region == null) {
- throw new core.ArgumentError("Parameter region is required.");
- }
- if (targetPool == null) {
- throw new core.ArgumentError("Parameter targetPool is required.");
- }
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools/' + commons.Escaper.ecapeVariable('$targetPool') + '/removeHealthCheck';
+class TargetPoolsResourceApi {
+ final commons.ApiRequester _requester;
- var _response = _requester.request(_url,
- "POST",
- body: _body,
- queryParams: _queryParams,
- uploadOptions: _uploadOptions,
- uploadMedia: _uploadMedia,
- downloadOptions: _downloadOptions);
- return _response.then((data) => new Operation.fromJson(data));
- }
+ TargetPoolsResourceApi(commons.ApiRequester client) :
+ _requester = client;
/**
- * Removes instance URL from a target pool.
+ * Adds health check URLs to a target pool.
*
* [request] - The metadata request object.
*
@@ -11115,7 +11116,7 @@ class TargetPoolsResourceApi {
* [region] - Name of the region scoping this request.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * [targetPool] - Name of the TargetPool resource to remove instances from.
+ * [targetPool] - Name of the target pool to add a health check to.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
* Completes with a [Operation].
@@ -11126,7 +11127,7 @@ class TargetPoolsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> removeInstance(TargetPoolsRemoveInstanceRequest request, core.String project, core.String region, core.String targetPool) {
+ async.Future<Operation> addHealthCheck(TargetPoolsAddHealthCheckRequest request, core.String project, core.String region, core.String targetPool) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -11147,7 +11148,7 @@ class TargetPoolsResourceApi {
throw new core.ArgumentError("Parameter targetPool is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools/' + commons.Escaper.ecapeVariable('$targetPool') + '/removeInstance';
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools/' + commons.Escaper.ecapeVariable('$targetPool') + '/addHealthCheck';
var _response = _requester.request(_url,
"POST",
@@ -11160,7 +11161,7 @@ class TargetPoolsResourceApi {
}
/**
- * Changes a backup target pool's configurations.
+ * Adds an instance to a target pool.
*
* [request] - The metadata request object.
*
@@ -11173,11 +11174,9 @@ class TargetPoolsResourceApi {
* [region] - Name of the region scoping this request.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * [targetPool] - Name of the TargetPool resource to set a backup pool for.
+ * [targetPool] - Name of the TargetPool resource to add instances to.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * [failoverRatio] - New failoverRatio value for the target pool.
- *
* Completes with a [Operation].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
@@ -11186,7 +11185,7 @@ class TargetPoolsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> setBackup(TargetReference request, core.String project, core.String region, core.String targetPool, {core.double failoverRatio}) {
+ async.Future<Operation> addInstance(TargetPoolsAddInstanceRequest request, core.String project, core.String region, core.String targetPool) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -11206,11 +11205,8 @@ class TargetPoolsResourceApi {
if (targetPool == null) {
throw new core.ArgumentError("Parameter targetPool is required.");
}
- if (failoverRatio != null) {
- _queryParams["failoverRatio"] = ["${failoverRatio}"];
- }
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools/' + commons.Escaper.ecapeVariable('$targetPool') + '/setBackup';
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools/' + commons.Escaper.ecapeVariable('$targetPool') + '/addInstance';
var _response = _requester.request(_url,
"POST",
@@ -11222,17 +11218,8 @@ class TargetPoolsResourceApi {
return _response.then((data) => new Operation.fromJson(data));
}
-}
-
-
-class TargetVpnGatewaysResourceApi {
- final commons.ApiRequester _requester;
-
- TargetVpnGatewaysResourceApi(commons.ApiRequester client) :
- _requester = client;
-
/**
- * Retrieves an aggregated list of target VPN gateways.
+ * Retrieves an aggregated list of target pools.
*
* Request parameters:
*
@@ -11277,7 +11264,7 @@ class TargetVpnGatewaysResourceApi {
* nextPageToken returned by a previous list request to get the next page of
* results.
*
- * Completes with a [TargetVpnGatewayAggregatedList].
+ * Completes with a [TargetPoolAggregatedList].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -11285,7 +11272,7 @@ class TargetVpnGatewaysResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<TargetVpnGatewayAggregatedList> aggregatedList(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
+ async.Future<TargetPoolAggregatedList> aggregatedList(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -11306,7 +11293,7 @@ class TargetVpnGatewaysResourceApi {
_queryParams["pageToken"] = [pageToken];
}
- _url = commons.Escaper.ecapeVariable('$project') + '/aggregated/targetVpnGateways';
+ _url = commons.Escaper.ecapeVariable('$project') + '/aggregated/targetPools';
var _response = _requester.request(_url,
"GET",
@@ -11315,11 +11302,11 @@ class TargetVpnGatewaysResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new TargetVpnGatewayAggregatedList.fromJson(data));
+ return _response.then((data) => new TargetPoolAggregatedList.fromJson(data));
}
/**
- * Deletes the specified target VPN gateway.
+ * Deletes the specified target pool.
*
* Request parameters:
*
@@ -11327,10 +11314,10 @@ class TargetVpnGatewaysResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [region] - Name of the region for this request.
+ * [region] - Name of the region scoping this request.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * [targetVpnGateway] - Name of the target VPN gateway to delete.
+ * [targetPool] - Name of the TargetPool resource to delete.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
* Completes with a [Operation].
@@ -11341,7 +11328,7 @@ class TargetVpnGatewaysResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> delete(core.String project, core.String region, core.String targetVpnGateway) {
+ async.Future<Operation> delete(core.String project, core.String region, core.String targetPool) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -11355,11 +11342,11 @@ class TargetVpnGatewaysResourceApi {
if (region == null) {
throw new core.ArgumentError("Parameter region is required.");
}
- if (targetVpnGateway == null) {
- throw new core.ArgumentError("Parameter targetVpnGateway is required.");
+ if (targetPool == null) {
+ throw new core.ArgumentError("Parameter targetPool is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetVpnGateways/' + commons.Escaper.ecapeVariable('$targetVpnGateway');
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools/' + commons.Escaper.ecapeVariable('$targetPool');
var _response = _requester.request(_url,
"DELETE",
@@ -11372,8 +11359,8 @@ class TargetVpnGatewaysResourceApi {
}
/**
- * Returns the specified target VPN gateway. Get a list of available target
- * VPN gateways by making a list() request.
+ * Returns the specified target pool. Get a list of available target pools by
+ * making a list() request.
*
* Request parameters:
*
@@ -11381,13 +11368,13 @@ class TargetVpnGatewaysResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [region] - Name of the region for this request.
+ * [region] - Name of the region scoping this request.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * [targetVpnGateway] - Name of the target VPN gateway to return.
+ * [targetPool] - Name of the TargetPool resource to return.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * Completes with a [TargetVpnGateway].
+ * Completes with a [TargetPool].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -11395,7 +11382,7 @@ class TargetVpnGatewaysResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<TargetVpnGateway> get(core.String project, core.String region, core.String targetVpnGateway) {
+ async.Future<TargetPool> get(core.String project, core.String region, core.String targetPool) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -11409,11 +11396,11 @@ class TargetVpnGatewaysResourceApi {
if (region == null) {
throw new core.ArgumentError("Parameter region is required.");
}
- if (targetVpnGateway == null) {
- throw new core.ArgumentError("Parameter targetVpnGateway is required.");
+ if (targetPool == null) {
+ throw new core.ArgumentError("Parameter targetPool is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetVpnGateways/' + commons.Escaper.ecapeVariable('$targetVpnGateway');
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools/' + commons.Escaper.ecapeVariable('$targetPool');
var _response = _requester.request(_url,
"GET",
@@ -11422,12 +11409,12 @@ class TargetVpnGatewaysResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new TargetVpnGateway.fromJson(data));
+ return _response.then((data) => new TargetPool.fromJson(data));
}
/**
- * Creates a target VPN gateway in the specified project and region using the
- * data included in the request.
+ * Gets the most recent health check results for each IP for the instance that
+ * is referenced by the given target pool.
*
* [request] - The metadata request object.
*
@@ -11437,7 +11424,67 @@ class TargetVpnGatewaysResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [region] - Name of the region for this request.
+ * [region] - Name of the region scoping this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * [targetPool] - Name of the TargetPool resource to which the queried
+ * instance belongs.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * Completes with a [TargetPoolInstanceHealth].
+ *
+ * Completes with a [commons.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<TargetPoolInstanceHealth> getHealth(InstanceReference request, core.String project, core.String region, core.String targetPool) {
+ var _url = null;
+ var _queryParams = new core.Map();
+ var _uploadMedia = null;
+ var _uploadOptions = null;
+ var _downloadOptions = commons.DownloadOptions.Metadata;
+ var _body = null;
+
+ if (request != null) {
+ _body = convert.JSON.encode((request).toJson());
+ }
+ if (project == null) {
+ throw new core.ArgumentError("Parameter project is required.");
+ }
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
+ if (targetPool == null) {
+ throw new core.ArgumentError("Parameter targetPool is required.");
+ }
+
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools/' + commons.Escaper.ecapeVariable('$targetPool') + '/getHealth';
+
+ var _response = _requester.request(_url,
+ "POST",
+ body: _body,
+ queryParams: _queryParams,
+ uploadOptions: _uploadOptions,
+ uploadMedia: _uploadMedia,
+ downloadOptions: _downloadOptions);
+ return _response.then((data) => new TargetPoolInstanceHealth.fromJson(data));
+ }
+
+ /**
+ * Creates a target pool in the specified project and region using the data
+ * included in the request.
+ *
+ * [request] - The metadata request object.
+ *
+ * Request parameters:
+ *
+ * [project] - Project ID for this request.
+ * Value must have pattern
+ * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
+ *
+ * [region] - Name of the region scoping this request.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
* Completes with a [Operation].
@@ -11448,7 +11495,7 @@ class TargetVpnGatewaysResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> insert(TargetVpnGateway request, core.String project, core.String region) {
+ async.Future<Operation> insert(TargetPool request, core.String project, core.String region) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -11466,7 +11513,7 @@ class TargetVpnGatewaysResourceApi {
throw new core.ArgumentError("Parameter region is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetVpnGateways';
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools';
var _response = _requester.request(_url,
"POST",
@@ -11479,8 +11526,8 @@ class TargetVpnGatewaysResourceApi {
}
/**
- * Retrieves a list of target VPN gateways available to the specified project
- * and region.
+ * Retrieves a list of target pools available to the specified project and
+ * region.
*
* Request parameters:
*
@@ -11488,7 +11535,7 @@ class TargetVpnGatewaysResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [region] - Name of the region for this request.
+ * [region] - Name of the region scoping this request.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
* [filter] - Sets a filter expression for filtering listed resources, in the
@@ -11528,7 +11575,7 @@ class TargetVpnGatewaysResourceApi {
* nextPageToken returned by a previous list request to get the next page of
* results.
*
- * Completes with a [TargetVpnGatewayList].
+ * Completes with a [TargetPoolList].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -11536,7 +11583,7 @@ class TargetVpnGatewaysResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<TargetVpnGatewayList> list(core.String project, core.String region, {core.String filter, core.int maxResults, core.String pageToken}) {
+ async.Future<TargetPoolList> list(core.String project, core.String region, {core.String filter, core.int maxResults, core.String pageToken}) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -11560,7 +11607,7 @@ class TargetVpnGatewaysResourceApi {
_queryParams["pageToken"] = [pageToken];
}
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetVpnGateways';
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools';
var _response = _requester.request(_url,
"GET",
@@ -11569,20 +11616,13 @@ class TargetVpnGatewaysResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new TargetVpnGatewayList.fromJson(data));
+ return _response.then((data) => new TargetPoolList.fromJson(data));
}
-}
-
-
-class UrlMapsResourceApi {
- final commons.ApiRequester _requester;
-
- UrlMapsResourceApi(commons.ApiRequester client) :
- _requester = client;
-
/**
- * Deletes the specified UrlMap resource.
+ * Removes health check URL from a target pool.
+ *
+ * [request] - The metadata request object.
*
* Request parameters:
*
@@ -11590,7 +11630,10 @@ class UrlMapsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [urlMap] - Name of the UrlMap resource to delete.
+ * [region] - Name of the region for this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * [targetPool] - Name of the target pool to remove health checks from.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
* Completes with a [Operation].
@@ -11601,7 +11644,7 @@ class UrlMapsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> delete(core.String project, core.String urlMap) {
+ async.Future<Operation> removeHealthCheck(TargetPoolsRemoveHealthCheckRequest request, core.String project, core.String region, core.String targetPool) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -11609,17 +11652,23 @@ class UrlMapsResourceApi {
var _downloadOptions = commons.DownloadOptions.Metadata;
var _body = null;
+ if (request != null) {
+ _body = convert.JSON.encode((request).toJson());
+ }
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (urlMap == null) {
- throw new core.ArgumentError("Parameter urlMap is required.");
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
+ if (targetPool == null) {
+ throw new core.ArgumentError("Parameter targetPool is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/urlMaps/' + commons.Escaper.ecapeVariable('$urlMap');
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools/' + commons.Escaper.ecapeVariable('$targetPool') + '/removeHealthCheck';
var _response = _requester.request(_url,
- "DELETE",
+ "POST",
body: _body,
queryParams: _queryParams,
uploadOptions: _uploadOptions,
@@ -11629,8 +11678,9 @@ class UrlMapsResourceApi {
}
/**
- * Returns the specified UrlMap resource. Get a list of available URL maps by
- * making a list() request.
+ * Removes instance URL from a target pool.
+ *
+ * [request] - The metadata request object.
*
* Request parameters:
*
@@ -11638,10 +11688,13 @@ class UrlMapsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [urlMap] - Name of the UrlMap resource to return.
+ * [region] - Name of the region scoping this request.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * Completes with a [UrlMap].
+ * [targetPool] - Name of the TargetPool resource to remove instances from.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * Completes with a [Operation].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -11649,7 +11702,7 @@ class UrlMapsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<UrlMap> get(core.String project, core.String urlMap) {
+ async.Future<Operation> removeInstance(TargetPoolsRemoveInstanceRequest request, core.String project, core.String region, core.String targetPool) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -11657,28 +11710,33 @@ class UrlMapsResourceApi {
var _downloadOptions = commons.DownloadOptions.Metadata;
var _body = null;
+ if (request != null) {
+ _body = convert.JSON.encode((request).toJson());
+ }
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (urlMap == null) {
- throw new core.ArgumentError("Parameter urlMap is required.");
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
+ if (targetPool == null) {
+ throw new core.ArgumentError("Parameter targetPool is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/urlMaps/' + commons.Escaper.ecapeVariable('$urlMap');
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools/' + commons.Escaper.ecapeVariable('$targetPool') + '/removeInstance';
var _response = _requester.request(_url,
- "GET",
+ "POST",
body: _body,
queryParams: _queryParams,
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new UrlMap.fromJson(data));
+ return _response.then((data) => new Operation.fromJson(data));
}
/**
- * Creates a UrlMap resource in the specified project using the data included
- * in the request.
+ * Changes a backup target pool's configurations.
*
* [request] - The metadata request object.
*
@@ -11688,6 +11746,14 @@ class UrlMapsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
+ * [region] - Name of the region scoping this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * [targetPool] - Name of the TargetPool resource to set a backup pool for.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * [failoverRatio] - New failoverRatio value for the target pool.
+ *
* Completes with a [Operation].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
@@ -11696,7 +11762,7 @@ class UrlMapsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> insert(UrlMap request, core.String project) {
+ async.Future<Operation> setBackup(TargetReference request, core.String project, core.String region, core.String targetPool, {core.double failoverRatio}) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -11710,8 +11776,17 @@ class UrlMapsResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
+ if (targetPool == null) {
+ throw new core.ArgumentError("Parameter targetPool is required.");
+ }
+ if (failoverRatio != null) {
+ _queryParams["failoverRatio"] = ["${failoverRatio}"];
+ }
- _url = commons.Escaper.ecapeVariable('$project') + '/global/urlMaps';
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetPools/' + commons.Escaper.ecapeVariable('$targetPool') + '/setBackup';
var _response = _requester.request(_url,
"POST",
@@ -11723,8 +11798,17 @@ class UrlMapsResourceApi {
return _response.then((data) => new Operation.fromJson(data));
}
+}
+
+
+class TargetVpnGatewaysResourceApi {
+ final commons.ApiRequester _requester;
+
+ TargetVpnGatewaysResourceApi(commons.ApiRequester client) :
+ _requester = client;
+
/**
- * Retrieves the list of UrlMap resources available to the specified project.
+ * Retrieves an aggregated list of target VPN gateways.
*
* Request parameters:
*
@@ -11769,7 +11853,7 @@ class UrlMapsResourceApi {
* nextPageToken returned by a previous list request to get the next page of
* results.
*
- * Completes with a [UrlMapList].
+ * Completes with a [TargetVpnGatewayAggregatedList].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -11777,7 +11861,7 @@ class UrlMapsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<UrlMapList> list(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
+ async.Future<TargetVpnGatewayAggregatedList> aggregatedList(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -11798,7 +11882,7 @@ class UrlMapsResourceApi {
_queryParams["pageToken"] = [pageToken];
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/urlMaps';
+ _url = commons.Escaper.ecapeVariable('$project') + '/aggregated/targetVpnGateways';
var _response = _requester.request(_url,
"GET",
@@ -11807,14 +11891,11 @@ class UrlMapsResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new UrlMapList.fromJson(data));
+ return _response.then((data) => new TargetVpnGatewayAggregatedList.fromJson(data));
}
/**
- * Updates the entire content of the UrlMap resource. This method supports
- * patch semantics.
- *
- * [request] - The metadata request object.
+ * Deletes the specified target VPN gateway.
*
* Request parameters:
*
@@ -11822,7 +11903,10 @@ class UrlMapsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [urlMap] - Name of the UrlMap resource to update.
+ * [region] - Name of the region for this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * [targetVpnGateway] - Name of the target VPN gateway to delete.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
* Completes with a [Operation].
@@ -11833,7 +11917,7 @@ class UrlMapsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> patch(UrlMap request, core.String project, core.String urlMap) {
+ async.Future<Operation> delete(core.String project, core.String region, core.String targetVpnGateway) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -11841,20 +11925,20 @@ class UrlMapsResourceApi {
var _downloadOptions = commons.DownloadOptions.Metadata;
var _body = null;
- if (request != null) {
- _body = convert.JSON.encode((request).toJson());
- }
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (urlMap == null) {
- throw new core.ArgumentError("Parameter urlMap is required.");
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
+ if (targetVpnGateway == null) {
+ throw new core.ArgumentError("Parameter targetVpnGateway is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/urlMaps/' + commons.Escaper.ecapeVariable('$urlMap');
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetVpnGateways/' + commons.Escaper.ecapeVariable('$targetVpnGateway');
var _response = _requester.request(_url,
- "PATCH",
+ "DELETE",
body: _body,
queryParams: _queryParams,
uploadOptions: _uploadOptions,
@@ -11864,9 +11948,8 @@ class UrlMapsResourceApi {
}
/**
- * Updates the entire content of the UrlMap resource.
- *
- * [request] - The metadata request object.
+ * Returns the specified target VPN gateway. Get a list of available target
+ * VPN gateways by making a list() request.
*
* Request parameters:
*
@@ -11874,10 +11957,13 @@ class UrlMapsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [urlMap] - Name of the UrlMap resource to update.
+ * [region] - Name of the region for this request.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * Completes with a [Operation].
+ * [targetVpnGateway] - Name of the target VPN gateway to return.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * Completes with a [TargetVpnGateway].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -11885,7 +11971,7 @@ class UrlMapsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> update(UrlMap request, core.String project, core.String urlMap) {
+ async.Future<TargetVpnGateway> get(core.String project, core.String region, core.String targetVpnGateway) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -11893,32 +11979,31 @@ class UrlMapsResourceApi {
var _downloadOptions = commons.DownloadOptions.Metadata;
var _body = null;
- if (request != null) {
- _body = convert.JSON.encode((request).toJson());
- }
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (urlMap == null) {
- throw new core.ArgumentError("Parameter urlMap is required.");
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
+ if (targetVpnGateway == null) {
+ throw new core.ArgumentError("Parameter targetVpnGateway is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/urlMaps/' + commons.Escaper.ecapeVariable('$urlMap');
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetVpnGateways/' + commons.Escaper.ecapeVariable('$targetVpnGateway');
var _response = _requester.request(_url,
- "PUT",
+ "GET",
body: _body,
queryParams: _queryParams,
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new Operation.fromJson(data));
+ return _response.then((data) => new TargetVpnGateway.fromJson(data));
}
/**
- * Runs static validation for the UrlMap. In particular, the tests of the
- * provided UrlMap will be run. Calling this method does NOT create the
- * UrlMap.
+ * Creates a target VPN gateway in the specified project and region using the
+ * data included in the request.
*
* [request] - The metadata request object.
*
@@ -11928,10 +12013,10 @@ class UrlMapsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [urlMap] - Name of the UrlMap resource to be validated as.
+ * [region] - Name of the region for this request.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * Completes with a [UrlMapsValidateResponse].
+ * Completes with a [Operation].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -11939,7 +12024,7 @@ class UrlMapsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<UrlMapsValidateResponse> validate(UrlMapsValidateRequest request, core.String project, core.String urlMap) {
+ async.Future<Operation> insert(TargetVpnGateway request, core.String project, core.String region) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -11953,11 +12038,11 @@ class UrlMapsResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (urlMap == null) {
- throw new core.ArgumentError("Parameter urlMap is required.");
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/global/urlMaps/' + commons.Escaper.ecapeVariable('$urlMap') + '/validate';
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetVpnGateways';
var _response = _requester.request(_url,
"POST",
@@ -11966,20 +12051,12 @@ class UrlMapsResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new UrlMapsValidateResponse.fromJson(data));
+ return _response.then((data) => new Operation.fromJson(data));
}
-}
-
-
-class VpnTunnelsResourceApi {
- final commons.ApiRequester _requester;
-
- VpnTunnelsResourceApi(commons.ApiRequester client) :
- _requester = client;
-
/**
- * Retrieves an aggregated list of VPN tunnels.
+ * Retrieves a list of target VPN gateways available to the specified project
+ * and region.
*
* Request parameters:
*
@@ -11987,6 +12064,9 @@ class VpnTunnelsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
+ * [region] - Name of the region for this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
* [filter] - Sets a filter expression for filtering listed resources, in the
* form filter={expression}. Your {expression} must be in the format:
* field_name comparison_string literal_string.
@@ -12024,7 +12104,7 @@ class VpnTunnelsResourceApi {
* nextPageToken returned by a previous list request to get the next page of
* results.
*
- * Completes with a [VpnTunnelAggregatedList].
+ * Completes with a [TargetVpnGatewayList].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -12032,7 +12112,7 @@ class VpnTunnelsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<VpnTunnelAggregatedList> aggregatedList(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
+ async.Future<TargetVpnGatewayList> list(core.String project, core.String region, {core.String filter, core.int maxResults, core.String pageToken}) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -12043,6 +12123,9 @@ class VpnTunnelsResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
if (filter != null) {
_queryParams["filter"] = [filter];
}
@@ -12053,7 +12136,7 @@ class VpnTunnelsResourceApi {
_queryParams["pageToken"] = [pageToken];
}
- _url = commons.Escaper.ecapeVariable('$project') + '/aggregated/vpnTunnels';
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/targetVpnGateways';
var _response = _requester.request(_url,
"GET",
@@ -12062,11 +12145,20 @@ class VpnTunnelsResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new VpnTunnelAggregatedList.fromJson(data));
+ return _response.then((data) => new TargetVpnGatewayList.fromJson(data));
}
+}
+
+
+class UrlMapsResourceApi {
+ final commons.ApiRequester _requester;
+
+ UrlMapsResourceApi(commons.ApiRequester client) :
+ _requester = client;
+
/**
- * Deletes the specified VpnTunnel resource.
+ * Deletes the specified UrlMap resource.
*
* Request parameters:
*
@@ -12074,10 +12166,7 @@ class VpnTunnelsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [region] - Name of the region for this request.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
- * [vpnTunnel] - Name of the VpnTunnel resource to delete.
+ * [urlMap] - Name of the UrlMap resource to delete.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
* Completes with a [Operation].
@@ -12088,7 +12177,7 @@ class VpnTunnelsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> delete(core.String project, core.String region, core.String vpnTunnel) {
+ async.Future<Operation> delete(core.String project, core.String urlMap) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -12099,14 +12188,11 @@ class VpnTunnelsResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (region == null) {
- throw new core.ArgumentError("Parameter region is required.");
- }
- if (vpnTunnel == null) {
- throw new core.ArgumentError("Parameter vpnTunnel is required.");
+ if (urlMap == null) {
+ throw new core.ArgumentError("Parameter urlMap is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/vpnTunnels/' + commons.Escaper.ecapeVariable('$vpnTunnel');
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/urlMaps/' + commons.Escaper.ecapeVariable('$urlMap');
var _response = _requester.request(_url,
"DELETE",
@@ -12119,8 +12205,8 @@ class VpnTunnelsResourceApi {
}
/**
- * Returns the specified VpnTunnel resource. Get a list of available VPN
- * tunnels by making a list() request.
+ * Returns the specified UrlMap resource. Get a list of available URL maps by
+ * making a list() request.
*
* Request parameters:
*
@@ -12128,13 +12214,10 @@ class VpnTunnelsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [region] - Name of the region for this request.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
- * [vpnTunnel] - Name of the VpnTunnel resource to return.
+ * [urlMap] - Name of the UrlMap resource to return.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * Completes with a [VpnTunnel].
+ * Completes with a [UrlMap].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -12142,7 +12225,7 @@ class VpnTunnelsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<VpnTunnel> get(core.String project, core.String region, core.String vpnTunnel) {
+ async.Future<UrlMap> get(core.String project, core.String urlMap) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -12153,14 +12236,11 @@ class VpnTunnelsResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (region == null) {
- throw new core.ArgumentError("Parameter region is required.");
- }
- if (vpnTunnel == null) {
- throw new core.ArgumentError("Parameter vpnTunnel is required.");
+ if (urlMap == null) {
+ throw new core.ArgumentError("Parameter urlMap is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/vpnTunnels/' + commons.Escaper.ecapeVariable('$vpnTunnel');
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/urlMaps/' + commons.Escaper.ecapeVariable('$urlMap');
var _response = _requester.request(_url,
"GET",
@@ -12169,12 +12249,12 @@ class VpnTunnelsResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new VpnTunnel.fromJson(data));
+ return _response.then((data) => new UrlMap.fromJson(data));
}
/**
- * Creates a VpnTunnel resource in the specified project and region using the
- * data included in the request.
+ * Creates a UrlMap resource in the specified project using the data included
+ * in the request.
*
* [request] - The metadata request object.
*
@@ -12184,9 +12264,6 @@ class VpnTunnelsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [region] - Name of the region for this request.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
* Completes with a [Operation].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
@@ -12195,7 +12272,7 @@ class VpnTunnelsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> insert(VpnTunnel request, core.String project, core.String region) {
+ async.Future<Operation> insert(UrlMap request, core.String project) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -12209,11 +12286,8 @@ class VpnTunnelsResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (region == null) {
- throw new core.ArgumentError("Parameter region is required.");
- }
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/vpnTunnels';
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/urlMaps';
var _response = _requester.request(_url,
"POST",
@@ -12226,8 +12300,7 @@ class VpnTunnelsResourceApi {
}
/**
- * Retrieves a list of VpnTunnel resources contained in the specified project
- * and region.
+ * Retrieves the list of UrlMap resources available to the specified project.
*
* Request parameters:
*
@@ -12235,9 +12308,6 @@ class VpnTunnelsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [region] - Name of the region for this request.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
* [filter] - Sets a filter expression for filtering listed resources, in the
* form filter={expression}. Your {expression} must be in the format:
* field_name comparison_string literal_string.
@@ -12275,7 +12345,7 @@ class VpnTunnelsResourceApi {
* nextPageToken returned by a previous list request to get the next page of
* results.
*
- * Completes with a [VpnTunnelList].
+ * Completes with a [UrlMapList].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -12283,7 +12353,7 @@ class VpnTunnelsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<VpnTunnelList> list(core.String project, core.String region, {core.String filter, core.int maxResults, core.String pageToken}) {
+ async.Future<UrlMapList> list(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -12294,9 +12364,6 @@ class VpnTunnelsResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (region == null) {
- throw new core.ArgumentError("Parameter region is required.");
- }
if (filter != null) {
_queryParams["filter"] = [filter];
}
@@ -12307,7 +12374,7 @@ class VpnTunnelsResourceApi {
_queryParams["pageToken"] = [pageToken];
}
- _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/vpnTunnels';
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/urlMaps';
var _response = _requester.request(_url,
"GET",
@@ -12316,20 +12383,14 @@ class VpnTunnelsResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new VpnTunnelList.fromJson(data));
+ return _response.then((data) => new UrlMapList.fromJson(data));
}
-}
-
-
-class ZoneOperationsResourceApi {
- final commons.ApiRequester _requester;
-
- ZoneOperationsResourceApi(commons.ApiRequester client) :
- _requester = client;
-
/**
- * Deletes the specified zone-specific Operations resource.
+ * Updates the entire content of the UrlMap resource. This method supports
+ * patch semantics.
+ *
+ * [request] - The metadata request object.
*
* Request parameters:
*
@@ -12337,11 +12398,10 @@ class ZoneOperationsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [zone] - Name of the zone for this request.
+ * [urlMap] - Name of the UrlMap resource to update.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * [operation] - Name of the Operations resource to delete.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ * Completes with a [Operation].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -12349,7 +12409,7 @@ class ZoneOperationsResourceApi {
* 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(core.String project, core.String zone, core.String operation) {
+ async.Future<Operation> patch(UrlMap request, core.String project, core.String urlMap) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -12357,32 +12417,32 @@ class ZoneOperationsResourceApi {
var _downloadOptions = commons.DownloadOptions.Metadata;
var _body = null;
+ if (request != null) {
+ _body = convert.JSON.encode((request).toJson());
+ }
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (zone == null) {
- throw new core.ArgumentError("Parameter zone is required.");
- }
- if (operation == null) {
- throw new core.ArgumentError("Parameter operation is required.");
+ if (urlMap == null) {
+ throw new core.ArgumentError("Parameter urlMap is required.");
}
- _downloadOptions = null;
-
- _url = commons.Escaper.ecapeVariable('$project') + '/zones/' + commons.Escaper.ecapeVariable('$zone') + '/operations/' + commons.Escaper.ecapeVariable('$operation');
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/urlMaps/' + commons.Escaper.ecapeVariable('$urlMap');
var _response = _requester.request(_url,
- "DELETE",
+ "PATCH",
body: _body,
queryParams: _queryParams,
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => null);
+ return _response.then((data) => new Operation.fromJson(data));
}
/**
- * Retrieves the specified zone-specific Operations resource.
+ * Updates the entire content of the UrlMap resource.
+ *
+ * [request] - The metadata request object.
*
* Request parameters:
*
@@ -12390,10 +12450,7 @@ class ZoneOperationsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [zone] - Name of the zone for this request.
- * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
- *
- * [operation] - Name of the Operations resource to return.
+ * [urlMap] - Name of the UrlMap resource to update.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
* Completes with a [Operation].
@@ -12404,7 +12461,7 @@ class ZoneOperationsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Operation> get(core.String project, core.String zone, core.String operation) {
+ async.Future<Operation> update(UrlMap request, core.String project, core.String urlMap) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -12412,20 +12469,20 @@ class ZoneOperationsResourceApi {
var _downloadOptions = commons.DownloadOptions.Metadata;
var _body = null;
+ if (request != null) {
+ _body = convert.JSON.encode((request).toJson());
+ }
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (zone == null) {
- throw new core.ArgumentError("Parameter zone is required.");
- }
- if (operation == null) {
- throw new core.ArgumentError("Parameter operation is required.");
+ if (urlMap == null) {
+ throw new core.ArgumentError("Parameter urlMap is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/zones/' + commons.Escaper.ecapeVariable('$zone') + '/operations/' + commons.Escaper.ecapeVariable('$operation');
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/urlMaps/' + commons.Escaper.ecapeVariable('$urlMap');
var _response = _requester.request(_url,
- "GET",
+ "PUT",
body: _body,
queryParams: _queryParams,
uploadOptions: _uploadOptions,
@@ -12435,8 +12492,11 @@ class ZoneOperationsResourceApi {
}
/**
- * Retrieves a list of Operation resources contained within the specified
- * zone.
+ * Runs static validation for the UrlMap. In particular, the tests of the
+ * provided UrlMap will be run. Calling this method does NOT create the
+ * UrlMap.
+ *
+ * [request] - The metadata request object.
*
* Request parameters:
*
@@ -12444,9 +12504,65 @@ class ZoneOperationsResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [zone] - Name of the zone for request.
+ * [urlMap] - Name of the UrlMap resource to be validated as.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
+ * Completes with a [UrlMapsValidateResponse].
+ *
+ * Completes with a [commons.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<UrlMapsValidateResponse> validate(UrlMapsValidateRequest request, core.String project, core.String urlMap) {
+ var _url = null;
+ var _queryParams = new core.Map();
+ var _uploadMedia = null;
+ var _uploadOptions = null;
+ var _downloadOptions = commons.DownloadOptions.Metadata;
+ var _body = null;
+
+ if (request != null) {
+ _body = convert.JSON.encode((request).toJson());
+ }
+ if (project == null) {
+ throw new core.ArgumentError("Parameter project is required.");
+ }
+ if (urlMap == null) {
+ throw new core.ArgumentError("Parameter urlMap is required.");
+ }
+
+ _url = commons.Escaper.ecapeVariable('$project') + '/global/urlMaps/' + commons.Escaper.ecapeVariable('$urlMap') + '/validate';
+
+ var _response = _requester.request(_url,
+ "POST",
+ body: _body,
+ queryParams: _queryParams,
+ uploadOptions: _uploadOptions,
+ uploadMedia: _uploadMedia,
+ downloadOptions: _downloadOptions);
+ return _response.then((data) => new UrlMapsValidateResponse.fromJson(data));
+ }
+
+}
+
+
+class VpnTunnelsResourceApi {
+ final commons.ApiRequester _requester;
+
+ VpnTunnelsResourceApi(commons.ApiRequester client) :
+ _requester = client;
+
+ /**
+ * Retrieves an aggregated list of VPN tunnels.
+ *
+ * Request parameters:
+ *
+ * [project] - Project ID for this request.
+ * Value must have pattern
+ * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
+ *
* [filter] - Sets a filter expression for filtering listed resources, in the
* form filter={expression}. Your {expression} must be in the format:
* field_name comparison_string literal_string.
@@ -12484,7 +12600,7 @@ class ZoneOperationsResourceApi {
* nextPageToken returned by a previous list request to get the next page of
* results.
*
- * Completes with a [OperationList].
+ * Completes with a [VpnTunnelAggregatedList].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -12492,7 +12608,7 @@ class ZoneOperationsResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<OperationList> list(core.String project, core.String zone, {core.String filter, core.int maxResults, core.String pageToken}) {
+ async.Future<VpnTunnelAggregatedList> aggregatedList(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -12503,9 +12619,6 @@ class ZoneOperationsResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (zone == null) {
- throw new core.ArgumentError("Parameter zone is required.");
- }
if (filter != null) {
_queryParams["filter"] = [filter];
}
@@ -12516,7 +12629,7 @@ class ZoneOperationsResourceApi {
_queryParams["pageToken"] = [pageToken];
}
- _url = commons.Escaper.ecapeVariable('$project') + '/zones/' + commons.Escaper.ecapeVariable('$zone') + '/operations';
+ _url = commons.Escaper.ecapeVariable('$project') + '/aggregated/vpnTunnels';
var _response = _requester.request(_url,
"GET",
@@ -12525,21 +12638,11 @@ class ZoneOperationsResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new OperationList.fromJson(data));
+ return _response.then((data) => new VpnTunnelAggregatedList.fromJson(data));
}
-}
-
-
-class ZonesResourceApi {
- final commons.ApiRequester _requester;
-
- ZonesResourceApi(commons.ApiRequester client) :
- _requester = client;
-
/**
- * Returns the specified Zone resource. Get a list of available zones by
- * making a list() request.
+ * Deletes the specified VpnTunnel resource.
*
* Request parameters:
*
@@ -12547,10 +12650,13 @@ class ZonesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [zone] - Name of the zone resource to return.
+ * [region] - Name of the region for this request.
* Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * Completes with a [Zone].
+ * [vpnTunnel] - Name of the VpnTunnel resource to delete.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * Completes with a [Operation].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -12558,7 +12664,7 @@ class ZonesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<Zone> get(core.String project, core.String zone) {
+ async.Future<Operation> delete(core.String project, core.String region, core.String vpnTunnel) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -12569,24 +12675,28 @@ class ZonesResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
- if (zone == null) {
- throw new core.ArgumentError("Parameter zone is required.");
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
+ if (vpnTunnel == null) {
+ throw new core.ArgumentError("Parameter vpnTunnel is required.");
}
- _url = commons.Escaper.ecapeVariable('$project') + '/zones/' + commons.Escaper.ecapeVariable('$zone');
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/vpnTunnels/' + commons.Escaper.ecapeVariable('$vpnTunnel');
var _response = _requester.request(_url,
- "GET",
+ "DELETE",
body: _body,
queryParams: _queryParams,
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new Zone.fromJson(data));
+ return _response.then((data) => new Operation.fromJson(data));
}
/**
- * Retrieves the list of Zone resources available to the specified project.
+ * Returns the specified VpnTunnel resource. Get a list of available VPN
+ * tunnels by making a list() request.
*
* Request parameters:
*
@@ -12594,44 +12704,154 @@ class ZonesResourceApi {
* Value must have pattern
* "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
*
- * [filter] - Sets a filter expression for filtering listed resources, in the
- * form filter={expression}. Your {expression} must be in the format:
- * field_name comparison_string literal_string.
- *
- * The field_name is the name of the field you want to compare. Only atomic
- * field types are supported (string, number, boolean). The comparison_string
- * must be either eq (equals) or ne (not equals). The literal_string is the
- * string value to filter to. The literal value must be valid for the type of
- * field you are filtering by (string, number, boolean). For string fields,
- * the literal value is interpreted as a regular expression using RE2 syntax.
- * The literal value must match the entire field.
- *
- * For example, to filter for instances that do not have a name of
- * example-instance, you would use filter=name ne example-instance.
+ * [region] - Name of the region for this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * Compute Engine Beta API Only: When filtering in the Beta API, you can also
- * filter on nested fields. For example, you could filter on instances that
- * have set the scheduling.automaticRestart field to true. Use filtering on
- * nested fields to take advantage of labels to organize and search for
- * results based on label values.
+ * [vpnTunnel] - Name of the VpnTunnel resource to return.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
*
- * The Beta API also supports filtering on multiple expressions by providing
- * each separate expression within parentheses. For example,
- * (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple
- * expressions are treated as AND expressions, meaning that resources must
- * match all expressions to pass the filters.
+ * Completes with a [VpnTunnel].
*
- * [maxResults] - The maximum number of results per page that should be
- * returned. If the number of available results is larger than maxResults,
- * Compute Engine returns a nextPageToken that can be used to get the next
- * page of results in subsequent list requests.
- * Value must be between "0" and "500".
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an
+ * error.
*
- * [pageToken] - Specifies a page token to use. Set pageToken to the
- * nextPageToken returned by a previous list request to get the next page of
+ * If the used [http.Client] completes with an error when making a REST call,
+ * this method will complete with the same error.
+ */
+ async.Future<VpnTunnel> get(core.String project, core.String region, core.String vpnTunnel) {
+ var _url = null;
+ var _queryParams = new core.Map();
+ var _uploadMedia = null;
+ var _uploadOptions = null;
+ var _downloadOptions = commons.DownloadOptions.Metadata;
+ var _body = null;
+
+ if (project == null) {
+ throw new core.ArgumentError("Parameter project is required.");
+ }
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
+ if (vpnTunnel == null) {
+ throw new core.ArgumentError("Parameter vpnTunnel is required.");
+ }
+
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/vpnTunnels/' + commons.Escaper.ecapeVariable('$vpnTunnel');
+
+ var _response = _requester.request(_url,
+ "GET",
+ body: _body,
+ queryParams: _queryParams,
+ uploadOptions: _uploadOptions,
+ uploadMedia: _uploadMedia,
+ downloadOptions: _downloadOptions);
+ return _response.then((data) => new VpnTunnel.fromJson(data));
+ }
+
+ /**
+ * Creates a VpnTunnel resource in the specified project and region using the
+ * data included in the request.
+ *
+ * [request] - The metadata request object.
+ *
+ * Request parameters:
+ *
+ * [project] - Project ID for this request.
+ * Value must have pattern
+ * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
+ *
+ * [region] - Name of the region for this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * Completes with a [Operation].
+ *
+ * Completes with a [commons.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<Operation> insert(VpnTunnel request, core.String project, core.String region) {
+ var _url = null;
+ var _queryParams = new core.Map();
+ var _uploadMedia = null;
+ var _uploadOptions = null;
+ var _downloadOptions = commons.DownloadOptions.Metadata;
+ var _body = null;
+
+ if (request != null) {
+ _body = convert.JSON.encode((request).toJson());
+ }
+ if (project == null) {
+ throw new core.ArgumentError("Parameter project is required.");
+ }
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
+
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/vpnTunnels';
+
+ var _response = _requester.request(_url,
+ "POST",
+ body: _body,
+ queryParams: _queryParams,
+ uploadOptions: _uploadOptions,
+ uploadMedia: _uploadMedia,
+ downloadOptions: _downloadOptions);
+ return _response.then((data) => new Operation.fromJson(data));
+ }
+
+ /**
+ * Retrieves a list of VpnTunnel resources contained in the specified project
+ * and region.
+ *
+ * Request parameters:
+ *
+ * [project] - Project ID for this request.
+ * Value must have pattern
+ * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
+ *
+ * [region] - Name of the region for this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * [filter] - Sets a filter expression for filtering listed resources, in the
+ * form filter={expression}. Your {expression} must be in the format:
+ * field_name comparison_string literal_string.
+ *
+ * The field_name is the name of the field you want to compare. Only atomic
+ * field types are supported (string, number, boolean). The comparison_string
+ * must be either eq (equals) or ne (not equals). The literal_string is the
+ * string value to filter to. The literal value must be valid for the type of
+ * field you are filtering by (string, number, boolean). For string fields,
+ * the literal value is interpreted as a regular expression using RE2 syntax.
+ * The literal value must match the entire field.
+ *
+ * For example, to filter for instances that do not have a name of
+ * example-instance, you would use filter=name ne example-instance.
+ *
+ * Compute Engine Beta API Only: When filtering in the Beta API, you can also
+ * filter on nested fields. For example, you could filter on instances that
+ * have set the scheduling.automaticRestart field to true. Use filtering on
+ * nested fields to take advantage of labels to organize and search for
+ * results based on label values.
+ *
+ * The Beta API also supports filtering on multiple expressions by providing
+ * each separate expression within parentheses. For example,
+ * (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple
+ * expressions are treated as AND expressions, meaning that resources must
+ * match all expressions to pass the filters.
+ *
+ * [maxResults] - The maximum number of results per page that should be
+ * returned. If the number of available results is larger than maxResults,
+ * Compute Engine returns a nextPageToken that can be used to get the next
+ * page of results in subsequent list requests.
+ * Value must be between "0" and "500".
+ *
+ * [pageToken] - Specifies a page token to use. Set pageToken to the
+ * nextPageToken returned by a previous list request to get the next page of
* results.
*
- * Completes with a [ZoneList].
+ * Completes with a [VpnTunnelList].
*
* Completes with a [commons.ApiRequestError] if the API endpoint returned an
* error.
@@ -12639,7 +12859,7 @@ class ZonesResourceApi {
* If the used [http.Client] completes with an error when making a REST call,
* this method will complete with the same error.
*/
- async.Future<ZoneList> list(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
+ async.Future<VpnTunnelList> list(core.String project, core.String region, {core.String filter, core.int maxResults, core.String pageToken}) {
var _url = null;
var _queryParams = new core.Map();
var _uploadMedia = null;
@@ -12650,6 +12870,9 @@ class ZonesResourceApi {
if (project == null) {
throw new core.ArgumentError("Parameter project is required.");
}
+ if (region == null) {
+ throw new core.ArgumentError("Parameter region is required.");
+ }
if (filter != null) {
_queryParams["filter"] = [filter];
}
@@ -12660,7 +12883,7 @@ class ZonesResourceApi {
_queryParams["pageToken"] = [pageToken];
}
- _url = commons.Escaper.ecapeVariable('$project') + '/zones';
+ _url = commons.Escaper.ecapeVariable('$project') + '/regions/' + commons.Escaper.ecapeVariable('$region') + '/vpnTunnels';
var _response = _requester.request(_url,
"GET",
@@ -12669,90 +12892,1131 @@ class ZonesResourceApi {
uploadOptions: _uploadOptions,
uploadMedia: _uploadMedia,
downloadOptions: _downloadOptions);
- return _response.then((data) => new ZoneList.fromJson(data));
+ return _response.then((data) => new VpnTunnelList.fromJson(data));
}
}
+class ZoneOperationsResourceApi {
+ final commons.ApiRequester _requester;
+
+ ZoneOperationsResourceApi(commons.ApiRequester client) :
+ _requester = client;
-/** An access configuration attached to an instance's network interface. */
-class AccessConfig {
- /**
- * [Output Only] Type of the resource. Always compute#accessConfig for access
- * configs.
- */
- core.String kind;
- /** Name of this access configuration. */
- core.String name;
- /**
- * An external IP address associated with this instance. Specify an unused
- * static external IP address available to the project or leave this field
- * undefined to use an IP from a shared ephemeral IP address pool. If you
- * specify a static external IP address, it must live in the same region as
- * the zone of the instance.
- */
- core.String natIP;
/**
- * The type of configuration. The default and only option is ONE_TO_ONE_NAT.
- * Possible string values are:
- * - "ONE_TO_ONE_NAT"
+ * Deletes the specified zone-specific Operations resource.
+ *
+ * Request parameters:
+ *
+ * [project] - Project ID for this request.
+ * Value must have pattern
+ * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
+ *
+ * [zone] - Name of the zone for this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * [operation] - Name of the Operations resource to delete.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * Completes with a [commons.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.
*/
- core.String type;
-
- AccessConfig();
+ async.Future delete(core.String project, core.String zone, core.String operation) {
+ var _url = null;
+ var _queryParams = new core.Map();
+ var _uploadMedia = null;
+ var _uploadOptions = null;
+ var _downloadOptions = commons.DownloadOptions.Metadata;
+ var _body = null;
- AccessConfig.fromJson(core.Map _json) {
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
- }
- if (_json.containsKey("name")) {
- name = _json["name"];
+ if (project == null) {
+ throw new core.ArgumentError("Parameter project is required.");
}
- if (_json.containsKey("natIP")) {
- natIP = _json["natIP"];
+ if (zone == null) {
+ throw new core.ArgumentError("Parameter zone is required.");
}
- if (_json.containsKey("type")) {
- type = _json["type"];
+ if (operation == null) {
+ throw new core.ArgumentError("Parameter operation is required.");
}
- }
- core.Map toJson() {
- var _json = new core.Map();
- if (kind != null) {
- _json["kind"] = kind;
- }
- if (name != null) {
- _json["name"] = name;
- }
- if (natIP != null) {
- _json["natIP"] = natIP;
- }
- if (type != null) {
- _json["type"] = type;
- }
- return _json;
+ _downloadOptions = null;
+
+ _url = commons.Escaper.ecapeVariable('$project') + '/zones/' + commons.Escaper.ecapeVariable('$zone') + '/operations/' + commons.Escaper.ecapeVariable('$operation');
+
+ var _response = _requester.request(_url,
+ "DELETE",
+ body: _body,
+ queryParams: _queryParams,
+ uploadOptions: _uploadOptions,
+ uploadMedia: _uploadMedia,
+ downloadOptions: _downloadOptions);
+ return _response.then((data) => null);
}
-}
-/** A reserved address resource. */
-class Address {
- /** The static external IP address represented by this resource. */
- core.String address;
- /** [Output Only] Creation timestamp in RFC3339 text format. */
- core.String creationTimestamp;
- /**
- * An optional description of this resource. Provide this property when you
- * create the resource.
- */
- core.String description;
/**
- * [Output Only] The unique identifier for the resource. This identifier is
+ * Retrieves the specified zone-specific Operations resource.
+ *
+ * Request parameters:
+ *
+ * [project] - Project ID for this request.
+ * Value must have pattern
+ * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
+ *
+ * [zone] - Name of the zone for this request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * [operation] - Name of the Operations resource to return.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * Completes with a [Operation].
+ *
+ * Completes with a [commons.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<Operation> get(core.String project, core.String zone, core.String operation) {
+ var _url = null;
+ var _queryParams = new core.Map();
+ var _uploadMedia = null;
+ var _uploadOptions = null;
+ var _downloadOptions = commons.DownloadOptions.Metadata;
+ var _body = null;
+
+ if (project == null) {
+ throw new core.ArgumentError("Parameter project is required.");
+ }
+ if (zone == null) {
+ throw new core.ArgumentError("Parameter zone is required.");
+ }
+ if (operation == null) {
+ throw new core.ArgumentError("Parameter operation is required.");
+ }
+
+ _url = commons.Escaper.ecapeVariable('$project') + '/zones/' + commons.Escaper.ecapeVariable('$zone') + '/operations/' + commons.Escaper.ecapeVariable('$operation');
+
+ var _response = _requester.request(_url,
+ "GET",
+ body: _body,
+ queryParams: _queryParams,
+ uploadOptions: _uploadOptions,
+ uploadMedia: _uploadMedia,
+ downloadOptions: _downloadOptions);
+ return _response.then((data) => new Operation.fromJson(data));
+ }
+
+ /**
+ * Retrieves a list of Operation resources contained within the specified
+ * zone.
+ *
+ * Request parameters:
+ *
+ * [project] - Project ID for this request.
+ * Value must have pattern
+ * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
+ *
+ * [zone] - Name of the zone for request.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * [filter] - Sets a filter expression for filtering listed resources, in the
+ * form filter={expression}. Your {expression} must be in the format:
+ * field_name comparison_string literal_string.
+ *
+ * The field_name is the name of the field you want to compare. Only atomic
+ * field types are supported (string, number, boolean). The comparison_string
+ * must be either eq (equals) or ne (not equals). The literal_string is the
+ * string value to filter to. The literal value must be valid for the type of
+ * field you are filtering by (string, number, boolean). For string fields,
+ * the literal value is interpreted as a regular expression using RE2 syntax.
+ * The literal value must match the entire field.
+ *
+ * For example, to filter for instances that do not have a name of
+ * example-instance, you would use filter=name ne example-instance.
+ *
+ * Compute Engine Beta API Only: When filtering in the Beta API, you can also
+ * filter on nested fields. For example, you could filter on instances that
+ * have set the scheduling.automaticRestart field to true. Use filtering on
+ * nested fields to take advantage of labels to organize and search for
+ * results based on label values.
+ *
+ * The Beta API also supports filtering on multiple expressions by providing
+ * each separate expression within parentheses. For example,
+ * (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple
+ * expressions are treated as AND expressions, meaning that resources must
+ * match all expressions to pass the filters.
+ *
+ * [maxResults] - The maximum number of results per page that should be
+ * returned. If the number of available results is larger than maxResults,
+ * Compute Engine returns a nextPageToken that can be used to get the next
+ * page of results in subsequent list requests.
+ * Value must be between "0" and "500".
+ *
+ * [pageToken] - Specifies a page token to use. Set pageToken to the
+ * nextPageToken returned by a previous list request to get the next page of
+ * results.
+ *
+ * Completes with a [OperationList].
+ *
+ * Completes with a [commons.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<OperationList> list(core.String project, core.String zone, {core.String filter, core.int maxResults, core.String pageToken}) {
+ var _url = null;
+ var _queryParams = new core.Map();
+ var _uploadMedia = null;
+ var _uploadOptions = null;
+ var _downloadOptions = commons.DownloadOptions.Metadata;
+ var _body = null;
+
+ if (project == null) {
+ throw new core.ArgumentError("Parameter project is required.");
+ }
+ if (zone == null) {
+ throw new core.ArgumentError("Parameter zone is required.");
+ }
+ if (filter != null) {
+ _queryParams["filter"] = [filter];
+ }
+ if (maxResults != null) {
+ _queryParams["maxResults"] = ["${maxResults}"];
+ }
+ if (pageToken != null) {
+ _queryParams["pageToken"] = [pageToken];
+ }
+
+ _url = commons.Escaper.ecapeVariable('$project') + '/zones/' + commons.Escaper.ecapeVariable('$zone') + '/operations';
+
+ var _response = _requester.request(_url,
+ "GET",
+ body: _body,
+ queryParams: _queryParams,
+ uploadOptions: _uploadOptions,
+ uploadMedia: _uploadMedia,
+ downloadOptions: _downloadOptions);
+ return _response.then((data) => new OperationList.fromJson(data));
+ }
+
+}
+
+
+class ZonesResourceApi {
+ final commons.ApiRequester _requester;
+
+ ZonesResourceApi(commons.ApiRequester client) :
+ _requester = client;
+
+ /**
+ * Returns the specified Zone resource. Get a list of available zones by
+ * making a list() request.
+ *
+ * Request parameters:
+ *
+ * [project] - Project ID for this request.
+ * Value must have pattern
+ * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
+ *
+ * [zone] - Name of the zone resource to return.
+ * Value must have pattern "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?".
+ *
+ * Completes with a [Zone].
+ *
+ * Completes with a [commons.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<Zone> get(core.String project, core.String zone) {
+ var _url = null;
+ var _queryParams = new core.Map();
+ var _uploadMedia = null;
+ var _uploadOptions = null;
+ var _downloadOptions = commons.DownloadOptions.Metadata;
+ var _body = null;
+
+ if (project == null) {
+ throw new core.ArgumentError("Parameter project is required.");
+ }
+ if (zone == null) {
+ throw new core.ArgumentError("Parameter zone is required.");
+ }
+
+ _url = commons.Escaper.ecapeVariable('$project') + '/zones/' + commons.Escaper.ecapeVariable('$zone');
+
+ var _response = _requester.request(_url,
+ "GET",
+ body: _body,
+ queryParams: _queryParams,
+ uploadOptions: _uploadOptions,
+ uploadMedia: _uploadMedia,
+ downloadOptions: _downloadOptions);
+ return _response.then((data) => new Zone.fromJson(data));
+ }
+
+ /**
+ * Retrieves the list of Zone resources available to the specified project.
+ *
+ * Request parameters:
+ *
+ * [project] - Project ID for this request.
+ * Value must have pattern
+ * "(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))".
+ *
+ * [filter] - Sets a filter expression for filtering listed resources, in the
+ * form filter={expression}. Your {expression} must be in the format:
+ * field_name comparison_string literal_string.
+ *
+ * The field_name is the name of the field you want to compare. Only atomic
+ * field types are supported (string, number, boolean). The comparison_string
+ * must be either eq (equals) or ne (not equals). The literal_string is the
+ * string value to filter to. The literal value must be valid for the type of
+ * field you are filtering by (string, number, boolean). For string fields,
+ * the literal value is interpreted as a regular expression using RE2 syntax.
+ * The literal value must match the entire field.
+ *
+ * For example, to filter for instances that do not have a name of
+ * example-instance, you would use filter=name ne example-instance.
+ *
+ * Compute Engine Beta API Only: When filtering in the Beta API, you can also
+ * filter on nested fields. For example, you could filter on instances that
+ * have set the scheduling.automaticRestart field to true. Use filtering on
+ * nested fields to take advantage of labels to organize and search for
+ * results based on label values.
+ *
+ * The Beta API also supports filtering on multiple expressions by providing
+ * each separate expression within parentheses. For example,
+ * (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple
+ * expressions are treated as AND expressions, meaning that resources must
+ * match all expressions to pass the filters.
+ *
+ * [maxResults] - The maximum number of results per page that should be
+ * returned. If the number of available results is larger than maxResults,
+ * Compute Engine returns a nextPageToken that can be used to get the next
+ * page of results in subsequent list requests.
+ * Value must be between "0" and "500".
+ *
+ * [pageToken] - Specifies a page token to use. Set pageToken to the
+ * nextPageToken returned by a previous list request to get the next page of
+ * results.
+ *
+ * Completes with a [ZoneList].
+ *
+ * Completes with a [commons.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<ZoneList> list(core.String project, {core.String filter, core.int maxResults, core.String pageToken}) {
+ var _url = null;
+ var _queryParams = new core.Map();
+ var _uploadMedia = null;
+ var _uploadOptions = null;
+ var _downloadOptions = commons.DownloadOptions.Metadata;
+ var _body = null;
+
+ if (project == null) {
+ throw new core.ArgumentError("Parameter project is required.");
+ }
+ if (filter != null) {
+ _queryParams["filter"] = [filter];
+ }
+ if (maxResults != null) {
+ _queryParams["maxResults"] = ["${maxResults}"];
+ }
+ if (pageToken != null) {
+ _queryParams["pageToken"] = [pageToken];
+ }
+
+ _url = commons.Escaper.ecapeVariable('$project') + '/zones';
+
+ var _response = _requester.request(_url,
+ "GET",
+ body: _body,
+ queryParams: _queryParams,
+ uploadOptions: _uploadOptions,
+ uploadMedia: _uploadMedia,
+ downloadOptions: _downloadOptions);
+ return _response.then((data) => new ZoneList.fromJson(data));
+ }
+
+}
+
+
+
+/** An access configuration attached to an instance's network interface. */
+class AccessConfig {
+ /**
+ * [Output Only] Type of the resource. Always compute#accessConfig for access
+ * configs.
+ */
+ core.String kind;
+ /** Name of this access configuration. */
+ core.String name;
+ /**
+ * An external IP address associated with this instance. Specify an unused
+ * static external IP address available to the project or leave this field
+ * undefined to use an IP from a shared ephemeral IP address pool. If you
+ * specify a static external IP address, it must live in the same region as
+ * the zone of the instance.
+ */
+ core.String natIP;
+ /**
+ * The type of configuration. The default and only option is ONE_TO_ONE_NAT.
+ * Possible string values are:
+ * - "ONE_TO_ONE_NAT"
+ */
+ core.String type;
+
+ AccessConfig();
+
+ AccessConfig.fromJson(core.Map _json) {
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ 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 (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (name != null) {
+ _json["name"] = name;
+ }
+ if (natIP != null) {
+ _json["natIP"] = natIP;
+ }
+ if (type != null) {
+ _json["type"] = type;
+ }
+ return _json;
+ }
+}
+
+/** A reserved address resource. */
+class Address {
+ /** The static external IP address represented by this resource. */
+ core.String address;
+ /** [Output Only] Creation timestamp in RFC3339 text format. */
+ core.String creationTimestamp;
+ /**
+ * An optional description of this resource. Provide this property when you
+ * create the resource.
+ */
+ core.String description;
+ /**
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
+ */
+ core.String id;
+ /**
+ * [Output Only] Type of the resource. Always compute#address for addresses.
+ */
+ core.String kind;
+ /**
+ * Name of the resource. Provided by the client when the resource is created.
+ * The name must be 1-63 characters long, and comply with RFC1035.
+ * Specifically, the name must be 1-63 characters long and match the regular
+ * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
+ * be a lowercase letter, and all following characters must be a dash,
+ * lowercase letter, or digit, except the last character, which cannot be a
+ * dash.
+ */
+ core.String name;
+ /**
+ * [Output Only] URL of the region where the regional address resides. This
+ * field is not applicable to global addresses.
+ */
+ core.String region;
+ /** [Output Only] Server-defined URL for the resource. */
+ core.String selfLink;
+ /**
+ * [Output Only] The status of the address, which can be either IN_USE or
+ * RESERVED. An address that is RESERVED is currently reserved and available
+ * to use. An IN_USE address is currently being used by another resource and
+ * is not available.
+ * Possible string values are:
+ * - "IN_USE"
+ * - "RESERVED"
+ */
+ core.String status;
+ /** [Output Only] The URLs of the resources that are using this address. */
+ core.List<core.String> users;
+
+ Address();
+
+ Address.fromJson(core.Map _json) {
+ if (_json.containsKey("address")) {
+ address = _json["address"];
+ }
+ if (_json.containsKey("creationTimestamp")) {
+ creationTimestamp = _json["creationTimestamp"];
+ }
+ if (_json.containsKey("description")) {
+ description = _json["description"];
+ }
+ if (_json.containsKey("id")) {
+ id = _json["id"];
+ }
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("name")) {
+ name = _json["name"];
+ }
+ if (_json.containsKey("region")) {
+ region = _json["region"];
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
+ }
+ if (_json.containsKey("status")) {
+ status = _json["status"];
+ }
+ if (_json.containsKey("users")) {
+ users = _json["users"];
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (address != null) {
+ _json["address"] = address;
+ }
+ if (creationTimestamp != null) {
+ _json["creationTimestamp"] = creationTimestamp;
+ }
+ if (description != null) {
+ _json["description"] = description;
+ }
+ if (id != null) {
+ _json["id"] = id;
+ }
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (name != null) {
+ _json["name"] = name;
+ }
+ if (region != null) {
+ _json["region"] = region;
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
+ }
+ if (status != null) {
+ _json["status"] = status;
+ }
+ if (users != null) {
+ _json["users"] = users;
+ }
+ return _json;
+ }
+}
+
+class AddressAggregatedList {
+ /**
+ * [Output Only] Unique identifier for the resource; defined by the server.
+ */
+ core.String id;
+ /** [Output Only] A map of scoped address lists. */
+ core.Map<core.String, AddressesScopedList> items;
+ /**
+ * [Output Only] Type of resource. Always compute#addressAggregatedList for
+ * aggregated lists of addresses.
+ */
+ core.String kind;
+ /**
+ * [Output Only] This token allows you to get the next page of results for
+ * list requests. If the number of results is larger than maxResults, use the
+ * nextPageToken as a value for the query parameter pageToken in the next list
+ * request. Subsequent list requests will have their own nextPageToken to
+ * continue paging through the results.
+ */
+ core.String nextPageToken;
+ /** [Output Only] Server-defined URL for this resource. */
+ core.String selfLink;
+
+ AddressAggregatedList();
+
+ AddressAggregatedList.fromJson(core.Map _json) {
+ if (_json.containsKey("id")) {
+ id = _json["id"];
+ }
+ if (_json.containsKey("items")) {
+ items = commons.mapMap(_json["items"], (item) => new AddressesScopedList.fromJson(item));
+ }
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("nextPageToken")) {
+ nextPageToken = _json["nextPageToken"];
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (id != null) {
+ _json["id"] = id;
+ }
+ if (items != null) {
+ _json["items"] = commons.mapMap(items, (item) => (item).toJson());
+ }
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (nextPageToken != null) {
+ _json["nextPageToken"] = nextPageToken;
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
+ }
+ return _json;
+ }
+}
+
+/** Contains a list of addresses. */
+class AddressList {
+ /**
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
+ */
+ core.String id;
+ /** [Output Only] A list of addresses. */
+ core.List<Address> items;
+ /**
+ * [Output Only] Type of resource. Always compute#addressList for lists of
+ * addresses.
+ */
+ core.String kind;
+ /**
+ * [Output Only] This token allows you to get the next page of results for
+ * list requests. If the number of results is larger than maxResults, use the
+ * nextPageToken as a value for the query parameter pageToken in the next list
+ * request. Subsequent list requests will have their own nextPageToken to
+ * continue paging through the results.
+ */
+ core.String nextPageToken;
+ /** [Output Only] Server-defined URL for the resource. */
+ core.String selfLink;
+
+ AddressList();
+
+ AddressList.fromJson(core.Map _json) {
+ if (_json.containsKey("id")) {
+ id = _json["id"];
+ }
+ if (_json.containsKey("items")) {
+ items = _json["items"].map((value) => new Address.fromJson(value)).toList();
+ }
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("nextPageToken")) {
+ nextPageToken = _json["nextPageToken"];
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (id != null) {
+ _json["id"] = id;
+ }
+ if (items != null) {
+ _json["items"] = items.map((value) => (value).toJson()).toList();
+ }
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (nextPageToken != null) {
+ _json["nextPageToken"] = nextPageToken;
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
+ }
+ return _json;
+ }
+}
+
+class AddressesScopedListWarningData {
+ /**
+ * [Output Only] A key that provides more detail on the warning being
+ * returned. For example, for warnings where there are no results in a list
+ * request for a particular zone, this key might be scope and the key value
+ * might be the zone name. Other examples might be a key indicating a
+ * deprecated resource and a suggested replacement, or a warning about invalid
+ * network settings (for example, if an instance attempts to perform IP
+ * forwarding but is not enabled for IP forwarding).
+ */
+ core.String key;
+ /** [Output Only] A warning data value corresponding to the key. */
+ core.String value;
+
+ AddressesScopedListWarningData();
+
+ AddressesScopedListWarningData.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;
+ }
+}
+
+/**
+ * [Output Only] Informational warning which replaces the list of addresses when
+ * the list is empty.
+ */
+class AddressesScopedListWarning {
+ /**
+ * [Output Only] A warning code, if applicable. For example, Compute Engine
+ * returns NO_RESULTS_ON_PAGE if there are no results in the response.
+ * Possible string values are:
+ * - "CLEANUP_FAILED"
+ * - "DEPRECATED_RESOURCE_USED"
+ * - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
+ * - "INJECTED_KERNELS_DEPRECATED"
+ * - "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
+ * - "NEXT_HOP_CANNOT_IP_FORWARD"
+ * - "NEXT_HOP_INSTANCE_NOT_FOUND"
+ * - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
+ * - "NEXT_HOP_NOT_RUNNING"
+ * - "NOT_CRITICAL_ERROR"
+ * - "NO_RESULTS_ON_PAGE"
+ * - "REQUIRED_TOS_AGREEMENT"
+ * - "RESOURCE_NOT_DELETED"
+ * - "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
+ * - "UNREACHABLE"
+ */
+ core.String code;
+ /**
+ * [Output Only] Metadata about this warning in key: value format. For
+ * example:
+ * "data": [ { "key": "scope", "value": "zones/us-east1-d" }
+ */
+ core.List<AddressesScopedListWarningData> data;
+ /** [Output Only] A human-readable description of the warning code. */
+ core.String message;
+
+ AddressesScopedListWarning();
+
+ AddressesScopedListWarning.fromJson(core.Map _json) {
+ if (_json.containsKey("code")) {
+ code = _json["code"];
+ }
+ if (_json.containsKey("data")) {
+ data = _json["data"].map((value) => new AddressesScopedListWarningData.fromJson(value)).toList();
+ }
+ if (_json.containsKey("message")) {
+ message = _json["message"];
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (code != null) {
+ _json["code"] = code;
+ }
+ if (data != null) {
+ _json["data"] = data.map((value) => (value).toJson()).toList();
+ }
+ if (message != null) {
+ _json["message"] = message;
+ }
+ return _json;
+ }
+}
+
+class AddressesScopedList {
+ /** [Output Only] List of addresses contained in this scope. */
+ core.List<Address> addresses;
+ /**
+ * [Output Only] Informational warning which replaces the list of addresses
+ * when the list is empty.
+ */
+ AddressesScopedListWarning warning;
+
+ AddressesScopedList();
+
+ AddressesScopedList.fromJson(core.Map _json) {
+ if (_json.containsKey("addresses")) {
+ addresses = _json["addresses"].map((value) => new Address.fromJson(value)).toList();
+ }
+ if (_json.containsKey("warning")) {
+ warning = new AddressesScopedListWarning.fromJson(_json["warning"]);
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (addresses != null) {
+ _json["addresses"] = addresses.map((value) => (value).toJson()).toList();
+ }
+ if (warning != null) {
+ _json["warning"] = (warning).toJson();
+ }
+ return _json;
+ }
+}
+
+/** An instance-attached disk resource. */
+class AttachedDisk {
+ /**
+ * Specifies whether the disk will be auto-deleted when the instance is
+ * deleted (but not when the disk is detached from the instance).
+ */
+ core.bool autoDelete;
+ /**
+ * Indicates that this is a boot disk. The virtual machine will use the first
+ * partition of the disk for its root filesystem.
+ */
+ core.bool boot;
+ /**
+ * Specifies a unique device name of your choice that is reflected into the
+ * /dev/disk/by-id/google-* tree of a Linux operating system running within
+ * the instance. This name can be used to reference the device for mounting,
+ * resizing, and so on, from within the instance.
+ *
+ * If not specified, the server chooses a default device name to apply to this
+ * disk, in the form persistent-disks-x, where x is a number assigned by
+ * Google Compute Engine. This field is only applicable for persistent disks.
+ */
+ core.String deviceName;
+ /**
+ * Encrypts or decrypts a disk using a customer-supplied encryption key.
+ *
+ * If you are creating a new disk, this field encrypts the new disk using an
+ * encryption key that you provide. If you are attaching an existing disk that
+ * is already encrypted, this field decrypts the disk using the
+ * customer-supplied encryption key.
+ *
+ * If you encrypt a disk using a customer-supplied key, you must provide the
+ * same key again when you attempt to use this resource at a later time. For
+ * example, you must provide the key when you create a snapshot or an image
+ * from the disk or when you attach the disk to a virtual machine instance.
+ *
+ * If you do not provide an encryption key, then the disk will be encrypted
+ * using an automatically generated key and you do not need to provide a key
+ * to use the disk later.
+ *
+ * Instance templates do not store customer-supplied encryption keys, so you
+ * cannot use your own keys to encrypt disks in a managed instance group.
+ */
+ CustomerEncryptionKey diskEncryptionKey;
+ /**
+ * Assigns a zero-based index to this disk, where 0 is reserved for the boot
+ * disk. For example, if you have many disks attached to an instance, each
+ * disk would have a unique index number. If not specified, the server will
+ * choose an appropriate value.
+ */
+ core.int index;
+ /**
+ * [Input Only] Specifies the parameters for a new disk that will be created
+ * alongside the new instance. Use initialization parameters to create boot
+ * disks or local SSDs attached to the new instance.
+ *
+ * This property is mutually exclusive with the source property; you can only
+ * define one or the other, but not both.
+ */
+ AttachedDiskInitializeParams initializeParams;
+ /**
+ * Specifies the disk interface to use for attaching this disk, which is
+ * either SCSI or NVME. The default is SCSI. Persistent disks must always use
+ * SCSI and the request will fail if you attempt to attach a persistent disk
+ * in any other format than SCSI. Local SSDs can use either NVME or SCSI. For
+ * performance characteristics of SCSI over NVMe, see Local SSD performance.
+ * Possible string values are:
+ * - "NVME"
+ * - "SCSI"
+ */
+ core.String interface;
+ /**
+ * [Output Only] Type of the resource. Always compute#attachedDisk for
+ * attached disks.
+ */
+ core.String kind;
+ /** [Output Only] Any valid publicly visible licenses. */
+ core.List<core.String> licenses;
+ /**
+ * The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If
+ * not specified, the default is to attach the disk in READ_WRITE mode.
+ * Possible string values are:
+ * - "READ_ONLY"
+ * - "READ_WRITE"
+ */
+ core.String mode;
+ /**
+ * Specifies a valid partial or full URL to an existing Persistent Disk
+ * resource. This field is only applicable for persistent disks.
+ */
+ core.String source;
+ /**
+ * Specifies the type of the disk, either SCRATCH or PERSISTENT. If not
+ * specified, the default is PERSISTENT.
+ * Possible string values are:
+ * - "PERSISTENT"
+ * - "SCRATCH"
+ */
+ core.String type;
+
+ AttachedDisk();
+
+ AttachedDisk.fromJson(core.Map _json) {
+ if (_json.containsKey("autoDelete")) {
+ autoDelete = _json["autoDelete"];
+ }
+ if (_json.containsKey("boot")) {
+ boot = _json["boot"];
+ }
+ if (_json.containsKey("deviceName")) {
+ deviceName = _json["deviceName"];
+ }
+ if (_json.containsKey("diskEncryptionKey")) {
+ diskEncryptionKey = new CustomerEncryptionKey.fromJson(_json["diskEncryptionKey"]);
+ }
+ if (_json.containsKey("index")) {
+ index = _json["index"];
+ }
+ if (_json.containsKey("initializeParams")) {
+ initializeParams = new AttachedDiskInitializeParams.fromJson(_json["initializeParams"]);
+ }
+ if (_json.containsKey("interface")) {
+ interface = _json["interface"];
+ }
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("licenses")) {
+ licenses = _json["licenses"];
+ }
+ if (_json.containsKey("mode")) {
+ mode = _json["mode"];
+ }
+ if (_json.containsKey("source")) {
+ source = _json["source"];
+ }
+ if (_json.containsKey("type")) {
+ type = _json["type"];
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (autoDelete != null) {
+ _json["autoDelete"] = autoDelete;
+ }
+ if (boot != null) {
+ _json["boot"] = boot;
+ }
+ if (deviceName != null) {
+ _json["deviceName"] = deviceName;
+ }
+ if (diskEncryptionKey != null) {
+ _json["diskEncryptionKey"] = (diskEncryptionKey).toJson();
+ }
+ if (index != null) {
+ _json["index"] = index;
+ }
+ if (initializeParams != null) {
+ _json["initializeParams"] = (initializeParams).toJson();
+ }
+ if (interface != null) {
+ _json["interface"] = interface;
+ }
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (licenses != null) {
+ _json["licenses"] = licenses;
+ }
+ if (mode != null) {
+ _json["mode"] = mode;
+ }
+ if (source != null) {
+ _json["source"] = source;
+ }
+ if (type != null) {
+ _json["type"] = type;
+ }
+ return _json;
+ }
+}
+
+/**
+ * [Input Only] Specifies the parameters for a new disk that will be created
+ * alongside the new instance. Use initialization parameters to create boot
+ * disks or local SSDs attached to the new instance.
+ *
+ * This property is mutually exclusive with the source property; you can only
+ * define one or the other, but not both.
+ */
+class AttachedDiskInitializeParams {
+ /**
+ * Specifies the disk name. If not specified, the default is to use the name
+ * of the instance.
+ */
+ core.String diskName;
+ /** Specifies the size of the disk in base-2 GB. */
+ core.String diskSizeGb;
+ /**
+ * Specifies the disk type to use to create the instance. If not specified,
+ * the default is pd-standard, specified using the full URL. For example:
+ *
+ * https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/pd-standard
+ *
+ * Other values include pd-ssd and local-ssd. If you define this field, you
+ * can provide either the full or partial URL. For example, the following are
+ * valid values:
+ * -
+ * https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/diskType
+ * - projects/project/zones/zone/diskTypes/diskType
+ * - zones/zone/diskTypes/diskType
+ */
+ core.String diskType;
+ /**
+ * The source image used to create this disk. If the source image is deleted,
+ * this field will not be set.
+ *
+ * To create a disk with one of the public operating system images, specify
+ * the image by its family name. For example, specify family/debian-8 to use
+ * the latest Debian 8 image:
+ *
+ * projects/debian-cloud/global/images/family/debian-8
+ *
+ * Alternatively, use a specific version of a public operating system image:
+ *
+ * projects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD
+ *
+ * To create a disk with a private image that you created, specify the image
+ * name in the following format:
+ *
+ * global/images/my-private-image
+ *
+ * You can also specify a private image by its image family, which returns the
+ * latest version of the image in that family. Replace the image name with
+ * family/family-name:
+ *
+ * global/images/family/my-private-family
+ */
+ core.String sourceImage;
+ /**
+ * The customer-supplied encryption key of the source image. Required if the
+ * source image is protected by a customer-supplied encryption key.
+ *
+ * Instance templates do not store customer-supplied encryption keys, so you
+ * cannot create disks for instances in a managed instance group if the source
+ * images are encrypted with your own keys.
+ */
+ CustomerEncryptionKey sourceImageEncryptionKey;
+
+ AttachedDiskInitializeParams();
+
+ AttachedDiskInitializeParams.fromJson(core.Map _json) {
+ if (_json.containsKey("diskName")) {
+ diskName = _json["diskName"];
+ }
+ if (_json.containsKey("diskSizeGb")) {
+ diskSizeGb = _json["diskSizeGb"];
+ }
+ if (_json.containsKey("diskType")) {
+ diskType = _json["diskType"];
+ }
+ if (_json.containsKey("sourceImage")) {
+ sourceImage = _json["sourceImage"];
+ }
+ if (_json.containsKey("sourceImageEncryptionKey")) {
+ sourceImageEncryptionKey = new CustomerEncryptionKey.fromJson(_json["sourceImageEncryptionKey"]);
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (diskName != null) {
+ _json["diskName"] = diskName;
+ }
+ if (diskSizeGb != null) {
+ _json["diskSizeGb"] = diskSizeGb;
+ }
+ if (diskType != null) {
+ _json["diskType"] = diskType;
+ }
+ if (sourceImage != null) {
+ _json["sourceImage"] = sourceImage;
+ }
+ if (sourceImageEncryptionKey != null) {
+ _json["sourceImageEncryptionKey"] = (sourceImageEncryptionKey).toJson();
+ }
+ return _json;
+ }
+}
+
+/**
+ * Represents an Autoscaler resource. Autoscalers allow you to automatically
+ * scale virtual machine instances in managed instance groups according to an
+ * autoscaling policy that you define. For more information, read Autoscaling
+ * Groups of Instances.
+ */
+class Autoscaler {
+ /**
+ * The configuration parameters for the autoscaling algorithm. You can define
+ * one or more of the policies for an autoscaler: cpuUtilization,
+ * customMetricUtilizations, and loadBalancingUtilization.
+ *
+ * If none of these are specified, the default will be to autoscale based on
+ * cpuUtilization to 0.8 or 80%.
+ */
+ AutoscalingPolicy autoscalingPolicy;
+ /** [Output Only] Creation timestamp in RFC3339 text format. */
+ core.String creationTimestamp;
+ /**
+ * An optional description of this resource. Provide this property when you
+ * create the resource.
+ */
+ core.String description;
+ /**
+ * [Output Only] The unique identifier for the resource. This identifier is
* defined by the server.
*/
core.String id;
/**
- * [Output Only] Type of the resource. Always compute#address for addresses.
+ * [Output Only] Type of the resource. Always compute#autoscaler for
+ * autoscalers.
*/
core.String kind;
/**
@@ -12765,31 +14029,18 @@ class Address {
* dash.
*/
core.String name;
- /**
- * [Output Only] URL of the region where the regional address resides. This
- * field is not applicable to global addresses.
- */
- core.String region;
/** [Output Only] Server-defined URL for the resource. */
core.String selfLink;
- /**
- * [Output Only] The status of the address, which can be either IN_USE or
- * RESERVED. An address that is RESERVED is currently reserved and available
- * to use. An IN_USE address is currently being used by another resource and
- * is not available.
- * Possible string values are:
- * - "IN_USE"
- * - "RESERVED"
- */
- core.String status;
- /** [Output Only] The URLs of the resources that are using this address. */
- core.List<core.String> users;
+ /** URL of the managed instance group that this autoscaler will scale. */
+ core.String target;
+ /** [Output Only] URL of the zone where the instance group resides. */
+ core.String zone;
- Address();
+ Autoscaler();
- Address.fromJson(core.Map _json) {
- if (_json.containsKey("address")) {
- address = _json["address"];
+ Autoscaler.fromJson(core.Map _json) {
+ if (_json.containsKey("autoscalingPolicy")) {
+ autoscalingPolicy = new AutoscalingPolicy.fromJson(_json["autoscalingPolicy"]);
}
if (_json.containsKey("creationTimestamp")) {
creationTimestamp = _json["creationTimestamp"];
@@ -12806,24 +14057,21 @@ class Address {
if (_json.containsKey("name")) {
name = _json["name"];
}
- if (_json.containsKey("region")) {
- region = _json["region"];
- }
if (_json.containsKey("selfLink")) {
selfLink = _json["selfLink"];
}
- if (_json.containsKey("status")) {
- status = _json["status"];
+ if (_json.containsKey("target")) {
+ target = _json["target"];
}
- if (_json.containsKey("users")) {
- users = _json["users"];
+ if (_json.containsKey("zone")) {
+ zone = _json["zone"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (address != null) {
- _json["address"] = address;
+ if (autoscalingPolicy != null) {
+ _json["autoscalingPolicy"] = (autoscalingPolicy).toJson();
}
if (creationTimestamp != null) {
_json["creationTimestamp"] = creationTimestamp;
@@ -12840,32 +14088,30 @@ class Address {
if (name != null) {
_json["name"] = name;
}
- if (region != null) {
- _json["region"] = region;
- }
if (selfLink != null) {
_json["selfLink"] = selfLink;
}
- if (status != null) {
- _json["status"] = status;
+ if (target != null) {
+ _json["target"] = target;
}
- if (users != null) {
- _json["users"] = users;
+ if (zone != null) {
+ _json["zone"] = zone;
}
return _json;
}
}
-class AddressAggregatedList {
+class AutoscalerAggregatedList {
/**
- * [Output Only] Unique identifier for the resource; defined by the server.
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
*/
core.String id;
- /** [Output Only] A map of scoped address lists. */
- core.Map<core.String, AddressesScopedList> items;
+ /** A map of scoped autoscaler lists. */
+ core.Map<core.String, AutoscalersScopedList> items;
/**
- * [Output Only] Type of resource. Always compute#addressAggregatedList for
- * aggregated lists of addresses.
+ * [Output Only] Type of resource. Always compute#autoscalerAggregatedList for
+ * aggregated lists of autoscalers.
*/
core.String kind;
/**
@@ -12879,14 +14125,14 @@ class AddressAggregatedList {
/** [Output Only] Server-defined URL for this resource. */
core.String selfLink;
- AddressAggregatedList();
+ AutoscalerAggregatedList();
- AddressAggregatedList.fromJson(core.Map _json) {
+ AutoscalerAggregatedList.fromJson(core.Map _json) {
if (_json.containsKey("id")) {
id = _json["id"];
}
if (_json.containsKey("items")) {
- items = commons.mapMap(_json["items"], (item) => new AddressesScopedList.fromJson(item));
+ items = commons.mapMap(_json["items"], (item) => new AutoscalersScopedList.fromJson(item));
}
if (_json.containsKey("kind")) {
kind = _json["kind"];
@@ -12920,18 +14166,18 @@ class AddressAggregatedList {
}
}
-/** Contains a list of addresses. */
-class AddressList {
+/** Contains a list of Autoscaler resources. */
+class AutoscalerList {
/**
* [Output Only] The unique identifier for the resource. This identifier is
* defined by the server.
*/
core.String id;
- /** [Output Only] A list of addresses. */
- core.List<Address> items;
+ /** A list of Autoscaler resources. */
+ core.List<Autoscaler> items;
/**
- * [Output Only] Type of resource. Always compute#addressList for lists of
- * addresses.
+ * [Output Only] Type of resource. Always compute#autoscalerList for lists of
+ * autoscalers.
*/
core.String kind;
/**
@@ -12942,17 +14188,17 @@ class AddressList {
* continue paging through the results.
*/
core.String nextPageToken;
- /** [Output Only] Server-defined URL for the resource. */
+ /** [Output Only] Server-defined URL for this resource. */
core.String selfLink;
- AddressList();
+ AutoscalerList();
- AddressList.fromJson(core.Map _json) {
+ AutoscalerList.fromJson(core.Map _json) {
if (_json.containsKey("id")) {
id = _json["id"];
}
if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new Address.fromJson(value)).toList();
+ items = _json["items"].map((value) => new Autoscaler.fromJson(value)).toList();
}
if (_json.containsKey("kind")) {
kind = _json["kind"];
@@ -12986,7 +14232,7 @@ class AddressList {
}
}
-class AddressesScopedListWarningData {
+class AutoscalersScopedListWarningData {
/**
* [Output Only] A key that provides more detail on the warning being
* returned. For example, for warnings where there are no results in a list
@@ -13000,9 +14246,9 @@ class AddressesScopedListWarningData {
/** [Output Only] A warning data value corresponding to the key. */
core.String value;
- AddressesScopedListWarningData();
+ AutoscalersScopedListWarningData();
- AddressesScopedListWarningData.fromJson(core.Map _json) {
+ AutoscalersScopedListWarningData.fromJson(core.Map _json) {
if (_json.containsKey("key")) {
key = _json["key"];
}
@@ -13024,10 +14270,10 @@ class AddressesScopedListWarningData {
}
/**
- * [Output Only] Informational warning which replaces the list of addresses when
- * the list is empty.
+ * [Output Only] Informational warning which replaces the list of autoscalers
+ * when the list is empty.
*/
-class AddressesScopedListWarning {
+class AutoscalersScopedListWarning {
/**
* [Output Only] A warning code, if applicable. For example, Compute Engine
* returns NO_RESULTS_ON_PAGE if there are no results in the response.
@@ -13054,18 +14300,18 @@ class AddressesScopedListWarning {
* example:
* "data": [ { "key": "scope", "value": "zones/us-east1-d" }
*/
- core.List<AddressesScopedListWarningData> data;
+ core.List<AutoscalersScopedListWarningData> data;
/** [Output Only] A human-readable description of the warning code. */
core.String message;
- AddressesScopedListWarning();
+ AutoscalersScopedListWarning();
- AddressesScopedListWarning.fromJson(core.Map _json) {
+ AutoscalersScopedListWarning.fromJson(core.Map _json) {
if (_json.containsKey("code")) {
code = _json["code"];
}
if (_json.containsKey("data")) {
- data = _json["data"].map((value) => new AddressesScopedListWarningData.fromJson(value)).toList();
+ data = _json["data"].map((value) => new AutoscalersScopedListWarningData.fromJson(value)).toList();
}
if (_json.containsKey("message")) {
message = _json["message"];
@@ -13087,30 +14333,30 @@ class AddressesScopedListWarning {
}
}
-class AddressesScopedList {
- /** [Output Only] List of addresses contained in this scope. */
- core.List<Address> addresses;
+class AutoscalersScopedList {
+ /** [Output Only] List of autoscalers contained in this scope. */
+ core.List<Autoscaler> autoscalers;
/**
- * [Output Only] Informational warning which replaces the list of addresses
+ * [Output Only] Informational warning which replaces the list of autoscalers
* when the list is empty.
*/
- AddressesScopedListWarning warning;
+ AutoscalersScopedListWarning warning;
- AddressesScopedList();
+ AutoscalersScopedList();
- AddressesScopedList.fromJson(core.Map _json) {
- if (_json.containsKey("addresses")) {
- addresses = _json["addresses"].map((value) => new Address.fromJson(value)).toList();
+ AutoscalersScopedList.fromJson(core.Map _json) {
+ if (_json.containsKey("autoscalers")) {
+ autoscalers = _json["autoscalers"].map((value) => new Autoscaler.fromJson(value)).toList();
}
if (_json.containsKey("warning")) {
- warning = new AddressesScopedListWarning.fromJson(_json["warning"]);
+ warning = new AutoscalersScopedListWarning.fromJson(_json["warning"]);
}
}
core.Map toJson() {
var _json = new core.Map();
- if (addresses != null) {
- _json["addresses"] = addresses.map((value) => (value).toJson()).toList();
+ if (autoscalers != null) {
+ _json["autoscalers"] = autoscalers.map((value) => (value).toJson()).toList();
}
if (warning != null) {
_json["warning"] = (warning).toJson();
@@ -13119,271 +14365,328 @@ class AddressesScopedList {
}
}
-/** An instance-attached disk resource. */
-class AttachedDisk {
- /**
- * Specifies whether the disk will be auto-deleted when the instance is
- * deleted (but not when the disk is detached from the instance).
- */
- core.bool autoDelete;
- /**
- * Indicates that this is a boot disk. The virtual machine will use the first
- * partition of the disk for its root filesystem.
- */
- core.bool boot;
+/** Cloud Autoscaler policy. */
+class AutoscalingPolicy {
/**
- * Specifies a unique device name of your choice that is reflected into the
- * /dev/disk/by-id/google-* tree of a Linux operating system running within
- * the instance. This name can be used to reference the device for mounting,
- * resizing, and so on, from within the instance.
+ * The number of seconds that the autoscaler should wait before it starts
+ * collecting information from a new instance. This prevents the autoscaler
+ * from collecting information when the instance is initializing, during which
+ * the collected usage would not be reliable. The default time autoscaler
+ * waits is 60 seconds.
*
- * If not specified, the server chooses a default device name to apply to this
- * disk, in the form persistent-disks-x, where x is a number assigned by
- * Google Compute Engine. This field is only applicable for persistent disks.
+ * Virtual machine initialization times might vary because of numerous
+ * factors. We recommend that you test how long an instance may take to
+ * initialize. To do this, create an instance and time the startup process.
*/
- core.String deviceName;
+ core.int coolDownPeriodSec;
/**
- * Assigns a zero-based index to this disk, where 0 is reserved for the boot
- * disk. For example, if you have many disks attached to an instance, each
- * disk would have a unique index number. If not specified, the server will
- * choose an appropriate value.
+ * Defines the CPU utilization policy that allows the autoscaler to scale
+ * based on the average CPU utilization of a managed instance group.
*/
- core.int index;
+ AutoscalingPolicyCpuUtilization cpuUtilization;
+ /** Configuration parameters of autoscaling based on a custom metric. */
+ core.List<AutoscalingPolicyCustomMetricUtilization> customMetricUtilizations;
+ /** Configuration parameters of autoscaling based on load balancer. */
+ AutoscalingPolicyLoadBalancingUtilization loadBalancingUtilization;
/**
- * [Input Only] Specifies the parameters for a new disk that will be created
- * alongside the new instance. Use initialization parameters to create boot
- * disks or local SSDs attached to the new instance.
- *
- * This property is mutually exclusive with the source property; you can only
- * define one or the other, but not both.
+ * The maximum number of instances that the autoscaler can scale up to. This
+ * is required when creating or updating an autoscaler. The maximum number of
+ * replicas should not be lower than minimal number of replicas.
*/
- AttachedDiskInitializeParams initializeParams;
+ core.int maxNumReplicas;
/**
- * Specifies the disk interface to use for attaching this disk, which is
- * either SCSI or NVME. The default is SCSI. Persistent disks must always use
- * SCSI and the request will fail if you attempt to attach a persistent disk
- * in any other format than SCSI. Local SSDs can use either NVME or SCSI. For
- * performance characteristics of SCSI over NVMe, see Local SSD performance.
- * Possible string values are:
- * - "NVME"
- * - "SCSI"
+ * The minimum number of replicas that the autoscaler can scale down to. This
+ * cannot be less than 0. If not provided, autoscaler will choose a default
+ * value depending on maximum number of instances allowed.
*/
- core.String interface;
+ core.int minNumReplicas;
+
+ AutoscalingPolicy();
+
+ AutoscalingPolicy.fromJson(core.Map _json) {
+ if (_json.containsKey("coolDownPeriodSec")) {
+ coolDownPeriodSec = _json["coolDownPeriodSec"];
+ }
+ if (_json.containsKey("cpuUtilization")) {
+ cpuUtilization = new AutoscalingPolicyCpuUtilization.fromJson(_json["cpuUtilization"]);
+ }
+ if (_json.containsKey("customMetricUtilizations")) {
+ customMetricUtilizations = _json["customMetricUtilizations"].map((value) => new AutoscalingPolicyCustomMetricUtilization.fromJson(value)).toList();
+ }
+ if (_json.containsKey("loadBalancingUtilization")) {
+ loadBalancingUtilization = new AutoscalingPolicyLoadBalancingUtilization.fromJson(_json["loadBalancingUtilization"]);
+ }
+ if (_json.containsKey("maxNumReplicas")) {
+ maxNumReplicas = _json["maxNumReplicas"];
+ }
+ if (_json.containsKey("minNumReplicas")) {
+ minNumReplicas = _json["minNumReplicas"];
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (coolDownPeriodSec != null) {
+ _json["coolDownPeriodSec"] = coolDownPeriodSec;
+ }
+ if (cpuUtilization != null) {
+ _json["cpuUtilization"] = (cpuUtilization).toJson();
+ }
+ if (customMetricUtilizations != null) {
+ _json["customMetricUtilizations"] = customMetricUtilizations.map((value) => (value).toJson()).toList();
+ }
+ if (loadBalancingUtilization != null) {
+ _json["loadBalancingUtilization"] = (loadBalancingUtilization).toJson();
+ }
+ if (maxNumReplicas != null) {
+ _json["maxNumReplicas"] = maxNumReplicas;
+ }
+ if (minNumReplicas != null) {
+ _json["minNumReplicas"] = minNumReplicas;
+ }
+ return _json;
+ }
+}
+
+/** CPU utilization policy. */
+class AutoscalingPolicyCpuUtilization {
/**
- * [Output Only] Type of the resource. Always compute#attachedDisk for
- * attached disks.
+ * The target CPU utilization that the autoscaler should maintain. Must be a
+ * float value in the range (0, 1]. If not specified, the default is 0.8.
+ *
+ * If the CPU level is below the target utilization, the autoscaler scales
+ * down the number of instances until it reaches the minimum number of
+ * instances you specified or until the average CPU of your instances reaches
+ * the target utilization.
+ *
+ * If the average CPU is above the target utilization, the autoscaler scales
+ * up until it reaches the maximum number of instances you specified or until
+ * the average utilization reaches the target utilization.
*/
- core.String kind;
- /** [Output Only] Any valid publicly visible licenses. */
- core.List<core.String> licenses;
+ core.double utilizationTarget;
+
+ AutoscalingPolicyCpuUtilization();
+
+ AutoscalingPolicyCpuUtilization.fromJson(core.Map _json) {
+ if (_json.containsKey("utilizationTarget")) {
+ utilizationTarget = _json["utilizationTarget"];
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (utilizationTarget != null) {
+ _json["utilizationTarget"] = utilizationTarget;
+ }
+ return _json;
+ }
+}
+
+/** Custom utilization metric policy. */
+class AutoscalingPolicyCustomMetricUtilization {
/**
- * The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If
- * not specified, the default is to attach the disk in READ_WRITE mode.
- * Possible string values are:
- * - "READ_ONLY"
- * - "READ_WRITE"
+ * The identifier of the Cloud Monitoring metric. The metric cannot have
+ * negative values and should be a utilization metric, which means that the
+ * number of virtual machines handling requests should increase or decrease
+ * proportionally to the metric. The metric must also have a label of
+ * compute.googleapis.com/resource_id with the value of the instance's unique
+ * ID, although this alone does not guarantee that the metric is valid.
+ *
+ * For example, the following is a valid metric:
+ * compute.googleapis.com/instance/network/received_bytes_count
+ *
+ *
+ * The following is not a valid metric because it does not increase or
+ * decrease based on usage:
+ * compute.googleapis.com/instance/cpu/reserved_cores
*/
- core.String mode;
+ core.String metric;
/**
- * Specifies a valid partial or full URL to an existing Persistent Disk
- * resource. This field is only applicable for persistent disks.
+ * Target value of the metric which autoscaler should maintain. Must be a
+ * positive value.
*/
- core.String source;
+ core.double utilizationTarget;
/**
- * Specifies the type of the disk, either SCRATCH or PERSISTENT. If not
- * specified, the default is PERSISTENT.
+ * Defines how target utilization value is expressed for a Cloud Monitoring
+ * metric. Either GAUGE, DELTA_PER_SECOND, or DELTA_PER_MINUTE. If not
+ * specified, the default is GAUGE.
* Possible string values are:
- * - "PERSISTENT"
- * - "SCRATCH"
+ * - "DELTA_PER_MINUTE"
+ * - "DELTA_PER_SECOND"
+ * - "GAUGE"
*/
- core.String type;
+ core.String utilizationTargetType;
- AttachedDisk();
+ AutoscalingPolicyCustomMetricUtilization();
- AttachedDisk.fromJson(core.Map _json) {
- if (_json.containsKey("autoDelete")) {
- autoDelete = _json["autoDelete"];
- }
- if (_json.containsKey("boot")) {
- boot = _json["boot"];
- }
- if (_json.containsKey("deviceName")) {
- deviceName = _json["deviceName"];
- }
- if (_json.containsKey("index")) {
- index = _json["index"];
- }
- if (_json.containsKey("initializeParams")) {
- initializeParams = new AttachedDiskInitializeParams.fromJson(_json["initializeParams"]);
- }
- if (_json.containsKey("interface")) {
- interface = _json["interface"];
- }
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
- }
- if (_json.containsKey("licenses")) {
- licenses = _json["licenses"];
- }
- if (_json.containsKey("mode")) {
- mode = _json["mode"];
+ AutoscalingPolicyCustomMetricUtilization.fromJson(core.Map _json) {
+ if (_json.containsKey("metric")) {
+ metric = _json["metric"];
}
- if (_json.containsKey("source")) {
- source = _json["source"];
+ if (_json.containsKey("utilizationTarget")) {
+ utilizationTarget = _json["utilizationTarget"];
}
- if (_json.containsKey("type")) {
- type = _json["type"];
+ if (_json.containsKey("utilizationTargetType")) {
+ utilizationTargetType = _json["utilizationTargetType"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (autoDelete != null) {
- _json["autoDelete"] = autoDelete;
- }
- if (boot != null) {
- _json["boot"] = boot;
- }
- if (deviceName != null) {
- _json["deviceName"] = deviceName;
- }
- if (index != null) {
- _json["index"] = index;
- }
- if (initializeParams != null) {
- _json["initializeParams"] = (initializeParams).toJson();
- }
- if (interface != null) {
- _json["interface"] = interface;
- }
- if (kind != null) {
- _json["kind"] = kind;
+ if (metric != null) {
+ _json["metric"] = metric;
}
- if (licenses != null) {
- _json["licenses"] = licenses;
+ if (utilizationTarget != null) {
+ _json["utilizationTarget"] = utilizationTarget;
}
- if (mode != null) {
- _json["mode"] = mode;
+ if (utilizationTargetType != null) {
+ _json["utilizationTargetType"] = utilizationTargetType;
}
- if (source != null) {
- _json["source"] = source;
+ return _json;
+ }
+}
+
+/** Configuration parameters of autoscaling based on load balancing. */
+class AutoscalingPolicyLoadBalancingUtilization {
+ /**
+ * Fraction of backend capacity utilization (set in HTTP(s) load balancing
+ * configuration) that autoscaler should maintain. Must be a positive float
+ * value. If not defined, the default is 0.8.
+ */
+ core.double utilizationTarget;
+
+ AutoscalingPolicyLoadBalancingUtilization();
+
+ AutoscalingPolicyLoadBalancingUtilization.fromJson(core.Map _json) {
+ if (_json.containsKey("utilizationTarget")) {
+ utilizationTarget = _json["utilizationTarget"];
}
- if (type != null) {
- _json["type"] = type;
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (utilizationTarget != null) {
+ _json["utilizationTarget"] = utilizationTarget;
}
return _json;
}
}
-/**
- * [Input Only] Specifies the parameters for a new disk that will be created
- * alongside the new instance. Use initialization parameters to create boot
- * disks or local SSDs attached to the new instance.
- *
- * This property is mutually exclusive with the source property; you can only
- * define one or the other, but not both.
- */
-class AttachedDiskInitializeParams {
+/** Message containing information of one individual backend. */
+class Backend {
/**
- * Specifies the disk name. If not specified, the default is to use the name
- * of the instance.
+ * Specifies the balancing mode for this backend. For global HTTP(S) load
+ * balancing, the default is UTILIZATION. Valid values are UTILIZATION and
+ * RATE.
+ * Possible string values are:
+ * - "RATE"
+ * - "UTILIZATION"
*/
- core.String diskName;
- /** Specifies the size of the disk in base-2 GB. */
- core.String diskSizeGb;
+ core.String balancingMode;
/**
- * Specifies the disk type to use to create the instance. If not specified,
- * the default is pd-standard, specified using the full URL. For example:
- *
- * https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/pd-standard
- *
- * Other values include pd-ssd and local-ssd. If you define this field, you
- * can provide either the full or partial URL. For example, the following are
- * valid values:
- * -
- * https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/diskType
- * - projects/project/zones/zone/diskTypes/diskType
- * - zones/zone/diskTypes/diskType
+ * A multiplier applied to the group's maximum servicing capacity (either
+ * UTILIZATION or RATE). Default value is 1, which means the group will serve
+ * up to 100% of its configured CPU or RPS (depending on balancingMode). A
+ * setting of 0 means the group is completely drained, offering 0% of its
+ * available CPU or RPS. Valid range is [0.0,1.0].
*/
- core.String diskType;
+ core.double capacityScaler;
/**
- * The source image used to create this disk. If the source image is deleted,
- * this field will not be set.
- *
- * To create a disk with one of the public operating system images, specify
- * the image by its family name. For example, specify family/debian-8 to use
- * the latest Debian 8 image:
- *
- * projects/debian-cloud/global/images/family/debian-8
- *
- * Alternatively, use a specific version of a public operating system image:
- *
- * projects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD
- *
- * To create a disk with a private image that you created, specify the image
- * name in the following format:
- *
- * global/images/my-private-image
- *
- * You can also specify a private image by its image family, which returns the
- * latest version of the image in that family. Replace the image name with
- * family/family-name:
+ * An optional description of this resource. Provide this property when you
+ * create the resource.
+ */
+ core.String description;
+ /**
+ * The fully-qualified URL of a zonal Instance Group resource. This instance
+ * group defines the list of instances that serve traffic. Member virtual
+ * machine instances from each instance group must live in the same zone as
+ * the instance group itself. No two backends in a backend service are allowed
+ * to use same Instance Group resource.
*
- * global/images/family/my-private-family
+ * Note that you must specify an Instance Group resource using the
+ * fully-qualified URL, rather than a partial URL.
*/
- core.String sourceImage;
+ core.String group;
+ /**
+ * The max requests per second (RPS) of the group. Can be used with either
+ * RATE or UTILIZATION balancing modes, but required if RATE mode. For RATE
+ * mode, either maxRate or maxRatePerInstance must be set.
+ */
+ core.int maxRate;
+ /**
+ * The max requests per second (RPS) that a single backend instance can
+ * handle.This is used to calculate the capacity of the group. Can be used in
+ * either balancing mode. For RATE mode, either maxRate or maxRatePerInstance
+ * must be set.
+ */
+ core.double maxRatePerInstance;
+ /**
+ * Used when balancingMode is UTILIZATION. This ratio defines the CPU
+ * utilization target for the group. The default is 0.8. Valid range is [0.0,
+ * 1.0].
+ */
+ core.double maxUtilization;
- AttachedDiskInitializeParams();
+ Backend();
- AttachedDiskInitializeParams.fromJson(core.Map _json) {
- if (_json.containsKey("diskName")) {
- diskName = _json["diskName"];
+ Backend.fromJson(core.Map _json) {
+ if (_json.containsKey("balancingMode")) {
+ balancingMode = _json["balancingMode"];
}
- if (_json.containsKey("diskSizeGb")) {
- diskSizeGb = _json["diskSizeGb"];
+ if (_json.containsKey("capacityScaler")) {
+ capacityScaler = _json["capacityScaler"];
}
- if (_json.containsKey("diskType")) {
- diskType = _json["diskType"];
+ if (_json.containsKey("description")) {
+ description = _json["description"];
}
- if (_json.containsKey("sourceImage")) {
- sourceImage = _json["sourceImage"];
+ if (_json.containsKey("group")) {
+ group = _json["group"];
+ }
+ if (_json.containsKey("maxRate")) {
+ maxRate = _json["maxRate"];
+ }
+ if (_json.containsKey("maxRatePerInstance")) {
+ maxRatePerInstance = _json["maxRatePerInstance"];
+ }
+ if (_json.containsKey("maxUtilization")) {
+ maxUtilization = _json["maxUtilization"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (diskName != null) {
- _json["diskName"] = diskName;
+ if (balancingMode != null) {
+ _json["balancingMode"] = balancingMode;
}
- if (diskSizeGb != null) {
- _json["diskSizeGb"] = diskSizeGb;
+ if (capacityScaler != null) {
+ _json["capacityScaler"] = capacityScaler;
}
- if (diskType != null) {
- _json["diskType"] = diskType;
+ if (description != null) {
+ _json["description"] = description;
}
- if (sourceImage != null) {
- _json["sourceImage"] = sourceImage;
+ if (group != null) {
+ _json["group"] = group;
+ }
+ if (maxRate != null) {
+ _json["maxRate"] = maxRate;
+ }
+ if (maxRatePerInstance != null) {
+ _json["maxRatePerInstance"] = maxRatePerInstance;
+ }
+ if (maxUtilization != null) {
+ _json["maxUtilization"] = maxUtilization;
}
return _json;
}
}
/**
- * Represents an Autoscaler resource. Autoscalers allow you to automatically
- * scale virtual machine instances in managed instance groups according to an
- * autoscaling policy that you define. For more information, read Autoscaling
- * Groups of Instances.
+ * A BackendService resource. This resource defines a group of backend virtual
+ * machines and their serving capacity.
*/
-class Autoscaler {
- /**
- * The configuration parameters for the autoscaling algorithm. You can define
- * one or more of the policies for an autoscaler: cpuUtilization,
- * customMetricUtilizations, and loadBalancingUtilization.
- *
- * If none of these are specified, the default will be to autoscale based on
- * cpuUtilization to 0.8 or 80%.
- */
- AutoscalingPolicy autoscalingPolicy;
+class BackendService {
+ /** The list of backends that serve this BackendService. */
+ core.List<Backend> backends;
/** [Output Only] Creation timestamp in RFC3339 text format. */
core.String creationTimestamp;
/**
@@ -13392,13 +14695,33 @@ class Autoscaler {
*/
core.String description;
/**
+ * Fingerprint of this resource. A hash of the contents stored in this object.
+ * This field is used in optimistic locking. This field will be ignored when
+ * inserting a BackendService. An up-to-date fingerprint must be provided in
+ * order to update the BackendService.
+ */
+ core.String fingerprint;
+ core.List<core.int> get fingerprintAsBytes {
+ return convert.BASE64.decode(fingerprint);
+ }
+
+ void set fingerprintAsBytes(core.List<core.int> _bytes) {
+ fingerprint = convert.BASE64.encode(_bytes).replaceAll("/", "_").replaceAll("+", "-");
+ }
+ /**
+ * The list of URLs to the HttpHealthCheck or HttpsHealthCheck resource for
+ * health checking this BackendService. Currently at most one health check can
+ * be specified, and a health check is required.
+ */
+ core.List<core.String> healthChecks;
+ /**
* [Output Only] The unique identifier for the resource. This identifier is
* defined by the server.
*/
core.String id;
/**
- * [Output Only] Type of the resource. Always compute#autoscaler for
- * autoscalers.
+ * [Output Only] Type of resource. Always compute#backendService for backend
+ * services.
*/
core.String kind;
/**
@@ -13411,18 +14734,43 @@ class Autoscaler {
* dash.
*/
core.String name;
+ /**
+ * Deprecated in favor of portName. The TCP port to connect on the backend.
+ * The default value is 80.
+ */
+ core.int port;
+ /**
+ * Name of backend port. The same name should appear in the instance groups
+ * referenced by this service. Required.
+ */
+ core.String portName;
+ /**
+ * The protocol this BackendService uses to communicate with backends.
+ *
+ * Possible values are HTTP, HTTPS, HTTP2, TCP and SSL.
+ * Possible string values are:
+ * - "HTTP"
+ * - "HTTPS"
+ */
+ core.String protocol;
+ /**
+ * [Output Only] URL of the region where the regional backend service resides.
+ * This field is not applicable to global backend services.
+ */
+ core.String region;
/** [Output Only] Server-defined URL for the resource. */
core.String selfLink;
- /** URL of the managed instance group that this autoscaler will scale. */
- core.String target;
- /** [Output Only] URL of the zone where the instance group resides. */
- core.String zone;
+ /**
+ * How many seconds to wait for the backend before considering it a failed
+ * request. Default is 30 seconds.
+ */
+ core.int timeoutSec;
- Autoscaler();
+ BackendService();
- Autoscaler.fromJson(core.Map _json) {
- if (_json.containsKey("autoscalingPolicy")) {
- autoscalingPolicy = new AutoscalingPolicy.fromJson(_json["autoscalingPolicy"]);
+ BackendService.fromJson(core.Map _json) {
+ if (_json.containsKey("backends")) {
+ backends = _json["backends"].map((value) => new Backend.fromJson(value)).toList();
}
if (_json.containsKey("creationTimestamp")) {
creationTimestamp = _json["creationTimestamp"];
@@ -13430,6 +14778,12 @@ class Autoscaler {
if (_json.containsKey("description")) {
description = _json["description"];
}
+ if (_json.containsKey("fingerprint")) {
+ fingerprint = _json["fingerprint"];
+ }
+ if (_json.containsKey("healthChecks")) {
+ healthChecks = _json["healthChecks"];
+ }
if (_json.containsKey("id")) {
id = _json["id"];
}
@@ -13439,21 +14793,30 @@ class Autoscaler {
if (_json.containsKey("name")) {
name = _json["name"];
}
+ if (_json.containsKey("port")) {
+ port = _json["port"];
+ }
+ if (_json.containsKey("portName")) {
+ portName = _json["portName"];
+ }
+ if (_json.containsKey("protocol")) {
+ protocol = _json["protocol"];
+ }
+ if (_json.containsKey("region")) {
+ region = _json["region"];
+ }
if (_json.containsKey("selfLink")) {
selfLink = _json["selfLink"];
}
- if (_json.containsKey("target")) {
- target = _json["target"];
- }
- if (_json.containsKey("zone")) {
- zone = _json["zone"];
+ if (_json.containsKey("timeoutSec")) {
+ timeoutSec = _json["timeoutSec"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (autoscalingPolicy != null) {
- _json["autoscalingPolicy"] = (autoscalingPolicy).toJson();
+ if (backends != null) {
+ _json["backends"] = backends.map((value) => (value).toJson()).toList();
}
if (creationTimestamp != null) {
_json["creationTimestamp"] = creationTimestamp;
@@ -13461,6 +14824,12 @@ class Autoscaler {
if (description != null) {
_json["description"] = description;
}
+ if (fingerprint != null) {
+ _json["fingerprint"] = fingerprint;
+ }
+ if (healthChecks != null) {
+ _json["healthChecks"] = healthChecks;
+ }
if (id != null) {
_json["id"] = id;
}
@@ -13470,955 +14839,1297 @@ class Autoscaler {
if (name != null) {
_json["name"] = name;
}
+ if (port != null) {
+ _json["port"] = port;
+ }
+ if (portName != null) {
+ _json["portName"] = portName;
+ }
+ if (protocol != null) {
+ _json["protocol"] = protocol;
+ }
+ if (region != null) {
+ _json["region"] = region;
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
+ }
+ if (timeoutSec != null) {
+ _json["timeoutSec"] = timeoutSec;
+ }
+ return _json;
+ }
+}
+
+class BackendServiceGroupHealth {
+ core.List<HealthStatus> healthStatus;
+ /**
+ * [Output Only] Type of resource. Always compute#backendServiceGroupHealth
+ * for the health of backend services.
+ */
+ core.String kind;
+
+ BackendServiceGroupHealth();
+
+ BackendServiceGroupHealth.fromJson(core.Map _json) {
+ if (_json.containsKey("healthStatus")) {
+ healthStatus = _json["healthStatus"].map((value) => new HealthStatus.fromJson(value)).toList();
+ }
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (healthStatus != null) {
+ _json["healthStatus"] = healthStatus.map((value) => (value).toJson()).toList();
+ }
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ return _json;
+ }
+}
+
+/** Contains a list of BackendService resources. */
+class BackendServiceList {
+ /**
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
+ */
+ core.String id;
+ /** A list of BackendService resources. */
+ core.List<BackendService> items;
+ /**
+ * [Output Only] Type of resource. Always compute#backendServiceList for lists
+ * of backend services.
+ */
+ core.String kind;
+ /**
+ * [Output Only] This token allows you to get the next page of results for
+ * list requests. If the number of results is larger than maxResults, use the
+ * nextPageToken as a value for the query parameter pageToken in the next list
+ * request. Subsequent list requests will have their own nextPageToken to
+ * continue paging through the results.
+ */
+ core.String nextPageToken;
+ /** [Output Only] Server-defined URL for this resource. */
+ core.String selfLink;
+
+ BackendServiceList();
+
+ BackendServiceList.fromJson(core.Map _json) {
+ if (_json.containsKey("id")) {
+ id = _json["id"];
+ }
+ if (_json.containsKey("items")) {
+ items = _json["items"].map((value) => new BackendService.fromJson(value)).toList();
+ }
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("nextPageToken")) {
+ nextPageToken = _json["nextPageToken"];
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (id != null) {
+ _json["id"] = id;
+ }
+ if (items != null) {
+ _json["items"] = items.map((value) => (value).toJson()).toList();
+ }
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (nextPageToken != null) {
+ _json["nextPageToken"] = nextPageToken;
+ }
if (selfLink != null) {
_json["selfLink"] = selfLink;
}
- if (target != null) {
- _json["target"] = target;
+ return _json;
+ }
+}
+
+/** Represents a customer-supplied encryption key */
+class CustomerEncryptionKey {
+ /**
+ * Specifies a 256-bit customer-supplied encryption key, encoded in base64 to
+ * either encrypt or decrypt this resource.
+ */
+ core.String rawKey;
+ /**
+ * [Output only] The base64 encoded SHA-256 hash of the customer-supplied
+ * encryption key that protects this resource.
+ */
+ core.String sha256;
+
+ CustomerEncryptionKey();
+
+ CustomerEncryptionKey.fromJson(core.Map _json) {
+ if (_json.containsKey("rawKey")) {
+ rawKey = _json["rawKey"];
+ }
+ if (_json.containsKey("sha256")) {
+ sha256 = _json["sha256"];
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (rawKey != null) {
+ _json["rawKey"] = rawKey;
+ }
+ if (sha256 != null) {
+ _json["sha256"] = sha256;
+ }
+ return _json;
+ }
+}
+
+class CustomerEncryptionKeyProtectedDisk {
+ /**
+ * Decrypts data associated with the disk with a customer-supplied encryption
+ * key.
+ */
+ CustomerEncryptionKey diskEncryptionKey;
+ /**
+ * Specifies a valid partial or full URL to an existing Persistent Disk
+ * resource. This field is only applicable for persistent disks.
+ */
+ core.String source;
+
+ CustomerEncryptionKeyProtectedDisk();
+
+ CustomerEncryptionKeyProtectedDisk.fromJson(core.Map _json) {
+ if (_json.containsKey("diskEncryptionKey")) {
+ diskEncryptionKey = new CustomerEncryptionKey.fromJson(_json["diskEncryptionKey"]);
+ }
+ if (_json.containsKey("source")) {
+ source = _json["source"];
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (diskEncryptionKey != null) {
+ _json["diskEncryptionKey"] = (diskEncryptionKey).toJson();
}
- if (zone != null) {
- _json["zone"] = zone;
+ if (source != null) {
+ _json["source"] = source;
}
return _json;
}
}
-class AutoscalerAggregatedList {
+/** Deprecation status for a public resource. */
+class DeprecationStatus {
/**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
+ * An optional RFC3339 timestamp on or after which the deprecation state of
+ * this resource will be changed to DELETED.
*/
- core.String id;
- /** A map of scoped autoscaler lists. */
- core.Map<core.String, AutoscalersScopedList> items;
+ core.String deleted;
/**
- * [Output Only] Type of resource. Always compute#autoscalerAggregatedList for
- * aggregated lists of autoscalers.
+ * An optional RFC3339 timestamp on or after which the deprecation state of
+ * this resource will be changed to DEPRECATED.
*/
- core.String kind;
+ core.String deprecated;
/**
- * [Output Only] This token allows you to get the next page of results for
- * list requests. If the number of results is larger than maxResults, use the
- * nextPageToken as a value for the query parameter pageToken in the next list
- * request. Subsequent list requests will have their own nextPageToken to
- * continue paging through the results.
+ * An optional RFC3339 timestamp on or after which the deprecation state of
+ * this resource will be changed to OBSOLETE.
*/
- core.String nextPageToken;
- /** [Output Only] Server-defined URL for this resource. */
- core.String selfLink;
+ core.String obsolete;
+ /**
+ * The URL of the suggested replacement for a deprecated resource. The
+ * suggested replacement resource must be the same kind of resource as the
+ * deprecated resource.
+ */
+ core.String replacement;
+ /**
+ * The deprecation state of this resource. This can be DEPRECATED, OBSOLETE,
+ * or DELETED. Operations which create a new resource using a DEPRECATED
+ * resource will return successfully, but with a warning indicating the
+ * deprecated resource and recommending its replacement. Operations which use
+ * OBSOLETE or DELETED resources will be rejected and result in an error.
+ * Possible string values are:
+ * - "DELETED"
+ * - "DEPRECATED"
+ * - "OBSOLETE"
+ */
+ core.String state;
- AutoscalerAggregatedList();
+ DeprecationStatus();
- AutoscalerAggregatedList.fromJson(core.Map _json) {
- if (_json.containsKey("id")) {
- id = _json["id"];
+ DeprecationStatus.fromJson(core.Map _json) {
+ if (_json.containsKey("deleted")) {
+ deleted = _json["deleted"];
}
- if (_json.containsKey("items")) {
- items = commons.mapMap(_json["items"], (item) => new AutoscalersScopedList.fromJson(item));
+ if (_json.containsKey("deprecated")) {
+ deprecated = _json["deprecated"];
}
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
+ if (_json.containsKey("obsolete")) {
+ obsolete = _json["obsolete"];
}
- if (_json.containsKey("nextPageToken")) {
- nextPageToken = _json["nextPageToken"];
+ if (_json.containsKey("replacement")) {
+ replacement = _json["replacement"];
}
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
+ if (_json.containsKey("state")) {
+ state = _json["state"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (id != null) {
- _json["id"] = id;
+ if (deleted != null) {
+ _json["deleted"] = deleted;
}
- if (items != null) {
- _json["items"] = commons.mapMap(items, (item) => (item).toJson());
+ if (deprecated != null) {
+ _json["deprecated"] = deprecated;
}
- if (kind != null) {
- _json["kind"] = kind;
+ if (obsolete != null) {
+ _json["obsolete"] = obsolete;
}
- if (nextPageToken != null) {
- _json["nextPageToken"] = nextPageToken;
+ if (replacement != null) {
+ _json["replacement"] = replacement;
}
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
+ if (state != null) {
+ _json["state"] = state;
}
return _json;
}
}
-/** Contains a list of Autoscaler resources. */
-class AutoscalerList {
+/** A Disk resource. */
+class Disk {
+ /** [Output Only] Creation timestamp in RFC3339 text format. */
+ core.String creationTimestamp;
+ /**
+ * An optional description of this resource. Provide this property when you
+ * create the resource.
+ */
+ core.String description;
+ /**
+ * Encrypts the disk using a customer-supplied encryption key.
+ *
+ * After you encrypt a disk with a customer-supplied key, you must provide the
+ * same key if you use the disk later (e.g. to create a disk snapshot or an
+ * image, or to attach the disk to a virtual machine).
+ *
+ * Customer-supplied encryption keys do not protect access to metadata of the
+ * disk.
+ *
+ * If you do not provide an encryption key when creating the disk, then the
+ * disk will be encrypted using an automatically generated key and you do not
+ * need to provide a key to use the disk later.
+ */
+ CustomerEncryptionKey diskEncryptionKey;
/**
* [Output Only] The unique identifier for the resource. This identifier is
* defined by the server.
*/
core.String id;
- /** A list of Autoscaler resources. */
- core.List<Autoscaler> items;
- /**
- * [Output Only] Type of resource. Always compute#autoscalerList for lists of
- * autoscalers.
- */
+ /** [Output Only] Type of the resource. Always compute#disk for disks. */
core.String kind;
+ /** [Output Only] Last attach timestamp in RFC3339 text format. */
+ core.String lastAttachTimestamp;
+ /** [Output Only] Last detach timestamp in RFC3339 text format. */
+ core.String lastDetachTimestamp;
+ /** [Output Only] Any applicable publicly visible licenses. */
+ core.List<core.String> licenses;
/**
- * [Output Only] This token allows you to get the next page of results for
- * list requests. If the number of results is larger than maxResults, use the
- * nextPageToken as a value for the query parameter pageToken in the next list
- * request. Subsequent list requests will have their own nextPageToken to
- * continue paging through the results.
+ * Name of the resource. Provided by the client when the resource is created.
+ * The name must be 1-63 characters long, and comply with RFC1035.
+ * Specifically, the name must be 1-63 characters long and match the regular
+ * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
+ * be a lowercase letter, and all following characters must be a dash,
+ * lowercase letter, or digit, except the last character, which cannot be a
+ * dash.
*/
- core.String nextPageToken;
- /** [Output Only] Server-defined URL for this resource. */
+ core.String name;
+ /** Internal use only. */
+ core.String options;
+ /** [Output Only] Server-defined fully-qualified URL for this resource. */
core.String selfLink;
+ /**
+ * Size of the persistent disk, specified in GB. You can specify this field
+ * when creating a persistent disk using the sourceImage or sourceSnapshot
+ * parameter, or specify it alone to create an empty persistent disk.
+ *
+ * If you specify this field along with sourceImage or sourceSnapshot, the
+ * value of sizeGb must not be less than the size of the sourceImage or the
+ * size of the snapshot.
+ */
+ core.String sizeGb;
+ /**
+ * The source image used to create this disk. If the source image is deleted,
+ * this field will not be set.
+ *
+ * To create a disk with one of the public operating system images, specify
+ * the image by its family name. For example, specify family/debian-8 to use
+ * the latest Debian 8 image:
+ *
+ * projects/debian-cloud/global/images/family/debian-8
+ *
+ * Alternatively, use a specific version of a public operating system image:
+ *
+ * projects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD
+ *
+ * To create a disk with a private image that you created, specify the image
+ * name in the following format:
+ *
+ * global/images/my-private-image
+ *
+ * You can also specify a private image by its image family, which returns the
+ * latest version of the image in that family. Replace the image name with
+ * family/family-name:
+ *
+ * global/images/family/my-private-family
+ */
+ core.String sourceImage;
+ /**
+ * The customer-supplied encryption key of the source image. Required if the
+ * source image is protected by a customer-supplied encryption key.
+ */
+ CustomerEncryptionKey sourceImageEncryptionKey;
+ /**
+ * [Output Only] The ID value of the image used to create this disk. This
+ * value identifies the exact image that was used to create this persistent
+ * disk. For example, if you created the persistent disk from an image that
+ * was later deleted and recreated under the same name, the source image ID
+ * would identify the exact version of the image that was used.
+ */
+ core.String sourceImageId;
+ /**
+ * The source snapshot used to create this disk. You can provide this as a
+ * partial or full URL to the resource. For example, the following are valid
+ * values:
+ * -
+ * https://www.googleapis.com/compute/v1/projects/project/global/snapshots/snapshot
+ * - projects/project/global/snapshots/snapshot
+ * - global/snapshots/snapshot
+ */
+ core.String sourceSnapshot;
+ /**
+ * The customer-supplied encryption key of the source snapshot. Required if
+ * the source snapshot is protected by a customer-supplied encryption key.
+ */
+ CustomerEncryptionKey sourceSnapshotEncryptionKey;
+ /**
+ * [Output Only] The unique ID of the snapshot used to create this disk. This
+ * value identifies the exact snapshot that was used to create this persistent
+ * disk. For example, if you created the persistent disk from a snapshot that
+ * was later deleted and recreated under the same name, the source snapshot ID
+ * would identify the exact version of the snapshot that was used.
+ */
+ core.String sourceSnapshotId;
+ /**
+ * [Output Only] The status of disk creation. Applicable statuses includes:
+ * CREATING, FAILED, READY, RESTORING.
+ * Possible string values are:
+ * - "CREATING"
+ * - "FAILED"
+ * - "READY"
+ * - "RESTORING"
+ */
+ core.String status;
+ /**
+ * URL of the disk type resource describing which disk type to use to create
+ * the disk. Provide this when creating the disk.
+ */
+ core.String type;
+ /**
+ * [Output Only] Links to the users of the disk (attached instances) in form:
+ * project/zones/zone/instances/instance
+ */
+ core.List<core.String> users;
+ /** [Output Only] URL of the zone where the disk resides. */
+ core.String zone;
- AutoscalerList();
+ Disk();
- AutoscalerList.fromJson(core.Map _json) {
+ Disk.fromJson(core.Map _json) {
+ if (_json.containsKey("creationTimestamp")) {
+ creationTimestamp = _json["creationTimestamp"];
+ }
+ if (_json.containsKey("description")) {
+ description = _json["description"];
+ }
+ if (_json.containsKey("diskEncryptionKey")) {
+ diskEncryptionKey = new CustomerEncryptionKey.fromJson(_json["diskEncryptionKey"]);
+ }
if (_json.containsKey("id")) {
id = _json["id"];
}
- if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new Autoscaler.fromJson(value)).toList();
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("lastAttachTimestamp")) {
+ lastAttachTimestamp = _json["lastAttachTimestamp"];
+ }
+ if (_json.containsKey("lastDetachTimestamp")) {
+ lastDetachTimestamp = _json["lastDetachTimestamp"];
+ }
+ if (_json.containsKey("licenses")) {
+ licenses = _json["licenses"];
}
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
+ if (_json.containsKey("name")) {
+ name = _json["name"];
}
- if (_json.containsKey("nextPageToken")) {
- nextPageToken = _json["nextPageToken"];
+ if (_json.containsKey("options")) {
+ options = _json["options"];
}
if (_json.containsKey("selfLink")) {
selfLink = _json["selfLink"];
}
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (id != null) {
- _json["id"] = id;
- }
- if (items != null) {
- _json["items"] = items.map((value) => (value).toJson()).toList();
+ if (_json.containsKey("sizeGb")) {
+ sizeGb = _json["sizeGb"];
}
- if (kind != null) {
- _json["kind"] = kind;
+ if (_json.containsKey("sourceImage")) {
+ sourceImage = _json["sourceImage"];
}
- if (nextPageToken != null) {
- _json["nextPageToken"] = nextPageToken;
+ if (_json.containsKey("sourceImageEncryptionKey")) {
+ sourceImageEncryptionKey = new CustomerEncryptionKey.fromJson(_json["sourceImageEncryptionKey"]);
}
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
+ if (_json.containsKey("sourceImageId")) {
+ sourceImageId = _json["sourceImageId"];
}
- return _json;
- }
-}
-
-class AutoscalersScopedListWarningData {
- /**
- * [Output Only] A key that provides more detail on the warning being
- * returned. For example, for warnings where there are no results in a list
- * request for a particular zone, this key might be scope and the key value
- * might be the zone name. Other examples might be a key indicating a
- * deprecated resource and a suggested replacement, or a warning about invalid
- * network settings (for example, if an instance attempts to perform IP
- * forwarding but is not enabled for IP forwarding).
- */
- core.String key;
- /** [Output Only] A warning data value corresponding to the key. */
- core.String value;
-
- AutoscalersScopedListWarningData();
-
- AutoscalersScopedListWarningData.fromJson(core.Map _json) {
- if (_json.containsKey("key")) {
- key = _json["key"];
+ if (_json.containsKey("sourceSnapshot")) {
+ sourceSnapshot = _json["sourceSnapshot"];
}
- if (_json.containsKey("value")) {
- value = _json["value"];
+ if (_json.containsKey("sourceSnapshotEncryptionKey")) {
+ sourceSnapshotEncryptionKey = new CustomerEncryptionKey.fromJson(_json["sourceSnapshotEncryptionKey"]);
}
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (key != null) {
- _json["key"] = key;
+ if (_json.containsKey("sourceSnapshotId")) {
+ sourceSnapshotId = _json["sourceSnapshotId"];
}
- if (value != null) {
- _json["value"] = value;
+ if (_json.containsKey("status")) {
+ status = _json["status"];
}
- return _json;
- }
-}
-
-/**
- * [Output Only] Informational warning which replaces the list of autoscalers
- * when the list is empty.
- */
-class AutoscalersScopedListWarning {
- /**
- * [Output Only] A warning code, if applicable. For example, Compute Engine
- * returns NO_RESULTS_ON_PAGE if there are no results in the response.
- * Possible string values are:
- * - "CLEANUP_FAILED"
- * - "DEPRECATED_RESOURCE_USED"
- * - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
- * - "INJECTED_KERNELS_DEPRECATED"
- * - "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
- * - "NEXT_HOP_CANNOT_IP_FORWARD"
- * - "NEXT_HOP_INSTANCE_NOT_FOUND"
- * - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
- * - "NEXT_HOP_NOT_RUNNING"
- * - "NOT_CRITICAL_ERROR"
- * - "NO_RESULTS_ON_PAGE"
- * - "REQUIRED_TOS_AGREEMENT"
- * - "RESOURCE_NOT_DELETED"
- * - "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
- * - "UNREACHABLE"
- */
- core.String code;
- /**
- * [Output Only] Metadata about this warning in key: value format. For
- * example:
- * "data": [ { "key": "scope", "value": "zones/us-east1-d" }
- */
- core.List<AutoscalersScopedListWarningData> data;
- /** [Output Only] A human-readable description of the warning code. */
- core.String message;
-
- AutoscalersScopedListWarning();
-
- AutoscalersScopedListWarning.fromJson(core.Map _json) {
- if (_json.containsKey("code")) {
- code = _json["code"];
+ if (_json.containsKey("type")) {
+ type = _json["type"];
}
- if (_json.containsKey("data")) {
- data = _json["data"].map((value) => new AutoscalersScopedListWarningData.fromJson(value)).toList();
+ if (_json.containsKey("users")) {
+ users = _json["users"];
}
- if (_json.containsKey("message")) {
- message = _json["message"];
+ if (_json.containsKey("zone")) {
+ zone = _json["zone"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (code != null) {
- _json["code"] = code;
+ if (creationTimestamp != null) {
+ _json["creationTimestamp"] = creationTimestamp;
}
- if (data != null) {
- _json["data"] = data.map((value) => (value).toJson()).toList();
+ if (description != null) {
+ _json["description"] = description;
}
- if (message != null) {
- _json["message"] = message;
+ if (diskEncryptionKey != null) {
+ _json["diskEncryptionKey"] = (diskEncryptionKey).toJson();
}
- return _json;
- }
-}
-
-class AutoscalersScopedList {
- /** [Output Only] List of autoscalers contained in this scope. */
- core.List<Autoscaler> autoscalers;
- /**
- * [Output Only] Informational warning which replaces the list of autoscalers
- * when the list is empty.
- */
- AutoscalersScopedListWarning warning;
-
- AutoscalersScopedList();
-
- AutoscalersScopedList.fromJson(core.Map _json) {
- if (_json.containsKey("autoscalers")) {
- autoscalers = _json["autoscalers"].map((value) => new Autoscaler.fromJson(value)).toList();
+ if (id != null) {
+ _json["id"] = id;
}
- if (_json.containsKey("warning")) {
- warning = new AutoscalersScopedListWarning.fromJson(_json["warning"]);
+ if (kind != null) {
+ _json["kind"] = kind;
}
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (autoscalers != null) {
- _json["autoscalers"] = autoscalers.map((value) => (value).toJson()).toList();
+ if (lastAttachTimestamp != null) {
+ _json["lastAttachTimestamp"] = lastAttachTimestamp;
}
- if (warning != null) {
- _json["warning"] = (warning).toJson();
+ if (lastDetachTimestamp != null) {
+ _json["lastDetachTimestamp"] = lastDetachTimestamp;
}
- return _json;
- }
-}
-
-/** Cloud Autoscaler policy. */
-class AutoscalingPolicy {
- /**
- * The number of seconds that the autoscaler should wait before it starts
- * collecting information from a new instance. This prevents the autoscaler
- * from collecting information when the instance is initializing, during which
- * the collected usage would not be reliable. The default time autoscaler
- * waits is 60 seconds.
- *
- * Virtual machine initialization times might vary because of numerous
- * factors. We recommend that you test how long an instance may take to
- * initialize. To do this, create an instance and time the startup process.
- */
- core.int coolDownPeriodSec;
- /**
- * Defines the CPU utilization policy that allows the autoscaler to scale
- * based on the average CPU utilization of a managed instance group.
- */
- AutoscalingPolicyCpuUtilization cpuUtilization;
- /** Configuration parameters of autoscaling based on a custom metric. */
- core.List<AutoscalingPolicyCustomMetricUtilization> customMetricUtilizations;
- /** Configuration parameters of autoscaling based on load balancer. */
- AutoscalingPolicyLoadBalancingUtilization loadBalancingUtilization;
- /**
- * The maximum number of instances that the autoscaler can scale up to. This
- * is required when creating or updating an autoscaler. The maximum number of
- * replicas should not be lower than minimal number of replicas.
- */
- core.int maxNumReplicas;
- /**
- * The minimum number of replicas that the autoscaler can scale down to. This
- * cannot be less than 0. If not provided, autoscaler will choose a default
- * value depending on maximum number of instances allowed.
- */
- core.int minNumReplicas;
-
- AutoscalingPolicy();
-
- AutoscalingPolicy.fromJson(core.Map _json) {
- if (_json.containsKey("coolDownPeriodSec")) {
- coolDownPeriodSec = _json["coolDownPeriodSec"];
+ if (licenses != null) {
+ _json["licenses"] = licenses;
}
- if (_json.containsKey("cpuUtilization")) {
- cpuUtilization = new AutoscalingPolicyCpuUtilization.fromJson(_json["cpuUtilization"]);
+ if (name != null) {
+ _json["name"] = name;
}
- if (_json.containsKey("customMetricUtilizations")) {
- customMetricUtilizations = _json["customMetricUtilizations"].map((value) => new AutoscalingPolicyCustomMetricUtilization.fromJson(value)).toList();
+ if (options != null) {
+ _json["options"] = options;
}
- if (_json.containsKey("loadBalancingUtilization")) {
- loadBalancingUtilization = new AutoscalingPolicyLoadBalancingUtilization.fromJson(_json["loadBalancingUtilization"]);
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
}
- if (_json.containsKey("maxNumReplicas")) {
- maxNumReplicas = _json["maxNumReplicas"];
+ if (sizeGb != null) {
+ _json["sizeGb"] = sizeGb;
}
- if (_json.containsKey("minNumReplicas")) {
- minNumReplicas = _json["minNumReplicas"];
+ if (sourceImage != null) {
+ _json["sourceImage"] = sourceImage;
}
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (coolDownPeriodSec != null) {
- _json["coolDownPeriodSec"] = coolDownPeriodSec;
+ if (sourceImageEncryptionKey != null) {
+ _json["sourceImageEncryptionKey"] = (sourceImageEncryptionKey).toJson();
}
- if (cpuUtilization != null) {
- _json["cpuUtilization"] = (cpuUtilization).toJson();
+ if (sourceImageId != null) {
+ _json["sourceImageId"] = sourceImageId;
+ }
+ if (sourceSnapshot != null) {
+ _json["sourceSnapshot"] = sourceSnapshot;
+ }
+ if (sourceSnapshotEncryptionKey != null) {
+ _json["sourceSnapshotEncryptionKey"] = (sourceSnapshotEncryptionKey).toJson();
+ }
+ if (sourceSnapshotId != null) {
+ _json["sourceSnapshotId"] = sourceSnapshotId;
}
- if (customMetricUtilizations != null) {
- _json["customMetricUtilizations"] = customMetricUtilizations.map((value) => (value).toJson()).toList();
+ if (status != null) {
+ _json["status"] = status;
}
- if (loadBalancingUtilization != null) {
- _json["loadBalancingUtilization"] = (loadBalancingUtilization).toJson();
+ if (type != null) {
+ _json["type"] = type;
}
- if (maxNumReplicas != null) {
- _json["maxNumReplicas"] = maxNumReplicas;
+ if (users != null) {
+ _json["users"] = users;
}
- if (minNumReplicas != null) {
- _json["minNumReplicas"] = minNumReplicas;
+ if (zone != null) {
+ _json["zone"] = zone;
}
return _json;
}
}
-/** CPU utilization policy. */
-class AutoscalingPolicyCpuUtilization {
+class DiskAggregatedList {
/**
- * The target CPU utilization that the autoscaler should maintain. Must be a
- * float value in the range (0, 1]. If not specified, the default is 0.8.
- *
- * If the CPU level is below the target utilization, the autoscaler scales
- * down the number of instances until it reaches the minimum number of
- * instances you specified or until the average CPU of your instances reaches
- * the target utilization.
- *
- * If the average CPU is above the target utilization, the autoscaler scales
- * up until it reaches the maximum number of instances you specified or until
- * the average utilization reaches the target utilization.
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
*/
- core.double utilizationTarget;
+ core.String id;
+ /** [Output Only] A map of scoped disk lists. */
+ core.Map<core.String, DisksScopedList> items;
+ /**
+ * [Output Only] Type of resource. Always compute#diskAggregatedList for
+ * aggregated lists of persistent disks.
+ */
+ core.String kind;
+ /**
+ * [Output Only] This token allows you to get the next page of results for
+ * list requests. If the number of results is larger than maxResults, use the
+ * nextPageToken as a value for the query parameter pageToken in the next list
+ * request. Subsequent list requests will have their own nextPageToken to
+ * continue paging through the results.
+ */
+ core.String nextPageToken;
+ /** [Output Only] Server-defined URL for this resource. */
+ core.String selfLink;
- AutoscalingPolicyCpuUtilization();
+ DiskAggregatedList();
- AutoscalingPolicyCpuUtilization.fromJson(core.Map _json) {
- if (_json.containsKey("utilizationTarget")) {
- utilizationTarget = _json["utilizationTarget"];
+ DiskAggregatedList.fromJson(core.Map _json) {
+ if (_json.containsKey("id")) {
+ id = _json["id"];
+ }
+ if (_json.containsKey("items")) {
+ items = commons.mapMap(_json["items"], (item) => new DisksScopedList.fromJson(item));
+ }
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("nextPageToken")) {
+ nextPageToken = _json["nextPageToken"];
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (utilizationTarget != null) {
- _json["utilizationTarget"] = utilizationTarget;
+ if (id != null) {
+ _json["id"] = id;
+ }
+ if (items != null) {
+ _json["items"] = commons.mapMap(items, (item) => (item).toJson());
+ }
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (nextPageToken != null) {
+ _json["nextPageToken"] = nextPageToken;
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
}
return _json;
}
}
-/** Custom utilization metric policy. */
-class AutoscalingPolicyCustomMetricUtilization {
+/** A list of Disk resources. */
+class DiskList {
/**
- * The identifier of the Cloud Monitoring metric. The metric cannot have
- * negative values and should be a utilization metric, which means that the
- * number of virtual machines handling requests should increase or decrease
- * proportionally to the metric. The metric must also have a label of
- * compute.googleapis.com/resource_id with the value of the instance's unique
- * ID, although this alone does not guarantee that the metric is valid.
- *
- * For example, the following is a valid metric:
- * compute.googleapis.com/instance/network/received_bytes_count
- *
- *
- * The following is not a valid metric because it does not increase or
- * decrease based on usage:
- * compute.googleapis.com/instance/cpu/reserved_cores
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
*/
- core.String metric;
+ core.String id;
+ /** [Output Only] A list of persistent disks. */
+ core.List<Disk> items;
/**
- * Target value of the metric which autoscaler should maintain. Must be a
- * positive value.
+ * [Output Only] Type of resource. Always compute#diskList for lists of disks.
*/
- core.double utilizationTarget;
+ core.String kind;
/**
- * Defines how target utilization value is expressed for a Cloud Monitoring
- * metric. Either GAUGE, DELTA_PER_SECOND, or DELTA_PER_MINUTE. If not
- * specified, the default is GAUGE.
- * Possible string values are:
- * - "DELTA_PER_MINUTE"
- * - "DELTA_PER_SECOND"
- * - "GAUGE"
+ * [Output Only] This token allows you to get the next page of results for
+ * list requests. If the number of results is larger than maxResults, use the
+ * nextPageToken as a value for the query parameter pageToken in the next list
+ * request. Subsequent list requests will have their own nextPageToken to
+ * continue paging through the results.
*/
- core.String utilizationTargetType;
+ core.String nextPageToken;
+ /** [Output Only] Server-defined URL for this resource. */
+ core.String selfLink;
- AutoscalingPolicyCustomMetricUtilization();
+ DiskList();
- AutoscalingPolicyCustomMetricUtilization.fromJson(core.Map _json) {
- if (_json.containsKey("metric")) {
- metric = _json["metric"];
+ DiskList.fromJson(core.Map _json) {
+ if (_json.containsKey("id")) {
+ id = _json["id"];
}
- if (_json.containsKey("utilizationTarget")) {
- utilizationTarget = _json["utilizationTarget"];
+ if (_json.containsKey("items")) {
+ items = _json["items"].map((value) => new Disk.fromJson(value)).toList();
}
- if (_json.containsKey("utilizationTargetType")) {
- utilizationTargetType = _json["utilizationTargetType"];
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("nextPageToken")) {
+ nextPageToken = _json["nextPageToken"];
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (metric != null) {
- _json["metric"] = metric;
+ if (id != null) {
+ _json["id"] = id;
}
- if (utilizationTarget != null) {
- _json["utilizationTarget"] = utilizationTarget;
+ if (items != null) {
+ _json["items"] = items.map((value) => (value).toJson()).toList();
}
- if (utilizationTargetType != null) {
- _json["utilizationTargetType"] = utilizationTargetType;
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (nextPageToken != null) {
+ _json["nextPageToken"] = nextPageToken;
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
}
return _json;
}
}
-/** Configuration parameters of autoscaling based on load balancing. */
-class AutoscalingPolicyLoadBalancingUtilization {
+class DiskMoveRequest {
/**
- * Fraction of backend capacity utilization (set in HTTP(s) load balancing
- * configuration) that autoscaler should maintain. Must be a positive float
- * value. If not defined, the default is 0.8.
+ * The URL of the destination zone to move the disk. This can be a full or
+ * partial URL. For example, the following are all valid URLs to a zone:
+ * - https://www.googleapis.com/compute/v1/projects/project/zones/zone
+ * - projects/project/zones/zone
+ * - zones/zone
*/
- core.double utilizationTarget;
+ core.String destinationZone;
+ /**
+ * The URL of the target disk to move. This can be a full or partial URL. For
+ * example, the following are all valid URLs to a disk:
+ * -
+ * https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk
+ * - projects/project/zones/zone/disks/disk
+ * - zones/zone/disks/disk
+ */
+ core.String targetDisk;
- AutoscalingPolicyLoadBalancingUtilization();
+ DiskMoveRequest();
- AutoscalingPolicyLoadBalancingUtilization.fromJson(core.Map _json) {
- if (_json.containsKey("utilizationTarget")) {
- utilizationTarget = _json["utilizationTarget"];
+ DiskMoveRequest.fromJson(core.Map _json) {
+ if (_json.containsKey("destinationZone")) {
+ destinationZone = _json["destinationZone"];
+ }
+ if (_json.containsKey("targetDisk")) {
+ targetDisk = _json["targetDisk"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (utilizationTarget != null) {
- _json["utilizationTarget"] = utilizationTarget;
+ if (destinationZone != null) {
+ _json["destinationZone"] = destinationZone;
+ }
+ if (targetDisk != null) {
+ _json["targetDisk"] = targetDisk;
}
return _json;
}
}
-/** Message containing information of one individual backend. */
-class Backend {
- /**
- * Specifies the balancing mode for this backend. For global HTTP(S) load
- * balancing, the default is UTILIZATION. Valid values are UTILIZATION and
- * RATE.
- * Possible string values are:
- * - "RATE"
- * - "UTILIZATION"
- */
- core.String balancingMode;
- /**
- * A multiplier applied to the group's maximum servicing capacity (either
- * UTILIZATION or RATE). Default value is 1, which means the group will serve
- * up to 100% of its configured CPU or RPS (depending on balancingMode). A
- * setting of 0 means the group is completely drained, offering 0% of its
- * available CPU or RPS. Valid range is [0.0,1.0].
- */
- core.double capacityScaler;
- /**
- * An optional description of this resource. Provide this property when you
- * create the resource.
- */
- core.String description;
- /**
- * The fully-qualified URL of a zonal Instance Group resource. This instance
- * group defines the list of instances that serve traffic. Member virtual
- * machine instances from each instance group must live in the same zone as
- * the instance group itself. No two backends in a backend service are allowed
- * to use same Instance Group resource.
- *
- * Note that you must specify an Instance Group resource using the
- * fully-qualified URL, rather than a partial URL.
- */
- core.String group;
+/** A DiskType resource. */
+class DiskType {
+ /** [Output Only] Creation timestamp in RFC3339 text format. */
+ core.String creationTimestamp;
+ /** [Output Only] Server-defined default disk size in GB. */
+ core.String defaultDiskSizeGb;
+ /** [Output Only] The deprecation status associated with this disk type. */
+ DeprecationStatus deprecated;
+ /** [Output Only] An optional description of this resource. */
+ core.String description;
/**
- * The max requests per second (RPS) of the group. Can be used with either
- * RATE or UTILIZATION balancing modes, but required if RATE mode. For RATE
- * mode, either maxRate or maxRatePerInstance must be set.
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
*/
- core.int maxRate;
+ core.String id;
/**
- * The max requests per second (RPS) that a single backend instance can
- * handle.This is used to calculate the capacity of the group. Can be used in
- * either balancing mode. For RATE mode, either maxRate or maxRatePerInstance
- * must be set.
+ * [Output Only] Type of the resource. Always compute#diskType for disk types.
*/
- core.double maxRatePerInstance;
+ core.String kind;
+ /** [Output Only] Name of the resource. */
+ core.String name;
+ /** [Output Only] Server-defined URL for the resource. */
+ core.String selfLink;
/**
- * Used when balancingMode is UTILIZATION. This ratio defines the CPU
- * utilization target for the group. The default is 0.8. Valid range is [0.0,
- * 1.0].
+ * [Output Only] An optional textual description of the valid disk size, such
+ * as "10GB-10TB".
*/
- core.double maxUtilization;
+ core.String validDiskSize;
+ /** [Output Only] URL of the zone where the disk type resides. */
+ core.String zone;
- Backend();
+ DiskType();
- Backend.fromJson(core.Map _json) {
- if (_json.containsKey("balancingMode")) {
- balancingMode = _json["balancingMode"];
+ DiskType.fromJson(core.Map _json) {
+ if (_json.containsKey("creationTimestamp")) {
+ creationTimestamp = _json["creationTimestamp"];
}
- if (_json.containsKey("capacityScaler")) {
- capacityScaler = _json["capacityScaler"];
+ if (_json.containsKey("defaultDiskSizeGb")) {
+ defaultDiskSizeGb = _json["defaultDiskSizeGb"];
+ }
+ if (_json.containsKey("deprecated")) {
+ deprecated = new DeprecationStatus.fromJson(_json["deprecated"]);
}
if (_json.containsKey("description")) {
description = _json["description"];
}
- if (_json.containsKey("group")) {
- group = _json["group"];
+ if (_json.containsKey("id")) {
+ id = _json["id"];
}
- if (_json.containsKey("maxRate")) {
- maxRate = _json["maxRate"];
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
}
- if (_json.containsKey("maxRatePerInstance")) {
- maxRatePerInstance = _json["maxRatePerInstance"];
+ if (_json.containsKey("name")) {
+ name = _json["name"];
}
- if (_json.containsKey("maxUtilization")) {
- maxUtilization = _json["maxUtilization"];
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
+ }
+ if (_json.containsKey("validDiskSize")) {
+ validDiskSize = _json["validDiskSize"];
+ }
+ if (_json.containsKey("zone")) {
+ zone = _json["zone"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (balancingMode != null) {
- _json["balancingMode"] = balancingMode;
+ if (creationTimestamp != null) {
+ _json["creationTimestamp"] = creationTimestamp;
}
- if (capacityScaler != null) {
- _json["capacityScaler"] = capacityScaler;
+ if (defaultDiskSizeGb != null) {
+ _json["defaultDiskSizeGb"] = defaultDiskSizeGb;
+ }
+ if (deprecated != null) {
+ _json["deprecated"] = (deprecated).toJson();
}
if (description != null) {
_json["description"] = description;
}
- if (group != null) {
- _json["group"] = group;
+ if (id != null) {
+ _json["id"] = id;
}
- if (maxRate != null) {
- _json["maxRate"] = maxRate;
+ if (kind != null) {
+ _json["kind"] = kind;
}
- if (maxRatePerInstance != null) {
- _json["maxRatePerInstance"] = maxRatePerInstance;
+ if (name != null) {
+ _json["name"] = name;
}
- if (maxUtilization != null) {
- _json["maxUtilization"] = maxUtilization;
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
+ }
+ if (validDiskSize != null) {
+ _json["validDiskSize"] = validDiskSize;
+ }
+ if (zone != null) {
+ _json["zone"] = zone;
}
return _json;
}
}
-/**
- * A BackendService resource. This resource defines a group of backend virtual
- * machines and their serving capacity.
- */
-class BackendService {
- /** The list of backends that serve this BackendService. */
- core.List<Backend> backends;
- /** [Output Only] Creation timestamp in RFC3339 text format. */
- core.String creationTimestamp;
+class DiskTypeAggregatedList {
/**
- * An optional description of this resource. Provide this property when you
- * create the resource.
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
*/
- core.String description;
+ core.String id;
+ /** [Output Only] A map of scoped disk type lists. */
+ core.Map<core.String, DiskTypesScopedList> items;
+ /** [Output Only] Type of resource. Always compute#diskTypeAggregatedList. */
+ core.String kind;
/**
- * Fingerprint of this resource. A hash of the contents stored in this object.
- * This field is used in optimistic locking. This field will be ignored when
- * inserting a BackendService. An up-to-date fingerprint must be provided in
- * order to update the BackendService.
+ * [Output Only] This token allows you to get the next page of results for
+ * list requests. If the number of results is larger than maxResults, use the
+ * nextPageToken as a value for the query parameter pageToken in the next list
+ * request. Subsequent list requests will have their own nextPageToken to
+ * continue paging through the results.
*/
- core.String fingerprint;
- core.List<core.int> get fingerprintAsBytes {
- return crypto.CryptoUtils.base64StringToBytes(fingerprint);
+ core.String nextPageToken;
+ /** [Output Only] Server-defined URL for this resource. */
+ core.String selfLink;
+
+ DiskTypeAggregatedList();
+
+ DiskTypeAggregatedList.fromJson(core.Map _json) {
+ if (_json.containsKey("id")) {
+ id = _json["id"];
+ }
+ if (_json.containsKey("items")) {
+ items = commons.mapMap(_json["items"], (item) => new DiskTypesScopedList.fromJson(item));
+ }
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("nextPageToken")) {
+ nextPageToken = _json["nextPageToken"];
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
+ }
}
- void set fingerprintAsBytes(core.List<core.int> _bytes) {
- fingerprint = crypto.CryptoUtils.bytesToBase64(_bytes, urlSafe: true);
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (id != null) {
+ _json["id"] = id;
+ }
+ if (items != null) {
+ _json["items"] = commons.mapMap(items, (item) => (item).toJson());
+ }
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (nextPageToken != null) {
+ _json["nextPageToken"] = nextPageToken;
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
+ }
+ return _json;
}
- /**
- * The list of URLs to the HttpHealthCheck or HttpsHealthCheck resource for
- * health checking this BackendService. Currently at most one health check can
- * be specified, and a health check is required.
- */
- core.List<core.String> healthChecks;
+}
+
+/** Contains a list of disk types. */
+class DiskTypeList {
/**
* [Output Only] The unique identifier for the resource. This identifier is
* defined by the server.
*/
core.String id;
+ /** [Output Only] A list of Disk Type resources. */
+ core.List<DiskType> items;
/**
- * [Output Only] Type of resource. Always compute#backendService for backend
- * services.
+ * [Output Only] Type of resource. Always compute#diskTypeList for disk types.
*/
core.String kind;
/**
- * Name of the resource. Provided by the client when the resource is created.
- * The name must be 1-63 characters long, and comply with RFC1035.
- * Specifically, the name must be 1-63 characters long and match the regular
- * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
- * be a lowercase letter, and all following characters must be a dash,
- * lowercase letter, or digit, except the last character, which cannot be a
- * dash.
- */
- core.String name;
- /**
- * Deprecated in favor of portName. The TCP port to connect on the backend.
- * The default value is 80.
- */
- core.int port;
- /**
- * Name of backend port. The same name should appear in the instance groups
- * referenced by this service. Required.
- */
- core.String portName;
- /**
- * The protocol this BackendService uses to communicate with backends.
- *
- * Possible values are HTTP, HTTPS, HTTP2, TCP and SSL.
- * Possible string values are:
- * - "HTTP"
- * - "HTTPS"
- */
- core.String protocol;
- /**
- * [Output Only] URL of the region where the regional backend service resides.
- * This field is not applicable to global backend services.
+ * [Output Only] This token allows you to get the next page of results for
+ * list requests. If the number of results is larger than maxResults, use the
+ * nextPageToken as a value for the query parameter pageToken in the next list
+ * request. Subsequent list requests will have their own nextPageToken to
+ * continue paging through the results.
*/
- core.String region;
- /** [Output Only] Server-defined URL for the resource. */
+ core.String nextPageToken;
+ /** [Output Only] Server-defined URL for this resource. */
core.String selfLink;
- /**
- * How many seconds to wait for the backend before considering it a failed
- * request. Default is 30 seconds.
- */
- core.int timeoutSec;
- BackendService();
+ DiskTypeList();
- BackendService.fromJson(core.Map _json) {
- if (_json.containsKey("backends")) {
- backends = _json["backends"].map((value) => new Backend.fromJson(value)).toList();
+ DiskTypeList.fromJson(core.Map _json) {
+ if (_json.containsKey("id")) {
+ id = _json["id"];
}
- if (_json.containsKey("creationTimestamp")) {
- creationTimestamp = _json["creationTimestamp"];
+ if (_json.containsKey("items")) {
+ items = _json["items"].map((value) => new DiskType.fromJson(value)).toList();
}
- if (_json.containsKey("description")) {
- description = _json["description"];
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("nextPageToken")) {
+ nextPageToken = _json["nextPageToken"];
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (id != null) {
+ _json["id"] = id;
}
- if (_json.containsKey("fingerprint")) {
- fingerprint = _json["fingerprint"];
+ if (items != null) {
+ _json["items"] = items.map((value) => (value).toJson()).toList();
}
- if (_json.containsKey("healthChecks")) {
- healthChecks = _json["healthChecks"];
+ if (kind != null) {
+ _json["kind"] = kind;
}
- if (_json.containsKey("id")) {
- id = _json["id"];
+ if (nextPageToken != null) {
+ _json["nextPageToken"] = nextPageToken;
}
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
}
- if (_json.containsKey("name")) {
- name = _json["name"];
+ return _json;
+ }
+}
+
+class DiskTypesScopedListWarningData {
+ /**
+ * [Output Only] A key that provides more detail on the warning being
+ * returned. For example, for warnings where there are no results in a list
+ * request for a particular zone, this key might be scope and the key value
+ * might be the zone name. Other examples might be a key indicating a
+ * deprecated resource and a suggested replacement, or a warning about invalid
+ * network settings (for example, if an instance attempts to perform IP
+ * forwarding but is not enabled for IP forwarding).
+ */
+ core.String key;
+ /** [Output Only] A warning data value corresponding to the key. */
+ core.String value;
+
+ DiskTypesScopedListWarningData();
+
+ DiskTypesScopedListWarningData.fromJson(core.Map _json) {
+ if (_json.containsKey("key")) {
+ key = _json["key"];
}
- if (_json.containsKey("port")) {
- port = _json["port"];
+ if (_json.containsKey("value")) {
+ value = _json["value"];
}
- if (_json.containsKey("portName")) {
- portName = _json["portName"];
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (key != null) {
+ _json["key"] = key;
}
- if (_json.containsKey("protocol")) {
- protocol = _json["protocol"];
+ if (value != null) {
+ _json["value"] = value;
}
- if (_json.containsKey("region")) {
- region = _json["region"];
+ return _json;
+ }
+}
+
+/**
+ * [Output Only] Informational warning which replaces the list of disk types
+ * when the list is empty.
+ */
+class DiskTypesScopedListWarning {
+ /**
+ * [Output Only] A warning code, if applicable. For example, Compute Engine
+ * returns NO_RESULTS_ON_PAGE if there are no results in the response.
+ * Possible string values are:
+ * - "CLEANUP_FAILED"
+ * - "DEPRECATED_RESOURCE_USED"
+ * - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
+ * - "INJECTED_KERNELS_DEPRECATED"
+ * - "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
+ * - "NEXT_HOP_CANNOT_IP_FORWARD"
+ * - "NEXT_HOP_INSTANCE_NOT_FOUND"
+ * - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
+ * - "NEXT_HOP_NOT_RUNNING"
+ * - "NOT_CRITICAL_ERROR"
+ * - "NO_RESULTS_ON_PAGE"
+ * - "REQUIRED_TOS_AGREEMENT"
+ * - "RESOURCE_NOT_DELETED"
+ * - "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
+ * - "UNREACHABLE"
+ */
+ core.String code;
+ /**
+ * [Output Only] Metadata about this warning in key: value format. For
+ * example:
+ * "data": [ { "key": "scope", "value": "zones/us-east1-d" }
+ */
+ core.List<DiskTypesScopedListWarningData> data;
+ /** [Output Only] A human-readable description of the warning code. */
+ core.String message;
+
+ DiskTypesScopedListWarning();
+
+ DiskTypesScopedListWarning.fromJson(core.Map _json) {
+ if (_json.containsKey("code")) {
+ code = _json["code"];
}
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
+ if (_json.containsKey("data")) {
+ data = _json["data"].map((value) => new DiskTypesScopedListWarningData.fromJson(value)).toList();
}
- if (_json.containsKey("timeoutSec")) {
- timeoutSec = _json["timeoutSec"];
+ if (_json.containsKey("message")) {
+ message = _json["message"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (backends != null) {
- _json["backends"] = backends.map((value) => (value).toJson()).toList();
- }
- if (creationTimestamp != null) {
- _json["creationTimestamp"] = creationTimestamp;
+ if (code != null) {
+ _json["code"] = code;
}
- if (description != null) {
- _json["description"] = description;
+ if (data != null) {
+ _json["data"] = data.map((value) => (value).toJson()).toList();
}
- if (fingerprint != null) {
- _json["fingerprint"] = fingerprint;
+ if (message != null) {
+ _json["message"] = message;
}
- if (healthChecks != null) {
- _json["healthChecks"] = healthChecks;
+ return _json;
+ }
+}
+
+class DiskTypesScopedList {
+ /** [Output Only] List of disk types contained in this scope. */
+ core.List<DiskType> diskTypes;
+ /**
+ * [Output Only] Informational warning which replaces the list of disk types
+ * when the list is empty.
+ */
+ DiskTypesScopedListWarning warning;
+
+ DiskTypesScopedList();
+
+ DiskTypesScopedList.fromJson(core.Map _json) {
+ if (_json.containsKey("diskTypes")) {
+ diskTypes = _json["diskTypes"].map((value) => new DiskType.fromJson(value)).toList();
}
- if (id != null) {
- _json["id"] = id;
+ if (_json.containsKey("warning")) {
+ warning = new DiskTypesScopedListWarning.fromJson(_json["warning"]);
}
- if (kind != null) {
- _json["kind"] = kind;
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (diskTypes != null) {
+ _json["diskTypes"] = diskTypes.map((value) => (value).toJson()).toList();
}
- if (name != null) {
- _json["name"] = name;
+ if (warning != null) {
+ _json["warning"] = (warning).toJson();
}
- if (port != null) {
- _json["port"] = port;
+ return _json;
+ }
+}
+
+class DisksResizeRequest {
+ /** The new size of the persistent disk, which is specified in GB. */
+ core.String sizeGb;
+
+ DisksResizeRequest();
+
+ DisksResizeRequest.fromJson(core.Map _json) {
+ if (_json.containsKey("sizeGb")) {
+ sizeGb = _json["sizeGb"];
}
- if (portName != null) {
- _json["portName"] = portName;
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (sizeGb != null) {
+ _json["sizeGb"] = sizeGb;
}
- if (protocol != null) {
- _json["protocol"] = protocol;
+ return _json;
+ }
+}
+
+class DisksScopedListWarningData {
+ /**
+ * [Output Only] A key that provides more detail on the warning being
+ * returned. For example, for warnings where there are no results in a list
+ * request for a particular zone, this key might be scope and the key value
+ * might be the zone name. Other examples might be a key indicating a
+ * deprecated resource and a suggested replacement, or a warning about invalid
+ * network settings (for example, if an instance attempts to perform IP
+ * forwarding but is not enabled for IP forwarding).
+ */
+ core.String key;
+ /** [Output Only] A warning data value corresponding to the key. */
+ core.String value;
+
+ DisksScopedListWarningData();
+
+ DisksScopedListWarningData.fromJson(core.Map _json) {
+ if (_json.containsKey("key")) {
+ key = _json["key"];
}
- if (region != null) {
- _json["region"] = region;
+ if (_json.containsKey("value")) {
+ value = _json["value"];
}
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (key != null) {
+ _json["key"] = key;
}
- if (timeoutSec != null) {
- _json["timeoutSec"] = timeoutSec;
+ if (value != null) {
+ _json["value"] = value;
}
return _json;
}
}
-class BackendServiceGroupHealth {
- core.List<HealthStatus> healthStatus;
+/**
+ * [Output Only] Informational warning which replaces the list of disks when the
+ * list is empty.
+ */
+class DisksScopedListWarning {
+ /**
+ * [Output Only] A warning code, if applicable. For example, Compute Engine
+ * returns NO_RESULTS_ON_PAGE if there are no results in the response.
+ * Possible string values are:
+ * - "CLEANUP_FAILED"
+ * - "DEPRECATED_RESOURCE_USED"
+ * - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
+ * - "INJECTED_KERNELS_DEPRECATED"
+ * - "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
+ * - "NEXT_HOP_CANNOT_IP_FORWARD"
+ * - "NEXT_HOP_INSTANCE_NOT_FOUND"
+ * - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
+ * - "NEXT_HOP_NOT_RUNNING"
+ * - "NOT_CRITICAL_ERROR"
+ * - "NO_RESULTS_ON_PAGE"
+ * - "REQUIRED_TOS_AGREEMENT"
+ * - "RESOURCE_NOT_DELETED"
+ * - "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
+ * - "UNREACHABLE"
+ */
+ core.String code;
/**
- * [Output Only] Type of resource. Always compute#backendServiceGroupHealth
- * for the health of backend services.
+ * [Output Only] Metadata about this warning in key: value format. For
+ * example:
+ * "data": [ { "key": "scope", "value": "zones/us-east1-d" }
*/
- core.String kind;
+ core.List<DisksScopedListWarningData> data;
+ /** [Output Only] A human-readable description of the warning code. */
+ core.String message;
- BackendServiceGroupHealth();
+ DisksScopedListWarning();
- BackendServiceGroupHealth.fromJson(core.Map _json) {
- if (_json.containsKey("healthStatus")) {
- healthStatus = _json["healthStatus"].map((value) => new HealthStatus.fromJson(value)).toList();
+ DisksScopedListWarning.fromJson(core.Map _json) {
+ if (_json.containsKey("code")) {
+ code = _json["code"];
}
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
+ if (_json.containsKey("data")) {
+ data = _json["data"].map((value) => new DisksScopedListWarningData.fromJson(value)).toList();
+ }
+ if (_json.containsKey("message")) {
+ message = _json["message"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (healthStatus != null) {
- _json["healthStatus"] = healthStatus.map((value) => (value).toJson()).toList();
+ if (code != null) {
+ _json["code"] = code;
}
- if (kind != null) {
- _json["kind"] = kind;
+ if (data != null) {
+ _json["data"] = data.map((value) => (value).toJson()).toList();
+ }
+ if (message != null) {
+ _json["message"] = message;
}
return _json;
}
}
-/** Contains a list of BackendService resources. */
-class BackendServiceList {
- /**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
- */
- core.String id;
- /** A list of BackendService resources. */
- core.List<BackendService> items;
- /**
- * [Output Only] Type of resource. Always compute#backendServiceList for lists
- * of backend services.
- */
- core.String kind;
+class DisksScopedList {
+ /** [Output Only] List of disks contained in this scope. */
+ core.List<Disk> disks;
/**
- * [Output Only] This token allows you to get the next page of results for
- * list requests. If the number of results is larger than maxResults, use the
- * nextPageToken as a value for the query parameter pageToken in the next list
- * request. Subsequent list requests will have their own nextPageToken to
- * continue paging through the results.
+ * [Output Only] Informational warning which replaces the list of disks when
+ * the list is empty.
*/
- core.String nextPageToken;
- /** [Output Only] Server-defined URL for this resource. */
- core.String selfLink;
+ DisksScopedListWarning warning;
- BackendServiceList();
+ DisksScopedList();
- BackendServiceList.fromJson(core.Map _json) {
- if (_json.containsKey("id")) {
- id = _json["id"];
- }
- if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new BackendService.fromJson(value)).toList();
- }
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
- }
- if (_json.containsKey("nextPageToken")) {
- nextPageToken = _json["nextPageToken"];
+ DisksScopedList.fromJson(core.Map _json) {
+ if (_json.containsKey("disks")) {
+ disks = _json["disks"].map((value) => new Disk.fromJson(value)).toList();
}
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
+ if (_json.containsKey("warning")) {
+ warning = new DisksScopedListWarning.fromJson(_json["warning"]);
}
}
core.Map toJson() {
var _json = new core.Map();
- if (id != null) {
- _json["id"] = id;
- }
- if (items != null) {
- _json["items"] = items.map((value) => (value).toJson()).toList();
- }
- if (kind != null) {
- _json["kind"] = kind;
- }
- if (nextPageToken != null) {
- _json["nextPageToken"] = nextPageToken;
+ if (disks != null) {
+ _json["disks"] = disks.map((value) => (value).toJson()).toList();
}
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
+ if (warning != null) {
+ _json["warning"] = (warning).toJson();
}
return _json;
}
}
-/** Deprecation status for a public resource. */
-class DeprecationStatus {
- /**
- * An optional RFC3339 timestamp on or after which the deprecation state of
- * this resource will be changed to DELETED.
- */
- core.String deleted;
- /**
- * An optional RFC3339 timestamp on or after which the deprecation state of
- * this resource will be changed to DEPRECATED.
- */
- core.String deprecated;
- /**
- * An optional RFC3339 timestamp on or after which the deprecation state of
- * this resource will be changed to OBSOLETE.
- */
- core.String obsolete;
+class FirewallAllowed {
/**
- * The URL of the suggested replacement for a deprecated resource. The
- * suggested replacement resource must be the same kind of resource as the
- * deprecated resource.
+ * The IP protocol that is allowed for this rule. The protocol type is
+ * required when creating a firewall rule. This value can either be one of the
+ * following well known protocol strings (tcp, udp, icmp, esp, ah, sctp), or
+ * the IP protocol number.
*/
- core.String replacement;
+ core.String IPProtocol;
/**
- * The deprecation state of this resource. This can be DEPRECATED, OBSOLETE,
- * or DELETED. Operations which create a new resource using a DEPRECATED
- * resource will return successfully, but with a warning indicating the
- * deprecated resource and recommending its replacement. Operations which use
- * OBSOLETE or DELETED resources will be rejected and result in an error.
- * Possible string values are:
- * - "DELETED"
- * - "DEPRECATED"
- * - "OBSOLETE"
+ * An optional list of ports which are allowed. This field is only applicable
+ * for UDP or TCP protocol. Each entry must be either an integer or a range.
+ * If not specified, connections through any port are allowed
+ *
+ * Example inputs include: ["22"], ["80","443"], and ["12345-12349"].
*/
- core.String state;
+ core.List<core.String> ports;
- DeprecationStatus();
+ FirewallAllowed();
- DeprecationStatus.fromJson(core.Map _json) {
- if (_json.containsKey("deleted")) {
- deleted = _json["deleted"];
- }
- if (_json.containsKey("deprecated")) {
- deprecated = _json["deprecated"];
- }
- if (_json.containsKey("obsolete")) {
- obsolete = _json["obsolete"];
- }
- if (_json.containsKey("replacement")) {
- replacement = _json["replacement"];
+ FirewallAllowed.fromJson(core.Map _json) {
+ if (_json.containsKey("IPProtocol")) {
+ IPProtocol = _json["IPProtocol"];
}
- if (_json.containsKey("state")) {
- state = _json["state"];
+ if (_json.containsKey("ports")) {
+ ports = _json["ports"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (deleted != null) {
- _json["deleted"] = deleted;
- }
- if (deprecated != null) {
- _json["deprecated"] = deprecated;
- }
- if (obsolete != null) {
- _json["obsolete"] = obsolete;
- }
- if (replacement != null) {
- _json["replacement"] = replacement;
+ if (IPProtocol != null) {
+ _json["IPProtocol"] = IPProtocol;
}
- if (state != null) {
- _json["state"] = state;
+ if (ports != null) {
+ _json["ports"] = ports;
}
return _json;
}
}
-/** A Disk resource. */
-class Disk {
+/** Represents a Firewall resource. */
+class Firewall {
+ /**
+ * The list of rules specified by this firewall. Each rule specifies a
+ * protocol and port-range tuple that describes a permitted connection.
+ */
+ core.List<FirewallAllowed> allowed;
/** [Output Only] Creation timestamp in RFC3339 text format. */
core.String creationTimestamp;
/**
@@ -14431,116 +16142,72 @@ class Disk {
* defined by the server.
*/
core.String id;
- /** [Output Only] Type of the resource. Always compute#disk for disks. */
- core.String kind;
- /** [Output Only] Last attach timestamp in RFC3339 text format. */
- core.String lastAttachTimestamp;
- /** [Output Only] Last detach timestamp in RFC3339 text format. */
- core.String lastDetachTimestamp;
- /** [Output Only] Any applicable publicly visible licenses. */
- core.List<core.String> licenses;
- /**
- * Name of the resource. Provided by the client when the resource is created.
- * The name must be 1-63 characters long, and comply with RFC1035.
- * Specifically, the name must be 1-63 characters long and match the regular
- * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
- * be a lowercase letter, and all following characters must be a dash,
- * lowercase letter, or digit, except the last character, which cannot be a
- * dash.
- */
- core.String name;
- /** Internal use only. */
- core.String options;
- /** [Output Only] Server-defined fully-qualified URL for this resource. */
- core.String selfLink;
- /**
- * Size of the persistent disk, specified in GB. You can specify this field
- * when creating a persistent disk using the sourceImage or sourceSnapshot
- * parameter, or specify it alone to create an empty persistent disk.
- *
- * If you specify this field along with sourceImage or sourceSnapshot, the
- * value of sizeGb must not be less than the size of the sourceImage or the
- * size of the snapshot.
- */
- core.String sizeGb;
- /**
- * The source image used to create this disk. If the source image is deleted,
- * this field will not be set.
- *
- * To create a disk with one of the public operating system images, specify
- * the image by its family name. For example, specify family/debian-8 to use
- * the latest Debian 8 image:
- *
- * projects/debian-cloud/global/images/family/debian-8
- *
- * Alternatively, use a specific version of a public operating system image:
- *
- * projects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD
- *
- * To create a disk with a private image that you created, specify the image
- * name in the following format:
- *
- * global/images/my-private-image
- *
- * You can also specify a private image by its image family, which returns the
- * latest version of the image in that family. Replace the image name with
- * family/family-name:
- *
- * global/images/family/my-private-family
- */
- core.String sourceImage;
/**
- * [Output Only] The ID value of the image used to create this disk. This
- * value identifies the exact image that was used to create this persistent
- * disk. For example, if you created the persistent disk from an image that
- * was later deleted and recreated under the same name, the source image ID
- * would identify the exact version of the image that was used.
+ * [Output Ony] Type of the resource. Always compute#firewall for firewall
+ * rules.
*/
- core.String sourceImageId;
+ core.String kind;
/**
- * The source snapshot used to create this disk. You can provide this as a
- * partial or full URL to the resource. For example, the following are valid
- * values:
- * -
- * https://www.googleapis.com/compute/v1/projects/project/global/snapshots/snapshot
- * - projects/project/global/snapshots/snapshot
- * - global/snapshots/snapshot
+ * Name of the resource; provided by the client when the resource is created.
+ * The name must be 1-63 characters long, and comply with RFC1035.
+ * Specifically, the name must be 1-63 characters long and match the regular
+ * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
+ * be a lowercase letter, and all following characters must be a dash,
+ * lowercase letter, or digit, except the last character, which cannot be a
+ * dash.
*/
- core.String sourceSnapshot;
+ core.String name;
/**
- * [Output Only] The unique ID of the snapshot used to create this disk. This
- * value identifies the exact snapshot that was used to create this persistent
- * disk. For example, if you created the persistent disk from a snapshot that
- * was later deleted and recreated under the same name, the source snapshot ID
- * would identify the exact version of the snapshot that was used.
+ * URL of the network resource for this firewall rule. If not specified when
+ * creating a firewall rule, the default network is used:
+ * global/networks/default
+ * If you choose to specify this property, you can specify the network as a
+ * full or partial URL. For example, the following are all valid URLs:
+ * -
+ * https://www.googleapis.com/compute/v1/projects/myproject/global/networks/my-network
+ * - projects/myproject/global/networks/my-network
+ * - global/networks/default
*/
- core.String sourceSnapshotId;
+ core.String network;
+ /** [Output Only] Server-defined URL for the resource. */
+ core.String selfLink;
/**
- * [Output Only] The status of disk creation. Applicable statuses includes:
- * CREATING, FAILED, READY, RESTORING.
- * Possible string values are:
- * - "CREATING"
- * - "FAILED"
- * - "READY"
- * - "RESTORING"
+ * The IP address blocks that this rule applies to, expressed in CIDR format.
+ * One or both of sourceRanges and sourceTags may be set.
+ *
+ * If both properties are set, an inbound connection is allowed if the range
+ * matches the sourceRanges OR the tag of the source matches the sourceTags
+ * property. The connection does not need to match both properties.
*/
- core.String status;
+ core.List<core.String> sourceRanges;
/**
- * URL of the disk type resource describing which disk type to use to create
- * the disk. Provide this when creating the disk.
+ * A list of instance tags which this rule applies to. One or both of
+ * sourceRanges and sourceTags may be set.
+ *
+ * If both properties are set, an inbound connection is allowed if the range
+ * matches the sourceRanges OR the tag of the source matches the sourceTags
+ * property. The connection does not need to match both properties.
+ *
+ * Source tags cannot be used to allow access to an instance's external IP
+ * address. Because tags are associated with an instance, not an IP address,
+ * source tags can only be used to control traffic traveling from an instance
+ * inside the same network as the firewall.
*/
- core.String type;
+ core.List<core.String> sourceTags;
/**
- * [Output Only] Links to the users of the disk (attached instances) in form:
- * project/zones/zone/instances/instance
+ * A list of instance tags indicating sets of instances located in the network
+ * that may make network connections as specified in allowed[]. If no
+ * targetTags are specified, the firewall rule applies to all instances on the
+ * specified network.
*/
- core.List<core.String> users;
- /** [Output Only] URL of the zone where the disk resides. */
- core.String zone;
+ core.List<core.String> targetTags;
- Disk();
+ Firewall();
- Disk.fromJson(core.Map _json) {
+ Firewall.fromJson(core.Map _json) {
+ if (_json.containsKey("allowed")) {
+ allowed = _json["allowed"].map((value) => new FirewallAllowed.fromJson(value)).toList();
+ }
if (_json.containsKey("creationTimestamp")) {
creationTimestamp = _json["creationTimestamp"];
}
@@ -14553,55 +16220,31 @@ class Disk {
if (_json.containsKey("kind")) {
kind = _json["kind"];
}
- if (_json.containsKey("lastAttachTimestamp")) {
- lastAttachTimestamp = _json["lastAttachTimestamp"];
- }
- if (_json.containsKey("lastDetachTimestamp")) {
- lastDetachTimestamp = _json["lastDetachTimestamp"];
- }
- if (_json.containsKey("licenses")) {
- licenses = _json["licenses"];
- }
if (_json.containsKey("name")) {
name = _json["name"];
}
- if (_json.containsKey("options")) {
- options = _json["options"];
+ if (_json.containsKey("network")) {
+ network = _json["network"];
}
if (_json.containsKey("selfLink")) {
selfLink = _json["selfLink"];
}
- if (_json.containsKey("sizeGb")) {
- sizeGb = _json["sizeGb"];
- }
- if (_json.containsKey("sourceImage")) {
- sourceImage = _json["sourceImage"];
- }
- if (_json.containsKey("sourceImageId")) {
- sourceImageId = _json["sourceImageId"];
- }
- if (_json.containsKey("sourceSnapshot")) {
- sourceSnapshot = _json["sourceSnapshot"];
- }
- if (_json.containsKey("sourceSnapshotId")) {
- sourceSnapshotId = _json["sourceSnapshotId"];
- }
- if (_json.containsKey("status")) {
- status = _json["status"];
- }
- if (_json.containsKey("type")) {
- type = _json["type"];
+ if (_json.containsKey("sourceRanges")) {
+ sourceRanges = _json["sourceRanges"];
}
- if (_json.containsKey("users")) {
- users = _json["users"];
+ if (_json.containsKey("sourceTags")) {
+ sourceTags = _json["sourceTags"];
}
- if (_json.containsKey("zone")) {
- zone = _json["zone"];
+ if (_json.containsKey("targetTags")) {
+ targetTags = _json["targetTags"];
}
}
core.Map toJson() {
var _json = new core.Map();
+ if (allowed != null) {
+ _json["allowed"] = allowed.map((value) => (value).toJson()).toList();
+ }
if (creationTimestamp != null) {
_json["creationTimestamp"] = creationTimestamp;
}
@@ -14614,131 +16257,40 @@ class Disk {
if (kind != null) {
_json["kind"] = kind;
}
- if (lastAttachTimestamp != null) {
- _json["lastAttachTimestamp"] = lastAttachTimestamp;
- }
- if (lastDetachTimestamp != null) {
- _json["lastDetachTimestamp"] = lastDetachTimestamp;
- }
- if (licenses != null) {
- _json["licenses"] = licenses;
- }
if (name != null) {
_json["name"] = name;
}
- if (options != null) {
- _json["options"] = options;
+ if (network != null) {
+ _json["network"] = network;
}
if (selfLink != null) {
_json["selfLink"] = selfLink;
}
- if (sizeGb != null) {
- _json["sizeGb"] = sizeGb;
- }
- if (sourceImage != null) {
- _json["sourceImage"] = sourceImage;
- }
- if (sourceImageId != null) {
- _json["sourceImageId"] = sourceImageId;
- }
- if (sourceSnapshot != null) {
- _json["sourceSnapshot"] = sourceSnapshot;
- }
- if (sourceSnapshotId != null) {
- _json["sourceSnapshotId"] = sourceSnapshotId;
- }
- if (status != null) {
- _json["status"] = status;
- }
- if (type != null) {
- _json["type"] = type;
- }
- if (users != null) {
- _json["users"] = users;
- }
- if (zone != null) {
- _json["zone"] = zone;
- }
- return _json;
- }
-}
-
-class DiskAggregatedList {
- /**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
- */
- core.String id;
- /** [Output Only] A map of scoped disk lists. */
- core.Map<core.String, DisksScopedList> items;
- /**
- * [Output Only] Type of resource. Always compute#diskAggregatedList for
- * aggregated lists of persistent disks.
- */
- core.String kind;
- /**
- * [Output Only] This token allows you to get the next page of results for
- * list requests. If the number of results is larger than maxResults, use the
- * nextPageToken as a value for the query parameter pageToken in the next list
- * request. Subsequent list requests will have their own nextPageToken to
- * continue paging through the results.
- */
- core.String nextPageToken;
- /** [Output Only] Server-defined URL for this resource. */
- core.String selfLink;
-
- DiskAggregatedList();
-
- DiskAggregatedList.fromJson(core.Map _json) {
- if (_json.containsKey("id")) {
- id = _json["id"];
- }
- if (_json.containsKey("items")) {
- items = commons.mapMap(_json["items"], (item) => new DisksScopedList.fromJson(item));
- }
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
- }
- if (_json.containsKey("nextPageToken")) {
- nextPageToken = _json["nextPageToken"];
- }
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
- }
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (id != null) {
- _json["id"] = id;
- }
- if (items != null) {
- _json["items"] = commons.mapMap(items, (item) => (item).toJson());
- }
- if (kind != null) {
- _json["kind"] = kind;
+ if (sourceRanges != null) {
+ _json["sourceRanges"] = sourceRanges;
}
- if (nextPageToken != null) {
- _json["nextPageToken"] = nextPageToken;
+ if (sourceTags != null) {
+ _json["sourceTags"] = sourceTags;
}
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
+ if (targetTags != null) {
+ _json["targetTags"] = targetTags;
}
return _json;
}
}
-/** A list of Disk resources. */
-class DiskList {
+/** Contains a list of firewalls. */
+class FirewallList {
/**
* [Output Only] The unique identifier for the resource. This identifier is
* defined by the server.
*/
core.String id;
- /** [Output Only] A list of persistent disks. */
- core.List<Disk> items;
+ /** [Output Only] A list of Firewall resources. */
+ core.List<Firewall> items;
/**
- * [Output Only] Type of resource. Always compute#diskList for lists of disks.
+ * [Output Only] Type of resource. Always compute#firewallList for lists of
+ * firewalls.
*/
core.String kind;
/**
@@ -14752,14 +16304,14 @@ class DiskList {
/** [Output Only] Server-defined URL for this resource. */
core.String selfLink;
- DiskList();
+ FirewallList();
- DiskList.fromJson(core.Map _json) {
+ FirewallList.fromJson(core.Map _json) {
if (_json.containsKey("id")) {
id = _json["id"];
}
if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new Disk.fromJson(value)).toList();
+ items = _json["items"].map((value) => new Firewall.fromJson(value)).toList();
}
if (_json.containsKey("kind")) {
kind = _json["kind"];
@@ -14793,57 +16345,37 @@ class DiskList {
}
}
-class DiskMoveRequest {
+/**
+ * A ForwardingRule resource. A ForwardingRule resource specifies which pool of
+ * target virtual machines to forward a packet to if it matches the given
+ * [IPAddress, IPProtocol, portRange] tuple.
+ */
+class ForwardingRule {
/**
- * The URL of the destination zone to move the disk. This can be a full or
- * partial URL. For example, the following are all valid URLs to a zone:
- * - https://www.googleapis.com/compute/v1/projects/project/zones/zone
- * - projects/project/zones/zone
- * - zones/zone
+ * Value of the reserved IP address that this forwarding rule is serving on
+ * behalf of. For global forwarding rules, the address must be a global IP;
+ * for regional forwarding rules, the address must live in the same region as
+ * the forwarding rule. If left empty (default value), an ephemeral IP from
+ * the same scope (global or regional) will be assigned.
*/
- core.String destinationZone;
+ core.String IPAddress;
/**
- * The URL of the target disk to move. This can be a full or partial URL. For
- * example, the following are all valid URLs to a disk:
- * -
- * https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk
- * - projects/project/zones/zone/disks/disk
- * - zones/zone/disks/disk
+ * The IP protocol to which this rule applies. Valid options are TCP, UDP,
+ * ESP, AH, SCTP or ICMP.
+ * Possible string values are:
+ * - "AH"
+ * - "ESP"
+ * - "SCTP"
+ * - "TCP"
+ * - "UDP"
*/
- core.String targetDisk;
-
- DiskMoveRequest();
-
- DiskMoveRequest.fromJson(core.Map _json) {
- if (_json.containsKey("destinationZone")) {
- destinationZone = _json["destinationZone"];
- }
- if (_json.containsKey("targetDisk")) {
- targetDisk = _json["targetDisk"];
- }
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (destinationZone != null) {
- _json["destinationZone"] = destinationZone;
- }
- if (targetDisk != null) {
- _json["targetDisk"] = targetDisk;
- }
- return _json;
- }
-}
-
-/** A DiskType resource. */
-class DiskType {
+ core.String IPProtocol;
/** [Output Only] Creation timestamp in RFC3339 text format. */
core.String creationTimestamp;
- /** [Output Only] Server-defined default disk size in GB. */
- core.String defaultDiskSizeGb;
- /** [Output Only] The deprecation status associated with this disk type. */
- DeprecationStatus deprecated;
- /** [Output Only] An optional description of this resource. */
+ /**
+ * An optional description of this resource. Provide this property when you
+ * create the resource.
+ */
core.String description;
/**
* [Output Only] The unique identifier for the resource. This identifier is
@@ -14851,32 +16383,55 @@ class DiskType {
*/
core.String id;
/**
- * [Output Only] Type of the resource. Always compute#diskType for disk types.
+ * [Output Only] Type of the resource. Always compute#forwardingRule for
+ * Forwarding Rule resources.
*/
core.String kind;
- /** [Output Only] Name of the resource. */
+ /**
+ * Name of the resource; provided by the client when the resource is created.
+ * The name must be 1-63 characters long, and comply with RFC1035.
+ * Specifically, the name must be 1-63 characters long and match the regular
+ * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
+ * be a lowercase letter, and all following characters must be a dash,
+ * lowercase letter, or digit, except the last character, which cannot be a
+ * dash.
+ */
core.String name;
+ /**
+ * Applicable only when IPProtocol is TCP, UDP, or SCTP, only packets
+ * addressed to ports in the specified range will be forwarded to target.
+ * Forwarding rules with the same [IPAddress, IPProtocol] pair must have
+ * disjoint port ranges.
+ */
+ core.String portRange;
+ /**
+ * [Output Only] URL of the region where the regional forwarding rule resides.
+ * This field is not applicable to global forwarding rules.
+ */
+ core.String region;
/** [Output Only] Server-defined URL for the resource. */
core.String selfLink;
/**
- * [Output Only] An optional textual description of the valid disk size, such
- * as "10GB-10TB".
+ * The URL of the target resource to receive the matched traffic. For regional
+ * forwarding rules, this target must live in the same region as the
+ * forwarding rule. For global forwarding rules, this target must be a global
+ * TargetHttpProxy or TargetHttpsProxy resource. The forwarded traffic must be
+ * of a type appropriate to the target object. For example, TargetHttpProxy
+ * requires HTTP traffic, and TargetHttpsProxy requires HTTPS traffic.
*/
- core.String validDiskSize;
- /** [Output Only] URL of the zone where the disk type resides. */
- core.String zone;
+ core.String target;
- DiskType();
+ ForwardingRule();
- DiskType.fromJson(core.Map _json) {
- if (_json.containsKey("creationTimestamp")) {
- creationTimestamp = _json["creationTimestamp"];
+ ForwardingRule.fromJson(core.Map _json) {
+ if (_json.containsKey("IPAddress")) {
+ IPAddress = _json["IPAddress"];
}
- if (_json.containsKey("defaultDiskSizeGb")) {
- defaultDiskSizeGb = _json["defaultDiskSizeGb"];
+ if (_json.containsKey("IPProtocol")) {
+ IPProtocol = _json["IPProtocol"];
}
- if (_json.containsKey("deprecated")) {
- deprecated = new DeprecationStatus.fromJson(_json["deprecated"]);
+ if (_json.containsKey("creationTimestamp")) {
+ creationTimestamp = _json["creationTimestamp"];
}
if (_json.containsKey("description")) {
description = _json["description"];
@@ -14890,27 +16445,30 @@ class DiskType {
if (_json.containsKey("name")) {
name = _json["name"];
}
+ if (_json.containsKey("portRange")) {
+ portRange = _json["portRange"];
+ }
+ if (_json.containsKey("region")) {
+ region = _json["region"];
+ }
if (_json.containsKey("selfLink")) {
selfLink = _json["selfLink"];
}
- if (_json.containsKey("validDiskSize")) {
- validDiskSize = _json["validDiskSize"];
- }
- if (_json.containsKey("zone")) {
- zone = _json["zone"];
+ if (_json.containsKey("target")) {
+ target = _json["target"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (creationTimestamp != null) {
- _json["creationTimestamp"] = creationTimestamp;
+ if (IPAddress != null) {
+ _json["IPAddress"] = IPAddress;
}
- if (defaultDiskSizeGb != null) {
- _json["defaultDiskSizeGb"] = defaultDiskSizeGb;
+ if (IPProtocol != null) {
+ _json["IPProtocol"] = IPProtocol;
}
- if (deprecated != null) {
- _json["deprecated"] = (deprecated).toJson();
+ if (creationTimestamp != null) {
+ _json["creationTimestamp"] = creationTimestamp;
}
if (description != null) {
_json["description"] = description;
@@ -14924,28 +16482,34 @@ class DiskType {
if (name != null) {
_json["name"] = name;
}
+ if (portRange != null) {
+ _json["portRange"] = portRange;
+ }
+ if (region != null) {
+ _json["region"] = region;
+ }
if (selfLink != null) {
_json["selfLink"] = selfLink;
}
- if (validDiskSize != null) {
- _json["validDiskSize"] = validDiskSize;
- }
- if (zone != null) {
- _json["zone"] = zone;
+ if (target != null) {
+ _json["target"] = target;
}
return _json;
}
}
-class DiskTypeAggregatedList {
+class ForwardingRuleAggregatedList {
/**
* [Output Only] The unique identifier for the resource. This identifier is
* defined by the server.
*/
core.String id;
- /** [Output Only] A map of scoped disk type lists. */
- core.Map<core.String, DiskTypesScopedList> items;
- /** [Output Only] Type of resource. Always compute#diskTypeAggregatedList. */
+ /** A map of scoped forwarding rule lists. */
+ core.Map<core.String, ForwardingRulesScopedList> items;
+ /**
+ * [Output Only] Type of resource. Always compute#forwardingRuleAggregatedList
+ * for lists of forwarding rules.
+ */
core.String kind;
/**
* [Output Only] This token allows you to get the next page of results for
@@ -14958,14 +16522,14 @@ class DiskTypeAggregatedList {
/** [Output Only] Server-defined URL for this resource. */
core.String selfLink;
- DiskTypeAggregatedList();
+ ForwardingRuleAggregatedList();
- DiskTypeAggregatedList.fromJson(core.Map _json) {
+ ForwardingRuleAggregatedList.fromJson(core.Map _json) {
if (_json.containsKey("id")) {
id = _json["id"];
}
if (_json.containsKey("items")) {
- items = commons.mapMap(_json["items"], (item) => new DiskTypesScopedList.fromJson(item));
+ items = commons.mapMap(_json["items"], (item) => new ForwardingRulesScopedList.fromJson(item));
}
if (_json.containsKey("kind")) {
kind = _json["kind"];
@@ -14999,18 +16563,13 @@ class DiskTypeAggregatedList {
}
}
-/** Contains a list of disk types. */
-class DiskTypeList {
- /**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
- */
+/** Contains a list of ForwardingRule resources. */
+class ForwardingRuleList {
+ /** [Output Only] Unique identifier for the resource. Set by the server. */
core.String id;
- /** [Output Only] A list of Disk Type resources. */
- core.List<DiskType> items;
- /**
- * [Output Only] Type of resource. Always compute#diskTypeList for disk types.
- */
+ /** A list of ForwardingRule resources. */
+ core.List<ForwardingRule> items;
+ /** Type of resource. */
core.String kind;
/**
* [Output Only] This token allows you to get the next page of results for
@@ -15023,14 +16582,14 @@ class DiskTypeList {
/** [Output Only] Server-defined URL for this resource. */
core.String selfLink;
- DiskTypeList();
+ ForwardingRuleList();
- DiskTypeList.fromJson(core.Map _json) {
+ ForwardingRuleList.fromJson(core.Map _json) {
if (_json.containsKey("id")) {
id = _json["id"];
}
if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new DiskType.fromJson(value)).toList();
+ items = _json["items"].map((value) => new ForwardingRule.fromJson(value)).toList();
}
if (_json.containsKey("kind")) {
kind = _json["kind"];
@@ -15064,7 +16623,7 @@ class DiskTypeList {
}
}
-class DiskTypesScopedListWarningData {
+class ForwardingRulesScopedListWarningData {
/**
* [Output Only] A key that provides more detail on the warning being
* returned. For example, for warnings where there are no results in a list
@@ -15078,9 +16637,9 @@ class DiskTypesScopedListWarningData {
/** [Output Only] A warning data value corresponding to the key. */
core.String value;
- DiskTypesScopedListWarningData();
+ ForwardingRulesScopedListWarningData();
- DiskTypesScopedListWarningData.fromJson(core.Map _json) {
+ ForwardingRulesScopedListWarningData.fromJson(core.Map _json) {
if (_json.containsKey("key")) {
key = _json["key"];
}
@@ -15102,10 +16661,10 @@ class DiskTypesScopedListWarningData {
}
/**
- * [Output Only] Informational warning which replaces the list of disk types
- * when the list is empty.
+ * Informational warning which replaces the list of forwarding rules when the
+ * list is empty.
*/
-class DiskTypesScopedListWarning {
+class ForwardingRulesScopedListWarning {
/**
* [Output Only] A warning code, if applicable. For example, Compute Engine
* returns NO_RESULTS_ON_PAGE if there are no results in the response.
@@ -15132,272 +16691,432 @@ class DiskTypesScopedListWarning {
* example:
* "data": [ { "key": "scope", "value": "zones/us-east1-d" }
*/
- core.List<DiskTypesScopedListWarningData> data;
+ core.List<ForwardingRulesScopedListWarningData> data;
/** [Output Only] A human-readable description of the warning code. */
core.String message;
- DiskTypesScopedListWarning();
+ ForwardingRulesScopedListWarning();
- DiskTypesScopedListWarning.fromJson(core.Map _json) {
+ ForwardingRulesScopedListWarning.fromJson(core.Map _json) {
if (_json.containsKey("code")) {
code = _json["code"];
}
if (_json.containsKey("data")) {
- data = _json["data"].map((value) => new DiskTypesScopedListWarningData.fromJson(value)).toList();
+ data = _json["data"].map((value) => new ForwardingRulesScopedListWarningData.fromJson(value)).toList();
+ }
+ if (_json.containsKey("message")) {
+ message = _json["message"];
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (code != null) {
+ _json["code"] = code;
+ }
+ if (data != null) {
+ _json["data"] = data.map((value) => (value).toJson()).toList();
+ }
+ if (message != null) {
+ _json["message"] = message;
+ }
+ return _json;
+ }
+}
+
+class ForwardingRulesScopedList {
+ /** List of forwarding rules contained in this scope. */
+ core.List<ForwardingRule> forwardingRules;
+ /**
+ * Informational warning which replaces the list of forwarding rules when the
+ * list is empty.
+ */
+ ForwardingRulesScopedListWarning warning;
+
+ ForwardingRulesScopedList();
+
+ ForwardingRulesScopedList.fromJson(core.Map _json) {
+ if (_json.containsKey("forwardingRules")) {
+ forwardingRules = _json["forwardingRules"].map((value) => new ForwardingRule.fromJson(value)).toList();
}
- if (_json.containsKey("message")) {
- message = _json["message"];
+ if (_json.containsKey("warning")) {
+ warning = new ForwardingRulesScopedListWarning.fromJson(_json["warning"]);
}
}
core.Map toJson() {
var _json = new core.Map();
- if (code != null) {
- _json["code"] = code;
- }
- if (data != null) {
- _json["data"] = data.map((value) => (value).toJson()).toList();
+ if (forwardingRules != null) {
+ _json["forwardingRules"] = forwardingRules.map((value) => (value).toJson()).toList();
}
- if (message != null) {
- _json["message"] = message;
+ if (warning != null) {
+ _json["warning"] = (warning).toJson();
}
return _json;
}
}
-class DiskTypesScopedList {
- /** [Output Only] List of disk types contained in this scope. */
- core.List<DiskType> diskTypes;
- /**
- * [Output Only] Informational warning which replaces the list of disk types
- * when the list is empty.
- */
- DiskTypesScopedListWarning warning;
+/**
+ * A full or valid partial URL to a health check. For example, the following are
+ * valid URLs:
+ * -
+ * https://www.googleapis.com/compute/beta/projects/project-id/global/httpHealthChecks/health-check
+ * - projects/project-id/global/httpHealthChecks/health-check
+ * - global/httpHealthChecks/health-check
+ */
+class HealthCheckReference {
+ core.String healthCheck;
- DiskTypesScopedList();
+ HealthCheckReference();
- DiskTypesScopedList.fromJson(core.Map _json) {
- if (_json.containsKey("diskTypes")) {
- diskTypes = _json["diskTypes"].map((value) => new DiskType.fromJson(value)).toList();
- }
- if (_json.containsKey("warning")) {
- warning = new DiskTypesScopedListWarning.fromJson(_json["warning"]);
+ HealthCheckReference.fromJson(core.Map _json) {
+ if (_json.containsKey("healthCheck")) {
+ healthCheck = _json["healthCheck"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (diskTypes != null) {
- _json["diskTypes"] = diskTypes.map((value) => (value).toJson()).toList();
- }
- if (warning != null) {
- _json["warning"] = (warning).toJson();
+ if (healthCheck != null) {
+ _json["healthCheck"] = healthCheck;
}
return _json;
}
}
-class DisksResizeRequest {
- /** The new size of the persistent disk, which is specified in GB. */
- core.String sizeGb;
+class HealthStatus {
+ /**
+ * Health state of the instance.
+ * Possible string values are:
+ * - "HEALTHY"
+ * - "UNHEALTHY"
+ */
+ core.String healthState;
+ /** URL of the instance resource. */
+ core.String instance;
+ /** The IP address represented by this resource. */
+ core.String ipAddress;
+ /** The port on the instance. */
+ core.int port;
- DisksResizeRequest();
+ HealthStatus();
- DisksResizeRequest.fromJson(core.Map _json) {
- if (_json.containsKey("sizeGb")) {
- sizeGb = _json["sizeGb"];
+ HealthStatus.fromJson(core.Map _json) {
+ if (_json.containsKey("healthState")) {
+ healthState = _json["healthState"];
+ }
+ if (_json.containsKey("instance")) {
+ instance = _json["instance"];
+ }
+ if (_json.containsKey("ipAddress")) {
+ ipAddress = _json["ipAddress"];
+ }
+ if (_json.containsKey("port")) {
+ port = _json["port"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (sizeGb != null) {
- _json["sizeGb"] = sizeGb;
+ if (healthState != null) {
+ _json["healthState"] = healthState;
+ }
+ if (instance != null) {
+ _json["instance"] = instance;
+ }
+ if (ipAddress != null) {
+ _json["ipAddress"] = ipAddress;
+ }
+ if (port != null) {
+ _json["port"] = port;
}
return _json;
}
}
-class DisksScopedListWarningData {
+/**
+ * UrlMaps A host-matching rule for a URL. If matched, will use the named
+ * PathMatcher to select the BackendService.
+ */
+class HostRule {
/**
- * [Output Only] A key that provides more detail on the warning being
- * returned. For example, for warnings where there are no results in a list
- * request for a particular zone, this key might be scope and the key value
- * might be the zone name. Other examples might be a key indicating a
- * deprecated resource and a suggested replacement, or a warning about invalid
- * network settings (for example, if an instance attempts to perform IP
- * forwarding but is not enabled for IP forwarding).
+ * An optional description of this resource. Provide this property when you
+ * create the resource.
*/
- core.String key;
- /** [Output Only] A warning data value corresponding to the key. */
- core.String value;
+ core.String description;
+ /**
+ * The list of host patterns to match. They must be valid hostnames, except *
+ * will match any string of ([a-z0-9-.]*). In that case, * must be the first
+ * character and must be followed in the pattern by either - or ..
+ */
+ core.List<core.String> hosts;
+ /**
+ * The name of the PathMatcher to use to match the path portion of the URL if
+ * the hostRule matches the URL's host portion.
+ */
+ core.String pathMatcher;
- DisksScopedListWarningData();
+ HostRule();
- DisksScopedListWarningData.fromJson(core.Map _json) {
- if (_json.containsKey("key")) {
- key = _json["key"];
+ HostRule.fromJson(core.Map _json) {
+ if (_json.containsKey("description")) {
+ description = _json["description"];
}
- if (_json.containsKey("value")) {
- value = _json["value"];
+ if (_json.containsKey("hosts")) {
+ hosts = _json["hosts"];
+ }
+ if (_json.containsKey("pathMatcher")) {
+ pathMatcher = _json["pathMatcher"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (key != null) {
- _json["key"] = key;
+ if (description != null) {
+ _json["description"] = description;
}
- if (value != null) {
- _json["value"] = value;
+ if (hosts != null) {
+ _json["hosts"] = hosts;
+ }
+ if (pathMatcher != null) {
+ _json["pathMatcher"] = pathMatcher;
}
return _json;
}
}
/**
- * [Output Only] Informational warning which replaces the list of disks when the
- * list is empty.
+ * An HttpHealthCheck resource. This resource defines a template for how
+ * individual instances should be checked for health, via HTTP.
*/
-class DisksScopedListWarning {
+class HttpHealthCheck {
/**
- * [Output Only] A warning code, if applicable. For example, Compute Engine
- * returns NO_RESULTS_ON_PAGE if there are no results in the response.
- * Possible string values are:
- * - "CLEANUP_FAILED"
- * - "DEPRECATED_RESOURCE_USED"
- * - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
- * - "INJECTED_KERNELS_DEPRECATED"
- * - "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
- * - "NEXT_HOP_CANNOT_IP_FORWARD"
- * - "NEXT_HOP_INSTANCE_NOT_FOUND"
- * - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
- * - "NEXT_HOP_NOT_RUNNING"
- * - "NOT_CRITICAL_ERROR"
- * - "NO_RESULTS_ON_PAGE"
- * - "REQUIRED_TOS_AGREEMENT"
- * - "RESOURCE_NOT_DELETED"
- * - "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
- * - "UNREACHABLE"
+ * How often (in seconds) to send a health check. The default value is 5
+ * seconds.
*/
- core.String code;
+ core.int checkIntervalSec;
+ /** [Output Only] Creation timestamp in RFC3339 text format. */
+ core.String creationTimestamp;
/**
- * [Output Only] Metadata about this warning in key: value format. For
- * example:
- * "data": [ { "key": "scope", "value": "zones/us-east1-d" }
+ * An optional description of this resource. Provide this property when you
+ * create the resource.
*/
- core.List<DisksScopedListWarningData> data;
- /** [Output Only] A human-readable description of the warning code. */
- core.String message;
+ core.String description;
+ /**
+ * A so-far unhealthy instance will be marked healthy after this many
+ * consecutive successes. 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 public IP on behalf of which this health check
+ * is performed will be used.
+ */
+ core.String host;
+ /**
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
+ */
+ core.String id;
+ /**
+ * [Output Only] Type of the resource. Always compute#httpHealthCheck for HTTP
+ * health checks.
+ */
+ core.String kind;
+ /**
+ * Name of the resource. Provided by the client when the resource is created.
+ * The name must be 1-63 characters long, and comply with RFC1035.
+ * Specifically, the name must be 1-63 characters long and match the regular
+ * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
+ * be a lowercase letter, and all following characters must be a dash,
+ * lowercase letter, or digit, except the last character, which cannot be a
+ * dash.
+ */
+ core.String name;
+ /**
+ * The TCP port number for the HTTP health check request. The default value is
+ * 80.
+ */
+ core.int port;
+ /**
+ * The request path of the HTTP health check request. The default value is /.
+ */
+ core.String requestPath;
+ /** [Output Only] Server-defined URL for the resource. */
+ core.String selfLink;
+ /**
+ * How long (in seconds) to wait before claiming failure. The default value is
+ * 5 seconds. It is invalid for timeoutSec to have greater value than
+ * checkIntervalSec.
+ */
+ core.int timeoutSec;
+ /**
+ * A so-far healthy instance will be marked unhealthy after this many
+ * consecutive failures. The default value is 2.
+ */
+ core.int unhealthyThreshold;
- DisksScopedListWarning();
+ HttpHealthCheck();
- DisksScopedListWarning.fromJson(core.Map _json) {
- if (_json.containsKey("code")) {
- code = _json["code"];
+ HttpHealthCheck.fromJson(core.Map _json) {
+ if (_json.containsKey("checkIntervalSec")) {
+ checkIntervalSec = _json["checkIntervalSec"];
+ }
+ if (_json.containsKey("creationTimestamp")) {
+ creationTimestamp = _json["creationTimestamp"];
}
- if (_json.containsKey("data")) {
- data = _json["data"].map((value) => new DisksScopedListWarningData.fromJson(value)).toList();
+ if (_json.containsKey("description")) {
+ description = _json["description"];
}
- if (_json.containsKey("message")) {
- message = _json["message"];
+ if (_json.containsKey("healthyThreshold")) {
+ healthyThreshold = _json["healthyThreshold"];
}
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (code != null) {
- _json["code"] = code;
+ if (_json.containsKey("host")) {
+ host = _json["host"];
}
- if (data != null) {
- _json["data"] = data.map((value) => (value).toJson()).toList();
+ if (_json.containsKey("id")) {
+ id = _json["id"];
}
- if (message != null) {
- _json["message"] = message;
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
}
- return _json;
- }
-}
-
-class DisksScopedList {
- /** [Output Only] List of disks contained in this scope. */
- core.List<Disk> disks;
- /**
- * [Output Only] Informational warning which replaces the list of disks when
- * the list is empty.
- */
- DisksScopedListWarning warning;
-
- DisksScopedList();
-
- DisksScopedList.fromJson(core.Map _json) {
- if (_json.containsKey("disks")) {
- disks = _json["disks"].map((value) => new Disk.fromJson(value)).toList();
+ if (_json.containsKey("name")) {
+ name = _json["name"];
}
- if (_json.containsKey("warning")) {
- warning = new DisksScopedListWarning.fromJson(_json["warning"]);
+ if (_json.containsKey("port")) {
+ port = _json["port"];
+ }
+ if (_json.containsKey("requestPath")) {
+ requestPath = _json["requestPath"];
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
+ }
+ if (_json.containsKey("timeoutSec")) {
+ timeoutSec = _json["timeoutSec"];
+ }
+ if (_json.containsKey("unhealthyThreshold")) {
+ unhealthyThreshold = _json["unhealthyThreshold"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (disks != null) {
- _json["disks"] = disks.map((value) => (value).toJson()).toList();
+ if (checkIntervalSec != null) {
+ _json["checkIntervalSec"] = checkIntervalSec;
}
- if (warning != null) {
- _json["warning"] = (warning).toJson();
+ if (creationTimestamp != null) {
+ _json["creationTimestamp"] = creationTimestamp;
+ }
+ if (description != null) {
+ _json["description"] = description;
+ }
+ if (healthyThreshold != null) {
+ _json["healthyThreshold"] = healthyThreshold;
+ }
+ if (host != null) {
+ _json["host"] = host;
+ }
+ if (id != null) {
+ _json["id"] = id;
+ }
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (name != null) {
+ _json["name"] = name;
+ }
+ if (port != null) {
+ _json["port"] = port;
+ }
+ if (requestPath != null) {
+ _json["requestPath"] = requestPath;
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
+ }
+ if (timeoutSec != null) {
+ _json["timeoutSec"] = timeoutSec;
+ }
+ if (unhealthyThreshold != null) {
+ _json["unhealthyThreshold"] = unhealthyThreshold;
}
return _json;
}
}
-class FirewallAllowed {
+/** Contains a list of HttpHealthCheck resources. */
+class HttpHealthCheckList {
/**
- * The IP protocol that is allowed for this rule. The protocol type is
- * required when creating a firewall rule. This value can either be one of the
- * following well known protocol strings (tcp, udp, icmp, esp, ah, sctp), or
- * the IP protocol number.
+ * [Output Only] Unique identifier for the resource. Defined by the server.
*/
- core.String IPProtocol;
+ core.String id;
+ /** A list of HttpHealthCheck resources. */
+ core.List<HttpHealthCheck> items;
+ /** Type of resource. */
+ core.String kind;
/**
- * An optional list of ports which are allowed. This field is only applicable
- * for UDP or TCP protocol. Each entry must be either an integer or a range.
- * If not specified, connections through any port are allowed
- *
- * Example inputs include: ["22"], ["80","443"], and ["12345-12349"].
+ * [Output Only] This token allows you to get the next page of results for
+ * list requests. If the number of results is larger than maxResults, use the
+ * nextPageToken as a value for the query parameter pageToken in the next list
+ * request. Subsequent list requests will have their own nextPageToken to
+ * continue paging through the results.
*/
- core.List<core.String> ports;
+ core.String nextPageToken;
+ /** [Output Only] Server-defined URL for this resource. */
+ core.String selfLink;
- FirewallAllowed();
+ HttpHealthCheckList();
- FirewallAllowed.fromJson(core.Map _json) {
- if (_json.containsKey("IPProtocol")) {
- IPProtocol = _json["IPProtocol"];
+ HttpHealthCheckList.fromJson(core.Map _json) {
+ if (_json.containsKey("id")) {
+ id = _json["id"];
}
- if (_json.containsKey("ports")) {
- ports = _json["ports"];
+ if (_json.containsKey("items")) {
+ items = _json["items"].map((value) => new HttpHealthCheck.fromJson(value)).toList();
+ }
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("nextPageToken")) {
+ nextPageToken = _json["nextPageToken"];
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (IPProtocol != null) {
- _json["IPProtocol"] = IPProtocol;
+ if (id != null) {
+ _json["id"] = id;
}
- if (ports != null) {
- _json["ports"] = ports;
+ if (items != null) {
+ _json["items"] = items.map((value) => (value).toJson()).toList();
+ }
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (nextPageToken != null) {
+ _json["nextPageToken"] = nextPageToken;
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
}
return _json;
}
}
-/** Represents a Firewall resource. */
-class Firewall {
+/**
+ * An HttpsHealthCheck resource. This resource defines a template for how
+ * individual instances should be checked for health, via HTTPS.
+ */
+class HttpsHealthCheck {
/**
- * The list of rules specified by this firewall. Each rule specifies a
- * protocol and port-range tuple that describes a permitted connection.
+ * How often (in seconds) to send a health check. The default value is 5
+ * seconds.
*/
- core.List<FirewallAllowed> allowed;
+ core.int checkIntervalSec;
/** [Output Only] Creation timestamp in RFC3339 text format. */
core.String creationTimestamp;
/**
@@ -15406,17 +17125,25 @@ class Firewall {
*/
core.String description;
/**
+ * A so-far unhealthy instance will be marked healthy after this many
+ * consecutive successes. The default value is 2.
+ */
+ core.int healthyThreshold;
+ /**
+ * The value of the host header in the HTTPS health check request. If left
+ * empty (default value), the public IP on behalf of which this health check
+ * is performed will be used.
+ */
+ core.String host;
+ /**
* [Output Only] The unique identifier for the resource. This identifier is
* defined by the server.
*/
core.String id;
- /**
- * [Output Ony] Type of the resource. Always compute#firewall for firewall
- * rules.
- */
+ /** Type of the resource. */
core.String kind;
/**
- * Name of the resource; provided by the client when the resource is created.
+ * Name of the resource. Provided by the client when the resource is created.
* The name must be 1-63 characters long, and comply with RFC1035.
* Specifically, the name must be 1-63 characters long and match the regular
* expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
@@ -15426,55 +17153,34 @@ class Firewall {
*/
core.String name;
/**
- * URL of the network resource for this firewall rule. If not specified when
- * creating a firewall rule, the default network is used:
- * global/networks/default
- * If you choose to specify this property, you can specify the network as a
- * full or partial URL. For example, the following are all valid URLs:
- * -
- * https://www.googleapis.com/compute/v1/projects/myproject/global/networks/my-network
- * - projects/myproject/global/networks/my-network
- * - global/networks/default
+ * The TCP port number for the HTTPS health check request. The default value
+ * is 443.
*/
- core.String network;
- /** [Output Only] Server-defined URL for the resource. */
- core.String selfLink;
+ core.int port;
/**
- * The IP address blocks that this rule applies to, expressed in CIDR format.
- * One or both of sourceRanges and sourceTags may be set.
- *
- * If both properties are set, an inbound connection is allowed if the range
- * matches the sourceRanges OR the tag of the source matches the sourceTags
- * property. The connection does not need to match both properties.
+ * The request path of the HTTPS health check request. The default value is
+ * "/".
*/
- core.List<core.String> sourceRanges;
+ core.String requestPath;
+ /** [Output Only] Server-defined URL for the resource. */
+ core.String selfLink;
/**
- * A list of instance tags which this rule applies to. One or both of
- * sourceRanges and sourceTags may be set.
- *
- * If both properties are set, an inbound connection is allowed if the range
- * matches the sourceRanges OR the tag of the source matches the sourceTags
- * property. The connection does not need to match both properties.
- *
- * Source tags cannot be used to allow access to an instance's external IP
- * address. Because tags are associated with an instance, not an IP address,
- * source tags can only be used to control traffic traveling from an instance
- * inside the same network as the firewall.
+ * How long (in seconds) to wait before claiming failure. The default value is
+ * 5 seconds. It is invalid for timeoutSec to have a greater value than
+ * checkIntervalSec.
*/
- core.List<core.String> sourceTags;
+ core.int timeoutSec;
/**
- * A list of instance tags indicating sets of instances located in the network
- * that may make network connections as specified in allowed[]. If no
- * targetTags are specified, the firewall rule applies to all instances on the
- * specified network.
+ * A so-far healthy instance will be marked unhealthy after this many
+ * consecutive failures. The default value is 2.
*/
- core.List<core.String> targetTags;
+ core.int unhealthyThreshold;
- Firewall();
+ HttpsHealthCheck();
- Firewall.fromJson(core.Map _json) {
- if (_json.containsKey("allowed")) {
- allowed = _json["allowed"].map((value) => new FirewallAllowed.fromJson(value)).toList();
+ HttpsHealthCheck.fromJson(core.Map _json) {
+ if (_json.containsKey("checkIntervalSec")) {
+ checkIntervalSec = _json["checkIntervalSec"];
}
if (_json.containsKey("creationTimestamp")) {
creationTimestamp = _json["creationTimestamp"];
@@ -15482,6 +17188,12 @@ class Firewall {
if (_json.containsKey("description")) {
description = _json["description"];
}
+ if (_json.containsKey("healthyThreshold")) {
+ healthyThreshold = _json["healthyThreshold"];
+ }
+ if (_json.containsKey("host")) {
+ host = _json["host"];
+ }
if (_json.containsKey("id")) {
id = _json["id"];
}
@@ -15491,27 +17203,27 @@ class Firewall {
if (_json.containsKey("name")) {
name = _json["name"];
}
- if (_json.containsKey("network")) {
- network = _json["network"];
+ if (_json.containsKey("port")) {
+ port = _json["port"];
+ }
+ if (_json.containsKey("requestPath")) {
+ requestPath = _json["requestPath"];
}
if (_json.containsKey("selfLink")) {
selfLink = _json["selfLink"];
}
- if (_json.containsKey("sourceRanges")) {
- sourceRanges = _json["sourceRanges"];
- }
- if (_json.containsKey("sourceTags")) {
- sourceTags = _json["sourceTags"];
+ if (_json.containsKey("timeoutSec")) {
+ timeoutSec = _json["timeoutSec"];
}
- if (_json.containsKey("targetTags")) {
- targetTags = _json["targetTags"];
+ if (_json.containsKey("unhealthyThreshold")) {
+ unhealthyThreshold = _json["unhealthyThreshold"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (allowed != null) {
- _json["allowed"] = allowed.map((value) => (value).toJson()).toList();
+ if (checkIntervalSec != null) {
+ _json["checkIntervalSec"] = checkIntervalSec;
}
if (creationTimestamp != null) {
_json["creationTimestamp"] = creationTimestamp;
@@ -15519,6 +17231,12 @@ class Firewall {
if (description != null) {
_json["description"] = description;
}
+ if (healthyThreshold != null) {
+ _json["healthyThreshold"] = healthyThreshold;
+ }
+ if (host != null) {
+ _json["host"] = host;
+ }
if (id != null) {
_json["id"] = id;
}
@@ -15528,38 +17246,34 @@ class Firewall {
if (name != null) {
_json["name"] = name;
}
- if (network != null) {
- _json["network"] = network;
+ if (port != null) {
+ _json["port"] = port;
+ }
+ if (requestPath != null) {
+ _json["requestPath"] = requestPath;
}
if (selfLink != null) {
_json["selfLink"] = selfLink;
}
- if (sourceRanges != null) {
- _json["sourceRanges"] = sourceRanges;
- }
- if (sourceTags != null) {
- _json["sourceTags"] = sourceTags;
+ if (timeoutSec != null) {
+ _json["timeoutSec"] = timeoutSec;
}
- if (targetTags != null) {
- _json["targetTags"] = targetTags;
+ if (unhealthyThreshold != null) {
+ _json["unhealthyThreshold"] = unhealthyThreshold;
}
return _json;
}
}
-/** Contains a list of firewalls. */
-class FirewallList {
+/** Contains a list of HttpsHealthCheck resources. */
+class HttpsHealthCheckList {
/**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
+ * [Output Only] Unique identifier for the resource; defined by the server.
*/
core.String id;
- /** [Output Only] A list of Firewall resources. */
- core.List<Firewall> items;
- /**
- * [Output Only] Type of resource. Always compute#firewallList for lists of
- * firewalls.
- */
+ /** A list of HttpsHealthCheck resources. */
+ core.List<HttpsHealthCheck> items;
+ /** Type of resource. */
core.String kind;
/**
* [Output Only] This token allows you to get the next page of results for
@@ -15572,14 +17286,14 @@ class FirewallList {
/** [Output Only] Server-defined URL for this resource. */
core.String selfLink;
- FirewallList();
+ HttpsHealthCheckList();
- FirewallList.fromJson(core.Map _json) {
+ HttpsHealthCheckList.fromJson(core.Map _json) {
if (_json.containsKey("id")) {
id = _json["id"];
}
if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new Firewall.fromJson(value)).toList();
+ items = _json["items"].map((value) => new HttpsHealthCheck.fromJson(value)).toList();
}
if (_json.containsKey("kind")) {
kind = _json["kind"];
@@ -15613,557 +17327,642 @@ class FirewallList {
}
}
-/**
- * A ForwardingRule resource. A ForwardingRule resource specifies which pool of
- * target virtual machines to forward a packet to if it matches the given
- * [IPAddress, IPProtocol, portRange] tuple.
- */
-class ForwardingRule {
- /**
- * Value of the reserved IP address that this forwarding rule is serving on
- * behalf of. For global forwarding rules, the address must be a global IP;
- * for regional forwarding rules, the address must live in the same region as
- * the forwarding rule. If left empty (default value), an ephemeral IP from
- * the same scope (global or regional) will be assigned.
- */
- core.String IPAddress;
+/** The parameters of the raw disk image. */
+class ImageRawDisk {
/**
- * The IP protocol to which this rule applies. Valid options are TCP, UDP,
- * ESP, AH, SCTP or ICMP.
+ * The format used to encode and transmit the block device, which should be
+ * TAR. This is just a container and transmission format and not a runtime
+ * format. Provided by the client when the disk image is created.
* Possible string values are:
- * - "AH"
- * - "ESP"
- * - "SCTP"
- * - "TCP"
- * - "UDP"
- */
- core.String IPProtocol;
- /** [Output Only] Creation timestamp in RFC3339 text format. */
- core.String creationTimestamp;
- /**
- * An optional description of this resource. Provide this property when you
- * create the resource.
- */
- core.String description;
- /**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
- */
- core.String id;
- /**
- * [Output Only] Type of the resource. Always compute#forwardingRule for
- * Forwarding Rule resources.
- */
- core.String kind;
- /**
- * Name of the resource; provided by the client when the resource is created.
- * The name must be 1-63 characters long, and comply with RFC1035.
- * Specifically, the name must be 1-63 characters long and match the regular
- * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
- * be a lowercase letter, and all following characters must be a dash,
- * lowercase letter, or digit, except the last character, which cannot be a
- * dash.
- */
- core.String name;
- /**
- * Applicable only when IPProtocol is TCP, UDP, or SCTP, only packets
- * addressed to ports in the specified range will be forwarded to target.
- * Forwarding rules with the same [IPAddress, IPProtocol] pair must have
- * disjoint port ranges.
+ * - "TAR"
*/
- core.String portRange;
+ core.String containerType;
/**
- * [Output Only] URL of the region where the regional forwarding rule resides.
- * This field is not applicable to global forwarding rules.
+ * An optional SHA1 checksum of the disk image before unpackaging; provided by
+ * the client when the disk image is created.
*/
- core.String region;
- /** [Output Only] Server-defined URL for the resource. */
- core.String selfLink;
+ core.String sha1Checksum;
/**
- * The URL of the target resource to receive the matched traffic. For regional
- * forwarding rules, this target must live in the same region as the
- * forwarding rule. For global forwarding rules, this target must be a global
- * TargetHttpProxy or TargetHttpsProxy resource. The forwarded traffic must be
- * of a type appropriate to the target object. For example, TargetHttpProxy
- * requires HTTP traffic, and TargetHttpsProxy requires HTTPS traffic.
+ * The full Google Cloud Storage URL where the disk image is stored. You must
+ * provide either this property or the sourceDisk property but not both.
*/
- core.String target;
+ core.String source;
- ForwardingRule();
+ ImageRawDisk();
- ForwardingRule.fromJson(core.Map _json) {
- if (_json.containsKey("IPAddress")) {
- IPAddress = _json["IPAddress"];
- }
- if (_json.containsKey("IPProtocol")) {
- IPProtocol = _json["IPProtocol"];
- }
- if (_json.containsKey("creationTimestamp")) {
- creationTimestamp = _json["creationTimestamp"];
- }
- if (_json.containsKey("description")) {
- description = _json["description"];
- }
- if (_json.containsKey("id")) {
- id = _json["id"];
- }
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
- }
- if (_json.containsKey("name")) {
- name = _json["name"];
- }
- if (_json.containsKey("portRange")) {
- portRange = _json["portRange"];
- }
- if (_json.containsKey("region")) {
- region = _json["region"];
+ ImageRawDisk.fromJson(core.Map _json) {
+ if (_json.containsKey("containerType")) {
+ containerType = _json["containerType"];
}
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
+ if (_json.containsKey("sha1Checksum")) {
+ sha1Checksum = _json["sha1Checksum"];
}
- if (_json.containsKey("target")) {
- target = _json["target"];
+ if (_json.containsKey("source")) {
+ source = _json["source"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (IPAddress != null) {
- _json["IPAddress"] = IPAddress;
- }
- if (IPProtocol != null) {
- _json["IPProtocol"] = IPProtocol;
- }
- if (creationTimestamp != null) {
- _json["creationTimestamp"] = creationTimestamp;
- }
- if (description != null) {
- _json["description"] = description;
- }
- if (id != null) {
- _json["id"] = id;
- }
- if (kind != null) {
- _json["kind"] = kind;
- }
- if (name != null) {
- _json["name"] = name;
- }
- if (portRange != null) {
- _json["portRange"] = portRange;
- }
- if (region != null) {
- _json["region"] = region;
+ if (containerType != null) {
+ _json["containerType"] = containerType;
}
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
+ if (sha1Checksum != null) {
+ _json["sha1Checksum"] = sha1Checksum;
}
- if (target != null) {
- _json["target"] = target;
+ if (source != null) {
+ _json["source"] = source;
}
return _json;
}
}
-class ForwardingRuleAggregatedList {
+/** An Image resource. */
+class Image {
+ /**
+ * Size of the image tar.gz archive stored in Google Cloud Storage (in bytes).
+ */
+ core.String archiveSizeBytes;
+ /** [Output Only] Creation timestamp in RFC3339 text format. */
+ core.String creationTimestamp;
+ /** The deprecation status associated with this image. */
+ DeprecationStatus deprecated;
+ /**
+ * An optional description of this resource. Provide this property when you
+ * create the resource.
+ */
+ core.String description;
+ /** Size of the image when restored onto a persistent disk (in GB). */
+ core.String diskSizeGb;
+ /**
+ * The name of the image family to which this image belongs. You can create
+ * disks by specifying an image family instead of a specific image name. The
+ * image family always returns its latest image that is not deprecated.
+ */
+ core.String family;
/**
* [Output Only] The unique identifier for the resource. This identifier is
* defined by the server.
*/
core.String id;
- /** A map of scoped forwarding rule lists. */
- core.Map<core.String, ForwardingRulesScopedList> items;
/**
- * [Output Only] Type of resource. Always compute#forwardingRuleAggregatedList
- * for lists of forwarding rules.
+ * Encrypts the image using a customer-supplied encryption key.
+ *
+ * After you encrypt an image with a customer-supplied key, you must provide
+ * the same key if you use the image later (e.g. to create a disk from the
+ * image).
+ *
+ * Customer-supplied encryption keys do not protect access to metadata of the
+ * disk.
+ *
+ * If you do not provide an encryption key when creating the image, then the
+ * disk will be encrypted using an automatically generated key and you do not
+ * need to provide a key to use the image later.
*/
+ CustomerEncryptionKey imageEncryptionKey;
+ /** [Output Only] Type of the resource. Always compute#image for images. */
core.String kind;
+ /** Any applicable publicly visible licenses. */
+ core.List<core.String> licenses;
/**
- * [Output Only] This token allows you to get the next page of results for
- * list requests. If the number of results is larger than maxResults, use the
- * nextPageToken as a value for the query parameter pageToken in the next list
- * request. Subsequent list requests will have their own nextPageToken to
- * continue paging through the results.
+ * Name of the resource; provided by the client when the resource is created.
+ * The name must be 1-63 characters long, and comply with RFC1035.
+ * Specifically, the name must be 1-63 characters long and match the regular
+ * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
+ * be a lowercase letter, and all following characters must be a dash,
+ * lowercase letter, or digit, except the last character, which cannot be a
+ * dash.
*/
- core.String nextPageToken;
- /** [Output Only] Server-defined URL for this resource. */
+ core.String name;
+ /** The parameters of the raw disk image. */
+ ImageRawDisk rawDisk;
+ /** [Output Only] Server-defined URL for the resource. */
core.String selfLink;
+ /**
+ * URL of the The source disk used to create this image. This can be a full or
+ * valid partial URL. You must provide either this property or the
+ * rawDisk.source property but not both to create an image. For example, the
+ * following are valid values:
+ * -
+ * https://www.googleapis.com/compute/v1/projects/project/zones/zone/disk/disk
+ * - projects/project/zones/zone/disk/disk
+ * - zones/zone/disks/disk
+ */
+ core.String sourceDisk;
+ /**
+ * The customer-supplied encryption key of the source disk. Required if the
+ * source disk is protected by a customer-supplied encryption key.
+ */
+ CustomerEncryptionKey sourceDiskEncryptionKey;
+ /**
+ * The ID value of the disk used to create this image. This value may be used
+ * to determine whether the image was taken from the current or a previous
+ * instance of a given disk name.
+ */
+ core.String sourceDiskId;
+ /**
+ * The type of the image used to create this disk. The default and only value
+ * is RAW
+ * Possible string values are:
+ * - "RAW"
+ */
+ core.String sourceType;
+ /**
+ * [Output Only] The status of the image. An image can be used to create other
+ * resources, such as instances, only after the image has been successfully
+ * created and the status is set to READY. Possible values are FAILED,
+ * PENDING, or READY.
+ * Possible string values are:
+ * - "FAILED"
+ * - "PENDING"
+ * - "READY"
+ */
+ core.String status;
- ForwardingRuleAggregatedList();
+ Image();
- ForwardingRuleAggregatedList.fromJson(core.Map _json) {
+ Image.fromJson(core.Map _json) {
+ if (_json.containsKey("archiveSizeBytes")) {
+ archiveSizeBytes = _json["archiveSizeBytes"];
+ }
+ if (_json.containsKey("creationTimestamp")) {
+ creationTimestamp = _json["creationTimestamp"];
+ }
+ if (_json.containsKey("deprecated")) {
+ deprecated = new DeprecationStatus.fromJson(_json["deprecated"]);
+ }
+ if (_json.containsKey("description")) {
+ description = _json["description"];
+ }
+ if (_json.containsKey("diskSizeGb")) {
+ diskSizeGb = _json["diskSizeGb"];
+ }
+ if (_json.containsKey("family")) {
+ family = _json["family"];
+ }
if (_json.containsKey("id")) {
id = _json["id"];
}
- if (_json.containsKey("items")) {
- items = commons.mapMap(_json["items"], (item) => new ForwardingRulesScopedList.fromJson(item));
+ if (_json.containsKey("imageEncryptionKey")) {
+ imageEncryptionKey = new CustomerEncryptionKey.fromJson(_json["imageEncryptionKey"]);
}
if (_json.containsKey("kind")) {
kind = _json["kind"];
}
- if (_json.containsKey("nextPageToken")) {
- nextPageToken = _json["nextPageToken"];
+ if (_json.containsKey("licenses")) {
+ licenses = _json["licenses"];
+ }
+ if (_json.containsKey("name")) {
+ name = _json["name"];
+ }
+ if (_json.containsKey("rawDisk")) {
+ rawDisk = new ImageRawDisk.fromJson(_json["rawDisk"]);
}
if (_json.containsKey("selfLink")) {
selfLink = _json["selfLink"];
}
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (id != null) {
- _json["id"] = id;
+ if (_json.containsKey("sourceDisk")) {
+ sourceDisk = _json["sourceDisk"];
}
- if (items != null) {
- _json["items"] = commons.mapMap(items, (item) => (item).toJson());
+ if (_json.containsKey("sourceDiskEncryptionKey")) {
+ sourceDiskEncryptionKey = new CustomerEncryptionKey.fromJson(_json["sourceDiskEncryptionKey"]);
}
- if (kind != null) {
- _json["kind"] = kind;
+ if (_json.containsKey("sourceDiskId")) {
+ sourceDiskId = _json["sourceDiskId"];
}
- if (nextPageToken != null) {
- _json["nextPageToken"] = nextPageToken;
+ if (_json.containsKey("sourceType")) {
+ sourceType = _json["sourceType"];
}
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
+ if (_json.containsKey("status")) {
+ status = _json["status"];
}
- return _json;
}
-}
-
-/** Contains a list of ForwardingRule resources. */
-class ForwardingRuleList {
- /** [Output Only] Unique identifier for the resource. Set by the server. */
- core.String id;
- /** A list of ForwardingRule resources. */
- core.List<ForwardingRule> items;
- /** Type of resource. */
- core.String kind;
- /**
- * [Output Only] This token allows you to get the next page of results for
- * list requests. If the number of results is larger than maxResults, use the
- * nextPageToken as a value for the query parameter pageToken in the next list
- * request. Subsequent list requests will have their own nextPageToken to
- * continue paging through the results.
- */
- core.String nextPageToken;
- /** [Output Only] Server-defined URL for this resource. */
- core.String selfLink;
-
- ForwardingRuleList();
- ForwardingRuleList.fromJson(core.Map _json) {
- if (_json.containsKey("id")) {
- id = _json["id"];
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (archiveSizeBytes != null) {
+ _json["archiveSizeBytes"] = archiveSizeBytes;
}
- if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new ForwardingRule.fromJson(value)).toList();
+ if (creationTimestamp != null) {
+ _json["creationTimestamp"] = creationTimestamp;
}
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
+ if (deprecated != null) {
+ _json["deprecated"] = (deprecated).toJson();
}
- if (_json.containsKey("nextPageToken")) {
- nextPageToken = _json["nextPageToken"];
+ if (description != null) {
+ _json["description"] = description;
}
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
+ if (diskSizeGb != null) {
+ _json["diskSizeGb"] = diskSizeGb;
+ }
+ if (family != null) {
+ _json["family"] = family;
}
- }
-
- core.Map toJson() {
- var _json = new core.Map();
if (id != null) {
_json["id"] = id;
}
- if (items != null) {
- _json["items"] = items.map((value) => (value).toJson()).toList();
+ if (imageEncryptionKey != null) {
+ _json["imageEncryptionKey"] = (imageEncryptionKey).toJson();
}
if (kind != null) {
_json["kind"] = kind;
}
- if (nextPageToken != null) {
- _json["nextPageToken"] = nextPageToken;
+ if (licenses != null) {
+ _json["licenses"] = licenses;
+ }
+ if (name != null) {
+ _json["name"] = name;
+ }
+ if (rawDisk != null) {
+ _json["rawDisk"] = (rawDisk).toJson();
}
if (selfLink != null) {
_json["selfLink"] = selfLink;
}
- return _json;
- }
-}
-
-class ForwardingRulesScopedListWarningData {
- /**
- * [Output Only] A key that provides more detail on the warning being
- * returned. For example, for warnings where there are no results in a list
- * request for a particular zone, this key might be scope and the key value
- * might be the zone name. Other examples might be a key indicating a
- * deprecated resource and a suggested replacement, or a warning about invalid
- * network settings (for example, if an instance attempts to perform IP
- * forwarding but is not enabled for IP forwarding).
- */
- core.String key;
- /** [Output Only] A warning data value corresponding to the key. */
- core.String value;
-
- ForwardingRulesScopedListWarningData();
-
- ForwardingRulesScopedListWarningData.fromJson(core.Map _json) {
- if (_json.containsKey("key")) {
- key = _json["key"];
+ if (sourceDisk != null) {
+ _json["sourceDisk"] = sourceDisk;
}
- if (_json.containsKey("value")) {
- value = _json["value"];
+ if (sourceDiskEncryptionKey != null) {
+ _json["sourceDiskEncryptionKey"] = (sourceDiskEncryptionKey).toJson();
}
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (key != null) {
- _json["key"] = key;
+ if (sourceDiskId != null) {
+ _json["sourceDiskId"] = sourceDiskId;
}
- if (value != null) {
- _json["value"] = value;
+ if (sourceType != null) {
+ _json["sourceType"] = sourceType;
+ }
+ if (status != null) {
+ _json["status"] = status;
}
return _json;
}
}
-/**
- * Informational warning which replaces the list of forwarding rules when the
- * list is empty.
- */
-class ForwardingRulesScopedListWarning {
+/** Contains a list of images. */
+class ImageList {
/**
- * [Output Only] A warning code, if applicable. For example, Compute Engine
- * returns NO_RESULTS_ON_PAGE if there are no results in the response.
- * Possible string values are:
- * - "CLEANUP_FAILED"
- * - "DEPRECATED_RESOURCE_USED"
- * - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
- * - "INJECTED_KERNELS_DEPRECATED"
- * - "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
- * - "NEXT_HOP_CANNOT_IP_FORWARD"
- * - "NEXT_HOP_INSTANCE_NOT_FOUND"
- * - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
- * - "NEXT_HOP_NOT_RUNNING"
- * - "NOT_CRITICAL_ERROR"
- * - "NO_RESULTS_ON_PAGE"
- * - "REQUIRED_TOS_AGREEMENT"
- * - "RESOURCE_NOT_DELETED"
- * - "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
- * - "UNREACHABLE"
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
*/
- core.String code;
+ core.String id;
+ /** [Output Only] A list of Image resources. */
+ core.List<Image> items;
+ /** Type of resource. */
+ core.String kind;
/**
- * [Output Only] Metadata about this warning in key: value format. For
- * example:
- * "data": [ { "key": "scope", "value": "zones/us-east1-d" }
+ * [Output Only] This token allows you to get the next page of results for
+ * list requests. If the number of results is larger than maxResults, use the
+ * nextPageToken as a value for the query parameter pageToken in the next list
+ * request. Subsequent list requests will have their own nextPageToken to
+ * continue paging through the results.
*/
- core.List<ForwardingRulesScopedListWarningData> data;
- /** [Output Only] A human-readable description of the warning code. */
- core.String message;
+ core.String nextPageToken;
+ /** [Output Only] Server-defined URL for this resource. */
+ core.String selfLink;
- ForwardingRulesScopedListWarning();
+ ImageList();
- ForwardingRulesScopedListWarning.fromJson(core.Map _json) {
- if (_json.containsKey("code")) {
- code = _json["code"];
+ ImageList.fromJson(core.Map _json) {
+ if (_json.containsKey("id")) {
+ id = _json["id"];
}
- if (_json.containsKey("data")) {
- data = _json["data"].map((value) => new ForwardingRulesScopedListWarningData.fromJson(value)).toList();
+ if (_json.containsKey("items")) {
+ items = _json["items"].map((value) => new Image.fromJson(value)).toList();
}
- if (_json.containsKey("message")) {
- message = _json["message"];
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("nextPageToken")) {
+ nextPageToken = _json["nextPageToken"];
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (code != null) {
- _json["code"] = code;
+ if (id != null) {
+ _json["id"] = id;
}
- if (data != null) {
- _json["data"] = data.map((value) => (value).toJson()).toList();
+ if (items != null) {
+ _json["items"] = items.map((value) => (value).toJson()).toList();
}
- if (message != null) {
- _json["message"] = message;
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (nextPageToken != null) {
+ _json["nextPageToken"] = nextPageToken;
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
}
return _json;
}
}
-class ForwardingRulesScopedList {
- /** List of forwarding rules contained in this scope. */
- core.List<ForwardingRule> forwardingRules;
+/** An Instance resource. */
+class Instance {
/**
- * Informational warning which replaces the list of forwarding rules when the
- * list is empty.
+ * Allows this instance to send and receive packets with non-matching
+ * destination or source IPs. This is required if you plan to use this
+ * instance to forward routes. For more information, see Enabling IP
+ * Forwarding.
*/
- ForwardingRulesScopedListWarning warning;
+ core.bool canIpForward;
+ /** [Output Only] The CPU platform used by this instance. */
+ core.String cpuPlatform;
+ /** [Output Only] Creation timestamp in RFC3339 text format. */
+ core.String creationTimestamp;
+ /**
+ * An optional description of this resource. Provide this property when you
+ * create the resource.
+ */
+ core.String description;
+ /**
+ * Array of disks associated with this instance. Persistent disks must be
+ * created before you can assign them.
+ */
+ core.List<AttachedDisk> disks;
+ /**
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
+ */
+ core.String id;
+ /**
+ * [Output Only] Type of the resource. Always compute#instance for instances.
+ */
+ core.String kind;
+ /**
+ * Full or partial URL of the machine type resource to use for this instance,
+ * in the format: zones/zone/machineTypes/machine-type. This is provided by
+ * the client when the instance is created. For example, the following is a
+ * valid partial url to a predefined machine type:
+ *
+ * zones/us-central1-f/machineTypes/n1-standard-1
+ *
+ * To create a custom machine type, provide a URL to a machine type in the
+ * following format, where CPUS is 1 or an even number up to 32 (2, 4, 6, ...
+ * 24, etc), and MEMORY is the total memory for this instance. Memory must be
+ * a multiple of 256 MB and must be supplied in MB (e.g. 5 GB of memory is
+ * 5120 MB):
+ *
+ * zones/zone/machineTypes/custom-CPUS-MEMORY
+ *
+ * For example: zones/us-central1-f/machineTypes/custom-4-5120
+ *
+ * For a full list of restrictions, read the Specifications for custom machine
+ * types.
+ */
+ core.String machineType;
+ /**
+ * The metadata key/value pairs assigned to this instance. This includes
+ * custom metadata and predefined keys.
+ */
+ Metadata metadata;
+ /**
+ * The name of the resource, provided by the client when initially creating
+ * the resource. The resource name must be 1-63 characters long, and comply
+ * with RFC1035. Specifically, the name must be 1-63 characters long and match
+ * the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first
+ * character must be a lowercase letter, and all following characters must be
+ * a dash, lowercase letter, or digit, except the last character, which cannot
+ * be a dash.
+ */
+ core.String name;
+ /**
+ * An array of configurations for this interface. This specifies how this
+ * interface is configured to interact with other network services, such as
+ * connecting to the internet.
+ */
+ core.List<NetworkInterface> networkInterfaces;
+ /** Scheduling options for this instance. */
+ Scheduling scheduling;
+ /** [Output Only] Server-defined URL for this resource. */
+ core.String selfLink;
+ /**
+ * A list of service accounts, with their specified scopes, authorized for
+ * this instance. Service accounts generate access tokens that can be accessed
+ * through the metadata server and used to authenticate applications on the
+ * instance. See Service Accounts for more information.
+ */
+ core.List<ServiceAccount> serviceAccounts;
+ /**
+ * [Output Only] The status of the instance. One of the following values:
+ * PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDED, SUSPENDING, and
+ * TERMINATED.
+ * Possible string values are:
+ * - "PROVISIONING"
+ * - "RUNNING"
+ * - "STAGING"
+ * - "STOPPED"
+ * - "STOPPING"
+ * - "SUSPENDED"
+ * - "SUSPENDING"
+ * - "TERMINATED"
+ */
+ core.String status;
+ /** [Output Only] An optional, human-readable explanation of the status. */
+ core.String statusMessage;
+ /**
+ * A list of tags to apply to this instance. Tags are used to identify valid
+ * sources or targets for network firewalls and are specified by the client
+ * during instance creation. The tags can be later modified by the setTags
+ * method. Each tag within the list must comply with RFC1035.
+ */
+ Tags tags;
+ /** [Output Only] URL of the zone where the instance resides. */
+ core.String zone;
- ForwardingRulesScopedList();
+ Instance();
- ForwardingRulesScopedList.fromJson(core.Map _json) {
- if (_json.containsKey("forwardingRules")) {
- forwardingRules = _json["forwardingRules"].map((value) => new ForwardingRule.fromJson(value)).toList();
+ Instance.fromJson(core.Map _json) {
+ if (_json.containsKey("canIpForward")) {
+ canIpForward = _json["canIpForward"];
}
- if (_json.containsKey("warning")) {
- warning = new ForwardingRulesScopedListWarning.fromJson(_json["warning"]);
+ if (_json.containsKey("cpuPlatform")) {
+ cpuPlatform = _json["cpuPlatform"];
}
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (forwardingRules != null) {
- _json["forwardingRules"] = forwardingRules.map((value) => (value).toJson()).toList();
+ if (_json.containsKey("creationTimestamp")) {
+ creationTimestamp = _json["creationTimestamp"];
}
- if (warning != null) {
- _json["warning"] = (warning).toJson();
+ if (_json.containsKey("description")) {
+ description = _json["description"];
}
- return _json;
- }
-}
-
-/**
- * A full or valid partial URL to a health check. For example, the following are
- * valid URLs:
- * -
- * https://www.googleapis.com/compute/beta/projects/project-id/global/httpHealthChecks/health-check
- * - projects/project-id/global/httpHealthChecks/health-check
- * - global/httpHealthChecks/health-check
- */
-class HealthCheckReference {
- core.String healthCheck;
-
- HealthCheckReference();
-
- HealthCheckReference.fromJson(core.Map _json) {
- if (_json.containsKey("healthCheck")) {
- healthCheck = _json["healthCheck"];
+ if (_json.containsKey("disks")) {
+ disks = _json["disks"].map((value) => new AttachedDisk.fromJson(value)).toList();
+ }
+ if (_json.containsKey("id")) {
+ id = _json["id"];
+ }
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("machineType")) {
+ machineType = _json["machineType"];
+ }
+ if (_json.containsKey("metadata")) {
+ metadata = new Metadata.fromJson(_json["metadata"]);
+ }
+ if (_json.containsKey("name")) {
+ name = _json["name"];
+ }
+ if (_json.containsKey("networkInterfaces")) {
+ networkInterfaces = _json["networkInterfaces"].map((value) => new NetworkInterface.fromJson(value)).toList();
+ }
+ if (_json.containsKey("scheduling")) {
+ scheduling = new Scheduling.fromJson(_json["scheduling"]);
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
+ }
+ if (_json.containsKey("serviceAccounts")) {
+ serviceAccounts = _json["serviceAccounts"].map((value) => new ServiceAccount.fromJson(value)).toList();
+ }
+ if (_json.containsKey("status")) {
+ status = _json["status"];
+ }
+ if (_json.containsKey("statusMessage")) {
+ statusMessage = _json["statusMessage"];
+ }
+ if (_json.containsKey("tags")) {
+ tags = new Tags.fromJson(_json["tags"]);
+ }
+ if (_json.containsKey("zone")) {
+ zone = _json["zone"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (healthCheck != null) {
- _json["healthCheck"] = healthCheck;
+ if (canIpForward != null) {
+ _json["canIpForward"] = canIpForward;
}
- return _json;
- }
-}
-
-class HealthStatus {
- /**
- * Health state of the instance.
- * Possible string values are:
- * - "HEALTHY"
- * - "UNHEALTHY"
- */
- core.String healthState;
- /** URL of the instance resource. */
- core.String instance;
- /** The IP address represented by this resource. */
- core.String ipAddress;
- /** The port on the instance. */
- core.int port;
-
- HealthStatus();
-
- HealthStatus.fromJson(core.Map _json) {
- if (_json.containsKey("healthState")) {
- healthState = _json["healthState"];
+ if (cpuPlatform != null) {
+ _json["cpuPlatform"] = cpuPlatform;
}
- if (_json.containsKey("instance")) {
- instance = _json["instance"];
+ if (creationTimestamp != null) {
+ _json["creationTimestamp"] = creationTimestamp;
}
- if (_json.containsKey("ipAddress")) {
- ipAddress = _json["ipAddress"];
+ if (description != null) {
+ _json["description"] = description;
}
- if (_json.containsKey("port")) {
- port = _json["port"];
+ if (disks != null) {
+ _json["disks"] = disks.map((value) => (value).toJson()).toList();
}
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (healthState != null) {
- _json["healthState"] = healthState;
+ if (id != null) {
+ _json["id"] = id;
}
- if (instance != null) {
- _json["instance"] = instance;
+ if (kind != null) {
+ _json["kind"] = kind;
}
- if (ipAddress != null) {
- _json["ipAddress"] = ipAddress;
+ if (machineType != null) {
+ _json["machineType"] = machineType;
}
- if (port != null) {
- _json["port"] = port;
+ if (metadata != null) {
+ _json["metadata"] = (metadata).toJson();
+ }
+ if (name != null) {
+ _json["name"] = name;
+ }
+ if (networkInterfaces != null) {
+ _json["networkInterfaces"] = networkInterfaces.map((value) => (value).toJson()).toList();
+ }
+ if (scheduling != null) {
+ _json["scheduling"] = (scheduling).toJson();
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
+ }
+ if (serviceAccounts != null) {
+ _json["serviceAccounts"] = serviceAccounts.map((value) => (value).toJson()).toList();
+ }
+ if (status != null) {
+ _json["status"] = status;
+ }
+ if (statusMessage != null) {
+ _json["statusMessage"] = statusMessage;
+ }
+ if (tags != null) {
+ _json["tags"] = (tags).toJson();
+ }
+ if (zone != null) {
+ _json["zone"] = zone;
}
return _json;
}
}
-/**
- * UrlMaps A host-matching rule for a URL. If matched, will use the named
- * PathMatcher to select the BackendService.
- */
-class HostRule {
+class InstanceAggregatedList {
/**
- * An optional description of this resource. Provide this property when you
- * create the resource.
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
*/
- core.String description;
+ core.String id;
+ /** [Output Only] A map of scoped instance lists. */
+ core.Map<core.String, InstancesScopedList> items;
/**
- * The list of host patterns to match. They must be valid hostnames, except *
- * will match any string of ([a-z0-9-.]*). In that case, * must be the first
- * character and must be followed in the pattern by either - or ..
+ * [Output Only] Type of resource. Always compute#instanceAggregatedList for
+ * aggregated lists of Instance resources.
*/
- core.List<core.String> hosts;
+ core.String kind;
/**
- * The name of the PathMatcher to use to match the path portion of the URL if
- * the hostRule matches the URL's host portion.
+ * [Output Only] This token allows you to get the next page of results for
+ * list requests. If the number of results is larger than maxResults, use the
+ * nextPageToken as a value for the query parameter pageToken in the next list
+ * request. Subsequent list requests will have their own nextPageToken to
+ * continue paging through the results.
*/
- core.String pathMatcher;
+ core.String nextPageToken;
+ /** [Output Only] Server-defined URL for this resource. */
+ core.String selfLink;
- HostRule();
+ InstanceAggregatedList();
- HostRule.fromJson(core.Map _json) {
- if (_json.containsKey("description")) {
- description = _json["description"];
+ InstanceAggregatedList.fromJson(core.Map _json) {
+ if (_json.containsKey("id")) {
+ id = _json["id"];
}
- if (_json.containsKey("hosts")) {
- hosts = _json["hosts"];
+ if (_json.containsKey("items")) {
+ items = commons.mapMap(_json["items"], (item) => new InstancesScopedList.fromJson(item));
}
- if (_json.containsKey("pathMatcher")) {
- pathMatcher = _json["pathMatcher"];
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("nextPageToken")) {
+ nextPageToken = _json["nextPageToken"];
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (description != null) {
- _json["description"] = description;
+ if (id != null) {
+ _json["id"] = id;
}
- if (hosts != null) {
- _json["hosts"] = hosts;
+ if (items != null) {
+ _json["items"] = commons.mapMap(items, (item) => (item).toJson());
}
- if (pathMatcher != null) {
- _json["pathMatcher"] = pathMatcher;
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (nextPageToken != null) {
+ _json["nextPageToken"] = nextPageToken;
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
}
return _json;
}
}
-/**
- * An HttpHealthCheck resource. This resource defines a template for how
- * individual instances should be checked for health, via HTTP.
- */
-class HttpHealthCheck {
+class InstanceGroup {
/**
- * How often (in seconds) to send a health check. The default value is 5
- * seconds.
+ * [Output Only] The creation timestamp for this instance group in RFC3339
+ * text format.
*/
- core.int checkIntervalSec;
- /** [Output Only] Creation timestamp in RFC3339 text format. */
core.String creationTimestamp;
/**
* An optional description of this resource. Provide this property when you
@@ -16171,76 +17970,73 @@ class HttpHealthCheck {
*/
core.String description;
/**
- * A so-far unhealthy instance will be marked healthy after this many
- * consecutive successes. 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 public IP on behalf of which this health check
- * is performed will be used.
+ * [Output Only] The fingerprint of the named ports. The system uses this
+ * fingerprint to detect conflicts when multiple users change the named ports
+ * concurrently.
*/
- core.String host;
+ core.String fingerprint;
+ core.List<core.int> get fingerprintAsBytes {
+ return convert.BASE64.decode(fingerprint);
+ }
+
+ void set fingerprintAsBytes(core.List<core.int> _bytes) {
+ fingerprint = convert.BASE64.encode(_bytes).replaceAll("/", "_").replaceAll("+", "-");
+ }
/**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
+ * [Output Only] A unique identifier for this resource type. The server
+ * generates this identifier.
*/
core.String id;
/**
- * [Output Only] Type of the resource. Always compute#httpHealthCheck for HTTP
- * health checks.
+ * [Output Only] The resource type, which is always compute#instanceGroup for
+ * instance groups.
*/
core.String kind;
/**
- * Name of the resource. Provided by the client when the resource is created.
- * The name must be 1-63 characters long, and comply with RFC1035.
- * Specifically, the name must be 1-63 characters long and match the regular
- * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
- * be a lowercase letter, and all following characters must be a dash,
- * lowercase letter, or digit, except the last character, which cannot be a
- * dash.
+ * The name of the instance group. The name must be 1-63 characters long, and
+ * comply with RFC1035.
*/
core.String name;
/**
- * The TCP port number for the HTTP health check request. The default value is
- * 80.
+ * Assigns a name to a port number. For example: {name: "http", port: 80}
+ *
+ * This allows the system to reference ports by the assigned name instead of a
+ * port number. Named ports can also contain multiple ports. For example:
+ * [{name: "http", port: 80},{name: "http", port: 8080}]
+ *
+ * Named ports apply to all instances in this instance group.
*/
- core.int port;
+ core.List<NamedPort> namedPorts;
/**
- * The request path of the HTTP health check request. The default value is /.
+ * The URL of the network to which all instances in the instance group belong.
*/
- core.String requestPath;
- /** [Output Only] Server-defined URL for the resource. */
- core.String selfLink;
+ core.String network;
/**
- * How long (in seconds) to wait before claiming failure. The default value is
- * 5 seconds. It is invalid for timeoutSec to have greater value than
- * checkIntervalSec.
+ * [Output Only] The URL for this instance group. The server generates this
+ * URL.
*/
- core.int timeoutSec;
+ core.String selfLink;
+ /** [Output Only] The total number of instances in the instance group. */
+ core.int size;
/**
- * A so-far healthy instance will be marked unhealthy after this many
- * consecutive failures. The default value is 2.
+ * The URL of the subnetwork to which all instances in the instance group
+ * belong.
*/
- core.int unhealthyThreshold;
+ core.String subnetwork;
+ /** [Output Only] The URL of the zone where the instance group is located. */
+ core.String zone;
- HttpHealthCheck();
+ InstanceGroup();
- HttpHealthCheck.fromJson(core.Map _json) {
- if (_json.containsKey("checkIntervalSec")) {
- checkIntervalSec = _json["checkIntervalSec"];
- }
+ InstanceGroup.fromJson(core.Map _json) {
if (_json.containsKey("creationTimestamp")) {
creationTimestamp = _json["creationTimestamp"];
}
if (_json.containsKey("description")) {
description = _json["description"];
}
- if (_json.containsKey("healthyThreshold")) {
- healthyThreshold = _json["healthyThreshold"];
- }
- if (_json.containsKey("host")) {
- host = _json["host"];
+ if (_json.containsKey("fingerprint")) {
+ fingerprint = _json["fingerprint"];
}
if (_json.containsKey("id")) {
id = _json["id"];
@@ -16251,39 +18047,36 @@ class HttpHealthCheck {
if (_json.containsKey("name")) {
name = _json["name"];
}
- if (_json.containsKey("port")) {
- port = _json["port"];
+ if (_json.containsKey("namedPorts")) {
+ namedPorts = _json["namedPorts"].map((value) => new NamedPort.fromJson(value)).toList();
}
- if (_json.containsKey("requestPath")) {
- requestPath = _json["requestPath"];
+ if (_json.containsKey("network")) {
+ network = _json["network"];
}
if (_json.containsKey("selfLink")) {
selfLink = _json["selfLink"];
}
- if (_json.containsKey("timeoutSec")) {
- timeoutSec = _json["timeoutSec"];
+ if (_json.containsKey("size")) {
+ size = _json["size"];
}
- if (_json.containsKey("unhealthyThreshold")) {
- unhealthyThreshold = _json["unhealthyThreshold"];
+ if (_json.containsKey("subnetwork")) {
+ subnetwork = _json["subnetwork"];
+ }
+ if (_json.containsKey("zone")) {
+ zone = _json["zone"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (checkIntervalSec != null) {
- _json["checkIntervalSec"] = checkIntervalSec;
- }
if (creationTimestamp != null) {
_json["creationTimestamp"] = creationTimestamp;
}
if (description != null) {
_json["description"] = description;
}
- if (healthyThreshold != null) {
- _json["healthyThreshold"] = healthyThreshold;
- }
- if (host != null) {
- _json["host"] = host;
+ if (fingerprint != null) {
+ _json["fingerprint"] = fingerprint;
}
if (id != null) {
_json["id"] = id;
@@ -16294,34 +18087,41 @@ class HttpHealthCheck {
if (name != null) {
_json["name"] = name;
}
- if (port != null) {
- _json["port"] = port;
+ if (namedPorts != null) {
+ _json["namedPorts"] = namedPorts.map((value) => (value).toJson()).toList();
}
- if (requestPath != null) {
- _json["requestPath"] = requestPath;
+ if (network != null) {
+ _json["network"] = network;
}
if (selfLink != null) {
_json["selfLink"] = selfLink;
}
- if (timeoutSec != null) {
- _json["timeoutSec"] = timeoutSec;
+ if (size != null) {
+ _json["size"] = size;
}
- if (unhealthyThreshold != null) {
- _json["unhealthyThreshold"] = unhealthyThreshold;
+ if (subnetwork != null) {
+ _json["subnetwork"] = subnetwork;
+ }
+ if (zone != null) {
+ _json["zone"] = zone;
}
return _json;
}
}
-/** Contains a list of HttpHealthCheck resources. */
-class HttpHealthCheckList {
+class InstanceGroupAggregatedList {
/**
- * [Output Only] Unique identifier for the resource. Defined by the server.
+ * [Output Only] A unique identifier for this aggregated list of instance
+ * groups. The server generates this identifier.
*/
core.String id;
- /** A list of HttpHealthCheck resources. */
- core.List<HttpHealthCheck> items;
- /** Type of resource. */
+ /** A map of scoped instance group lists. */
+ core.Map<core.String, InstanceGroupsScopedList> items;
+ /**
+ * [Output Only] The resource type, which is always
+ * compute#instanceGroupAggregatedList for aggregated lists of instance
+ * groups.
+ */
core.String kind;
/**
* [Output Only] This token allows you to get the next page of results for
@@ -16331,17 +18131,89 @@ class HttpHealthCheckList {
* continue paging through the results.
*/
core.String nextPageToken;
- /** [Output Only] Server-defined URL for this resource. */
+ /**
+ * [Output Only] The URL for this resource type. The server generates this
+ * URL.
+ */
core.String selfLink;
- HttpHealthCheckList();
+ InstanceGroupAggregatedList();
- HttpHealthCheckList.fromJson(core.Map _json) {
+ InstanceGroupAggregatedList.fromJson(core.Map _json) {
if (_json.containsKey("id")) {
id = _json["id"];
}
if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new HttpHealthCheck.fromJson(value)).toList();
+ items = commons.mapMap(_json["items"], (item) => new InstanceGroupsScopedList.fromJson(item));
+ }
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("nextPageToken")) {
+ nextPageToken = _json["nextPageToken"];
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (id != null) {
+ _json["id"] = id;
+ }
+ if (items != null) {
+ _json["items"] = commons.mapMap(items, (item) => (item).toJson());
+ }
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (nextPageToken != null) {
+ _json["nextPageToken"] = nextPageToken;
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
+ }
+ return _json;
+ }
+}
+
+/** A list of InstanceGroup resources. */
+class InstanceGroupList {
+ /**
+ * [Output Only] A unique identifier for this list of instance groups. The
+ * server generates this identifier.
+ */
+ core.String id;
+ /** A list of instance groups. */
+ core.List<InstanceGroup> items;
+ /**
+ * [Output Only] The resource type, which is always compute#instanceGroupList
+ * for instance group lists.
+ */
+ core.String kind;
+ /**
+ * [Output Only] This token allows you to get the next page of results for
+ * list requests. If the number of results is larger than maxResults, use the
+ * nextPageToken as a value for the query parameter pageToken in the next list
+ * request. Subsequent list requests will have their own nextPageToken to
+ * continue paging through the results.
+ */
+ core.String nextPageToken;
+ /**
+ * [Output Only] The URL for this resource type. The server generates this
+ * URL.
+ */
+ core.String selfLink;
+
+ InstanceGroupList();
+
+ InstanceGroupList.fromJson(core.Map _json) {
+ if (_json.containsKey("id")) {
+ id = _json["id"];
+ }
+ if (_json.containsKey("items")) {
+ items = _json["items"].map((value) => new InstanceGroup.fromJson(value)).toList();
}
if (_json.containsKey("kind")) {
kind = _json["kind"];
@@ -16375,475 +18247,300 @@ class HttpHealthCheckList {
}
}
-/**
- * An HttpsHealthCheck resource. This resource defines a template for how
- * individual instances should be checked for health, via HTTPS.
- */
-class HttpsHealthCheck {
+class InstanceGroupManager {
/**
- * How often (in seconds) to send a health check. The default value is 5
- * seconds.
+ * The base instance name to use for instances in this group. The value must
+ * be 1-58 characters long. Instances are named by appending a hyphen and a
+ * random four-character string to the base instance name. The base instance
+ * name must comply with RFC1035.
+ */
+ core.String baseInstanceName;
+ /**
+ * [Output Only] The creation timestamp for this managed instance group in
+ * RFC3339 text format.
*/
- core.int checkIntervalSec;
- /** [Output Only] Creation timestamp in RFC3339 text format. */
core.String creationTimestamp;
/**
+ * [Output Only] The list of instance actions and the number of instances in
+ * this managed instance group that are scheduled for each of those actions.
+ */
+ InstanceGroupManagerActionsSummary currentActions;
+ /**
* An optional description of this resource. Provide this property when you
* create the resource.
*/
core.String description;
/**
- * A so-far unhealthy instance will be marked healthy after this many
- * consecutive successes. The default value is 2.
+ * [Output Only] The fingerprint of the resource data. You can use this
+ * optional field for optimistic locking when you update the resource.
*/
- core.int healthyThreshold;
+ core.String fingerprint;
+ core.List<core.int> get fingerprintAsBytes {
+ return convert.BASE64.decode(fingerprint);
+ }
+
+ void set fingerprintAsBytes(core.List<core.int> _bytes) {
+ fingerprint = convert.BASE64.encode(_bytes).replaceAll("/", "_").replaceAll("+", "-");
+ }
/**
- * The value of the host header in the HTTPS health check request. If left
- * empty (default value), the public IP on behalf of which this health check
- * is performed will be used.
+ * [Output Only] A unique identifier for this resource type. The server
+ * generates this identifier.
*/
- core.String host;
+ core.String id;
+ /** [Output Only] The URL of the Instance Group resource. */
+ core.String instanceGroup;
/**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
+ * The URL of the instance template that is specified for this managed
+ * instance group. The group uses this template to create all new instances in
+ * the managed instance group.
+ */
+ core.String instanceTemplate;
+ /**
+ * [Output Only] The resource type, which is always
+ * compute#instanceGroupManager for managed instance groups.
*/
- core.String id;
- /** Type of the resource. */
core.String kind;
/**
- * Name of the resource. Provided by the client when the resource is created.
- * The name must be 1-63 characters long, and comply with RFC1035.
- * Specifically, the name must be 1-63 characters long and match the regular
- * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
- * be a lowercase letter, and all following characters must be a dash,
- * lowercase letter, or digit, except the last character, which cannot be a
- * dash.
+ * The name of the managed instance group. The name must be 1-63 characters
+ * long, and comply with RFC1035.
*/
core.String name;
/**
- * The TCP port number for the HTTPS health check request. The default value
- * is 443.
+ * Named ports configured for the Instance Groups complementary to this
+ * Instance Group Manager.
*/
- core.int port;
+ core.List<NamedPort> namedPorts;
/**
- * The request path of the HTTPS health check request. The default value is
- * "/".
+ * [Output Only] The URL for this managed instance group. The server defines
+ * this URL.
*/
- core.String requestPath;
- /** [Output Only] Server-defined URL for the resource. */
core.String selfLink;
/**
- * How long (in seconds) to wait before claiming failure. The default value is
- * 5 seconds. It is invalid for timeoutSec to have a greater value than
- * checkIntervalSec.
+ * The URLs for all TargetPool resources to which instances in the
+ * instanceGroup field are added. The target pools automatically apply to all
+ * of the instances in the managed instance group.
*/
- core.int timeoutSec;
+ core.List<core.String> targetPools;
/**
- * A so-far healthy instance will be marked unhealthy after this many
- * consecutive failures. The default value is 2.
+ * The target number of running instances for this managed instance group.
+ * Deleting or abandoning instances reduces this number. Resizing the group
+ * changes this number.
*/
- core.int unhealthyThreshold;
+ core.int targetSize;
+ /** The name of the zone where the managed instance group is located. */
+ core.String zone;
- HttpsHealthCheck();
+ InstanceGroupManager();
- HttpsHealthCheck.fromJson(core.Map _json) {
- if (_json.containsKey("checkIntervalSec")) {
- checkIntervalSec = _json["checkIntervalSec"];
+ InstanceGroupManager.fromJson(core.Map _json) {
+ if (_json.containsKey("baseInstanceName")) {
+ baseInstanceName = _json["baseInstanceName"];
}
if (_json.containsKey("creationTimestamp")) {
creationTimestamp = _json["creationTimestamp"];
}
+ if (_json.containsKey("currentActions")) {
+ currentActions = new InstanceGroupManagerActionsSummary.fromJson(_json["currentActions"]);
+ }
if (_json.containsKey("description")) {
description = _json["description"];
}
- if (_json.containsKey("healthyThreshold")) {
- healthyThreshold = _json["healthyThreshold"];
- }
- if (_json.containsKey("host")) {
- host = _json["host"];
+ if (_json.containsKey("fingerprint")) {
+ fingerprint = _json["fingerprint"];
}
if (_json.containsKey("id")) {
id = _json["id"];
}
+ if (_json.containsKey("instanceGroup")) {
+ instanceGroup = _json["instanceGroup"];
+ }
+ if (_json.containsKey("instanceTemplate")) {
+ instanceTemplate = _json["instanceTemplate"];
+ }
if (_json.containsKey("kind")) {
kind = _json["kind"];
}
if (_json.containsKey("name")) {
name = _json["name"];
}
- if (_json.containsKey("port")) {
- port = _json["port"];
- }
- if (_json.containsKey("requestPath")) {
- requestPath = _json["requestPath"];
+ if (_json.containsKey("namedPorts")) {
+ namedPorts = _json["namedPorts"].map((value) => new NamedPort.fromJson(value)).toList();
}
if (_json.containsKey("selfLink")) {
selfLink = _json["selfLink"];
}
- if (_json.containsKey("timeoutSec")) {
- timeoutSec = _json["timeoutSec"];
+ if (_json.containsKey("targetPools")) {
+ targetPools = _json["targetPools"];
}
- if (_json.containsKey("unhealthyThreshold")) {
- unhealthyThreshold = _json["unhealthyThreshold"];
+ if (_json.containsKey("targetSize")) {
+ targetSize = _json["targetSize"];
+ }
+ if (_json.containsKey("zone")) {
+ zone = _json["zone"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (checkIntervalSec != null) {
- _json["checkIntervalSec"] = checkIntervalSec;
+ if (baseInstanceName != null) {
+ _json["baseInstanceName"] = baseInstanceName;
}
if (creationTimestamp != null) {
_json["creationTimestamp"] = creationTimestamp;
}
+ if (currentActions != null) {
+ _json["currentActions"] = (currentActions).toJson();
+ }
if (description != null) {
_json["description"] = description;
}
- if (healthyThreshold != null) {
- _json["healthyThreshold"] = healthyThreshold;
- }
- if (host != null) {
- _json["host"] = host;
+ if (fingerprint != null) {
+ _json["fingerprint"] = fingerprint;
}
if (id != null) {
_json["id"] = id;
}
+ if (instanceGroup != null) {
+ _json["instanceGroup"] = instanceGroup;
+ }
+ if (instanceTemplate != null) {
+ _json["instanceTemplate"] = instanceTemplate;
+ }
if (kind != null) {
_json["kind"] = kind;
}
if (name != null) {
_json["name"] = name;
}
- if (port != null) {
- _json["port"] = port;
- }
- if (requestPath != null) {
- _json["requestPath"] = requestPath;
- }
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
- }
- if (timeoutSec != null) {
- _json["timeoutSec"] = timeoutSec;
- }
- if (unhealthyThreshold != null) {
- _json["unhealthyThreshold"] = unhealthyThreshold;
- }
- return _json;
- }
-}
-
-/** Contains a list of HttpsHealthCheck resources. */
-class HttpsHealthCheckList {
- /**
- * [Output Only] Unique identifier for the resource; defined by the server.
- */
- core.String id;
- /** A list of HttpsHealthCheck resources. */
- core.List<HttpsHealthCheck> items;
- /** Type of resource. */
- core.String kind;
- /**
- * [Output Only] This token allows you to get the next page of results for
- * list requests. If the number of results is larger than maxResults, use the
- * nextPageToken as a value for the query parameter pageToken in the next list
- * request. Subsequent list requests will have their own nextPageToken to
- * continue paging through the results.
- */
- core.String nextPageToken;
- /** [Output Only] Server-defined URL for this resource. */
- core.String selfLink;
-
- HttpsHealthCheckList();
-
- HttpsHealthCheckList.fromJson(core.Map _json) {
- if (_json.containsKey("id")) {
- id = _json["id"];
- }
- if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new HttpsHealthCheck.fromJson(value)).toList();
- }
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
- }
- if (_json.containsKey("nextPageToken")) {
- nextPageToken = _json["nextPageToken"];
- }
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
- }
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (id != null) {
- _json["id"] = id;
- }
- if (items != null) {
- _json["items"] = items.map((value) => (value).toJson()).toList();
- }
- if (kind != null) {
- _json["kind"] = kind;
- }
- if (nextPageToken != null) {
- _json["nextPageToken"] = nextPageToken;
+ if (namedPorts != null) {
+ _json["namedPorts"] = namedPorts.map((value) => (value).toJson()).toList();
}
if (selfLink != null) {
_json["selfLink"] = selfLink;
}
- return _json;
- }
-}
-
-/** The parameters of the raw disk image. */
-class ImageRawDisk {
- /**
- * The format used to encode and transmit the block device, which should be
- * TAR. This is just a container and transmission format and not a runtime
- * format. Provided by the client when the disk image is created.
- * Possible string values are:
- * - "TAR"
- */
- core.String containerType;
- /**
- * An optional SHA1 checksum of the disk image before unpackaging; provided by
- * the client when the disk image is created.
- */
- core.String sha1Checksum;
- /**
- * The full Google Cloud Storage URL where the disk image is stored. You must
- * provide either this property or the sourceDisk property but not both.
- */
- core.String source;
-
- ImageRawDisk();
-
- ImageRawDisk.fromJson(core.Map _json) {
- if (_json.containsKey("containerType")) {
- containerType = _json["containerType"];
- }
- if (_json.containsKey("sha1Checksum")) {
- sha1Checksum = _json["sha1Checksum"];
- }
- if (_json.containsKey("source")) {
- source = _json["source"];
- }
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (containerType != null) {
- _json["containerType"] = containerType;
+ if (targetPools != null) {
+ _json["targetPools"] = targetPools;
}
- if (sha1Checksum != null) {
- _json["sha1Checksum"] = sha1Checksum;
+ if (targetSize != null) {
+ _json["targetSize"] = targetSize;
}
- if (source != null) {
- _json["source"] = source;
+ if (zone != null) {
+ _json["zone"] = zone;
}
return _json;
}
}
-/** An Image resource. */
-class Image {
- /**
- * Size of the image tar.gz archive stored in Google Cloud Storage (in bytes).
- */
- core.String archiveSizeBytes;
- /** [Output Only] Creation timestamp in RFC3339 text format. */
- core.String creationTimestamp;
- /** The deprecation status associated with this image. */
- DeprecationStatus deprecated;
- /**
- * An optional description of this resource. Provide this property when you
- * create the resource.
- */
- core.String description;
- /** Size of the image when restored onto a persistent disk (in GB). */
- core.String diskSizeGb;
+class InstanceGroupManagerActionsSummary {
/**
- * The name of the image family to which this image belongs. You can create
- * disks by specifying an image family instead of a specific image name. The
- * image family always returns its latest image that is not deprecated.
+ * [Output Only] The total number of instances in the managed instance group
+ * that are scheduled to be abandoned. Abandoning an instance removes it from
+ * the managed instance group without deleting it.
*/
- core.String family;
+ core.int abandoning;
/**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
+ * [Output Only] The number of instances in the managed instance group that
+ * are scheduled to be created or are currently being created. If the group
+ * fails to create one of these instances, it tries again until it creates the
+ * instance successfully.
*/
- core.String id;
- /** [Output Only] Type of the resource. Always compute#image for images. */
- core.String kind;
- /** Any applicable publicly visible licenses. */
- core.List<core.String> licenses;
+ core.int creating;
/**
- * Name of the resource; provided by the client when the resource is created.
- * The name must be 1-63 characters long, and comply with RFC1035.
- * Specifically, the name must be 1-63 characters long and match the regular
- * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
- * be a lowercase letter, and all following characters must be a dash,
- * lowercase letter, or digit, except the last character, which cannot be a
- * dash.
+ * [Output Only] The number of instances in the managed instance group that
+ * are scheduled to be deleted or are currently being deleted.
*/
- core.String name;
- /** The parameters of the raw disk image. */
- ImageRawDisk rawDisk;
- /** [Output Only] Server-defined URL for the resource. */
- core.String selfLink;
+ core.int deleting;
/**
- * URL of the The source disk used to create this image. This can be a full or
- * valid partial URL. You must provide either this property or the
- * rawDisk.source property but not both to create an image. For example, the
- * following are valid values:
- * -
- * https://www.googleapis.com/compute/v1/projects/project/zones/zone/disk/disk
- * - projects/project/zones/zone/disk/disk
- * - zones/zone/disks/disk
+ * [Output Only] The number of instances in the managed instance group that
+ * are running and have no scheduled actions.
*/
- core.String sourceDisk;
+ core.int none;
/**
- * The ID value of the disk used to create this image. This value may be used
- * to determine whether the image was taken from the current or a previous
- * instance of a given disk name.
+ * [Output Only] The number of instances in the managed instance group that
+ * are scheduled to be recreated or are currently being being recreated.
+ * Recreating an instance deletes the existing root persistent disk and
+ * creates a new disk from the image that is defined in the instance template.
*/
- core.String sourceDiskId;
+ core.int recreating;
/**
- * The type of the image used to create this disk. The default and only value
- * is RAW
- * Possible string values are:
- * - "RAW"
+ * [Output Only] The number of instances in the managed instance group that
+ * are being reconfigured with properties that do not require a restart or a
+ * recreate action. For example, setting or removing target pools for the
+ * instance.
*/
- core.String sourceType;
+ core.int refreshing;
/**
- * [Output Only] The status of the image. An image can be used to create other
- * resources, such as instances, only after the image has been successfully
- * created and the status is set to READY. Possible values are FAILED,
- * PENDING, or READY.
- * Possible string values are:
- * - "FAILED"
- * - "PENDING"
- * - "READY"
+ * [Output Only] The number of instances in the managed instance group that
+ * are scheduled to be restarted or are currently being restarted.
*/
- core.String status;
+ core.int restarting;
- Image();
+ InstanceGroupManagerActionsSummary();
- Image.fromJson(core.Map _json) {
- if (_json.containsKey("archiveSizeBytes")) {
- archiveSizeBytes = _json["archiveSizeBytes"];
- }
- if (_json.containsKey("creationTimestamp")) {
- creationTimestamp = _json["creationTimestamp"];
- }
- if (_json.containsKey("deprecated")) {
- deprecated = new DeprecationStatus.fromJson(_json["deprecated"]);
- }
- if (_json.containsKey("description")) {
- description = _json["description"];
- }
- if (_json.containsKey("diskSizeGb")) {
- diskSizeGb = _json["diskSizeGb"];
- }
- if (_json.containsKey("family")) {
- family = _json["family"];
- }
- if (_json.containsKey("id")) {
- id = _json["id"];
- }
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
- }
- if (_json.containsKey("licenses")) {
- licenses = _json["licenses"];
- }
- if (_json.containsKey("name")) {
- name = _json["name"];
+ InstanceGroupManagerActionsSummary.fromJson(core.Map _json) {
+ if (_json.containsKey("abandoning")) {
+ abandoning = _json["abandoning"];
}
- if (_json.containsKey("rawDisk")) {
- rawDisk = new ImageRawDisk.fromJson(_json["rawDisk"]);
+ if (_json.containsKey("creating")) {
+ creating = _json["creating"];
}
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
+ if (_json.containsKey("deleting")) {
+ deleting = _json["deleting"];
}
- if (_json.containsKey("sourceDisk")) {
- sourceDisk = _json["sourceDisk"];
+ if (_json.containsKey("none")) {
+ none = _json["none"];
}
- if (_json.containsKey("sourceDiskId")) {
- sourceDiskId = _json["sourceDiskId"];
+ if (_json.containsKey("recreating")) {
+ recreating = _json["recreating"];
}
- if (_json.containsKey("sourceType")) {
- sourceType = _json["sourceType"];
+ if (_json.containsKey("refreshing")) {
+ refreshing = _json["refreshing"];
}
- if (_json.containsKey("status")) {
- status = _json["status"];
+ if (_json.containsKey("restarting")) {
+ restarting = _json["restarting"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (archiveSizeBytes != null) {
- _json["archiveSizeBytes"] = archiveSizeBytes;
- }
- if (creationTimestamp != null) {
- _json["creationTimestamp"] = creationTimestamp;
- }
- if (deprecated != null) {
- _json["deprecated"] = (deprecated).toJson();
- }
- if (description != null) {
- _json["description"] = description;
- }
- if (diskSizeGb != null) {
- _json["diskSizeGb"] = diskSizeGb;
- }
- if (family != null) {
- _json["family"] = family;
- }
- if (id != null) {
- _json["id"] = id;
- }
- if (kind != null) {
- _json["kind"] = kind;
- }
- if (licenses != null) {
- _json["licenses"] = licenses;
- }
- if (name != null) {
- _json["name"] = name;
+ if (abandoning != null) {
+ _json["abandoning"] = abandoning;
}
- if (rawDisk != null) {
- _json["rawDisk"] = (rawDisk).toJson();
+ if (creating != null) {
+ _json["creating"] = creating;
}
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
+ if (deleting != null) {
+ _json["deleting"] = deleting;
}
- if (sourceDisk != null) {
- _json["sourceDisk"] = sourceDisk;
+ if (none != null) {
+ _json["none"] = none;
}
- if (sourceDiskId != null) {
- _json["sourceDiskId"] = sourceDiskId;
+ if (recreating != null) {
+ _json["recreating"] = recreating;
}
- if (sourceType != null) {
- _json["sourceType"] = sourceType;
+ if (refreshing != null) {
+ _json["refreshing"] = refreshing;
}
- if (status != null) {
- _json["status"] = status;
+ if (restarting != null) {
+ _json["restarting"] = restarting;
}
return _json;
}
}
-/** Contains a list of images. */
-class ImageList {
+class InstanceGroupManagerAggregatedList {
/**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
+ * [Output Only] A unique identifier for this aggregated list of managed
+ * instance groups. The server generates this identifier.
*/
core.String id;
- /** [Output Only] A list of Image resources. */
- core.List<Image> items;
- /** Type of resource. */
+ /** [Output Only] A map of filtered managed instance group lists. */
+ core.Map<core.String, InstanceGroupManagersScopedList> items;
+ /**
+ * [Output Only] The resource type, which is always
+ * compute#instanceGroupManagerAggregatedList for an aggregated list of
+ * managed instance groups.
+ */
core.String kind;
/**
* [Output Only] This token allows you to get the next page of results for
@@ -16853,17 +18550,20 @@ class ImageList {
* continue paging through the results.
*/
core.String nextPageToken;
- /** [Output Only] Server-defined URL for this resource. */
+ /**
+ * [Output Only] The URL for this resource type. The server generates this
+ * URL.
+ */
core.String selfLink;
- ImageList();
+ InstanceGroupManagerAggregatedList();
- ImageList.fromJson(core.Map _json) {
+ InstanceGroupManagerAggregatedList.fromJson(core.Map _json) {
if (_json.containsKey("id")) {
id = _json["id"];
}
if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new Image.fromJson(value)).toList();
+ items = commons.mapMap(_json["items"], (item) => new InstanceGroupManagersScopedList.fromJson(item));
}
if (_json.containsKey("kind")) {
kind = _json["kind"];
@@ -16882,7 +18582,7 @@ class ImageList {
_json["id"] = id;
}
if (items != null) {
- _json["items"] = items.map((value) => (value).toJson()).toList();
+ _json["items"] = commons.mapMap(items, (item) => (item).toJson());
}
if (kind != null) {
_json["kind"] = kind;
@@ -16897,466 +18597,408 @@ class ImageList {
}
}
-/** An Instance resource. */
-class Instance {
- /**
- * Allows this instance to send and receive packets with non-matching
- * destination or source IPs. This is required if you plan to use this
- * instance to forward routes. For more information, see Enabling IP
- * Forwarding.
- */
- core.bool canIpForward;
- /** [Output Only] The CPU platform used by this instance. */
- core.String cpuPlatform;
- /** [Output Only] Creation timestamp in RFC3339 text format. */
- core.String creationTimestamp;
- /**
- * An optional description of this resource. Provide this property when you
- * create the resource.
- */
- core.String description;
- /**
- * Array of disks associated with this instance. Persistent disks must be
- * created before you can assign them.
- */
- core.List<AttachedDisk> disks;
- /**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
- */
- core.String id;
- /**
- * [Output Only] Type of the resource. Always compute#instance for instances.
- */
- core.String kind;
- /**
- * Full or partial URL of the machine type resource to use for this instance,
- * in the format: zones/zone/machineTypes/machine-type. This is provided by
- * the client when the instance is created. For example, the following is a
- * valid partial url to a predefined machine type:
- *
- * zones/us-central1-f/machineTypes/n1-standard-1
- *
- * To create a custom machine type, provide a URL to a machine type in the
- * following format, where CPUS is 1 or an even number up to 32 (2, 4, 6, ...
- * 24, etc), and MEMORY is the total memory for this instance. Memory must be
- * a multiple of 256 MB and must be supplied in MB (e.g. 5 GB of memory is
- * 5120 MB):
- *
- * zones/zone/machineTypes/custom-CPUS-MEMORY
- *
- * For example: zones/us-central1-f/machineTypes/custom-4-5120
- *
- * For a full list of restrictions, read the Specifications for custom machine
- * types.
- */
- core.String machineType;
- /**
- * The metadata key/value pairs assigned to this instance. This includes
- * custom metadata and predefined keys.
- */
- Metadata metadata;
- /**
- * The name of the resource, provided by the client when initially creating
- * the resource. The resource name must be 1-63 characters long, and comply
- * with RFC1035. Specifically, the name must be 1-63 characters long and match
- * the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first
- * character must be a lowercase letter, and all following characters must be
- * a dash, lowercase letter, or digit, except the last character, which cannot
- * be a dash.
- */
- core.String name;
- /**
- * An array of configurations for this interface. This specifies how this
- * interface is configured to interact with other network services, such as
- * connecting to the internet.
- */
- core.List<NetworkInterface> networkInterfaces;
- /** Scheduling options for this instance. */
- Scheduling scheduling;
- /** [Output Only] Server-defined URL for this resource. */
- core.String selfLink;
+/** [Output Only] A list of managed instance groups. */
+class InstanceGroupManagerList {
/**
- * A list of service accounts, with their specified scopes, authorized for
- * this instance. Service accounts generate access tokens that can be accessed
- * through the metadata server and used to authenticate applications on the
- * instance. See Authenticating from Google Compute Engine for more
- * information.
+ * [Output Only] A unique identifier for this resource type. The server
+ * generates this identifier.
*/
- core.List<ServiceAccount> serviceAccounts;
- /**
- * [Output Only] The status of the instance. One of the following values:
- * PROVISIONING, STAGING, RUNNING, STOPPING, and TERMINATED.
- * Possible string values are:
- * - "PROVISIONING"
- * - "RUNNING"
- * - "STAGING"
- * - "STOPPED"
- * - "STOPPING"
- * - "SUSPENDED"
- * - "SUSPENDING"
- * - "TERMINATED"
+ core.String id;
+ /** [Output Only] A list of managed instance groups. */
+ core.List<InstanceGroupManager> items;
+ /**
+ * [Output Only] The resource type, which is always
+ * compute#instanceGroupManagerList for a list of managed instance groups.
*/
- core.String status;
- /** [Output Only] An optional, human-readable explanation of the status. */
- core.String statusMessage;
+ core.String kind;
/**
- * A list of tags to apply to this instance. Tags are used to identify valid
- * sources or targets for network firewalls and are specified by the client
- * during instance creation. The tags can be later modified by the setTags
- * method. Each tag within the list must comply with RFC1035.
+ * [Output Only] This token allows you to get the next page of results for
+ * list requests. If the number of results is larger than maxResults, use the
+ * nextPageToken as a value for the query parameter pageToken in the next list
+ * request. Subsequent list requests will have their own nextPageToken to
+ * continue paging through the results.
*/
- Tags tags;
- /** [Output Only] URL of the zone where the instance resides. */
- core.String zone;
+ core.String nextPageToken;
+ /**
+ * [Output Only] The URL for this resource type. The server generates this
+ * URL.
+ */
+ core.String selfLink;
- Instance();
+ InstanceGroupManagerList();
- Instance.fromJson(core.Map _json) {
- if (_json.containsKey("canIpForward")) {
- canIpForward = _json["canIpForward"];
- }
- if (_json.containsKey("cpuPlatform")) {
- cpuPlatform = _json["cpuPlatform"];
- }
- if (_json.containsKey("creationTimestamp")) {
- creationTimestamp = _json["creationTimestamp"];
- }
- if (_json.containsKey("description")) {
- description = _json["description"];
- }
- if (_json.containsKey("disks")) {
- disks = _json["disks"].map((value) => new AttachedDisk.fromJson(value)).toList();
- }
+ InstanceGroupManagerList.fromJson(core.Map _json) {
if (_json.containsKey("id")) {
id = _json["id"];
}
+ if (_json.containsKey("items")) {
+ items = _json["items"].map((value) => new InstanceGroupManager.fromJson(value)).toList();
+ }
if (_json.containsKey("kind")) {
kind = _json["kind"];
}
- if (_json.containsKey("machineType")) {
- machineType = _json["machineType"];
- }
- if (_json.containsKey("metadata")) {
- metadata = new Metadata.fromJson(_json["metadata"]);
- }
- if (_json.containsKey("name")) {
- name = _json["name"];
- }
- if (_json.containsKey("networkInterfaces")) {
- networkInterfaces = _json["networkInterfaces"].map((value) => new NetworkInterface.fromJson(value)).toList();
- }
- if (_json.containsKey("scheduling")) {
- scheduling = new Scheduling.fromJson(_json["scheduling"]);
+ if (_json.containsKey("nextPageToken")) {
+ nextPageToken = _json["nextPageToken"];
}
if (_json.containsKey("selfLink")) {
selfLink = _json["selfLink"];
}
- if (_json.containsKey("serviceAccounts")) {
- serviceAccounts = _json["serviceAccounts"].map((value) => new ServiceAccount.fromJson(value)).toList();
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (id != null) {
+ _json["id"] = id;
}
- if (_json.containsKey("status")) {
- status = _json["status"];
+ if (items != null) {
+ _json["items"] = items.map((value) => (value).toJson()).toList();
}
- if (_json.containsKey("statusMessage")) {
- statusMessage = _json["statusMessage"];
+ if (kind != null) {
+ _json["kind"] = kind;
}
- if (_json.containsKey("tags")) {
- tags = new Tags.fromJson(_json["tags"]);
+ if (nextPageToken != null) {
+ _json["nextPageToken"] = nextPageToken;
}
- if (_json.containsKey("zone")) {
- zone = _json["zone"];
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
+ }
+ return _json;
+ }
+}
+
+class InstanceGroupManagersAbandonInstancesRequest {
+ /**
+ * The URL for one or more instances to abandon from the managed instance
+ * group.
+ */
+ core.List<core.String> instances;
+
+ InstanceGroupManagersAbandonInstancesRequest();
+
+ InstanceGroupManagersAbandonInstancesRequest.fromJson(core.Map _json) {
+ if (_json.containsKey("instances")) {
+ instances = _json["instances"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (canIpForward != null) {
- _json["canIpForward"] = canIpForward;
- }
- if (cpuPlatform != null) {
- _json["cpuPlatform"] = cpuPlatform;
+ if (instances != null) {
+ _json["instances"] = instances;
}
- if (creationTimestamp != null) {
- _json["creationTimestamp"] = creationTimestamp;
+ return _json;
+ }
+}
+
+class InstanceGroupManagersDeleteInstancesRequest {
+ /**
+ * The list of instances to delete from this managed instance group. Specify
+ * one or more instance URLs.
+ */
+ core.List<core.String> instances;
+
+ InstanceGroupManagersDeleteInstancesRequest();
+
+ InstanceGroupManagersDeleteInstancesRequest.fromJson(core.Map _json) {
+ if (_json.containsKey("instances")) {
+ instances = _json["instances"];
}
- if (description != null) {
- _json["description"] = description;
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (instances != null) {
+ _json["instances"] = instances;
}
- if (disks != null) {
- _json["disks"] = disks.map((value) => (value).toJson()).toList();
+ return _json;
+ }
+}
+
+class InstanceGroupManagersListManagedInstancesResponse {
+ /** [Output Only] The list of instances in the managed instance group. */
+ core.List<ManagedInstance> managedInstances;
+
+ InstanceGroupManagersListManagedInstancesResponse();
+
+ InstanceGroupManagersListManagedInstancesResponse.fromJson(core.Map _json) {
+ if (_json.containsKey("managedInstances")) {
+ managedInstances = _json["managedInstances"].map((value) => new ManagedInstance.fromJson(value)).toList();
}
- if (id != null) {
- _json["id"] = id;
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (managedInstances != null) {
+ _json["managedInstances"] = managedInstances.map((value) => (value).toJson()).toList();
}
- if (kind != null) {
- _json["kind"] = kind;
+ return _json;
+ }
+}
+
+class InstanceGroupManagersRecreateInstancesRequest {
+ /** The URL for one or more instances to recreate. */
+ core.List<core.String> instances;
+
+ InstanceGroupManagersRecreateInstancesRequest();
+
+ InstanceGroupManagersRecreateInstancesRequest.fromJson(core.Map _json) {
+ if (_json.containsKey("instances")) {
+ instances = _json["instances"];
}
- if (machineType != null) {
- _json["machineType"] = machineType;
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (instances != null) {
+ _json["instances"] = instances;
}
- if (metadata != null) {
- _json["metadata"] = (metadata).toJson();
+ return _json;
+ }
+}
+
+class InstanceGroupManagersScopedListWarningData {
+ /**
+ * [Output Only] A key that provides more detail on the warning being
+ * returned. For example, for warnings where there are no results in a list
+ * request for a particular zone, this key might be scope and the key value
+ * might be the zone name. Other examples might be a key indicating a
+ * deprecated resource and a suggested replacement, or a warning about invalid
+ * network settings (for example, if an instance attempts to perform IP
+ * forwarding but is not enabled for IP forwarding).
+ */
+ core.String key;
+ /** [Output Only] A warning data value corresponding to the key. */
+ core.String value;
+
+ InstanceGroupManagersScopedListWarningData();
+
+ InstanceGroupManagersScopedListWarningData.fromJson(core.Map _json) {
+ if (_json.containsKey("key")) {
+ key = _json["key"];
}
- if (name != null) {
- _json["name"] = name;
+ if (_json.containsKey("value")) {
+ value = _json["value"];
}
- if (networkInterfaces != null) {
- _json["networkInterfaces"] = networkInterfaces.map((value) => (value).toJson()).toList();
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (key != null) {
+ _json["key"] = key;
}
- if (scheduling != null) {
- _json["scheduling"] = (scheduling).toJson();
+ if (value != null) {
+ _json["value"] = value;
}
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
+ return _json;
+ }
+}
+
+/**
+ * [Output Only] The warning that replaces the list of managed instance groups
+ * when the list is empty.
+ */
+class InstanceGroupManagersScopedListWarning {
+ /**
+ * [Output Only] A warning code, if applicable. For example, Compute Engine
+ * returns NO_RESULTS_ON_PAGE if there are no results in the response.
+ * Possible string values are:
+ * - "CLEANUP_FAILED"
+ * - "DEPRECATED_RESOURCE_USED"
+ * - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
+ * - "INJECTED_KERNELS_DEPRECATED"
+ * - "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
+ * - "NEXT_HOP_CANNOT_IP_FORWARD"
+ * - "NEXT_HOP_INSTANCE_NOT_FOUND"
+ * - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
+ * - "NEXT_HOP_NOT_RUNNING"
+ * - "NOT_CRITICAL_ERROR"
+ * - "NO_RESULTS_ON_PAGE"
+ * - "REQUIRED_TOS_AGREEMENT"
+ * - "RESOURCE_NOT_DELETED"
+ * - "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
+ * - "UNREACHABLE"
+ */
+ core.String code;
+ /**
+ * [Output Only] Metadata about this warning in key: value format. For
+ * example:
+ * "data": [ { "key": "scope", "value": "zones/us-east1-d" }
+ */
+ core.List<InstanceGroupManagersScopedListWarningData> data;
+ /** [Output Only] A human-readable description of the warning code. */
+ core.String message;
+
+ InstanceGroupManagersScopedListWarning();
+
+ InstanceGroupManagersScopedListWarning.fromJson(core.Map _json) {
+ if (_json.containsKey("code")) {
+ code = _json["code"];
}
- if (serviceAccounts != null) {
- _json["serviceAccounts"] = serviceAccounts.map((value) => (value).toJson()).toList();
+ if (_json.containsKey("data")) {
+ data = _json["data"].map((value) => new InstanceGroupManagersScopedListWarningData.fromJson(value)).toList();
}
- if (status != null) {
- _json["status"] = status;
+ if (_json.containsKey("message")) {
+ message = _json["message"];
}
- if (statusMessage != null) {
- _json["statusMessage"] = statusMessage;
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (code != null) {
+ _json["code"] = code;
}
- if (tags != null) {
- _json["tags"] = (tags).toJson();
+ if (data != null) {
+ _json["data"] = data.map((value) => (value).toJson()).toList();
}
- if (zone != null) {
- _json["zone"] = zone;
+ if (message != null) {
+ _json["message"] = message;
}
return _json;
}
}
-class InstanceAggregatedList {
- /**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
- */
- core.String id;
- /** [Output Only] A map of scoped instance lists. */
- core.Map<core.String, InstancesScopedList> items;
+class InstanceGroupManagersScopedList {
/**
- * [Output Only] Type of resource. Always compute#instanceAggregatedList for
- * aggregated lists of Instance resources.
+ * [Output Only] The list of managed instance groups that are contained in the
+ * specified project and zone.
*/
- core.String kind;
+ core.List<InstanceGroupManager> instanceGroupManagers;
/**
- * [Output Only] This token allows you to get the next page of results for
- * list requests. If the number of results is larger than maxResults, use the
- * nextPageToken as a value for the query parameter pageToken in the next list
- * request. Subsequent list requests will have their own nextPageToken to
- * continue paging through the results.
+ * [Output Only] The warning that replaces the list of managed instance groups
+ * when the list is empty.
*/
- core.String nextPageToken;
- /** [Output Only] Server-defined URL for this resource. */
- core.String selfLink;
+ InstanceGroupManagersScopedListWarning warning;
- InstanceAggregatedList();
+ InstanceGroupManagersScopedList();
- InstanceAggregatedList.fromJson(core.Map _json) {
- if (_json.containsKey("id")) {
- id = _json["id"];
- }
- if (_json.containsKey("items")) {
- items = commons.mapMap(_json["items"], (item) => new InstancesScopedList.fromJson(item));
- }
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
- }
- if (_json.containsKey("nextPageToken")) {
- nextPageToken = _json["nextPageToken"];
+ InstanceGroupManagersScopedList.fromJson(core.Map _json) {
+ if (_json.containsKey("instanceGroupManagers")) {
+ instanceGroupManagers = _json["instanceGroupManagers"].map((value) => new InstanceGroupManager.fromJson(value)).toList();
}
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
+ if (_json.containsKey("warning")) {
+ warning = new InstanceGroupManagersScopedListWarning.fromJson(_json["warning"]);
}
}
core.Map toJson() {
var _json = new core.Map();
- if (id != null) {
- _json["id"] = id;
- }
- if (items != null) {
- _json["items"] = commons.mapMap(items, (item) => (item).toJson());
- }
- if (kind != null) {
- _json["kind"] = kind;
- }
- if (nextPageToken != null) {
- _json["nextPageToken"] = nextPageToken;
+ if (instanceGroupManagers != null) {
+ _json["instanceGroupManagers"] = instanceGroupManagers.map((value) => (value).toJson()).toList();
}
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
+ if (warning != null) {
+ _json["warning"] = (warning).toJson();
}
return _json;
}
}
-class InstanceGroup {
- /**
- * [Output Only] The creation timestamp for this instance group in RFC3339
- * text format.
- */
- core.String creationTimestamp;
+class InstanceGroupManagersSetInstanceTemplateRequest {
/**
- * An optional description of this resource. Provide this property when you
- * create the resource.
+ * The URL of the instance template that is specified for this managed
+ * instance group. The group uses this template to create all new instances in
+ * the managed instance group.
*/
- core.String description;
+ core.String instanceTemplate;
+
+ InstanceGroupManagersSetInstanceTemplateRequest();
+
+ InstanceGroupManagersSetInstanceTemplateRequest.fromJson(core.Map _json) {
+ if (_json.containsKey("instanceTemplate")) {
+ instanceTemplate = _json["instanceTemplate"];
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (instanceTemplate != null) {
+ _json["instanceTemplate"] = instanceTemplate;
+ }
+ return _json;
+ }
+}
+
+class InstanceGroupManagersSetTargetPoolsRequest {
/**
- * [Output Only] The fingerprint of the named ports. The system uses this
- * fingerprint to detect conflicts when multiple users change the named ports
- * concurrently.
+ * The fingerprint of the target pools information. Use this optional property
+ * to prevent conflicts when multiple users change the target pools settings
+ * concurrently. Obtain the fingerprint with the instanceGroupManagers.get
+ * method. Then, include the fingerprint in your request to ensure that you do
+ * not overwrite changes that were applied from another concurrent request.
*/
core.String fingerprint;
core.List<core.int> get fingerprintAsBytes {
- return crypto.CryptoUtils.base64StringToBytes(fingerprint);
+ return convert.BASE64.decode(fingerprint);
}
void set fingerprintAsBytes(core.List<core.int> _bytes) {
- fingerprint = crypto.CryptoUtils.bytesToBase64(_bytes, urlSafe: true);
+ fingerprint = convert.BASE64.encode(_bytes).replaceAll("/", "_").replaceAll("+", "-");
}
/**
- * [Output Only] A unique identifier for this resource type. The server
- * generates this identifier.
- */
- core.String id;
- /**
- * [Output Only] The resource type, which is always compute#instanceGroup for
- * instance groups.
- */
- core.String kind;
- /**
- * The name of the instance group. The name must be 1-63 characters long, and
- * comply with RFC1035.
- */
- core.String name;
- /**
- * Assigns a name to a port number. For example: {name: "http", port: 80}
- *
- * This allows the system to reference ports by the assigned name instead of a
- * port number. Named ports can also contain multiple ports. For example:
- * [{name: "http", port: 80},{name: "http", port: 8080}]
- *
- * Named ports apply to all instances in this instance group.
- */
- core.List<NamedPort> namedPorts;
- /**
- * The URL of the network to which all instances in the instance group belong.
- */
- core.String network;
- /**
- * [Output Only] The URL for this instance group. The server generates this
- * URL.
- */
- core.String selfLink;
- /** [Output Only] The total number of instances in the instance group. */
- core.int size;
- /**
- * The URL of the subnetwork to which all instances in the instance group
- * belong.
+ * The list of target pool URLs that instances in this managed instance group
+ * belong to. The managed instance group applies these target pools to all of
+ * the instances in the group. Existing instances and new instances in the
+ * group all receive these target pool settings.
*/
- core.String subnetwork;
- /** [Output Only] The URL of the zone where the instance group is located. */
- core.String zone;
+ core.List<core.String> targetPools;
- InstanceGroup();
+ InstanceGroupManagersSetTargetPoolsRequest();
- InstanceGroup.fromJson(core.Map _json) {
- if (_json.containsKey("creationTimestamp")) {
- creationTimestamp = _json["creationTimestamp"];
- }
- if (_json.containsKey("description")) {
- description = _json["description"];
- }
+ InstanceGroupManagersSetTargetPoolsRequest.fromJson(core.Map _json) {
if (_json.containsKey("fingerprint")) {
fingerprint = _json["fingerprint"];
}
- if (_json.containsKey("id")) {
- id = _json["id"];
- }
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
- }
- if (_json.containsKey("name")) {
- name = _json["name"];
- }
- if (_json.containsKey("namedPorts")) {
- namedPorts = _json["namedPorts"].map((value) => new NamedPort.fromJson(value)).toList();
- }
- if (_json.containsKey("network")) {
- network = _json["network"];
- }
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
- }
- if (_json.containsKey("size")) {
- size = _json["size"];
- }
- if (_json.containsKey("subnetwork")) {
- subnetwork = _json["subnetwork"];
- }
- if (_json.containsKey("zone")) {
- zone = _json["zone"];
+ if (_json.containsKey("targetPools")) {
+ targetPools = _json["targetPools"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (creationTimestamp != null) {
- _json["creationTimestamp"] = creationTimestamp;
- }
- if (description != null) {
- _json["description"] = description;
- }
- if (fingerprint != null) {
- _json["fingerprint"] = fingerprint;
- }
- if (id != null) {
- _json["id"] = id;
- }
- if (kind != null) {
- _json["kind"] = kind;
- }
- if (name != null) {
- _json["name"] = name;
- }
- if (namedPorts != null) {
- _json["namedPorts"] = namedPorts.map((value) => (value).toJson()).toList();
- }
- if (network != null) {
- _json["network"] = network;
- }
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
+ if (fingerprint != null) {
+ _json["fingerprint"] = fingerprint;
}
- if (size != null) {
- _json["size"] = size;
+ if (targetPools != null) {
+ _json["targetPools"] = targetPools;
}
- if (subnetwork != null) {
- _json["subnetwork"] = subnetwork;
+ return _json;
+ }
+}
+
+class InstanceGroupsAddInstancesRequest {
+ /** The list of instances to add to the instance group. */
+ core.List<InstanceReference> instances;
+
+ InstanceGroupsAddInstancesRequest();
+
+ InstanceGroupsAddInstancesRequest.fromJson(core.Map _json) {
+ if (_json.containsKey("instances")) {
+ instances = _json["instances"].map((value) => new InstanceReference.fromJson(value)).toList();
}
- if (zone != null) {
- _json["zone"] = zone;
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (instances != null) {
+ _json["instances"] = instances.map((value) => (value).toJson()).toList();
}
return _json;
}
}
-class InstanceGroupAggregatedList {
+class InstanceGroupsListInstances {
/**
- * [Output Only] A unique identifier for this aggregated list of instance
- * groups. The server generates this identifier.
+ * [Output Only] A unique identifier for this list of instance groups. The
+ * server generates this identifier.
*/
core.String id;
- /** A map of scoped instance group lists. */
- core.Map<core.String, InstanceGroupsScopedList> items;
+ /**
+ * [Output Only] A list of instances and any named ports that are assigned to
+ * those instances.
+ */
+ core.List<InstanceWithNamedPorts> items;
/**
* [Output Only] The resource type, which is always
- * compute#instanceGroupAggregatedList for aggregated lists of instance
- * groups.
+ * compute#instanceGroupsListInstances for lists of instance groups.
*/
core.String kind;
/**
@@ -17368,19 +19010,19 @@ class InstanceGroupAggregatedList {
*/
core.String nextPageToken;
/**
- * [Output Only] The URL for this resource type. The server generates this
- * URL.
+ * [Output Only] The URL for this list of instance groups. The server
+ * generates this URL.
*/
core.String selfLink;
- InstanceGroupAggregatedList();
+ InstanceGroupsListInstances();
- InstanceGroupAggregatedList.fromJson(core.Map _json) {
+ InstanceGroupsListInstances.fromJson(core.Map _json) {
if (_json.containsKey("id")) {
id = _json["id"];
}
if (_json.containsKey("items")) {
- items = commons.mapMap(_json["items"], (item) => new InstanceGroupsScopedList.fromJson(item));
+ items = _json["items"].map((value) => new InstanceWithNamedPorts.fromJson(value)).toList();
}
if (_json.containsKey("kind")) {
kind = _json["kind"];
@@ -17399,7 +19041,7 @@ class InstanceGroupAggregatedList {
_json["id"] = id;
}
if (items != null) {
- _json["items"] = commons.mapMap(items, (item) => (item).toJson());
+ _json["items"] = items.map((value) => (value).toJson()).toList();
}
if (kind != null) {
_json["kind"] = kind;
@@ -17414,437 +19056,245 @@ class InstanceGroupAggregatedList {
}
}
-/** A list of InstanceGroup resources. */
-class InstanceGroupList {
- /**
- * [Output Only] A unique identifier for this list of instance groups. The
- * server generates this identifier.
- */
- core.String id;
- /** A list of instance groups. */
- core.List<InstanceGroup> items;
- /**
- * [Output Only] The resource type, which is always compute#instanceGroupList
- * for instance group lists.
- */
- core.String kind;
- /**
- * [Output Only] This token allows you to get the next page of results for
- * list requests. If the number of results is larger than maxResults, use the
- * nextPageToken as a value for the query parameter pageToken in the next list
- * request. Subsequent list requests will have their own nextPageToken to
- * continue paging through the results.
- */
- core.String nextPageToken;
+class InstanceGroupsListInstancesRequest {
/**
- * [Output Only] The URL for this resource type. The server generates this
- * URL.
+ * A filter for the state of the instances in the instance group. Valid
+ * options are ALL or RUNNING. If you do not specify this parameter the list
+ * includes all instances regardless of their state.
+ * Possible string values are:
+ * - "ALL"
+ * - "RUNNING"
*/
- core.String selfLink;
+ core.String instanceState;
- InstanceGroupList();
+ InstanceGroupsListInstancesRequest();
- InstanceGroupList.fromJson(core.Map _json) {
- if (_json.containsKey("id")) {
- id = _json["id"];
- }
- if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new InstanceGroup.fromJson(value)).toList();
- }
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
- }
- if (_json.containsKey("nextPageToken")) {
- nextPageToken = _json["nextPageToken"];
- }
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
+ InstanceGroupsListInstancesRequest.fromJson(core.Map _json) {
+ if (_json.containsKey("instanceState")) {
+ instanceState = _json["instanceState"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (id != null) {
- _json["id"] = id;
- }
- if (items != null) {
- _json["items"] = items.map((value) => (value).toJson()).toList();
- }
- if (kind != null) {
- _json["kind"] = kind;
+ if (instanceState != null) {
+ _json["instanceState"] = instanceState;
}
- if (nextPageToken != null) {
- _json["nextPageToken"] = nextPageToken;
+ return _json;
+ }
+}
+
+class InstanceGroupsRemoveInstancesRequest {
+ /** The list of instances to remove from the instance group. */
+ core.List<InstanceReference> instances;
+
+ InstanceGroupsRemoveInstancesRequest();
+
+ InstanceGroupsRemoveInstancesRequest.fromJson(core.Map _json) {
+ if (_json.containsKey("instances")) {
+ instances = _json["instances"].map((value) => new InstanceReference.fromJson(value)).toList();
}
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (instances != null) {
+ _json["instances"] = instances.map((value) => (value).toJson()).toList();
}
return _json;
}
}
-class InstanceGroupManager {
- /**
- * The base instance name to use for instances in this group. The value must
- * be 1-58 characters long. Instances are named by appending a hyphen and a
- * random four-character string to the base instance name. The base instance
- * name must comply with RFC1035.
- */
- core.String baseInstanceName;
- /**
- * [Output Only] The creation timestamp for this managed instance group in
- * RFC3339 text format.
- */
- core.String creationTimestamp;
- /**
- * [Output Only] The list of instance actions and the number of instances in
- * this managed instance group that are scheduled for each of those actions.
- */
- InstanceGroupManagerActionsSummary currentActions;
- /**
- * An optional description of this resource. Provide this property when you
- * create the resource.
- */
- core.String description;
+class InstanceGroupsScopedListWarningData {
/**
- * [Output Only] The fingerprint of the resource data. You can use this
- * optional field for optimistic locking when you update the resource.
+ * [Output Only] A key that provides more detail on the warning being
+ * returned. For example, for warnings where there are no results in a list
+ * request for a particular zone, this key might be scope and the key value
+ * might be the zone name. Other examples might be a key indicating a
+ * deprecated resource and a suggested replacement, or a warning about invalid
+ * network settings (for example, if an instance attempts to perform IP
+ * forwarding but is not enabled for IP forwarding).
*/
- core.String fingerprint;
- core.List<core.int> get fingerprintAsBytes {
- return crypto.CryptoUtils.base64StringToBytes(fingerprint);
+ core.String key;
+ /** [Output Only] A warning data value corresponding to the key. */
+ core.String value;
+
+ InstanceGroupsScopedListWarningData();
+
+ InstanceGroupsScopedListWarningData.fromJson(core.Map _json) {
+ if (_json.containsKey("key")) {
+ key = _json["key"];
+ }
+ if (_json.containsKey("value")) {
+ value = _json["value"];
+ }
}
- void set fingerprintAsBytes(core.List<core.int> _bytes) {
- fingerprint = crypto.CryptoUtils.bytesToBase64(_bytes, urlSafe: true);
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (key != null) {
+ _json["key"] = key;
+ }
+ if (value != null) {
+ _json["value"] = value;
+ }
+ return _json;
}
+}
+
+/**
+ * [Output Only] An informational warning that replaces the list of instance
+ * groups when the list is empty.
+ */
+class InstanceGroupsScopedListWarning {
/**
- * [Output Only] A unique identifier for this resource type. The server
- * generates this identifier.
- */
- core.String id;
- /** [Output Only] The URL of the Instance Group resource. */
- core.String instanceGroup;
- /**
- * The URL of the instance template that is specified for this managed
- * instance group. The group uses this template to create all new instances in
- * the managed instance group.
- */
- core.String instanceTemplate;
- /**
- * [Output Only] The resource type, which is always
- * compute#instanceGroupManager for managed instance groups.
- */
- core.String kind;
- /**
- * The name of the managed instance group. The name must be 1-63 characters
- * long, and comply with RFC1035.
- */
- core.String name;
- /**
- * Named ports configured for the Instance Groups complementary to this
- * Instance Group Manager.
- */
- core.List<NamedPort> namedPorts;
- /**
- * [Output Only] The URL for this managed instance group. The server defines
- * this URL.
- */
- core.String selfLink;
- /**
- * The URLs for all TargetPool resources to which instances in the
- * instanceGroup field are added. The target pools automatically apply to all
- * of the instances in the managed instance group.
+ * [Output Only] A warning code, if applicable. For example, Compute Engine
+ * returns NO_RESULTS_ON_PAGE if there are no results in the response.
+ * Possible string values are:
+ * - "CLEANUP_FAILED"
+ * - "DEPRECATED_RESOURCE_USED"
+ * - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
+ * - "INJECTED_KERNELS_DEPRECATED"
+ * - "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
+ * - "NEXT_HOP_CANNOT_IP_FORWARD"
+ * - "NEXT_HOP_INSTANCE_NOT_FOUND"
+ * - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
+ * - "NEXT_HOP_NOT_RUNNING"
+ * - "NOT_CRITICAL_ERROR"
+ * - "NO_RESULTS_ON_PAGE"
+ * - "REQUIRED_TOS_AGREEMENT"
+ * - "RESOURCE_NOT_DELETED"
+ * - "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
+ * - "UNREACHABLE"
*/
- core.List<core.String> targetPools;
+ core.String code;
/**
- * The target number of running instances for this managed instance group.
- * Deleting or abandoning instances reduces this number. Resizing the group
- * changes this number.
+ * [Output Only] Metadata about this warning in key: value format. For
+ * example:
+ * "data": [ { "key": "scope", "value": "zones/us-east1-d" }
*/
- core.int targetSize;
- /** The name of the zone where the managed instance group is located. */
- core.String zone;
+ core.List<InstanceGroupsScopedListWarningData> data;
+ /** [Output Only] A human-readable description of the warning code. */
+ core.String message;
- InstanceGroupManager();
+ InstanceGroupsScopedListWarning();
- InstanceGroupManager.fromJson(core.Map _json) {
- if (_json.containsKey("baseInstanceName")) {
- baseInstanceName = _json["baseInstanceName"];
- }
- if (_json.containsKey("creationTimestamp")) {
- creationTimestamp = _json["creationTimestamp"];
- }
- if (_json.containsKey("currentActions")) {
- currentActions = new InstanceGroupManagerActionsSummary.fromJson(_json["currentActions"]);
- }
- if (_json.containsKey("description")) {
- description = _json["description"];
- }
- if (_json.containsKey("fingerprint")) {
- fingerprint = _json["fingerprint"];
- }
- if (_json.containsKey("id")) {
- id = _json["id"];
- }
- if (_json.containsKey("instanceGroup")) {
- instanceGroup = _json["instanceGroup"];
- }
- if (_json.containsKey("instanceTemplate")) {
- instanceTemplate = _json["instanceTemplate"];
- }
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
- }
- if (_json.containsKey("name")) {
- name = _json["name"];
- }
- if (_json.containsKey("namedPorts")) {
- namedPorts = _json["namedPorts"].map((value) => new NamedPort.fromJson(value)).toList();
- }
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
- }
- if (_json.containsKey("targetPools")) {
- targetPools = _json["targetPools"];
+ InstanceGroupsScopedListWarning.fromJson(core.Map _json) {
+ if (_json.containsKey("code")) {
+ code = _json["code"];
}
- if (_json.containsKey("targetSize")) {
- targetSize = _json["targetSize"];
+ if (_json.containsKey("data")) {
+ data = _json["data"].map((value) => new InstanceGroupsScopedListWarningData.fromJson(value)).toList();
}
- if (_json.containsKey("zone")) {
- zone = _json["zone"];
+ if (_json.containsKey("message")) {
+ message = _json["message"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (baseInstanceName != null) {
- _json["baseInstanceName"] = baseInstanceName;
- }
- if (creationTimestamp != null) {
- _json["creationTimestamp"] = creationTimestamp;
- }
- if (currentActions != null) {
- _json["currentActions"] = (currentActions).toJson();
- }
- if (description != null) {
- _json["description"] = description;
- }
- if (fingerprint != null) {
- _json["fingerprint"] = fingerprint;
- }
- if (id != null) {
- _json["id"] = id;
- }
- if (instanceGroup != null) {
- _json["instanceGroup"] = instanceGroup;
- }
- if (instanceTemplate != null) {
- _json["instanceTemplate"] = instanceTemplate;
- }
- if (kind != null) {
- _json["kind"] = kind;
- }
- if (name != null) {
- _json["name"] = name;
- }
- if (namedPorts != null) {
- _json["namedPorts"] = namedPorts.map((value) => (value).toJson()).toList();
- }
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
- }
- if (targetPools != null) {
- _json["targetPools"] = targetPools;
+ if (code != null) {
+ _json["code"] = code;
}
- if (targetSize != null) {
- _json["targetSize"] = targetSize;
+ if (data != null) {
+ _json["data"] = data.map((value) => (value).toJson()).toList();
}
- if (zone != null) {
- _json["zone"] = zone;
+ if (message != null) {
+ _json["message"] = message;
}
return _json;
}
}
-class InstanceGroupManagerActionsSummary {
- /**
- * [Output Only] The total number of instances in the managed instance group
- * that are scheduled to be abandoned. Abandoning an instance removes it from
- * the managed instance group without deleting it.
- */
- core.int abandoning;
- /**
- * [Output Only] The number of instances in the managed instance group that
- * are scheduled to be created or are currently being created. If the group
- * fails to create one of these instances, it tries again until it creates the
- * instance successfully.
- */
- core.int creating;
- /**
- * [Output Only] The number of instances in the managed instance group that
- * are scheduled to be deleted or are currently being deleted.
- */
- core.int deleting;
- /**
- * [Output Only] The number of instances in the managed instance group that
- * are running and have no scheduled actions.
- */
- core.int none;
- /**
- * [Output Only] The number of instances in the managed instance group that
- * are scheduled to be recreated or are currently being being recreated.
- * Recreating an instance deletes the existing root persistent disk and
- * creates a new disk from the image that is defined in the instance template.
- */
- core.int recreating;
+class InstanceGroupsScopedList {
/**
- * [Output Only] The number of instances in the managed instance group that
- * are being reconfigured with properties that do not require a restart or a
- * recreate action. For example, setting or removing target pools for the
- * instance.
+ * [Output Only] The list of instance groups that are contained in this scope.
*/
- core.int refreshing;
+ core.List<InstanceGroup> instanceGroups;
/**
- * [Output Only] The number of instances in the managed instance group that
- * are scheduled to be restarted or are currently being restarted.
+ * [Output Only] An informational warning that replaces the list of instance
+ * groups when the list is empty.
*/
- core.int restarting;
+ InstanceGroupsScopedListWarning warning;
- InstanceGroupManagerActionsSummary();
+ InstanceGroupsScopedList();
- InstanceGroupManagerActionsSummary.fromJson(core.Map _json) {
- if (_json.containsKey("abandoning")) {
- abandoning = _json["abandoning"];
- }
- if (_json.containsKey("creating")) {
- creating = _json["creating"];
- }
- if (_json.containsKey("deleting")) {
- deleting = _json["deleting"];
- }
- if (_json.containsKey("none")) {
- none = _json["none"];
- }
- if (_json.containsKey("recreating")) {
- recreating = _json["recreating"];
- }
- if (_json.containsKey("refreshing")) {
- refreshing = _json["refreshing"];
+ InstanceGroupsScopedList.fromJson(core.Map _json) {
+ if (_json.containsKey("instanceGroups")) {
+ instanceGroups = _json["instanceGroups"].map((value) => new InstanceGroup.fromJson(value)).toList();
}
- if (_json.containsKey("restarting")) {
- restarting = _json["restarting"];
+ if (_json.containsKey("warning")) {
+ warning = new InstanceGroupsScopedListWarning.fromJson(_json["warning"]);
}
}
core.Map toJson() {
var _json = new core.Map();
- if (abandoning != null) {
- _json["abandoning"] = abandoning;
- }
- if (creating != null) {
- _json["creating"] = creating;
- }
- if (deleting != null) {
- _json["deleting"] = deleting;
- }
- if (none != null) {
- _json["none"] = none;
- }
- if (recreating != null) {
- _json["recreating"] = recreating;
- }
- if (refreshing != null) {
- _json["refreshing"] = refreshing;
+ if (instanceGroups != null) {
+ _json["instanceGroups"] = instanceGroups.map((value) => (value).toJson()).toList();
}
- if (restarting != null) {
- _json["restarting"] = restarting;
+ if (warning != null) {
+ _json["warning"] = (warning).toJson();
}
return _json;
}
}
-class InstanceGroupManagerAggregatedList {
- /**
- * [Output Only] A unique identifier for this aggregated list of managed
- * instance groups. The server generates this identifier.
- */
- core.String id;
- /** [Output Only] A map of filtered managed instance group lists. */
- core.Map<core.String, InstanceGroupManagersScopedList> items;
- /**
- * [Output Only] The resource type, which is always
- * compute#instanceGroupManagerAggregatedList for an aggregated list of
- * managed instance groups.
- */
- core.String kind;
- /**
- * [Output Only] This token allows you to get the next page of results for
- * list requests. If the number of results is larger than maxResults, use the
- * nextPageToken as a value for the query parameter pageToken in the next list
- * request. Subsequent list requests will have their own nextPageToken to
- * continue paging through the results.
- */
- core.String nextPageToken;
+class InstanceGroupsSetNamedPortsRequest {
/**
- * [Output Only] The URL for this resource type. The server generates this
- * URL.
+ * The fingerprint of the named ports information for this instance group. Use
+ * this optional property to prevent conflicts when multiple users change the
+ * named ports settings concurrently. Obtain the fingerprint with the
+ * instanceGroups.get method. Then, include the fingerprint in your request to
+ * ensure that you do not overwrite changes that were applied from another
+ * concurrent request.
*/
- core.String selfLink;
+ core.String fingerprint;
+ core.List<core.int> get fingerprintAsBytes {
+ return convert.BASE64.decode(fingerprint);
+ }
- InstanceGroupManagerAggregatedList();
+ void set fingerprintAsBytes(core.List<core.int> _bytes) {
+ fingerprint = convert.BASE64.encode(_bytes).replaceAll("/", "_").replaceAll("+", "-");
+ }
+ /** The list of named ports to set for this instance group. */
+ core.List<NamedPort> namedPorts;
+
+ InstanceGroupsSetNamedPortsRequest();
- InstanceGroupManagerAggregatedList.fromJson(core.Map _json) {
- if (_json.containsKey("id")) {
- id = _json["id"];
- }
- if (_json.containsKey("items")) {
- items = commons.mapMap(_json["items"], (item) => new InstanceGroupManagersScopedList.fromJson(item));
- }
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
- }
- if (_json.containsKey("nextPageToken")) {
- nextPageToken = _json["nextPageToken"];
+ InstanceGroupsSetNamedPortsRequest.fromJson(core.Map _json) {
+ if (_json.containsKey("fingerprint")) {
+ fingerprint = _json["fingerprint"];
}
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
+ if (_json.containsKey("namedPorts")) {
+ namedPorts = _json["namedPorts"].map((value) => new NamedPort.fromJson(value)).toList();
}
}
core.Map toJson() {
var _json = new core.Map();
- if (id != null) {
- _json["id"] = id;
- }
- if (items != null) {
- _json["items"] = commons.mapMap(items, (item) => (item).toJson());
- }
- if (kind != null) {
- _json["kind"] = kind;
- }
- if (nextPageToken != null) {
- _json["nextPageToken"] = nextPageToken;
+ if (fingerprint != null) {
+ _json["fingerprint"] = fingerprint;
}
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
+ if (namedPorts != null) {
+ _json["namedPorts"] = namedPorts.map((value) => (value).toJson()).toList();
}
return _json;
}
}
-/** [Output Only] A list of managed instance groups. */
-class InstanceGroupManagerList {
+/** Contains a list of instances. */
+class InstanceList {
/**
- * [Output Only] A unique identifier for this resource type. The server
- * generates this identifier.
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
*/
core.String id;
- /** [Output Only] A list of managed instance groups. */
- core.List<InstanceGroupManager> items;
+ /** [Output Only] A list of instances. */
+ core.List<Instance> items;
/**
- * [Output Only] The resource type, which is always
- * compute#instanceGroupManagerList for a list of managed instance groups.
+ * [Output Only] Type of resource. Always compute#instanceList for lists of
+ * Instance resources.
*/
core.String kind;
/**
@@ -17855,20 +19305,17 @@ class InstanceGroupManagerList {
* continue paging through the results.
*/
core.String nextPageToken;
- /**
- * [Output Only] The URL for this resource type. The server generates this
- * URL.
- */
+ /** [Output Only] Server-defined URL for this resource. */
core.String selfLink;
- InstanceGroupManagerList();
+ InstanceList();
- InstanceGroupManagerList.fromJson(core.Map _json) {
+ InstanceList.fromJson(core.Map _json) {
if (_json.containsKey("id")) {
id = _json["id"];
}
if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new InstanceGroupManager.fromJson(value)).toList();
+ items = _json["items"].map((value) => new Instance.fromJson(value)).toList();
}
if (_json.containsKey("kind")) {
kind = _json["kind"];
@@ -17902,339 +19349,291 @@ class InstanceGroupManagerList {
}
}
-class InstanceGroupManagersAbandonInstancesRequest {
+class InstanceMoveRequest {
/**
- * The URL for one or more instances to abandon from the managed instance
- * group.
+ * The URL of the destination zone to move the instance. This can be a full or
+ * partial URL. For example, the following are all valid URLs to a zone:
+ * - https://www.googleapis.com/compute/v1/projects/project/zones/zone
+ * - projects/project/zones/zone
+ * - zones/zone
*/
- core.List<core.String> instances;
-
- InstanceGroupManagersAbandonInstancesRequest();
-
- InstanceGroupManagersAbandonInstancesRequest.fromJson(core.Map _json) {
- if (_json.containsKey("instances")) {
- instances = _json["instances"];
- }
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (instances != null) {
- _json["instances"] = instances;
- }
- return _json;
- }
-}
-
-class InstanceGroupManagersDeleteInstancesRequest {
+ core.String destinationZone;
/**
- * The list of instances to delete from this managed instance group. Specify
- * one or more instance URLs.
+ * The URL of the target instance to move. This can be a full or partial URL.
+ * For example, the following are all valid URLs to an instance:
+ * -
+ * https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance
+ * - projects/project/zones/zone/instances/instance
+ * - zones/zone/instances/instance
*/
- core.List<core.String> instances;
-
- InstanceGroupManagersDeleteInstancesRequest();
+ core.String targetInstance;
- InstanceGroupManagersDeleteInstancesRequest.fromJson(core.Map _json) {
- if (_json.containsKey("instances")) {
- instances = _json["instances"];
- }
- }
+ InstanceMoveRequest();
- core.Map toJson() {
- var _json = new core.Map();
- if (instances != null) {
- _json["instances"] = instances;
+ InstanceMoveRequest.fromJson(core.Map _json) {
+ if (_json.containsKey("destinationZone")) {
+ destinationZone = _json["destinationZone"];
}
- return _json;
- }
-}
-
-class InstanceGroupManagersListManagedInstancesResponse {
- /** [Output Only] The list of instances in the managed instance group. */
- core.List<ManagedInstance> managedInstances;
-
- InstanceGroupManagersListManagedInstancesResponse();
-
- InstanceGroupManagersListManagedInstancesResponse.fromJson(core.Map _json) {
- if (_json.containsKey("managedInstances")) {
- managedInstances = _json["managedInstances"].map((value) => new ManagedInstance.fromJson(value)).toList();
+ if (_json.containsKey("targetInstance")) {
+ targetInstance = _json["targetInstance"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (managedInstances != null) {
- _json["managedInstances"] = managedInstances.map((value) => (value).toJson()).toList();
- }
- return _json;
- }
-}
-
-class InstanceGroupManagersRecreateInstancesRequest {
- /** The URL for one or more instances to recreate. */
- core.List<core.String> instances;
-
- InstanceGroupManagersRecreateInstancesRequest();
-
- InstanceGroupManagersRecreateInstancesRequest.fromJson(core.Map _json) {
- if (_json.containsKey("instances")) {
- instances = _json["instances"];
+ if (destinationZone != null) {
+ _json["destinationZone"] = destinationZone;
}
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (instances != null) {
- _json["instances"] = instances;
+ if (targetInstance != null) {
+ _json["targetInstance"] = targetInstance;
}
return _json;
}
}
-class InstanceGroupManagersScopedListWarningData {
+class InstanceProperties {
/**
- * [Output Only] A key that provides more detail on the warning being
- * returned. For example, for warnings where there are no results in a list
- * request for a particular zone, this key might be scope and the key value
- * might be the zone name. Other examples might be a key indicating a
- * deprecated resource and a suggested replacement, or a warning about invalid
- * network settings (for example, if an instance attempts to perform IP
- * forwarding but is not enabled for IP forwarding).
+ * Enables instances created based on this template to send packets with
+ * source IP addresses other than their own and receive packets with
+ * destination IP addresses other than their own. If these instances will be
+ * used as an IP gateway or it will be set as the next-hop in a Route
+ * resource, specify true. If unsure, leave this set to false. See the Enable
+ * IP forwarding for instances documentation for more information.
*/
- core.String key;
- /** [Output Only] A warning data value corresponding to the key. */
- core.String value;
-
- InstanceGroupManagersScopedListWarningData();
-
- InstanceGroupManagersScopedListWarningData.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;
- }
-}
-
-/**
- * [Output Only] The warning that replaces the list of managed instance groups
- * when the list is empty.
- */
-class InstanceGroupManagersScopedListWarning {
+ core.bool canIpForward;
/**
- * [Output Only] A warning code, if applicable. For example, Compute Engine
- * returns NO_RESULTS_ON_PAGE if there are no results in the response.
- * Possible string values are:
- * - "CLEANUP_FAILED"
- * - "DEPRECATED_RESOURCE_USED"
- * - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
- * - "INJECTED_KERNELS_DEPRECATED"
- * - "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
- * - "NEXT_HOP_CANNOT_IP_FORWARD"
- * - "NEXT_HOP_INSTANCE_NOT_FOUND"
- * - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
- * - "NEXT_HOP_NOT_RUNNING"
- * - "NOT_CRITICAL_ERROR"
- * - "NO_RESULTS_ON_PAGE"
- * - "REQUIRED_TOS_AGREEMENT"
- * - "RESOURCE_NOT_DELETED"
- * - "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
- * - "UNREACHABLE"
+ * An optional text description for the instances that are created from this
+ * instance template.
*/
- core.String code;
+ core.String description;
+ /**
+ * An array of disks that are associated with the instances that are created
+ * from this template.
+ */
+ core.List<AttachedDisk> disks;
+ /**
+ * The machine type to use for instances that are created from this template.
+ */
+ core.String machineType;
+ /**
+ * The metadata key/value pairs to assign to instances that are created from
+ * this template. These pairs can consist of custom metadata or predefined
+ * keys. See Project and instance metadata for more information.
+ */
+ Metadata metadata;
+ /** An array of network access configurations for this interface. */
+ core.List<NetworkInterface> networkInterfaces;
+ /**
+ * Specifies the scheduling options for the instances that are created from
+ * this template.
+ */
+ Scheduling scheduling;
+ /**
+ * A list of service accounts with specified scopes. Access tokens for these
+ * service accounts are available to the instances that are created from this
+ * template. Use metadata queries to obtain the access tokens for these
+ * instances.
+ */
+ core.List<ServiceAccount> serviceAccounts;
/**
- * [Output Only] Metadata about this warning in key: value format. For
- * example:
- * "data": [ { "key": "scope", "value": "zones/us-east1-d" }
+ * A list of tags to apply to the instances that are created from this
+ * template. The tags identify valid sources or targets for network firewalls.
+ * The setTags method can modify this list of tags. Each tag within the list
+ * must comply with RFC1035.
*/
- core.List<InstanceGroupManagersScopedListWarningData> data;
- /** [Output Only] A human-readable description of the warning code. */
- core.String message;
+ Tags tags;
- InstanceGroupManagersScopedListWarning();
+ InstanceProperties();
- InstanceGroupManagersScopedListWarning.fromJson(core.Map _json) {
- if (_json.containsKey("code")) {
- code = _json["code"];
+ InstanceProperties.fromJson(core.Map _json) {
+ if (_json.containsKey("canIpForward")) {
+ canIpForward = _json["canIpForward"];
}
- if (_json.containsKey("data")) {
- data = _json["data"].map((value) => new InstanceGroupManagersScopedListWarningData.fromJson(value)).toList();
+ if (_json.containsKey("description")) {
+ description = _json["description"];
}
- if (_json.containsKey("message")) {
- message = _json["message"];
+ if (_json.containsKey("disks")) {
+ disks = _json["disks"].map((value) => new AttachedDisk.fromJson(value)).toList();
}
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (code != null) {
- _json["code"] = code;
+ if (_json.containsKey("machineType")) {
+ machineType = _json["machineType"];
}
- if (data != null) {
- _json["data"] = data.map((value) => (value).toJson()).toList();
+ if (_json.containsKey("metadata")) {
+ metadata = new Metadata.fromJson(_json["metadata"]);
}
- if (message != null) {
- _json["message"] = message;
+ if (_json.containsKey("networkInterfaces")) {
+ networkInterfaces = _json["networkInterfaces"].map((value) => new NetworkInterface.fromJson(value)).toList();
}
- return _json;
- }
-}
-
-class InstanceGroupManagersScopedList {
- /**
- * [Output Only] The list of managed instance groups that are contained in the
- * specified project and zone.
- */
- core.List<InstanceGroupManager> instanceGroupManagers;
- /**
- * [Output Only] The warning that replaces the list of managed instance groups
- * when the list is empty.
- */
- InstanceGroupManagersScopedListWarning warning;
-
- InstanceGroupManagersScopedList();
-
- InstanceGroupManagersScopedList.fromJson(core.Map _json) {
- if (_json.containsKey("instanceGroupManagers")) {
- instanceGroupManagers = _json["instanceGroupManagers"].map((value) => new InstanceGroupManager.fromJson(value)).toList();
+ if (_json.containsKey("scheduling")) {
+ scheduling = new Scheduling.fromJson(_json["scheduling"]);
}
- if (_json.containsKey("warning")) {
- warning = new InstanceGroupManagersScopedListWarning.fromJson(_json["warning"]);
+ if (_json.containsKey("serviceAccounts")) {
+ serviceAccounts = _json["serviceAccounts"].map((value) => new ServiceAccount.fromJson(value)).toList();
+ }
+ if (_json.containsKey("tags")) {
+ tags = new Tags.fromJson(_json["tags"]);
}
}
core.Map toJson() {
var _json = new core.Map();
- if (instanceGroupManagers != null) {
- _json["instanceGroupManagers"] = instanceGroupManagers.map((value) => (value).toJson()).toList();
+ if (canIpForward != null) {
+ _json["canIpForward"] = canIpForward;
}
- if (warning != null) {
- _json["warning"] = (warning).toJson();
+ if (description != null) {
+ _json["description"] = description;
+ }
+ if (disks != null) {
+ _json["disks"] = disks.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 (scheduling != null) {
+ _json["scheduling"] = (scheduling).toJson();
+ }
+ if (serviceAccounts != null) {
+ _json["serviceAccounts"] = serviceAccounts.map((value) => (value).toJson()).toList();
+ }
+ if (tags != null) {
+ _json["tags"] = (tags).toJson();
}
return _json;
}
}
-class InstanceGroupManagersSetInstanceTemplateRequest {
- /**
- * The URL of the instance template that is specified for this managed
- * instance group. The group uses this template to create all new instances in
- * the managed instance group.
- */
- core.String instanceTemplate;
+class InstanceReference {
+ /** The URL for a specific instance. */
+ core.String instance;
- InstanceGroupManagersSetInstanceTemplateRequest();
+ InstanceReference();
- InstanceGroupManagersSetInstanceTemplateRequest.fromJson(core.Map _json) {
- if (_json.containsKey("instanceTemplate")) {
- instanceTemplate = _json["instanceTemplate"];
+ InstanceReference.fromJson(core.Map _json) {
+ if (_json.containsKey("instance")) {
+ instance = _json["instance"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (instanceTemplate != null) {
- _json["instanceTemplate"] = instanceTemplate;
+ if (instance != null) {
+ _json["instance"] = instance;
}
return _json;
}
}
-class InstanceGroupManagersSetTargetPoolsRequest {
+/** An Instance Template resource. */
+class InstanceTemplate {
/**
- * The fingerprint of the target pools information. Use this optional property
- * to prevent conflicts when multiple users change the target pools settings
- * concurrently. Obtain the fingerprint with the instanceGroupManagers.get
- * method. Then, include the fingerprint in your request to ensure that you do
- * not overwrite changes that were applied from another concurrent request.
+ * [Output Only] The creation timestamp for this instance template in RFC3339
+ * text format.
*/
- core.String fingerprint;
- core.List<core.int> get fingerprintAsBytes {
- return crypto.CryptoUtils.base64StringToBytes(fingerprint);
- }
-
- void set fingerprintAsBytes(core.List<core.int> _bytes) {
- fingerprint = crypto.CryptoUtils.bytesToBase64(_bytes, urlSafe: true);
- }
+ core.String creationTimestamp;
/**
- * The list of target pool URLs that instances in this managed instance group
- * belong to. The managed instance group applies these target pools to all of
- * the instances in the group. Existing instances and new instances in the
- * group all receive these target pool settings.
+ * An optional description of this resource. Provide this property when you
+ * create the resource.
*/
- core.List<core.String> targetPools;
+ core.String description;
+ /**
+ * [Output Only] A unique identifier for this instance template. The server
+ * defines this identifier.
+ */
+ core.String id;
+ /**
+ * [Output Only] The resource type, which is always compute#instanceTemplate
+ * for instance templates.
+ */
+ core.String kind;
+ /**
+ * Name of the resource; provided by the client when the resource is created.
+ * The name must be 1-63 characters long, and comply with RFC1035.
+ * Specifically, the name must be 1-63 characters long and match the regular
+ * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
+ * be a lowercase letter, and all following characters must be a dash,
+ * lowercase letter, or digit, except the last character, which cannot be a
+ * dash.
+ */
+ core.String name;
+ /** The instance properties for this instance template. */
+ InstanceProperties properties;
+ /**
+ * [Output Only] The URL for this instance template. The server defines this
+ * URL.
+ */
+ core.String selfLink;
- InstanceGroupManagersSetTargetPoolsRequest();
+ InstanceTemplate();
- InstanceGroupManagersSetTargetPoolsRequest.fromJson(core.Map _json) {
- if (_json.containsKey("fingerprint")) {
- fingerprint = _json["fingerprint"];
+ InstanceTemplate.fromJson(core.Map _json) {
+ if (_json.containsKey("creationTimestamp")) {
+ creationTimestamp = _json["creationTimestamp"];
}
- if (_json.containsKey("targetPools")) {
- targetPools = _json["targetPools"];
+ if (_json.containsKey("description")) {
+ description = _json["description"];
}
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (fingerprint != null) {
- _json["fingerprint"] = fingerprint;
+ if (_json.containsKey("id")) {
+ id = _json["id"];
}
- if (targetPools != null) {
- _json["targetPools"] = targetPools;
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
}
- return _json;
- }
-}
-
-class InstanceGroupsAddInstancesRequest {
- /** The list of instances to add to the instance group. */
- core.List<InstanceReference> instances;
-
- InstanceGroupsAddInstancesRequest();
-
- InstanceGroupsAddInstancesRequest.fromJson(core.Map _json) {
- if (_json.containsKey("instances")) {
- instances = _json["instances"].map((value) => new InstanceReference.fromJson(value)).toList();
+ if (_json.containsKey("name")) {
+ name = _json["name"];
+ }
+ if (_json.containsKey("properties")) {
+ properties = new InstanceProperties.fromJson(_json["properties"]);
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (instances != null) {
- _json["instances"] = instances.map((value) => (value).toJson()).toList();
+ if (creationTimestamp != null) {
+ _json["creationTimestamp"] = creationTimestamp;
+ }
+ if (description != null) {
+ _json["description"] = description;
+ }
+ if (id != null) {
+ _json["id"] = id;
+ }
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (name != null) {
+ _json["name"] = name;
+ }
+ if (properties != null) {
+ _json["properties"] = (properties).toJson();
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
}
return _json;
}
}
-class InstanceGroupsListInstances {
- /**
- * [Output Only] A unique identifier for this list of instance groups. The
- * server generates this identifier.
- */
- core.String id;
+/** A list of instance templates. */
+class InstanceTemplateList {
/**
- * [Output Only] A list of instances and any named ports that are assigned to
- * those instances.
+ * [Output Only] A unique identifier for this instance template. The server
+ * defines this identifier.
*/
- core.List<InstanceWithNamedPorts> items;
+ core.String id;
+ /** [Output Only] list of InstanceTemplate resources. */
+ core.List<InstanceTemplate> items;
/**
* [Output Only] The resource type, which is always
- * compute#instanceGroupsListInstances for lists of instance groups.
+ * compute#instanceTemplatesListResponse for instance template lists.
*/
core.String kind;
/**
@@ -18246,19 +19645,19 @@ class InstanceGroupsListInstances {
*/
core.String nextPageToken;
/**
- * [Output Only] The URL for this list of instance groups. The server
- * generates this URL.
+ * [Output Only] The URL for this instance template list. The server defines
+ * this URL.
*/
core.String selfLink;
- InstanceGroupsListInstances();
+ InstanceTemplateList();
- InstanceGroupsListInstances.fromJson(core.Map _json) {
+ InstanceTemplateList.fromJson(core.Map _json) {
if (_json.containsKey("id")) {
id = _json["id"];
}
if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new InstanceWithNamedPorts.fromJson(value)).toList();
+ items = _json["items"].map((value) => new InstanceTemplate.fromJson(value)).toList();
}
if (_json.containsKey("kind")) {
kind = _json["kind"];
@@ -18292,56 +19691,55 @@ class InstanceGroupsListInstances {
}
}
-class InstanceGroupsListInstancesRequest {
+class InstanceWithNamedPorts {
+ /** [Output Only] The URL of the instance. */
+ core.String instance;
+ /** [Output Only] The named ports that belong to this instance group. */
+ core.List<NamedPort> namedPorts;
/**
- * A filter for the state of the instances in the instance group. Valid
- * options are ALL or RUNNING. If you do not specify this parameter the list
- * includes all instances regardless of their state.
+ * [Output Only] The status of the instance.
* Possible string values are:
- * - "ALL"
+ * - "PROVISIONING"
* - "RUNNING"
+ * - "STAGING"
+ * - "STOPPED"
+ * - "STOPPING"
+ * - "SUSPENDED"
+ * - "SUSPENDING"
+ * - "TERMINATED"
*/
- core.String instanceState;
+ core.String status;
- InstanceGroupsListInstancesRequest();
+ InstanceWithNamedPorts();
- InstanceGroupsListInstancesRequest.fromJson(core.Map _json) {
- if (_json.containsKey("instanceState")) {
- instanceState = _json["instanceState"];
+ InstanceWithNamedPorts.fromJson(core.Map _json) {
+ if (_json.containsKey("instance")) {
+ instance = _json["instance"];
}
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (instanceState != null) {
- _json["instanceState"] = instanceState;
+ if (_json.containsKey("namedPorts")) {
+ namedPorts = _json["namedPorts"].map((value) => new NamedPort.fromJson(value)).toList();
}
- return _json;
- }
-}
-
-class InstanceGroupsRemoveInstancesRequest {
- /** The list of instances to remove from the instance group. */
- core.List<InstanceReference> instances;
-
- InstanceGroupsRemoveInstancesRequest();
-
- InstanceGroupsRemoveInstancesRequest.fromJson(core.Map _json) {
- if (_json.containsKey("instances")) {
- instances = _json["instances"].map((value) => new InstanceReference.fromJson(value)).toList();
+ if (_json.containsKey("status")) {
+ status = _json["status"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (instances != null) {
- _json["instances"] = instances.map((value) => (value).toJson()).toList();
+ if (instance != null) {
+ _json["instance"] = instance;
+ }
+ if (namedPorts != null) {
+ _json["namedPorts"] = namedPorts.map((value) => (value).toJson()).toList();
+ }
+ if (status != null) {
+ _json["status"] = status;
}
return _json;
}
}
-class InstanceGroupsScopedListWarningData {
+class InstancesScopedListWarningData {
/**
* [Output Only] A key that provides more detail on the warning being
* returned. For example, for warnings where there are no results in a list
@@ -18355,9 +19753,9 @@ class InstanceGroupsScopedListWarningData {
/** [Output Only] A warning data value corresponding to the key. */
core.String value;
- InstanceGroupsScopedListWarningData();
+ InstancesScopedListWarningData();
- InstanceGroupsScopedListWarningData.fromJson(core.Map _json) {
+ InstancesScopedListWarningData.fromJson(core.Map _json) {
if (_json.containsKey("key")) {
key = _json["key"];
}
@@ -18379,10 +19777,10 @@ class InstanceGroupsScopedListWarningData {
}
/**
- * [Output Only] An informational warning that replaces the list of instance
- * groups when the list is empty.
+ * [Output Only] Informational warning which replaces the list of instances when
+ * the list is empty.
*/
-class InstanceGroupsScopedListWarning {
+class InstancesScopedListWarning {
/**
* [Output Only] A warning code, if applicable. For example, Compute Engine
* returns NO_RESULTS_ON_PAGE if there are no results in the response.
@@ -18409,18 +19807,18 @@ class InstanceGroupsScopedListWarning {
* example:
* "data": [ { "key": "scope", "value": "zones/us-east1-d" }
*/
- core.List<InstanceGroupsScopedListWarningData> data;
+ core.List<InstancesScopedListWarningData> data;
/** [Output Only] A human-readable description of the warning code. */
core.String message;
- InstanceGroupsScopedListWarning();
+ InstancesScopedListWarning();
- InstanceGroupsScopedListWarning.fromJson(core.Map _json) {
+ InstancesScopedListWarning.fromJson(core.Map _json) {
if (_json.containsKey("code")) {
code = _json["code"];
}
if (_json.containsKey("data")) {
- data = _json["data"].map((value) => new InstanceGroupsScopedListWarningData.fromJson(value)).toList();
+ data = _json["data"].map((value) => new InstancesScopedListWarningData.fromJson(value)).toList();
}
if (_json.containsKey("message")) {
message = _json["message"];
@@ -18442,32 +19840,30 @@ class InstanceGroupsScopedListWarning {
}
}
-class InstanceGroupsScopedList {
- /**
- * [Output Only] The list of instance groups that are contained in this scope.
- */
- core.List<InstanceGroup> instanceGroups;
+class InstancesScopedList {
+ /** [Output Only] List of instances contained in this scope. */
+ core.List<Instance> instances;
/**
- * [Output Only] An informational warning that replaces the list of instance
- * groups when the list is empty.
+ * [Output Only] Informational warning which replaces the list of instances
+ * when the list is empty.
*/
- InstanceGroupsScopedListWarning warning;
+ InstancesScopedListWarning warning;
- InstanceGroupsScopedList();
+ InstancesScopedList();
- InstanceGroupsScopedList.fromJson(core.Map _json) {
- if (_json.containsKey("instanceGroups")) {
- instanceGroups = _json["instanceGroups"].map((value) => new InstanceGroup.fromJson(value)).toList();
+ InstancesScopedList.fromJson(core.Map _json) {
+ if (_json.containsKey("instances")) {
+ instances = _json["instances"].map((value) => new Instance.fromJson(value)).toList();
}
if (_json.containsKey("warning")) {
- warning = new InstanceGroupsScopedListWarning.fromJson(_json["warning"]);
+ warning = new InstancesScopedListWarning.fromJson(_json["warning"]);
}
}
core.Map toJson() {
var _json = new core.Map();
- if (instanceGroups != null) {
- _json["instanceGroups"] = instanceGroups.map((value) => (value).toJson()).toList();
+ if (instances != null) {
+ _json["instances"] = instances.map((value) => (value).toJson()).toList();
}
if (warning != null) {
_json["warning"] = (warning).toJson();
@@ -18476,88 +19872,89 @@ class InstanceGroupsScopedList {
}
}
-class InstanceGroupsSetNamedPortsRequest {
+class InstancesSetMachineTypeRequest {
/**
- * The fingerprint of the named ports information for this instance group. Use
- * this optional property to prevent conflicts when multiple users change the
- * named ports settings concurrently. Obtain the fingerprint with the
- * instanceGroups.get method. Then, include the fingerprint in your request to
- * ensure that you do not overwrite changes that were applied from another
- * concurrent request.
+ * Full or partial URL of the machine type resource. See Machine Types for a
+ * full list of machine types. For example:
+ * zones/us-central1-f/machineTypes/n1-standard-1
*/
- core.String fingerprint;
- core.List<core.int> get fingerprintAsBytes {
- return crypto.CryptoUtils.base64StringToBytes(fingerprint);
+ core.String machineType;
+
+ InstancesSetMachineTypeRequest();
+
+ InstancesSetMachineTypeRequest.fromJson(core.Map _json) {
+ if (_json.containsKey("machineType")) {
+ machineType = _json["machineType"];
+ }
}
- void set fingerprintAsBytes(core.List<core.int> _bytes) {
- fingerprint = crypto.CryptoUtils.bytesToBase64(_bytes, urlSafe: true);
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (machineType != null) {
+ _json["machineType"] = machineType;
+ }
+ return _json;
}
- /** The list of named ports to set for this instance group. */
- core.List<NamedPort> namedPorts;
+}
- InstanceGroupsSetNamedPortsRequest();
+class InstancesStartWithEncryptionKeyRequest {
+ /**
+ * Array of disks associated with this instance that are protected with a
+ * customer-supplied encryption key.
+ *
+ * In order to start the instance, the disk url and its corresponding key must
+ * be provided.
+ *
+ * If the disk is not protected with a customer-supplied encryption key it
+ * should not be specified.
+ */
+ core.List<CustomerEncryptionKeyProtectedDisk> disks;
- InstanceGroupsSetNamedPortsRequest.fromJson(core.Map _json) {
- if (_json.containsKey("fingerprint")) {
- fingerprint = _json["fingerprint"];
- }
- if (_json.containsKey("namedPorts")) {
- namedPorts = _json["namedPorts"].map((value) => new NamedPort.fromJson(value)).toList();
+ InstancesStartWithEncryptionKeyRequest();
+
+ InstancesStartWithEncryptionKeyRequest.fromJson(core.Map _json) {
+ if (_json.containsKey("disks")) {
+ disks = _json["disks"].map((value) => new CustomerEncryptionKeyProtectedDisk.fromJson(value)).toList();
}
}
core.Map toJson() {
var _json = new core.Map();
- if (fingerprint != null) {
- _json["fingerprint"] = fingerprint;
- }
- if (namedPorts != null) {
- _json["namedPorts"] = namedPorts.map((value) => (value).toJson()).toList();
+ if (disks != null) {
+ _json["disks"] = disks.map((value) => (value).toJson()).toList();
}
return _json;
}
}
-/** Contains a list of instances. */
-class InstanceList {
- /**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
- */
- core.String id;
- /** [Output Only] A list of instances. */
- core.List<Instance> items;
+/** A license resource. */
+class License {
/**
- * [Output Only] Type of resource. Always compute#instanceList for lists of
- * Instance resources.
+ * [Output Only] If true, the customer will be charged license fee for running
+ * software that contains this license on an instance.
*/
+ core.bool chargesUseFee;
+ /** [Output Only] Type of resource. Always compute#license for licenses. */
core.String kind;
/**
- * [Output Only] This token allows you to get the next page of results for
- * list requests. If the number of results is larger than maxResults, use the
- * nextPageToken as a value for the query parameter pageToken in the next list
- * request. Subsequent list requests will have their own nextPageToken to
- * continue paging through the results.
+ * [Output Only] Name of the resource. The name is 1-63 characters long and
+ * complies with RFC1035.
*/
- core.String nextPageToken;
- /** [Output Only] Server-defined URL for this resource. */
+ core.String name;
+ /** [Output Only] Server-defined URL for the resource. */
core.String selfLink;
- InstanceList();
+ License();
- InstanceList.fromJson(core.Map _json) {
- if (_json.containsKey("id")) {
- id = _json["id"];
- }
- if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new Instance.fromJson(value)).toList();
+ License.fromJson(core.Map _json) {
+ if (_json.containsKey("chargesUseFee")) {
+ chargesUseFee = _json["chargesUseFee"];
}
if (_json.containsKey("kind")) {
kind = _json["kind"];
}
- if (_json.containsKey("nextPageToken")) {
- nextPageToken = _json["nextPageToken"];
+ if (_json.containsKey("name")) {
+ name = _json["name"];
}
if (_json.containsKey("selfLink")) {
selfLink = _json["selfLink"];
@@ -18566,265 +19963,238 @@ class InstanceList {
core.Map toJson() {
var _json = new core.Map();
- if (id != null) {
- _json["id"] = id;
- }
- if (items != null) {
- _json["items"] = items.map((value) => (value).toJson()).toList();
+ if (chargesUseFee != null) {
+ _json["chargesUseFee"] = chargesUseFee;
}
if (kind != null) {
- _json["kind"] = kind;
- }
- if (nextPageToken != null) {
- _json["nextPageToken"] = nextPageToken;
- }
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
- }
- return _json;
- }
-}
-
-class InstanceMoveRequest {
- /**
- * The URL of the destination zone to move the instance. This can be a full or
- * partial URL. For example, the following are all valid URLs to a zone:
- * - https://www.googleapis.com/compute/v1/projects/project/zones/zone
- * - projects/project/zones/zone
- * - zones/zone
- */
- core.String destinationZone;
- /**
- * The URL of the target instance to move. This can be a full or partial URL.
- * For example, the following are all valid URLs to an instance:
- * -
- * https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance
- * - projects/project/zones/zone/instances/instance
- * - zones/zone/instances/instance
- */
- core.String targetInstance;
+ _json["kind"] = kind;
+ }
+ if (name != null) {
+ _json["name"] = name;
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
+ }
+ return _json;
+ }
+}
- InstanceMoveRequest();
+class MachineTypeScratchDisks {
+ /** Size of the scratch disk, defined in GB. */
+ core.int diskGb;
- InstanceMoveRequest.fromJson(core.Map _json) {
- if (_json.containsKey("destinationZone")) {
- destinationZone = _json["destinationZone"];
- }
- if (_json.containsKey("targetInstance")) {
- targetInstance = _json["targetInstance"];
+ MachineTypeScratchDisks();
+
+ MachineTypeScratchDisks.fromJson(core.Map _json) {
+ if (_json.containsKey("diskGb")) {
+ diskGb = _json["diskGb"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (destinationZone != null) {
- _json["destinationZone"] = destinationZone;
- }
- if (targetInstance != null) {
- _json["targetInstance"] = targetInstance;
+ if (diskGb != null) {
+ _json["diskGb"] = diskGb;
}
return _json;
}
}
-class InstanceProperties {
+/** A Machine Type resource. */
+class MachineType {
+ /** [Output Only] Creation timestamp in RFC3339 text format. */
+ core.String creationTimestamp;
/**
- * Enables instances created based on this template to send packets with
- * source IP addresses other than their own and receive packets with
- * destination IP addresses other than their own. If these instances will be
- * used as an IP gateway or it will be set as the next-hop in a Route
- * resource, specify true. If unsure, leave this set to false. See the
- * canIpForward documentation for more information.
+ * [Output Only] The deprecation status associated with this machine type.
*/
- core.bool canIpForward;
+ DeprecationStatus deprecated;
+ /** [Output Only] An optional textual description of the resource. */
+ core.String description;
/**
- * An optional text description for the instances that are created from this
- * instance template.
+ * [Output Only] The number of virtual CPUs that are available to the
+ * instance.
*/
- core.String description;
+ core.int guestCpus;
/**
- * An array of disks that are associated with the instances that are created
- * from this template.
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
*/
- core.List<AttachedDisk> disks;
+ core.String id;
/**
- * The machine type to use for instances that are created from this template.
+ * [Deprecated] This property is deprecated and will never be populated with
+ * any relevant values.
*/
- core.String machineType;
+ core.int imageSpaceGb;
/**
- * The metadata key/value pairs to assign to instances that are created from
- * this template. These pairs can consist of custom metadata or predefined
- * keys. See Project and instance metadata for more information.
+ * [Output Only] Whether this machine type has a shared CPU. See Shared-core
+ * machine types for more information.
*/
- Metadata metadata;
- /** An array of network access configurations for this interface. */
- core.List<NetworkInterface> networkInterfaces;
+ core.bool isSharedCpu;
/**
- * Specifies the scheduling options for the instances that are created from
- * this template.
+ * [Output Only] The type of the resource. Always compute#machineType for
+ * machine types.
*/
- Scheduling scheduling;
+ core.String kind;
+ /** [Output Only] Maximum persistent disks allowed. */
+ core.int maximumPersistentDisks;
+ /** [Output Only] Maximum total persistent disks size (GB) allowed. */
+ core.String maximumPersistentDisksSizeGb;
/**
- * A list of service accounts with specified scopes. Access tokens for these
- * service accounts are available to the instances that are created from this
- * template. Use metadata queries to obtain the access tokens for these
- * instances.
+ * [Output Only] The amount of physical memory available to the instance,
+ * defined in MB.
*/
- core.List<ServiceAccount> serviceAccounts;
+ core.int memoryMb;
+ /** [Output Only] Name of the resource. */
+ core.String name;
+ /** [Output Only] List of extended scratch disks assigned to the instance. */
+ core.List<MachineTypeScratchDisks> scratchDisks;
+ /** [Output Only] Server-defined URL for the resource. */
+ core.String selfLink;
/**
- * A list of tags to apply to the instances that are created from this
- * template. The tags identify valid sources or targets for network firewalls.
- * The setTags method can modify this list of tags. Each tag within the list
- * must comply with RFC1035.
+ * [Output Only] The name of the zone where the machine type resides, such as
+ * us-central1-a.
*/
- Tags tags;
+ core.String zone;
- InstanceProperties();
+ MachineType();
- InstanceProperties.fromJson(core.Map _json) {
- if (_json.containsKey("canIpForward")) {
- canIpForward = _json["canIpForward"];
+ MachineType.fromJson(core.Map _json) {
+ if (_json.containsKey("creationTimestamp")) {
+ creationTimestamp = _json["creationTimestamp"];
+ }
+ if (_json.containsKey("deprecated")) {
+ deprecated = new DeprecationStatus.fromJson(_json["deprecated"]);
}
if (_json.containsKey("description")) {
description = _json["description"];
}
- if (_json.containsKey("disks")) {
- disks = _json["disks"].map((value) => new AttachedDisk.fromJson(value)).toList();
+ if (_json.containsKey("guestCpus")) {
+ guestCpus = _json["guestCpus"];
}
- if (_json.containsKey("machineType")) {
- machineType = _json["machineType"];
+ if (_json.containsKey("id")) {
+ id = _json["id"];
}
- if (_json.containsKey("metadata")) {
- metadata = new Metadata.fromJson(_json["metadata"]);
+ if (_json.containsKey("imageSpaceGb")) {
+ imageSpaceGb = _json["imageSpaceGb"];
}
- if (_json.containsKey("networkInterfaces")) {
- networkInterfaces = _json["networkInterfaces"].map((value) => new NetworkInterface.fromJson(value)).toList();
+ if (_json.containsKey("isSharedCpu")) {
+ isSharedCpu = _json["isSharedCpu"];
}
- if (_json.containsKey("scheduling")) {
- scheduling = new Scheduling.fromJson(_json["scheduling"]);
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
}
- if (_json.containsKey("serviceAccounts")) {
- serviceAccounts = _json["serviceAccounts"].map((value) => new ServiceAccount.fromJson(value)).toList();
+ if (_json.containsKey("maximumPersistentDisks")) {
+ maximumPersistentDisks = _json["maximumPersistentDisks"];
}
- if (_json.containsKey("tags")) {
- tags = new Tags.fromJson(_json["tags"]);
+ if (_json.containsKey("maximumPersistentDisksSizeGb")) {
+ maximumPersistentDisksSizeGb = _json["maximumPersistentDisksSizeGb"];
+ }
+ if (_json.containsKey("memoryMb")) {
+ memoryMb = _json["memoryMb"];
+ }
+ if (_json.containsKey("name")) {
+ name = _json["name"];
+ }
+ if (_json.containsKey("scratchDisks")) {
+ scratchDisks = _json["scratchDisks"].map((value) => new MachineTypeScratchDisks.fromJson(value)).toList();
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
+ }
+ if (_json.containsKey("zone")) {
+ zone = _json["zone"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (canIpForward != null) {
- _json["canIpForward"] = canIpForward;
+ if (creationTimestamp != null) {
+ _json["creationTimestamp"] = creationTimestamp;
+ }
+ if (deprecated != null) {
+ _json["deprecated"] = (deprecated).toJson();
}
if (description != null) {
_json["description"] = description;
}
- if (disks != null) {
- _json["disks"] = disks.map((value) => (value).toJson()).toList();
+ if (guestCpus != null) {
+ _json["guestCpus"] = guestCpus;
}
- if (machineType != null) {
- _json["machineType"] = machineType;
+ if (id != null) {
+ _json["id"] = id;
}
- if (metadata != null) {
- _json["metadata"] = (metadata).toJson();
+ if (imageSpaceGb != null) {
+ _json["imageSpaceGb"] = imageSpaceGb;
}
- if (networkInterfaces != null) {
- _json["networkInterfaces"] = networkInterfaces.map((value) => (value).toJson()).toList();
+ if (isSharedCpu != null) {
+ _json["isSharedCpu"] = isSharedCpu;
}
- if (scheduling != null) {
- _json["scheduling"] = (scheduling).toJson();
+ if (kind != null) {
+ _json["kind"] = kind;
}
- if (serviceAccounts != null) {
- _json["serviceAccounts"] = serviceAccounts.map((value) => (value).toJson()).toList();
+ if (maximumPersistentDisks != null) {
+ _json["maximumPersistentDisks"] = maximumPersistentDisks;
}
- if (tags != null) {
- _json["tags"] = (tags).toJson();
+ if (maximumPersistentDisksSizeGb != null) {
+ _json["maximumPersistentDisksSizeGb"] = maximumPersistentDisksSizeGb;
}
- return _json;
- }
-}
-
-class InstanceReference {
- /** The URL for a specific instance. */
- core.String instance;
-
- InstanceReference();
-
- InstanceReference.fromJson(core.Map _json) {
- if (_json.containsKey("instance")) {
- instance = _json["instance"];
+ if (memoryMb != null) {
+ _json["memoryMb"] = memoryMb;
}
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (instance != null) {
- _json["instance"] = instance;
+ if (name != null) {
+ _json["name"] = name;
+ }
+ if (scratchDisks != null) {
+ _json["scratchDisks"] = scratchDisks.map((value) => (value).toJson()).toList();
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
+ }
+ if (zone != null) {
+ _json["zone"] = zone;
}
return _json;
}
}
-/** An Instance Template resource. */
-class InstanceTemplate {
- /**
- * [Output Only] The creation timestamp for this instance template in RFC3339
- * text format.
- */
- core.String creationTimestamp;
- /**
- * An optional description of this resource. Provide this property when you
- * create the resource.
- */
- core.String description;
+class MachineTypeAggregatedList {
/**
- * [Output Only] A unique identifier for this instance template. The server
- * defines this identifier.
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
*/
core.String id;
+ /** [Output Only] A map of scoped machine type lists. */
+ core.Map<core.String, MachineTypesScopedList> items;
/**
- * [Output Only] The resource type, which is always compute#instanceTemplate
- * for instance templates.
+ * [Output Only] Type of resource. Always compute#machineTypeAggregatedList
+ * for aggregated lists of machine types.
*/
core.String kind;
/**
- * Name of the resource; provided by the client when the resource is created.
- * The name must be 1-63 characters long, and comply with RFC1035.
- * Specifically, the name must be 1-63 characters long and match the regular
- * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
- * be a lowercase letter, and all following characters must be a dash,
- * lowercase letter, or digit, except the last character, which cannot be a
- * dash.
- */
- core.String name;
- /** The instance properties for this instance template. */
- InstanceProperties properties;
- /**
- * [Output Only] The URL for this instance template. The server defines this
- * URL.
+ * [Output Only] This token allows you to get the next page of results for
+ * list requests. If the number of results is larger than maxResults, use the
+ * nextPageToken as a value for the query parameter pageToken in the next list
+ * request. Subsequent list requests will have their own nextPageToken to
+ * continue paging through the results.
*/
+ core.String nextPageToken;
+ /** [Output Only] Server-defined URL for this resource. */
core.String selfLink;
- InstanceTemplate();
+ MachineTypeAggregatedList();
- InstanceTemplate.fromJson(core.Map _json) {
- if (_json.containsKey("creationTimestamp")) {
- creationTimestamp = _json["creationTimestamp"];
- }
- if (_json.containsKey("description")) {
- description = _json["description"];
- }
+ MachineTypeAggregatedList.fromJson(core.Map _json) {
if (_json.containsKey("id")) {
id = _json["id"];
}
+ if (_json.containsKey("items")) {
+ items = commons.mapMap(_json["items"], (item) => new MachineTypesScopedList.fromJson(item));
+ }
if (_json.containsKey("kind")) {
kind = _json["kind"];
}
- if (_json.containsKey("name")) {
- name = _json["name"];
- }
- if (_json.containsKey("properties")) {
- properties = new InstanceProperties.fromJson(_json["properties"]);
+ if (_json.containsKey("nextPageToken")) {
+ nextPageToken = _json["nextPageToken"];
}
if (_json.containsKey("selfLink")) {
selfLink = _json["selfLink"];
@@ -18833,23 +20203,17 @@ class InstanceTemplate {
core.Map toJson() {
var _json = new core.Map();
- if (creationTimestamp != null) {
- _json["creationTimestamp"] = creationTimestamp;
- }
- if (description != null) {
- _json["description"] = description;
- }
if (id != null) {
_json["id"] = id;
}
+ if (items != null) {
+ _json["items"] = commons.mapMap(items, (item) => (item).toJson());
+ }
if (kind != null) {
_json["kind"] = kind;
}
- if (name != null) {
- _json["name"] = name;
- }
- if (properties != null) {
- _json["properties"] = (properties).toJson();
+ if (nextPageToken != null) {
+ _json["nextPageToken"] = nextPageToken;
}
if (selfLink != null) {
_json["selfLink"] = selfLink;
@@ -18858,18 +20222,18 @@ class InstanceTemplate {
}
}
-/** A list of instance templates. */
-class InstanceTemplateList {
+/** Contains a list of machine types. */
+class MachineTypeList {
/**
- * [Output Only] A unique identifier for this instance template. The server
- * defines this identifier.
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
*/
core.String id;
- /** [Output Only] list of InstanceTemplate resources. */
- core.List<InstanceTemplate> items;
+ /** [Output Only] A list of Machine Type resources. */
+ core.List<MachineType> items;
/**
- * [Output Only] The resource type, which is always
- * compute#instanceTemplatesListResponse for instance template lists.
+ * [Output Only] Type of resource. Always compute#machineTypeList for lists of
+ * machine types.
*/
core.String kind;
/**
@@ -18880,20 +20244,17 @@ class InstanceTemplateList {
* continue paging through the results.
*/
core.String nextPageToken;
- /**
- * [Output Only] The URL for this instance template list. The server defines
- * this URL.
- */
+ /** [Output Only] Server-defined URL for this resource. */
core.String selfLink;
- InstanceTemplateList();
+ MachineTypeList();
- InstanceTemplateList.fromJson(core.Map _json) {
+ MachineTypeList.fromJson(core.Map _json) {
if (_json.containsKey("id")) {
id = _json["id"];
}
if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new InstanceTemplate.fromJson(value)).toList();
+ items = _json["items"].map((value) => new MachineType.fromJson(value)).toList();
}
if (_json.containsKey("kind")) {
kind = _json["kind"];
@@ -18927,55 +20288,7 @@ class InstanceTemplateList {
}
}
-class InstanceWithNamedPorts {
- /** [Output Only] The URL of the instance. */
- core.String instance;
- /** [Output Only] The named ports that belong to this instance group. */
- core.List<NamedPort> namedPorts;
- /**
- * [Output Only] The status of the instance.
- * Possible string values are:
- * - "PROVISIONING"
- * - "RUNNING"
- * - "STAGING"
- * - "STOPPED"
- * - "STOPPING"
- * - "SUSPENDED"
- * - "SUSPENDING"
- * - "TERMINATED"
- */
- core.String status;
-
- InstanceWithNamedPorts();
-
- InstanceWithNamedPorts.fromJson(core.Map _json) {
- if (_json.containsKey("instance")) {
- instance = _json["instance"];
- }
- if (_json.containsKey("namedPorts")) {
- namedPorts = _json["namedPorts"].map((value) => new NamedPort.fromJson(value)).toList();
- }
- if (_json.containsKey("status")) {
- status = _json["status"];
- }
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (instance != null) {
- _json["instance"] = instance;
- }
- if (namedPorts != null) {
- _json["namedPorts"] = namedPorts.map((value) => (value).toJson()).toList();
- }
- if (status != null) {
- _json["status"] = status;
- }
- return _json;
- }
-}
-
-class InstancesScopedListWarningData {
+class MachineTypesScopedListWarningData {
/**
* [Output Only] A key that provides more detail on the warning being
* returned. For example, for warnings where there are no results in a list
@@ -18989,9 +20302,9 @@ class InstancesScopedListWarningData {
/** [Output Only] A warning data value corresponding to the key. */
core.String value;
- InstancesScopedListWarningData();
+ MachineTypesScopedListWarningData();
- InstancesScopedListWarningData.fromJson(core.Map _json) {
+ MachineTypesScopedListWarningData.fromJson(core.Map _json) {
if (_json.containsKey("key")) {
key = _json["key"];
}
@@ -19013,10 +20326,10 @@ class InstancesScopedListWarningData {
}
/**
- * [Output Only] Informational warning which replaces the list of instances when
- * the list is empty.
+ * [Output Only] An informational warning that appears when the machine types
+ * list is empty.
*/
-class InstancesScopedListWarning {
+class MachineTypesScopedListWarning {
/**
* [Output Only] A warning code, if applicable. For example, Compute Engine
* returns NO_RESULTS_ON_PAGE if there are no results in the response.
@@ -19043,18 +20356,18 @@ class InstancesScopedListWarning {
* example:
* "data": [ { "key": "scope", "value": "zones/us-east1-d" }
*/
- core.List<InstancesScopedListWarningData> data;
+ core.List<MachineTypesScopedListWarningData> data;
/** [Output Only] A human-readable description of the warning code. */
core.String message;
- InstancesScopedListWarning();
+ MachineTypesScopedListWarning();
- InstancesScopedListWarning.fromJson(core.Map _json) {
+ MachineTypesScopedListWarning.fromJson(core.Map _json) {
if (_json.containsKey("code")) {
code = _json["code"];
}
if (_json.containsKey("data")) {
- data = _json["data"].map((value) => new InstancesScopedListWarningData.fromJson(value)).toList();
+ data = _json["data"].map((value) => new MachineTypesScopedListWarningData.fromJson(value)).toList();
}
if (_json.containsKey("message")) {
message = _json["message"];
@@ -19076,396 +20389,317 @@ class InstancesScopedListWarning {
}
}
-class InstancesScopedList {
- /** [Output Only] List of instances contained in this scope. */
- core.List<Instance> instances;
- /**
- * [Output Only] Informational warning which replaces the list of instances
- * when the list is empty.
- */
- InstancesScopedListWarning warning;
-
- InstancesScopedList();
-
- InstancesScopedList.fromJson(core.Map _json) {
- if (_json.containsKey("instances")) {
- instances = _json["instances"].map((value) => new Instance.fromJson(value)).toList();
- }
- if (_json.containsKey("warning")) {
- warning = new InstancesScopedListWarning.fromJson(_json["warning"]);
- }
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (instances != null) {
- _json["instances"] = instances.map((value) => (value).toJson()).toList();
- }
- if (warning != null) {
- _json["warning"] = (warning).toJson();
- }
- return _json;
- }
-}
-
-class InstancesSetMachineTypeRequest {
- /**
- * Full or partial URL of the machine type resource. See Machine Types for a
- * full list of machine types. For example:
- * zones/us-central1-f/machineTypes/n1-standard-1
- */
- core.String machineType;
-
- InstancesSetMachineTypeRequest();
-
- InstancesSetMachineTypeRequest.fromJson(core.Map _json) {
- if (_json.containsKey("machineType")) {
- machineType = _json["machineType"];
- }
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (machineType != null) {
- _json["machineType"] = machineType;
- }
- return _json;
- }
-}
-
-/** A license resource. */
-class License {
- /**
- * [Output Only] If true, the customer will be charged license fee for running
- * software that contains this license on an instance.
- */
- core.bool chargesUseFee;
- /** [Output Only] Type of resource. Always compute#license for licenses. */
- core.String kind;
+class MachineTypesScopedList {
+ /** [Output Only] List of machine types contained in this scope. */
+ core.List<MachineType> machineTypes;
/**
- * [Output Only] Name of the resource. The name is 1-63 characters long and
- * complies with RFC1035.
+ * [Output Only] An informational warning that appears when the machine types
+ * list is empty.
*/
- core.String name;
- /** [Output Only] Server-defined URL for the resource. */
- core.String selfLink;
-
- License();
-
- License.fromJson(core.Map _json) {
- if (_json.containsKey("chargesUseFee")) {
- chargesUseFee = _json["chargesUseFee"];
- }
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
- }
- if (_json.containsKey("name")) {
- name = _json["name"];
- }
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
- }
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (chargesUseFee != null) {
- _json["chargesUseFee"] = chargesUseFee;
- }
- if (kind != null) {
- _json["kind"] = kind;
- }
- if (name != null) {
- _json["name"] = name;
- }
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
- }
- return _json;
- }
-}
-
-class MachineTypeScratchDisks {
- /** Size of the scratch disk, defined in GB. */
- core.int diskGb;
+ MachineTypesScopedListWarning warning;
- MachineTypeScratchDisks();
+ MachineTypesScopedList();
- MachineTypeScratchDisks.fromJson(core.Map _json) {
- if (_json.containsKey("diskGb")) {
- diskGb = _json["diskGb"];
+ MachineTypesScopedList.fromJson(core.Map _json) {
+ if (_json.containsKey("machineTypes")) {
+ machineTypes = _json["machineTypes"].map((value) => new MachineType.fromJson(value)).toList();
+ }
+ if (_json.containsKey("warning")) {
+ warning = new MachineTypesScopedListWarning.fromJson(_json["warning"]);
}
}
core.Map toJson() {
var _json = new core.Map();
- if (diskGb != null) {
- _json["diskGb"] = diskGb;
+ if (machineTypes != null) {
+ _json["machineTypes"] = machineTypes.map((value) => (value).toJson()).toList();
+ }
+ if (warning != null) {
+ _json["warning"] = (warning).toJson();
}
return _json;
}
}
-/** A Machine Type resource. */
-class MachineType {
- /** [Output Only] Creation timestamp in RFC3339 text format. */
- core.String creationTimestamp;
- /**
- * [Output Only] The deprecation status associated with this machine type.
- */
- DeprecationStatus deprecated;
- /** [Output Only] An optional textual description of the resource. */
- core.String description;
+class ManagedInstance {
/**
- * [Output Only] The number of virtual CPUs that are available to the
+ * [Output Only] The current action that the managed instance group has
+ * scheduled for the instance. Possible values:
+ * - NONE The instance is running, and the managed instance group does not
+ * have any scheduled actions for this instance.
+ * - CREATING The managed instance group is creating this instance. If the
+ * group fails to create this instance, it will try again until it is
+ * successful.
+ * - CREATING_WITHOUT_RETRIES The managed instance group is attempting to
+ * create this instance only once. If the group fails to create this instance,
+ * it does not try again and the group's target_size value is decreased.
+ * - RECREATING The managed instance group is recreating this instance.
+ * - DELETING The managed instance group is permanently deleting this
* instance.
+ * - ABANDONING The managed instance group is abandoning this instance. The
+ * instance will be removed from the instance group and from any target pools
+ * that are associated with this group.
+ * - RESTARTING The managed instance group is restarting the instance.
+ * - REFRESHING The managed instance group is applying configuration changes
+ * to the instance without stopping it. For example, the group can update the
+ * target pool list for an instance without stopping that instance.
+ * Possible string values are:
+ * - "ABANDONING"
+ * - "CREATING"
+ * - "DELETING"
+ * - "NONE"
+ * - "RECREATING"
+ * - "REFRESHING"
+ * - "RESTARTING"
*/
- core.int guestCpus;
+ core.String currentAction;
/**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
+ * [Output only] The unique identifier for this resource. This field is empty
+ * when instance does not exist.
*/
core.String id;
/**
- * [Deprecated] This property is deprecated and will never be populated with
- * any relevant values.
- */
- core.int imageSpaceGb;
- /**
- * [Output Only] The type of the resource. Always compute#machineType for
- * machine types.
+ * [Output Only] The URL of the instance. The URL can exist even if the
+ * instance has not yet been created.
*/
- core.String kind;
- /** [Output Only] Maximum persistent disks allowed. */
- core.int maximumPersistentDisks;
- /** [Output Only] Maximum total persistent disks size (GB) allowed. */
- core.String maximumPersistentDisksSizeGb;
+ core.String instance;
/**
- * [Output Only] The amount of physical memory available to the instance,
- * defined in MB.
+ * [Output Only] The status of the instance. This field is empty when the
+ * instance does not exist.
+ * Possible string values are:
+ * - "PROVISIONING"
+ * - "RUNNING"
+ * - "STAGING"
+ * - "STOPPED"
+ * - "STOPPING"
+ * - "SUSPENDED"
+ * - "SUSPENDING"
+ * - "TERMINATED"
*/
- core.int memoryMb;
- /** [Output Only] Name of the resource. */
- core.String name;
- /** [Output Only] List of extended scratch disks assigned to the instance. */
- core.List<MachineTypeScratchDisks> scratchDisks;
- /** [Output Only] Server-defined URL for the resource. */
- core.String selfLink;
+ core.String instanceStatus;
/**
- * [Output Only] The name of the zone where the machine type resides, such as
- * us-central1-a.
+ * [Output Only] Information about the last attempt to create or delete the
+ * instance.
*/
- core.String zone;
+ ManagedInstanceLastAttempt lastAttempt;
- MachineType();
+ ManagedInstance();
- MachineType.fromJson(core.Map _json) {
- if (_json.containsKey("creationTimestamp")) {
- creationTimestamp = _json["creationTimestamp"];
- }
- if (_json.containsKey("deprecated")) {
- deprecated = new DeprecationStatus.fromJson(_json["deprecated"]);
- }
- if (_json.containsKey("description")) {
- description = _json["description"];
- }
- if (_json.containsKey("guestCpus")) {
- guestCpus = _json["guestCpus"];
+ ManagedInstance.fromJson(core.Map _json) {
+ if (_json.containsKey("currentAction")) {
+ currentAction = _json["currentAction"];
}
if (_json.containsKey("id")) {
id = _json["id"];
}
- if (_json.containsKey("imageSpaceGb")) {
- imageSpaceGb = _json["imageSpaceGb"];
- }
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
- }
- if (_json.containsKey("maximumPersistentDisks")) {
- maximumPersistentDisks = _json["maximumPersistentDisks"];
- }
- if (_json.containsKey("maximumPersistentDisksSizeGb")) {
- maximumPersistentDisksSizeGb = _json["maximumPersistentDisksSizeGb"];
- }
- if (_json.containsKey("memoryMb")) {
- memoryMb = _json["memoryMb"];
- }
- if (_json.containsKey("name")) {
- name = _json["name"];
- }
- if (_json.containsKey("scratchDisks")) {
- scratchDisks = _json["scratchDisks"].map((value) => new MachineTypeScratchDisks.fromJson(value)).toList();
+ if (_json.containsKey("instance")) {
+ instance = _json["instance"];
}
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
+ if (_json.containsKey("instanceStatus")) {
+ instanceStatus = _json["instanceStatus"];
}
- if (_json.containsKey("zone")) {
- zone = _json["zone"];
+ if (_json.containsKey("lastAttempt")) {
+ lastAttempt = new ManagedInstanceLastAttempt.fromJson(_json["lastAttempt"]);
}
}
core.Map toJson() {
var _json = new core.Map();
- if (creationTimestamp != null) {
- _json["creationTimestamp"] = creationTimestamp;
+ if (currentAction != null) {
+ _json["currentAction"] = currentAction;
}
- if (deprecated != null) {
- _json["deprecated"] = (deprecated).toJson();
+ if (id != null) {
+ _json["id"] = id;
}
- if (description != null) {
- _json["description"] = description;
+ if (instance != null) {
+ _json["instance"] = instance;
}
- if (guestCpus != null) {
- _json["guestCpus"] = guestCpus;
+ if (instanceStatus != null) {
+ _json["instanceStatus"] = instanceStatus;
}
- if (id != null) {
- _json["id"] = id;
+ if (lastAttempt != null) {
+ _json["lastAttempt"] = (lastAttempt).toJson();
}
- if (imageSpaceGb != null) {
- _json["imageSpaceGb"] = imageSpaceGb;
+ return _json;
+ }
+}
+
+class ManagedInstanceLastAttemptErrorsErrors {
+ /** [Output Only] The error type identifier for this error. */
+ core.String code;
+ /**
+ * [Output Only] Indicates the field in the request that caused the error.
+ * This property is optional.
+ */
+ core.String location;
+ /** [Output Only] An optional, human-readable error message. */
+ core.String message;
+
+ ManagedInstanceLastAttemptErrorsErrors();
+
+ ManagedInstanceLastAttemptErrorsErrors.fromJson(core.Map _json) {
+ if (_json.containsKey("code")) {
+ code = _json["code"];
}
- if (kind != null) {
- _json["kind"] = kind;
+ if (_json.containsKey("location")) {
+ location = _json["location"];
}
- if (maximumPersistentDisks != null) {
- _json["maximumPersistentDisks"] = maximumPersistentDisks;
+ if (_json.containsKey("message")) {
+ message = _json["message"];
}
- if (maximumPersistentDisksSizeGb != null) {
- _json["maximumPersistentDisksSizeGb"] = maximumPersistentDisksSizeGb;
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (code != null) {
+ _json["code"] = code;
}
- if (memoryMb != null) {
- _json["memoryMb"] = memoryMb;
+ if (location != null) {
+ _json["location"] = location;
}
- if (name != null) {
- _json["name"] = name;
+ if (message != null) {
+ _json["message"] = message;
}
- if (scratchDisks != null) {
- _json["scratchDisks"] = scratchDisks.map((value) => (value).toJson()).toList();
+ return _json;
+ }
+}
+
+/**
+ * [Output Only] Encountered errors during the last attempt to create or delete
+ * the instance.
+ */
+class ManagedInstanceLastAttemptErrors {
+ /**
+ * [Output Only] The array of errors encountered while processing this
+ * operation.
+ */
+ core.List<ManagedInstanceLastAttemptErrorsErrors> errors;
+
+ ManagedInstanceLastAttemptErrors();
+
+ ManagedInstanceLastAttemptErrors.fromJson(core.Map _json) {
+ if (_json.containsKey("errors")) {
+ errors = _json["errors"].map((value) => new ManagedInstanceLastAttemptErrorsErrors.fromJson(value)).toList();
}
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (errors != null) {
+ _json["errors"] = errors.map((value) => (value).toJson()).toList();
+ }
+ return _json;
+ }
+}
+
+class ManagedInstanceLastAttempt {
+ /**
+ * [Output Only] Encountered errors during the last attempt to create or
+ * delete the instance.
+ */
+ ManagedInstanceLastAttemptErrors errors;
+
+ ManagedInstanceLastAttempt();
+
+ ManagedInstanceLastAttempt.fromJson(core.Map _json) {
+ if (_json.containsKey("errors")) {
+ errors = new ManagedInstanceLastAttemptErrors.fromJson(_json["errors"]);
}
- if (zone != null) {
- _json["zone"] = zone;
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (errors != null) {
+ _json["errors"] = (errors).toJson();
}
return _json;
}
}
-class MachineTypeAggregatedList {
- /**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
- */
- core.String id;
- /** [Output Only] A map of scoped machine type lists. */
- core.Map<core.String, MachineTypesScopedList> items;
+class MetadataItems {
/**
- * [Output Only] Type of resource. Always compute#machineTypeAggregatedList
- * for aggregated lists of machine types.
+ * Key for the metadata entry. Keys must conform to the following regexp:
+ * [a-zA-Z0-9-_]+, and be less than 128 bytes in length. This is reflected as
+ * part of a URL in the metadata server. Additionally, to avoid ambiguity,
+ * keys must not conflict with any other metadata keys for the project.
*/
- core.String kind;
+ core.String key;
/**
- * [Output Only] This token allows you to get the next page of results for
- * list requests. If the number of results is larger than maxResults, use the
- * nextPageToken as a value for the query parameter pageToken in the next list
- * request. Subsequent list requests will have their own nextPageToken to
- * continue paging through the results.
+ * Value for the metadata entry. These are free-form strings, and only have
+ * meaning as interpreted by the image running in the instance. The only
+ * restriction placed on values is that their size must be less than or equal
+ * to 32768 bytes.
*/
- core.String nextPageToken;
- /** [Output Only] Server-defined URL for this resource. */
- core.String selfLink;
+ core.String value;
- MachineTypeAggregatedList();
+ MetadataItems();
- MachineTypeAggregatedList.fromJson(core.Map _json) {
- if (_json.containsKey("id")) {
- id = _json["id"];
- }
- if (_json.containsKey("items")) {
- items = commons.mapMap(_json["items"], (item) => new MachineTypesScopedList.fromJson(item));
- }
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
- }
- if (_json.containsKey("nextPageToken")) {
- nextPageToken = _json["nextPageToken"];
+ MetadataItems.fromJson(core.Map _json) {
+ if (_json.containsKey("key")) {
+ key = _json["key"];
}
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
+ if (_json.containsKey("value")) {
+ value = _json["value"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (id != null) {
- _json["id"] = id;
- }
- if (items != null) {
- _json["items"] = commons.mapMap(items, (item) => (item).toJson());
- }
- if (kind != null) {
- _json["kind"] = kind;
- }
- if (nextPageToken != null) {
- _json["nextPageToken"] = nextPageToken;
+ if (key != null) {
+ _json["key"] = key;
}
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
+ if (value != null) {
+ _json["value"] = value;
}
return _json;
}
}
-/** Contains a list of machine types. */
-class MachineTypeList {
+/** A metadata key/value entry. */
+class Metadata {
/**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
+ * Specifies a fingerprint for this request, which is essentially a hash of
+ * the metadata's contents and used for optimistic locking. The fingerprint is
+ * initially generated by Compute Engine and changes after every request to
+ * modify or update metadata. You must always provide an up-to-date
+ * fingerprint hash in order to update or change metadata.
*/
- core.String id;
- /** [Output Only] A list of Machine Type resources. */
- core.List<MachineType> items;
+ core.String fingerprint;
+ core.List<core.int> get fingerprintAsBytes {
+ return convert.BASE64.decode(fingerprint);
+ }
+
+ void set fingerprintAsBytes(core.List<core.int> _bytes) {
+ fingerprint = convert.BASE64.encode(_bytes).replaceAll("/", "_").replaceAll("+", "-");
+ }
/**
- * [Output Only] Type of resource. Always compute#machineTypeList for lists of
- * machine types.
+ * Array of key/value pairs. The total size of all keys and values must be
+ * less than 512 KB.
*/
- core.String kind;
+ core.List<MetadataItems> items;
/**
- * [Output Only] This token allows you to get the next page of results for
- * list requests. If the number of results is larger than maxResults, use the
- * nextPageToken as a value for the query parameter pageToken in the next list
- * request. Subsequent list requests will have their own nextPageToken to
- * continue paging through the results.
+ * [Output Only] Type of the resource. Always compute#metadata for metadata.
*/
- core.String nextPageToken;
- /** [Output Only] Server-defined URL for this resource. */
- core.String selfLink;
+ core.String kind;
- MachineTypeList();
+ Metadata();
- MachineTypeList.fromJson(core.Map _json) {
- if (_json.containsKey("id")) {
- id = _json["id"];
+ Metadata.fromJson(core.Map _json) {
+ if (_json.containsKey("fingerprint")) {
+ fingerprint = _json["fingerprint"];
}
if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new MachineType.fromJson(value)).toList();
+ items = _json["items"].map((value) => new MetadataItems.fromJson(value)).toList();
}
if (_json.containsKey("kind")) {
kind = _json["kind"];
}
- if (_json.containsKey("nextPageToken")) {
- nextPageToken = _json["nextPageToken"];
- }
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
- }
}
core.Map toJson() {
var _json = new core.Map();
- if (id != null) {
- _json["id"] = id;
+ if (fingerprint != null) {
+ _json["fingerprint"] = fingerprint;
}
if (items != null) {
_json["items"] = items.map((value) => (value).toJson()).toList();
@@ -19473,253 +20707,328 @@ class MachineTypeList {
if (kind != null) {
_json["kind"] = kind;
}
- if (nextPageToken != null) {
- _json["nextPageToken"] = nextPageToken;
- }
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
- }
return _json;
}
}
-class MachineTypesScopedListWarningData {
+/** The named port. For example: . */
+class NamedPort {
/**
- * [Output Only] A key that provides more detail on the warning being
- * returned. For example, for warnings where there are no results in a list
- * request for a particular zone, this key might be scope and the key value
- * might be the zone name. Other examples might be a key indicating a
- * deprecated resource and a suggested replacement, or a warning about invalid
- * network settings (for example, if an instance attempts to perform IP
- * forwarding but is not enabled for IP forwarding).
+ * The name for this named port. The name must be 1-63 characters long, and
+ * comply with RFC1035.
*/
- core.String key;
- /** [Output Only] A warning data value corresponding to the key. */
- core.String value;
+ core.String name;
+ /** The port number, which can be a value between 1 and 65535. */
+ core.int port;
- MachineTypesScopedListWarningData();
+ NamedPort();
- MachineTypesScopedListWarningData.fromJson(core.Map _json) {
- if (_json.containsKey("key")) {
- key = _json["key"];
+ NamedPort.fromJson(core.Map _json) {
+ if (_json.containsKey("name")) {
+ name = _json["name"];
}
- if (_json.containsKey("value")) {
- value = _json["value"];
+ if (_json.containsKey("port")) {
+ port = _json["port"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (key != null) {
- _json["key"] = key;
+ if (name != null) {
+ _json["name"] = name;
}
- if (value != null) {
- _json["value"] = value;
+ if (port != null) {
+ _json["port"] = port;
}
return _json;
}
}
/**
- * [Output Only] An informational warning that appears when the machine types
- * list is empty.
+ * Represents a Network resource. Read Networks and Firewalls for more
+ * information.
*/
-class MachineTypesScopedListWarning {
+class Network {
/**
- * [Output Only] A warning code, if applicable. For example, Compute Engine
- * returns NO_RESULTS_ON_PAGE if there are no results in the response.
- * Possible string values are:
- * - "CLEANUP_FAILED"
- * - "DEPRECATED_RESOURCE_USED"
- * - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
- * - "INJECTED_KERNELS_DEPRECATED"
- * - "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
- * - "NEXT_HOP_CANNOT_IP_FORWARD"
- * - "NEXT_HOP_INSTANCE_NOT_FOUND"
- * - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
- * - "NEXT_HOP_NOT_RUNNING"
- * - "NOT_CRITICAL_ERROR"
- * - "NO_RESULTS_ON_PAGE"
- * - "REQUIRED_TOS_AGREEMENT"
- * - "RESOURCE_NOT_DELETED"
- * - "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
- * - "UNREACHABLE"
+ * The range of internal addresses that are legal on this network. This range
+ * is a CIDR specification, for example: 192.168.0.0/16. Provided by the
+ * client when the network is created.
*/
- core.String code;
+ core.String IPv4Range;
/**
- * [Output Only] Metadata about this warning in key: value format. For
- * example:
- * "data": [ { "key": "scope", "value": "zones/us-east1-d" }
+ * When set to true, the network is created in "auto subnet mode". When set to
+ * false, the network is in "custom subnet mode".
+ *
+ * In "auto subnet mode", a newly created network is assigned the default CIDR
+ * of 10.128.0.0/9 and it automatically creates one subnetwork per region.
+ */
+ core.bool autoCreateSubnetworks;
+ /** [Output Only] Creation timestamp in RFC3339 text format. */
+ core.String creationTimestamp;
+ /**
+ * An optional description of this resource. Provide this property when you
+ * create the resource.
+ */
+ core.String description;
+ /**
+ * A gateway address for default routing to other networks. This value is read
+ * only and is selected by the Google Compute Engine, typically as the first
+ * usable address in the IPv4Range.
+ */
+ core.String gatewayIPv4;
+ /**
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
+ */
+ core.String id;
+ /**
+ * [Output Only] Type of the resource. Always compute#network for networks.
+ */
+ core.String kind;
+ /**
+ * Name of the resource. Provided by the client when the resource is created.
+ * The name must be 1-63 characters long, and comply with RFC1035.
+ * Specifically, the name must be 1-63 characters long and match the regular
+ * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
+ * be a lowercase letter, and all following characters must be a dash,
+ * lowercase letter, or digit, except the last character, which cannot be a
+ * dash.
+ */
+ core.String name;
+ /** [Output Only] Server-defined URL for the resource. */
+ core.String selfLink;
+ /**
+ * [Output Only] Server-defined fully-qualified URLs for all subnetworks in
+ * this network.
*/
- core.List<MachineTypesScopedListWarningData> data;
- /** [Output Only] A human-readable description of the warning code. */
- core.String message;
+ core.List<core.String> subnetworks;
- MachineTypesScopedListWarning();
+ Network();
- MachineTypesScopedListWarning.fromJson(core.Map _json) {
- if (_json.containsKey("code")) {
- code = _json["code"];
+ Network.fromJson(core.Map _json) {
+ if (_json.containsKey("IPv4Range")) {
+ IPv4Range = _json["IPv4Range"];
}
- if (_json.containsKey("data")) {
- data = _json["data"].map((value) => new MachineTypesScopedListWarningData.fromJson(value)).toList();
+ if (_json.containsKey("autoCreateSubnetworks")) {
+ autoCreateSubnetworks = _json["autoCreateSubnetworks"];
}
- if (_json.containsKey("message")) {
- message = _json["message"];
+ if (_json.containsKey("creationTimestamp")) {
+ creationTimestamp = _json["creationTimestamp"];
+ }
+ if (_json.containsKey("description")) {
+ description = _json["description"];
+ }
+ if (_json.containsKey("gatewayIPv4")) {
+ gatewayIPv4 = _json["gatewayIPv4"];
+ }
+ if (_json.containsKey("id")) {
+ id = _json["id"];
+ }
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("name")) {
+ name = _json["name"];
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
+ }
+ if (_json.containsKey("subnetworks")) {
+ subnetworks = _json["subnetworks"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (code != null) {
- _json["code"] = code;
+ if (IPv4Range != null) {
+ _json["IPv4Range"] = IPv4Range;
}
- if (data != null) {
- _json["data"] = data.map((value) => (value).toJson()).toList();
+ if (autoCreateSubnetworks != null) {
+ _json["autoCreateSubnetworks"] = autoCreateSubnetworks;
}
- if (message != null) {
- _json["message"] = message;
+ if (creationTimestamp != null) {
+ _json["creationTimestamp"] = creationTimestamp;
+ }
+ if (description != null) {
+ _json["description"] = description;
+ }
+ if (gatewayIPv4 != null) {
+ _json["gatewayIPv4"] = gatewayIPv4;
+ }
+ if (id != null) {
+ _json["id"] = id;
+ }
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (name != null) {
+ _json["name"] = name;
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
+ }
+ if (subnetworks != null) {
+ _json["subnetworks"] = subnetworks;
}
return _json;
}
}
-class MachineTypesScopedList {
- /** [Output Only] List of machine types contained in this scope. */
- core.List<MachineType> machineTypes;
+/** A network interface resource attached to an instance. */
+class NetworkInterface {
/**
- * [Output Only] An informational warning that appears when the machine types
- * list is empty.
+ * An array of configurations for this interface. Currently, ONE_TO_ONE_NAT is
+ * the only access config supported. If there are no accessConfigs specified,
+ * then this instance will have no external internet access.
*/
- MachineTypesScopedListWarning warning;
+ core.List<AccessConfig> accessConfigs;
+ /**
+ * [Output Only] The name of the network interface, generated by the server.
+ * For network devices, these are eth0, eth1, etc.
+ */
+ core.String name;
+ /**
+ * URL of the network resource for this instance. This is required for
+ * creating an instance but optional when creating a firewall rule. If not
+ * specified when creating a firewall rule, the default network is used:
+ *
+ * global/networks/default
+ *
+ * If you specify this property, you can specify the network as a full or
+ * partial URL. For example, the following are all valid URLs:
+ * -
+ * https://www.googleapis.com/compute/v1/projects/project/global/networks/network
+ * - projects/project/global/networks/network
+ * - global/networks/default
+ */
+ core.String network;
+ /**
+ * An IPv4 internal network address to assign to the instance for this network
+ * interface. If not specified by the user, an unused internal IP is assigned
+ * by the system.
+ */
+ core.String networkIP;
+ /**
+ * The URL of the Subnetwork resource for this instance. If the network
+ * resource is in legacy mode, do not provide this property. If the network is
+ * in auto subnet mode, providing the subnetwork is optional. If the network
+ * is in custom subnet mode, then this field should be specified. If you
+ * specify this property, you can specify the subnetwork as a full or partial
+ * URL. For example, the following are all valid URLs:
+ * -
+ * https://www.googleapis.com/compute/v1/projects/project/regions/region/subnetworks/subnetwork
+ * - regions/region/subnetworks/subnetwork
+ */
+ core.String subnetwork;
- MachineTypesScopedList();
+ NetworkInterface();
- MachineTypesScopedList.fromJson(core.Map _json) {
- if (_json.containsKey("machineTypes")) {
- machineTypes = _json["machineTypes"].map((value) => new MachineType.fromJson(value)).toList();
+ NetworkInterface.fromJson(core.Map _json) {
+ if (_json.containsKey("accessConfigs")) {
+ accessConfigs = _json["accessConfigs"].map((value) => new AccessConfig.fromJson(value)).toList();
}
- if (_json.containsKey("warning")) {
- warning = new MachineTypesScopedListWarning.fromJson(_json["warning"]);
+ if (_json.containsKey("name")) {
+ name = _json["name"];
+ }
+ if (_json.containsKey("network")) {
+ network = _json["network"];
+ }
+ if (_json.containsKey("networkIP")) {
+ networkIP = _json["networkIP"];
+ }
+ if (_json.containsKey("subnetwork")) {
+ subnetwork = _json["subnetwork"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (machineTypes != null) {
- _json["machineTypes"] = machineTypes.map((value) => (value).toJson()).toList();
+ if (accessConfigs != null) {
+ _json["accessConfigs"] = accessConfigs.map((value) => (value).toJson()).toList();
}
- if (warning != null) {
- _json["warning"] = (warning).toJson();
+ if (name != null) {
+ _json["name"] = name;
+ }
+ if (network != null) {
+ _json["network"] = network;
+ }
+ if (networkIP != null) {
+ _json["networkIP"] = networkIP;
+ }
+ if (subnetwork != null) {
+ _json["subnetwork"] = subnetwork;
}
return _json;
}
}
-class ManagedInstance {
- /**
- * [Output Only] The current action that the managed instance group has
- * scheduled for the instance. Possible values:
- * - NONE The instance is running, and the managed instance group does not
- * have any scheduled actions for this instance.
- * - CREATING The managed instance group is creating this instance. If the
- * group fails to create this instance, it will try again until it is
- * successful.
- * - CREATING_WITHOUT_RETRIES The managed instance group is attempting to
- * create this instance only once. If the group fails to create this instance,
- * it does not try again and the group's target_size value is decreased.
- * - RECREATING The managed instance group is recreating this instance.
- * - DELETING The managed instance group is permanently deleting this
- * instance.
- * - ABANDONING The managed instance group is abandoning this instance. The
- * instance will be removed from the instance group and from any target pools
- * that are associated with this group.
- * - RESTARTING The managed instance group is restarting the instance.
- * - REFRESHING The managed instance group is applying configuration changes
- * to the instance without stopping it. For example, the group can update the
- * target pool list for an instance without stopping that instance.
- * Possible string values are:
- * - "ABANDONING"
- * - "CREATING"
- * - "DELETING"
- * - "NONE"
- * - "RECREATING"
- * - "REFRESHING"
- * - "RESTARTING"
- */
- core.String currentAction;
+/** Contains a list of networks. */
+class NetworkList {
/**
- * [Output only] The unique identifier for this resource. This field is empty
- * when instance does not exist.
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
*/
core.String id;
+ /** [Output Only] A list of Network resources. */
+ core.List<Network> items;
/**
- * [Output Only] The URL of the instance. The URL can exist even if the
- * instance has not yet been created.
- */
- core.String instance;
- /**
- * [Output Only] The status of the instance. This field is empty when the
- * instance does not exist.
- * Possible string values are:
- * - "PROVISIONING"
- * - "RUNNING"
- * - "STAGING"
- * - "STOPPED"
- * - "STOPPING"
- * - "SUSPENDED"
- * - "SUSPENDING"
- * - "TERMINATED"
+ * [Output Only] Type of resource. Always compute#networkList for lists of
+ * networks.
*/
- core.String instanceStatus;
+ core.String kind;
/**
- * [Output Only] Information about the last attempt to create or delete the
- * instance.
+ * [Output Only] This token allows you to get the next page of results for
+ * list requests. If the number of results is larger than maxResults, use the
+ * nextPageToken as a value for the query parameter pageToken in the next list
+ * request. Subsequent list requests will have their own nextPageToken to
+ * continue paging through the results.
*/
- ManagedInstanceLastAttempt lastAttempt;
+ core.String nextPageToken;
+ /** [Output Only] Server-defined URL for this resource . */
+ core.String selfLink;
- ManagedInstance();
+ NetworkList();
- ManagedInstance.fromJson(core.Map _json) {
- if (_json.containsKey("currentAction")) {
- currentAction = _json["currentAction"];
- }
+ NetworkList.fromJson(core.Map _json) {
if (_json.containsKey("id")) {
id = _json["id"];
}
- if (_json.containsKey("instance")) {
- instance = _json["instance"];
+ if (_json.containsKey("items")) {
+ items = _json["items"].map((value) => new Network.fromJson(value)).toList();
}
- if (_json.containsKey("instanceStatus")) {
- instanceStatus = _json["instanceStatus"];
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
}
- if (_json.containsKey("lastAttempt")) {
- lastAttempt = new ManagedInstanceLastAttempt.fromJson(_json["lastAttempt"]);
+ if (_json.containsKey("nextPageToken")) {
+ nextPageToken = _json["nextPageToken"];
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (currentAction != null) {
- _json["currentAction"] = currentAction;
- }
if (id != null) {
_json["id"] = id;
}
- if (instance != null) {
- _json["instance"] = instance;
+ if (items != null) {
+ _json["items"] = items.map((value) => (value).toJson()).toList();
}
- if (instanceStatus != null) {
- _json["instanceStatus"] = instanceStatus;
+ if (kind != null) {
+ _json["kind"] = kind;
}
- if (lastAttempt != null) {
- _json["lastAttempt"] = (lastAttempt).toJson();
+ if (nextPageToken != null) {
+ _json["nextPageToken"] = nextPageToken;
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
}
return _json;
}
}
-class ManagedInstanceLastAttemptErrorsErrors {
+class OperationErrorErrors {
/** [Output Only] The error type identifier for this error. */
core.String code;
/**
@@ -19730,9 +21039,9 @@ class ManagedInstanceLastAttemptErrorsErrors {
/** [Output Only] An optional, human-readable error message. */
core.String message;
- ManagedInstanceLastAttemptErrorsErrors();
+ OperationErrorErrors();
- ManagedInstanceLastAttemptErrorsErrors.fromJson(core.Map _json) {
+ OperationErrorErrors.fromJson(core.Map _json) {
if (_json.containsKey("code")) {
code = _json["code"];
}
@@ -19760,21 +21069,21 @@ class ManagedInstanceLastAttemptErrorsErrors {
}
/**
- * [Output Only] Encountered errors during the last attempt to create or delete
- * the instance.
+ * [Output Only] If errors are generated during processing of the operation,
+ * this field will be populated.
*/
-class ManagedInstanceLastAttemptErrors {
+class OperationError {
/**
* [Output Only] The array of errors encountered while processing this
* operation.
*/
- core.List<ManagedInstanceLastAttemptErrorsErrors> errors;
+ core.List<OperationErrorErrors> errors;
- ManagedInstanceLastAttemptErrors();
+ OperationError();
- ManagedInstanceLastAttemptErrors.fromJson(core.Map _json) {
+ OperationError.fromJson(core.Map _json) {
if (_json.containsKey("errors")) {
- errors = _json["errors"].map((value) => new ManagedInstanceLastAttemptErrorsErrors.fromJson(value)).toList();
+ errors = _json["errors"].map((value) => new OperationErrorErrors.fromJson(value)).toList();
}
}
@@ -19787,49 +21096,23 @@ class ManagedInstanceLastAttemptErrors {
}
}
-class ManagedInstanceLastAttempt {
- /**
- * [Output Only] Encountered errors during the last attempt to create or
- * delete the instance.
- */
- ManagedInstanceLastAttemptErrors errors;
-
- ManagedInstanceLastAttempt();
-
- ManagedInstanceLastAttempt.fromJson(core.Map _json) {
- if (_json.containsKey("errors")) {
- errors = new ManagedInstanceLastAttemptErrors.fromJson(_json["errors"]);
- }
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (errors != null) {
- _json["errors"] = (errors).toJson();
- }
- return _json;
- }
-}
-
-class MetadataItems {
+class OperationWarningsData {
/**
- * Key for the metadata entry. Keys must conform to the following regexp:
- * [a-zA-Z0-9-_]+, and be less than 128 bytes in length. This is reflected as
- * part of a URL in the metadata server. Additionally, to avoid ambiguity,
- * keys must not conflict with any other metadata keys for the project.
+ * [Output Only] A key that provides more detail on the warning being
+ * returned. For example, for warnings where there are no results in a list
+ * request for a particular zone, this key might be scope and the key value
+ * might be the zone name. Other examples might be a key indicating a
+ * deprecated resource and a suggested replacement, or a warning about invalid
+ * network settings (for example, if an instance attempts to perform IP
+ * forwarding but is not enabled for IP forwarding).
*/
core.String key;
- /**
- * Value for the metadata entry. These are free-form strings, and only have
- * meaning as interpreted by the image running in the instance. The only
- * restriction placed on values is that their size must be less than or equal
- * to 32768 bytes.
- */
+ /** [Output Only] A warning data value corresponding to the key. */
core.String value;
- MetadataItems();
+ OperationWarningsData();
- MetadataItems.fromJson(core.Map _json) {
+ OperationWarningsData.fromJson(core.Map _json) {
if (_json.containsKey("key")) {
key = _json["key"];
}
@@ -19850,162 +21133,182 @@ class MetadataItems {
}
}
-/** A metadata key/value entry. */
-class Metadata {
- /**
- * Specifies a fingerprint for this request, which is essentially a hash of
- * the metadata's contents and used for optimistic locking. The fingerprint is
- * initially generated by Compute Engine and changes after every request to
- * modify or update metadata. You must always provide an up-to-date
- * fingerprint hash in order to update or change metadata.
- */
- core.String fingerprint;
- core.List<core.int> get fingerprintAsBytes {
- return crypto.CryptoUtils.base64StringToBytes(fingerprint);
- }
-
- void set fingerprintAsBytes(core.List<core.int> _bytes) {
- fingerprint = crypto.CryptoUtils.bytesToBase64(_bytes, urlSafe: true);
- }
+class OperationWarnings {
/**
- * Array of key/value pairs. The total size of all keys and values must be
- * less than 512 KB.
+ * [Output Only] A warning code, if applicable. For example, Compute Engine
+ * returns NO_RESULTS_ON_PAGE if there are no results in the response.
+ * Possible string values are:
+ * - "CLEANUP_FAILED"
+ * - "DEPRECATED_RESOURCE_USED"
+ * - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
+ * - "INJECTED_KERNELS_DEPRECATED"
+ * - "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
+ * - "NEXT_HOP_CANNOT_IP_FORWARD"
+ * - "NEXT_HOP_INSTANCE_NOT_FOUND"
+ * - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
+ * - "NEXT_HOP_NOT_RUNNING"
+ * - "NOT_CRITICAL_ERROR"
+ * - "NO_RESULTS_ON_PAGE"
+ * - "REQUIRED_TOS_AGREEMENT"
+ * - "RESOURCE_NOT_DELETED"
+ * - "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
+ * - "UNREACHABLE"
*/
- core.List<MetadataItems> items;
+ core.String code;
/**
- * [Output Only] Type of the resource. Always compute#metadata for metadata.
+ * [Output Only] Metadata about this warning in key: value format. For
+ * example:
+ * "data": [ { "key": "scope", "value": "zones/us-east1-d" }
*/
- core.String kind;
+ core.List<OperationWarningsData> data;
+ /** [Output Only] A human-readable description of the warning code. */
+ core.String message;
- Metadata();
+ OperationWarnings();
- Metadata.fromJson(core.Map _json) {
- if (_json.containsKey("fingerprint")) {
- fingerprint = _json["fingerprint"];
+ OperationWarnings.fromJson(core.Map _json) {
+ if (_json.containsKey("code")) {
+ code = _json["code"];
}
- if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new MetadataItems.fromJson(value)).toList();
+ if (_json.containsKey("data")) {
+ data = _json["data"].map((value) => new OperationWarningsData.fromJson(value)).toList();
}
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
+ if (_json.containsKey("message")) {
+ message = _json["message"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (fingerprint != null) {
- _json["fingerprint"] = fingerprint;
+ if (code != null) {
+ _json["code"] = code;
}
- if (items != null) {
- _json["items"] = items.map((value) => (value).toJson()).toList();
+ if (data != null) {
+ _json["data"] = data.map((value) => (value).toJson()).toList();
}
- if (kind != null) {
- _json["kind"] = kind;
+ if (message != null) {
+ _json["message"] = message;
}
return _json;
}
}
-/** The named port. For example: . */
-class NamedPort {
+/** An Operation resource, used to manage asynchronous API requests. */
+class Operation {
+ /** [Output Only] Reserved for future use. */
+ core.String clientOperationId;
+ /** [Output Only] Creation timestamp in RFC3339 text format. */
+ core.String creationTimestamp;
/**
- * The name for this named port. The name must be 1-63 characters long, and
- * comply with RFC1035.
+ * [Output Only] A textual description of the operation, which is set when the
+ * operation is created.
+ */
+ core.String description;
+ /**
+ * [Output Only] The time that this operation was completed. This value is in
+ * RFC3339 text format.
+ */
+ core.String endTime;
+ /**
+ * [Output Only] If errors are generated during processing of the operation,
+ * this field will be populated.
+ */
+ OperationError error;
+ /**
+ * [Output Only] If the operation fails, this field contains the HTTP error
+ * message that was returned, such as NOT FOUND.
+ */
+ core.String httpErrorMessage;
+ /**
+ * [Output Only] If the operation fails, this field contains the HTTP error
+ * status code that was returned. For example, a 404 means the resource was
+ * not found.
+ */
+ core.int httpErrorStatusCode;
+ /**
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
+ */
+ core.String id;
+ /**
+ * [Output Only] The time that this operation was requested. This value is in
+ * RFC3339 text format.
+ */
+ core.String insertTime;
+ /**
+ * [Output Only] Type of the resource. Always compute#operation for Operation
+ * resources.
*/
+ core.String kind;
+ /** [Output Only] Name of the resource. */
core.String name;
- /** The port number, which can be a value between 1 and 65535. */
- core.int port;
-
- NamedPort();
-
- NamedPort.fromJson(core.Map _json) {
- if (_json.containsKey("name")) {
- name = _json["name"];
- }
- if (_json.containsKey("port")) {
- port = _json["port"];
- }
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (name != null) {
- _json["name"] = name;
- }
- if (port != null) {
- _json["port"] = port;
- }
- return _json;
- }
-}
-
-/**
- * Represents a Network resource. Read Networks and Firewalls for more
- * information.
- */
-class Network {
/**
- * The range of internal addresses that are legal on this network. This range
- * is a CIDR specification, for example: 192.168.0.0/16. Provided by the
- * client when the network is created.
+ * [Output Only] The type of operation, such as insert, update, or delete, and
+ * so on.
+ */
+ core.String operationType;
+ /**
+ * [Output Only] An optional progress indicator that ranges from 0 to 100.
+ * There is no requirement that this be linear or support any granularity of
+ * operations. This should not be used to guess when the operation will be
+ * complete. This number should monotonically increase as the operation
+ * progresses.
+ */
+ core.int progress;
+ /**
+ * [Output Only] The URL of the region where the operation resides. Only
+ * available when performing regional operations.
*/
- core.String IPv4Range;
+ core.String region;
+ /** [Output Only] Server-defined URL for the resource. */
+ core.String selfLink;
/**
- * When set to true, the network is created in "auto subnet mode". When set to
- * false, the network is in "custom subnet mode".
- *
- * In "auto subnet mode", a newly created network is assigned the default CIDR
- * of 10.128.0.0/9 and it automatically creates one subnetwork per region.
+ * [Output Only] The time that this operation was started by the server. This
+ * value is in RFC3339 text format.
*/
- core.bool autoCreateSubnetworks;
- /** [Output Only] Creation timestamp in RFC3339 text format. */
- core.String creationTimestamp;
+ core.String startTime;
/**
- * An optional description of this resource. Provide this property when you
- * create the resource.
+ * [Output Only] The status of the operation, which can be one of the
+ * following: PENDING, RUNNING, or DONE.
+ * Possible string values are:
+ * - "DONE"
+ * - "PENDING"
+ * - "RUNNING"
*/
- core.String description;
+ core.String status;
/**
- * A gateway address for default routing to other networks. This value is read
- * only and is selected by the Google Compute Engine, typically as the first
- * usable address in the IPv4Range.
+ * [Output Only] An optional textual description of the current status of the
+ * operation.
*/
- core.String gatewayIPv4;
+ core.String statusMessage;
/**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
+ * [Output Only] The unique target ID, which identifies a specific incarnation
+ * of the target resource.
*/
- core.String id;
+ core.String targetId;
+ /** [Output Only] The URL of the resource that the operation modifies. */
+ core.String targetLink;
/**
- * [Output Only] Type of the resource. Always compute#network for networks.
+ * [Output Only] User who requested the operation, for example:
+ * user@example.com.
*/
- core.String kind;
+ core.String user;
/**
- * Name of the resource. Provided by the client when the resource is created.
- * The name must be 1-63 characters long, and comply with RFC1035.
- * Specifically, the name must be 1-63 characters long and match the regular
- * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
- * be a lowercase letter, and all following characters must be a dash,
- * lowercase letter, or digit, except the last character, which cannot be a
- * dash.
+ * [Output Only] If warning messages are generated during processing of the
+ * operation, this field will be populated.
*/
- core.String name;
- /** [Output Only] Server-defined URL for the resource. */
- core.String selfLink;
+ core.List<OperationWarnings> warnings;
/**
- * [Output Only] Server-defined fully-qualified URLs for all subnetworks in
- * this network.
+ * [Output Only] The URL of the zone where the operation resides. Only
+ * available when performing per-zone operations.
*/
- core.List<core.String> subnetworks;
+ core.String zone;
- Network();
+ Operation();
- Network.fromJson(core.Map _json) {
- if (_json.containsKey("IPv4Range")) {
- IPv4Range = _json["IPv4Range"];
- }
- if (_json.containsKey("autoCreateSubnetworks")) {
- autoCreateSubnetworks = _json["autoCreateSubnetworks"];
+ Operation.fromJson(core.Map _json) {
+ if (_json.containsKey("clientOperationId")) {
+ clientOperationId = _json["clientOperationId"];
}
if (_json.containsKey("creationTimestamp")) {
creationTimestamp = _json["creationTimestamp"];
@@ -20013,33 +21316,72 @@ class Network {
if (_json.containsKey("description")) {
description = _json["description"];
}
- if (_json.containsKey("gatewayIPv4")) {
- gatewayIPv4 = _json["gatewayIPv4"];
+ if (_json.containsKey("endTime")) {
+ endTime = _json["endTime"];
+ }
+ if (_json.containsKey("error")) {
+ error = new OperationError.fromJson(_json["error"]);
+ }
+ if (_json.containsKey("httpErrorMessage")) {
+ httpErrorMessage = _json["httpErrorMessage"];
+ }
+ if (_json.containsKey("httpErrorStatusCode")) {
+ httpErrorStatusCode = _json["httpErrorStatusCode"];
}
if (_json.containsKey("id")) {
id = _json["id"];
}
+ if (_json.containsKey("insertTime")) {
+ insertTime = _json["insertTime"];
+ }
if (_json.containsKey("kind")) {
kind = _json["kind"];
}
if (_json.containsKey("name")) {
name = _json["name"];
}
+ if (_json.containsKey("operationType")) {
+ operationType = _json["operationType"];
+ }
+ if (_json.containsKey("progress")) {
+ progress = _json["progress"];
+ }
+ if (_json.containsKey("region")) {
+ region = _json["region"];
+ }
if (_json.containsKey("selfLink")) {
selfLink = _json["selfLink"];
}
- if (_json.containsKey("subnetworks")) {
- subnetworks = _json["subnetworks"];
+ if (_json.containsKey("startTime")) {
+ startTime = _json["startTime"];
+ }
+ if (_json.containsKey("status")) {
+ status = _json["status"];
+ }
+ if (_json.containsKey("statusMessage")) {
+ statusMessage = _json["statusMessage"];
+ }
+ if (_json.containsKey("targetId")) {
+ targetId = _json["targetId"];
+ }
+ if (_json.containsKey("targetLink")) {
+ targetLink = _json["targetLink"];
+ }
+ if (_json.containsKey("user")) {
+ user = _json["user"];
+ }
+ if (_json.containsKey("warnings")) {
+ warnings = _json["warnings"].map((value) => new OperationWarnings.fromJson(value)).toList();
+ }
+ if (_json.containsKey("zone")) {
+ zone = _json["zone"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (IPv4Range != null) {
- _json["IPv4Range"] = IPv4Range;
- }
- if (autoCreateSubnetworks != null) {
- _json["autoCreateSubnetworks"] = autoCreateSubnetworks;
+ if (clientOperationId != null) {
+ _json["clientOperationId"] = clientOperationId;
}
if (creationTimestamp != null) {
_json["creationTimestamp"] = creationTimestamp;
@@ -20047,128 +21389,147 @@ class Network {
if (description != null) {
_json["description"] = description;
}
- if (gatewayIPv4 != null) {
- _json["gatewayIPv4"] = gatewayIPv4;
+ if (endTime != null) {
+ _json["endTime"] = endTime;
+ }
+ if (error != null) {
+ _json["error"] = (error).toJson();
+ }
+ if (httpErrorMessage != null) {
+ _json["httpErrorMessage"] = httpErrorMessage;
+ }
+ if (httpErrorStatusCode != null) {
+ _json["httpErrorStatusCode"] = httpErrorStatusCode;
}
if (id != null) {
_json["id"] = id;
}
+ if (insertTime != null) {
+ _json["insertTime"] = insertTime;
+ }
if (kind != null) {
_json["kind"] = kind;
}
if (name != null) {
_json["name"] = name;
}
+ if (operationType != null) {
+ _json["operationType"] = operationType;
+ }
+ if (progress != null) {
+ _json["progress"] = progress;
+ }
+ if (region != null) {
+ _json["region"] = region;
+ }
if (selfLink != null) {
_json["selfLink"] = selfLink;
}
- if (subnetworks != null) {
- _json["subnetworks"] = subnetworks;
+ if (startTime != null) {
+ _json["startTime"] = startTime;
+ }
+ if (status != null) {
+ _json["status"] = status;
+ }
+ if (statusMessage != null) {
+ _json["statusMessage"] = statusMessage;
+ }
+ if (targetId != null) {
+ _json["targetId"] = targetId;
+ }
+ if (targetLink != null) {
+ _json["targetLink"] = targetLink;
+ }
+ if (user != null) {
+ _json["user"] = user;
+ }
+ if (warnings != null) {
+ _json["warnings"] = warnings.map((value) => (value).toJson()).toList();
+ }
+ if (zone != null) {
+ _json["zone"] = zone;
}
return _json;
}
}
-/** A network interface resource attached to an instance. */
-class NetworkInterface {
- /**
- * An array of configurations for this interface. Currently, ONE_TO_ONE_NAT is
- * the only access config supported. If there are no accessConfigs specified,
- * then this instance will have no external internet access.
- */
- core.List<AccessConfig> accessConfigs;
- /**
- * [Output Only] The name of the network interface, generated by the server.
- * For network devices, these are eth0, eth1, etc.
- */
- core.String name;
+class OperationAggregatedList {
/**
- * URL of the network resource for this instance. This is required for
- * creating an instance but optional when creating a firewall rule. If not
- * specified when creating a firewall rule, the default network is used:
- *
- * global/networks/default
- *
- * If you specify this property, you can specify the network as a full or
- * partial URL. For example, the following are all valid URLs:
- * -
- * https://www.googleapis.com/compute/v1/projects/project/global/networks/network
- * - projects/project/global/networks/network
- * - global/networks/default
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
*/
- core.String network;
+ core.String id;
+ /** [Output Only] A map of scoped operation lists. */
+ core.Map<core.String, OperationsScopedList> items;
/**
- * An IPv4 internal network address to assign to the instance for this network
- * interface. If not specified by the user, an unused internal IP is assigned
- * by the system.
+ * [Output Only] Type of resource. Always compute#operationAggregatedList for
+ * aggregated lists of operations.
*/
- core.String networkIP;
+ core.String kind;
/**
- * The URL of the Subnetwork resource for this instance. If the network
- * resource is in legacy mode, do not provide this property. If the network is
- * in auto subnet mode, providing the subnetwork is optional. If the network
- * is in custom subnet mode, then this field should be specified. If you
- * specify this property, you can specify the subnetwork as a full or partial
- * URL. For example, the following are all valid URLs:
- * -
- * https://www.googleapis.com/compute/v1/projects/project/regions/region/subnetworks/subnetwork
- * - regions/region/subnetworks/subnetwork
+ * [Output Only] This token allows you to get the next page of results for
+ * list requests. If the number of results is larger than maxResults, use the
+ * nextPageToken as a value for the query parameter pageToken in the next list
+ * request. Subsequent list requests will have their own nextPageToken to
+ * continue paging through the results.
*/
- core.String subnetwork;
+ core.String nextPageToken;
+ /** [Output Only] Server-defined URL for this resource. */
+ core.String selfLink;
- NetworkInterface();
+ OperationAggregatedList();
- NetworkInterface.fromJson(core.Map _json) {
- if (_json.containsKey("accessConfigs")) {
- accessConfigs = _json["accessConfigs"].map((value) => new AccessConfig.fromJson(value)).toList();
+ OperationAggregatedList.fromJson(core.Map _json) {
+ if (_json.containsKey("id")) {
+ id = _json["id"];
}
- if (_json.containsKey("name")) {
- name = _json["name"];
+ if (_json.containsKey("items")) {
+ items = commons.mapMap(_json["items"], (item) => new OperationsScopedList.fromJson(item));
}
- if (_json.containsKey("network")) {
- network = _json["network"];
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
}
- if (_json.containsKey("networkIP")) {
- networkIP = _json["networkIP"];
+ if (_json.containsKey("nextPageToken")) {
+ nextPageToken = _json["nextPageToken"];
}
- if (_json.containsKey("subnetwork")) {
- subnetwork = _json["subnetwork"];
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (accessConfigs != null) {
- _json["accessConfigs"] = accessConfigs.map((value) => (value).toJson()).toList();
+ if (id != null) {
+ _json["id"] = id;
}
- if (name != null) {
- _json["name"] = name;
+ if (items != null) {
+ _json["items"] = commons.mapMap(items, (item) => (item).toJson());
}
- if (network != null) {
- _json["network"] = network;
+ if (kind != null) {
+ _json["kind"] = kind;
}
- if (networkIP != null) {
- _json["networkIP"] = networkIP;
+ if (nextPageToken != null) {
+ _json["nextPageToken"] = nextPageToken;
}
- if (subnetwork != null) {
- _json["subnetwork"] = subnetwork;
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
}
return _json;
}
}
-/** Contains a list of networks. */
-class NetworkList {
+/** Contains a list of Operation resources. */
+class OperationList {
/**
* [Output Only] The unique identifier for the resource. This identifier is
* defined by the server.
*/
core.String id;
- /** [Output Only] A list of Network resources. */
- core.List<Network> items;
+ /** [Output Only] A list of Operation resources. */
+ core.List<Operation> items;
/**
- * [Output Only] Type of resource. Always compute#networkList for lists of
- * networks.
+ * [Output Only] Type of resource. Always compute#operations for Operations
+ * resource.
*/
core.String kind;
/**
@@ -20179,17 +21540,17 @@ class NetworkList {
* continue paging through the results.
*/
core.String nextPageToken;
- /** [Output Only] Server-defined URL for this resource . */
+ /** [Output Only] Server-defined URL for this resource. */
core.String selfLink;
- NetworkList();
+ OperationList();
- NetworkList.fromJson(core.Map _json) {
+ OperationList.fromJson(core.Map _json) {
if (_json.containsKey("id")) {
id = _json["id"];
}
if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new Network.fromJson(value)).toList();
+ items = _json["items"].map((value) => new Operation.fromJson(value)).toList();
}
if (_json.containsKey("kind")) {
kind = _json["kind"];
@@ -20223,25 +21584,86 @@ class NetworkList {
}
}
-class OperationErrorErrors {
- /** [Output Only] The error type identifier for this error. */
+class OperationsScopedListWarningData {
+ /**
+ * [Output Only] A key that provides more detail on the warning being
+ * returned. For example, for warnings where there are no results in a list
+ * request for a particular zone, this key might be scope and the key value
+ * might be the zone name. Other examples might be a key indicating a
+ * deprecated resource and a suggested replacement, or a warning about invalid
+ * network settings (for example, if an instance attempts to perform IP
+ * forwarding but is not enabled for IP forwarding).
+ */
+ core.String key;
+ /** [Output Only] A warning data value corresponding to the key. */
+ core.String value;
+
+ OperationsScopedListWarningData();
+
+ OperationsScopedListWarningData.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;
+ }
+}
+
+/**
+ * [Output Only] Informational warning which replaces the list of operations
+ * when the list is empty.
+ */
+class OperationsScopedListWarning {
+ /**
+ * [Output Only] A warning code, if applicable. For example, Compute Engine
+ * returns NO_RESULTS_ON_PAGE if there are no results in the response.
+ * Possible string values are:
+ * - "CLEANUP_FAILED"
+ * - "DEPRECATED_RESOURCE_USED"
+ * - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
+ * - "INJECTED_KERNELS_DEPRECATED"
+ * - "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
+ * - "NEXT_HOP_CANNOT_IP_FORWARD"
+ * - "NEXT_HOP_INSTANCE_NOT_FOUND"
+ * - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
+ * - "NEXT_HOP_NOT_RUNNING"
+ * - "NOT_CRITICAL_ERROR"
+ * - "NO_RESULTS_ON_PAGE"
+ * - "REQUIRED_TOS_AGREEMENT"
+ * - "RESOURCE_NOT_DELETED"
+ * - "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
+ * - "UNREACHABLE"
+ */
core.String code;
/**
- * [Output Only] Indicates the field in the request that caused the error.
- * This property is optional.
+ * [Output Only] Metadata about this warning in key: value format. For
+ * example:
+ * "data": [ { "key": "scope", "value": "zones/us-east1-d" }
*/
- core.String location;
- /** [Output Only] An optional, human-readable error message. */
+ core.List<OperationsScopedListWarningData> data;
+ /** [Output Only] A human-readable description of the warning code. */
core.String message;
- OperationErrorErrors();
+ OperationsScopedListWarning();
- OperationErrorErrors.fromJson(core.Map _json) {
+ OperationsScopedListWarning.fromJson(core.Map _json) {
if (_json.containsKey("code")) {
code = _json["code"];
}
- if (_json.containsKey("location")) {
- location = _json["location"];
+ if (_json.containsKey("data")) {
+ data = _json["data"].map((value) => new OperationsScopedListWarningData.fromJson(value)).toList();
}
if (_json.containsKey("message")) {
message = _json["message"];
@@ -20253,8 +21675,8 @@ class OperationErrorErrors {
if (code != null) {
_json["code"] = code;
}
- if (location != null) {
- _json["location"] = location;
+ if (data != null) {
+ _json["data"] = data.map((value) => (value).toJson()).toList();
}
if (message != null) {
_json["message"] = message;
@@ -20263,402 +21685,447 @@ class OperationErrorErrors {
}
}
+class OperationsScopedList {
+ /** [Output Only] List of operations contained in this scope. */
+ core.List<Operation> operations;
+ /**
+ * [Output Only] Informational warning which replaces the list of operations
+ * when the list is empty.
+ */
+ OperationsScopedListWarning warning;
+
+ OperationsScopedList();
+
+ OperationsScopedList.fromJson(core.Map _json) {
+ if (_json.containsKey("operations")) {
+ operations = _json["operations"].map((value) => new Operation.fromJson(value)).toList();
+ }
+ if (_json.containsKey("warning")) {
+ warning = new OperationsScopedListWarning.fromJson(_json["warning"]);
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (operations != null) {
+ _json["operations"] = operations.map((value) => (value).toJson()).toList();
+ }
+ if (warning != null) {
+ _json["warning"] = (warning).toJson();
+ }
+ return _json;
+ }
+}
+
/**
- * [Output Only] If errors are generated during processing of the operation,
- * this field will be populated.
+ * A matcher for the path portion of the URL. The BackendService from the
+ * longest-matched rule will serve the URL. If no rule was matched, the default
+ * service will be used.
*/
-class OperationError {
+class PathMatcher {
/**
- * [Output Only] The array of errors encountered while processing this
- * operation.
+ * The full or partial URL to the BackendService resource. This will be used
+ * if none of the pathRules defined by this PathMatcher is matched by the
+ * URL's path portion. For example, the following are all valid URLs to a
+ * BackendService resource:
+ * -
+ * https://www.googleapis.com/compute/v1/projects/project/global/backendServices/backendService
+ * - compute/v1/projects/project/global/backendServices/backendService
+ * - global/backendServices/backendService
*/
- core.List<OperationErrorErrors> errors;
+ core.String defaultService;
+ /**
+ * An optional description of this resource. Provide this property when you
+ * create the resource.
+ */
+ core.String description;
+ /** The name to which this PathMatcher is referred by the HostRule. */
+ core.String name;
+ /** The list of path rules. */
+ core.List<PathRule> pathRules;
- OperationError();
+ PathMatcher();
- OperationError.fromJson(core.Map _json) {
- if (_json.containsKey("errors")) {
- errors = _json["errors"].map((value) => new OperationErrorErrors.fromJson(value)).toList();
+ PathMatcher.fromJson(core.Map _json) {
+ if (_json.containsKey("defaultService")) {
+ defaultService = _json["defaultService"];
+ }
+ if (_json.containsKey("description")) {
+ description = _json["description"];
+ }
+ if (_json.containsKey("name")) {
+ name = _json["name"];
+ }
+ if (_json.containsKey("pathRules")) {
+ pathRules = _json["pathRules"].map((value) => new PathRule.fromJson(value)).toList();
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (defaultService != null) {
+ _json["defaultService"] = defaultService;
+ }
+ if (description != null) {
+ _json["description"] = description;
+ }
+ if (name != null) {
+ _json["name"] = name;
+ }
+ if (pathRules != null) {
+ _json["pathRules"] = pathRules.map((value) => (value).toJson()).toList();
+ }
+ return _json;
+ }
+}
+
+/**
+ * A path-matching rule for a URL. If matched, will use the specified
+ * BackendService to handle the traffic arriving at this URL.
+ */
+class PathRule {
+ /**
+ * The list of path patterns to match. Each must start with / and the only
+ * place a * is allowed is at the end following a /. The string fed to the
+ * path matcher does not include any text after the first ? or #, and those
+ * chars are not allowed here.
+ */
+ core.List<core.String> paths;
+ /** The URL of the BackendService resource if this rule is matched. */
+ core.String service;
+
+ PathRule();
+
+ PathRule.fromJson(core.Map _json) {
+ if (_json.containsKey("paths")) {
+ paths = _json["paths"];
+ }
+ if (_json.containsKey("service")) {
+ service = _json["service"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (errors != null) {
- _json["errors"] = errors.map((value) => (value).toJson()).toList();
+ if (paths != null) {
+ _json["paths"] = paths;
+ }
+ if (service != null) {
+ _json["service"] = service;
}
return _json;
}
}
-class OperationWarningsData {
+/**
+ * A Project resource. Projects can only be created in the Google Cloud Platform
+ * Console. Unless marked otherwise, values can only be modified in the console.
+ */
+class Project {
/**
- * [Output Only] A key that provides more detail on the warning being
- * returned. For example, for warnings where there are no results in a list
- * request for a particular zone, this key might be scope and the key value
- * might be the zone name. Other examples might be a key indicating a
- * deprecated resource and a suggested replacement, or a warning about invalid
- * network settings (for example, if an instance attempts to perform IP
- * forwarding but is not enabled for IP forwarding).
+ * Metadata key/value pairs available to all instances contained in this
+ * project. See Custom metadata for more information.
*/
- core.String key;
- /** [Output Only] A warning data value corresponding to the key. */
- core.String value;
+ Metadata commonInstanceMetadata;
+ /** [Output Only] Creation timestamp in RFC3339 text format. */
+ core.String creationTimestamp;
+ /**
+ * [Output Only] Default service account used by VMs running in this project.
+ */
+ core.String defaultServiceAccount;
+ /** An optional textual description of the resource. */
+ core.String description;
+ /** Restricted features enabled for use on this project. */
+ core.List<core.String> enabledFeatures;
+ /**
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server. This is not the project ID, and is just a unique ID
+ * used by Compute Engine to identify resources.
+ */
+ core.String id;
+ /**
+ * [Output Only] Type of the resource. Always compute#project for projects.
+ */
+ core.String kind;
+ /**
+ * The project ID. For example: my-example-project. Use the project ID to make
+ * requests to Compute Engine.
+ */
+ core.String name;
+ /** [Output Only] Quotas assigned to this project. */
+ core.List<Quota> quotas;
+ /** [Output Only] Server-defined URL for the resource. */
+ core.String selfLink;
+ /**
+ * The naming prefix for daily usage reports and the Google Cloud Storage
+ * bucket where they are stored.
+ */
+ UsageExportLocation usageExportLocation;
- OperationWarningsData();
+ Project();
- OperationWarningsData.fromJson(core.Map _json) {
- if (_json.containsKey("key")) {
- key = _json["key"];
+ Project.fromJson(core.Map _json) {
+ if (_json.containsKey("commonInstanceMetadata")) {
+ commonInstanceMetadata = new Metadata.fromJson(_json["commonInstanceMetadata"]);
}
- if (_json.containsKey("value")) {
- value = _json["value"];
+ if (_json.containsKey("creationTimestamp")) {
+ creationTimestamp = _json["creationTimestamp"];
+ }
+ if (_json.containsKey("defaultServiceAccount")) {
+ defaultServiceAccount = _json["defaultServiceAccount"];
+ }
+ if (_json.containsKey("description")) {
+ description = _json["description"];
+ }
+ if (_json.containsKey("enabledFeatures")) {
+ enabledFeatures = _json["enabledFeatures"];
+ }
+ if (_json.containsKey("id")) {
+ id = _json["id"];
+ }
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("name")) {
+ name = _json["name"];
+ }
+ if (_json.containsKey("quotas")) {
+ quotas = _json["quotas"].map((value) => new Quota.fromJson(value)).toList();
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
+ }
+ if (_json.containsKey("usageExportLocation")) {
+ usageExportLocation = new UsageExportLocation.fromJson(_json["usageExportLocation"]);
}
}
core.Map toJson() {
var _json = new core.Map();
- if (key != null) {
- _json["key"] = key;
+ if (commonInstanceMetadata != null) {
+ _json["commonInstanceMetadata"] = (commonInstanceMetadata).toJson();
}
- if (value != null) {
- _json["value"] = value;
+ if (creationTimestamp != null) {
+ _json["creationTimestamp"] = creationTimestamp;
+ }
+ if (defaultServiceAccount != null) {
+ _json["defaultServiceAccount"] = defaultServiceAccount;
+ }
+ if (description != null) {
+ _json["description"] = description;
+ }
+ if (enabledFeatures != null) {
+ _json["enabledFeatures"] = enabledFeatures;
+ }
+ if (id != null) {
+ _json["id"] = id;
+ }
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (name != null) {
+ _json["name"] = name;
+ }
+ if (quotas != null) {
+ _json["quotas"] = quotas.map((value) => (value).toJson()).toList();
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
+ }
+ if (usageExportLocation != null) {
+ _json["usageExportLocation"] = (usageExportLocation).toJson();
}
return _json;
}
}
-class OperationWarnings {
+/** A quotas entry. */
+class Quota {
+ /** [Output Only] Quota limit for this metric. */
+ core.double limit;
/**
- * [Output Only] A warning code, if applicable. For example, Compute Engine
- * returns NO_RESULTS_ON_PAGE if there are no results in the response.
+ * [Output Only] Name of the quota metric.
* Possible string values are:
- * - "CLEANUP_FAILED"
- * - "DEPRECATED_RESOURCE_USED"
- * - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
- * - "INJECTED_KERNELS_DEPRECATED"
- * - "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
- * - "NEXT_HOP_CANNOT_IP_FORWARD"
- * - "NEXT_HOP_INSTANCE_NOT_FOUND"
- * - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
- * - "NEXT_HOP_NOT_RUNNING"
- * - "NOT_CRITICAL_ERROR"
- * - "NO_RESULTS_ON_PAGE"
- * - "REQUIRED_TOS_AGREEMENT"
- * - "RESOURCE_NOT_DELETED"
- * - "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
- * - "UNREACHABLE"
- */
- core.String code;
- /**
- * [Output Only] Metadata about this warning in key: value format. For
- * example:
- * "data": [ { "key": "scope", "value": "zones/us-east1-d" }
+ * - "AUTOSCALERS"
+ * - "BACKEND_SERVICES"
+ * - "CPUS"
+ * - "DISKS_TOTAL_GB"
+ * - "FIREWALLS"
+ * - "FORWARDING_RULES"
+ * - "HEALTH_CHECKS"
+ * - "IMAGES"
+ * - "INSTANCES"
+ * - "INSTANCE_GROUPS"
+ * - "INSTANCE_GROUP_MANAGERS"
+ * - "INSTANCE_TEMPLATES"
+ * - "IN_USE_ADDRESSES"
+ * - "LOCAL_SSD_TOTAL_GB"
+ * - "NETWORKS"
+ * - "ROUTERS"
+ * - "ROUTES"
+ * - "SNAPSHOTS"
+ * - "SSD_TOTAL_GB"
+ * - "SSL_CERTIFICATES"
+ * - "STATIC_ADDRESSES"
+ * - "SUBNETWORKS"
+ * - "TARGET_HTTPS_PROXIES"
+ * - "TARGET_HTTP_PROXIES"
+ * - "TARGET_INSTANCES"
+ * - "TARGET_POOLS"
+ * - "TARGET_VPN_GATEWAYS"
+ * - "URL_MAPS"
+ * - "VPN_TUNNELS"
*/
- core.List<OperationWarningsData> data;
- /** [Output Only] A human-readable description of the warning code. */
- core.String message;
+ core.String metric;
+ /** [Output Only] Current usage of this metric. */
+ core.double usage;
- OperationWarnings();
+ Quota();
- OperationWarnings.fromJson(core.Map _json) {
- if (_json.containsKey("code")) {
- code = _json["code"];
+ Quota.fromJson(core.Map _json) {
+ if (_json.containsKey("limit")) {
+ limit = _json["limit"];
}
- if (_json.containsKey("data")) {
- data = _json["data"].map((value) => new OperationWarningsData.fromJson(value)).toList();
+ if (_json.containsKey("metric")) {
+ metric = _json["metric"];
}
- if (_json.containsKey("message")) {
- message = _json["message"];
+ if (_json.containsKey("usage")) {
+ usage = _json["usage"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (code != null) {
- _json["code"] = code;
+ if (limit != null) {
+ _json["limit"] = limit;
}
- if (data != null) {
- _json["data"] = data.map((value) => (value).toJson()).toList();
+ if (metric != null) {
+ _json["metric"] = metric;
}
- if (message != null) {
- _json["message"] = message;
+ if (usage != null) {
+ _json["usage"] = usage;
}
return _json;
- }
-}
-
-/** An Operation resource, used to manage asynchronous API requests. */
-class Operation {
- /** [Output Only] Reserved for future use. */
- core.String clientOperationId;
- /** [Output Only] Creation timestamp in RFC3339 text format. */
- core.String creationTimestamp;
- /**
- * [Output Only] A textual description of the operation, which is set when the
- * operation is created.
- */
- core.String description;
- /**
- * [Output Only] The time that this operation was completed. This value is in
- * RFC3339 text format.
- */
- core.String endTime;
- /**
- * [Output Only] If errors are generated during processing of the operation,
- * this field will be populated.
- */
- OperationError error;
- /**
- * [Output Only] If the operation fails, this field contains the HTTP error
- * message that was returned, such as NOT FOUND.
- */
- core.String httpErrorMessage;
- /**
- * [Output Only] If the operation fails, this field contains the HTTP error
- * status code that was returned. For example, a 404 means the resource was
- * not found.
- */
- core.int httpErrorStatusCode;
+ }
+}
+
+/** Region resource. */
+class Region {
+ /** [Output Only] Creation timestamp in RFC3339 text format. */
+ core.String creationTimestamp;
+ /** [Output Only] The deprecation status associated with this region. */
+ DeprecationStatus deprecated;
+ /** [Output Only] Textual description of the resource. */
+ core.String description;
/**
* [Output Only] The unique identifier for the resource. This identifier is
* defined by the server.
*/
core.String id;
- /**
- * [Output Only] The time that this operation was requested. This value is in
- * RFC3339 text format.
- */
- core.String insertTime;
- /**
- * [Output Only] Type of the resource. Always compute#operation for Operation
- * resources.
- */
+ /** [Output Only] Type of the resource. Always compute#region for regions. */
core.String kind;
/** [Output Only] Name of the resource. */
core.String name;
- /**
- * [Output Only] The type of operation, such as insert, update, or delete, and
- * so on.
- */
- core.String operationType;
- /**
- * [Output Only] An optional progress indicator that ranges from 0 to 100.
- * There is no requirement that this be linear or support any granularity of
- * operations. This should not be used to guess when the operation will be
- * complete. This number should monotonically increase as the operation
- * progresses.
- */
- core.int progress;
- /**
- * [Output Only] The URL of the region where the operation resides. Only
- * available when performing regional operations.
- */
- core.String region;
+ /** [Output Only] Quotas assigned to this region. */
+ core.List<Quota> quotas;
/** [Output Only] Server-defined URL for the resource. */
core.String selfLink;
/**
- * [Output Only] The time that this operation was started by the server. This
- * value is in RFC3339 text format.
- */
- core.String startTime;
- /**
- * [Output Only] The status of the operation, which can be one of the
- * following: PENDING, RUNNING, or DONE.
+ * [Output Only] Status of the region, either UP or DOWN.
* Possible string values are:
- * - "DONE"
- * - "PENDING"
- * - "RUNNING"
+ * - "DOWN"
+ * - "UP"
*/
core.String status;
/**
- * [Output Only] An optional textual description of the current status of the
- * operation.
- */
- core.String statusMessage;
- /**
- * [Output Only] The unique target ID, which identifies a specific incarnation
- * of the target resource.
- */
- core.String targetId;
- /** [Output Only] The URL of the resource that the operation modifies. */
- core.String targetLink;
- /**
- * [Output Only] User who requested the operation, for example:
- * user@example.com.
- */
- core.String user;
- /**
- * [Output Only] If warning messages are generated during processing of the
- * operation, this field will be populated.
- */
- core.List<OperationWarnings> warnings;
- /**
- * [Output Only] The URL of the zone where the operation resides. Only
- * available when performing per-zone operations.
+ * [Output Only] A list of zones available in this region, in the form of
+ * resource URLs.
*/
- core.String zone;
+ core.List<core.String> zones;
- Operation();
+ Region();
- Operation.fromJson(core.Map _json) {
- if (_json.containsKey("clientOperationId")) {
- clientOperationId = _json["clientOperationId"];
- }
+ Region.fromJson(core.Map _json) {
if (_json.containsKey("creationTimestamp")) {
creationTimestamp = _json["creationTimestamp"];
}
+ if (_json.containsKey("deprecated")) {
+ deprecated = new DeprecationStatus.fromJson(_json["deprecated"]);
+ }
if (_json.containsKey("description")) {
description = _json["description"];
}
- if (_json.containsKey("endTime")) {
- endTime = _json["endTime"];
- }
- if (_json.containsKey("error")) {
- error = new OperationError.fromJson(_json["error"]);
- }
- if (_json.containsKey("httpErrorMessage")) {
- httpErrorMessage = _json["httpErrorMessage"];
- }
- if (_json.containsKey("httpErrorStatusCode")) {
- httpErrorStatusCode = _json["httpErrorStatusCode"];
- }
if (_json.containsKey("id")) {
id = _json["id"];
}
- if (_json.containsKey("insertTime")) {
- insertTime = _json["insertTime"];
- }
if (_json.containsKey("kind")) {
kind = _json["kind"];
}
if (_json.containsKey("name")) {
name = _json["name"];
}
- if (_json.containsKey("operationType")) {
- operationType = _json["operationType"];
- }
- if (_json.containsKey("progress")) {
- progress = _json["progress"];
- }
- if (_json.containsKey("region")) {
- region = _json["region"];
+ if (_json.containsKey("quotas")) {
+ quotas = _json["quotas"].map((value) => new Quota.fromJson(value)).toList();
}
if (_json.containsKey("selfLink")) {
selfLink = _json["selfLink"];
}
- if (_json.containsKey("startTime")) {
- startTime = _json["startTime"];
- }
if (_json.containsKey("status")) {
status = _json["status"];
}
- if (_json.containsKey("statusMessage")) {
- statusMessage = _json["statusMessage"];
- }
- if (_json.containsKey("targetId")) {
- targetId = _json["targetId"];
- }
- if (_json.containsKey("targetLink")) {
- targetLink = _json["targetLink"];
- }
- if (_json.containsKey("user")) {
- user = _json["user"];
- }
- if (_json.containsKey("warnings")) {
- warnings = _json["warnings"].map((value) => new OperationWarnings.fromJson(value)).toList();
- }
- if (_json.containsKey("zone")) {
- zone = _json["zone"];
+ if (_json.containsKey("zones")) {
+ zones = _json["zones"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (clientOperationId != null) {
- _json["clientOperationId"] = clientOperationId;
- }
if (creationTimestamp != null) {
_json["creationTimestamp"] = creationTimestamp;
}
+ if (deprecated != null) {
+ _json["deprecated"] = (deprecated).toJson();
+ }
if (description != null) {
_json["description"] = description;
}
- if (endTime != null) {
- _json["endTime"] = endTime;
- }
- if (error != null) {
- _json["error"] = (error).toJson();
- }
- if (httpErrorMessage != null) {
- _json["httpErrorMessage"] = httpErrorMessage;
- }
- if (httpErrorStatusCode != null) {
- _json["httpErrorStatusCode"] = httpErrorStatusCode;
- }
if (id != null) {
_json["id"] = id;
}
- if (insertTime != null) {
- _json["insertTime"] = insertTime;
- }
if (kind != null) {
_json["kind"] = kind;
}
if (name != null) {
_json["name"] = name;
}
- if (operationType != null) {
- _json["operationType"] = operationType;
- }
- if (progress != null) {
- _json["progress"] = progress;
- }
- if (region != null) {
- _json["region"] = region;
+ if (quotas != null) {
+ _json["quotas"] = quotas.map((value) => (value).toJson()).toList();
}
if (selfLink != null) {
_json["selfLink"] = selfLink;
}
- if (startTime != null) {
- _json["startTime"] = startTime;
- }
if (status != null) {
_json["status"] = status;
}
- if (statusMessage != null) {
- _json["statusMessage"] = statusMessage;
- }
- if (targetId != null) {
- _json["targetId"] = targetId;
- }
- if (targetLink != null) {
- _json["targetLink"] = targetLink;
- }
- if (user != null) {
- _json["user"] = user;
- }
- if (warnings != null) {
- _json["warnings"] = warnings.map((value) => (value).toJson()).toList();
- }
- if (zone != null) {
- _json["zone"] = zone;
+ if (zones != null) {
+ _json["zones"] = zones;
}
return _json;
}
}
-class OperationAggregatedList {
+/** Contains a list of region resources. */
+class RegionList {
/**
* [Output Only] The unique identifier for the resource. This identifier is
* defined by the server.
*/
core.String id;
- /** [Output Only] A map of scoped operation lists. */
- core.Map<core.String, OperationsScopedList> items;
+ /** [Output Only] A list of Region resources. */
+ core.List<Region> items;
/**
- * [Output Only] Type of resource. Always compute#operationAggregatedList for
- * aggregated lists of operations.
+ * [Output Only] Type of resource. Always compute#regionList for lists of
+ * regions.
*/
core.String kind;
/**
@@ -20672,14 +22139,14 @@ class OperationAggregatedList {
/** [Output Only] Server-defined URL for this resource. */
core.String selfLink;
- OperationAggregatedList();
+ RegionList();
- OperationAggregatedList.fromJson(core.Map _json) {
+ RegionList.fromJson(core.Map _json) {
if (_json.containsKey("id")) {
id = _json["id"];
}
if (_json.containsKey("items")) {
- items = commons.mapMap(_json["items"], (item) => new OperationsScopedList.fromJson(item));
+ items = _json["items"].map((value) => new Region.fromJson(value)).toList();
}
if (_json.containsKey("kind")) {
kind = _json["kind"];
@@ -20698,7 +22165,7 @@ class OperationAggregatedList {
_json["id"] = id;
}
if (items != null) {
- _json["items"] = commons.mapMap(items, (item) => (item).toJson());
+ _json["items"] = items.map((value) => (value).toJson()).toList();
}
if (kind != null) {
_json["kind"] = kind;
@@ -20713,73 +22180,30 @@ class OperationAggregatedList {
}
}
-/** Contains a list of Operation resources. */
-class OperationList {
- /**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
- */
- core.String id;
- /** [Output Only] A list of Operation resources. */
- core.List<Operation> items;
- /**
- * [Output Only] Type of resource. Always compute#operations for Operations
- * resource.
- */
- core.String kind;
+class ResourceGroupReference {
/**
- * [Output Only] This token allows you to get the next page of results for
- * list requests. If the number of results is larger than maxResults, use the
- * nextPageToken as a value for the query parameter pageToken in the next list
- * request. Subsequent list requests will have their own nextPageToken to
- * continue paging through the results.
+ * A URI referencing one of the resource views listed in the backend service.
*/
- core.String nextPageToken;
- /** [Output Only] Server-defined URL for this resource. */
- core.String selfLink;
+ core.String group;
- OperationList();
+ ResourceGroupReference();
- OperationList.fromJson(core.Map _json) {
- if (_json.containsKey("id")) {
- id = _json["id"];
- }
- if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new Operation.fromJson(value)).toList();
- }
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
- }
- if (_json.containsKey("nextPageToken")) {
- nextPageToken = _json["nextPageToken"];
- }
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
+ ResourceGroupReference.fromJson(core.Map _json) {
+ if (_json.containsKey("group")) {
+ group = _json["group"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (id != null) {
- _json["id"] = id;
- }
- if (items != null) {
- _json["items"] = items.map((value) => (value).toJson()).toList();
- }
- if (kind != null) {
- _json["kind"] = kind;
- }
- if (nextPageToken != null) {
- _json["nextPageToken"] = nextPageToken;
- }
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
+ if (group != null) {
+ _json["group"] = group;
}
return _json;
}
}
-class OperationsScopedListWarningData {
+class RouteWarningsData {
/**
* [Output Only] A key that provides more detail on the warning being
* returned. For example, for warnings where there are no results in a list
@@ -20793,9 +22217,9 @@ class OperationsScopedListWarningData {
/** [Output Only] A warning data value corresponding to the key. */
core.String value;
- OperationsScopedListWarningData();
+ RouteWarningsData();
- OperationsScopedListWarningData.fromJson(core.Map _json) {
+ RouteWarningsData.fromJson(core.Map _json) {
if (_json.containsKey("key")) {
key = _json["key"];
}
@@ -20816,11 +22240,7 @@ class OperationsScopedListWarningData {
}
}
-/**
- * [Output Only] Informational warning which replaces the list of operations
- * when the list is empty.
- */
-class OperationsScopedListWarning {
+class RouteWarnings {
/**
* [Output Only] A warning code, if applicable. For example, Compute Engine
* returns NO_RESULTS_ON_PAGE if there are no results in the response.
@@ -20847,18 +22267,18 @@ class OperationsScopedListWarning {
* example:
* "data": [ { "key": "scope", "value": "zones/us-east1-d" }
*/
- core.List<OperationsScopedListWarningData> data;
+ core.List<RouteWarningsData> data;
/** [Output Only] A human-readable description of the warning code. */
core.String message;
- OperationsScopedListWarning();
+ RouteWarnings();
- OperationsScopedListWarning.fromJson(core.Map _json) {
+ RouteWarnings.fromJson(core.Map _json) {
if (_json.containsKey("code")) {
code = _json["code"];
}
if (_json.containsKey("data")) {
- data = _json["data"].map((value) => new OperationsScopedListWarningData.fromJson(value)).toList();
+ data = _json["data"].map((value) => new RouteWarningsData.fromJson(value)).toList();
}
if (_json.containsKey("message")) {
message = _json["message"];
@@ -20880,193 +22300,104 @@ class OperationsScopedListWarning {
}
}
-class OperationsScopedList {
- /** [Output Only] List of operations contained in this scope. */
- core.List<Operation> operations;
- /**
- * [Output Only] Informational warning which replaces the list of operations
- * when the list is empty.
- */
- OperationsScopedListWarning warning;
-
- OperationsScopedList();
-
- OperationsScopedList.fromJson(core.Map _json) {
- if (_json.containsKey("operations")) {
- operations = _json["operations"].map((value) => new Operation.fromJson(value)).toList();
- }
- if (_json.containsKey("warning")) {
- warning = new OperationsScopedListWarning.fromJson(_json["warning"]);
- }
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (operations != null) {
- _json["operations"] = operations.map((value) => (value).toJson()).toList();
- }
- if (warning != null) {
- _json["warning"] = (warning).toJson();
- }
- return _json;
- }
-}
-
/**
- * A matcher for the path portion of the URL. The BackendService from the
- * longest-matched rule will serve the URL. If no rule was matched, the default
- * service will be used.
+ * Represents a Route resource. A route specifies how certain packets should be
+ * handled by the network. Routes are associated with instances by tags and the
+ * set of routes for a particular instance is called its routing table.
+ *
+ * For each packet leaving a instance, the system searches that instance's
+ * routing table for a single best matching route. Routes match packets by
+ * destination IP address, preferring smaller or more specific ranges over
+ * larger ones. If there is a tie, the system selects the route with the
+ * smallest priority value. If there is still a tie, it uses the layer three and
+ * four packet headers to select just one of the remaining matching routes. The
+ * packet is then forwarded as specified by the nextHop field of the winning
+ * route - either to another instance destination, a instance gateway or a
+ * Google Compute Engine-operated gateway.
+ *
+ * Packets that do not match any route in the sending instance's routing table
+ * are dropped.
*/
-class PathMatcher {
- /**
- * The full or partial URL to the BackendService resource. This will be used
- * if none of the pathRules defined by this PathMatcher is matched by the
- * URL's path portion. For example, the following are all valid URLs to a
- * BackendService resource:
- * -
- * https://www.googleapis.com/compute/v1/projects/project/global/backendServices/backendService
- * - compute/v1/projects/project/global/backendServices/backendService
- * - global/backendServices/backendService
- */
- core.String defaultService;
+class Route {
+ /** [Output Only] Creation timestamp in RFC3339 text format. */
+ core.String creationTimestamp;
/**
* An optional description of this resource. Provide this property when you
* create the resource.
*/
core.String description;
- /** The name to which this PathMatcher is referred by the HostRule. */
- core.String name;
- /** The list of path rules. */
- core.List<PathRule> pathRules;
-
- PathMatcher();
-
- PathMatcher.fromJson(core.Map _json) {
- if (_json.containsKey("defaultService")) {
- defaultService = _json["defaultService"];
- }
- if (_json.containsKey("description")) {
- description = _json["description"];
- }
- if (_json.containsKey("name")) {
- name = _json["name"];
- }
- if (_json.containsKey("pathRules")) {
- pathRules = _json["pathRules"].map((value) => new PathRule.fromJson(value)).toList();
- }
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (defaultService != null) {
- _json["defaultService"] = defaultService;
- }
- if (description != null) {
- _json["description"] = description;
- }
- if (name != null) {
- _json["name"] = name;
- }
- if (pathRules != null) {
- _json["pathRules"] = pathRules.map((value) => (value).toJson()).toList();
- }
- return _json;
- }
-}
-
-/**
- * A path-matching rule for a URL. If matched, will use the specified
- * BackendService to handle the traffic arriving at this URL.
- */
-class PathRule {
- /**
- * The list of path patterns to match. Each must start with / and the only
- * place a * is allowed is at the end following a /. The string fed to the
- * path matcher does not include any text after the first ? or #, and those
- * chars are not allowed here.
- */
- core.List<core.String> paths;
- /** The URL of the BackendService resource if this rule is matched. */
- core.String service;
-
- PathRule();
-
- PathRule.fromJson(core.Map _json) {
- if (_json.containsKey("paths")) {
- paths = _json["paths"];
- }
- if (_json.containsKey("service")) {
- service = _json["service"];
- }
- }
-
- core.Map toJson() {
- var _json = new core.Map();
- if (paths != null) {
- _json["paths"] = paths;
- }
- if (service != null) {
- _json["service"] = service;
- }
- return _json;
- }
-}
-
-/**
- * A Project resource. Projects can only be created in the Google Cloud Platform
- * Console. Unless marked otherwise, values can only be modified in the console.
- */
-class Project {
- /**
- * Metadata key/value pairs available to all instances contained in this
- * project. See Custom metadata for more information.
- */
- Metadata commonInstanceMetadata;
- /** [Output Only] Creation timestamp in RFC3339 text format. */
- core.String creationTimestamp;
- /** An optional textual description of the resource. */
- core.String description;
- /** Restricted features enabled for use on this project. */
- core.List<core.String> enabledFeatures;
+ /** The destination range of outgoing packets that this route applies to. */
+ core.String destRange;
/**
* [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server. This is not the project ID, and is just a unique ID
- * used by Compute Engine to identify resources.
+ * defined by the server.
*/
core.String id;
/**
- * [Output Only] Type of the resource. Always compute#project for projects.
+ * [Output Only] Type of this resource. Always compute#routes for Route
+ * resources.
*/
core.String kind;
/**
- * The project ID. For example: my-example-project. Use the project ID to make
- * requests to Compute Engine.
+ * Name of the resource. Provided by the client when the resource is created.
+ * The name must be 1-63 characters long, and comply with RFC1035.
+ * Specifically, the name must be 1-63 characters long and match the regular
+ * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
+ * be a lowercase letter, and all following characters must be a dash,
+ * lowercase letter, or digit, except the last character, which cannot be a
+ * dash.
*/
core.String name;
- /** [Output Only] Quotas assigned to this project. */
- core.List<Quota> quotas;
- /** [Output Only] Server-defined URL for the resource. */
+ /** Fully-qualified URL of the network that this route applies to. */
+ core.String network;
+ /**
+ * The URL to a gateway that should handle matching packets. You can only
+ * specify the internet gateway using a full or partial valid URL:
+ * projects/<project-id>/global/gateways/default-internet-gateway
+ */
+ core.String nextHopGateway;
+ /**
+ * The URL to an instance that should handle matching packets. You can specify
+ * this as a full or partial URL. For example:
+ * https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/
+ */
+ core.String nextHopInstance;
+ /**
+ * The network IP address of an instance that should handle matching packets.
+ */
+ core.String nextHopIp;
+ /** The URL of the local network if it should handle matching packets. */
+ core.String nextHopNetwork;
+ /** The URL to a VpnTunnel that should handle matching packets. */
+ core.String nextHopVpnTunnel;
+ /**
+ * The priority of this route. Priority is used to break ties in cases where
+ * there is more than one matching route of equal prefix length. In the case
+ * of two routes with equal prefix length, the one with the lowest-numbered
+ * priority value wins. Default value is 1000. Valid range is 0 through 65535.
+ */
+ core.int priority;
+ /** [Output Only] Server-defined fully-qualified URL for this resource. */
core.String selfLink;
+ /** A list of instance tags to which this route applies. */
+ core.List<core.String> tags;
/**
- * The naming prefix for daily usage reports and the Google Cloud Storage
- * bucket where they are stored.
+ * [Output Only] If potential misconfigurations are detected for this route,
+ * this field will be populated with warning messages.
*/
- UsageExportLocation usageExportLocation;
+ core.List<RouteWarnings> warnings;
- Project();
+ Route();
- Project.fromJson(core.Map _json) {
- if (_json.containsKey("commonInstanceMetadata")) {
- commonInstanceMetadata = new Metadata.fromJson(_json["commonInstanceMetadata"]);
- }
+ Route.fromJson(core.Map _json) {
if (_json.containsKey("creationTimestamp")) {
creationTimestamp = _json["creationTimestamp"];
}
if (_json.containsKey("description")) {
description = _json["description"];
}
- if (_json.containsKey("enabledFeatures")) {
- enabledFeatures = _json["enabledFeatures"];
+ if (_json.containsKey("destRange")) {
+ destRange = _json["destRange"];
}
if (_json.containsKey("id")) {
id = _json["id"];
@@ -21077,30 +22408,48 @@ class Project {
if (_json.containsKey("name")) {
name = _json["name"];
}
- if (_json.containsKey("quotas")) {
- quotas = _json["quotas"].map((value) => new Quota.fromJson(value)).toList();
+ if (_json.containsKey("network")) {
+ network = _json["network"];
+ }
+ if (_json.containsKey("nextHopGateway")) {
+ nextHopGateway = _json["nextHopGateway"];
+ }
+ if (_json.containsKey("nextHopInstance")) {
+ nextHopInstance = _json["nextHopInstance"];
+ }
+ if (_json.containsKey("nextHopIp")) {
+ nextHopIp = _json["nextHopIp"];
+ }
+ if (_json.containsKey("nextHopNetwork")) {
+ nextHopNetwork = _json["nextHopNetwork"];
+ }
+ if (_json.containsKey("nextHopVpnTunnel")) {
+ nextHopVpnTunnel = _json["nextHopVpnTunnel"];
+ }
+ if (_json.containsKey("priority")) {
+ priority = _json["priority"];
}
if (_json.containsKey("selfLink")) {
selfLink = _json["selfLink"];
}
- if (_json.containsKey("usageExportLocation")) {
- usageExportLocation = new UsageExportLocation.fromJson(_json["usageExportLocation"]);
+ if (_json.containsKey("tags")) {
+ tags = _json["tags"];
+ }
+ if (_json.containsKey("warnings")) {
+ warnings = _json["warnings"].map((value) => new RouteWarnings.fromJson(value)).toList();
}
}
core.Map toJson() {
var _json = new core.Map();
- if (commonInstanceMetadata != null) {
- _json["commonInstanceMetadata"] = (commonInstanceMetadata).toJson();
- }
if (creationTimestamp != null) {
_json["creationTimestamp"] = creationTimestamp;
}
if (description != null) {
_json["description"] = description;
}
- if (enabledFeatures != null) {
- _json["enabledFeatures"] = enabledFeatures;
+ if (destRange != null) {
+ _json["destRange"] = destRange;
}
if (id != null) {
_json["id"] = id;
@@ -21111,206 +22460,225 @@ class Project {
if (name != null) {
_json["name"] = name;
}
- if (quotas != null) {
- _json["quotas"] = quotas.map((value) => (value).toJson()).toList();
+ if (network != null) {
+ _json["network"] = network;
+ }
+ if (nextHopGateway != null) {
+ _json["nextHopGateway"] = nextHopGateway;
+ }
+ if (nextHopInstance != null) {
+ _json["nextHopInstance"] = nextHopInstance;
+ }
+ if (nextHopIp != null) {
+ _json["nextHopIp"] = nextHopIp;
+ }
+ if (nextHopNetwork != null) {
+ _json["nextHopNetwork"] = nextHopNetwork;
+ }
+ if (nextHopVpnTunnel != null) {
+ _json["nextHopVpnTunnel"] = nextHopVpnTunnel;
+ }
+ if (priority != null) {
+ _json["priority"] = priority;
}
if (selfLink != null) {
_json["selfLink"] = selfLink;
}
- if (usageExportLocation != null) {
- _json["usageExportLocation"] = (usageExportLocation).toJson();
+ if (tags != null) {
+ _json["tags"] = tags;
+ }
+ if (warnings != null) {
+ _json["warnings"] = warnings.map((value) => (value).toJson()).toList();
}
return _json;
}
}
-/** A quotas entry. */
-class Quota {
- /** [Output Only] Quota limit for this metric. */
- core.double limit;
+/** Contains a list of Route resources. */
+class RouteList {
/**
- * [Output Only] Name of the quota metric.
- * Possible string values are:
- * - "AUTOSCALERS"
- * - "BACKEND_SERVICES"
- * - "CPUS"
- * - "DISKS_TOTAL_GB"
- * - "FIREWALLS"
- * - "FORWARDING_RULES"
- * - "HEALTH_CHECKS"
- * - "IMAGES"
- * - "INSTANCES"
- * - "INSTANCE_GROUPS"
- * - "INSTANCE_GROUP_MANAGERS"
- * - "INSTANCE_TEMPLATES"
- * - "IN_USE_ADDRESSES"
- * - "LOCAL_SSD_TOTAL_GB"
- * - "NETWORKS"
- * - "ROUTES"
- * - "SNAPSHOTS"
- * - "SSD_TOTAL_GB"
- * - "SSL_CERTIFICATES"
- * - "STATIC_ADDRESSES"
- * - "SUBNETWORKS"
- * - "TARGET_HTTPS_PROXIES"
- * - "TARGET_HTTP_PROXIES"
- * - "TARGET_INSTANCES"
- * - "TARGET_POOLS"
- * - "TARGET_VPN_GATEWAYS"
- * - "URL_MAPS"
- * - "VPN_TUNNELS"
+ * [Output Only] Unique identifier for the resource. Defined by the server.
*/
- core.String metric;
- /** [Output Only] Current usage of this metric. */
- core.double usage;
+ core.String id;
+ /** [Output Only] A list of Route resources. */
+ core.List<Route> items;
+ /** Type of resource. */
+ core.String kind;
+ /**
+ * [Output Only] This token allows you to get the next page of results for
+ * list requests. If the number of results is larger than maxResults, use the
+ * nextPageToken as a value for the query parameter pageToken in the next list
+ * request. Subsequent list requests will have their own nextPageToken to
+ * continue paging through the results.
+ */
+ core.String nextPageToken;
+ /** [Output Only] Server-defined URL for this resource. */
+ core.String selfLink;
- Quota();
+ RouteList();
- Quota.fromJson(core.Map _json) {
- if (_json.containsKey("limit")) {
- limit = _json["limit"];
+ RouteList.fromJson(core.Map _json) {
+ if (_json.containsKey("id")) {
+ id = _json["id"];
}
- if (_json.containsKey("metric")) {
- metric = _json["metric"];
+ if (_json.containsKey("items")) {
+ items = _json["items"].map((value) => new Route.fromJson(value)).toList();
}
- if (_json.containsKey("usage")) {
- usage = _json["usage"];
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("nextPageToken")) {
+ nextPageToken = _json["nextPageToken"];
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (limit != null) {
- _json["limit"] = limit;
+ if (id != null) {
+ _json["id"] = id;
}
- if (metric != null) {
- _json["metric"] = metric;
+ if (items != null) {
+ _json["items"] = items.map((value) => (value).toJson()).toList();
}
- if (usage != null) {
- _json["usage"] = usage;
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (nextPageToken != null) {
+ _json["nextPageToken"] = nextPageToken;
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
}
return _json;
}
}
-/** Region resource. */
-class Region {
+/** Router resource. */
+class Router {
+ RouterBgp bgp;
+ core.List<RouterBgpPeer> bgpPeers;
/** [Output Only] Creation timestamp in RFC3339 text format. */
core.String creationTimestamp;
- /** [Output Only] The deprecation status associated with this region. */
- DeprecationStatus deprecated;
- /** [Output Only] Textual description of the resource. */
+ /**
+ * An optional description of this resource. Provide this property when you
+ * create the resource.
+ */
core.String description;
/**
* [Output Only] The unique identifier for the resource. This identifier is
* defined by the server.
*/
core.String id;
- /** [Output Only] Type of the resource. Always compute#region for regions. */
+ core.List<RouterInterface> interfaces;
+ /** [Output Only] Type of resource. Always compute#router for routers. */
core.String kind;
- /** [Output Only] Name of the resource. */
+ /**
+ * Name of the resource. Provided by the client when the resource is created.
+ * The name must be 1-63 characters long, and comply with RFC1035.
+ * Specifically, the name must be 1-63 characters long and match the regular
+ * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
+ * be a lowercase letter, and all following characters must be a dash,
+ * lowercase letter, or digit, except the last character, which cannot be a
+ * dash.
+ */
core.String name;
- /** [Output Only] Quotas assigned to this region. */
- core.List<Quota> quotas;
+ /** URI of the network to which this router belongs. */
+ core.String network;
+ /** [Output Only] URI of the region where the router resides. */
+ core.String region;
/** [Output Only] Server-defined URL for the resource. */
core.String selfLink;
- /**
- * [Output Only] Status of the region, either UP or DOWN.
- * Possible string values are:
- * - "DOWN"
- * - "UP"
- */
- core.String status;
- /**
- * [Output Only] A list of zones available in this region, in the form of
- * resource URLs.
- */
- core.List<core.String> zones;
- Region();
+ Router();
- Region.fromJson(core.Map _json) {
+ Router.fromJson(core.Map _json) {
+ if (_json.containsKey("bgp")) {
+ bgp = new RouterBgp.fromJson(_json["bgp"]);
+ }
+ if (_json.containsKey("bgpPeers")) {
+ bgpPeers = _json["bgpPeers"].map((value) => new RouterBgpPeer.fromJson(value)).toList();
+ }
if (_json.containsKey("creationTimestamp")) {
creationTimestamp = _json["creationTimestamp"];
}
- if (_json.containsKey("deprecated")) {
- deprecated = new DeprecationStatus.fromJson(_json["deprecated"]);
- }
if (_json.containsKey("description")) {
description = _json["description"];
}
if (_json.containsKey("id")) {
id = _json["id"];
}
+ if (_json.containsKey("interfaces")) {
+ interfaces = _json["interfaces"].map((value) => new RouterInterface.fromJson(value)).toList();
+ }
if (_json.containsKey("kind")) {
kind = _json["kind"];
}
if (_json.containsKey("name")) {
name = _json["name"];
}
- if (_json.containsKey("quotas")) {
- quotas = _json["quotas"].map((value) => new Quota.fromJson(value)).toList();
+ if (_json.containsKey("network")) {
+ network = _json["network"];
+ }
+ if (_json.containsKey("region")) {
+ region = _json["region"];
}
if (_json.containsKey("selfLink")) {
selfLink = _json["selfLink"];
}
- if (_json.containsKey("status")) {
- status = _json["status"];
- }
- if (_json.containsKey("zones")) {
- zones = _json["zones"];
- }
}
core.Map toJson() {
var _json = new core.Map();
+ if (bgp != null) {
+ _json["bgp"] = (bgp).toJson();
+ }
+ if (bgpPeers != null) {
+ _json["bgpPeers"] = bgpPeers.map((value) => (value).toJson()).toList();
+ }
if (creationTimestamp != null) {
_json["creationTimestamp"] = creationTimestamp;
}
- if (deprecated != null) {
- _json["deprecated"] = (deprecated).toJson();
- }
if (description != null) {
_json["description"] = description;
}
if (id != null) {
_json["id"] = id;
}
+ if (interfaces != null) {
+ _json["interfaces"] = interfaces.map((value) => (value).toJson()).toList();
+ }
if (kind != null) {
_json["kind"] = kind;
}
if (name != null) {
_json["name"] = name;
}
- if (quotas != null) {
- _json["quotas"] = quotas.map((value) => (value).toJson()).toList();
+ if (network != null) {
+ _json["network"] = network;
+ }
+ if (region != null) {
+ _json["region"] = region;
}
if (selfLink != null) {
_json["selfLink"] = selfLink;
}
- if (status != null) {
- _json["status"] = status;
- }
- if (zones != null) {
- _json["zones"] = zones;
- }
return _json;
}
}
-/** Contains a list of region resources. */
-class RegionList {
- /**
- * [Output Only] The unique identifier for the resource. This identifier is
- * defined by the server.
- */
- core.String id;
- /** [Output Only] A list of Region resources. */
- core.List<Region> items;
+/** Contains a list of routers. */
+class RouterAggregatedList {
/**
- * [Output Only] Type of resource. Always compute#regionList for lists of
- * regions.
+ * [Output Only] The unique identifier for the resource. This identifier is
+ * defined by the server.
*/
+ core.String id;
+ /** A map of scoped router lists. */
+ core.Map<core.String, RoutersScopedList> items;
+ /** Type of resource. */
core.String kind;
/**
* [Output Only] This token allows you to get the next page of results for
@@ -21323,14 +22691,14 @@ class RegionList {
/** [Output Only] Server-defined URL for this resource. */
core.String selfLink;
- RegionList();
+ RouterAggregatedList();
- RegionList.fromJson(core.Map _json) {
+ RouterAggregatedList.fromJson(core.Map _json) {
if (_json.containsKey("id")) {
id = _json["id"];
}
if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new Region.fromJson(value)).toList();
+ items = commons.mapMap(_json["items"], (item) => new RoutersScopedList.fromJson(item));
}
if (_json.containsKey("kind")) {
kind = _json["kind"];
@@ -21349,7 +22717,7 @@ class RegionList {
_json["id"] = id;
}
if (items != null) {
- _json["items"] = items.map((value) => (value).toJson()).toList();
+ _json["items"] = commons.mapMap(items, (item) => (item).toJson());
}
if (kind != null) {
_json["kind"] = kind;
@@ -21364,377 +22732,516 @@ class RegionList {
}
}
-class ResourceGroupReference {
+class RouterBgp {
/**
- * A URI referencing one of the resource views listed in the backend service.
+ * Local BGP Autonomous System Number (ASN). Must be an RFC6996 private ASN,
+ * either 16-bit or 32-bit. The value will be fixed for this router resource.
+ * All VPN tunnels that link to this router will have the same local ASN.
*/
- core.String group;
+ core.int asn;
- ResourceGroupReference();
+ RouterBgp();
- ResourceGroupReference.fromJson(core.Map _json) {
- if (_json.containsKey("group")) {
- group = _json["group"];
+ RouterBgp.fromJson(core.Map _json) {
+ if (_json.containsKey("asn")) {
+ asn = _json["asn"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (group != null) {
- _json["group"] = group;
+ if (asn != null) {
+ _json["asn"] = asn;
}
return _json;
}
}
-class RouteWarningsData {
+/**
+ * BGP information that needs to be configured into the routing stack to
+ * establish the BGP peering. It must specify peer ASN and either interface
+ * name, IP, or peer IP. Reference: https://tools.ietf.org/html/rfc4273
+ */
+class RouterBgpPeer {
/**
- * [Output Only] A key that provides more detail on the warning being
- * returned. For example, for warnings where there are no results in a list
- * request for a particular zone, this key might be scope and the key value
- * might be the zone name. Other examples might be a key indicating a
- * deprecated resource and a suggested replacement, or a warning about invalid
- * network settings (for example, if an instance attempts to perform IP
- * forwarding but is not enabled for IP forwarding).
+ * The priority of routes advertised to this BGP peer. In the case where there
+ * is more than one matching route of maximum length, the routes with lowest
+ * priority value win.
*/
- core.String key;
- /** [Output Only] A warning data value corresponding to the key. */
- core.String value;
+ core.int advertisedRoutePriority;
+ /** Name of the interface the BGP peer is associated with. */
+ core.String interfaceName;
+ /** IP address of the interface inside Google Cloud Platform. */
+ core.String ipAddress;
+ /**
+ * Name of this BGP peer. The name must be 1-63 characters long and comply
+ * with RFC1035.
+ */
+ core.String name;
+ /**
+ * Peer BGP Autonomous System Number (ASN). For VPN use case, this value can
+ * be different for every tunnel.
+ */
+ core.int peerAsn;
+ /** IP address of the BGP interface outside Google cloud. */
+ core.String peerIpAddress;
- RouteWarningsData();
+ RouterBgpPeer();
- RouteWarningsData.fromJson(core.Map _json) {
- if (_json.containsKey("key")) {
- key = _json["key"];
+ RouterBgpPeer.fromJson(core.Map _json) {
+ if (_json.containsKey("advertisedRoutePriority")) {
+ advertisedRoutePriority = _json["advertisedRoutePriority"];
}
- if (_json.containsKey("value")) {
- value = _json["value"];
+ if (_json.containsKey("interfaceName")) {
+ interfaceName = _json["interfaceName"];
+ }
+ if (_json.containsKey("ipAddress")) {
+ ipAddress = _json["ipAddress"];
+ }
+ if (_json.containsKey("name")) {
+ name = _json["name"];
+ }
+ if (_json.containsKey("peerAsn")) {
+ peerAsn = _json["peerAsn"];
+ }
+ if (_json.containsKey("peerIpAddress")) {
+ peerIpAddress = _json["peerIpAddress"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (key != null) {
- _json["key"] = key;
+ if (advertisedRoutePriority != null) {
+ _json["advertisedRoutePriority"] = advertisedRoutePriority;
}
- if (value != null) {
- _json["value"] = value;
+ if (interfaceName != null) {
+ _json["interfaceName"] = interfaceName;
+ }
+ if (ipAddress != null) {
+ _json["ipAddress"] = ipAddress;
+ }
+ if (name != null) {
+ _json["name"] = name;
+ }
+ if (peerAsn != null) {
+ _json["peerAsn"] = peerAsn;
+ }
+ if (peerIpAddress != null) {
+ _json["peerIpAddress"] = peerIpAddress;
}
return _json;
}
}
-class RouteWarnings {
+/**
+ * Router interfaces. Each interface requires either one linked resource (e.g.
+ * linked_vpn_tunnel) or IP address + range (specified in ip_range).
+ */
+class RouterInterface {
/**
- * [Output Only] A warning code, if applicable. For example, Compute Engine
- * returns NO_RESULTS_ON_PAGE if there are no results in the response.
- * Possible string values are:
- * - "CLEANUP_FAILED"
- * - "DEPRECATED_RESOURCE_USED"
- * - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
- * - "INJECTED_KERNELS_DEPRECATED"
- * - "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
- * - "NEXT_HOP_CANNOT_IP_FORWARD"
- * - "NEXT_HOP_INSTANCE_NOT_FOUND"
- * - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
- * - "NEXT_HOP_NOT_RUNNING"
- * - "NOT_CRITICAL_ERROR"
- * - "NO_RESULTS_ON_PAGE"
- * - "REQUIRED_TOS_AGREEMENT"
- * - "RESOURCE_NOT_DELETED"
- * - "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
- * - "UNREACHABLE"
+ * IP address and range of the interface. The IP range must be in the RFC3927
+ * link-local IP space. The value must be a CIDR-formatted string, for
+ * example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents
+ * the IP address of the interface.
*/
- core.String code;
+ core.String ipRange;
/**
- * [Output Only] Metadata about this warning in key: value format. For
- * example:
- * "data": [ { "key": "scope", "value": "zones/us-east1-d" }
+ * URI of linked VPN tunnel. It must be in the same region as the router. Each
+ * interface can have at most one linked resource.
*/
- core.List<RouteWarningsData> data;
- /** [Output Only] A human-readable description of the warning code. */
- core.String message;
+ core.String linkedVpnTunnel;
+ /**
+ * Name of this interface entry. The name must be 1-63 characters long and
+ * comply with RFC1035.
+ */
+ core.String name;
- RouteWarnings();
+ RouterInterface();
- RouteWarnings.fromJson(core.Map _json) {
- if (_json.containsKey("code")) {
- code = _json["code"];
+ RouterInterface.fromJson(core.Map _json) {
+ if (_json.containsKey("ipRange")) {
+ ipRange = _json["ipRange"];
}
- if (_json.containsKey("data")) {
- data = _json["data"].map((value) => new RouteWarningsData.fromJson(value)).toList();
+ if (_json.containsKey("linkedVpnTunnel")) {
+ linkedVpnTunnel = _json["linkedVpnTunnel"];
}
- if (_json.containsKey("message")) {
- message = _json["message"];
+ if (_json.containsKey("name")) {
+ name = _json["name"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (code != null) {
- _json["code"] = code;
+ if (ipRange != null) {
+ _json["ipRange"] = ipRange;
}
- if (data != null) {
- _json["data"] = data.map((value) => (value).toJson()).toList();
+ if (linkedVpnTunnel != null) {
+ _json["linkedVpnTunnel"] = linkedVpnTunnel;
}
- if (message != null) {
- _json["message"] = message;
+ if (name != null) {
+ _json["name"] = name;
}
return _json;
}
}
-/**
- * Represents a Route resource. A route specifies how certain packets should be
- * handled by the network. Routes are associated with instances by tags and the
- * set of routes for a particular instance is called its routing table.
- *
- * For each packet leaving a instance, the system searches that instance's
- * routing table for a single best matching route. Routes match packets by
- * destination IP address, preferring smaller or more specific ranges over
- * larger ones. If there is a tie, the system selects the route with the
- * smallest priority value. If there is still a tie, it uses the layer three and
- * four packet headers to select just one of the remaining matching routes. The
- * packet is then forwarded as specified by the nextHop field of the winning
- * route - either to another instance destination, a instance gateway or a
- * Google Compute Engine-operated gateway.
- *
- * Packets that do not match any route in the sending instance's routing table
- * are dropped.
- */
-class Route {
- /** [Output Only] Creation timestamp in RFC3339 text format. */
- core.String creationTimestamp;
- /**
- * An optional description of this resource. Provide this property when you
- * create the resource.
- */
- core.String description;
- /** The destination range of outgoing packets that this route applies to. */
- core.String destRange;
+/** Contains a list of Router resources. */
+class RouterList {
/**
* [Output Only] The unique identifier for the resource. This identifier is
* defined by the server.
*/
core.String id;
- /**
- * [Output Only] Type of this resource. Always compute#routes for Route
- * resources.
- */
+ /** A list of Router resources. */
+ core.List<Router> items;
+ /** [Output Only] Type of resource. Always compute#router for routers. */
core.String kind;
/**
- * Name of the resource. Provided by the client when the resource is created.
- * The name must be 1-63 characters long, and comply with RFC1035.
- * Specifically, the name must be 1-63 characters long and match the regular
- * expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
- * be a lowercase letter, and all following characters must be a dash,
- * lowercase letter, or digit, except the last character, which cannot be a
- * dash.
+ * [Output Only] This token allows you to get the next page of results for
+ * list requests. If the number of results is larger than maxResults, use the
+ * nextPageToken as a value for the query parameter pageToken in the next list
+ * request. Subsequent list requests will have their own nextPageToken to
+ * continue paging through the results.
*/
- core.String name;
- /** Fully-qualified URL of the network that this route applies to. */
+ core.String nextPageToken;
+ /** [Output Only] Server-defined URL for the resource. */
+ core.String selfLink;
+
+ RouterList();
+
+ RouterList.fromJson(core.Map _json) {
+ if (_json.containsKey("id")) {
+ id = _json["id"];
+ }
+ if (_json.containsKey("items")) {
+ items = _json["items"].map((value) => new Router.fromJson(value)).toList();
+ }
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
+ }
+ if (_json.containsKey("nextPageToken")) {
+ nextPageToken = _json["nextPageToken"];
+ }
+ if (_json.containsKey("selfLink")) {
+ selfLink = _json["selfLink"];
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (id != null) {
+ _json["id"] = id;
+ }
+ if (items != null) {
+ _json["items"] = items.map((value) => (value).toJson()).toList();
+ }
+ if (kind != null) {
+ _json["kind"] = kind;
+ }
+ if (nextPageToken != null) {
+ _json["nextPageToken"] = nextPageToken;
+ }
+ if (selfLink != null) {
+ _json["selfLink"] = selfLink;
+ }
+ return _json;
+ }
+}
+
+class RouterStatus {
+ /** Best routes for this router's network. */
+ core.List<Route> bestRoutes;
+ core.List<RouterStatusBgpPeerStatus> bgpPeerStatus;
+ /** URI of the network to which this router belongs. */
core.String network;
+
+ RouterStatus();
+
+ RouterStatus.fromJson(core.Map _json) {
+ if (_json.containsKey("bestRoutes")) {
+ bestRoutes = _json["bestRoutes"].map((value) => new Route.fromJson(value)).toList();
+ }
+ if (_json.containsKey("bgpPeerStatus")) {
+ bgpPeerStatus = _json["bgpPeerStatus"].map((value) => new RouterStatusBgpPeerStatus.fromJson(value)).toList();
+ }
+ if (_json.containsKey("network")) {
+ network = _json["network"];
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (bestRoutes != null) {
+ _json["bestRoutes"] = bestRoutes.map((value) => (value).toJson()).toList();
+ }
+ if (bgpPeerStatus != null) {
+ _json["bgpPeerStatus"] = bgpPeerStatus.map((value) => (value).toJson()).toList();
+ }
+ if (network != null) {
+ _json["network"] = network;
+ }
+ return _json;
+ }
+}
+
+class RouterStatusBgpPeerStatus {
+ /** Routes that were advertised to the remote BGP peer */
+ core.List<Route> advertisedRoutes;
+ /** IP address of the local BGP interface. */
+ core.String ipAddress;
+ /** URL of the VPN tunnel that this BGP peer controls. */
+ core.String linkedVpnTunnel;
+ /** Name of this BGP peer. Unique within the Routers resource. */
+ core.String name;
+ /** Number of routes learned from the remote BGP Peer. */
+ core.int numLearnedRoutes;
+ /** IP address of the remote BGP interface. */
+ core.String peerIpAddress;
+ /** BGP state as specified in RFC1771. */
+ core.String state;
/**
- * The URL to a gateway that should handle matching packets. You can only
- * specify the internet gateway using a full or partial valid URL:
- * projects/<project-id>/global/gateways/default-internet-gateway
- */
- core.String nextHopGateway;
- /**
- * The URL to an instance that should handle matching packets. You can specify
- * this as a full or partial URL. For example:
- * https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/
- */
- core.String nextHopInstance;
- /**
- * The network IP address of an instance that should handle matching packets.
- */
- core.String nextHopIp;
- /** The URL of the local network if it should handle matching packets. */
- core.String nextHopNetwork;
- /** The URL to a VpnTunnel that should handle matching packets. */
- core.String nextHopVpnTunnel;
- /**
- * The priority of this route. Priority is used to break ties in cases where
- * there is more than one matching route of equal prefix length. In the case
- * of two routes with equal prefix length, the one with the lowest-numbered
- * priority value wins. Default value is 1000. Valid range is 0 through 65535.
- */
- core.int priority;
- /** [Output Only] Server-defined fully-qualified URL for this resource. */
- core.String selfLink;
- /** A list of instance tags to which this route applies. */
- core.List<core.String> tags;
+ * Status of the BGP peer: {UP, DOWN}
+ * Possible string values are:
+ * - "DOWN"
+ * - "UNKNOWN"
+ * - "UP"
+ */
+ core.String status;
/**
- * [Output Only] If potential misconfigurations are detected for this route,
- * this field will be populated with warning messages.
+ * Time this session has been up. Format: 14 years, 51 weeks, 6 days, 23
+ * hours, 59 minutes, 59 seconds
*/
- core.List<RouteWarnings> warnings;
+ core.String uptime;
+ /** Time this session has been up, in seconds. Format: 145 */
+ core.String uptimeSeconds;
- Route();
+ RouterStatusBgpPeerStatus();
- Route.fromJson(core.Map _json) {
- if (_json.containsKey("creationTimestamp")) {
- creationTimestamp = _json["creationTimestamp"];
- }
- if (_json.containsKey("description")) {
- description = _json["description"];
- }
- if (_json.containsKey("destRange")) {
- destRange = _json["destRange"];
+ RouterStatusBgpPeerStatus.fromJson(core.Map _json) {
+ if (_json.containsKey("advertisedRoutes")) {
+ advertisedRoutes = _json["advertisedRoutes"].map((value) => new Route.fromJson(value)).toList();
}
- if (_json.containsKey("id")) {
- id = _json["id"];
+ if (_json.containsKey("ipAddress")) {
+ ipAddress = _json["ipAddress"];
}
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
+ if (_json.containsKey("linkedVpnTunnel")) {
+ linkedVpnTunnel = _json["linkedVpnTunnel"];
}
if (_json.containsKey("name")) {
name = _json["name"];
}
- if (_json.containsKey("network")) {
- network = _json["network"];
- }
- if (_json.containsKey("nextHopGateway")) {
- nextHopGateway = _json["nextHopGateway"];
- }
- if (_json.containsKey("nextHopInstance")) {
- nextHopInstance = _json["nextHopInstance"];
- }
- if (_json.containsKey("nextHopIp")) {
- nextHopIp = _json["nextHopIp"];
- }
- if (_json.containsKey("nextHopNetwork")) {
- nextHopNetwork = _json["nextHopNetwork"];
+ if (_json.containsKey("numLearnedRoutes")) {
+ numLearnedRoutes = _json["numLearnedRoutes"];
}
- if (_json.containsKey("nextHopVpnTunnel")) {
- nextHopVpnTunnel = _json["nextHopVpnTunnel"];
+ if (_json.containsKey("peerIpAddress")) {
+ peerIpAddress = _json["peerIpAddress"];
}
- if (_json.containsKey("priority")) {
- priority = _json["priority"];
+ if (_json.containsKey("state")) {
+ state = _json["state"];
}
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
+ if (_json.containsKey("status")) {
+ status = _json["status"];
}
- if (_json.containsKey("tags")) {
- tags = _json["tags"];
+ if (_json.containsKey("uptime")) {
+ uptime = _json["uptime"];
}
- if (_json.containsKey("warnings")) {
- warnings = _json["warnings"].map((value) => new RouteWarnings.fromJson(value)).toList();
+ if (_json.containsKey("uptimeSeconds")) {
+ uptimeSeconds = _json["uptimeSeconds"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (creationTimestamp != null) {
- _json["creationTimestamp"] = creationTimestamp;
- }
- if (description != null) {
- _json["description"] = description;
- }
- if (destRange != null) {
- _json["destRange"] = destRange;
+ if (advertisedRoutes != null) {
+ _json["advertisedRoutes"] = advertisedRoutes.map((value) => (value).toJson()).toList();
}
- if (id != null) {
- _json["id"] = id;
+ if (ipAddress != null) {
+ _json["ipAddress"] = ipAddress;
}
- if (kind != null) {
- _json["kind"] = kind;
+ if (linkedVpnTunnel != null) {
+ _json["linkedVpnTunnel"] = linkedVpnTunnel;
}
if (name != null) {
_json["name"] = name;
}
- if (network != null) {
- _json["network"] = network;
+ if (numLearnedRoutes != null) {
+ _json["numLearnedRoutes"] = numLearnedRoutes;
}
- if (nextHopGateway != null) {
- _json["nextHopGateway"] = nextHopGateway;
+ if (peerIpAddress != null) {
+ _json["peerIpAddress"] = peerIpAddress;
}
- if (nextHopInstance != null) {
- _json["nextHopInstance"] = nextHopInstance;
+ if (state != null) {
+ _json["state"] = state;
}
- if (nextHopIp != null) {
- _json["nextHopIp"] = nextHopIp;
+ if (status != null) {
+ _json["status"] = status;
}
- if (nextHopNetwork != null) {
- _json["nextHopNetwork"] = nextHopNetwork;
+ if (uptime != null) {
+ _json["uptime"] = uptime;
}
- if (nextHopVpnTunnel != null) {
- _json["nextHopVpnTunnel"] = nextHopVpnTunnel;
+ if (uptimeSeconds != null) {
+ _json["uptimeSeconds"] = uptimeSeconds;
}
- if (priority != null) {
- _json["priority"] = priority;
+ return _json;
+ }
+}
+
+class RouterStatusResponse {
+ /** Type of resource. */
+ core.String kind;
+ RouterStatus result;
+
+ RouterStatusResponse();
+
+ RouterStatusResponse.fromJson(core.Map _json) {
+ if (_json.containsKey("kind")) {
+ kind = _json["kind"];
}
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
+ if (_json.containsKey("result")) {
+ result = new RouterStatus.fromJson(_json["result"]);
}
- if (tags != null) {
- _json["tags"] = tags;
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (kind != null) {
+ _json["kind"] = kind;
}
- if (warnings != null) {
- _json["warnings"] = warnings.map((value) => (value).toJson()).toList();
+ if (result != null) {
+ _json["result"] = (result).toJson();
}
return _json;
}
}
-/** Contains a list of Route resources. */
-class RouteList {
- /**
- * [Output Only] Unique identifier for the resource. Defined by the server.
- */
- core.String id;
- /** [Output Only] A list of Route resources. */
- core.List<Route> items;
- /** Type of resource. */
- core.String kind;
+class RoutersScopedListWarningData {
/**
- * [Output Only] This token allows you to get the next page of results for
- * list requests. If the number of results is larger than maxResults, use the
- * nextPageToken as a value for the query parameter pageToken in the next list
- * request. Subsequent list requests will have their own nextPageToken to
- * continue paging through the results.
+ * [Output Only] A key that provides more detail on the warning being
+ * returned. For example, for warnings where there are no results in a list
+ * request for a particular zone, this key might be scope and the key value
+ * might be the zone name. Other examples might be a key indicating a
+ * deprecated resource and a suggested replacement, or a warning about invalid
+ * network settings (for example, if an instance attempts to perform IP
+ * forwarding but is not enabled for IP forwarding).
*/
- core.String nextPageToken;
- /** [Output Only] Server-defined URL for this resource. */
- core.String selfLink;
+ core.String key;
+ /** [Output Only] A warning data value corresponding to the key. */
+ core.String value;
- RouteList();
+ RoutersScopedListWarningData();
- RouteList.fromJson(core.Map _json) {
- if (_json.containsKey("id")) {
- id = _json["id"];
+ RoutersScopedListWarningData.fromJson(core.Map _json) {
+ if (_json.containsKey("key")) {
+ key = _json["key"];
}
- if (_json.containsKey("items")) {
- items = _json["items"].map((value) => new Route.fromJson(value)).toList();
+ if (_json.containsKey("value")) {
+ value = _json["value"];
}
- if (_json.containsKey("kind")) {
- kind = _json["kind"];
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (key != null) {
+ _json["key"] = key;
}
- if (_json.containsKey("nextPageToken")) {
- nextPageToken = _json["nextPageToken"];
+ if (value != null) {
+ _json["value"] = value;
}
- if (_json.containsKey("selfLink")) {
- selfLink = _json["selfLink"];
+ return _json;
+ }
+}
+
+/**
+ * Informational warning which replaces the list of routers when the list is
+ * empty.
+ */
+class RoutersScopedListWarning {
+ /**
+ * [Output Only] A warning code, if applicable. For example, Compute Engine
+ * returns NO_RESULTS_ON_PAGE if there are no results in the response.
+ * Possible string values are:
+ * - "CLEANUP_FAILED"
+ * - "DEPRECATED_RESOURCE_USED"
+ * - "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
+ * - "INJECTED_KERNELS_DEPRECATED"
+ * - "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
+ * - "NEXT_HOP_CANNOT_IP_FORWARD"
+ * - "NEXT_HOP_INSTANCE_NOT_FOUND"
+ * - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
+ * - "NEXT_HOP_NOT_RUNNING"
+ * - "NOT_CRITICAL_ERROR"
+ * - "NO_RESULTS_ON_PAGE"
+ * - "REQUIRED_TOS_AGREEMENT"
+ * - "RESOURCE_NOT_DELETED"
+ * - "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
+ * - "UNREACHABLE"
+ */
+ core.String code;
+ /**
+ * [Output Only] Metadata about this warning in key: value format. For
+ * example:
+ * "data": [ { "key": "scope", "value": "zones/us-east1-d" }
+ */
+ core.List<RoutersScopedListWarningData> data;
+ /** [Output Only] A human-readable description of the warning code. */
+ core.String message;
+
+ RoutersScopedListWarning();
+
+ RoutersScopedListWarning.fromJson(core.Map _json) {
+ if (_json.containsKey("code")) {
+ code = _json["code"];
+ }
+ if (_json.containsKey("data")) {
+ data = _json["data"].map((value) => new RoutersScopedListWarningData.fromJson(value)).toList();
+ }
+ if (_json.containsKey("message")) {
+ message = _json["message"];
}
}
core.Map toJson() {
var _json = new core.Map();
- if (id != null) {
- _json["id"] = id;
+ if (code != null) {
+ _json["code"] = code;
}
- if (items != null) {
- _json["items"] = items.map((value) => (value).toJson()).toList();
+ if (data != null) {
+ _json["data"] = data.map((value) => (value).toJson()).toList();
}
- if (kind != null) {
- _json["kind"] = kind;
+ if (message != null) {
+ _json["message"] = message;
}
- if (nextPageToken != null) {
- _json["nextPageToken"] = nextPageToken;
+ return _json;
+ }
+}
+
+class RoutersScopedList {
+ /** List of routers contained in this scope. */
+ core.List<Router> routers;
+ /**
+ * Informational warning which replaces the list of routers when the list is
+ * empty.
+ */
+ RoutersScopedListWarning warning;
+
+ RoutersScopedList();
+
+ RoutersScopedList.fromJson(core.Map _json) {
+ if (_json.containsKey("routers")) {
+ routers = _json["routers"].map((value) => new Router.fromJson(value)).toList();
}
- if (selfLink != null) {
- _json["selfLink"] = selfLink;
+ if (_json.containsKey("warning")) {
+ warning = new RoutersScopedListWarning.fromJson(_json["warning"]);
+ }
+ }
+
+ core.Map toJson() {
+ var _json = new core.Map();
+ if (routers != null) {
+ _json["routers"] = routers.map((value) => (value).toJson()).toList();
+ }
+ if (warning != null) {
+ _json["warning"] = (warning).toJson();
}
return _json;
}
@@ -21901,9 +23408,30 @@ class Snapshot {
core.String name;
/** [Output Only] Server-defined URL for the resource. */
core.String selfLink;
+ /**
+ * Encrypts the snapshot using a customer-supplied encryption key.
+ *
+ * After you encrypt a snapshot using a customer-supplied key, you must
+ * provide the same key if you use the image later For example, you must
+ * provide the encryption key when you create a disk from the encrypted
+ * snapshot in a future request.
+ *
+ * Customer-supplied encryption keys do not protect access to metadata of the
+ * disk.
+ *
+ * If you do not provide an encryption key when creating the snapshot, then
+ * the snapshot will be encrypted using an automatically generated key and you
+ * do not need to provide a key to use the snapshot later.
+ */
+ CustomerEncryptionKey snapshotEncryptionKey;
/** [Output Only] The source disk used to create this snapshot. */
core.String sourceDisk;
/**
+ * The customer-supplied encryption key of the source disk. Required if the
+ * source disk is protected by a customer-supplied encryption key.
+ */
+ CustomerEncryptionKey sourceDiskEncryptionKey;
+ /**
* [Output Only] The ID value of the disk used to create this snapshot. This
* value may be used to determine whether the snapshot was taken from the
* current or a previous instance of a given disk name.
@@ -21964,9 +23492,15 @@ class Snapshot {
if (_json.containsKey("selfLink")) {
selfLink = _json["selfLink"];
}
+ if (_json.containsKey("snapshotEncryptionKey")) {
+ snapshotEncryptionKey = new CustomerEncryptionKey.fromJson(_json["snapshotEncryptionKey"]);
+ }
if (_json.containsKey("sourceDisk")) {
sourceDisk = _json["sourceDisk"];
}
+ if (_json.containsKey("sourceDiskEncryptionKey")) {
+ sourceDiskEncryptionKey = new CustomerEncryptionKey.fromJson(_json["sourceDiskEncryptionKey"]);
+ }
if (_json.containsKey("sourceDiskId")) {
sourceDiskId = _json["sourceDiskId"];
}
@@ -22007,9 +23541,15 @@ class Snapshot {
if (selfLink != null) {
_json["selfLink"] = selfLink;
}
+ if (snapshotEncryptionKey != null) {
+ _json["snapshotEncryptionKey"] = (snapshotEncryptionKey).toJson();
+ }
if (sourceDisk != null) {
_json["sourceDisk"] = sourceDisk;
}
+ if (sourceDiskEncryptionKey != null) {
+ _json["sourceDiskEncryptionKey"] = (sourceDiskEncryptionKey).toJson();
+ }
if (sourceDiskId != null) {
_json["sourceDiskId"] = sourceDiskId;
}
@@ -22654,11 +24194,11 @@ class Tags {
*/
core.String fingerprint;
core.List<core.int> get fingerprintAsBytes {
- return crypto.CryptoUtils.base64StringToBytes(fingerprint);
+ return convert.BASE64.decode(fingerprint);
}
void set fingerprintAsBytes(core.List<core.int> _bytes) {
- fingerprint = crypto.CryptoUtils.bytesToBase64(_bytes, urlSafe: true);
+ fingerprint = convert.BASE64.encode(_bytes).replaceAll("/", "_").replaceAll("+", "-");
}
/**
* An array of tags. Each tag must be 1-63 characters long, and comply with
@@ -24473,11 +26013,11 @@ class UrlMap {
*/
core.String fingerprint;
core.List<core.int> get fingerprintAsBytes {
- return crypto.CryptoUtils.base64StringToBytes(fingerprint);
+ return convert.BASE64.decode(fingerprint);
}
void set fingerprintAsBytes(core.List<core.int> _bytes) {
- fingerprint = crypto.CryptoUtils.bytesToBase64(_bytes, urlSafe: true);
+ fingerprint = convert.BASE64.encode(_bytes).replaceAll("/", "_").replaceAll("+", "-");
}
/** The list of HostRules to use against the URL. */
core.List<HostRule> hostRules;
@@ -24894,6 +26434,14 @@ class VpnTunnel {
core.String peerIp;
/** [Output Only] URL of the region where the VPN tunnel resides. */
core.String region;
+ /**
+ * Remote traffic selectors to use when establishing the VPN tunnel with peer
+ * VPN gateway. The value should be a CIDR formatted string, for example:
+ * 192.168.0.0/16. The ranges should be disjoint.
+ */
+ core.List<core.String> remoteTrafficSelector;
+ /** URL of router resource to be used for dynamic routing. */
+ core.String router;
/** [Output Only] Server-defined URL for the resource. */
core.String selfLink;
/**
@@ -24959,6 +26507,12 @@ class VpnTunnel {
if (_json.containsKey("region")) {
region = _json["region"];
}
+ if (_json.containsKey("remoteTrafficSelector")) {
+ remoteTrafficSelector = _json["remoteTrafficSelector"];
+ }
+ if (_json.containsKey("router")) {
+ router = _json["router"];
+ }
if (_json.containsKey("selfLink")) {
selfLink = _json["selfLink"];
}
@@ -25008,6 +26562,12 @@ class VpnTunnel {
if (region != null) {
_json["region"] = region;
}
+ if (remoteTrafficSelector != null) {
+ _json["remoteTrafficSelector"] = remoteTrafficSelector;
+ }
+ if (router != null) {
+ _json["router"] = router;
+ }
if (selfLink != null) {
_json["selfLink"] = selfLink;
}
« no previous file with comments | « generated/googleapis/lib/cloudresourcemanager/v1.dart ('k') | generated/googleapis/lib/consumersurveys/v2.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698