| // Copyright 2023 Google LLC |
| // |
| // Use of this source code is governed by a BSD-style |
| // license that can be found in the LICENSE file or at |
| // https://developers.google.com/open-source/licenses/bsd |
| |
| // This is a generated file (see the discoveryapis_generator project). |
| |
| // ignore_for_file: camel_case_types |
| // ignore_for_file: comment_references |
| // ignore_for_file: deprecated_member_use_from_same_package |
| // ignore_for_file: doc_directive_unknown |
| // ignore_for_file: lines_longer_than_80_chars |
| // ignore_for_file: non_constant_identifier_names |
| // ignore_for_file: prefer_interpolation_to_compose_strings |
| // ignore_for_file: unintended_html_in_doc_comment |
| // ignore_for_file: unnecessary_brace_in_string_interps |
| // ignore_for_file: unnecessary_lambdas |
| // ignore_for_file: unnecessary_string_interpolations |
| |
| /// VMware Engine API - v1 |
| /// |
| /// The Google VMware Engine API lets you programmatically manage VMware |
| /// environments. |
| /// |
| /// For more information, see |
| /// <https://cloud.google.com/solutions/vmware-as-a-service> |
| /// |
| /// Create an instance of [VMwareEngineApi] to access these resources: |
| /// |
| /// - [ProjectsResource] |
| /// - [ProjectsLocationsResource] |
| /// - [ProjectsLocationsAnnouncementsResource] |
| /// - [ProjectsLocationsDatastoresResource] |
| /// - [ProjectsLocationsDnsBindPermissionResource] |
| /// - [ProjectsLocationsNetworkPeeringsResource] |
| /// - [ProjectsLocationsNetworkPeeringsPeeringRoutesResource] |
| /// - [ProjectsLocationsNetworkPoliciesResource] |
| /// - [ProjectsLocationsNetworkPoliciesExternalAccessRulesResource] |
| /// - [ProjectsLocationsNodeTypesResource] |
| /// - [ProjectsLocationsOperationsResource] |
| /// - [ProjectsLocationsPrivateCloudsResource] |
| /// - [ProjectsLocationsPrivateCloudsClustersResource] |
| /// - [ProjectsLocationsPrivateCloudsClustersNodesResource] |
| /// - [ProjectsLocationsPrivateCloudsExternalAddressesResource] |
| /// - [ProjectsLocationsPrivateCloudsHcxActivationKeysResource] |
| /// - [ProjectsLocationsPrivateCloudsLoggingServersResource] |
| /// - [ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsResource] |
| /// - [ProjectsLocationsPrivateCloudsSubnetsResource] |
| /// - [ProjectsLocationsPrivateCloudsUpgradesResource] |
| /// - [ProjectsLocationsPrivateConnectionsResource] |
| /// - [ProjectsLocationsPrivateConnectionsPeeringRoutesResource] |
| /// - [ProjectsLocationsVmwareEngineNetworksResource] |
| library; |
| |
| import 'dart:async' as async; |
| import 'dart:convert' as convert; |
| import 'dart:core' as core; |
| |
| import 'package:_discoveryapis_commons/_discoveryapis_commons.dart' as commons; |
| import 'package:http/http.dart' as http; |
| |
| import '../shared.dart'; |
| import '../src/user_agent.dart'; |
| |
| export 'package:_discoveryapis_commons/_discoveryapis_commons.dart' |
| show ApiRequestError, DetailedApiRequestError; |
| |
| /// The Google VMware Engine API lets you programmatically manage VMware |
| /// environments. |
| class VMwareEngineApi { |
| /// See, edit, configure, and delete your Google Cloud data and see the email |
| /// address for your Google Account. |
| static const cloudPlatformScope = |
| 'https://www.googleapis.com/auth/cloud-platform'; |
| |
| final commons.ApiRequester _requester; |
| |
| ProjectsResource get projects => ProjectsResource(_requester); |
| |
| VMwareEngineApi( |
| http.Client client, { |
| core.String rootUrl = 'https://vmwareengine.googleapis.com/', |
| core.String servicePath = '', |
| }) : _requester = commons.ApiRequester( |
| client, |
| rootUrl, |
| servicePath, |
| requestHeaders, |
| ); |
| } |
| |
| class ProjectsResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsResource get locations => |
| ProjectsLocationsResource(_requester); |
| |
| ProjectsResource(commons.ApiRequester client) : _requester = client; |
| } |
| |
| class ProjectsLocationsResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsAnnouncementsResource get announcements => |
| ProjectsLocationsAnnouncementsResource(_requester); |
| ProjectsLocationsDatastoresResource get datastores => |
| ProjectsLocationsDatastoresResource(_requester); |
| ProjectsLocationsDnsBindPermissionResource get dnsBindPermission => |
| ProjectsLocationsDnsBindPermissionResource(_requester); |
| ProjectsLocationsNetworkPeeringsResource get networkPeerings => |
| ProjectsLocationsNetworkPeeringsResource(_requester); |
| ProjectsLocationsNetworkPoliciesResource get networkPolicies => |
| ProjectsLocationsNetworkPoliciesResource(_requester); |
| ProjectsLocationsNodeTypesResource get nodeTypes => |
| ProjectsLocationsNodeTypesResource(_requester); |
| ProjectsLocationsOperationsResource get operations => |
| ProjectsLocationsOperationsResource(_requester); |
| ProjectsLocationsPrivateCloudsResource get privateClouds => |
| ProjectsLocationsPrivateCloudsResource(_requester); |
| ProjectsLocationsPrivateConnectionsResource get privateConnections => |
| ProjectsLocationsPrivateConnectionsResource(_requester); |
| ProjectsLocationsVmwareEngineNetworksResource get vmwareEngineNetworks => |
| ProjectsLocationsVmwareEngineNetworksResource(_requester); |
| |
| ProjectsLocationsResource(commons.ApiRequester client) : _requester = client; |
| |
| /// Gets information about a location. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Resource name for the location. |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Location]. |
| /// |
| /// 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<Location> get(core.String name, {core.String? $fields}) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return Location.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Gets all the principals having bind permission on the intranet VPC |
| /// associated with the consumer project granted by the Grant API. |
| /// |
| /// DnsBindPermission is a global resource and location can only be global. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The name of the resource which stores the users/service |
| /// accounts having the permission to bind to the corresponding intranet VPC |
| /// of the consumer project. DnsBindPermission is a global resource. Resource |
| /// names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/global/dnsBindPermission` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/dnsBindPermission$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [DnsBindPermission]. |
| /// |
| /// 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<DnsBindPermission> getDnsBindPermission( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return DnsBindPermission.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Lists information about the supported locations for this service. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The resource that owns the locations collection, if applicable. |
| /// Value must have pattern `^projects/\[^/\]+$`. |
| /// |
| /// [extraLocationTypes] - Optional. Do not use this field. It is unsupported |
| /// and is ignored unless explicitly documented otherwise. This is primarily |
| /// for internal usage. |
| /// |
| /// [filter] - A filter to narrow down results to a preferred subset. The |
| /// filtering language accepts strings like `"displayName=tokyo"`, and is |
| /// documented in more detail in \[AIP-160\](https://google.aip.dev/160). |
| /// |
| /// [pageSize] - The maximum number of results to return. If not set, the |
| /// service selects a default. |
| /// |
| /// [pageToken] - A page token received from the `next_page_token` field in |
| /// the response. Send that page token to receive the subsequent page. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListLocationsResponse]. |
| /// |
| /// 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<ListLocationsResponse> list( |
| core.String name, { |
| core.List<core.String>? extraLocationTypes, |
| core.String? filter, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'extraLocationTypes': ?extraLocationTypes, |
| 'filter': ?filter == null ? null : [filter], |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name') + '/locations'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListLocationsResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| } |
| |
| class ProjectsLocationsAnnouncementsResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsAnnouncementsResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Retrieves a `Announcement` by its resource name. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the announcement to retrieve. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-west1-a/announcements/announcement-uuid` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/announcements/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Announcement]. |
| /// |
| /// 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<Announcement> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return Announcement.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Lists `Announcements` for a given region and project |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the location to be queried for |
| /// announcements. Resource names are schemeless URIs that follow the |
| /// conventions in https://cloud.google.com/apis/design/resource_names. For |
| /// example: `projects/my-project/locations/us-west1-a` |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [filter] - A filter expression that matches resources returned in the |
| /// response. The expression must specify the field name, a comparison |
| /// operator, and the value that you want to use for filtering. The value must |
| /// be a string, a number, or a boolean. The comparison operator must be `=`, |
| /// `!=`, `>`, or `<`. For example, if you are filtering a list of |
| /// announcement runs, you can exclude the ones named `example-announcement` |
| /// by specifying `name != "example-announcement"`. You can also filter nested |
| /// fields. To filter on multiple expressions, provide each separate |
| /// expression within parentheses. For example: ``` (name = |
| /// "example-announcement") (createTime > "2021-04-12T08:15:10.40Z") ``` By |
| /// default, each expression is an `AND` expression. However, you can include |
| /// `AND` and `OR` expressions explicitly. For example: ``` (name = |
| /// "announcement-1") AND (createTime > "2021-04-12T08:15:10.40Z") OR (name = |
| /// "announcement-2") ``` |
| /// |
| /// [orderBy] - Sorts list results by a certain order. By default, returned |
| /// results are ordered by `name` in ascending order. You can also sort |
| /// results in descending order based on the `name` value using `orderBy="name |
| /// desc"`. Currently, only ordering by `name` is supported. |
| /// |
| /// [pageSize] - The maximum number of announcements to return in one page. |
| /// The service may return fewer than this value. The maximum value is coerced |
| /// to 1000. The default value of this field is 500. |
| /// |
| /// [pageToken] - A page token, received from a previous `ListAnnouncements` |
| /// call. Provide this to retrieve the subsequent page. When paginating, all |
| /// other parameters provided to `ListAnnouncements` must match the call that |
| /// provided the page token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListAnnouncementsResponse]. |
| /// |
| /// 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<ListAnnouncementsResponse> list( |
| core.String parent, { |
| core.String? filter, |
| core.String? orderBy, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'filter': ?filter == null ? null : [filter], |
| 'orderBy': ?orderBy == null ? null : [orderBy], |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/announcements'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListAnnouncementsResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| } |
| |
| class ProjectsLocationsDatastoresResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsDatastoresResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Creates a new `Datastore` resource in a given project and location. |
| /// |
| /// Datastores are regional resources |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the location to create the new |
| /// datastore in. Resource names are schemeless URIs that follow the |
| /// conventions in https://cloud.google.com/apis/design/resource_names. For |
| /// example: `projects/my-project/locations/us-central1` |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [datastoreId] - Required. The user-provided identifier of the datastore to |
| /// be created. This identifier must be unique among each `Datastore` within |
| /// the parent and becomes the final token in the name URI. The identifier |
| /// must meet the following requirements: * Only contains 1-63 alphanumeric |
| /// characters and hyphens * Begins with an alphabetical character * Ends with |
| /// a non-hyphen character * Not formatted as a UUID * Complies with |
| /// [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5) |
| /// |
| /// [requestId] - Optional. The request ID must be a valid UUID with the |
| /// exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> create( |
| Datastore request, |
| core.String parent, { |
| core.String? datastoreId, |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'datastoreId': ?datastoreId == null ? null : [datastoreId], |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/datastores'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Deletes a `Datastore` resource. |
| /// |
| /// You can only delete a Datastore after all resources that refer to it are |
| /// deleted. For example, multiple clusters of the same private cloud or |
| /// different private clouds can refer to the same datastore. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the Datastore to be deleted. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/datastore/my-datastore` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/datastores/\[^/\]+$`. |
| /// |
| /// [etag] - Optional. Checksum used to ensure that the user-provided value is |
| /// up to date before the server processes the request. The server compares |
| /// provided checksum with the current checksum of the resource. If the |
| /// user-provided value is out of date, this request returns an `ABORTED` |
| /// error. |
| /// |
| /// [requestId] - Optional. The request ID must be a valid UUID with the |
| /// exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> delete( |
| core.String name, { |
| core.String? etag, |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'etag': ?etag == null ? null : [etag], |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'DELETE', |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Retrieves a `Datastore` resource by its resource name. |
| /// |
| /// The resource contains details of the Datastore, such as its description, |
| /// subnets, type, and more. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the Datastore to retrieve. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/datastores/my-datastore` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/datastores/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Datastore]. |
| /// |
| /// 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<Datastore> get(core.String name, {core.String? $fields}) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return Datastore.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Lists `Datastore` resources in a given project and location. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the location to query for |
| /// Datastores. Resource names are schemeless URIs that follow the conventions |
| /// in https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1` |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [filter] - Optional. A filter expression that matches resources returned |
| /// in the response. The expression must specify the field name, a comparison |
| /// operator, and the value that you want to use for filtering. The value must |
| /// be a string, a number, or a boolean. The comparison operator must be `=`, |
| /// `!=`, `>`, or `<`. For example, if you are filtering a list of datastores, |
| /// you can exclude the ones named `example-datastore` by specifying `name != |
| /// "example-datastore"`. To filter on multiple expressions, provide each |
| /// separate expression within parentheses. For example: ``` (name = |
| /// "example-datastore") (createTime > "2021-04-12T08:15:10.40Z") ``` By |
| /// default, each expression is an `AND` expression. However, you can include |
| /// `AND` and `OR` expressions explicitly. For example: ``` (name = |
| /// "example-datastore-1") AND (createTime > "2021-04-12T08:15:10.40Z") OR |
| /// (name = "example-datastore-2") ``` |
| /// |
| /// [orderBy] - Optional. Sorts list results by a certain order. By default, |
| /// returned results are ordered by `name` in ascending order. You can also |
| /// sort results in descending order based on the `name` value using |
| /// `orderBy="name desc"`. Currently, only ordering by `name` is supported. |
| /// |
| /// [pageSize] - Optional. The maximum number of results to return in one |
| /// page. The maximum value is coerced to 1000. The default value of this |
| /// field is 500. |
| /// |
| /// [pageToken] - Optional. A page token, received from a previous |
| /// `ListDatastores` call. Provide this to retrieve the subsequent page. When |
| /// paginating, all other parameters provided to `ListDatastores` must match |
| /// the call that provided the page token. |
| /// |
| /// [requestId] - Optional. The request ID must be a valid UUID with the |
| /// exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListDatastoresResponse]. |
| /// |
| /// 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<ListDatastoresResponse> list( |
| core.String parent, { |
| core.String? filter, |
| core.String? orderBy, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'filter': ?filter == null ? null : [filter], |
| 'orderBy': ?orderBy == null ? null : [orderBy], |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/datastores'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListDatastoresResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Modifies a Datastore resource. |
| /// |
| /// Only the following fields can be updated: `description`. Only fields |
| /// specified in `updateMask` are applied. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Output only. Identifier. The resource name of this datastore. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/datastores/datastore` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/datastores/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. The request ID must be a valid UUID with the |
| /// exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [updateMask] - Optional. Field mask is used to specify the fields to be |
| /// overwritten in the Datastore resource by the update. The fields specified |
| /// in the `update_mask` are relative to the resource, not the full request. A |
| /// field will be overwritten if it is in the mask. If the user does not |
| /// provide a mask then all fields will be overwritten. Only the following |
| /// fields can be updated: `description`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> patch( |
| Datastore request, |
| core.String name, { |
| core.String? requestId, |
| core.String? updateMask, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'updateMask': ?updateMask == null ? null : [updateMask], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'PATCH', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsDnsBindPermissionResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsDnsBindPermissionResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Grants the bind permission to the customer provided principal(user / |
| /// service account) to bind their DNS zone with the intranet VPC associated |
| /// with the project. |
| /// |
| /// DnsBindPermission is a global resource and location can only be global. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The name of the resource which stores the users/service |
| /// accounts having the permission to bind to the corresponding intranet VPC |
| /// of the consumer project. DnsBindPermission is a global resource. Resource |
| /// names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/global/dnsBindPermission` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/dnsBindPermission$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> grant( |
| GrantDnsBindPermissionRequest request, |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name') + ':grant'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Revokes the bind permission from the customer provided principal(user / |
| /// service account) on the intranet VPC associated with the consumer project. |
| /// |
| /// DnsBindPermission is a global resource and location can only be global. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The name of the resource which stores the users/service |
| /// accounts having the permission to bind to the corresponding intranet VPC |
| /// of the consumer project. DnsBindPermission is a global resource. Resource |
| /// names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/global/dnsBindPermission` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/dnsBindPermission$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> revoke( |
| RevokeDnsBindPermissionRequest request, |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name') + ':revoke'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsNetworkPeeringsResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsNetworkPeeringsPeeringRoutesResource get peeringRoutes => |
| ProjectsLocationsNetworkPeeringsPeeringRoutesResource(_requester); |
| |
| ProjectsLocationsNetworkPeeringsResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Creates a new network peering between the peer network and VMware Engine |
| /// network provided in a `NetworkPeering` resource. |
| /// |
| /// NetworkPeering is a global resource and location can only be global. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the location to create the new |
| /// network peering in. This value is always `global`, because |
| /// `NetworkPeering` is a global resource. Resource names are schemeless URIs |
| /// that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/global` |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [networkPeeringId] - Required. The user-provided identifier of the new |
| /// `NetworkPeering`. This identifier must be unique among `NetworkPeering` |
| /// resources within the parent and becomes the final token in the name URI. |
| /// The identifier must meet the following requirements: * Only contains 1-63 |
| /// alphanumeric characters and hyphens * Begins with an alphabetical |
| /// character * Ends with a non-hyphen character * Not formatted as a UUID * |
| /// Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) |
| /// (section 3.5) |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> create( |
| NetworkPeering request, |
| core.String parent, { |
| core.String? networkPeeringId, |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'networkPeeringId': ?networkPeeringId == null ? null : [networkPeeringId], |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/networkPeerings'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Deletes a `NetworkPeering` resource. |
| /// |
| /// When a network peering is deleted for a VMware Engine network, the peer |
| /// network becomes inaccessible to that VMware Engine network. NetworkPeering |
| /// is a global resource and location can only be global. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the network peering to be deleted. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/global/networkPeerings/my-peering` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/networkPeerings/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> delete( |
| core.String name, { |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'DELETE', |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Retrieves a `NetworkPeering` resource by its resource name. |
| /// |
| /// The resource contains details of the network peering, such as peered |
| /// networks, import and export custom route configurations, and peering |
| /// state. NetworkPeering is a global resource and location can only be |
| /// global. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the network peering to retrieve. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/global/networkPeerings/my-peering` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/networkPeerings/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [NetworkPeering]. |
| /// |
| /// 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<NetworkPeering> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return NetworkPeering.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Lists `NetworkPeering` resources in a given project. |
| /// |
| /// NetworkPeering is a global resource and location can only be global. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the location (global) to query |
| /// for network peerings. Resource names are schemeless URIs that follow the |
| /// conventions in https://cloud.google.com/apis/design/resource_names. For |
| /// example: `projects/my-project/locations/global` |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [filter] - A filter expression that matches resources returned in the |
| /// response. The expression must specify the field name, a comparison |
| /// operator, and the value that you want to use for filtering. The value must |
| /// be a string, a number, or a boolean. The comparison operator must be `=`, |
| /// `!=`, `>`, or `<`. For example, if you are filtering a list of network |
| /// peerings, you can exclude the ones named `example-peering` by specifying |
| /// `name != "example-peering"`. To filter on multiple expressions, provide |
| /// each separate expression within parentheses. For example: ``` (name = |
| /// "example-peering") (createTime > "2021-04-12T08:15:10.40Z") ``` By |
| /// default, each expression is an `AND` expression. However, you can include |
| /// `AND` and `OR` expressions explicitly. For example: ``` (name = |
| /// "example-peering-1") AND (createTime > "2021-04-12T08:15:10.40Z") OR (name |
| /// = "example-peering-2") ``` |
| /// |
| /// [orderBy] - Sorts list results by a certain order. By default, returned |
| /// results are ordered by `name` in ascending order. You can also sort |
| /// results in descending order based on the `name` value using `orderBy="name |
| /// desc"`. Currently, only ordering by `name` is supported. |
| /// |
| /// [pageSize] - The maximum number of network peerings to return in one page. |
| /// The maximum value is coerced to 1000. The default value of this field is |
| /// 500. |
| /// |
| /// [pageToken] - A page token, received from a previous `ListNetworkPeerings` |
| /// call. Provide this to retrieve the subsequent page. When paginating, all |
| /// other parameters provided to `ListNetworkPeerings` must match the call |
| /// that provided the page token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListNetworkPeeringsResponse]. |
| /// |
| /// 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<ListNetworkPeeringsResponse> list( |
| core.String parent, { |
| core.String? filter, |
| core.String? orderBy, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'filter': ?filter == null ? null : [filter], |
| 'orderBy': ?orderBy == null ? null : [orderBy], |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/networkPeerings'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListNetworkPeeringsResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Modifies a `NetworkPeering` resource. |
| /// |
| /// Only the `description` field can be updated. Only fields specified in |
| /// `updateMask` are applied. NetworkPeering is a global resource and location |
| /// can only be global. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Output only. Identifier. The resource name of the network |
| /// peering. NetworkPeering is a global resource and location can only be |
| /// global. Resource names are scheme-less URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/global/networkPeerings/my-peering` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/networkPeerings/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [updateMask] - Required. Field mask is used to specify the fields to be |
| /// overwritten in the `NetworkPeering` resource by the update. The fields |
| /// specified in the `update_mask` are relative to the resource, not the full |
| /// request. A field will be overwritten if it is in the mask. If the user |
| /// does not provide a mask then all fields will be overwritten. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> patch( |
| NetworkPeering request, |
| core.String name, { |
| core.String? requestId, |
| core.String? updateMask, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'updateMask': ?updateMask == null ? null : [updateMask], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'PATCH', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsNetworkPeeringsPeeringRoutesResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsNetworkPeeringsPeeringRoutesResource( |
| commons.ApiRequester client, |
| ) : _requester = client; |
| |
| /// Lists the network peering routes exchanged over a peering connection. |
| /// |
| /// NetworkPeering is a global resource and location can only be global. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the network peering to retrieve |
| /// peering routes from. Resource names are schemeless URIs that follow the |
| /// conventions in https://cloud.google.com/apis/design/resource_names. For |
| /// example: `projects/my-project/locations/global/networkPeerings/my-peering` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/networkPeerings/\[^/\]+$`. |
| /// |
| /// [filter] - A filter expression that matches resources returned in the |
| /// response. Currently, only filtering on the `direction` field is supported. |
| /// To return routes imported from the peer network, provide |
| /// "direction=INCOMING". To return routes exported from the VMware Engine |
| /// network, provide "direction=OUTGOING". Other filter expressions return an |
| /// error. |
| /// |
| /// [pageSize] - The maximum number of peering routes to return in one page. |
| /// The service may return fewer than this value. The maximum value is coerced |
| /// to 1000. The default value of this field is 500. |
| /// |
| /// [pageToken] - A page token, received from a previous `ListPeeringRoutes` |
| /// call. Provide this to retrieve the subsequent page. When paginating, all |
| /// other parameters provided to `ListPeeringRoutes` must match the call that |
| /// provided the page token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListPeeringRoutesResponse]. |
| /// |
| /// 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<ListPeeringRoutesResponse> list( |
| core.String parent, { |
| core.String? filter, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'filter': ?filter == null ? null : [filter], |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/peeringRoutes'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListPeeringRoutesResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| } |
| |
| class ProjectsLocationsNetworkPoliciesResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsNetworkPoliciesExternalAccessRulesResource |
| get externalAccessRules => |
| ProjectsLocationsNetworkPoliciesExternalAccessRulesResource(_requester); |
| |
| ProjectsLocationsNetworkPoliciesResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Creates a new network policy in a given VMware Engine network of a project |
| /// and location (region). |
| /// |
| /// A new network policy cannot be created if another network policy already |
| /// exists in the same scope. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the location (region) to create |
| /// the new network policy in. Resource names are schemeless URIs that follow |
| /// the conventions in https://cloud.google.com/apis/design/resource_names. |
| /// For example: `projects/my-project/locations/us-central1` |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [networkPolicyId] - Required. The user-provided identifier of the network |
| /// policy to be created. This identifier must be unique within parent |
| /// `projects/{my-project}/locations/{us-central1}/networkPolicies` and |
| /// becomes the final token in the name URI. The identifier must meet the |
| /// following requirements: * Only contains 1-63 alphanumeric characters and |
| /// hyphens * Begins with an alphabetical character * Ends with a non-hyphen |
| /// character * Not formatted as a UUID * Complies with |
| /// [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5) |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> create( |
| NetworkPolicy request, |
| core.String parent, { |
| core.String? networkPolicyId, |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'networkPolicyId': ?networkPolicyId == null ? null : [networkPolicyId], |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/networkPolicies'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Deletes a `NetworkPolicy` resource. |
| /// |
| /// A network policy cannot be deleted when `NetworkService.state` is set to |
| /// `RECONCILING` for either its external IP or internet access service. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the network policy to delete. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/networkPolicies/my-network-policy` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/networkPolicies/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> delete( |
| core.String name, { |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'DELETE', |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Lists external IP addresses assigned to VMware workload VMs within the |
| /// scope of the given network policy. |
| /// |
| /// Request parameters: |
| /// |
| /// [networkPolicy] - Required. The resource name of the network policy to |
| /// query for assigned external IP addresses. Resource names are schemeless |
| /// URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/networkPolicies/my-policy` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/networkPolicies/\[^/\]+$`. |
| /// |
| /// [pageSize] - The maximum number of external IP addresses to return in one |
| /// page. The service may return fewer than this value. The maximum value is |
| /// coerced to 1000. The default value of this field is 500. |
| /// |
| /// [pageToken] - A page token, received from a previous |
| /// `FetchNetworkPolicyExternalAddresses` call. Provide this to retrieve the |
| /// subsequent page. When paginating, all parameters provided to |
| /// `FetchNetworkPolicyExternalAddresses`, except for `page_size` and |
| /// `page_token`, must match the call that provided the page token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [FetchNetworkPolicyExternalAddressesResponse]. |
| /// |
| /// 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<FetchNetworkPolicyExternalAddressesResponse> |
| fetchExternalAddresses( |
| core.String networkPolicy, { |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = |
| 'v1/' + |
| core.Uri.encodeFull('$networkPolicy') + |
| ':fetchExternalAddresses'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return FetchNetworkPolicyExternalAddressesResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Retrieves a `NetworkPolicy` resource by its resource name. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the network policy to retrieve. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/networkPolicies/my-network-policy` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/networkPolicies/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [NetworkPolicy]. |
| /// |
| /// 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<NetworkPolicy> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return NetworkPolicy.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Lists `NetworkPolicy` resources in a specified project and location. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the location (region) to query |
| /// for network policies. Resource names are schemeless URIs that follow the |
| /// conventions in https://cloud.google.com/apis/design/resource_names. For |
| /// example: `projects/my-project/locations/us-central1` |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [filter] - A filter expression that matches resources returned in the |
| /// response. The expression must specify the field name, a comparison |
| /// operator, and the value that you want to use for filtering. The value must |
| /// be a string, a number, or a boolean. The comparison operator must be `=`, |
| /// `!=`, `>`, or `<`. For example, if you are filtering a list of network |
| /// policies, you can exclude the ones named `example-policy` by specifying |
| /// `name != "example-policy"`. To filter on multiple expressions, provide |
| /// each separate expression within parentheses. For example: ``` (name = |
| /// "example-policy") (createTime > "2021-04-12T08:15:10.40Z") ``` By default, |
| /// each expression is an `AND` expression. However, you can include `AND` and |
| /// `OR` expressions explicitly. For example: ``` (name = "example-policy-1") |
| /// AND (createTime > "2021-04-12T08:15:10.40Z") OR (name = |
| /// "example-policy-2") ``` |
| /// |
| /// [orderBy] - Sorts list results by a certain order. By default, returned |
| /// results are ordered by `name` in ascending order. You can also sort |
| /// results in descending order based on the `name` value using `orderBy="name |
| /// desc"`. Currently, only ordering by `name` is supported. |
| /// |
| /// [pageSize] - The maximum number of network policies to return in one page. |
| /// The service may return fewer than this value. The maximum value is coerced |
| /// to 1000. The default value of this field is 500. |
| /// |
| /// [pageToken] - A page token, received from a previous `ListNetworkPolicies` |
| /// call. Provide this to retrieve the subsequent page. When paginating, all |
| /// other parameters provided to `ListNetworkPolicies` must match the call |
| /// that provided the page token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListNetworkPoliciesResponse]. |
| /// |
| /// 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<ListNetworkPoliciesResponse> list( |
| core.String parent, { |
| core.String? filter, |
| core.String? orderBy, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'filter': ?filter == null ? null : [filter], |
| 'orderBy': ?orderBy == null ? null : [orderBy], |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/networkPolicies'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListNetworkPoliciesResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Modifies a `NetworkPolicy` resource. |
| /// |
| /// Only the following fields can be updated: `internet_access`, |
| /// `external_ip`, `edge_services_cidr`. Only fields specified in `updateMask` |
| /// are applied. When updating a network policy, the external IP network |
| /// service can only be disabled if there are no external IP addresses present |
| /// in the scope of the policy. Also, a `NetworkService` cannot be updated |
| /// when `NetworkService.state` is set to `RECONCILING`. During operation |
| /// processing, the resource is temporarily in the `ACTIVE` state before the |
| /// operation fully completes. For that period of time, you can't update the |
| /// resource. Use the operation status to determine when the processing fully |
| /// completes. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Output only. Identifier. The resource name of this network |
| /// policy. Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/networkPolicies/my-network-policy` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/networkPolicies/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [updateMask] - Required. Field mask is used to specify the fields to be |
| /// overwritten in the `NetworkPolicy` resource by the update. The fields |
| /// specified in the `update_mask` are relative to the resource, not the full |
| /// request. A field will be overwritten if it is in the mask. If the user |
| /// does not provide a mask then all fields will be overwritten. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> patch( |
| NetworkPolicy request, |
| core.String name, { |
| core.String? requestId, |
| core.String? updateMask, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'updateMask': ?updateMask == null ? null : [updateMask], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'PATCH', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsNetworkPoliciesExternalAccessRulesResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsNetworkPoliciesExternalAccessRulesResource( |
| commons.ApiRequester client, |
| ) : _requester = client; |
| |
| /// Creates a new external access rule in a given network policy. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the network policy to create a |
| /// new external access firewall rule in. Resource names are schemeless URIs |
| /// that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/networkPolicies/my-policy` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/networkPolicies/\[^/\]+$`. |
| /// |
| /// [externalAccessRuleId] - Required. The user-provided identifier of the |
| /// `ExternalAccessRule` to be created. This identifier must be unique among |
| /// `ExternalAccessRule` resources within the parent and becomes the final |
| /// token in the name URI. The identifier must meet the following |
| /// requirements: * Only contains 1-63 alphanumeric characters and hyphens * |
| /// Begins with an alphabetical character * Ends with a non-hyphen character * |
| /// Not formatted as a UUID * Complies with |
| /// [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5) |
| /// |
| /// [requestId] - A request ID to identify requests. Specify a unique request |
| /// ID so that if you must retry your request, the server will know to ignore |
| /// the request if it has already been completed. The server guarantees that a |
| /// request doesn't result in creation of duplicate commitments for at least |
| /// 60 minutes. For example, consider a situation where you make an initial |
| /// request and the request times out. If you make the request again with the |
| /// same request ID, the server can check if the original operation with the |
| /// same request ID was received, and if so, will ignore the second request. |
| /// This prevents clients from accidentally creating duplicate commitments. |
| /// The request ID must be a valid UUID with the exception that zero UUID is |
| /// not supported (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> create( |
| ExternalAccessRule request, |
| core.String parent, { |
| core.String? externalAccessRuleId, |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'externalAccessRuleId': ?externalAccessRuleId == null |
| ? null |
| : [externalAccessRuleId], |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = |
| 'v1/' + core.Uri.encodeFull('$parent') + '/externalAccessRules'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Deletes a single external access rule. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the external access firewall rule |
| /// to delete. Resource names are schemeless URIs that follow the conventions |
| /// in https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/networkPolicies/my-policy/externalAccessRules/my-rule` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/networkPolicies/\[^/\]+/externalAccessRules/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if the |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> delete( |
| core.String name, { |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'DELETE', |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Gets details of a single external access rule. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the external access firewall rule |
| /// to retrieve. Resource names are schemeless URIs that follow the |
| /// conventions in https://cloud.google.com/apis/design/resource_names. For |
| /// example: |
| /// `projects/my-project/locations/us-central1/networkPolicies/my-policy/externalAccessRules/my-rule` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/networkPolicies/\[^/\]+/externalAccessRules/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ExternalAccessRule]. |
| /// |
| /// 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<ExternalAccessRule> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ExternalAccessRule.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Lists `ExternalAccessRule` resources in the specified network policy. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the network policy to query for |
| /// external access firewall rules. Resource names are schemeless URIs that |
| /// follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/networkPolicies/my-policy` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/networkPolicies/\[^/\]+$`. |
| /// |
| /// [filter] - A filter expression that matches resources returned in the |
| /// response. The expression must specify the field name, a comparison |
| /// operator, and the value that you want to use for filtering. The value must |
| /// be a string, a number, or a boolean. The comparison operator must be `=`, |
| /// `!=`, `>`, or `<`. For example, if you are filtering a list of external |
| /// access rules, you can exclude the ones named `example-rule` by specifying |
| /// `name != "example-rule"`. To filter on multiple expressions, provide each |
| /// separate expression within parentheses. For example: ``` (name = |
| /// "example-rule") (createTime > "2021-04-12T08:15:10.40Z") ``` By default, |
| /// each expression is an `AND` expression. However, you can include `AND` and |
| /// `OR` expressions explicitly. For example: ``` (name = "example-rule-1") |
| /// AND (createTime > "2021-04-12T08:15:10.40Z") OR (name = "example-rule-2") |
| /// ``` |
| /// |
| /// [orderBy] - Sorts list results by a certain order. By default, returned |
| /// results are ordered by `name` in ascending order. You can also sort |
| /// results in descending order based on the `name` value using `orderBy="name |
| /// desc"`. Currently, only ordering by `name` is supported. |
| /// |
| /// [pageSize] - The maximum number of external access rules to return in one |
| /// page. The service may return fewer than this value. The maximum value is |
| /// coerced to 1000. The default value of this field is 500. |
| /// |
| /// [pageToken] - A page token, received from a previous |
| /// `ListExternalAccessRulesRequest` call. Provide this to retrieve the |
| /// subsequent page. When paginating, all other parameters provided to |
| /// `ListExternalAccessRulesRequest` must match the call that provided the |
| /// page token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListExternalAccessRulesResponse]. |
| /// |
| /// 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<ListExternalAccessRulesResponse> list( |
| core.String parent, { |
| core.String? filter, |
| core.String? orderBy, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'filter': ?filter == null ? null : [filter], |
| 'orderBy': ?orderBy == null ? null : [orderBy], |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = |
| 'v1/' + core.Uri.encodeFull('$parent') + '/externalAccessRules'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListExternalAccessRulesResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Updates the parameters of a single external access rule. |
| /// |
| /// Only fields specified in `update_mask` are applied. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Output only. The resource name of this external access rule. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/networkPolicies/my-policy/externalAccessRules/my-rule` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/networkPolicies/\[^/\]+/externalAccessRules/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if the |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [updateMask] - Required. Field mask is used to specify the fields to be |
| /// overwritten in the `ExternalAccessRule` resource by the update. The fields |
| /// specified in the `update_mask` are relative to the resource, not the full |
| /// request. A field will be overwritten if it is in the mask. If the user |
| /// does not provide a mask then all fields will be overwritten. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> patch( |
| ExternalAccessRule request, |
| core.String name, { |
| core.String? requestId, |
| core.String? updateMask, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'updateMask': ?updateMask == null ? null : [updateMask], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'PATCH', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsNodeTypesResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsNodeTypesResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Gets details of a single `NodeType`. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the node type to retrieve. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-proj/locations/us-central1-a/nodeTypes/standard-72` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/nodeTypes/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [NodeType]. |
| /// |
| /// 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<NodeType> get(core.String name, {core.String? $fields}) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return NodeType.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Lists node types |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the location to be queried for |
| /// node types. Resource names are schemeless URIs that follow the conventions |
| /// in https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a` |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [filter] - A filter expression that matches resources returned in the |
| /// response. The expression must specify the field name, a comparison |
| /// operator, and the value that you want to use for filtering. The value must |
| /// be a string, a number, or a boolean. The comparison operator must be `=`, |
| /// `!=`, `>`, or `<`. For example, if you are filtering a list of node types, |
| /// you can exclude the ones named `standard-72` by specifying `name != |
| /// "standard-72"`. To filter on multiple expressions, provide each separate |
| /// expression within parentheses. For example: ``` (name = "standard-72") |
| /// (virtual_cpu_count > 2) ``` By default, each expression is an `AND` |
| /// expression. However, you can include `AND` and `OR` expressions |
| /// explicitly. For example: ``` (name = "standard-96") AND (virtual_cpu_count |
| /// > 2) OR (name = "standard-72") ``` |
| /// |
| /// [pageSize] - The maximum number of node types to return in one page. The |
| /// service may return fewer than this value. The maximum value is coerced to |
| /// 1000. The default value of this field is 500. |
| /// |
| /// [pageToken] - A page token, received from a previous `ListNodeTypes` call. |
| /// Provide this to retrieve the subsequent page. When paginating, all other |
| /// parameters provided to `ListNodeTypes` must match the call that provided |
| /// the page token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListNodeTypesResponse]. |
| /// |
| /// 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<ListNodeTypesResponse> list( |
| core.String parent, { |
| core.String? filter, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'filter': ?filter == null ? null : [filter], |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/nodeTypes'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListNodeTypesResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| } |
| |
| class ProjectsLocationsOperationsResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsOperationsResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Deletes a long-running operation. |
| /// |
| /// This method indicates that the client is no longer interested in the |
| /// operation result. It does not cancel the operation. If the server doesn't |
| /// support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the operation resource to be deleted. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/operations/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Empty]. |
| /// |
| /// 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<Empty> delete(core.String name, {core.String? $fields}) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'DELETE', |
| queryParams: queryParams_, |
| ); |
| return Empty.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Gets the latest state of a long-running operation. |
| /// |
| /// Clients can use this method to poll the operation result at intervals as |
| /// recommended by the API service. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the operation resource. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/operations/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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 name, {core.String? $fields}) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Lists operations that match the specified filter in the request. |
| /// |
| /// If the server doesn't support this method, it returns `UNIMPLEMENTED`. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the operation's parent resource. |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [filter] - The standard list filter. |
| /// |
| /// [pageSize] - The standard list page size. |
| /// |
| /// [pageToken] - The standard list page token. |
| /// |
| /// [returnPartialSuccess] - When set to `true`, operations that are reachable |
| /// are returned as normal, and those that are unreachable are returned in the |
| /// ListOperationsResponse.unreachable field. This can only be `true` when |
| /// reading across collections. For example, when `parent` is set to |
| /// `"projects/example/locations/-"`. This field is not supported by default |
| /// and will result in an `UNIMPLEMENTED` error if set unless explicitly |
| /// documented otherwise in service or product specific documentation. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListOperationsResponse]. |
| /// |
| /// 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<ListOperationsResponse> list( |
| core.String name, { |
| core.String? filter, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.bool? returnPartialSuccess, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'filter': ?filter == null ? null : [filter], |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'returnPartialSuccess': ?returnPartialSuccess == null |
| ? null |
| : ['${returnPartialSuccess}'], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name') + '/operations'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListOperationsResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| } |
| |
| class ProjectsLocationsPrivateCloudsResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsPrivateCloudsClustersResource get clusters => |
| ProjectsLocationsPrivateCloudsClustersResource(_requester); |
| ProjectsLocationsPrivateCloudsExternalAddressesResource |
| get externalAddresses => |
| ProjectsLocationsPrivateCloudsExternalAddressesResource(_requester); |
| ProjectsLocationsPrivateCloudsHcxActivationKeysResource |
| get hcxActivationKeys => |
| ProjectsLocationsPrivateCloudsHcxActivationKeysResource(_requester); |
| ProjectsLocationsPrivateCloudsLoggingServersResource get loggingServers => |
| ProjectsLocationsPrivateCloudsLoggingServersResource(_requester); |
| ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsResource |
| get managementDnsZoneBindings => |
| ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsResource( |
| _requester, |
| ); |
| ProjectsLocationsPrivateCloudsSubnetsResource get subnets => |
| ProjectsLocationsPrivateCloudsSubnetsResource(_requester); |
| ProjectsLocationsPrivateCloudsUpgradesResource get upgrades => |
| ProjectsLocationsPrivateCloudsUpgradesResource(_requester); |
| |
| ProjectsLocationsPrivateCloudsResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Creates a new `PrivateCloud` resource in a given project and location. |
| /// |
| /// Private clouds of type `STANDARD` and `TIME_LIMITED` are zonal resources, |
| /// `STRETCHED` private clouds are regional. Creating a private cloud also |
| /// creates a |
| /// [management cluster](https://cloud.google.com/vmware-engine/docs/concepts-vmware-components) |
| /// for that private cloud. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the location to create the new |
| /// private cloud in. Resource names are schemeless URIs that follow the |
| /// conventions in https://cloud.google.com/apis/design/resource_names. For |
| /// example: `projects/my-project/locations/us-central1-a` |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [privateCloudId] - Required. The user-provided identifier of the private |
| /// cloud to be created. This identifier must be unique among each |
| /// `PrivateCloud` within the parent and becomes the final token in the name |
| /// URI. The identifier must meet the following requirements: * Only contains |
| /// 1-63 alphanumeric characters and hyphens * Begins with an alphabetical |
| /// character * Ends with a non-hyphen character * Not formatted as a UUID * |
| /// Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) |
| /// (section 3.5) |
| /// |
| /// [requestId] - Optional. The request ID must be a valid UUID with the |
| /// exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [validateOnly] - Optional. True if you want the request to be validated |
| /// and not executed; false otherwise. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> create( |
| PrivateCloud request, |
| core.String parent, { |
| core.String? privateCloudId, |
| core.String? requestId, |
| core.bool? validateOnly, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'privateCloudId': ?privateCloudId == null ? null : [privateCloudId], |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'validateOnly': ?validateOnly == null ? null : ['${validateOnly}'], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/privateClouds'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Schedules a `PrivateCloud` resource for deletion. |
| /// |
| /// A `PrivateCloud` resource scheduled for deletion has `PrivateCloud.state` |
| /// set to `DELETED` and `expireTime` set to the time when deletion is final |
| /// and can no longer be reversed. The delete operation is marked as done as |
| /// soon as the `PrivateCloud` is successfully scheduled for deletion (this |
| /// also applies when `delayHours` is set to zero), and the operation is not |
| /// kept in pending state until `PrivateCloud` is purged. `PrivateCloud` can |
| /// be restored using `UndeletePrivateCloud` method before the `expireTime` |
| /// elapses. When `expireTime` is reached, deletion is final and all private |
| /// cloud resources are irreversibly removed and billing stops. During the |
| /// final removal process, `PrivateCloud.state` is set to `PURGING`. |
| /// `PrivateCloud` can be polled using standard `GET` method for the whole |
| /// period of deletion and purging. It will not be returned only when it is |
| /// completely purged. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the private cloud to delete. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [delayHours] - Optional. Time delay of the deletion specified in hours. |
| /// The default value is `3`. Specifying a non-zero value for this field |
| /// changes the value of `PrivateCloud.state` to `DELETED` and sets |
| /// `expire_time` to the planned deletion time. Deletion can be cancelled |
| /// before `expire_time` elapses using VmwareEngine.UndeletePrivateCloud. |
| /// Specifying a value of `0` for this field instead begins the deletion |
| /// process and ceases billing immediately. During the final deletion process, |
| /// the value of `PrivateCloud.state` becomes `PURGING`. |
| /// |
| /// [force] - Optional. If set to true, cascade delete is enabled and all |
| /// children of this private cloud resource are also deleted. When this flag |
| /// is set to false, the private cloud will not be deleted if there are any |
| /// children other than the management cluster. The management cluster is |
| /// always deleted. |
| /// |
| /// [requestId] - Optional. The request ID must be a valid UUID with the |
| /// exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> delete( |
| core.String name, { |
| core.int? delayHours, |
| core.bool? force, |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'delayHours': ?delayHours == null ? null : ['${delayHours}'], |
| 'force': ?force == null ? null : ['${force}'], |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'DELETE', |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Retrieves a `PrivateCloud` resource by its resource name. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the private cloud to retrieve. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [PrivateCloud]. |
| /// |
| /// 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<PrivateCloud> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return PrivateCloud.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Gets details of the `DnsForwarding` config. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of a `DnsForwarding` to retrieve. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/dnsForwarding` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/dnsForwarding$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [DnsForwarding]. |
| /// |
| /// 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<DnsForwarding> getDnsForwarding( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return DnsForwarding.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Gets the access control policy for a resource. |
| /// |
| /// Returns an empty policy if the resource exists and does not have a policy |
| /// set. |
| /// |
| /// Request parameters: |
| /// |
| /// [resource] - REQUIRED: The resource for which the policy is being |
| /// requested. See |
| /// [Resource names](https://cloud.google.com/apis/design/resource_names) for |
| /// the appropriate value for this field. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [options_requestedPolicyVersion] - Optional. The maximum policy version |
| /// that will be used to format the policy. Valid values are 0, 1, and 3. |
| /// Requests specifying an invalid value will be rejected. Requests for |
| /// policies with any conditional role bindings must specify version 3. |
| /// Policies with no conditional role bindings may specify any valid value or |
| /// leave the field unset. The policy in the response might use the policy |
| /// version that you specified, or it might use a lower policy version. For |
| /// example, if you specify version 3, but the policy has no conditional role |
| /// bindings, the response uses version 1. To learn which resources support |
| /// conditions in their IAM policies, see the |
| /// [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Policy]. |
| /// |
| /// 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<Policy> getIamPolicy( |
| core.String resource, { |
| core.int? options_requestedPolicyVersion, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'options.requestedPolicyVersion': ?options_requestedPolicyVersion == null |
| ? null |
| : ['${options_requestedPolicyVersion}'], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$resource') + ':getIamPolicy'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return Policy.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Lists `PrivateCloud` resources in a given project and location. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the private cloud to be queried |
| /// for clusters. Resource names are schemeless URIs that follow the |
| /// conventions in https://cloud.google.com/apis/design/resource_names. For |
| /// example: `projects/my-project/locations/us-central1-a` |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [filter] - A filter expression that matches resources returned in the |
| /// response. The expression must specify the field name, a comparison |
| /// operator, and the value that you want to use for filtering. The value must |
| /// be a string, a number, or a boolean. The comparison operator must be `=`, |
| /// `!=`, `>`, or `<`. For example, if you are filtering a list of private |
| /// clouds, you can exclude the ones named `example-pc` by specifying `name != |
| /// "example-pc"`. You can also filter nested fields. For example, you could |
| /// specify `networkConfig.managementCidr = "192.168.0.0/24"` to include |
| /// private clouds only if they have a matching address in their network |
| /// configuration. To filter on multiple expressions, provide each separate |
| /// expression within parentheses. For example: ``` (name = "example-pc") |
| /// (createTime > "2021-04-12T08:15:10.40Z") ``` By default, each expression |
| /// is an `AND` expression. However, you can include `AND` and `OR` |
| /// expressions explicitly. For example: ``` (name = "private-cloud-1") AND |
| /// (createTime > "2021-04-12T08:15:10.40Z") OR (name = "private-cloud-2") ``` |
| /// |
| /// [orderBy] - Sorts list results by a certain order. By default, returned |
| /// results are ordered by `name` in ascending order. You can also sort |
| /// results in descending order based on the `name` value using `orderBy="name |
| /// desc"`. Currently, only ordering by `name` is supported. |
| /// |
| /// [pageSize] - The maximum number of private clouds to return in one page. |
| /// The service may return fewer than this value. The maximum value is coerced |
| /// to 1000. The default value of this field is 500. |
| /// |
| /// [pageToken] - A page token, received from a previous `ListPrivateClouds` |
| /// call. Provide this to retrieve the subsequent page. When paginating, all |
| /// other parameters provided to `ListPrivateClouds` must match the call that |
| /// provided the page token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListPrivateCloudsResponse]. |
| /// |
| /// 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<ListPrivateCloudsResponse> list( |
| core.String parent, { |
| core.String? filter, |
| core.String? orderBy, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'filter': ?filter == null ? null : [filter], |
| 'orderBy': ?orderBy == null ? null : [orderBy], |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/privateClouds'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListPrivateCloudsResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Modifies a `PrivateCloud` resource. |
| /// |
| /// Only the following fields can be updated: `description`. Only fields |
| /// specified in `updateMask` are applied. During operation processing, the |
| /// resource is temporarily in the `ACTIVE` state before the operation fully |
| /// completes. For that period of time, you can't update the resource. Use the |
| /// operation status to determine when the processing fully completes. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Output only. Identifier. The resource name of this private cloud. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. The request ID must be a valid UUID with the |
| /// exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [updateMask] - Required. Field mask is used to specify the fields to be |
| /// overwritten in the `PrivateCloud` resource by the update. The fields |
| /// specified in `updateMask` are relative to the resource, not the full |
| /// request. A field will be overwritten if it is in the mask. If the user |
| /// does not provide a mask then all fields will be overwritten. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> patch( |
| PrivateCloud request, |
| core.String name, { |
| core.String? requestId, |
| core.String? updateMask, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'updateMask': ?updateMask == null ? null : [updateMask], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'PATCH', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Accelerates the deletion of a private cloud that is currently in soft |
| /// deletion A `PrivateCloud` resource in soft deletion has |
| /// `PrivateCloud.state` set to `SOFT_DELETED` and `PrivateCloud.expireTime` |
| /// set to the time when deletion can no longer be reversed. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the private cloud in softdeletion. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> privateCloudDeletionNow( |
| AcceleratePrivateCloudDeletionRequest request, |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = |
| 'v1/' + core.Uri.encodeFull('$name') + ':privateCloudDeletionNow'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Resets credentials of the NSX appliance. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [privateCloud] - Required. The resource name of the private cloud to reset |
| /// credentials for. Resource names are schemeless URIs that follow the |
| /// conventions in https://cloud.google.com/apis/design/resource_names. For |
| /// example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> resetNsxCredentials( |
| ResetNsxCredentialsRequest request, |
| core.String privateCloud, { |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = |
| 'v1/' + core.Uri.encodeFull('$privateCloud') + ':resetNsxCredentials'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Resets credentials of the Vcenter appliance. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [privateCloud] - Required. The resource name of the private cloud to reset |
| /// credentials for. Resource names are schemeless URIs that follow the |
| /// conventions in https://cloud.google.com/apis/design/resource_names. For |
| /// example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> resetVcenterCredentials( |
| ResetVcenterCredentialsRequest request, |
| core.String privateCloud, { |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = |
| 'v1/' + |
| core.Uri.encodeFull('$privateCloud') + |
| ':resetVcenterCredentials'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Sets the access control policy on the specified resource. |
| /// |
| /// Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, |
| /// and `PERMISSION_DENIED` errors. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [resource] - REQUIRED: The resource for which the policy is being |
| /// specified. See |
| /// [Resource names](https://cloud.google.com/apis/design/resource_names) for |
| /// the appropriate value for this field. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Policy]. |
| /// |
| /// 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<Policy> setIamPolicy( |
| SetIamPolicyRequest request, |
| core.String resource, { |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$resource') + ':setIamPolicy'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Policy.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Gets details of credentials for NSX appliance. |
| /// |
| /// Request parameters: |
| /// |
| /// [privateCloud] - Required. The resource name of the private cloud to be |
| /// queried for credentials. Resource names are schemeless URIs that follow |
| /// the conventions in https://cloud.google.com/apis/design/resource_names. |
| /// For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Credentials]. |
| /// |
| /// 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<Credentials> showNsxCredentials( |
| core.String privateCloud, { |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = |
| 'v1/' + core.Uri.encodeFull('$privateCloud') + ':showNsxCredentials'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return Credentials.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Gets details of credentials for Vcenter appliance. |
| /// |
| /// Request parameters: |
| /// |
| /// [privateCloud] - Required. The resource name of the private cloud to be |
| /// queried for credentials. Resource names are schemeless URIs that follow |
| /// the conventions in https://cloud.google.com/apis/design/resource_names. |
| /// For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [username] - Optional. The username of the user to be queried for |
| /// credentials. The default value of this field is CloudOwner@gve.local. The |
| /// provided value must be one of the following: CloudOwner@gve.local, |
| /// solution-user-01@gve.local, solution-user-02@gve.local, |
| /// solution-user-03@gve.local, solution-user-04@gve.local, |
| /// solution-user-05@gve.local, zertoadmin@gve.local. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Credentials]. |
| /// |
| /// 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<Credentials> showVcenterCredentials( |
| core.String privateCloud, { |
| core.String? username, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'username': ?username == null ? null : [username], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = |
| 'v1/' + |
| core.Uri.encodeFull('$privateCloud') + |
| ':showVcenterCredentials'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return Credentials.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Returns permissions that a caller has on the specified resource. |
| /// |
| /// If the resource does not exist, this will return an empty set of |
| /// permissions, not a `NOT_FOUND` error. Note: This operation is designed to |
| /// be used for building permission-aware UIs and command-line tools, not for |
| /// authorization checking. This operation may "fail open" without warning. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [resource] - REQUIRED: The resource for which the policy detail is being |
| /// requested. See |
| /// [Resource names](https://cloud.google.com/apis/design/resource_names) for |
| /// the appropriate value for this field. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [TestIamPermissionsResponse]. |
| /// |
| /// 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<TestIamPermissionsResponse> testIamPermissions( |
| TestIamPermissionsRequest request, |
| core.String resource, { |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = |
| 'v1/' + core.Uri.encodeFull('$resource') + ':testIamPermissions'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return TestIamPermissionsResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Restores a private cloud that was previously scheduled for deletion by |
| /// `DeletePrivateCloud`. |
| /// |
| /// A `PrivateCloud` resource scheduled for deletion has `PrivateCloud.state` |
| /// set to `DELETED` and `PrivateCloud.expireTime` set to the time when |
| /// deletion can no longer be reversed. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the private cloud scheduled for |
| /// deletion. Resource names are schemeless URIs that follow the conventions |
| /// in https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> undelete( |
| UndeletePrivateCloudRequest request, |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name') + ':undelete'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Updates the parameters of the `DnsForwarding` config, like associated |
| /// domains. |
| /// |
| /// Only fields specified in `update_mask` are applied. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Output only. Identifier. The resource name of this DNS profile. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/dnsForwarding` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/dnsForwarding$`. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [updateMask] - Required. Field mask is used to specify the fields to be |
| /// overwritten in the `DnsForwarding` resource by the update. The fields |
| /// specified in the `update_mask` are relative to the resource, not the full |
| /// request. A field will be overwritten if it is in the mask. If the user |
| /// does not provide a mask then all fields will be overwritten. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> updateDnsForwarding( |
| DnsForwarding request, |
| core.String name, { |
| core.String? requestId, |
| core.String? updateMask, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'updateMask': ?updateMask == null ? null : [updateMask], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'PATCH', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsPrivateCloudsClustersResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsPrivateCloudsClustersNodesResource get nodes => |
| ProjectsLocationsPrivateCloudsClustersNodesResource(_requester); |
| |
| ProjectsLocationsPrivateCloudsClustersResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Creates a new cluster in a given private cloud. |
| /// |
| /// Creating a new cluster provides additional nodes for use in the parent |
| /// private cloud and requires sufficient |
| /// [node quota](https://cloud.google.com/vmware-engine/quotas). |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the private cloud to create a |
| /// new cluster in. Resource names are schemeless URIs that follow the |
| /// conventions in https://cloud.google.com/apis/design/resource_names. For |
| /// example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [clusterId] - Required. The user-provided identifier of the new `Cluster`. |
| /// This identifier must be unique among clusters within the parent and |
| /// becomes the final token in the name URI. The identifier must meet the |
| /// following requirements: * Only contains 1-63 alphanumeric characters and |
| /// hyphens * Begins with an alphabetical character * Ends with a non-hyphen |
| /// character * Not formatted as a UUID * Complies with |
| /// [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5) |
| /// |
| /// [requestId] - Optional. The request ID must be a valid UUID with the |
| /// exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [validateOnly] - Optional. True if you want the request to be validated |
| /// and not executed; false otherwise. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> create( |
| Cluster request, |
| core.String parent, { |
| core.String? clusterId, |
| core.String? requestId, |
| core.bool? validateOnly, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'clusterId': ?clusterId == null ? null : [clusterId], |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'validateOnly': ?validateOnly == null ? null : ['${validateOnly}'], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/clusters'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Deletes a `Cluster` resource. |
| /// |
| /// To avoid unintended data loss, migrate or gracefully shut down any |
| /// workloads running on the cluster before deletion. You cannot delete the |
| /// management cluster of a private cloud using this method. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the cluster to delete. Resource |
| /// names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/my-cluster` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/clusters/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. The request ID must be a valid UUID with the |
| /// exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> delete( |
| core.String name, { |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'DELETE', |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Retrieves a `Cluster` resource by its resource name. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The cluster resource name to retrieve. Resource names |
| /// are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/my-cluster` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/clusters/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Cluster]. |
| /// |
| /// 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<Cluster> get(core.String name, {core.String? $fields}) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return Cluster.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Gets the access control policy for a resource. |
| /// |
| /// Returns an empty policy if the resource exists and does not have a policy |
| /// set. |
| /// |
| /// Request parameters: |
| /// |
| /// [resource] - REQUIRED: The resource for which the policy is being |
| /// requested. See |
| /// [Resource names](https://cloud.google.com/apis/design/resource_names) for |
| /// the appropriate value for this field. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/clusters/\[^/\]+$`. |
| /// |
| /// [options_requestedPolicyVersion] - Optional. The maximum policy version |
| /// that will be used to format the policy. Valid values are 0, 1, and 3. |
| /// Requests specifying an invalid value will be rejected. Requests for |
| /// policies with any conditional role bindings must specify version 3. |
| /// Policies with no conditional role bindings may specify any valid value or |
| /// leave the field unset. The policy in the response might use the policy |
| /// version that you specified, or it might use a lower policy version. For |
| /// example, if you specify version 3, but the policy has no conditional role |
| /// bindings, the response uses version 1. To learn which resources support |
| /// conditions in their IAM policies, see the |
| /// [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Policy]. |
| /// |
| /// 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<Policy> getIamPolicy( |
| core.String resource, { |
| core.int? options_requestedPolicyVersion, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'options.requestedPolicyVersion': ?options_requestedPolicyVersion == null |
| ? null |
| : ['${options_requestedPolicyVersion}'], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$resource') + ':getIamPolicy'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return Policy.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Lists `Cluster` resources in a given private cloud. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the private cloud to query for |
| /// clusters. Resource names are schemeless URIs that follow the conventions |
| /// in https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [filter] - To filter on multiple expressions, provide each separate |
| /// expression within parentheses. For example: ``` (name = "example-cluster") |
| /// (nodeCount = "3") ``` By default, each expression is an `AND` expression. |
| /// However, you can include `AND` and `OR` expressions explicitly. For |
| /// example: ``` (name = "example-cluster-1") AND (createTime > |
| /// "2021-04-12T08:15:10.40Z") OR (name = "example-cluster-2") ``` |
| /// |
| /// [orderBy] - Sorts list results by a certain order. By default, returned |
| /// results are ordered by `name` in ascending order. You can also sort |
| /// results in descending order based on the `name` value using `orderBy="name |
| /// desc"`. Currently, only ordering by `name` is supported. |
| /// |
| /// [pageSize] - The maximum number of clusters to return in one page. The |
| /// service may return fewer than this value. The maximum value is coerced to |
| /// 1000. The default value of this field is 500. |
| /// |
| /// [pageToken] - A page token, received from a previous `ListClusters` call. |
| /// Provide this to retrieve the subsequent page. When paginating, all other |
| /// parameters provided to `ListClusters` must match the call that provided |
| /// the page token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListClustersResponse]. |
| /// |
| /// 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<ListClustersResponse> list( |
| core.String parent, { |
| core.String? filter, |
| core.String? orderBy, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'filter': ?filter == null ? null : [filter], |
| 'orderBy': ?orderBy == null ? null : [orderBy], |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/clusters'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListClustersResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Mounts a `Datastore` on a cluster resource Datastores are zonal resources |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the cluster to mount the |
| /// datastore. Resource names are schemeless URIs that follow the conventions |
| /// in https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/my-cluster` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/clusters/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> mountDatastore( |
| MountDatastoreRequest request, |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name') + ':mountDatastore'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Modifies a `Cluster` resource. |
| /// |
| /// Only fields specified in `updateMask` are applied. During operation |
| /// processing, the resource is temporarily in the `ACTIVE` state before the |
| /// operation fully completes. For that period of time, you can't update the |
| /// resource. Use the operation status to determine when the processing fully |
| /// completes. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Output only. Identifier. The resource name of this cluster. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/my-cluster` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/clusters/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. The request ID must be a valid UUID with the |
| /// exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [updateMask] - Required. Field mask is used to specify the fields to be |
| /// overwritten in the `Cluster` resource by the update. The fields specified |
| /// in the `updateMask` are relative to the resource, not the full request. A |
| /// field will be overwritten if it is in the mask. If the user does not |
| /// provide a mask then all fields will be overwritten. |
| /// |
| /// [validateOnly] - Optional. True if you want the request to be validated |
| /// and not executed; false otherwise. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> patch( |
| Cluster request, |
| core.String name, { |
| core.String? requestId, |
| core.String? updateMask, |
| core.bool? validateOnly, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'updateMask': ?updateMask == null ? null : [updateMask], |
| 'validateOnly': ?validateOnly == null ? null : ['${validateOnly}'], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'PATCH', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Sets the access control policy on the specified resource. |
| /// |
| /// Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, |
| /// and `PERMISSION_DENIED` errors. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [resource] - REQUIRED: The resource for which the policy is being |
| /// specified. See |
| /// [Resource names](https://cloud.google.com/apis/design/resource_names) for |
| /// the appropriate value for this field. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/clusters/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Policy]. |
| /// |
| /// 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<Policy> setIamPolicy( |
| SetIamPolicyRequest request, |
| core.String resource, { |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$resource') + ':setIamPolicy'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Policy.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Returns permissions that a caller has on the specified resource. |
| /// |
| /// If the resource does not exist, this will return an empty set of |
| /// permissions, not a `NOT_FOUND` error. Note: This operation is designed to |
| /// be used for building permission-aware UIs and command-line tools, not for |
| /// authorization checking. This operation may "fail open" without warning. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [resource] - REQUIRED: The resource for which the policy detail is being |
| /// requested. See |
| /// [Resource names](https://cloud.google.com/apis/design/resource_names) for |
| /// the appropriate value for this field. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/clusters/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [TestIamPermissionsResponse]. |
| /// |
| /// 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<TestIamPermissionsResponse> testIamPermissions( |
| TestIamPermissionsRequest request, |
| core.String resource, { |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = |
| 'v1/' + core.Uri.encodeFull('$resource') + ':testIamPermissions'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return TestIamPermissionsResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Mounts a `Datastore` on a cluster resource Datastores are zonal resources |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the cluster to unmount the |
| /// datastore. Resource names are schemeless URIs that follow the conventions |
| /// in https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/my-cluster` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/clusters/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> unmountDatastore( |
| UnmountDatastoreRequest request, |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name') + ':unmountDatastore'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsPrivateCloudsClustersNodesResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsPrivateCloudsClustersNodesResource( |
| commons.ApiRequester client, |
| ) : _requester = client; |
| |
| /// Gets details of a single node. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the node to retrieve. For example: |
| /// `projects/{project}/locations/{location}/privateClouds/{private_cloud}/clusters/{cluster}/nodes/{node}` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/clusters/\[^/\]+/nodes/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Node]. |
| /// |
| /// 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<Node> get(core.String name, {core.String? $fields}) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return Node.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Lists nodes in a given cluster. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the cluster to be queried for |
| /// nodes. Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/my-cluster` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/clusters/\[^/\]+$`. |
| /// |
| /// [pageSize] - The maximum number of nodes to return in one page. The |
| /// service may return fewer than this value. The maximum value is coerced to |
| /// 1000. The default value of this field is 500. |
| /// |
| /// [pageToken] - A page token, received from a previous `ListNodes` call. |
| /// Provide this to retrieve the subsequent page. When paginating, all other |
| /// parameters provided to `ListNodes` must match the call that provided the |
| /// page token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListNodesResponse]. |
| /// |
| /// 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<ListNodesResponse> list( |
| core.String parent, { |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/nodes'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListNodesResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| } |
| |
| class ProjectsLocationsPrivateCloudsExternalAddressesResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsPrivateCloudsExternalAddressesResource( |
| commons.ApiRequester client, |
| ) : _requester = client; |
| |
| /// Creates a new `ExternalAddress` resource in a given private cloud. |
| /// |
| /// The network policy that corresponds to the private cloud must have the |
| /// external IP address network service enabled (`NetworkPolicy.external_ip`). |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the private cloud to create a |
| /// new external IP address in. Resource names are schemeless URIs that follow |
| /// the conventions in https://cloud.google.com/apis/design/resource_names. |
| /// For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [externalAddressId] - Required. The user-provided identifier of the |
| /// `ExternalAddress` to be created. This identifier must be unique among |
| /// `ExternalAddress` resources within the parent and becomes the final token |
| /// in the name URI. The identifier must meet the following requirements: * |
| /// Only contains 1-63 alphanumeric characters and hyphens * Begins with an |
| /// alphabetical character * Ends with a non-hyphen character * Not formatted |
| /// as a UUID * Complies with |
| /// [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5) |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if the |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> create( |
| ExternalAddress request, |
| core.String parent, { |
| core.String? externalAddressId, |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'externalAddressId': ?externalAddressId == null |
| ? null |
| : [externalAddressId], |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/externalAddresses'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Deletes a single external IP address. |
| /// |
| /// When you delete an external IP address, connectivity between the external |
| /// IP address and the corresponding internal IP address is lost. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the external IP address to delete. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/externalAddresses/my-ip` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/externalAddresses/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if the |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> delete( |
| core.String name, { |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'DELETE', |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Gets details of a single external IP address. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the external IP address to |
| /// retrieve. Resource names are schemeless URIs that follow the conventions |
| /// in https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/externalAddresses/my-ip` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/externalAddresses/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ExternalAddress]. |
| /// |
| /// 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<ExternalAddress> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ExternalAddress.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Lists external IP addresses assigned to VMware workload VMs in a given |
| /// private cloud. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the private cloud to be queried |
| /// for external IP addresses. Resource names are schemeless URIs that follow |
| /// the conventions in https://cloud.google.com/apis/design/resource_names. |
| /// For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [filter] - A filter expression that matches resources returned in the |
| /// response. The expression must specify the field name, a comparison |
| /// operator, and the value that you want to use for filtering. The value must |
| /// be a string, a number, or a boolean. The comparison operator must be `=`, |
| /// `!=`, `>`, or `<`. For example, if you are filtering a list of IP |
| /// addresses, you can exclude the ones named `example-ip` by specifying `name |
| /// != "example-ip"`. To filter on multiple expressions, provide each separate |
| /// expression within parentheses. For example: ``` (name = "example-ip") |
| /// (createTime > "2021-04-12T08:15:10.40Z") ``` By default, each expression |
| /// is an `AND` expression. However, you can include `AND` and `OR` |
| /// expressions explicitly. For example: ``` (name = "example-ip-1") AND |
| /// (createTime > "2021-04-12T08:15:10.40Z") OR (name = "example-ip-2") ``` |
| /// |
| /// [orderBy] - Sorts list results by a certain order. By default, returned |
| /// results are ordered by `name` in ascending order. You can also sort |
| /// results in descending order based on the `name` value using `orderBy="name |
| /// desc"`. Currently, only ordering by `name` is supported. |
| /// |
| /// [pageSize] - The maximum number of external IP addresses to return in one |
| /// page. The service may return fewer than this value. The maximum value is |
| /// coerced to 1000. The default value of this field is 500. |
| /// |
| /// [pageToken] - A page token, received from a previous |
| /// `ListExternalAddresses` call. Provide this to retrieve the subsequent |
| /// page. When paginating, all other parameters provided to |
| /// `ListExternalAddresses` must match the call that provided the page token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListExternalAddressesResponse]. |
| /// |
| /// 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<ListExternalAddressesResponse> list( |
| core.String parent, { |
| core.String? filter, |
| core.String? orderBy, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'filter': ?filter == null ? null : [filter], |
| 'orderBy': ?orderBy == null ? null : [orderBy], |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/externalAddresses'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListExternalAddressesResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Updates the parameters of a single external IP address. |
| /// |
| /// Only fields specified in `update_mask` are applied. During operation |
| /// processing, the resource is temporarily in the `ACTIVE` state before the |
| /// operation fully completes. For that period of time, you can't update the |
| /// resource. Use the operation status to determine when the processing fully |
| /// completes. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Output only. Identifier. The resource name of this external IP |
| /// address. Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/externalAddresses/my-address` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/externalAddresses/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if the |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [updateMask] - Required. Field mask is used to specify the fields to be |
| /// overwritten in the `ExternalAddress` resource by the update. The fields |
| /// specified in the `update_mask` are relative to the resource, not the full |
| /// request. A field will be overwritten if it is in the mask. If the user |
| /// does not provide a mask then all fields will be overwritten. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> patch( |
| ExternalAddress request, |
| core.String name, { |
| core.String? requestId, |
| core.String? updateMask, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'updateMask': ?updateMask == null ? null : [updateMask], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'PATCH', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsPrivateCloudsHcxActivationKeysResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsPrivateCloudsHcxActivationKeysResource( |
| commons.ApiRequester client, |
| ) : _requester = client; |
| |
| /// Creates a new HCX activation key in a given private cloud. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the private cloud to create the |
| /// key for. Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [hcxActivationKeyId] - Required. The user-provided identifier of the |
| /// `HcxActivationKey` to be created. This identifier must be unique among |
| /// `HcxActivationKey` resources within the parent and becomes the final token |
| /// in the name URI. The identifier must meet the following requirements: * |
| /// Only contains 1-63 alphanumeric characters and hyphens * Begins with an |
| /// alphabetical character * Ends with a non-hyphen character * Not formatted |
| /// as a UUID * Complies with |
| /// [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5) |
| /// |
| /// [requestId] - A request ID to identify requests. Specify a unique request |
| /// ID so that if you must retry your request, the server will know to ignore |
| /// the request if it has already been completed. The server guarantees that a |
| /// request doesn't result in creation of duplicate commitments for at least |
| /// 60 minutes. For example, consider a situation where you make an initial |
| /// request and the request times out. If you make the request again with the |
| /// same request ID, the server can check if original operation with the same |
| /// request ID was received, and if so, will ignore the second request. This |
| /// prevents clients from accidentally creating duplicate commitments. The |
| /// request ID must be a valid UUID with the exception that zero UUID is not |
| /// supported (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> create( |
| HcxActivationKey request, |
| core.String parent, { |
| core.String? hcxActivationKeyId, |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'hcxActivationKeyId': ?hcxActivationKeyId == null |
| ? null |
| : [hcxActivationKeyId], |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/hcxActivationKeys'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Retrieves a `HcxActivationKey` resource by its resource name. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the HCX activation key to |
| /// retrieve. Resource names are schemeless URIs that follow the conventions |
| /// in https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/privateClouds/my-cloud/hcxActivationKeys/my-key` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/hcxActivationKeys/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [HcxActivationKey]. |
| /// |
| /// 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<HcxActivationKey> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return HcxActivationKey.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Gets the access control policy for a resource. |
| /// |
| /// Returns an empty policy if the resource exists and does not have a policy |
| /// set. |
| /// |
| /// Request parameters: |
| /// |
| /// [resource] - REQUIRED: The resource for which the policy is being |
| /// requested. See |
| /// [Resource names](https://cloud.google.com/apis/design/resource_names) for |
| /// the appropriate value for this field. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/hcxActivationKeys/\[^/\]+$`. |
| /// |
| /// [options_requestedPolicyVersion] - Optional. The maximum policy version |
| /// that will be used to format the policy. Valid values are 0, 1, and 3. |
| /// Requests specifying an invalid value will be rejected. Requests for |
| /// policies with any conditional role bindings must specify version 3. |
| /// Policies with no conditional role bindings may specify any valid value or |
| /// leave the field unset. The policy in the response might use the policy |
| /// version that you specified, or it might use a lower policy version. For |
| /// example, if you specify version 3, but the policy has no conditional role |
| /// bindings, the response uses version 1. To learn which resources support |
| /// conditions in their IAM policies, see the |
| /// [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Policy]. |
| /// |
| /// 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<Policy> getIamPolicy( |
| core.String resource, { |
| core.int? options_requestedPolicyVersion, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'options.requestedPolicyVersion': ?options_requestedPolicyVersion == null |
| ? null |
| : ['${options_requestedPolicyVersion}'], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$resource') + ':getIamPolicy'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return Policy.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Lists `HcxActivationKey` resources in a given private cloud. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the private cloud to be queried |
| /// for HCX activation keys. Resource names are schemeless URIs that follow |
| /// the conventions in https://cloud.google.com/apis/design/resource_names. |
| /// For example: |
| /// `projects/my-project/locations/us-central1/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [pageSize] - The maximum number of HCX activation keys to return in one |
| /// page. The service may return fewer than this value. The maximum value is |
| /// coerced to 1000. The default value of this field is 500. |
| /// |
| /// [pageToken] - A page token, received from a previous |
| /// `ListHcxActivationKeys` call. Provide this to retrieve the subsequent |
| /// page. When paginating, all other parameters provided to |
| /// `ListHcxActivationKeys` must match the call that provided the page token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListHcxActivationKeysResponse]. |
| /// |
| /// 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<ListHcxActivationKeysResponse> list( |
| core.String parent, { |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/hcxActivationKeys'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListHcxActivationKeysResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Sets the access control policy on the specified resource. |
| /// |
| /// Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, |
| /// and `PERMISSION_DENIED` errors. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [resource] - REQUIRED: The resource for which the policy is being |
| /// specified. See |
| /// [Resource names](https://cloud.google.com/apis/design/resource_names) for |
| /// the appropriate value for this field. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/hcxActivationKeys/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Policy]. |
| /// |
| /// 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<Policy> setIamPolicy( |
| SetIamPolicyRequest request, |
| core.String resource, { |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$resource') + ':setIamPolicy'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Policy.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Returns permissions that a caller has on the specified resource. |
| /// |
| /// If the resource does not exist, this will return an empty set of |
| /// permissions, not a `NOT_FOUND` error. Note: This operation is designed to |
| /// be used for building permission-aware UIs and command-line tools, not for |
| /// authorization checking. This operation may "fail open" without warning. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [resource] - REQUIRED: The resource for which the policy detail is being |
| /// requested. See |
| /// [Resource names](https://cloud.google.com/apis/design/resource_names) for |
| /// the appropriate value for this field. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/hcxActivationKeys/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [TestIamPermissionsResponse]. |
| /// |
| /// 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<TestIamPermissionsResponse> testIamPermissions( |
| TestIamPermissionsRequest request, |
| core.String resource, { |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = |
| 'v1/' + core.Uri.encodeFull('$resource') + ':testIamPermissions'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return TestIamPermissionsResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| } |
| |
| class ProjectsLocationsPrivateCloudsLoggingServersResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsPrivateCloudsLoggingServersResource( |
| commons.ApiRequester client, |
| ) : _requester = client; |
| |
| /// Create a new logging server for a given private cloud. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the private cloud to create a |
| /// new Logging Server in. Resource names are schemeless URIs that follow the |
| /// conventions in https://cloud.google.com/apis/design/resource_names. For |
| /// example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [loggingServerId] - Required. The user-provided identifier of the |
| /// `LoggingServer` to be created. This identifier must be unique among |
| /// `LoggingServer` resources within the parent and becomes the final token in |
| /// the name URI. The identifier must meet the following requirements: * Only |
| /// contains 1-63 alphanumeric characters and hyphens * Begins with an |
| /// alphabetical character * Ends with a non-hyphen character * Not formatted |
| /// as a UUID * Complies with |
| /// [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5) |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> create( |
| LoggingServer request, |
| core.String parent, { |
| core.String? loggingServerId, |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'loggingServerId': ?loggingServerId == null ? null : [loggingServerId], |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/loggingServers'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Deletes a single logging server. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the logging server to delete. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/loggingServers/my-logging-server` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/loggingServers/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> delete( |
| core.String name, { |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'DELETE', |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Gets details of a logging server. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the Logging Server to retrieve. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/loggingServers/my-logging-server` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/loggingServers/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [LoggingServer]. |
| /// |
| /// 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<LoggingServer> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return LoggingServer.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Lists logging servers configured for a given private cloud. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the private cloud to be queried |
| /// for logging servers. Resource names are schemeless URIs that follow the |
| /// conventions in https://cloud.google.com/apis/design/resource_names. For |
| /// example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [filter] - A filter expression that matches resources returned in the |
| /// response. The expression must specify the field name, a comparison |
| /// operator, and the value that you want to use for filtering. The value must |
| /// be a string, a number, or a boolean. The comparison operator must be `=`, |
| /// `!=`, `>`, or `<`. For example, if you are filtering a list of logging |
| /// servers, you can exclude the ones named `example-server` by specifying |
| /// `name != "example-server"`. To filter on multiple expressions, provide |
| /// each separate expression within parentheses. For example: ``` (name = |
| /// "example-server") (createTime > "2021-04-12T08:15:10.40Z") ``` By default, |
| /// each expression is an `AND` expression. However, you can include `AND` and |
| /// `OR` expressions explicitly. For example: ``` (name = "example-server-1") |
| /// AND (createTime > "2021-04-12T08:15:10.40Z") OR (name = |
| /// "example-server-2") ``` |
| /// |
| /// [orderBy] - Sorts list results by a certain order. By default, returned |
| /// results are ordered by `name` in ascending order. You can also sort |
| /// results in descending order based on the `name` value using `orderBy="name |
| /// desc"`. Currently, only ordering by `name` is supported. |
| /// |
| /// [pageSize] - The maximum number of logging servers to return in one page. |
| /// The service may return fewer than this value. The maximum value is coerced |
| /// to 1000. The default value of this field is 500. |
| /// |
| /// [pageToken] - A page token, received from a previous |
| /// `ListLoggingServersRequest` call. Provide this to retrieve the subsequent |
| /// page. When paginating, all other parameters provided to |
| /// `ListLoggingServersRequest` must match the call that provided the page |
| /// token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListLoggingServersResponse]. |
| /// |
| /// 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<ListLoggingServersResponse> list( |
| core.String parent, { |
| core.String? filter, |
| core.String? orderBy, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'filter': ?filter == null ? null : [filter], |
| 'orderBy': ?orderBy == null ? null : [orderBy], |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/loggingServers'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListLoggingServersResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Updates the parameters of a single logging server. |
| /// |
| /// Only fields specified in `update_mask` are applied. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Output only. The resource name of this logging server. Resource |
| /// names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/loggingServers/my-logging-server` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/loggingServers/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [updateMask] - Required. Field mask is used to specify the fields to be |
| /// overwritten in the `LoggingServer` resource by the update. The fields |
| /// specified in the `update_mask` are relative to the resource, not the full |
| /// request. A field will be overwritten if it is in the mask. If the user |
| /// does not provide a mask then all fields will be overwritten. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> patch( |
| LoggingServer request, |
| core.String name, { |
| core.String? requestId, |
| core.String? updateMask, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'updateMask': ?updateMask == null ? null : [updateMask], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'PATCH', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsResource( |
| commons.ApiRequester client, |
| ) : _requester = client; |
| |
| /// Creates a new `ManagementDnsZoneBinding` resource in a private cloud. |
| /// |
| /// This RPC creates the DNS binding and the resource that represents the DNS |
| /// binding of the consumer VPC network to the management DNS zone. A |
| /// management DNS zone is the Cloud DNS cross-project binding zone that |
| /// VMware Engine creates for each private cloud. It contains FQDNs and |
| /// corresponding IP addresses for the private cloud's ESXi hosts and |
| /// management VM appliances like vCenter and NSX Manager. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the private cloud to create a |
| /// new management DNS zone binding for. Resource names are schemeless URIs |
| /// that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [managementDnsZoneBindingId] - Required. The user-provided identifier of |
| /// the `ManagementDnsZoneBinding` resource to be created. This identifier |
| /// must be unique among `ManagementDnsZoneBinding` resources within the |
| /// parent and becomes the final token in the name URI. The identifier must |
| /// meet the following requirements: * Only contains 1-63 alphanumeric |
| /// characters and hyphens * Begins with an alphabetical character * Ends with |
| /// a non-hyphen character * Not formatted as a UUID * Complies with |
| /// [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5) |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if the |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> create( |
| ManagementDnsZoneBinding request, |
| core.String parent, { |
| core.String? managementDnsZoneBindingId, |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'managementDnsZoneBindingId': ?managementDnsZoneBindingId == null |
| ? null |
| : [managementDnsZoneBindingId], |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = |
| 'v1/' + core.Uri.encodeFull('$parent') + '/managementDnsZoneBindings'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Deletes a `ManagementDnsZoneBinding` resource. |
| /// |
| /// When a management DNS zone binding is deleted, the corresponding consumer |
| /// VPC network is no longer bound to the management DNS zone. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the management DNS zone binding to |
| /// delete. Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/managementDnsZoneBindings/my-management-dns-zone-binding` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/managementDnsZoneBindings/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if the |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> delete( |
| core.String name, { |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'DELETE', |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Retrieves a 'ManagementDnsZoneBinding' resource by its resource name. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the management DNS zone binding to |
| /// retrieve. Resource names are schemeless URIs that follow the conventions |
| /// in https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/managementDnsZoneBindings/my-management-dns-zone-binding` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/managementDnsZoneBindings/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ManagementDnsZoneBinding]. |
| /// |
| /// 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<ManagementDnsZoneBinding> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ManagementDnsZoneBinding.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Lists Consumer VPCs bound to Management DNS Zone of a given private cloud. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the private cloud to be queried |
| /// for management DNS zone bindings. Resource names are schemeless URIs that |
| /// follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [filter] - A filter expression that matches resources returned in the |
| /// response. The expression must specify the field name, a comparison |
| /// operator, and the value that you want to use for filtering. The value must |
| /// be a string, a number, or a boolean. The comparison operator must be `=`, |
| /// `!=`, `>`, or `<`. For example, if you are filtering a list of Management |
| /// DNS Zone Bindings, you can exclude the ones named |
| /// `example-management-dns-zone-binding` by specifying `name != |
| /// "example-management-dns-zone-binding"`. To filter on multiple expressions, |
| /// provide each separate expression within parentheses. For example: ``` |
| /// (name = "example-management-dns-zone-binding") (createTime > |
| /// "2021-04-12T08:15:10.40Z") ``` By default, each expression is an `AND` |
| /// expression. However, you can include `AND` and `OR` expressions |
| /// explicitly. For example: ``` (name = |
| /// "example-management-dns-zone-binding-1") AND (createTime > |
| /// "2021-04-12T08:15:10.40Z") OR (name = |
| /// "example-management-dns-zone-binding-2") ``` |
| /// |
| /// [orderBy] - Sorts list results by a certain order. By default, returned |
| /// results are ordered by `name` in ascending order. You can also sort |
| /// results in descending order based on the `name` value using `orderBy="name |
| /// desc"`. Currently, only ordering by `name` is supported. |
| /// |
| /// [pageSize] - The maximum number of management DNS zone bindings to return |
| /// in one page. The service may return fewer than this value. The maximum |
| /// value is coerced to 1000. The default value of this field is 500. |
| /// |
| /// [pageToken] - A page token, received from a previous |
| /// `ListManagementDnsZoneBindings` call. Provide this to retrieve the |
| /// subsequent page. When paginating, all other parameters provided to |
| /// `ListManagementDnsZoneBindings` must match the call that provided the page |
| /// token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListManagementDnsZoneBindingsResponse]. |
| /// |
| /// 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<ListManagementDnsZoneBindingsResponse> list( |
| core.String parent, { |
| core.String? filter, |
| core.String? orderBy, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'filter': ?filter == null ? null : [filter], |
| 'orderBy': ?orderBy == null ? null : [orderBy], |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = |
| 'v1/' + core.Uri.encodeFull('$parent') + '/managementDnsZoneBindings'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListManagementDnsZoneBindingsResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Updates a `ManagementDnsZoneBinding` resource. |
| /// |
| /// Only fields specified in `update_mask` are applied. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Output only. The resource name of this binding. Resource names |
| /// are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/managementDnsZoneBindings/my-management-dns-zone-binding` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/managementDnsZoneBindings/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if the |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [updateMask] - Required. Field mask is used to specify the fields to be |
| /// overwritten in the `ManagementDnsZoneBinding` resource by the update. The |
| /// fields specified in the `update_mask` are relative to the resource, not |
| /// the full request. A field will be overwritten if it is in the mask. If the |
| /// user does not provide a mask then all fields will be overwritten. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> patch( |
| ManagementDnsZoneBinding request, |
| core.String name, { |
| core.String? requestId, |
| core.String? updateMask, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'updateMask': ?updateMask == null ? null : [updateMask], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'PATCH', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Retries to create a `ManagementDnsZoneBinding` resource that is in failed |
| /// state. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the management DNS zone binding to |
| /// repair. Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/managementDnsZoneBindings/my-management-dns-zone-binding` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/managementDnsZoneBindings/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> repair( |
| RepairManagementDnsZoneBindingRequest request, |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name') + ':repair'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsPrivateCloudsSubnetsResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsPrivateCloudsSubnetsResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Gets details of a single subnet. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the subnet to retrieve. Resource |
| /// names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/subnets/my-subnet` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/subnets/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Subnet]. |
| /// |
| /// 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<Subnet> get(core.String name, {core.String? $fields}) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return Subnet.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Lists subnets in a given private cloud. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the private cloud to be queried |
| /// for subnets. Resource names are schemeless URIs that follow the |
| /// conventions in https://cloud.google.com/apis/design/resource_names. For |
| /// example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [pageSize] - The maximum number of subnets to return in one page. The |
| /// service may return fewer than this value. The maximum value is coerced to |
| /// 1000. The default value of this field is 500. |
| /// |
| /// [pageToken] - A page token, received from a previous `ListSubnetsRequest` |
| /// call. Provide this to retrieve the subsequent page. When paginating, all |
| /// other parameters provided to `ListSubnetsRequest` must match the call that |
| /// provided the page token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListSubnetsResponse]. |
| /// |
| /// 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<ListSubnetsResponse> list( |
| core.String parent, { |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/subnets'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListSubnetsResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Updates the parameters of a single subnet. |
| /// |
| /// Only fields specified in `update_mask` are applied. *Note*: This API is |
| /// synchronous and always returns a successful `google.longrunning.Operation` |
| /// (LRO). The returned LRO will only have `done` and `response` fields. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Output only. Identifier. The resource name of this subnet. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/subnets/my-subnet` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/subnets/\[^/\]+$`. |
| /// |
| /// [updateMask] - Required. Field mask is used to specify the fields to be |
| /// overwritten in the `Subnet` resource by the update. The fields specified |
| /// in the `update_mask` are relative to the resource, not the full request. A |
| /// field will be overwritten if it is in the mask. If the user does not |
| /// provide a mask then all fields will be overwritten. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> patch( |
| Subnet request, |
| core.String name, { |
| core.String? updateMask, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'updateMask': ?updateMask == null ? null : [updateMask], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'PATCH', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsPrivateCloudsUpgradesResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsPrivateCloudsUpgradesResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Retrieves a private cloud `Upgrade` resource by its resource name. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The name of the `Upgrade` resource to be retrieved. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-west1-a/privateClouds/my-cloud/upgrades/my-upgrade` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/upgrades/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Upgrade]. |
| /// |
| /// 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<Upgrade> get(core.String name, {core.String? $fields}) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return Upgrade.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Lists past, ongoing and upcoming `Upgrades` for the given private cloud. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. Query a list of `Upgrades` for the given private |
| /// cloud resource name. Resource names are schemeless URIs that follow the |
| /// conventions in https://cloud.google.com/apis/design/resource_names. For |
| /// example: `projects/my-project/locations/us-west1-a/privateClouds/my-cloud` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+$`. |
| /// |
| /// [filter] - A filter expression that matches resources returned in the |
| /// response. The expression must specify the field name, a comparison |
| /// operator, and the value that you want to use for filtering. The value must |
| /// be a string, a number, or a boolean. The comparison operator must be `=`, |
| /// `!=`, `>`, or `<`. For example, if you are filtering a list of upgrades, |
| /// you can exclude the ones named `example-upgrade1` by specifying `name != |
| /// "example-upgrade1"`. You can also filter nested fields. To filter on |
| /// multiple expressions, provide each separate expression within parentheses. |
| /// For example: ``` (name = "example-upgrade") (createTime > |
| /// "2021-04-12T08:15:10.40Z") ``` By default, each expression is an `AND` |
| /// expression. However, you can include `AND` and `OR` expressions |
| /// explicitly. For example: ``` (name = "upgrade-1") AND (createTime > |
| /// "2021-04-12T08:15:10.40Z") OR (name = "upgrade-2") ``` |
| /// |
| /// [orderBy] - Sorts list results by a certain order. By default, returned |
| /// results are ordered by `name` in ascending order. You can also sort |
| /// results in descending order based on the `name` value using `orderBy="name |
| /// desc"`. Currently, only ordering by `name` is supported. |
| /// |
| /// [pageSize] - The maximum number of `Upgrades` to return in one page. The |
| /// service may return fewer resources than this value. The maximum value is |
| /// coerced to 1000. The default value of this field is 500. |
| /// |
| /// [pageToken] - A page token, received from a previous `ListUpgrades` call. |
| /// Provide this to retrieve the subsequent page. When paginating, all other |
| /// parameters provided to `ListUpgrades` must match the call that provided |
| /// the page token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListUpgradesResponse]. |
| /// |
| /// 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<ListUpgradesResponse> list( |
| core.String parent, { |
| core.String? filter, |
| core.String? orderBy, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'filter': ?filter == null ? null : [filter], |
| 'orderBy': ?orderBy == null ? null : [orderBy], |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/upgrades'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListUpgradesResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Update the private cloud `Upgrade` resource. |
| /// |
| /// Only `schedule` field can updated. The schedule can only be updated when |
| /// the upgrade has not started and schedule edit window is open. Only fields |
| /// specified in `update_mask` are considered. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Output only. Identifier. The resource name of the private cloud |
| /// `Upgrade`. Resource names are schemeless URIs that follow the conventions |
| /// in https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-west1-a/privateClouds/my-cloud/upgrades/my-upgrade` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateClouds/\[^/\]+/upgrades/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [updateMask] - Required. Field mask is used to specify the fields to be |
| /// overwritten in the `Upgrade` resource by the update. The fields specified |
| /// in the `update_mask` are relative to the resource, not the full request. A |
| /// field will be overwritten if it is in the mask. If the user does not |
| /// provide a mask then all fields will be overwritten. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> patch( |
| Upgrade request, |
| core.String name, { |
| core.String? requestId, |
| core.String? updateMask, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'updateMask': ?updateMask == null ? null : [updateMask], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'PATCH', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsPrivateConnectionsResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsPrivateConnectionsPeeringRoutesResource get peeringRoutes => |
| ProjectsLocationsPrivateConnectionsPeeringRoutesResource(_requester); |
| |
| ProjectsLocationsPrivateConnectionsResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Creates a new private connection that can be used for accessing private |
| /// Clouds. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the location to create the new |
| /// private connection in. Private connection is a regional resource. Resource |
| /// names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1` |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [privateConnectionId] - Required. The user-provided identifier of the new |
| /// private connection. This identifier must be unique among private |
| /// connection resources within the parent and becomes the final token in the |
| /// name URI. The identifier must meet the following requirements: * Only |
| /// contains 1-63 alphanumeric characters and hyphens * Begins with an |
| /// alphabetical character * Ends with a non-hyphen character * Not formatted |
| /// as a UUID * Complies with |
| /// [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5) |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> create( |
| PrivateConnection request, |
| core.String parent, { |
| core.String? privateConnectionId, |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'privateConnectionId': ?privateConnectionId == null |
| ? null |
| : [privateConnectionId], |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/privateConnections'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Deletes a `PrivateConnection` resource. |
| /// |
| /// When a private connection is deleted for a VMware Engine network, the |
| /// connected network becomes inaccessible to that VMware Engine network. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the private connection to be |
| /// deleted. Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/privateConnections/my-connection` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateConnections/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> delete( |
| core.String name, { |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'DELETE', |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Retrieves a `PrivateConnection` resource by its resource name. |
| /// |
| /// The resource contains details of the private connection, such as connected |
| /// network, routing mode and state. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the private connection to |
| /// retrieve. Resource names are schemeless URIs that follow the conventions |
| /// in https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/privateConnections/my-connection` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateConnections/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [PrivateConnection]. |
| /// |
| /// 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<PrivateConnection> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return PrivateConnection.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Lists `PrivateConnection` resources in a given project and location. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the location to query for |
| /// private connections. Resource names are schemeless URIs that follow the |
| /// conventions in https://cloud.google.com/apis/design/resource_names. For |
| /// example: `projects/my-project/locations/us-central1` |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [filter] - A filter expression that matches resources returned in the |
| /// response. The expression must specify the field name, a comparison |
| /// operator, and the value that you want to use for filtering. The value must |
| /// be a string, a number, or a boolean. The comparison operator must be `=`, |
| /// `!=`, `>`, or `<`. For example, if you are filtering a list of private |
| /// connections, you can exclude the ones named `example-connection` by |
| /// specifying `name != "example-connection"`. To filter on multiple |
| /// expressions, provide each separate expression within parentheses. For |
| /// example: ``` (name = "example-connection") (createTime > |
| /// "2022-09-22T08:15:10.40Z") ``` By default, each expression is an `AND` |
| /// expression. However, you can include `AND` and `OR` expressions |
| /// explicitly. For example: ``` (name = "example-connection-1") AND |
| /// (createTime > "2021-04-12T08:15:10.40Z") OR (name = |
| /// "example-connection-2") ``` |
| /// |
| /// [orderBy] - Sorts list results by a certain order. By default, returned |
| /// results are ordered by `name` in ascending order. You can also sort |
| /// results in descending order based on the `name` value using `orderBy="name |
| /// desc"`. Currently, only ordering by `name` is supported. |
| /// |
| /// [pageSize] - The maximum number of private connections to return in one |
| /// page. The maximum value is coerced to 1000. The default value of this |
| /// field is 500. |
| /// |
| /// [pageToken] - A page token, received from a previous |
| /// `ListPrivateConnections` call. Provide this to retrieve the subsequent |
| /// page. When paginating, all other parameters provided to |
| /// `ListPrivateConnections` must match the call that provided the page token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListPrivateConnectionsResponse]. |
| /// |
| /// 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<ListPrivateConnectionsResponse> list( |
| core.String parent, { |
| core.String? filter, |
| core.String? orderBy, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'filter': ?filter == null ? null : [filter], |
| 'orderBy': ?orderBy == null ? null : [orderBy], |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/privateConnections'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListPrivateConnectionsResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Modifies a `PrivateConnection` resource. |
| /// |
| /// Only `description` and `routing_mode` fields can be updated. Only fields |
| /// specified in `updateMask` are applied. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Output only. The resource name of the private connection. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/privateConnections/my-connection` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateConnections/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [updateMask] - Required. Field mask is used to specify the fields to be |
| /// overwritten in the `PrivateConnection` resource by the update. The fields |
| /// specified in the `update_mask` are relative to the resource, not the full |
| /// request. A field will be overwritten if it is in the mask. If the user |
| /// does not provide a mask then all fields will be overwritten. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> patch( |
| PrivateConnection request, |
| core.String name, { |
| core.String? requestId, |
| core.String? updateMask, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'updateMask': ?updateMask == null ? null : [updateMask], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'PATCH', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsPrivateConnectionsPeeringRoutesResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsPrivateConnectionsPeeringRoutesResource( |
| commons.ApiRequester client, |
| ) : _requester = client; |
| |
| /// Lists the private connection routes exchanged over a peering connection. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the private connection to |
| /// retrieve peering routes from. Resource names are schemeless URIs that |
| /// follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-west1/privateConnections/my-connection` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/privateConnections/\[^/\]+$`. |
| /// |
| /// [pageSize] - The maximum number of peering routes to return in one page. |
| /// The service may return fewer than this value. The maximum value is coerced |
| /// to 1000. The default value of this field is 500. |
| /// |
| /// [pageToken] - A page token, received from a previous |
| /// `ListPrivateConnectionPeeringRoutes` call. Provide this to retrieve the |
| /// subsequent page. When paginating, all other parameters provided to |
| /// `ListPrivateConnectionPeeringRoutes` must match the call that provided the |
| /// page token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListPrivateConnectionPeeringRoutesResponse]. |
| /// |
| /// 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<ListPrivateConnectionPeeringRoutesResponse> list( |
| core.String parent, { |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/peeringRoutes'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListPrivateConnectionPeeringRoutesResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| } |
| |
| class ProjectsLocationsVmwareEngineNetworksResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsVmwareEngineNetworksResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Creates a new VMware Engine network that can be used by a private cloud. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the location to create the new |
| /// VMware Engine network in. A VMware Engine network of type `LEGACY` is a |
| /// regional resource, and a VMware Engine network of type `STANDARD` is a |
| /// global resource. Resource names are schemeless URIs that follow the |
| /// conventions in https://cloud.google.com/apis/design/resource_names. For |
| /// example: `projects/my-project/locations/global` |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [vmwareEngineNetworkId] - Required. The user-provided identifier of the |
| /// new VMware Engine network. This identifier must be unique among VMware |
| /// Engine network resources within the parent and becomes the final token in |
| /// the name URI. The identifier must meet the following requirements: * For |
| /// networks of type LEGACY, adheres to the format: `{region-id}-default`. |
| /// Replace `{region-id}` with the region where you want to create the VMware |
| /// Engine network. For example, "us-central1-default". * Only contains 1-63 |
| /// alphanumeric characters and hyphens * Begins with an alphabetical |
| /// character * Ends with a non-hyphen character * Not formatted as a UUID * |
| /// Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) |
| /// (section 3.5) |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> create( |
| VmwareEngineNetwork request, |
| core.String parent, { |
| core.String? requestId, |
| core.String? vmwareEngineNetworkId, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'vmwareEngineNetworkId': ?vmwareEngineNetworkId == null |
| ? null |
| : [vmwareEngineNetworkId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = |
| 'v1/' + core.Uri.encodeFull('$parent') + '/vmwareEngineNetworks'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'POST', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Deletes a `VmwareEngineNetwork` resource. |
| /// |
| /// You can only delete a VMware Engine network after all resources that refer |
| /// to it are deleted. For example, a private cloud, a network peering, and a |
| /// network policy can all refer to the same VMware Engine network. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the VMware Engine network to be |
| /// deleted. Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/global/vmwareEngineNetworks/my-network` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/vmwareEngineNetworks/\[^/\]+$`. |
| /// |
| /// [etag] - Optional. Checksum used to ensure that the user-provided value is |
| /// up to date before the server processes the request. The server compares |
| /// provided checksum with the current checksum of the resource. If the |
| /// user-provided value is out of date, this request returns an `ABORTED` |
| /// error. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> delete( |
| core.String name, { |
| core.String? etag, |
| core.String? requestId, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'etag': ?etag == null ? null : [etag], |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'DELETE', |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Retrieves a `VmwareEngineNetwork` resource by its resource name. |
| /// |
| /// The resource contains details of the VMware Engine network, such as its |
| /// VMware Engine network type, peered networks in a service project, and |
| /// state (for example, `CREATING`, `ACTIVE`, `DELETING`). |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Required. The resource name of the VMware Engine network to |
| /// retrieve. Resource names are schemeless URIs that follow the conventions |
| /// in https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/global/vmwareEngineNetworks/my-network` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/vmwareEngineNetworks/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [VmwareEngineNetwork]. |
| /// |
| /// 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<VmwareEngineNetwork> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return VmwareEngineNetwork.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Lists `VmwareEngineNetwork` resources in a given project and location. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Required. The resource name of the location to query for VMware |
| /// Engine networks. Resource names are schemeless URIs that follow the |
| /// conventions in https://cloud.google.com/apis/design/resource_names. For |
| /// example: `projects/my-project/locations/global` |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [filter] - A filter expression that matches resources returned in the |
| /// response. The expression must specify the field name, a comparison |
| /// operator, and the value that you want to use for filtering. The value must |
| /// be a string, a number, or a boolean. The comparison operator must be `=`, |
| /// `!=`, `>`, or `<`. For example, if you are filtering a list of network |
| /// peerings, you can exclude the ones named `example-network` by specifying |
| /// `name != "example-network"`. To filter on multiple expressions, provide |
| /// each separate expression within parentheses. For example: ``` (name = |
| /// "example-network") (createTime > "2021-04-12T08:15:10.40Z") ``` By |
| /// default, each expression is an `AND` expression. However, you can include |
| /// `AND` and `OR` expressions explicitly. For example: ``` (name = |
| /// "example-network-1") AND (createTime > "2021-04-12T08:15:10.40Z") OR (name |
| /// = "example-network-2") ``` |
| /// |
| /// [orderBy] - Sorts list results by a certain order. By default, returned |
| /// results are ordered by `name` in ascending order. You can also sort |
| /// results in descending order based on the `name` value using `orderBy="name |
| /// desc"`. Currently, only ordering by `name` is supported. |
| /// |
| /// [pageSize] - The maximum number of results to return in one page. The |
| /// maximum value is coerced to 1000. The default value of this field is 500. |
| /// |
| /// [pageToken] - A page token, received from a previous |
| /// `ListVmwareEngineNetworks` call. Provide this to retrieve the subsequent |
| /// page. When paginating, all other parameters provided to |
| /// `ListVmwareEngineNetworks` must match the call that provided the page |
| /// token. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListVmwareEngineNetworksResponse]. |
| /// |
| /// 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<ListVmwareEngineNetworksResponse> list( |
| core.String parent, { |
| core.String? filter, |
| core.String? orderBy, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'filter': ?filter == null ? null : [filter], |
| 'orderBy': ?orderBy == null ? null : [orderBy], |
| 'pageSize': ?pageSize == null ? null : ['${pageSize}'], |
| 'pageToken': ?pageToken == null ? null : [pageToken], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = |
| 'v1/' + core.Uri.encodeFull('$parent') + '/vmwareEngineNetworks'; |
| |
| final response_ = await _requester.request( |
| url_, |
| 'GET', |
| queryParams: queryParams_, |
| ); |
| return ListVmwareEngineNetworksResponse.fromJson( |
| response_ as core.Map<core.String, core.dynamic>, |
| ); |
| } |
| |
| /// Modifies a VMware Engine network resource. |
| /// |
| /// Only the following fields can be updated: `description`. Only fields |
| /// specified in `updateMask` are applied. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - Output only. Identifier. The resource name of the VMware Engine |
| /// network. Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/global/vmwareEngineNetworks/my-network` |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/vmwareEngineNetworks/\[^/\]+$`. |
| /// |
| /// [requestId] - Optional. A request ID to identify requests. Specify a |
| /// unique request ID so that if you must retry your request, the server will |
| /// know to ignore the request if it has already been completed. The server |
| /// guarantees that a request doesn't result in creation of duplicate |
| /// commitments for at least 60 minutes. For example, consider a situation |
| /// where you make an initial request and the request times out. If you make |
| /// the request again with the same request ID, the server can check if |
| /// original operation with the same request ID was received, and if so, will |
| /// ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// [updateMask] - Required. Field mask is used to specify the fields to be |
| /// overwritten in the VMware Engine network resource by the update. The |
| /// fields specified in the `update_mask` are relative to the resource, not |
| /// the full request. A field will be overwritten if it is in the mask. If the |
| /// user does not provide a mask then all fields will be overwritten. Only the |
| /// following fields can be updated: `description`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// 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> patch( |
| VmwareEngineNetwork request, |
| core.String name, { |
| core.String? requestId, |
| core.String? updateMask, |
| core.String? $fields, |
| }) async { |
| final body_ = convert.json.encode(request); |
| final queryParams_ = <core.String, core.List<core.String>>{ |
| 'requestId': ?requestId == null ? null : [requestId], |
| 'updateMask': ?updateMask == null ? null : [updateMask], |
| 'fields': ?$fields == null ? null : [$fields], |
| }; |
| |
| final url_ = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final response_ = await _requester.request( |
| url_, |
| 'PATCH', |
| body: body_, |
| queryParams: queryParams_, |
| ); |
| return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| /// Request message for VmwareEngine.AcceleratePrivateCloudDeletion |
| class AcceleratePrivateCloudDeletionRequest { |
| /// Checksum used to ensure that the user-provided value is up to date before |
| /// the server processes the request. |
| /// |
| /// The server compares provided checksum with the current checksum of the |
| /// resource. If the user-provided value is out of date, this request returns |
| /// an `ABORTED` error. |
| /// |
| /// Optional. |
| core.String? etag; |
| |
| /// The request ID must be a valid UUID with the exception that zero UUID is |
| /// not supported (00000000-0000-0000-0000-000000000000). |
| /// |
| /// Optional. |
| core.String? requestId; |
| |
| AcceleratePrivateCloudDeletionRequest({this.etag, this.requestId}); |
| |
| AcceleratePrivateCloudDeletionRequest.fromJson(core.Map json_) |
| : this( |
| etag: json_['etag'] as core.String?, |
| requestId: json_['requestId'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final etag = this.etag; |
| final requestId = this.requestId; |
| return {'etag': ?etag, 'requestId': ?requestId}; |
| } |
| } |
| |
| /// Announcement for the resources of Vmware Engine. |
| class Announcement { |
| /// Activity type of the announcement There can be only one active |
| /// announcement for a given activity type and target resource. |
| /// |
| /// Optional. |
| core.String? activityType; |
| |
| /// A Cluster resource name. |
| core.String? cluster; |
| |
| /// Code of the announcement. |
| /// |
| /// Indicates the presence of a VMware Engine related announcement and |
| /// corresponds to a related message in the `description` field. |
| /// |
| /// Required. |
| core.String? code; |
| |
| /// Creation time of this resource. |
| /// |
| /// It also serves as start time of notification. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// Description of the announcement. |
| /// |
| /// Output only. |
| core.String? description; |
| |
| /// Additional structured details about this announcement. |
| /// |
| /// Output only. |
| core.Map<core.String, core.String>? metadata; |
| |
| /// The resource name of the announcement. |
| /// |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-west1-a/announcements/my-announcement-id` |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// A Private Cloud resource name. |
| core.String? privateCloud; |
| |
| /// State of the resource. |
| /// |
| /// New values may be added to this enum when appropriate. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "STATE_UNSPECIFIED" : The default value. This value should never be |
| /// used. |
| /// - "ACTIVE" : Active announcement which should be visible to user. |
| /// - "INACTIVE" : Inactive announcement which should not be visible to user. |
| /// - "DELETING" : Announcement which is being deleted |
| /// - "CREATING" : Announcement which being created |
| core.String? state; |
| |
| /// Target Resource Type defines the type of the target for the announcement |
| /// |
| /// Output only. |
| core.String? targetResourceType; |
| |
| /// Last update time of this resource. |
| /// |
| /// Output only. |
| core.String? updateTime; |
| |
| Announcement({ |
| this.activityType, |
| this.cluster, |
| this.code, |
| this.createTime, |
| this.description, |
| this.metadata, |
| this.name, |
| this.privateCloud, |
| this.state, |
| this.targetResourceType, |
| this.updateTime, |
| }); |
| |
| Announcement.fromJson(core.Map json_) |
| : this( |
| activityType: json_['activityType'] as core.String?, |
| cluster: json_['cluster'] as core.String?, |
| code: json_['code'] as core.String?, |
| createTime: json_['createTime'] as core.String?, |
| description: json_['description'] as core.String?, |
| metadata: (json_['metadata'] as core.Map<core.String, core.dynamic>?) |
| ?.map((key, value) => core.MapEntry(key, value as core.String)), |
| name: json_['name'] as core.String?, |
| privateCloud: json_['privateCloud'] as core.String?, |
| state: json_['state'] as core.String?, |
| targetResourceType: json_['targetResourceType'] as core.String?, |
| updateTime: json_['updateTime'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final activityType = this.activityType; |
| final cluster = this.cluster; |
| final code = this.code; |
| final createTime = this.createTime; |
| final description = this.description; |
| final metadata = this.metadata; |
| final name = this.name; |
| final privateCloud = this.privateCloud; |
| final state = this.state; |
| final targetResourceType = this.targetResourceType; |
| final updateTime = this.updateTime; |
| return { |
| 'activityType': ?activityType, |
| 'cluster': ?cluster, |
| 'code': ?code, |
| 'createTime': ?createTime, |
| 'description': ?description, |
| 'metadata': ?metadata, |
| 'name': ?name, |
| 'privateCloud': ?privateCloud, |
| 'state': ?state, |
| 'targetResourceType': ?targetResourceType, |
| 'updateTime': ?updateTime, |
| }; |
| } |
| } |
| |
| /// Specifies the audit configuration for a service. |
| /// |
| /// The configuration determines which permission types are logged, and what |
| /// identities, if any, are exempted from logging. An AuditConfig must have one |
| /// or more AuditLogConfigs. If there are AuditConfigs for both `allServices` |
| /// and a specific service, the union of the two AuditConfigs is used for that |
| /// service: the log_types specified in each AuditConfig are enabled, and the |
| /// exempted_members in each AuditLogConfig are exempted. Example Policy with |
| /// multiple AuditConfigs: { "audit_configs": \[ { "service": "allServices", |
| /// "audit_log_configs": \[ { "log_type": "DATA_READ", "exempted_members": \[ |
| /// "user:jose@example.com" \] }, { "log_type": "DATA_WRITE" }, { "log_type": |
| /// "ADMIN_READ" } \] }, { "service": "sampleservice.googleapis.com", |
| /// "audit_log_configs": \[ { "log_type": "DATA_READ" }, { "log_type": |
| /// "DATA_WRITE", "exempted_members": \[ "user:aliya@example.com" \] } \] } \] } |
| /// For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ |
| /// logging. It also exempts `jose@example.com` from DATA_READ logging, and |
| /// `aliya@example.com` from DATA_WRITE logging. |
| class AuditConfig { |
| /// The configuration for logging of each type of permission. |
| core.List<AuditLogConfig>? auditLogConfigs; |
| |
| /// Specifies a service that will be enabled for audit logging. |
| /// |
| /// For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. |
| /// `allServices` is a special value that covers all services. |
| core.String? service; |
| |
| AuditConfig({this.auditLogConfigs, this.service}); |
| |
| AuditConfig.fromJson(core.Map json_) |
| : this( |
| auditLogConfigs: (json_['auditLogConfigs'] as core.List?) |
| ?.map( |
| (value) => AuditLogConfig.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| service: json_['service'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final auditLogConfigs = this.auditLogConfigs; |
| final service = this.service; |
| return {'auditLogConfigs': ?auditLogConfigs, 'service': ?service}; |
| } |
| } |
| |
| /// Provides the configuration for logging a type of permissions. |
| /// |
| /// Example: { "audit_log_configs": \[ { "log_type": "DATA_READ", |
| /// "exempted_members": \[ "user:jose@example.com" \] }, { "log_type": |
| /// "DATA_WRITE" } \] } This enables 'DATA_READ' and 'DATA_WRITE' logging, while |
| /// exempting jose@example.com from DATA_READ logging. |
| typedef AuditLogConfig = $AuditLogConfig; |
| |
| /// Autoscaling policy describes the behavior of the autoscaling with respect to |
| /// the resource utilization. |
| /// |
| /// The scale-out operation is initiated if the utilization exceeds ANY of the |
| /// respective thresholds. The scale-in operation is initiated if the |
| /// utilization is below ALL of the respective thresholds. |
| class AutoscalingPolicy { |
| /// Utilization thresholds pertaining to amount of consumed memory. |
| /// |
| /// Optional. |
| Thresholds? consumedMemoryThresholds; |
| |
| /// Utilization thresholds pertaining to CPU utilization. |
| /// |
| /// Optional. |
| Thresholds? cpuThresholds; |
| |
| /// Utilization thresholds pertaining to amount of granted memory. |
| /// |
| /// Optional. |
| Thresholds? grantedMemoryThresholds; |
| |
| /// The canonical identifier of the node type to add or remove. |
| /// |
| /// Corresponds to the `NodeType`. |
| /// |
| /// Required. |
| core.String? nodeTypeId; |
| |
| /// Number of nodes to add to a cluster during a scale-out operation. |
| /// |
| /// Must be divisible by 2 for stretched clusters. During a scale-in operation |
| /// only one node (or 2 for stretched clusters) are removed in a single |
| /// iteration. |
| /// |
| /// Required. |
| core.int? scaleOutSize; |
| |
| /// Utilization thresholds pertaining to amount of consumed storage. |
| /// |
| /// Optional. |
| Thresholds? storageThresholds; |
| |
| AutoscalingPolicy({ |
| this.consumedMemoryThresholds, |
| this.cpuThresholds, |
| this.grantedMemoryThresholds, |
| this.nodeTypeId, |
| this.scaleOutSize, |
| this.storageThresholds, |
| }); |
| |
| AutoscalingPolicy.fromJson(core.Map json_) |
| : this( |
| consumedMemoryThresholds: json_.containsKey('consumedMemoryThresholds') |
| ? Thresholds.fromJson( |
| json_['consumedMemoryThresholds'] |
| as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| cpuThresholds: json_.containsKey('cpuThresholds') |
| ? Thresholds.fromJson( |
| json_['cpuThresholds'] as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| grantedMemoryThresholds: json_.containsKey('grantedMemoryThresholds') |
| ? Thresholds.fromJson( |
| json_['grantedMemoryThresholds'] |
| as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| nodeTypeId: json_['nodeTypeId'] as core.String?, |
| scaleOutSize: json_['scaleOutSize'] as core.int?, |
| storageThresholds: json_.containsKey('storageThresholds') |
| ? Thresholds.fromJson( |
| json_['storageThresholds'] |
| as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final consumedMemoryThresholds = this.consumedMemoryThresholds; |
| final cpuThresholds = this.cpuThresholds; |
| final grantedMemoryThresholds = this.grantedMemoryThresholds; |
| final nodeTypeId = this.nodeTypeId; |
| final scaleOutSize = this.scaleOutSize; |
| final storageThresholds = this.storageThresholds; |
| return { |
| 'consumedMemoryThresholds': ?consumedMemoryThresholds, |
| 'cpuThresholds': ?cpuThresholds, |
| 'grantedMemoryThresholds': ?grantedMemoryThresholds, |
| 'nodeTypeId': ?nodeTypeId, |
| 'scaleOutSize': ?scaleOutSize, |
| 'storageThresholds': ?storageThresholds, |
| }; |
| } |
| } |
| |
| /// Autoscaling settings define the rules used by VMware Engine to automatically |
| /// scale-out and scale-in the clusters in a private cloud. |
| class AutoscalingSettings { |
| /// The map with autoscaling policies applied to the cluster. |
| /// |
| /// The key is the identifier of the policy. It must meet the following |
| /// requirements: * Only contains 1-63 alphanumeric characters and hyphens * |
| /// Begins with an alphabetical character * Ends with a non-hyphen character * |
| /// Not formatted as a UUID * Complies with |
| /// [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5) |
| /// Currently there map must contain only one element that describes the |
| /// autoscaling policy for compute nodes. |
| /// |
| /// Required. |
| core.Map<core.String, AutoscalingPolicy>? autoscalingPolicies; |
| |
| /// The minimum duration between consecutive autoscale operations. |
| /// |
| /// It starts once addition or removal of nodes is fully completed. Defaults |
| /// to 30 minutes if not specified. Cool down period must be in whole minutes |
| /// (for example, 30, 31, 50, 180 minutes). |
| /// |
| /// Optional. |
| core.String? coolDownPeriod; |
| |
| /// Maximum number of nodes of any type in a cluster. |
| /// |
| /// If not specified the default limits apply. |
| /// |
| /// Optional. |
| core.int? maxClusterNodeCount; |
| |
| /// Minimum number of nodes of any type in a cluster. |
| /// |
| /// If not specified the default limits apply. |
| /// |
| /// Optional. |
| core.int? minClusterNodeCount; |
| |
| AutoscalingSettings({ |
| this.autoscalingPolicies, |
| this.coolDownPeriod, |
| this.maxClusterNodeCount, |
| this.minClusterNodeCount, |
| }); |
| |
| AutoscalingSettings.fromJson(core.Map json_) |
| : this( |
| autoscalingPolicies: |
| (json_['autoscalingPolicies'] |
| as core.Map<core.String, core.dynamic>?) |
| ?.map( |
| (key, value) => core.MapEntry( |
| key, |
| AutoscalingPolicy.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ), |
| ), |
| coolDownPeriod: json_['coolDownPeriod'] as core.String?, |
| maxClusterNodeCount: json_['maxClusterNodeCount'] as core.int?, |
| minClusterNodeCount: json_['minClusterNodeCount'] as core.int?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final autoscalingPolicies = this.autoscalingPolicies; |
| final coolDownPeriod = this.coolDownPeriod; |
| final maxClusterNodeCount = this.maxClusterNodeCount; |
| final minClusterNodeCount = this.minClusterNodeCount; |
| return { |
| 'autoscalingPolicies': ?autoscalingPolicies, |
| 'coolDownPeriod': ?coolDownPeriod, |
| 'maxClusterNodeCount': ?maxClusterNodeCount, |
| 'minClusterNodeCount': ?minClusterNodeCount, |
| }; |
| } |
| } |
| |
| /// Associates `members`, or principals, with a `role`. |
| class Binding { |
| /// The condition that is associated with this binding. |
| /// |
| /// If the condition evaluates to `true`, then this binding applies to the |
| /// current request. If the condition evaluates to `false`, then this binding |
| /// does not apply to the current request. However, a different role binding |
| /// might grant the same role to one or more of the principals in this |
| /// binding. To learn which resources support conditions in their IAM |
| /// policies, see the |
| /// [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). |
| Expr? condition; |
| |
| /// Specifies the principals requesting access for a Google Cloud resource. |
| /// |
| /// `members` can have the following values: * `allUsers`: A special |
| /// identifier that represents anyone who is on the internet; with or without |
| /// a Google account. * `allAuthenticatedUsers`: A special identifier that |
| /// represents anyone who is authenticated with a Google account or a service |
| /// account. Does not include identities that come from external identity |
| /// providers (IdPs) through identity federation. * `user:{emailid}`: An email |
| /// address that represents a specific Google account. For example, |
| /// `alice@example.com` . * `serviceAccount:{emailid}`: An email address that |
| /// represents a Google service account. For example, |
| /// `my-other-app@appspot.gserviceaccount.com`. * |
| /// `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An |
| /// identifier for a |
| /// [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). |
| /// For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * |
| /// `group:{emailid}`: An email address that represents a Google group. For |
| /// example, `admins@example.com`. * `domain:{domain}`: The G Suite domain |
| /// (primary) that represents all the users of that domain. For example, |
| /// `google.com` or `example.com`. * |
| /// `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: |
| /// A single identity in a workforce identity pool. * |
| /// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`: |
| /// All workforce identities in a group. * |
| /// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: |
| /// All workforce identities with a specific attribute value. * |
| /// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id} |
| /// / * `: All identities in a workforce identity pool. * |
| /// `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: |
| /// A single identity in a workload identity pool. * |
| /// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`: |
| /// A workload identity pool group. * |
| /// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: |
| /// All identities in a workload identity pool with a certain attribute. * |
| /// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id} |
| /// / * `: All identities in a workload identity pool. * |
| /// `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique |
| /// identifier) representing a user that has been recently deleted. For |
| /// example, `alice@example.com?uid=123456789012345678901`. If the user is |
| /// recovered, this value reverts to `user:{emailid}` and the recovered user |
| /// retains the role in the binding. * |
| /// `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus |
| /// unique identifier) representing a service account that has been recently |
| /// deleted. For example, |
| /// `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If |
| /// the service account is undeleted, this value reverts to |
| /// `serviceAccount:{emailid}` and the undeleted service account retains the |
| /// role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email |
| /// address (plus unique identifier) representing a Google group that has been |
| /// recently deleted. For example, |
| /// `admins@example.com?uid=123456789012345678901`. If the group is recovered, |
| /// this value reverts to `group:{emailid}` and the recovered group retains |
| /// the role in the binding. * |
| /// `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: |
| /// Deleted single identity in a workforce identity pool. For example, |
| /// `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`. |
| core.List<core.String>? members; |
| |
| /// Role that is assigned to the list of `members`, or principals. |
| /// |
| /// For example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an |
| /// overview of the IAM roles and permissions, see the |
| /// [IAM documentation](https://cloud.google.com/iam/docs/roles-overview). For |
| /// a list of the available pre-defined roles, see |
| /// [here](https://cloud.google.com/iam/docs/understanding-roles). |
| core.String? role; |
| |
| Binding({this.condition, this.members, this.role}); |
| |
| Binding.fromJson(core.Map json_) |
| : this( |
| condition: json_.containsKey('condition') |
| ? Expr.fromJson( |
| json_['condition'] as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| members: (json_['members'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| role: json_['role'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final condition = this.condition; |
| final members = this.members; |
| final role = this.role; |
| return {'condition': ?condition, 'members': ?members, 'role': ?role}; |
| } |
| } |
| |
| /// A cluster in a private cloud. |
| class Cluster { |
| /// Configuration of the autoscaling applied to this cluster. |
| /// |
| /// Optional. |
| AutoscalingSettings? autoscalingSettings; |
| |
| /// Creation time of this resource. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// Configuration of a mounted datastore. |
| /// |
| /// Output only. |
| core.List<DatastoreMountConfig>? datastoreMountConfig; |
| |
| /// True if the cluster is a management cluster; false otherwise. |
| /// |
| /// There can only be one management cluster in a private cloud and it has to |
| /// be the first one. |
| /// |
| /// Output only. |
| core.bool? management; |
| |
| /// Identifier. |
| /// |
| /// The resource name of this cluster. Resource names are schemeless URIs that |
| /// follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/my-cluster` |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// The map of cluster node types in this cluster, where the key is canonical |
| /// identifier of the node type (corresponds to the `NodeType`). |
| /// |
| /// Required. |
| core.Map<core.String, NodeTypeConfig>? nodeTypeConfigs; |
| |
| /// State of the resource. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "STATE_UNSPECIFIED" : The default value. This value should never be |
| /// used. |
| /// - "ACTIVE" : The Cluster is operational and can be used by the user. |
| /// - "CREATING" : The Cluster is being deployed. |
| /// - "UPDATING" : Adding or removing of a node to the cluster, any other |
| /// cluster specific updates. |
| /// - "DELETING" : The Cluster is being deleted. |
| /// - "REPAIRING" : The Cluster is undergoing maintenance, for example: a |
| /// failed node is getting replaced. |
| core.String? state; |
| |
| /// Configuration of a stretched cluster. |
| /// |
| /// Required for clusters that belong to a STRETCHED private cloud. |
| /// |
| /// Optional. |
| StretchedClusterConfig? stretchedClusterConfig; |
| |
| /// System-generated unique identifier for the resource. |
| /// |
| /// Output only. |
| core.String? uid; |
| |
| /// Last update time of this resource. |
| /// |
| /// Output only. |
| core.String? updateTime; |
| |
| Cluster({ |
| this.autoscalingSettings, |
| this.createTime, |
| this.datastoreMountConfig, |
| this.management, |
| this.name, |
| this.nodeTypeConfigs, |
| this.state, |
| this.stretchedClusterConfig, |
| this.uid, |
| this.updateTime, |
| }); |
| |
| Cluster.fromJson(core.Map json_) |
| : this( |
| autoscalingSettings: json_.containsKey('autoscalingSettings') |
| ? AutoscalingSettings.fromJson( |
| json_['autoscalingSettings'] |
| as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| createTime: json_['createTime'] as core.String?, |
| datastoreMountConfig: (json_['datastoreMountConfig'] as core.List?) |
| ?.map( |
| (value) => DatastoreMountConfig.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| management: json_['management'] as core.bool?, |
| name: json_['name'] as core.String?, |
| nodeTypeConfigs: |
| (json_['nodeTypeConfigs'] as core.Map<core.String, core.dynamic>?) |
| ?.map( |
| (key, value) => core.MapEntry( |
| key, |
| NodeTypeConfig.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ), |
| ), |
| state: json_['state'] as core.String?, |
| stretchedClusterConfig: json_.containsKey('stretchedClusterConfig') |
| ? StretchedClusterConfig.fromJson( |
| json_['stretchedClusterConfig'] |
| as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| uid: json_['uid'] as core.String?, |
| updateTime: json_['updateTime'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final autoscalingSettings = this.autoscalingSettings; |
| final createTime = this.createTime; |
| final datastoreMountConfig = this.datastoreMountConfig; |
| final management = this.management; |
| final name = this.name; |
| final nodeTypeConfigs = this.nodeTypeConfigs; |
| final state = this.state; |
| final stretchedClusterConfig = this.stretchedClusterConfig; |
| final uid = this.uid; |
| final updateTime = this.updateTime; |
| return { |
| 'autoscalingSettings': ?autoscalingSettings, |
| 'createTime': ?createTime, |
| 'datastoreMountConfig': ?datastoreMountConfig, |
| 'management': ?management, |
| 'name': ?name, |
| 'nodeTypeConfigs': ?nodeTypeConfigs, |
| 'state': ?state, |
| 'stretchedClusterConfig': ?stretchedClusterConfig, |
| 'uid': ?uid, |
| 'updateTime': ?updateTime, |
| }; |
| } |
| } |
| |
| /// Constraints to be applied while editing a schedule. |
| /// |
| /// These constraints ensure that `Upgrade` specific requirements are met. |
| class Constraints { |
| /// A list of intervals in which maintenance windows are not allowed. |
| /// |
| /// Any time window that overlaps with any of these intervals will be |
| /// considered invalid. |
| /// |
| /// Output only. |
| core.List<WeeklyTimeInterval>? disallowedIntervals; |
| |
| /// Minimum number of hours must be allotted for the upgrade activities for |
| /// each selected day. |
| /// |
| /// This is a minimum; the upgrade schedule can allot more hours for the given |
| /// day. |
| /// |
| /// Output only. |
| core.int? minHoursDay; |
| |
| /// The minimum number of weekly hours must be allotted for the upgrade |
| /// activities. |
| /// |
| /// This is just a minimum; the schedule can assign more weekly hours. |
| /// |
| /// Output only. |
| core.int? minHoursWeek; |
| |
| /// The user can only reschedule an upgrade that starts within this range. |
| /// |
| /// Output only. |
| Interval? rescheduleDateRange; |
| |
| Constraints({ |
| this.disallowedIntervals, |
| this.minHoursDay, |
| this.minHoursWeek, |
| this.rescheduleDateRange, |
| }); |
| |
| Constraints.fromJson(core.Map json_) |
| : this( |
| disallowedIntervals: (json_['disallowedIntervals'] as core.List?) |
| ?.map( |
| (value) => WeeklyTimeInterval.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| minHoursDay: json_['minHoursDay'] as core.int?, |
| minHoursWeek: json_['minHoursWeek'] as core.int?, |
| rescheduleDateRange: json_.containsKey('rescheduleDateRange') |
| ? Interval.fromJson( |
| json_['rescheduleDateRange'] |
| as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final disallowedIntervals = this.disallowedIntervals; |
| final minHoursDay = this.minHoursDay; |
| final minHoursWeek = this.minHoursWeek; |
| final rescheduleDateRange = this.rescheduleDateRange; |
| return { |
| 'disallowedIntervals': ?disallowedIntervals, |
| 'minHoursDay': ?minHoursDay, |
| 'minHoursWeek': ?minHoursWeek, |
| 'rescheduleDateRange': ?rescheduleDateRange, |
| }; |
| } |
| } |
| |
| /// Credentials for a private cloud. |
| class Credentials { |
| /// Initial password. |
| core.String? password; |
| |
| /// Initial username. |
| core.String? username; |
| |
| Credentials({this.password, this.username}); |
| |
| Credentials.fromJson(core.Map json_) |
| : this( |
| password: json_['password'] as core.String?, |
| username: json_['username'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final password = this.password; |
| final username = this.username; |
| return {'password': ?password, 'username': ?username}; |
| } |
| } |
| |
| /// Represents a datastore resource. |
| class Datastore { |
| /// Clusters to which the datastore is attached. |
| /// |
| /// Output only. |
| core.List<core.String>? clusters; |
| |
| /// Creation time of this resource. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// User-provided description for this datastore |
| /// |
| /// Optional. |
| core.String? description; |
| |
| /// Checksum that may be sent on update and delete requests to ensure that the |
| /// user-provided value is up to date before the server processes a request. |
| /// |
| /// The server computes checksums based on the value of other fields in the |
| /// request. |
| /// |
| /// Optional. |
| core.String? etag; |
| |
| /// Identifier. |
| /// |
| /// The resource name of this datastore. Resource names are schemeless URIs |
| /// that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/datastores/datastore` |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// Settings for the NFS datastore. |
| /// |
| /// Required. |
| NfsDatastore? nfsDatastore; |
| |
| /// The state of the Datastore. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "STATE_UNSPECIFIED" : The default value. This value should never be |
| /// used. |
| /// - "CREATING" : The NFS volume is being created. |
| /// - "ACTIVE" : The NFS volume is active. |
| /// - "UPDATING" : The NFS volume is being updated. |
| /// - "DELETING" : The NFS volume is being deleted. |
| core.String? state; |
| |
| /// System-generated unique identifier for the resource. |
| /// |
| /// Output only. |
| core.String? uid; |
| |
| /// Last update time of this resource. |
| /// |
| /// Output only. |
| core.String? updateTime; |
| |
| Datastore({ |
| this.clusters, |
| this.createTime, |
| this.description, |
| this.etag, |
| this.name, |
| this.nfsDatastore, |
| this.state, |
| this.uid, |
| this.updateTime, |
| }); |
| |
| Datastore.fromJson(core.Map json_) |
| : this( |
| clusters: (json_['clusters'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| createTime: json_['createTime'] as core.String?, |
| description: json_['description'] as core.String?, |
| etag: json_['etag'] as core.String?, |
| name: json_['name'] as core.String?, |
| nfsDatastore: json_.containsKey('nfsDatastore') |
| ? NfsDatastore.fromJson( |
| json_['nfsDatastore'] as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| state: json_['state'] as core.String?, |
| uid: json_['uid'] as core.String?, |
| updateTime: json_['updateTime'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final clusters = this.clusters; |
| final createTime = this.createTime; |
| final description = this.description; |
| final etag = this.etag; |
| final name = this.name; |
| final nfsDatastore = this.nfsDatastore; |
| final state = this.state; |
| final uid = this.uid; |
| final updateTime = this.updateTime; |
| return { |
| 'clusters': ?clusters, |
| 'createTime': ?createTime, |
| 'description': ?description, |
| 'etag': ?etag, |
| 'name': ?name, |
| 'nfsDatastore': ?nfsDatastore, |
| 'state': ?state, |
| 'uid': ?uid, |
| 'updateTime': ?updateTime, |
| }; |
| } |
| } |
| |
| /// The Datastore Mount configuration |
| class DatastoreMountConfig { |
| /// NFS is accessed by hosts in read mode Optional. |
| /// |
| /// Default value used will be READ_WRITE |
| /// |
| /// Optional. |
| /// Possible string values are: |
| /// - "ACCESS_MODE_UNSPECIFIED" : The default value. This value should never |
| /// be used. |
| /// - "READ_ONLY" : NFS is accessed by hosts in read mode |
| /// - "READ_WRITE" : NFS is accessed by hosts in read and write mode |
| core.String? accessMode; |
| |
| /// The resource name of the datastore to unmount. |
| /// |
| /// The datastore requested to be mounted should be in same region/zone as the |
| /// cluster. Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/datastores/my-datastore` |
| /// |
| /// Required. |
| core.String? datastore; |
| |
| /// The network configuration for the datastore. |
| /// |
| /// Required. |
| DatastoreNetwork? datastoreNetwork; |
| |
| /// File share name. |
| /// |
| /// Output only. |
| core.String? fileShare; |
| |
| /// The NFS protocol supported by the NFS volume. |
| /// |
| /// Default value used will be NFS_V3 |
| /// |
| /// Optional. |
| /// Possible string values are: |
| /// - "NFS_VERSION_UNSPECIFIED" : The default value. This value should never |
| /// be used. |
| /// - "NFS_V3" : NFS 3 |
| core.String? nfsVersion; |
| |
| /// ONLY required when NFS 4.1 version is used |
| /// |
| /// Optional. |
| /// Possible string values are: |
| /// - "SECURITY_TYPE_UNSPECIFIED" : The default value. This value should never |
| /// be used. |
| core.String? securityType; |
| |
| /// Server IP addresses of the NFS volume. |
| /// |
| /// For NFS 3, you can only provide a single server IP address or DNS names. |
| /// |
| /// Output only. |
| core.List<core.String>? servers; |
| |
| DatastoreMountConfig({ |
| this.accessMode, |
| this.datastore, |
| this.datastoreNetwork, |
| this.fileShare, |
| this.nfsVersion, |
| this.securityType, |
| this.servers, |
| }); |
| |
| DatastoreMountConfig.fromJson(core.Map json_) |
| : this( |
| accessMode: json_['accessMode'] as core.String?, |
| datastore: json_['datastore'] as core.String?, |
| datastoreNetwork: json_.containsKey('datastoreNetwork') |
| ? DatastoreNetwork.fromJson( |
| json_['datastoreNetwork'] |
| as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| fileShare: json_['fileShare'] as core.String?, |
| nfsVersion: json_['nfsVersion'] as core.String?, |
| securityType: json_['securityType'] as core.String?, |
| servers: (json_['servers'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final accessMode = this.accessMode; |
| final datastore = this.datastore; |
| final datastoreNetwork = this.datastoreNetwork; |
| final fileShare = this.fileShare; |
| final nfsVersion = this.nfsVersion; |
| final securityType = this.securityType; |
| final servers = this.servers; |
| return { |
| 'accessMode': ?accessMode, |
| 'datastore': ?datastore, |
| 'datastoreNetwork': ?datastoreNetwork, |
| 'fileShare': ?fileShare, |
| 'nfsVersion': ?nfsVersion, |
| 'securityType': ?securityType, |
| 'servers': ?servers, |
| }; |
| } |
| } |
| |
| /// The network configuration for the datastore. |
| class DatastoreNetwork { |
| /// The number of connections of the NFS volume. |
| /// |
| /// Spported from vsphere 8.0u1 |
| /// |
| /// Optional. |
| core.int? connectionCount; |
| |
| /// The Maximal Transmission Unit (MTU) of the datastore. |
| /// |
| /// System sets default MTU size. It prefers the VPC peering MTU, falling back |
| /// to the VEN MTU if no peering MTU is found. when detected, and falling back |
| /// to the VEN MTU otherwise. |
| /// |
| /// Optional. |
| core.int? mtu; |
| |
| /// The resource name of the network peering, used to access the file share by |
| /// clients on private cloud. |
| /// |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. e.g. |
| /// projects/my-project/locations/us-central1/networkPeerings/my-network-peering |
| /// |
| /// Output only. |
| core.String? networkPeering; |
| |
| /// The resource name of the subnet Resource names are schemeless URIs that |
| /// follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. |
| /// |
| /// e.g. projects/my-project/locations/us-central1/subnets/my-subnet |
| /// |
| /// Required. |
| core.String? subnet; |
| |
| DatastoreNetwork({ |
| this.connectionCount, |
| this.mtu, |
| this.networkPeering, |
| this.subnet, |
| }); |
| |
| DatastoreNetwork.fromJson(core.Map json_) |
| : this( |
| connectionCount: json_['connectionCount'] as core.int?, |
| mtu: json_['mtu'] as core.int?, |
| networkPeering: json_['networkPeering'] as core.String?, |
| subnet: json_['subnet'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final connectionCount = this.connectionCount; |
| final mtu = this.mtu; |
| final networkPeering = this.networkPeering; |
| final subnet = this.subnet; |
| return { |
| 'connectionCount': ?connectionCount, |
| 'mtu': ?mtu, |
| 'networkPeering': ?networkPeering, |
| 'subnet': ?subnet, |
| }; |
| } |
| } |
| |
| /// DnsBindPermission resource that contains the accounts having the consumer |
| /// DNS bind permission on the corresponding intranet VPC of the consumer |
| /// project. |
| class DnsBindPermission { |
| /// The name of the resource which stores the users/service accounts having |
| /// the permission to bind to the corresponding intranet VPC of the consumer |
| /// project. |
| /// |
| /// DnsBindPermission is a global resource and location can only be global. |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/global/dnsBindPermission` |
| /// |
| /// Required. Output only. |
| core.String? name; |
| |
| /// Users/Service accounts which have access for binding on the intranet VPC |
| /// project corresponding to the consumer project. |
| /// |
| /// Output only. |
| core.List<Principal>? principals; |
| |
| DnsBindPermission({this.name, this.principals}); |
| |
| DnsBindPermission.fromJson(core.Map json_) |
| : this( |
| name: json_['name'] as core.String?, |
| principals: (json_['principals'] as core.List?) |
| ?.map( |
| (value) => Principal.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final name = this.name; |
| final principals = this.principals; |
| return {'name': ?name, 'principals': ?principals}; |
| } |
| } |
| |
| /// DNS forwarding config. |
| /// |
| /// This config defines a list of domain to name server mappings, and is |
| /// attached to the private cloud for custom domain resolution. |
| class DnsForwarding { |
| /// Creation time of this resource. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// List of domain mappings to configure |
| /// |
| /// Required. |
| core.List<ForwardingRule>? forwardingRules; |
| |
| /// Identifier. |
| /// |
| /// The resource name of this DNS profile. Resource names are schemeless URIs |
| /// that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/dnsForwarding` |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// Last update time of this resource. |
| /// |
| /// Output only. |
| core.String? updateTime; |
| |
| DnsForwarding({ |
| this.createTime, |
| this.forwardingRules, |
| this.name, |
| this.updateTime, |
| }); |
| |
| DnsForwarding.fromJson(core.Map json_) |
| : this( |
| createTime: json_['createTime'] as core.String?, |
| forwardingRules: (json_['forwardingRules'] as core.List?) |
| ?.map( |
| (value) => ForwardingRule.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| name: json_['name'] as core.String?, |
| updateTime: json_['updateTime'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final createTime = this.createTime; |
| final forwardingRules = this.forwardingRules; |
| final name = this.name; |
| final updateTime = this.updateTime; |
| return { |
| 'createTime': ?createTime, |
| 'forwardingRules': ?forwardingRules, |
| 'name': ?name, |
| 'updateTime': ?updateTime, |
| }; |
| } |
| } |
| |
| /// A generic empty message that you can re-use to avoid defining duplicated |
| /// empty messages in your APIs. |
| /// |
| /// A typical example is to use it as the request or the response type of an API |
| /// method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns |
| /// (google.protobuf.Empty); } |
| typedef Empty = $Empty; |
| |
| /// Represents a textual expression in the Common Expression Language (CEL) |
| /// syntax. |
| /// |
| /// CEL is a C-like expression language. The syntax and semantics of CEL are |
| /// documented at https://github.com/google/cel-spec. Example (Comparison): |
| /// title: "Summary size limit" description: "Determines if a summary is less |
| /// than 100 chars" expression: "document.summary.size() \< 100" Example |
| /// (Equality): title: "Requestor is owner" description: "Determines if |
| /// requestor is the document owner" expression: "document.owner == |
| /// request.auth.claims.email" Example (Logic): title: "Public documents" |
| /// description: "Determine whether the document should be publicly visible" |
| /// expression: "document.type != 'private' && document.type != 'internal'" |
| /// Example (Data Manipulation): title: "Notification string" description: |
| /// "Create a notification string with a timestamp." expression: "'New message |
| /// received at ' + string(document.create_time)" The exact variables and |
| /// functions that may be referenced within an expression are determined by the |
| /// service that evaluates it. See the service documentation for additional |
| /// information. |
| typedef Expr = $Expr; |
| |
| /// External access firewall rules for filtering incoming traffic destined to |
| /// `ExternalAddress` resources. |
| class ExternalAccessRule { |
| /// The action that the external access rule performs. |
| /// Possible string values are: |
| /// - "ACTION_UNSPECIFIED" : Defaults to allow. |
| /// - "ALLOW" : Allows connections that match the other specified components. |
| /// - "DENY" : Blocks connections that match the other specified components. |
| core.String? action; |
| |
| /// Creation time of this resource. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// User-provided description for this external access rule. |
| core.String? description; |
| |
| /// If destination ranges are specified, the external access rule applies only |
| /// to the traffic that has a destination IP address in these ranges. |
| /// |
| /// The specified IP addresses must have reserved external IP addresses in the |
| /// scope of the parent network policy. To match all external IP addresses in |
| /// the scope of the parent network policy, specify `0.0.0.0/0`. To match a |
| /// specific external IP address, specify it using the |
| /// `IpRange.external_address` property. |
| core.List<IpRange>? destinationIpRanges; |
| |
| /// A list of destination ports to which the external access rule applies. |
| /// |
| /// This field is only applicable for the UDP or TCP protocol. Each entry must |
| /// be either an integer or a range. For example: `["22"]`, `["80","443"]`, or |
| /// `["12345-12349"]`. To match all destination ports, specify `["0-65535"]`. |
| core.List<core.String>? destinationPorts; |
| |
| /// The IP protocol to which the external access rule applies. |
| /// |
| /// This value can be one of the following three protocol strings (not |
| /// case-sensitive): `tcp`, `udp`, or `icmp`. |
| core.String? ipProtocol; |
| |
| /// The resource name of this external access rule. |
| /// |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/networkPolicies/my-policy/externalAccessRules/my-rule` |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// External access rule priority, which determines the external access rule |
| /// to use when multiple rules apply. |
| /// |
| /// If multiple rules have the same priority, their ordering is |
| /// non-deterministic. If specific ordering is required, assign unique |
| /// priorities to enforce such ordering. The external access rule priority is |
| /// an integer from 100 to 4096, both inclusive. Lower integers indicate |
| /// higher precedence. For example, a rule with priority `100` has higher |
| /// precedence than a rule with priority `101`. |
| core.int? priority; |
| |
| /// If source ranges are specified, the external access rule applies only to |
| /// traffic that has a source IP address in these ranges. |
| /// |
| /// These ranges can either be expressed in the CIDR format or as an IP |
| /// address. As only inbound rules are supported, `ExternalAddress` resources |
| /// cannot be the source IP addresses of an external access rule. To match all |
| /// source addresses, specify `0.0.0.0/0`. |
| core.List<IpRange>? sourceIpRanges; |
| |
| /// A list of source ports to which the external access rule applies. |
| /// |
| /// This field is only applicable for the UDP or TCP protocol. Each entry must |
| /// be either an integer or a range. For example: `["22"]`, `["80","443"]`, or |
| /// `["12345-12349"]`. To match all source ports, specify `["0-65535"]`. |
| core.List<core.String>? sourcePorts; |
| |
| /// The state of the resource. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "STATE_UNSPECIFIED" : The default value. This value is used if the state |
| /// is omitted. |
| /// - "ACTIVE" : The rule is ready. |
| /// - "CREATING" : The rule is being created. |
| /// - "UPDATING" : The rule is being updated. |
| /// - "DELETING" : The rule is being deleted. |
| core.String? state; |
| |
| /// System-generated unique identifier for the resource. |
| /// |
| /// Output only. |
| core.String? uid; |
| |
| /// Last update time of this resource. |
| /// |
| /// Output only. |
| core.String? updateTime; |
| |
| ExternalAccessRule({ |
| this.action, |
| this.createTime, |
| this.description, |
| this.destinationIpRanges, |
| this.destinationPorts, |
| this.ipProtocol, |
| this.name, |
| this.priority, |
| this.sourceIpRanges, |
| this.sourcePorts, |
| this.state, |
| this.uid, |
| this.updateTime, |
| }); |
| |
| ExternalAccessRule.fromJson(core.Map json_) |
| : this( |
| action: json_['action'] as core.String?, |
| createTime: json_['createTime'] as core.String?, |
| description: json_['description'] as core.String?, |
| destinationIpRanges: (json_['destinationIpRanges'] as core.List?) |
| ?.map( |
| (value) => IpRange.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| destinationPorts: (json_['destinationPorts'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ipProtocol: json_['ipProtocol'] as core.String?, |
| name: json_['name'] as core.String?, |
| priority: json_['priority'] as core.int?, |
| sourceIpRanges: (json_['sourceIpRanges'] as core.List?) |
| ?.map( |
| (value) => IpRange.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| sourcePorts: (json_['sourcePorts'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| state: json_['state'] as core.String?, |
| uid: json_['uid'] as core.String?, |
| updateTime: json_['updateTime'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final action = this.action; |
| final createTime = this.createTime; |
| final description = this.description; |
| final destinationIpRanges = this.destinationIpRanges; |
| final destinationPorts = this.destinationPorts; |
| final ipProtocol = this.ipProtocol; |
| final name = this.name; |
| final priority = this.priority; |
| final sourceIpRanges = this.sourceIpRanges; |
| final sourcePorts = this.sourcePorts; |
| final state = this.state; |
| final uid = this.uid; |
| final updateTime = this.updateTime; |
| return { |
| 'action': ?action, |
| 'createTime': ?createTime, |
| 'description': ?description, |
| 'destinationIpRanges': ?destinationIpRanges, |
| 'destinationPorts': ?destinationPorts, |
| 'ipProtocol': ?ipProtocol, |
| 'name': ?name, |
| 'priority': ?priority, |
| 'sourceIpRanges': ?sourceIpRanges, |
| 'sourcePorts': ?sourcePorts, |
| 'state': ?state, |
| 'uid': ?uid, |
| 'updateTime': ?updateTime, |
| }; |
| } |
| } |
| |
| /// Represents an allocated external IP address and its corresponding internal |
| /// IP address in a private cloud. |
| class ExternalAddress { |
| /// Creation time of this resource. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// User-provided description for this resource. |
| core.String? description; |
| |
| /// The external IP address of a workload VM. |
| /// |
| /// Output only. |
| core.String? externalIp; |
| |
| /// The internal IP address of a workload VM. |
| core.String? internalIp; |
| |
| /// Identifier. |
| /// |
| /// The resource name of this external IP address. Resource names are |
| /// schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/externalAddresses/my-address` |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// The state of the resource. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "STATE_UNSPECIFIED" : The default value. This value should never be |
| /// used. |
| /// - "ACTIVE" : The address is ready. |
| /// - "CREATING" : The address is being created. |
| /// - "UPDATING" : The address is being updated. |
| /// - "DELETING" : The address is being deleted. |
| core.String? state; |
| |
| /// System-generated unique identifier for the resource. |
| /// |
| /// Output only. |
| core.String? uid; |
| |
| /// Last update time of this resource. |
| /// |
| /// Output only. |
| core.String? updateTime; |
| |
| ExternalAddress({ |
| this.createTime, |
| this.description, |
| this.externalIp, |
| this.internalIp, |
| this.name, |
| this.state, |
| this.uid, |
| this.updateTime, |
| }); |
| |
| ExternalAddress.fromJson(core.Map json_) |
| : this( |
| createTime: json_['createTime'] as core.String?, |
| description: json_['description'] as core.String?, |
| externalIp: json_['externalIp'] as core.String?, |
| internalIp: json_['internalIp'] as core.String?, |
| name: json_['name'] as core.String?, |
| state: json_['state'] as core.String?, |
| uid: json_['uid'] as core.String?, |
| updateTime: json_['updateTime'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final createTime = this.createTime; |
| final description = this.description; |
| final externalIp = this.externalIp; |
| final internalIp = this.internalIp; |
| final name = this.name; |
| final state = this.state; |
| final uid = this.uid; |
| final updateTime = this.updateTime; |
| return { |
| 'createTime': ?createTime, |
| 'description': ?description, |
| 'externalIp': ?externalIp, |
| 'internalIp': ?internalIp, |
| 'name': ?name, |
| 'state': ?state, |
| 'uid': ?uid, |
| 'updateTime': ?updateTime, |
| }; |
| } |
| } |
| |
| /// Response message for VmwareEngine.FetchNetworkPolicyExternalAddresses |
| class FetchNetworkPolicyExternalAddressesResponse { |
| /// A list of external IP addresses assigned to VMware workload VMs within the |
| /// scope of the given network policy. |
| core.List<ExternalAddress>? externalAddresses; |
| |
| /// A token, which can be sent as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| FetchNetworkPolicyExternalAddressesResponse({ |
| this.externalAddresses, |
| this.nextPageToken, |
| }); |
| |
| FetchNetworkPolicyExternalAddressesResponse.fromJson(core.Map json_) |
| : this( |
| externalAddresses: (json_['externalAddresses'] as core.List?) |
| ?.map( |
| (value) => ExternalAddress.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final externalAddresses = this.externalAddresses; |
| final nextPageToken = this.nextPageToken; |
| return { |
| 'externalAddresses': ?externalAddresses, |
| 'nextPageToken': ?nextPageToken, |
| }; |
| } |
| } |
| |
| /// A forwarding rule is a mapping of a `domain` to `name_servers`. |
| /// |
| /// This mapping allows VMware Engine to resolve domains for attached private |
| /// clouds by forwarding DNS requests for a given domain to the specified |
| /// nameservers. |
| class ForwardingRule { |
| /// Domain used to resolve a `name_servers` list. |
| /// |
| /// Required. |
| core.String? domain; |
| |
| /// List of DNS servers to use for domain resolution |
| /// |
| /// Required. |
| core.List<core.String>? nameServers; |
| |
| ForwardingRule({this.domain, this.nameServers}); |
| |
| ForwardingRule.fromJson(core.Map json_) |
| : this( |
| domain: json_['domain'] as core.String?, |
| nameServers: (json_['nameServers'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final domain = this.domain; |
| final nameServers = this.nameServers; |
| return {'domain': ?domain, 'nameServers': ?nameServers}; |
| } |
| } |
| |
| /// Google service file service configuration |
| class GoogleFileService { |
| /// Google filestore instance resource name e.g. |
| /// projects/my-project/locations/me-west1-b/instances/my-instance |
| core.String? filestoreInstance; |
| |
| /// Google netapp volume resource name e.g. |
| /// projects/my-project/locations/me-west1-b/volumes/my-volume |
| core.String? netappVolume; |
| |
| GoogleFileService({this.filestoreInstance, this.netappVolume}); |
| |
| GoogleFileService.fromJson(core.Map json_) |
| : this( |
| filestoreInstance: json_['filestoreInstance'] as core.String?, |
| netappVolume: json_['netappVolume'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final filestoreInstance = this.filestoreInstance; |
| final netappVolume = this.netappVolume; |
| return { |
| 'filestoreInstance': ?filestoreInstance, |
| 'netappVolume': ?netappVolume, |
| }; |
| } |
| } |
| |
| /// Volume message captures user inputs for creation of file services managed by |
| /// GCVE |
| typedef GoogleVmwareFileService = $Empty; |
| |
| /// Request message for VmwareEngine.GrantDnsBindPermission |
| class GrantDnsBindPermissionRequest { |
| /// The consumer provided user/service account which needs to be granted |
| /// permission to bind with the intranet VPC corresponding to the consumer |
| /// project. |
| /// |
| /// Required. |
| Principal? principal; |
| |
| /// A request ID to identify requests. |
| /// |
| /// Specify a unique request ID so that if you must retry your request, the |
| /// server will know to ignore the request if it has already been completed. |
| /// The server guarantees that a request doesn't result in creation of |
| /// duplicate commitments for at least 60 minutes. For example, consider a |
| /// situation where you make an initial request and the request times out. If |
| /// you make the request again with the same request ID, the server can check |
| /// if original operation with the same request ID was received, and if so, |
| /// will ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// Optional. |
| core.String? requestId; |
| |
| GrantDnsBindPermissionRequest({this.principal, this.requestId}); |
| |
| GrantDnsBindPermissionRequest.fromJson(core.Map json_) |
| : this( |
| principal: json_.containsKey('principal') |
| ? Principal.fromJson( |
| json_['principal'] as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| requestId: json_['requestId'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final principal = this.principal; |
| final requestId = this.requestId; |
| return {'principal': ?principal, 'requestId': ?requestId}; |
| } |
| } |
| |
| /// Details about a HCX Cloud Manager appliance. |
| class Hcx { |
| /// Fully qualified domain name of the appliance. |
| core.String? fqdn; |
| |
| /// Internal IP address of the appliance. |
| core.String? internalIp; |
| |
| /// The state of the appliance. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "STATE_UNSPECIFIED" : Unspecified appliance state. This is the default |
| /// value. |
| /// - "ACTIVE" : The appliance is operational and can be used. |
| /// - "CREATING" : The appliance is being deployed. |
| /// - "ACTIVATING" : The appliance is being activated. |
| core.String? state; |
| |
| /// Version of the appliance. |
| core.String? version; |
| |
| Hcx({this.fqdn, this.internalIp, this.state, this.version}); |
| |
| Hcx.fromJson(core.Map json_) |
| : this( |
| fqdn: json_['fqdn'] as core.String?, |
| internalIp: json_['internalIp'] as core.String?, |
| state: json_['state'] as core.String?, |
| version: json_['version'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final fqdn = this.fqdn; |
| final internalIp = this.internalIp; |
| final state = this.state; |
| final version = this.version; |
| return { |
| 'fqdn': ?fqdn, |
| 'internalIp': ?internalIp, |
| 'state': ?state, |
| 'version': ?version, |
| }; |
| } |
| } |
| |
| /// HCX activation key. |
| /// |
| /// A default key is created during private cloud provisioning, but this |
| /// behavior is subject to change and you should always verify active keys. Use |
| /// VmwareEngine.ListHcxActivationKeys to retrieve existing keys and |
| /// VmwareEngine.CreateHcxActivationKey to create new ones. |
| class HcxActivationKey { |
| /// HCX activation key. |
| /// |
| /// Output only. |
| core.String? activationKey; |
| |
| /// Creation time of HCX activation key. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// The resource name of this HcxActivationKey. |
| /// |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/privateClouds/my-cloud/hcxActivationKeys/my-key` |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// State of HCX activation key. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "STATE_UNSPECIFIED" : Unspecified state. |
| /// - "AVAILABLE" : State of a newly generated activation key. |
| /// - "CONSUMED" : State of key when it has been used to activate HCX |
| /// appliance. |
| /// - "CREATING" : State of key when it is being created. |
| core.String? state; |
| |
| /// System-generated unique identifier for the resource. |
| /// |
| /// Output only. |
| core.String? uid; |
| |
| HcxActivationKey({ |
| this.activationKey, |
| this.createTime, |
| this.name, |
| this.state, |
| this.uid, |
| }); |
| |
| HcxActivationKey.fromJson(core.Map json_) |
| : this( |
| activationKey: json_['activationKey'] as core.String?, |
| createTime: json_['createTime'] as core.String?, |
| name: json_['name'] as core.String?, |
| state: json_['state'] as core.String?, |
| uid: json_['uid'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final activationKey = this.activationKey; |
| final createTime = this.createTime; |
| final name = this.name; |
| final state = this.state; |
| final uid = this.uid; |
| return { |
| 'activationKey': ?activationKey, |
| 'createTime': ?createTime, |
| 'name': ?name, |
| 'state': ?state, |
| 'uid': ?uid, |
| }; |
| } |
| } |
| |
| /// Represents a time interval, encoded as a Timestamp start (inclusive) and a |
| /// Timestamp end (exclusive). |
| /// |
| /// The start must be less than or equal to the end. When the start equals the |
| /// end, the interval is empty (matches no time). When both start and end are |
| /// unspecified, the interval matches any time. |
| typedef Interval = $Interval; |
| |
| /// An IP range provided in any one of the supported formats. |
| class IpRange { |
| /// The name of an `ExternalAddress` resource. |
| /// |
| /// The external address must have been reserved in the scope of this external |
| /// access rule's parent network policy. Provide the external address name in |
| /// the form of |
| /// `projects/{project}/locations/{location}/privateClouds/{private_cloud}/externalAddresses/{external_address}`. |
| /// For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/externalAddresses/my-address`. |
| core.String? externalAddress; |
| |
| /// A single IP address. |
| /// |
| /// For example: `10.0.0.5`. |
| core.String? ipAddress; |
| |
| /// An IP address range in the CIDR format. |
| /// |
| /// For example: `10.0.0.0/24`. |
| core.String? ipAddressRange; |
| |
| IpRange({this.externalAddress, this.ipAddress, this.ipAddressRange}); |
| |
| IpRange.fromJson(core.Map json_) |
| : this( |
| externalAddress: json_['externalAddress'] as core.String?, |
| ipAddress: json_['ipAddress'] as core.String?, |
| ipAddressRange: json_['ipAddressRange'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final externalAddress = this.externalAddress; |
| final ipAddress = this.ipAddress; |
| final ipAddressRange = this.ipAddressRange; |
| return { |
| 'externalAddress': ?externalAddress, |
| 'ipAddress': ?ipAddress, |
| 'ipAddressRange': ?ipAddressRange, |
| }; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListAnnouncements |
| class ListAnnouncementsResponse { |
| /// A list of announcement runs. |
| core.List<Announcement>? announcements; |
| |
| /// A token, which can be sent as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// list of unreachable locations |
| core.List<core.String>? unreachable; |
| |
| ListAnnouncementsResponse({ |
| this.announcements, |
| this.nextPageToken, |
| this.unreachable, |
| }); |
| |
| ListAnnouncementsResponse.fromJson(core.Map json_) |
| : this( |
| announcements: (json_['announcements'] as core.List?) |
| ?.map( |
| (value) => Announcement.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| unreachable: (json_['unreachable'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final announcements = this.announcements; |
| final nextPageToken = this.nextPageToken; |
| final unreachable = this.unreachable; |
| return { |
| 'announcements': ?announcements, |
| 'nextPageToken': ?nextPageToken, |
| 'unreachable': ?unreachable, |
| }; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListClusters |
| class ListClustersResponse { |
| /// A list of private cloud clusters. |
| core.List<Cluster>? clusters; |
| |
| /// A token, which can be sent as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// Locations that could not be reached when making an aggregated query using |
| /// wildcards. |
| core.List<core.String>? unreachable; |
| |
| ListClustersResponse({this.clusters, this.nextPageToken, this.unreachable}); |
| |
| ListClustersResponse.fromJson(core.Map json_) |
| : this( |
| clusters: (json_['clusters'] as core.List?) |
| ?.map( |
| (value) => Cluster.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| unreachable: (json_['unreachable'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final clusters = this.clusters; |
| final nextPageToken = this.nextPageToken; |
| final unreachable = this.unreachable; |
| return { |
| 'clusters': ?clusters, |
| 'nextPageToken': ?nextPageToken, |
| 'unreachable': ?unreachable, |
| }; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListDatastores |
| class ListDatastoresResponse { |
| /// A list of Datastores. |
| core.List<Datastore>? datastores; |
| |
| /// A token, which can be sent as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// Unreachable resources. |
| core.List<core.String>? unreachable; |
| |
| ListDatastoresResponse({ |
| this.datastores, |
| this.nextPageToken, |
| this.unreachable, |
| }); |
| |
| ListDatastoresResponse.fromJson(core.Map json_) |
| : this( |
| datastores: (json_['datastores'] as core.List?) |
| ?.map( |
| (value) => Datastore.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| unreachable: (json_['unreachable'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final datastores = this.datastores; |
| final nextPageToken = this.nextPageToken; |
| final unreachable = this.unreachable; |
| return { |
| 'datastores': ?datastores, |
| 'nextPageToken': ?nextPageToken, |
| 'unreachable': ?unreachable, |
| }; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListExternalAccessRules |
| class ListExternalAccessRulesResponse { |
| /// A list of external access firewall rules. |
| core.List<ExternalAccessRule>? externalAccessRules; |
| |
| /// A token, which can be sent as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// Locations that could not be reached when making an aggregated query using |
| /// wildcards. |
| core.List<core.String>? unreachable; |
| |
| ListExternalAccessRulesResponse({ |
| this.externalAccessRules, |
| this.nextPageToken, |
| this.unreachable, |
| }); |
| |
| ListExternalAccessRulesResponse.fromJson(core.Map json_) |
| : this( |
| externalAccessRules: (json_['externalAccessRules'] as core.List?) |
| ?.map( |
| (value) => ExternalAccessRule.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| unreachable: (json_['unreachable'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final externalAccessRules = this.externalAccessRules; |
| final nextPageToken = this.nextPageToken; |
| final unreachable = this.unreachable; |
| return { |
| 'externalAccessRules': ?externalAccessRules, |
| 'nextPageToken': ?nextPageToken, |
| 'unreachable': ?unreachable, |
| }; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListExternalAddresses |
| class ListExternalAddressesResponse { |
| /// A list of external IP addresses. |
| core.List<ExternalAddress>? externalAddresses; |
| |
| /// A token, which can be sent as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// Locations that could not be reached when making an aggregated query using |
| /// wildcards. |
| core.List<core.String>? unreachable; |
| |
| ListExternalAddressesResponse({ |
| this.externalAddresses, |
| this.nextPageToken, |
| this.unreachable, |
| }); |
| |
| ListExternalAddressesResponse.fromJson(core.Map json_) |
| : this( |
| externalAddresses: (json_['externalAddresses'] as core.List?) |
| ?.map( |
| (value) => ExternalAddress.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| unreachable: (json_['unreachable'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final externalAddresses = this.externalAddresses; |
| final nextPageToken = this.nextPageToken; |
| final unreachable = this.unreachable; |
| return { |
| 'externalAddresses': ?externalAddresses, |
| 'nextPageToken': ?nextPageToken, |
| 'unreachable': ?unreachable, |
| }; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListHcxActivationKeys |
| class ListHcxActivationKeysResponse { |
| /// List of HCX activation keys. |
| core.List<HcxActivationKey>? hcxActivationKeys; |
| |
| /// A token, which can be sent as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// Locations that could not be reached when making an aggregated query using |
| /// wildcards. |
| core.List<core.String>? unreachable; |
| |
| ListHcxActivationKeysResponse({ |
| this.hcxActivationKeys, |
| this.nextPageToken, |
| this.unreachable, |
| }); |
| |
| ListHcxActivationKeysResponse.fromJson(core.Map json_) |
| : this( |
| hcxActivationKeys: (json_['hcxActivationKeys'] as core.List?) |
| ?.map( |
| (value) => HcxActivationKey.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| unreachable: (json_['unreachable'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final hcxActivationKeys = this.hcxActivationKeys; |
| final nextPageToken = this.nextPageToken; |
| final unreachable = this.unreachable; |
| return { |
| 'hcxActivationKeys': ?hcxActivationKeys, |
| 'nextPageToken': ?nextPageToken, |
| 'unreachable': ?unreachable, |
| }; |
| } |
| } |
| |
| /// The response message for Locations.ListLocations. |
| class ListLocationsResponse { |
| /// A list of locations that matches the specified filter in the request. |
| core.List<Location>? locations; |
| |
| /// The standard List next-page token. |
| core.String? nextPageToken; |
| |
| ListLocationsResponse({this.locations, this.nextPageToken}); |
| |
| ListLocationsResponse.fromJson(core.Map json_) |
| : this( |
| locations: (json_['locations'] as core.List?) |
| ?.map( |
| (value) => Location.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final locations = this.locations; |
| final nextPageToken = this.nextPageToken; |
| return {'locations': ?locations, 'nextPageToken': ?nextPageToken}; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListLoggingServers |
| class ListLoggingServersResponse { |
| /// A list of Logging Servers. |
| core.List<LoggingServer>? loggingServers; |
| |
| /// A token, which can be send as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// Locations that could not be reached when making an aggregated query using |
| /// wildcards. |
| core.List<core.String>? unreachable; |
| |
| ListLoggingServersResponse({ |
| this.loggingServers, |
| this.nextPageToken, |
| this.unreachable, |
| }); |
| |
| ListLoggingServersResponse.fromJson(core.Map json_) |
| : this( |
| loggingServers: (json_['loggingServers'] as core.List?) |
| ?.map( |
| (value) => LoggingServer.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| unreachable: (json_['unreachable'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final loggingServers = this.loggingServers; |
| final nextPageToken = this.nextPageToken; |
| final unreachable = this.unreachable; |
| return { |
| 'loggingServers': ?loggingServers, |
| 'nextPageToken': ?nextPageToken, |
| 'unreachable': ?unreachable, |
| }; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListManagementDnsZoneBindings |
| class ListManagementDnsZoneBindingsResponse { |
| /// A list of management DNS zone bindings. |
| core.List<ManagementDnsZoneBinding>? managementDnsZoneBindings; |
| |
| /// A token, which can be sent as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// Locations that could not be reached when making an aggregated query using |
| /// wildcards. |
| core.List<core.String>? unreachable; |
| |
| ListManagementDnsZoneBindingsResponse({ |
| this.managementDnsZoneBindings, |
| this.nextPageToken, |
| this.unreachable, |
| }); |
| |
| ListManagementDnsZoneBindingsResponse.fromJson(core.Map json_) |
| : this( |
| managementDnsZoneBindings: |
| (json_['managementDnsZoneBindings'] as core.List?) |
| ?.map( |
| (value) => ManagementDnsZoneBinding.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| unreachable: (json_['unreachable'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final managementDnsZoneBindings = this.managementDnsZoneBindings; |
| final nextPageToken = this.nextPageToken; |
| final unreachable = this.unreachable; |
| return { |
| 'managementDnsZoneBindings': ?managementDnsZoneBindings, |
| 'nextPageToken': ?nextPageToken, |
| 'unreachable': ?unreachable, |
| }; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListNetworkPeerings |
| class ListNetworkPeeringsResponse { |
| /// A list of network peerings. |
| core.List<NetworkPeering>? networkPeerings; |
| |
| /// A token, which can be sent as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// Unreachable resources. |
| core.List<core.String>? unreachable; |
| |
| ListNetworkPeeringsResponse({ |
| this.networkPeerings, |
| this.nextPageToken, |
| this.unreachable, |
| }); |
| |
| ListNetworkPeeringsResponse.fromJson(core.Map json_) |
| : this( |
| networkPeerings: (json_['networkPeerings'] as core.List?) |
| ?.map( |
| (value) => NetworkPeering.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| unreachable: (json_['unreachable'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final networkPeerings = this.networkPeerings; |
| final nextPageToken = this.nextPageToken; |
| final unreachable = this.unreachable; |
| return { |
| 'networkPeerings': ?networkPeerings, |
| 'nextPageToken': ?nextPageToken, |
| 'unreachable': ?unreachable, |
| }; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListNetworkPolicies |
| class ListNetworkPoliciesResponse { |
| /// A list of network policies. |
| core.List<NetworkPolicy>? networkPolicies; |
| |
| /// A token, which can be send as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// Locations that could not be reached when making an aggregated query using |
| /// wildcards. |
| core.List<core.String>? unreachable; |
| |
| ListNetworkPoliciesResponse({ |
| this.networkPolicies, |
| this.nextPageToken, |
| this.unreachable, |
| }); |
| |
| ListNetworkPoliciesResponse.fromJson(core.Map json_) |
| : this( |
| networkPolicies: (json_['networkPolicies'] as core.List?) |
| ?.map( |
| (value) => NetworkPolicy.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| unreachable: (json_['unreachable'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final networkPolicies = this.networkPolicies; |
| final nextPageToken = this.nextPageToken; |
| final unreachable = this.unreachable; |
| return { |
| 'networkPolicies': ?networkPolicies, |
| 'nextPageToken': ?nextPageToken, |
| 'unreachable': ?unreachable, |
| }; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListNodeTypes |
| class ListNodeTypesResponse { |
| /// A token, which can be sent as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// A list of Node Types. |
| core.List<NodeType>? nodeTypes; |
| |
| /// Locations that could not be reached when making an aggregated query using |
| /// wildcards. |
| core.List<core.String>? unreachable; |
| |
| ListNodeTypesResponse({this.nextPageToken, this.nodeTypes, this.unreachable}); |
| |
| ListNodeTypesResponse.fromJson(core.Map json_) |
| : this( |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| nodeTypes: (json_['nodeTypes'] as core.List?) |
| ?.map( |
| (value) => NodeType.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| unreachable: (json_['unreachable'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final nextPageToken = this.nextPageToken; |
| final nodeTypes = this.nodeTypes; |
| final unreachable = this.unreachable; |
| return { |
| 'nextPageToken': ?nextPageToken, |
| 'nodeTypes': ?nodeTypes, |
| 'unreachable': ?unreachable, |
| }; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListNodes |
| class ListNodesResponse { |
| /// A token, which can be sent as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// The nodes. |
| core.List<Node>? nodes; |
| |
| ListNodesResponse({this.nextPageToken, this.nodes}); |
| |
| ListNodesResponse.fromJson(core.Map json_) |
| : this( |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| nodes: (json_['nodes'] as core.List?) |
| ?.map( |
| (value) => |
| Node.fromJson(value as core.Map<core.String, core.dynamic>), |
| ) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final nextPageToken = this.nextPageToken; |
| final nodes = this.nodes; |
| return {'nextPageToken': ?nextPageToken, 'nodes': ?nodes}; |
| } |
| } |
| |
| /// The response message for Operations.ListOperations. |
| class ListOperationsResponse { |
| /// The standard List next-page token. |
| core.String? nextPageToken; |
| |
| /// A list of operations that matches the specified filter in the request. |
| core.List<Operation>? operations; |
| |
| /// Unordered list. |
| /// |
| /// Unreachable resources. Populated when the request sets |
| /// `ListOperationsRequest.return_partial_success` and reads across |
| /// collections. For example, when attempting to list all resources across all |
| /// supported locations. |
| core.List<core.String>? unreachable; |
| |
| ListOperationsResponse({ |
| this.nextPageToken, |
| this.operations, |
| this.unreachable, |
| }); |
| |
| ListOperationsResponse.fromJson(core.Map json_) |
| : this( |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| operations: (json_['operations'] as core.List?) |
| ?.map( |
| (value) => Operation.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| unreachable: (json_['unreachable'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final nextPageToken = this.nextPageToken; |
| final operations = this.operations; |
| final unreachable = this.unreachable; |
| return { |
| 'nextPageToken': ?nextPageToken, |
| 'operations': ?operations, |
| 'unreachable': ?unreachable, |
| }; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListPeeringRoutes |
| class ListPeeringRoutesResponse { |
| /// A token, which can be sent as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// A list of peering routes. |
| core.List<PeeringRoute>? peeringRoutes; |
| |
| ListPeeringRoutesResponse({this.nextPageToken, this.peeringRoutes}); |
| |
| ListPeeringRoutesResponse.fromJson(core.Map json_) |
| : this( |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| peeringRoutes: (json_['peeringRoutes'] as core.List?) |
| ?.map( |
| (value) => PeeringRoute.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final nextPageToken = this.nextPageToken; |
| final peeringRoutes = this.peeringRoutes; |
| return {'nextPageToken': ?nextPageToken, 'peeringRoutes': ?peeringRoutes}; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListPrivateClouds |
| class ListPrivateCloudsResponse { |
| /// A token, which can be sent as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// A list of private clouds. |
| core.List<PrivateCloud>? privateClouds; |
| |
| /// Locations that could not be reached when making an aggregated query using |
| /// wildcards. |
| core.List<core.String>? unreachable; |
| |
| ListPrivateCloudsResponse({ |
| this.nextPageToken, |
| this.privateClouds, |
| this.unreachable, |
| }); |
| |
| ListPrivateCloudsResponse.fromJson(core.Map json_) |
| : this( |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| privateClouds: (json_['privateClouds'] as core.List?) |
| ?.map( |
| (value) => PrivateCloud.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| unreachable: (json_['unreachable'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final nextPageToken = this.nextPageToken; |
| final privateClouds = this.privateClouds; |
| final unreachable = this.unreachable; |
| return { |
| 'nextPageToken': ?nextPageToken, |
| 'privateClouds': ?privateClouds, |
| 'unreachable': ?unreachable, |
| }; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListPrivateConnectionPeeringRoutes |
| class ListPrivateConnectionPeeringRoutesResponse { |
| /// A token, which can be sent as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// A list of peering routes. |
| core.List<PeeringRoute>? peeringRoutes; |
| |
| ListPrivateConnectionPeeringRoutesResponse({ |
| this.nextPageToken, |
| this.peeringRoutes, |
| }); |
| |
| ListPrivateConnectionPeeringRoutesResponse.fromJson(core.Map json_) |
| : this( |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| peeringRoutes: (json_['peeringRoutes'] as core.List?) |
| ?.map( |
| (value) => PeeringRoute.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final nextPageToken = this.nextPageToken; |
| final peeringRoutes = this.peeringRoutes; |
| return {'nextPageToken': ?nextPageToken, 'peeringRoutes': ?peeringRoutes}; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListPrivateConnections |
| class ListPrivateConnectionsResponse { |
| /// A token, which can be sent as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// A list of private connections. |
| core.List<PrivateConnection>? privateConnections; |
| |
| /// Unreachable resources. |
| core.List<core.String>? unreachable; |
| |
| ListPrivateConnectionsResponse({ |
| this.nextPageToken, |
| this.privateConnections, |
| this.unreachable, |
| }); |
| |
| ListPrivateConnectionsResponse.fromJson(core.Map json_) |
| : this( |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| privateConnections: (json_['privateConnections'] as core.List?) |
| ?.map( |
| (value) => PrivateConnection.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| unreachable: (json_['unreachable'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final nextPageToken = this.nextPageToken; |
| final privateConnections = this.privateConnections; |
| final unreachable = this.unreachable; |
| return { |
| 'nextPageToken': ?nextPageToken, |
| 'privateConnections': ?privateConnections, |
| 'unreachable': ?unreachable, |
| }; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListSubnets |
| class ListSubnetsResponse { |
| /// A token, which can be sent as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// A list of subnets. |
| core.List<Subnet>? subnets; |
| |
| /// Locations that could not be reached when making an aggregated query using |
| /// wildcards. |
| core.List<core.String>? unreachable; |
| |
| ListSubnetsResponse({this.nextPageToken, this.subnets, this.unreachable}); |
| |
| ListSubnetsResponse.fromJson(core.Map json_) |
| : this( |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| subnets: (json_['subnets'] as core.List?) |
| ?.map( |
| (value) => |
| Subnet.fromJson(value as core.Map<core.String, core.dynamic>), |
| ) |
| .toList(), |
| unreachable: (json_['unreachable'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final nextPageToken = this.nextPageToken; |
| final subnets = this.subnets; |
| final unreachable = this.unreachable; |
| return { |
| 'nextPageToken': ?nextPageToken, |
| 'subnets': ?subnets, |
| 'unreachable': ?unreachable, |
| }; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListUpgrades. |
| class ListUpgradesResponse { |
| /// A token, which can be sent as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// List of unreachable resources. |
| core.List<core.String>? unreachable; |
| |
| /// A list of `Upgrades`. |
| core.List<Upgrade>? upgrades; |
| |
| ListUpgradesResponse({this.nextPageToken, this.unreachable, this.upgrades}); |
| |
| ListUpgradesResponse.fromJson(core.Map json_) |
| : this( |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| unreachable: (json_['unreachable'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| upgrades: (json_['upgrades'] as core.List?) |
| ?.map( |
| (value) => Upgrade.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final nextPageToken = this.nextPageToken; |
| final unreachable = this.unreachable; |
| final upgrades = this.upgrades; |
| return { |
| 'nextPageToken': ?nextPageToken, |
| 'unreachable': ?unreachable, |
| 'upgrades': ?upgrades, |
| }; |
| } |
| } |
| |
| /// Response message for VmwareEngine.ListVmwareEngineNetworks |
| class ListVmwareEngineNetworksResponse { |
| /// A token, which can be sent as `page_token` to retrieve the next page. |
| /// |
| /// If this field is omitted, there are no subsequent pages. |
| core.String? nextPageToken; |
| |
| /// Unreachable resources. |
| core.List<core.String>? unreachable; |
| |
| /// A list of VMware Engine networks. |
| core.List<VmwareEngineNetwork>? vmwareEngineNetworks; |
| |
| ListVmwareEngineNetworksResponse({ |
| this.nextPageToken, |
| this.unreachable, |
| this.vmwareEngineNetworks, |
| }); |
| |
| ListVmwareEngineNetworksResponse.fromJson(core.Map json_) |
| : this( |
| nextPageToken: json_['nextPageToken'] as core.String?, |
| unreachable: (json_['unreachable'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| vmwareEngineNetworks: (json_['vmwareEngineNetworks'] as core.List?) |
| ?.map( |
| (value) => VmwareEngineNetwork.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final nextPageToken = this.nextPageToken; |
| final unreachable = this.unreachable; |
| final vmwareEngineNetworks = this.vmwareEngineNetworks; |
| return { |
| 'nextPageToken': ?nextPageToken, |
| 'unreachable': ?unreachable, |
| 'vmwareEngineNetworks': ?vmwareEngineNetworks, |
| }; |
| } |
| } |
| |
| /// A resource that represents a Google Cloud location. |
| typedef Location = $Location00; |
| |
| /// Logging server to receive vCenter or ESXi logs. |
| class LoggingServer { |
| /// Creation time of this resource. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// Fully-qualified domain name (FQDN) or IP Address of the logging server. |
| /// |
| /// Required. |
| core.String? hostname; |
| |
| /// The resource name of this logging server. |
| /// |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/loggingServers/my-logging-server` |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// Port number at which the logging server receives logs. |
| /// |
| /// Required. |
| core.int? port; |
| |
| /// Protocol used by vCenter to send logs to a logging server. |
| /// |
| /// Required. |
| /// Possible string values are: |
| /// - "PROTOCOL_UNSPECIFIED" : Unspecified communications protocol. This is |
| /// the default value. |
| /// - "UDP" : UDP |
| /// - "TCP" : TCP |
| /// - "TLS" : TLS |
| /// - "SSL" : SSL |
| /// - "RELP" : RELP |
| core.String? protocol; |
| |
| /// The type of component that produces logs that will be forwarded to this |
| /// logging server. |
| /// |
| /// Required. |
| /// Possible string values are: |
| /// - "SOURCE_TYPE_UNSPECIFIED" : The default value. This value should never |
| /// be used. |
| /// - "ESXI" : Logs produced by ESXI hosts |
| /// - "VCSA" : Logs produced by vCenter server |
| core.String? sourceType; |
| |
| /// System-generated unique identifier for the resource. |
| /// |
| /// Output only. |
| core.String? uid; |
| |
| /// Last update time of this resource. |
| /// |
| /// Output only. |
| core.String? updateTime; |
| |
| LoggingServer({ |
| this.createTime, |
| this.hostname, |
| this.name, |
| this.port, |
| this.protocol, |
| this.sourceType, |
| this.uid, |
| this.updateTime, |
| }); |
| |
| LoggingServer.fromJson(core.Map json_) |
| : this( |
| createTime: json_['createTime'] as core.String?, |
| hostname: json_['hostname'] as core.String?, |
| name: json_['name'] as core.String?, |
| port: json_['port'] as core.int?, |
| protocol: json_['protocol'] as core.String?, |
| sourceType: json_['sourceType'] as core.String?, |
| uid: json_['uid'] as core.String?, |
| updateTime: json_['updateTime'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final createTime = this.createTime; |
| final hostname = this.hostname; |
| final name = this.name; |
| final port = this.port; |
| final protocol = this.protocol; |
| final sourceType = this.sourceType; |
| final uid = this.uid; |
| final updateTime = this.updateTime; |
| return { |
| 'createTime': ?createTime, |
| 'hostname': ?hostname, |
| 'name': ?name, |
| 'port': ?port, |
| 'protocol': ?protocol, |
| 'sourceType': ?sourceType, |
| 'uid': ?uid, |
| 'updateTime': ?updateTime, |
| }; |
| } |
| } |
| |
| /// Management cluster configuration. |
| class ManagementCluster { |
| /// The user-provided identifier of the new `Cluster`. |
| /// |
| /// The identifier must meet the following requirements: * Only contains 1-63 |
| /// alphanumeric characters and hyphens * Begins with an alphabetical |
| /// character * Ends with a non-hyphen character * Not formatted as a UUID * |
| /// Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) |
| /// (section 3.5) |
| /// |
| /// Required. |
| core.String? clusterId; |
| |
| /// The map of cluster node types in this cluster, where the key is canonical |
| /// identifier of the node type (corresponds to the `NodeType`). |
| /// |
| /// Required. |
| core.Map<core.String, NodeTypeConfig>? nodeTypeConfigs; |
| |
| /// Configuration of a stretched cluster. |
| /// |
| /// Required for STRETCHED private clouds. |
| /// |
| /// Optional. |
| StretchedClusterConfig? stretchedClusterConfig; |
| |
| ManagementCluster({ |
| this.clusterId, |
| this.nodeTypeConfigs, |
| this.stretchedClusterConfig, |
| }); |
| |
| ManagementCluster.fromJson(core.Map json_) |
| : this( |
| clusterId: json_['clusterId'] as core.String?, |
| nodeTypeConfigs: |
| (json_['nodeTypeConfigs'] as core.Map<core.String, core.dynamic>?) |
| ?.map( |
| (key, value) => core.MapEntry( |
| key, |
| NodeTypeConfig.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ), |
| ), |
| stretchedClusterConfig: json_.containsKey('stretchedClusterConfig') |
| ? StretchedClusterConfig.fromJson( |
| json_['stretchedClusterConfig'] |
| as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final clusterId = this.clusterId; |
| final nodeTypeConfigs = this.nodeTypeConfigs; |
| final stretchedClusterConfig = this.stretchedClusterConfig; |
| return { |
| 'clusterId': ?clusterId, |
| 'nodeTypeConfigs': ?nodeTypeConfigs, |
| 'stretchedClusterConfig': ?stretchedClusterConfig, |
| }; |
| } |
| } |
| |
| /// Represents a binding between a network and the management DNS zone. |
| /// |
| /// A management DNS zone is the Cloud DNS cross-project binding zone that |
| /// VMware Engine creates for each private cloud. It contains FQDNs and |
| /// corresponding IP addresses for the private cloud's ESXi hosts and management |
| /// VM appliances like vCenter and NSX Manager. |
| class ManagementDnsZoneBinding { |
| /// Creation time of this resource. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// User-provided description for this resource. |
| core.String? description; |
| |
| /// The resource name of this binding. |
| /// |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/managementDnsZoneBindings/my-management-dns-zone-binding` |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// The state of the resource. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "STATE_UNSPECIFIED" : The default value. This value should never be |
| /// used. |
| /// - "ACTIVE" : The binding is ready. |
| /// - "CREATING" : The binding is being created. |
| /// - "UPDATING" : The binding is being updated. |
| /// - "DELETING" : The binding is being deleted. |
| /// - "FAILED" : The binding has failed. |
| core.String? state; |
| |
| /// System-generated unique identifier for the resource. |
| /// |
| /// Output only. |
| core.String? uid; |
| |
| /// Last update time of this resource. |
| /// |
| /// Output only. |
| core.String? updateTime; |
| |
| /// Network to bind is a VMware Engine network. |
| /// |
| /// Specify the name in the following form for VMware engine network: |
| /// `projects/{project}/locations/global/vmwareEngineNetworks/{vmware_engine_network_id}`. |
| /// `{project}` can either be a project number or a project ID. |
| core.String? vmwareEngineNetwork; |
| |
| /// Network to bind is a standard consumer VPC. |
| /// |
| /// Specify the name in the following form for consumer VPC network: |
| /// `projects/{project}/global/networks/{network_id}`. `{project}` can either |
| /// be a project number or a project ID. |
| core.String? vpcNetwork; |
| |
| ManagementDnsZoneBinding({ |
| this.createTime, |
| this.description, |
| this.name, |
| this.state, |
| this.uid, |
| this.updateTime, |
| this.vmwareEngineNetwork, |
| this.vpcNetwork, |
| }); |
| |
| ManagementDnsZoneBinding.fromJson(core.Map json_) |
| : this( |
| createTime: json_['createTime'] as core.String?, |
| description: json_['description'] as core.String?, |
| name: json_['name'] as core.String?, |
| state: json_['state'] as core.String?, |
| uid: json_['uid'] as core.String?, |
| updateTime: json_['updateTime'] as core.String?, |
| vmwareEngineNetwork: json_['vmwareEngineNetwork'] as core.String?, |
| vpcNetwork: json_['vpcNetwork'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final createTime = this.createTime; |
| final description = this.description; |
| final name = this.name; |
| final state = this.state; |
| final uid = this.uid; |
| final updateTime = this.updateTime; |
| final vmwareEngineNetwork = this.vmwareEngineNetwork; |
| final vpcNetwork = this.vpcNetwork; |
| return { |
| 'createTime': ?createTime, |
| 'description': ?description, |
| 'name': ?name, |
| 'state': ?state, |
| 'uid': ?uid, |
| 'updateTime': ?updateTime, |
| 'vmwareEngineNetwork': ?vmwareEngineNetwork, |
| 'vpcNetwork': ?vpcNetwork, |
| }; |
| } |
| } |
| |
| /// Mount Datastore Request message |
| class MountDatastoreRequest { |
| /// The datastore mount configuration. |
| /// |
| /// Required. |
| DatastoreMountConfig? datastoreMountConfig; |
| |
| /// If set to true, the colocation requirement will be ignored. |
| /// |
| /// If set to false, the colocation requirement will be enforced. If not set, |
| /// the colocation requirement will be enforced. Colocation requirement is the |
| /// requirement that the cluster must be in the same region/zone of |
| /// datastore(regional/zonal datastore). |
| /// |
| /// Optional. |
| core.bool? ignoreColocation; |
| |
| /// The request ID must be a valid UUID with the exception that zero UUID is |
| /// not supported (00000000-0000-0000-0000-000000000000). |
| /// |
| /// Optional. |
| core.String? requestId; |
| |
| MountDatastoreRequest({ |
| this.datastoreMountConfig, |
| this.ignoreColocation, |
| this.requestId, |
| }); |
| |
| MountDatastoreRequest.fromJson(core.Map json_) |
| : this( |
| datastoreMountConfig: json_.containsKey('datastoreMountConfig') |
| ? DatastoreMountConfig.fromJson( |
| json_['datastoreMountConfig'] |
| as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| ignoreColocation: json_['ignoreColocation'] as core.bool?, |
| requestId: json_['requestId'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final datastoreMountConfig = this.datastoreMountConfig; |
| final ignoreColocation = this.ignoreColocation; |
| final requestId = this.requestId; |
| return { |
| 'datastoreMountConfig': ?datastoreMountConfig, |
| 'ignoreColocation': ?ignoreColocation, |
| 'requestId': ?requestId, |
| }; |
| } |
| } |
| |
| /// Network configuration in the consumer project with which the peering has to |
| /// be done. |
| class NetworkConfig { |
| /// DNS Server IP of the Private Cloud. |
| /// |
| /// All DNS queries can be forwarded to this address for name resolution of |
| /// Private Cloud's management entities like vCenter, NSX-T Manager and ESXi |
| /// hosts. |
| /// |
| /// Output only. |
| core.String? dnsServerIp; |
| |
| /// Management CIDR used by VMware management appliances. |
| /// |
| /// Required. |
| core.String? managementCidr; |
| |
| /// The IP address layout version of the management IP address range. |
| /// |
| /// Possible versions include: * `managementIpAddressLayoutVersion=1`: |
| /// Indicates the legacy IP address layout used by some existing private |
| /// clouds. This is no longer supported for new private clouds as it does not |
| /// support all features. * `managementIpAddressLayoutVersion=2`: Indicates |
| /// the latest IP address layout used by all newly created private clouds. |
| /// This version supports all current features. |
| /// |
| /// Output only. |
| core.int? managementIpAddressLayoutVersion; |
| |
| /// The relative resource name of the VMware Engine network attached to the |
| /// private cloud. |
| /// |
| /// Specify the name in the following form: |
| /// `projects/{project}/locations/{location}/vmwareEngineNetworks/{vmware_engine_network_id}` |
| /// where `{project}` can either be a project number or a project ID. |
| /// |
| /// Optional. |
| core.String? vmwareEngineNetwork; |
| |
| /// The canonical name of the VMware Engine network in the form: |
| /// `projects/{project_number}/locations/{location}/vmwareEngineNetworks/{vmware_engine_network_id}` |
| /// |
| /// Output only. |
| core.String? vmwareEngineNetworkCanonical; |
| |
| NetworkConfig({ |
| this.dnsServerIp, |
| this.managementCidr, |
| this.managementIpAddressLayoutVersion, |
| this.vmwareEngineNetwork, |
| this.vmwareEngineNetworkCanonical, |
| }); |
| |
| NetworkConfig.fromJson(core.Map json_) |
| : this( |
| dnsServerIp: json_['dnsServerIp'] as core.String?, |
| managementCidr: json_['managementCidr'] as core.String?, |
| managementIpAddressLayoutVersion: |
| json_['managementIpAddressLayoutVersion'] as core.int?, |
| vmwareEngineNetwork: json_['vmwareEngineNetwork'] as core.String?, |
| vmwareEngineNetworkCanonical: |
| json_['vmwareEngineNetworkCanonical'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final dnsServerIp = this.dnsServerIp; |
| final managementCidr = this.managementCidr; |
| final managementIpAddressLayoutVersion = |
| this.managementIpAddressLayoutVersion; |
| final vmwareEngineNetwork = this.vmwareEngineNetwork; |
| final vmwareEngineNetworkCanonical = this.vmwareEngineNetworkCanonical; |
| return { |
| 'dnsServerIp': ?dnsServerIp, |
| 'managementCidr': ?managementCidr, |
| 'managementIpAddressLayoutVersion': ?managementIpAddressLayoutVersion, |
| 'vmwareEngineNetwork': ?vmwareEngineNetwork, |
| 'vmwareEngineNetworkCanonical': ?vmwareEngineNetworkCanonical, |
| }; |
| } |
| } |
| |
| /// Details of a network peering. |
| class NetworkPeering { |
| /// Creation time of this resource. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// User-provided description for this network peering. |
| /// |
| /// Optional. |
| core.String? description; |
| |
| /// True if full mesh connectivity is created and managed automatically |
| /// between peered networks; false otherwise. |
| /// |
| /// Currently this field is always true because Google Compute Engine |
| /// automatically creates and manages subnetwork routes between two VPC |
| /// networks when peering state is 'ACTIVE'. |
| /// |
| /// Optional. |
| core.bool? exchangeSubnetRoutes; |
| |
| /// True if custom routes are exported to the peered network; false otherwise. |
| /// |
| /// The default value is true. |
| /// |
| /// Optional. |
| core.bool? exportCustomRoutes; |
| |
| /// True if all subnet routes with a public IP address range are exported; |
| /// false otherwise. |
| /// |
| /// The default value is true. IPv4 special-use ranges |
| /// (https://en.wikipedia.org/wiki/IPv4#Special_addresses) are always exported |
| /// to peers and are not controlled by this field. |
| /// |
| /// Optional. |
| core.bool? exportCustomRoutesWithPublicIp; |
| |
| /// True if custom routes are imported from the peered network; false |
| /// otherwise. |
| /// |
| /// The default value is true. |
| /// |
| /// Optional. |
| core.bool? importCustomRoutes; |
| |
| /// True if all subnet routes with public IP address range are imported; false |
| /// otherwise. |
| /// |
| /// The default value is true. IPv4 special-use ranges |
| /// (https://en.wikipedia.org/wiki/IPv4#Special_addresses) are always imported |
| /// to peers and are not controlled by this field. |
| /// |
| /// Optional. |
| core.bool? importCustomRoutesWithPublicIp; |
| |
| /// Identifier. |
| /// |
| /// The resource name of the network peering. NetworkPeering is a global |
| /// resource and location can only be global. Resource names are scheme-less |
| /// URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/global/networkPeerings/my-peering` |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// Maximum transmission unit (MTU) in bytes. |
| /// |
| /// The default value is `1500`. If a value of `0` is provided for this field, |
| /// VMware Engine uses the default value instead. |
| /// |
| /// Optional. |
| core.int? peerMtu; |
| |
| /// The relative resource name of the network to peer with a standard VMware |
| /// Engine network. |
| /// |
| /// The provided network can be a consumer VPC network or another standard |
| /// VMware Engine network. If the `peer_network_type` is |
| /// VMWARE_ENGINE_NETWORK, specify the name in the form: |
| /// `projects/{project}/locations/global/vmwareEngineNetworks/{vmware_engine_network_id}`. |
| /// Otherwise specify the name in the form: |
| /// `projects/{project}/global/networks/{network_id}`, where `{project}` can |
| /// either be a project number or a project ID. |
| /// |
| /// Required. |
| core.String? peerNetwork; |
| |
| /// The type of the network to peer with the VMware Engine network. |
| /// |
| /// Required. |
| /// Possible string values are: |
| /// - "PEER_NETWORK_TYPE_UNSPECIFIED" : Unspecified |
| /// - "STANDARD" : Peering connection used for connecting to another VPC |
| /// network established by the same user. For example, a peering connection to |
| /// another VPC network in the same project or to an on-premises network. |
| /// - "VMWARE_ENGINE_NETWORK" : Peering connection used for connecting to |
| /// another VMware Engine network. |
| /// - "PRIVATE_SERVICES_ACCESS" : Peering connection used for establishing |
| /// [private services access](https://cloud.google.com/vpc/docs/private-services-access). |
| /// - "NETAPP_CLOUD_VOLUMES" : Peering connection used for connecting to |
| /// NetApp Cloud Volumes. |
| /// - "THIRD_PARTY_SERVICE" : Peering connection used for connecting to |
| /// third-party services. Most third-party services require manual setup of |
| /// reverse peering on the VPC network associated with the third-party |
| /// service. |
| /// - "DELL_POWERSCALE" : Peering connection used for connecting to Dell |
| /// PowerScale Filers |
| /// - "GOOGLE_CLOUD_NETAPP_VOLUMES" : Peering connection used for connecting |
| /// to Google Cloud NetApp Volumes. |
| /// - "GOOGLE_CLOUD_FILESTORE_INSTANCES" : Peering connection used for |
| /// connecting to Google Cloud Filestore Instances. |
| core.String? peerNetworkType; |
| |
| /// State of the network peering. |
| /// |
| /// This field has a value of 'ACTIVE' when there's a matching configuration |
| /// in the peer network. New values may be added to this enum when |
| /// appropriate. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "STATE_UNSPECIFIED" : Unspecified network peering state. This is the |
| /// default value. |
| /// - "INACTIVE" : The peering is not active. |
| /// - "ACTIVE" : The peering is active. |
| /// - "CREATING" : The peering is being created. |
| /// - "DELETING" : The peering is being deleted. |
| core.String? state; |
| |
| /// Details about the current state of the network peering. |
| /// |
| /// Output only. |
| core.String? stateDetails; |
| |
| /// System-generated unique identifier for the resource. |
| /// |
| /// Output only. |
| core.String? uid; |
| |
| /// Last update time of this resource. |
| /// |
| /// Output only. |
| core.String? updateTime; |
| |
| /// The relative resource name of the VMware Engine network. |
| /// |
| /// Specify the name in the following form: |
| /// `projects/{project}/locations/{location}/vmwareEngineNetworks/{vmware_engine_network_id}` |
| /// where `{project}` can either be a project number or a project ID. |
| /// |
| /// Required. |
| core.String? vmwareEngineNetwork; |
| |
| NetworkPeering({ |
| this.createTime, |
| this.description, |
| this.exchangeSubnetRoutes, |
| this.exportCustomRoutes, |
| this.exportCustomRoutesWithPublicIp, |
| this.importCustomRoutes, |
| this.importCustomRoutesWithPublicIp, |
| this.name, |
| this.peerMtu, |
| this.peerNetwork, |
| this.peerNetworkType, |
| this.state, |
| this.stateDetails, |
| this.uid, |
| this.updateTime, |
| this.vmwareEngineNetwork, |
| }); |
| |
| NetworkPeering.fromJson(core.Map json_) |
| : this( |
| createTime: json_['createTime'] as core.String?, |
| description: json_['description'] as core.String?, |
| exchangeSubnetRoutes: json_['exchangeSubnetRoutes'] as core.bool?, |
| exportCustomRoutes: json_['exportCustomRoutes'] as core.bool?, |
| exportCustomRoutesWithPublicIp: |
| json_['exportCustomRoutesWithPublicIp'] as core.bool?, |
| importCustomRoutes: json_['importCustomRoutes'] as core.bool?, |
| importCustomRoutesWithPublicIp: |
| json_['importCustomRoutesWithPublicIp'] as core.bool?, |
| name: json_['name'] as core.String?, |
| peerMtu: json_['peerMtu'] as core.int?, |
| peerNetwork: json_['peerNetwork'] as core.String?, |
| peerNetworkType: json_['peerNetworkType'] as core.String?, |
| state: json_['state'] as core.String?, |
| stateDetails: json_['stateDetails'] as core.String?, |
| uid: json_['uid'] as core.String?, |
| updateTime: json_['updateTime'] as core.String?, |
| vmwareEngineNetwork: json_['vmwareEngineNetwork'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final createTime = this.createTime; |
| final description = this.description; |
| final exchangeSubnetRoutes = this.exchangeSubnetRoutes; |
| final exportCustomRoutes = this.exportCustomRoutes; |
| final exportCustomRoutesWithPublicIp = this.exportCustomRoutesWithPublicIp; |
| final importCustomRoutes = this.importCustomRoutes; |
| final importCustomRoutesWithPublicIp = this.importCustomRoutesWithPublicIp; |
| final name = this.name; |
| final peerMtu = this.peerMtu; |
| final peerNetwork = this.peerNetwork; |
| final peerNetworkType = this.peerNetworkType; |
| final state = this.state; |
| final stateDetails = this.stateDetails; |
| final uid = this.uid; |
| final updateTime = this.updateTime; |
| final vmwareEngineNetwork = this.vmwareEngineNetwork; |
| return { |
| 'createTime': ?createTime, |
| 'description': ?description, |
| 'exchangeSubnetRoutes': ?exchangeSubnetRoutes, |
| 'exportCustomRoutes': ?exportCustomRoutes, |
| 'exportCustomRoutesWithPublicIp': ?exportCustomRoutesWithPublicIp, |
| 'importCustomRoutes': ?importCustomRoutes, |
| 'importCustomRoutesWithPublicIp': ?importCustomRoutesWithPublicIp, |
| 'name': ?name, |
| 'peerMtu': ?peerMtu, |
| 'peerNetwork': ?peerNetwork, |
| 'peerNetworkType': ?peerNetworkType, |
| 'state': ?state, |
| 'stateDetails': ?stateDetails, |
| 'uid': ?uid, |
| 'updateTime': ?updateTime, |
| 'vmwareEngineNetwork': ?vmwareEngineNetwork, |
| }; |
| } |
| } |
| |
| /// Represents a network policy resource. |
| /// |
| /// Network policies are regional resources. You can use a network policy to |
| /// enable or disable internet access and external IP access. Network policies |
| /// are associated with a VMware Engine network, which might span across |
| /// regions. For a given region, a network policy applies to all private clouds |
| /// in the VMware Engine network associated with the policy. |
| class NetworkPolicy { |
| /// Creation time of this resource. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// User-provided description for this network policy. |
| /// |
| /// Optional. |
| core.String? description; |
| |
| /// IP address range in CIDR notation used to create internet access and |
| /// external IP access. |
| /// |
| /// An RFC 1918 CIDR block, with a "/26" prefix, is required. The range cannot |
| /// overlap with any prefixes either in the consumer VPC network or in use by |
| /// the private clouds attached to that VPC network. |
| /// |
| /// Required. |
| core.String? edgeServicesCidr; |
| |
| /// Network service that allows External IP addresses to be assigned to VMware |
| /// workloads. |
| /// |
| /// This service can only be enabled when `internet_access` is also enabled. |
| NetworkService? externalIp; |
| |
| /// Network service that allows VMware workloads to access the internet. |
| NetworkService? internetAccess; |
| |
| /// Identifier. |
| /// |
| /// The resource name of this network policy. Resource names are schemeless |
| /// URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/networkPolicies/my-network-policy` |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// System-generated unique identifier for the resource. |
| /// |
| /// Output only. |
| core.String? uid; |
| |
| /// Last update time of this resource. |
| /// |
| /// Output only. |
| core.String? updateTime; |
| |
| /// The relative resource name of the VMware Engine network. |
| /// |
| /// Specify the name in the following form: |
| /// `projects/{project}/locations/{location}/vmwareEngineNetworks/{vmware_engine_network_id}` |
| /// where `{project}` can either be a project number or a project ID. |
| /// |
| /// Optional. |
| core.String? vmwareEngineNetwork; |
| |
| /// The canonical name of the VMware Engine network in the form: |
| /// `projects/{project_number}/locations/{location}/vmwareEngineNetworks/{vmware_engine_network_id}` |
| /// |
| /// Output only. |
| core.String? vmwareEngineNetworkCanonical; |
| |
| NetworkPolicy({ |
| this.createTime, |
| this.description, |
| this.edgeServicesCidr, |
| this.externalIp, |
| this.internetAccess, |
| this.name, |
| this.uid, |
| this.updateTime, |
| this.vmwareEngineNetwork, |
| this.vmwareEngineNetworkCanonical, |
| }); |
| |
| NetworkPolicy.fromJson(core.Map json_) |
| : this( |
| createTime: json_['createTime'] as core.String?, |
| description: json_['description'] as core.String?, |
| edgeServicesCidr: json_['edgeServicesCidr'] as core.String?, |
| externalIp: json_.containsKey('externalIp') |
| ? NetworkService.fromJson( |
| json_['externalIp'] as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| internetAccess: json_.containsKey('internetAccess') |
| ? NetworkService.fromJson( |
| json_['internetAccess'] as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| name: json_['name'] as core.String?, |
| uid: json_['uid'] as core.String?, |
| updateTime: json_['updateTime'] as core.String?, |
| vmwareEngineNetwork: json_['vmwareEngineNetwork'] as core.String?, |
| vmwareEngineNetworkCanonical: |
| json_['vmwareEngineNetworkCanonical'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final createTime = this.createTime; |
| final description = this.description; |
| final edgeServicesCidr = this.edgeServicesCidr; |
| final externalIp = this.externalIp; |
| final internetAccess = this.internetAccess; |
| final name = this.name; |
| final uid = this.uid; |
| final updateTime = this.updateTime; |
| final vmwareEngineNetwork = this.vmwareEngineNetwork; |
| final vmwareEngineNetworkCanonical = this.vmwareEngineNetworkCanonical; |
| return { |
| 'createTime': ?createTime, |
| 'description': ?description, |
| 'edgeServicesCidr': ?edgeServicesCidr, |
| 'externalIp': ?externalIp, |
| 'internetAccess': ?internetAccess, |
| 'name': ?name, |
| 'uid': ?uid, |
| 'updateTime': ?updateTime, |
| 'vmwareEngineNetwork': ?vmwareEngineNetwork, |
| 'vmwareEngineNetworkCanonical': ?vmwareEngineNetworkCanonical, |
| }; |
| } |
| } |
| |
| /// Represents a network service that is managed by a `NetworkPolicy` resource. |
| /// |
| /// A network service provides a way to control an aspect of external access to |
| /// VMware workloads. For example, whether the VMware workloads in the private |
| /// clouds governed by a network policy can access or be accessed from the |
| /// internet. |
| class NetworkService { |
| /// True if the service is enabled; false otherwise. |
| core.bool? enabled; |
| |
| /// State of the service. |
| /// |
| /// New values may be added to this enum when appropriate. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "STATE_UNSPECIFIED" : Unspecified service state. This is the default |
| /// value. |
| /// - "UNPROVISIONED" : Service is not provisioned. |
| /// - "RECONCILING" : Service is in the process of being |
| /// provisioned/deprovisioned. |
| /// - "ACTIVE" : Service is active. |
| core.String? state; |
| |
| NetworkService({this.enabled, this.state}); |
| |
| NetworkService.fromJson(core.Map json_) |
| : this( |
| enabled: json_['enabled'] as core.bool?, |
| state: json_['state'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final enabled = this.enabled; |
| final state = this.state; |
| return {'enabled': ?enabled, 'state': ?state}; |
| } |
| } |
| |
| /// The NFS datastore configuration. |
| class NfsDatastore { |
| /// Google service file service configuration |
| GoogleFileService? googleFileService; |
| |
| /// GCVE file service configuration |
| GoogleVmwareFileService? googleVmwareFileService; |
| |
| /// Third party file service configuration |
| ThirdPartyFileService? thirdPartyFileService; |
| |
| NfsDatastore({ |
| this.googleFileService, |
| this.googleVmwareFileService, |
| this.thirdPartyFileService, |
| }); |
| |
| NfsDatastore.fromJson(core.Map json_) |
| : this( |
| googleFileService: json_.containsKey('googleFileService') |
| ? GoogleFileService.fromJson( |
| json_['googleFileService'] |
| as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| googleVmwareFileService: json_.containsKey('googleVmwareFileService') |
| ? GoogleVmwareFileService.fromJson( |
| json_['googleVmwareFileService'] |
| as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| thirdPartyFileService: json_.containsKey('thirdPartyFileService') |
| ? ThirdPartyFileService.fromJson( |
| json_['thirdPartyFileService'] |
| as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final googleFileService = this.googleFileService; |
| final googleVmwareFileService = this.googleVmwareFileService; |
| final thirdPartyFileService = this.thirdPartyFileService; |
| return { |
| 'googleFileService': ?googleFileService, |
| 'googleVmwareFileService': ?googleVmwareFileService, |
| 'thirdPartyFileService': ?thirdPartyFileService, |
| }; |
| } |
| } |
| |
| /// Node in a cluster. |
| class Node { |
| /// Customized number of cores |
| /// |
| /// Output only. |
| core.String? customCoreCount; |
| |
| /// Fully qualified domain name of the node. |
| /// |
| /// Output only. |
| core.String? fqdn; |
| |
| /// Internal IP address of the node. |
| /// |
| /// Output only. |
| core.String? internalIp; |
| |
| /// The resource name of this node. |
| /// |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/my-cluster/nodes/my-node |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// The canonical identifier of the node type (corresponds to the `NodeType`). |
| /// |
| /// For example: standard-72. |
| /// |
| /// Output only. |
| core.String? nodeTypeId; |
| |
| /// The state of the appliance. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "STATE_UNSPECIFIED" : The default value. This value should never be |
| /// used. |
| /// - "ACTIVE" : Node is operational and can be used by the user. |
| /// - "CREATING" : Node is being provisioned. |
| /// - "FAILED" : Node is in a failed state. |
| /// - "UPGRADING" : Node is undergoing maintenance, e.g.: during private cloud |
| /// upgrade. |
| core.String? state; |
| |
| /// The version number of the VMware ESXi management component in this |
| /// cluster. |
| /// |
| /// Output only. |
| core.String? version; |
| |
| Node({ |
| this.customCoreCount, |
| this.fqdn, |
| this.internalIp, |
| this.name, |
| this.nodeTypeId, |
| this.state, |
| this.version, |
| }); |
| |
| Node.fromJson(core.Map json_) |
| : this( |
| customCoreCount: json_['customCoreCount'] as core.String?, |
| fqdn: json_['fqdn'] as core.String?, |
| internalIp: json_['internalIp'] as core.String?, |
| name: json_['name'] as core.String?, |
| nodeTypeId: json_['nodeTypeId'] as core.String?, |
| state: json_['state'] as core.String?, |
| version: json_['version'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final customCoreCount = this.customCoreCount; |
| final fqdn = this.fqdn; |
| final internalIp = this.internalIp; |
| final name = this.name; |
| final nodeTypeId = this.nodeTypeId; |
| final state = this.state; |
| final version = this.version; |
| return { |
| 'customCoreCount': ?customCoreCount, |
| 'fqdn': ?fqdn, |
| 'internalIp': ?internalIp, |
| 'name': ?name, |
| 'nodeTypeId': ?nodeTypeId, |
| 'state': ?state, |
| 'version': ?version, |
| }; |
| } |
| } |
| |
| /// Describes node type. |
| class NodeType { |
| /// List of possible values of custom core count. |
| /// |
| /// Output only. |
| core.List<core.int>? availableCustomCoreCounts; |
| |
| /// Capabilities of this node type. |
| /// |
| /// Output only. |
| core.List<core.String>? capabilities; |
| |
| /// The amount of storage available, defined in GB. |
| /// |
| /// Output only. |
| core.int? diskSizeGb; |
| |
| /// The friendly name for this node type. |
| /// |
| /// For example: ve1-standard-72 |
| /// |
| /// Output only. |
| core.String? displayName; |
| |
| /// Families of the node type. |
| /// |
| /// For node types to be in the same cluster they must share at least one |
| /// element in the `families`. |
| /// |
| /// Output only. |
| core.List<core.String>? families; |
| |
| /// The type of the resource. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "KIND_UNSPECIFIED" : The default value. This value should never be used. |
| /// - "STANDARD" : Standard HCI node. |
| /// - "STORAGE_ONLY" : Storage only Node. |
| core.String? kind; |
| |
| /// The amount of physical memory available, defined in GB. |
| /// |
| /// Output only. |
| core.int? memoryGb; |
| |
| /// The resource name of this node type. |
| /// |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-proj/locations/us-central1-a/nodeTypes/standard-72` |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// The canonical identifier of the node type (corresponds to the `NodeType`). |
| /// |
| /// For example: standard-72. |
| /// |
| /// Output only. |
| core.String? nodeTypeId; |
| |
| /// The total number of CPU cores in a single node. |
| /// |
| /// Output only. |
| core.int? totalCoreCount; |
| |
| /// The total number of virtual CPUs in a single node. |
| /// |
| /// Output only. |
| core.int? virtualCpuCount; |
| |
| NodeType({ |
| this.availableCustomCoreCounts, |
| this.capabilities, |
| this.diskSizeGb, |
| this.displayName, |
| this.families, |
| this.kind, |
| this.memoryGb, |
| this.name, |
| this.nodeTypeId, |
| this.totalCoreCount, |
| this.virtualCpuCount, |
| }); |
| |
| NodeType.fromJson(core.Map json_) |
| : this( |
| availableCustomCoreCounts: |
| (json_['availableCustomCoreCounts'] as core.List?) |
| ?.map((value) => value as core.int) |
| .toList(), |
| capabilities: (json_['capabilities'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| diskSizeGb: json_['diskSizeGb'] as core.int?, |
| displayName: json_['displayName'] as core.String?, |
| families: (json_['families'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| kind: json_['kind'] as core.String?, |
| memoryGb: json_['memoryGb'] as core.int?, |
| name: json_['name'] as core.String?, |
| nodeTypeId: json_['nodeTypeId'] as core.String?, |
| totalCoreCount: json_['totalCoreCount'] as core.int?, |
| virtualCpuCount: json_['virtualCpuCount'] as core.int?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final availableCustomCoreCounts = this.availableCustomCoreCounts; |
| final capabilities = this.capabilities; |
| final diskSizeGb = this.diskSizeGb; |
| final displayName = this.displayName; |
| final families = this.families; |
| final kind = this.kind; |
| final memoryGb = this.memoryGb; |
| final name = this.name; |
| final nodeTypeId = this.nodeTypeId; |
| final totalCoreCount = this.totalCoreCount; |
| final virtualCpuCount = this.virtualCpuCount; |
| return { |
| 'availableCustomCoreCounts': ?availableCustomCoreCounts, |
| 'capabilities': ?capabilities, |
| 'diskSizeGb': ?diskSizeGb, |
| 'displayName': ?displayName, |
| 'families': ?families, |
| 'kind': ?kind, |
| 'memoryGb': ?memoryGb, |
| 'name': ?name, |
| 'nodeTypeId': ?nodeTypeId, |
| 'totalCoreCount': ?totalCoreCount, |
| 'virtualCpuCount': ?virtualCpuCount, |
| }; |
| } |
| } |
| |
| /// Information about the type and number of nodes associated with the cluster. |
| class NodeTypeConfig { |
| /// Customized number of cores available to each node of the type. |
| /// |
| /// This number must always be one of `nodeType.availableCustomCoreCounts`. If |
| /// zero is provided max value from `nodeType.availableCustomCoreCounts` will |
| /// be used. |
| /// |
| /// Optional. |
| core.int? customCoreCount; |
| |
| /// The number of nodes of this type in the cluster |
| /// |
| /// Required. |
| core.int? nodeCount; |
| |
| NodeTypeConfig({this.customCoreCount, this.nodeCount}); |
| |
| NodeTypeConfig.fromJson(core.Map json_) |
| : this( |
| customCoreCount: json_['customCoreCount'] as core.int?, |
| nodeCount: json_['nodeCount'] as core.int?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final customCoreCount = this.customCoreCount; |
| final nodeCount = this.nodeCount; |
| return {'customCoreCount': ?customCoreCount, 'nodeCount': ?nodeCount}; |
| } |
| } |
| |
| /// Details about a NSX Manager appliance. |
| typedef Nsx = $Shared22; |
| |
| /// This resource represents a long-running operation that is the result of a |
| /// network API call. |
| class Operation { |
| /// If the value is `false`, it means the operation is still in progress. |
| /// |
| /// If `true`, the operation is completed, and either `error` or `response` is |
| /// available. |
| core.bool? done; |
| |
| /// The error result of the operation in case of failure or cancellation. |
| Status? error; |
| |
| /// Service-specific metadata associated with the operation. |
| /// |
| /// It typically contains progress information and common metadata such as |
| /// create time. Some services might not provide such metadata. Any method |
| /// that returns a long-running operation should document the metadata type, |
| /// if any. |
| /// |
| /// The values for Object must be JSON objects. It can consist of `num`, |
| /// `String`, `bool` and `null` as well as `Map` and `List` values. |
| core.Map<core.String, core.Object?>? metadata; |
| |
| /// The server-assigned name, which is only unique within the same service |
| /// that originally returns it. |
| /// |
| /// If you use the default HTTP mapping, the `name` should be a resource name |
| /// ending with `operations/{unique_id}`. |
| core.String? name; |
| |
| /// The normal, successful response of the operation. |
| /// |
| /// If the original method returns no data on success, such as `Delete`, the |
| /// response is `google.protobuf.Empty`. If the original method is standard |
| /// `Get`/`Create`/`Update`, the response should be the resource. For other |
| /// methods, the response should have the type `XxxResponse`, where `Xxx` is |
| /// the original method name. For example, if the original method name is |
| /// `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. |
| /// |
| /// The values for Object must be JSON objects. It can consist of `num`, |
| /// `String`, `bool` and `null` as well as `Map` and `List` values. |
| core.Map<core.String, core.Object?>? response; |
| |
| Operation({this.done, this.error, this.metadata, this.name, this.response}); |
| |
| Operation.fromJson(core.Map json_) |
| : this( |
| done: json_['done'] as core.bool?, |
| error: json_.containsKey('error') |
| ? Status.fromJson( |
| json_['error'] as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| metadata: json_.containsKey('metadata') |
| ? json_['metadata'] as core.Map<core.String, core.dynamic> |
| : null, |
| name: json_['name'] as core.String?, |
| response: json_.containsKey('response') |
| ? json_['response'] as core.Map<core.String, core.dynamic> |
| : null, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final done = this.done; |
| final error = this.error; |
| final metadata = this.metadata; |
| final name = this.name; |
| final response = this.response; |
| return { |
| 'done': ?done, |
| 'error': ?error, |
| 'metadata': ?metadata, |
| 'name': ?name, |
| 'response': ?response, |
| }; |
| } |
| } |
| |
| /// Exchanged network peering route. |
| class PeeringRoute { |
| /// Destination range of the peering route in CIDR notation. |
| /// |
| /// Output only. |
| core.String? destRange; |
| |
| /// Direction of the routes exchanged with the peer network, from the VMware |
| /// Engine network perspective: * Routes of direction `INCOMING` are imported |
| /// from the peer network. |
| /// |
| /// * Routes of direction `OUTGOING` are exported from the intranet VPC |
| /// network of the VMware Engine network. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "DIRECTION_UNSPECIFIED" : Unspecified exchanged routes direction. This |
| /// is default. |
| /// - "INCOMING" : Routes imported from the peer network. |
| /// - "OUTGOING" : Routes exported to the peer network. |
| core.String? direction; |
| |
| /// True if the peering route has been imported from a peered VPC network; |
| /// false otherwise. |
| /// |
| /// The import happens if the field `NetworkPeering.importCustomRoutes` is |
| /// true for this network, `NetworkPeering.exportCustomRoutes` is true for the |
| /// peer VPC network, and the import does not result in a route conflict. |
| /// |
| /// Output only. |
| core.bool? imported; |
| |
| /// Region containing the next hop of the peering route. |
| /// |
| /// This field only applies to dynamic routes in the peer VPC network. |
| /// |
| /// Output only. |
| core.String? nextHopRegion; |
| |
| /// The priority of the peering route. |
| /// |
| /// Output only. |
| core.String? priority; |
| |
| /// Type of the route in the peer VPC network. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "TYPE_UNSPECIFIED" : Unspecified peering route type. This is the default |
| /// value. |
| /// - "DYNAMIC_PEERING_ROUTE" : Dynamic routes in the peer network. |
| /// - "STATIC_PEERING_ROUTE" : Static routes in the peer network. |
| /// - "SUBNET_PEERING_ROUTE" : Created, updated, and removed automatically by |
| /// Google Cloud when subnets are created, modified, or deleted in the peer |
| /// network. |
| core.String? type; |
| |
| PeeringRoute({ |
| this.destRange, |
| this.direction, |
| this.imported, |
| this.nextHopRegion, |
| this.priority, |
| this.type, |
| }); |
| |
| PeeringRoute.fromJson(core.Map json_) |
| : this( |
| destRange: json_['destRange'] as core.String?, |
| direction: json_['direction'] as core.String?, |
| imported: json_['imported'] as core.bool?, |
| nextHopRegion: json_['nextHopRegion'] as core.String?, |
| priority: json_['priority'] as core.String?, |
| type: json_['type'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final destRange = this.destRange; |
| final direction = this.direction; |
| final imported = this.imported; |
| final nextHopRegion = this.nextHopRegion; |
| final priority = this.priority; |
| final type = this.type; |
| return { |
| 'destRange': ?destRange, |
| 'direction': ?direction, |
| 'imported': ?imported, |
| 'nextHopRegion': ?nextHopRegion, |
| 'priority': ?priority, |
| 'type': ?type, |
| }; |
| } |
| } |
| |
| /// An Identity and Access Management (IAM) policy, which specifies access |
| /// controls for Google Cloud resources. |
| /// |
| /// A `Policy` is a collection of `bindings`. A `binding` binds one or more |
| /// `members`, or principals, to a single `role`. Principals can be user |
| /// accounts, service accounts, Google groups, and domains (such as G Suite). A |
| /// `role` is a named list of permissions; each `role` can be an IAM predefined |
| /// role or a user-created custom role. For some types of Google Cloud |
| /// resources, a `binding` can also specify a `condition`, which is a logical |
| /// expression that allows access to a resource only if the expression evaluates |
| /// to `true`. A condition can add constraints based on attributes of the |
| /// request, the resource, or both. To learn which resources support conditions |
| /// in their IAM policies, see the |
| /// [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). |
| /// **JSON example:** ``` { "bindings": [ { "role": |
| /// "roles/resourcemanager.organizationAdmin", "members": [ |
| /// "user:mike@example.com", "group:admins@example.com", "domain:google.com", |
| /// "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role": |
| /// "roles/resourcemanager.organizationViewer", "members": [ |
| /// "user:eve@example.com" ], "condition": { "title": "expirable access", |
| /// "description": "Does not grant access after Sep 2020", "expression": |
| /// "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag": |
| /// "BwWWja0YfJA=", "version": 3 } ``` **YAML example:** ``` bindings: - |
| /// members: - user:mike@example.com - group:admins@example.com - |
| /// domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com |
| /// role: roles/resourcemanager.organizationAdmin - members: - |
| /// user:eve@example.com role: roles/resourcemanager.organizationViewer |
| /// condition: title: expirable access description: Does not grant access after |
| /// Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') |
| /// etag: BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, |
| /// see the [IAM documentation](https://cloud.google.com/iam/docs/). |
| class Policy { |
| /// Specifies cloud audit logging configuration for this policy. |
| core.List<AuditConfig>? auditConfigs; |
| |
| /// Associates a list of `members`, or principals, with a `role`. |
| /// |
| /// Optionally, may specify a `condition` that determines how and when the |
| /// `bindings` are applied. Each of the `bindings` must contain at least one |
| /// principal. The `bindings` in a `Policy` can refer to up to 1,500 |
| /// principals; up to 250 of these principals can be Google groups. Each |
| /// occurrence of a principal counts towards these limits. For example, if the |
| /// `bindings` grant 50 different roles to `user:alice@example.com`, and not |
| /// to any other principal, then you can add another 1,450 principals to the |
| /// `bindings` in the `Policy`. |
| core.List<Binding>? bindings; |
| |
| /// `etag` is used for optimistic concurrency control as a way to help prevent |
| /// simultaneous updates of a policy from overwriting each other. |
| /// |
| /// It is strongly suggested that systems make use of the `etag` in the |
| /// read-modify-write cycle to perform policy updates in order to avoid race |
| /// conditions: An `etag` is returned in the response to `getIamPolicy`, and |
| /// systems are expected to put that etag in the request to `setIamPolicy` to |
| /// ensure that their change will be applied to the same version of the |
| /// policy. **Important:** If you use IAM Conditions, you must include the |
| /// `etag` field whenever you call `setIamPolicy`. If you omit this field, |
| /// then IAM allows you to overwrite a version `3` policy with a version `1` |
| /// policy, and all of the conditions in the version `3` policy are lost. |
| core.String? etag; |
| core.List<core.int> get etagAsBytes => convert.base64.decode(etag!); |
| |
| set etagAsBytes(core.List<core.int> bytes_) { |
| etag = convert.base64 |
| .encode(bytes_) |
| .replaceAll('/', '_') |
| .replaceAll('+', '-'); |
| } |
| |
| /// Specifies the format of the policy. |
| /// |
| /// Valid values are `0`, `1`, and `3`. Requests that specify an invalid value |
| /// are rejected. Any operation that affects conditional role bindings must |
| /// specify version `3`. This requirement applies to the following operations: |
| /// * Getting a policy that includes a conditional role binding * Adding a |
| /// conditional role binding to a policy * Changing a conditional role binding |
| /// in a policy * Removing any role binding, with or without a condition, from |
| /// a policy that includes conditions **Important:** If you use IAM |
| /// Conditions, you must include the `etag` field whenever you call |
| /// `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a |
| /// version `3` policy with a version `1` policy, and all of the conditions in |
| /// the version `3` policy are lost. If a policy does not include any |
| /// conditions, operations on that policy may specify any valid version or |
| /// leave the field unset. To learn which resources support conditions in |
| /// their IAM policies, see the |
| /// [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). |
| core.int? version; |
| |
| Policy({this.auditConfigs, this.bindings, this.etag, this.version}); |
| |
| Policy.fromJson(core.Map json_) |
| : this( |
| auditConfigs: (json_['auditConfigs'] as core.List?) |
| ?.map( |
| (value) => AuditConfig.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| bindings: (json_['bindings'] as core.List?) |
| ?.map( |
| (value) => Binding.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| etag: json_['etag'] as core.String?, |
| version: json_['version'] as core.int?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final auditConfigs = this.auditConfigs; |
| final bindings = this.bindings; |
| final etag = this.etag; |
| final version = this.version; |
| return { |
| 'auditConfigs': ?auditConfigs, |
| 'bindings': ?bindings, |
| 'etag': ?etag, |
| 'version': ?version, |
| }; |
| } |
| } |
| |
| /// Users/Service accounts which have access for DNS binding on the intranet VPC |
| /// corresponding to the consumer project. |
| class Principal { |
| /// The service account which needs to be granted the permission. |
| core.String? serviceAccount; |
| |
| /// The user who needs to be granted permission. |
| core.String? user; |
| |
| Principal({this.serviceAccount, this.user}); |
| |
| Principal.fromJson(core.Map json_) |
| : this( |
| serviceAccount: json_['serviceAccount'] as core.String?, |
| user: json_['user'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final serviceAccount = this.serviceAccount; |
| final user = this.user; |
| return {'serviceAccount': ?serviceAccount, 'user': ?user}; |
| } |
| } |
| |
| /// Represents a private cloud resource. |
| /// |
| /// Private clouds of type `STANDARD` and `TIME_LIMITED` are zonal resources, |
| /// `STRETCHED` private clouds are regional. |
| class PrivateCloud { |
| /// Creation time of this resource. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// Time when the resource was scheduled for deletion. |
| /// |
| /// Output only. |
| core.String? deleteTime; |
| |
| /// User-provided description for this private cloud. |
| core.String? description; |
| |
| /// Time when the resource will be irreversibly deleted. |
| /// |
| /// Output only. |
| core.String? expireTime; |
| |
| /// HCX appliance. |
| /// |
| /// Output only. |
| Hcx? hcx; |
| |
| /// Input only. |
| /// |
| /// The management cluster for this private cloud. This field is required |
| /// during creation of the private cloud to provide details for the default |
| /// cluster. The following fields can't be changed after private cloud |
| /// creation: `ManagementCluster.clusterId`, `ManagementCluster.nodeTypeId`. |
| /// |
| /// Required. |
| ManagementCluster? managementCluster; |
| |
| /// Identifier. |
| /// |
| /// The resource name of this private cloud. Resource names are schemeless |
| /// URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud` |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// Network configuration of the private cloud. |
| /// |
| /// Required. |
| NetworkConfig? networkConfig; |
| |
| /// NSX appliance. |
| /// |
| /// Output only. |
| Nsx? nsx; |
| |
| /// State of the resource. |
| /// |
| /// New values may be added to this enum when appropriate. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "STATE_UNSPECIFIED" : The default value. This value should never be |
| /// used. |
| /// - "ACTIVE" : The private cloud is ready. |
| /// - "CREATING" : The private cloud is being created. |
| /// - "UPDATING" : The private cloud is being updated. |
| /// - "FAILED" : The private cloud is in failed state. |
| /// - "DELETED" : The private cloud is scheduled for deletion. The deletion |
| /// process can be cancelled by using the corresponding undelete method. |
| /// - "PURGING" : The private cloud is irreversibly deleted and is being |
| /// removed from the system. |
| core.String? state; |
| |
| /// Type of the private cloud. |
| /// |
| /// Defaults to STANDARD. |
| /// |
| /// Optional. |
| /// Possible string values are: |
| /// - "STANDARD" : Standard private is a zonal resource, with 3+ nodes. |
| /// Default type. |
| /// - "TIME_LIMITED" : Time limited private cloud is a zonal resource, can |
| /// have only 1 node and has limited life span. Will be deleted after defined |
| /// period of time, can be converted into standard private cloud by expanding |
| /// it up to 3 or more nodes. |
| /// - "STRETCHED" : Stretched private cloud is a regional resource with |
| /// redundancy, with a minimum of 6 nodes, nodes count has to be even. |
| core.String? type; |
| |
| /// System-generated unique identifier for the resource. |
| /// |
| /// Output only. |
| core.String? uid; |
| |
| /// Last update time of this resource. |
| /// |
| /// Output only. |
| core.String? updateTime; |
| |
| /// Vcenter appliance. |
| /// |
| /// Output only. |
| Vcenter? vcenter; |
| |
| PrivateCloud({ |
| this.createTime, |
| this.deleteTime, |
| this.description, |
| this.expireTime, |
| this.hcx, |
| this.managementCluster, |
| this.name, |
| this.networkConfig, |
| this.nsx, |
| this.state, |
| this.type, |
| this.uid, |
| this.updateTime, |
| this.vcenter, |
| }); |
| |
| PrivateCloud.fromJson(core.Map json_) |
| : this( |
| createTime: json_['createTime'] as core.String?, |
| deleteTime: json_['deleteTime'] as core.String?, |
| description: json_['description'] as core.String?, |
| expireTime: json_['expireTime'] as core.String?, |
| hcx: json_.containsKey('hcx') |
| ? Hcx.fromJson(json_['hcx'] as core.Map<core.String, core.dynamic>) |
| : null, |
| managementCluster: json_.containsKey('managementCluster') |
| ? ManagementCluster.fromJson( |
| json_['managementCluster'] |
| as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| name: json_['name'] as core.String?, |
| networkConfig: json_.containsKey('networkConfig') |
| ? NetworkConfig.fromJson( |
| json_['networkConfig'] as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| nsx: json_.containsKey('nsx') |
| ? Nsx.fromJson(json_['nsx'] as core.Map<core.String, core.dynamic>) |
| : null, |
| state: json_['state'] as core.String?, |
| type: json_['type'] as core.String?, |
| uid: json_['uid'] as core.String?, |
| updateTime: json_['updateTime'] as core.String?, |
| vcenter: json_.containsKey('vcenter') |
| ? Vcenter.fromJson( |
| json_['vcenter'] as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final createTime = this.createTime; |
| final deleteTime = this.deleteTime; |
| final description = this.description; |
| final expireTime = this.expireTime; |
| final hcx = this.hcx; |
| final managementCluster = this.managementCluster; |
| final name = this.name; |
| final networkConfig = this.networkConfig; |
| final nsx = this.nsx; |
| final state = this.state; |
| final type = this.type; |
| final uid = this.uid; |
| final updateTime = this.updateTime; |
| final vcenter = this.vcenter; |
| return { |
| 'createTime': ?createTime, |
| 'deleteTime': ?deleteTime, |
| 'description': ?description, |
| 'expireTime': ?expireTime, |
| 'hcx': ?hcx, |
| 'managementCluster': ?managementCluster, |
| 'name': ?name, |
| 'networkConfig': ?networkConfig, |
| 'nsx': ?nsx, |
| 'state': ?state, |
| 'type': ?type, |
| 'uid': ?uid, |
| 'updateTime': ?updateTime, |
| 'vcenter': ?vcenter, |
| }; |
| } |
| } |
| |
| /// Private connection resource that provides connectivity for VMware Engine |
| /// private clouds. |
| class PrivateConnection { |
| /// Creation time of this resource. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// User-provided description for this private connection. |
| /// |
| /// Optional. |
| core.String? description; |
| |
| /// The resource name of the private connection. |
| /// |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/privateConnections/my-connection` |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// VPC network peering id between given network VPC and VMwareEngineNetwork. |
| /// |
| /// Output only. |
| core.String? peeringId; |
| |
| /// Peering state between service network and VMware Engine network. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "PEERING_STATE_UNSPECIFIED" : The default value. This value is used if |
| /// the peering state is omitted or unknown. |
| /// - "PEERING_ACTIVE" : The peering is in active state. |
| /// - "PEERING_INACTIVE" : The peering is in inactive state. |
| core.String? peeringState; |
| |
| /// Routing Mode. |
| /// |
| /// Default value is set to GLOBAL. For type = PRIVATE_SERVICE_ACCESS, this |
| /// field can be set to GLOBAL or REGIONAL, for other types only GLOBAL is |
| /// supported. |
| /// |
| /// Optional. |
| /// Possible string values are: |
| /// - "ROUTING_MODE_UNSPECIFIED" : The default value. This value should never |
| /// be used. |
| /// - "GLOBAL" : Global Routing Mode |
| /// - "REGIONAL" : Regional Routing Mode |
| core.String? routingMode; |
| |
| /// Service network to create private connection. |
| /// |
| /// Specify the name in the following form: |
| /// `projects/{project}/global/networks/{network_id}` For type = |
| /// PRIVATE_SERVICE_ACCESS, this field represents servicenetworking VPC, e.g. |
| /// projects/project-tp/global/networks/servicenetworking. For type = |
| /// NETAPP_CLOUD_VOLUME, this field represents NetApp service VPC, e.g. |
| /// projects/project-tp/global/networks/netapp-tenant-vpc. For type = |
| /// DELL_POWERSCALE, this field represent Dell service VPC, e.g. |
| /// projects/project-tp/global/networks/dell-tenant-vpc. For type= |
| /// THIRD_PARTY_SERVICE, this field could represent a consumer VPC or any |
| /// other producer VPC to which the VMware Engine Network needs to be |
| /// connected, e.g. projects/project/global/networks/vpc. |
| /// |
| /// Required. |
| core.String? serviceNetwork; |
| |
| /// State of the private connection. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "STATE_UNSPECIFIED" : The default value. This value is used if the state |
| /// is omitted. |
| /// - "CREATING" : The private connection is being created. |
| /// - "ACTIVE" : The private connection is ready. |
| /// - "UPDATING" : The private connection is being updated. |
| /// - "DELETING" : The private connection is being deleted. |
| /// - "UNPROVISIONED" : The private connection is not provisioned, since no |
| /// private cloud is present for which this private connection is needed. |
| /// - "FAILED" : The private connection is in failed state. |
| core.String? state; |
| |
| /// Private connection type. |
| /// |
| /// Required. |
| /// Possible string values are: |
| /// - "TYPE_UNSPECIFIED" : The default value. This value should never be used. |
| /// - "PRIVATE_SERVICE_ACCESS" : Connection used for establishing |
| /// [private services access](https://cloud.google.com/vpc/docs/private-services-access). |
| /// - "NETAPP_CLOUD_VOLUMES" : Connection used for connecting to NetApp Cloud |
| /// Volumes. |
| /// - "DELL_POWERSCALE" : Connection used for connecting to Dell PowerScale. |
| /// - "THIRD_PARTY_SERVICE" : Connection used for connecting to third-party |
| /// services. |
| core.String? type; |
| |
| /// System-generated unique identifier for the resource. |
| /// |
| /// Output only. |
| core.String? uid; |
| |
| /// Last update time of this resource. |
| /// |
| /// Output only. |
| core.String? updateTime; |
| |
| /// The relative resource name of Legacy VMware Engine network. |
| /// |
| /// Specify the name in the following form: |
| /// `projects/{project}/locations/{location}/vmwareEngineNetworks/{vmware_engine_network_id}` |
| /// where `{project}`, `{location}` will be same as specified in private |
| /// connection resource name and `{vmware_engine_network_id}` will be in the |
| /// form of `{location}`-default e.g. |
| /// projects/project/locations/us-central1/vmwareEngineNetworks/us-central1-default. |
| /// |
| /// Required. |
| core.String? vmwareEngineNetwork; |
| |
| /// The canonical name of the VMware Engine network in the form: |
| /// `projects/{project_number}/locations/{location}/vmwareEngineNetworks/{vmware_engine_network_id}` |
| /// |
| /// Output only. |
| core.String? vmwareEngineNetworkCanonical; |
| |
| PrivateConnection({ |
| this.createTime, |
| this.description, |
| this.name, |
| this.peeringId, |
| this.peeringState, |
| this.routingMode, |
| this.serviceNetwork, |
| this.state, |
| this.type, |
| this.uid, |
| this.updateTime, |
| this.vmwareEngineNetwork, |
| this.vmwareEngineNetworkCanonical, |
| }); |
| |
| PrivateConnection.fromJson(core.Map json_) |
| : this( |
| createTime: json_['createTime'] as core.String?, |
| description: json_['description'] as core.String?, |
| name: json_['name'] as core.String?, |
| peeringId: json_['peeringId'] as core.String?, |
| peeringState: json_['peeringState'] as core.String?, |
| routingMode: json_['routingMode'] as core.String?, |
| serviceNetwork: json_['serviceNetwork'] as core.String?, |
| state: json_['state'] as core.String?, |
| type: json_['type'] as core.String?, |
| uid: json_['uid'] as core.String?, |
| updateTime: json_['updateTime'] as core.String?, |
| vmwareEngineNetwork: json_['vmwareEngineNetwork'] as core.String?, |
| vmwareEngineNetworkCanonical: |
| json_['vmwareEngineNetworkCanonical'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final createTime = this.createTime; |
| final description = this.description; |
| final name = this.name; |
| final peeringId = this.peeringId; |
| final peeringState = this.peeringState; |
| final routingMode = this.routingMode; |
| final serviceNetwork = this.serviceNetwork; |
| final state = this.state; |
| final type = this.type; |
| final uid = this.uid; |
| final updateTime = this.updateTime; |
| final vmwareEngineNetwork = this.vmwareEngineNetwork; |
| final vmwareEngineNetworkCanonical = this.vmwareEngineNetworkCanonical; |
| return { |
| 'createTime': ?createTime, |
| 'description': ?description, |
| 'name': ?name, |
| 'peeringId': ?peeringId, |
| 'peeringState': ?peeringState, |
| 'routingMode': ?routingMode, |
| 'serviceNetwork': ?serviceNetwork, |
| 'state': ?state, |
| 'type': ?type, |
| 'uid': ?uid, |
| 'updateTime': ?updateTime, |
| 'vmwareEngineNetwork': ?vmwareEngineNetwork, |
| 'vmwareEngineNetworkCanonical': ?vmwareEngineNetworkCanonical, |
| }; |
| } |
| } |
| |
| /// Request message for VmwareEngine.RepairManagementDnsZoneBindings |
| class RepairManagementDnsZoneBindingRequest { |
| /// A request ID to identify requests. |
| /// |
| /// Specify a unique request ID so that if you must retry your request, the |
| /// server will know to ignore the request if it has already been completed. |
| /// The server guarantees that a request doesn't result in creation of |
| /// duplicate commitments for at least 60 minutes. For example, consider a |
| /// situation where you make an initial request and the request times out. If |
| /// you make the request again with the same request ID, the server can check |
| /// if the original operation with the same request ID was received, and if |
| /// so, will ignore the second request. This prevents clients from |
| /// accidentally creating duplicate commitments. The request ID must be a |
| /// valid UUID with the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// Optional. |
| core.String? requestId; |
| |
| RepairManagementDnsZoneBindingRequest({this.requestId}); |
| |
| RepairManagementDnsZoneBindingRequest.fromJson(core.Map json_) |
| : this(requestId: json_['requestId'] as core.String?); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final requestId = this.requestId; |
| return {'requestId': ?requestId}; |
| } |
| } |
| |
| /// Request message for VmwareEngine.ResetNsxCredentials |
| class ResetNsxCredentialsRequest { |
| /// A request ID to identify requests. |
| /// |
| /// Specify a unique request ID so that if you must retry your request, the |
| /// server will know to ignore the request if it has already been completed. |
| /// The server guarantees that a request doesn't result in creation of |
| /// duplicate commitments for at least 60 minutes. For example, consider a |
| /// situation where you make an initial request and the request times out. If |
| /// you make the request again with the same request ID, the server can check |
| /// if original operation with the same request ID was received, and if so, |
| /// will ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// Optional. |
| core.String? requestId; |
| |
| ResetNsxCredentialsRequest({this.requestId}); |
| |
| ResetNsxCredentialsRequest.fromJson(core.Map json_) |
| : this(requestId: json_['requestId'] as core.String?); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final requestId = this.requestId; |
| return {'requestId': ?requestId}; |
| } |
| } |
| |
| /// Request message for VmwareEngine.ResetVcenterCredentials |
| class ResetVcenterCredentialsRequest { |
| /// A request ID to identify requests. |
| /// |
| /// Specify a unique request ID so that if you must retry your request, the |
| /// server will know to ignore the request if it has already been completed. |
| /// The server guarantees that a request doesn't result in creation of |
| /// duplicate commitments for at least 60 minutes. For example, consider a |
| /// situation where you make an initial request and the request times out. If |
| /// you make the request again with the same request ID, the server can check |
| /// if original operation with the same request ID was received, and if so, |
| /// will ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// Optional. |
| core.String? requestId; |
| |
| /// The username of the user to be to reset the credentials. |
| /// |
| /// The default value of this field is CloudOwner@gve.local. The provided |
| /// value should be one of the following: solution-user-01@gve.local, |
| /// solution-user-02@gve.local, solution-user-03@gve.local, |
| /// solution-user-04@gve.local, solution-user-05@gve.local, |
| /// zertoadmin@gve.local. |
| /// |
| /// Optional. |
| core.String? username; |
| |
| ResetVcenterCredentialsRequest({this.requestId, this.username}); |
| |
| ResetVcenterCredentialsRequest.fromJson(core.Map json_) |
| : this( |
| requestId: json_['requestId'] as core.String?, |
| username: json_['username'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final requestId = this.requestId; |
| final username = this.username; |
| return {'requestId': ?requestId, 'username': ?username}; |
| } |
| } |
| |
| /// Request message for VmwareEngine.RevokeDnsBindPermission |
| class RevokeDnsBindPermissionRequest { |
| /// The consumer provided user/service account which needs to be granted |
| /// permission to bind with the intranet VPC corresponding to the consumer |
| /// project. |
| /// |
| /// Required. |
| Principal? principal; |
| |
| /// A request ID to identify requests. |
| /// |
| /// Specify a unique request ID so that if you must retry your request, the |
| /// server will know to ignore the request if it has already been completed. |
| /// The server guarantees that a request doesn't result in creation of |
| /// duplicate commitments for at least 60 minutes. For example, consider a |
| /// situation where you make an initial request and the request times out. If |
| /// you make the request again with the same request ID, the server can check |
| /// if original operation with the same request ID was received, and if so, |
| /// will ignore the second request. This prevents clients from accidentally |
| /// creating duplicate commitments. The request ID must be a valid UUID with |
| /// the exception that zero UUID is not supported |
| /// (00000000-0000-0000-0000-000000000000). |
| /// |
| /// Optional. |
| core.String? requestId; |
| |
| RevokeDnsBindPermissionRequest({this.principal, this.requestId}); |
| |
| RevokeDnsBindPermissionRequest.fromJson(core.Map json_) |
| : this( |
| principal: json_.containsKey('principal') |
| ? Principal.fromJson( |
| json_['principal'] as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| requestId: json_['requestId'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final principal = this.principal; |
| final requestId = this.requestId; |
| return {'principal': ?principal, 'requestId': ?requestId}; |
| } |
| } |
| |
| /// Schedule for the upgrade. |
| class Schedule { |
| /// Constraints applied to the schedule. |
| /// |
| /// These constraints should be applicable at the time of any rescheduling. |
| /// |
| /// Output only. |
| Constraints? constraints; |
| |
| /// The schedule is open for edits during this time interval or window. |
| /// |
| /// Output only. |
| Interval? editWindow; |
| |
| /// Indicates who most recently edited the upgrade schedule. |
| /// |
| /// The value is updated whenever the upgrade is rescheduled. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "EDITOR_UNSPECIFIED" : The default value. This value should never be |
| /// used. |
| /// - "SYSTEM" : The upgrade is scheduled by the System or internal service. |
| /// - "USER" : The upgrade is scheduled by the end user. |
| core.String? lastEditor; |
| |
| /// The scheduled start time for the upgrade. |
| /// |
| /// Required. |
| core.String? startTime; |
| |
| /// Weekly time windows for upgrade activities. |
| /// |
| /// The server performs upgrade activities during these time windows to |
| /// minimize disruptions. |
| /// |
| /// Required. |
| core.List<TimeWindow>? weeklyWindows; |
| |
| Schedule({ |
| this.constraints, |
| this.editWindow, |
| this.lastEditor, |
| this.startTime, |
| this.weeklyWindows, |
| }); |
| |
| Schedule.fromJson(core.Map json_) |
| : this( |
| constraints: json_.containsKey('constraints') |
| ? Constraints.fromJson( |
| json_['constraints'] as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| editWindow: json_.containsKey('editWindow') |
| ? Interval.fromJson( |
| json_['editWindow'] as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| lastEditor: json_['lastEditor'] as core.String?, |
| startTime: json_['startTime'] as core.String?, |
| weeklyWindows: (json_['weeklyWindows'] as core.List?) |
| ?.map( |
| (value) => TimeWindow.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final constraints = this.constraints; |
| final editWindow = this.editWindow; |
| final lastEditor = this.lastEditor; |
| final startTime = this.startTime; |
| final weeklyWindows = this.weeklyWindows; |
| return { |
| 'constraints': ?constraints, |
| 'editWindow': ?editWindow, |
| 'lastEditor': ?lastEditor, |
| 'startTime': ?startTime, |
| 'weeklyWindows': ?weeklyWindows, |
| }; |
| } |
| } |
| |
| /// Request message for `SetIamPolicy` method. |
| class SetIamPolicyRequest { |
| /// REQUIRED: The complete policy to be applied to the `resource`. |
| /// |
| /// The size of the policy is limited to a few 10s of KB. An empty policy is a |
| /// valid policy but certain Google Cloud services (such as Projects) might |
| /// reject them. |
| Policy? policy; |
| |
| /// OPTIONAL: A FieldMask specifying which fields of the policy to modify. |
| /// |
| /// Only the fields in the mask will be modified. If no mask is provided, the |
| /// following default mask is used: `paths: "bindings, etag"` |
| core.String? updateMask; |
| |
| SetIamPolicyRequest({this.policy, this.updateMask}); |
| |
| SetIamPolicyRequest.fromJson(core.Map json_) |
| : this( |
| policy: json_.containsKey('policy') |
| ? Policy.fromJson( |
| json_['policy'] as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| updateMask: json_['updateMask'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final policy = this.policy; |
| final updateMask = this.updateMask; |
| return {'policy': ?policy, 'updateMask': ?updateMask}; |
| } |
| } |
| |
| /// The `Status` type defines a logical error model that is suitable for |
| /// different programming environments, including REST APIs and RPC APIs. |
| /// |
| /// It is used by [gRPC](https://github.com/grpc). Each `Status` message |
| /// contains three pieces of data: error code, error message, and error details. |
| /// You can find out more about this error model and how to work with it in the |
| /// [API Design Guide](https://cloud.google.com/apis/design/errors). |
| typedef Status = $Status00; |
| |
| /// Configuration of a stretched cluster. |
| class StretchedClusterConfig { |
| /// Zone that will remain operational when connection between the two zones is |
| /// lost. |
| /// |
| /// Specify the resource name of a zone that belongs to the region of the |
| /// private cloud. For example: `projects/{project}/locations/europe-west3-a` |
| /// where `{project}` can either be a project number or a project ID. |
| /// |
| /// Required. |
| core.String? preferredLocation; |
| |
| /// Additional zone for a higher level of availability and load balancing. |
| /// |
| /// Specify the resource name of a zone that belongs to the region of the |
| /// private cloud. For example: `projects/{project}/locations/europe-west3-b` |
| /// where `{project}` can either be a project number or a project ID. |
| /// |
| /// Required. |
| core.String? secondaryLocation; |
| |
| StretchedClusterConfig({this.preferredLocation, this.secondaryLocation}); |
| |
| StretchedClusterConfig.fromJson(core.Map json_) |
| : this( |
| preferredLocation: json_['preferredLocation'] as core.String?, |
| secondaryLocation: json_['secondaryLocation'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final preferredLocation = this.preferredLocation; |
| final secondaryLocation = this.secondaryLocation; |
| return { |
| 'preferredLocation': ?preferredLocation, |
| 'secondaryLocation': ?secondaryLocation, |
| }; |
| } |
| } |
| |
| /// Subnet in a private cloud. |
| /// |
| /// Either `management` subnets (such as vMotion) that are read-only, or |
| /// `userDefined`, which can also be updated. |
| class Subnet { |
| /// The IP address of the gateway of this subnet. |
| /// |
| /// Must fall within the IP prefix defined above. |
| core.String? gatewayIp; |
| |
| /// The IP address range of the subnet in CIDR format '10.0.0.0/24'. |
| core.String? ipCidrRange; |
| |
| /// Identifier. |
| /// |
| /// The resource name of this subnet. Resource names are schemeless URIs that |
| /// follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/subnets/my-subnet` |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// The state of the resource. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "STATE_UNSPECIFIED" : The default value. This value should never be |
| /// used. |
| /// - "ACTIVE" : The subnet is ready. |
| /// - "CREATING" : The subnet is being created. |
| /// - "UPDATING" : The subnet is being updated. |
| /// - "DELETING" : The subnet is being deleted. |
| /// - "RECONCILING" : Changes requested in the last operation are being |
| /// propagated. |
| /// - "FAILED" : Last operation on the subnet did not succeed. Subnet's |
| /// payload is reverted back to its most recent working state. |
| core.String? state; |
| |
| /// The type of the subnet. |
| /// |
| /// For example "management" or "userDefined". |
| /// |
| /// Output only. |
| core.String? type; |
| |
| /// VLAN ID of the VLAN on which the subnet is configured |
| /// |
| /// Output only. |
| core.int? vlanId; |
| |
| Subnet({ |
| this.gatewayIp, |
| this.ipCidrRange, |
| this.name, |
| this.state, |
| this.type, |
| this.vlanId, |
| }); |
| |
| Subnet.fromJson(core.Map json_) |
| : this( |
| gatewayIp: json_['gatewayIp'] as core.String?, |
| ipCidrRange: json_['ipCidrRange'] as core.String?, |
| name: json_['name'] as core.String?, |
| state: json_['state'] as core.String?, |
| type: json_['type'] as core.String?, |
| vlanId: json_['vlanId'] as core.int?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final gatewayIp = this.gatewayIp; |
| final ipCidrRange = this.ipCidrRange; |
| final name = this.name; |
| final state = this.state; |
| final type = this.type; |
| final vlanId = this.vlanId; |
| return { |
| 'gatewayIp': ?gatewayIp, |
| 'ipCidrRange': ?ipCidrRange, |
| 'name': ?name, |
| 'state': ?state, |
| 'type': ?type, |
| 'vlanId': ?vlanId, |
| }; |
| } |
| } |
| |
| /// Request message for `TestIamPermissions` method. |
| typedef TestIamPermissionsRequest = $TestIamPermissionsRequest00; |
| |
| /// Response message for `TestIamPermissions` method. |
| typedef TestIamPermissionsResponse = $PermissionsResponse; |
| |
| /// Third party file service configuration |
| class ThirdPartyFileService { |
| /// Required Mount Folder name |
| /// |
| /// Required. |
| core.String? fileShare; |
| |
| /// Required to identify vpc peering used for NFS access network name of NFS's |
| /// vpc e.g. projects/project-id/global/networks/my-network_id |
| /// |
| /// Required. |
| core.String? network; |
| |
| /// Server IP addresses of the NFS file service. |
| /// |
| /// NFS v3, provide a single IP address or DNS name. Multiple servers can be |
| /// supported in future when NFS 4.1 protocol support is enabled. |
| /// |
| /// Required. |
| core.List<core.String>? servers; |
| |
| ThirdPartyFileService({this.fileShare, this.network, this.servers}); |
| |
| ThirdPartyFileService.fromJson(core.Map json_) |
| : this( |
| fileShare: json_['fileShare'] as core.String?, |
| network: json_['network'] as core.String?, |
| servers: (json_['servers'] as core.List?) |
| ?.map((value) => value as core.String) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final fileShare = this.fileShare; |
| final network = this.network; |
| final servers = this.servers; |
| return {'fileShare': ?fileShare, 'network': ?network, 'servers': ?servers}; |
| } |
| } |
| |
| /// Thresholds define the utilization of resources triggering scale-out and |
| /// scale-in operations. |
| class Thresholds { |
| /// The utilization triggering the scale-in operation in percent. |
| /// |
| /// Required. |
| core.int? scaleIn; |
| |
| /// The utilization triggering the scale-out operation in percent. |
| /// |
| /// Required. |
| core.int? scaleOut; |
| |
| Thresholds({this.scaleIn, this.scaleOut}); |
| |
| Thresholds.fromJson(core.Map json_) |
| : this( |
| scaleIn: json_['scaleIn'] as core.int?, |
| scaleOut: json_['scaleOut'] as core.int?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final scaleIn = this.scaleIn; |
| final scaleOut = this.scaleOut; |
| return {'scaleIn': ?scaleIn, 'scaleOut': ?scaleOut}; |
| } |
| } |
| |
| /// Represents a time of day. |
| /// |
| /// The date and time zone are either not significant or are specified |
| /// elsewhere. An API may choose to allow leap seconds. Related types are |
| /// google.type.Date and `google.protobuf.Timestamp`. |
| typedef TimeOfDay = $TimeOfDay; |
| |
| /// Represents the time window to perform upgrade activities. |
| class TimeWindow { |
| /// Day of the week for this window. |
| /// |
| /// Required. |
| /// Possible string values are: |
| /// - "DAY_OF_WEEK_UNSPECIFIED" : The day of the week is unspecified. |
| /// - "MONDAY" : Monday |
| /// - "TUESDAY" : Tuesday |
| /// - "WEDNESDAY" : Wednesday |
| /// - "THURSDAY" : Thursday |
| /// - "FRIDAY" : Friday |
| /// - "SATURDAY" : Saturday |
| /// - "SUNDAY" : Sunday |
| core.String? dayOfWeek; |
| |
| /// The duration of the window. |
| /// |
| /// The max allowed duration for any window is 24 hours. |
| /// |
| /// Required. |
| core.String? duration; |
| |
| /// Time in UTC when the window starts. |
| /// |
| /// Required. |
| TimeOfDay? startTime; |
| |
| TimeWindow({this.dayOfWeek, this.duration, this.startTime}); |
| |
| TimeWindow.fromJson(core.Map json_) |
| : this( |
| dayOfWeek: json_['dayOfWeek'] as core.String?, |
| duration: json_['duration'] as core.String?, |
| startTime: json_.containsKey('startTime') |
| ? TimeOfDay.fromJson( |
| json_['startTime'] as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final dayOfWeek = this.dayOfWeek; |
| final duration = this.duration; |
| final startTime = this.startTime; |
| return { |
| 'dayOfWeek': ?dayOfWeek, |
| 'duration': ?duration, |
| 'startTime': ?startTime, |
| }; |
| } |
| } |
| |
| /// Request message for VmwareEngine.UndeletePrivateCloud |
| class UndeletePrivateCloudRequest { |
| /// The request ID must be a valid UUID with the exception that zero UUID is |
| /// not supported (00000000-0000-0000-0000-000000000000). |
| /// |
| /// Optional. |
| core.String? requestId; |
| |
| UndeletePrivateCloudRequest({this.requestId}); |
| |
| UndeletePrivateCloudRequest.fromJson(core.Map json_) |
| : this(requestId: json_['requestId'] as core.String?); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final requestId = this.requestId; |
| return {'requestId': ?requestId}; |
| } |
| } |
| |
| /// Unmount Datastore Request messag |
| class UnmountDatastoreRequest { |
| /// The resource name of the datastore to unmount. |
| /// |
| /// Resource names are schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-central1/datastores/my-datastore` |
| /// |
| /// Required. |
| core.String? datastore; |
| |
| /// The request ID must be a valid UUID with the exception that zero UUID is |
| /// not supported (00000000-0000-0000-0000-000000000000). |
| /// |
| /// Optional. |
| core.String? requestId; |
| |
| UnmountDatastoreRequest({this.datastore, this.requestId}); |
| |
| UnmountDatastoreRequest.fromJson(core.Map json_) |
| : this( |
| datastore: json_['datastore'] as core.String?, |
| requestId: json_['requestId'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final datastore = this.datastore; |
| final requestId = this.requestId; |
| return {'datastore': ?datastore, 'requestId': ?requestId}; |
| } |
| } |
| |
| /// Describes Private cloud Upgrade. |
| class Upgrade { |
| /// The list of component upgrades. |
| /// |
| /// Output only. |
| core.List<VmwareUpgradeComponent>? componentUpgrades; |
| |
| /// Creation time of this resource. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// The description of the upgrade. |
| /// |
| /// This is used to provide additional information about the private cloud |
| /// upgrade, such as the upgrade's purpose, the changes included in the |
| /// upgrade, or any other relevant information about the upgrade. |
| /// |
| /// Output only. |
| core.String? description; |
| |
| /// End time of the upgrade. |
| /// |
| /// Output only. |
| core.String? endTime; |
| |
| /// The estimated total duration of the upgrade. |
| /// |
| /// This information can be used to plan or schedule upgrades to minimize |
| /// disruptions. Please note that the estimated duration is only an estimate. |
| /// The actual upgrade duration may vary. |
| /// |
| /// Output only. |
| core.String? estimatedDuration; |
| |
| /// The etag for the upgrade resource. |
| /// |
| /// If this is provided on update, it must match the server's etag. |
| core.String? etag; |
| |
| /// Identifier. |
| /// |
| /// The resource name of the private cloud `Upgrade`. Resource names are |
| /// schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/us-west1-a/privateClouds/my-cloud/upgrades/my-upgrade` |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// Schedule details for the upgrade. |
| Schedule? schedule; |
| |
| /// The start version |
| /// |
| /// Output only. |
| core.String? startVersion; |
| |
| /// The current state of the upgrade. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "STATE_UNSPECIFIED" : The default value. This value should never be |
| /// used. |
| /// - "SCHEDULED" : The upgrade is scheduled but not started yet. |
| /// - "ONGOING" : The upgrade is currently in progress and has not completed |
| /// yet. |
| /// - "SUCCEEDED" : The upgrade completed successfully. |
| /// - "PAUSED" : The upgrade is currently paused. |
| /// - "FAILED" : The upgrade failed. |
| /// - "CANCELLING" : The upgrade is in process of being canceled. |
| /// - "CANCELLED" : The upgrade is canceled. |
| /// - "RESCHEDULING" : The upgrade is in process of being rescheduled. |
| core.String? state; |
| |
| /// The target version |
| /// |
| /// Output only. |
| core.String? targetVersion; |
| |
| /// The type of upgrade. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "TYPE_UNSPECIFIED" : The default value. This value should never be used. |
| /// - "VSPHERE_UPGRADE" : Upgrade of vmware components when a major version is |
| /// available. 7.0u2 -\> 7.0u3. |
| /// - "VSPHERE_PATCH" : Patching of vmware components when a minor version is |
| /// available. 7.0u2c -\> 7.0u2d. |
| /// - "WORKAROUND" : Workarounds are hotfixes for vulnerabilities or issues |
| /// applied to mitigate the known vulnerability or issue until a patch or |
| /// update is released. The description of the upgrade will have more details. |
| /// - "FIRMWARE_UPGRADE" : Firmware upgrade for VMware product used in the |
| /// private cloud. |
| /// - "SWITCH_UPGRADE" : Switch upgrade. |
| /// - "OTHER" : The upgrade type that doesn't fall into any other category. |
| /// - "INFRASTRUCTURE_UPGRADE" : Infrastructure upgrade in BM node |
| /// maintenance. |
| core.String? type; |
| |
| /// System-generated unique identifier for the resource. |
| /// |
| /// Output only. |
| core.String? uid; |
| |
| /// Last update time of this resource. |
| /// |
| /// Output only. |
| core.String? updateTime; |
| |
| /// |
| /// |
| /// Output only. |
| core.String? version; |
| |
| Upgrade({ |
| this.componentUpgrades, |
| this.createTime, |
| this.description, |
| this.endTime, |
| this.estimatedDuration, |
| this.etag, |
| this.name, |
| this.schedule, |
| this.startVersion, |
| this.state, |
| this.targetVersion, |
| this.type, |
| this.uid, |
| this.updateTime, |
| this.version, |
| }); |
| |
| Upgrade.fromJson(core.Map json_) |
| : this( |
| componentUpgrades: (json_['componentUpgrades'] as core.List?) |
| ?.map( |
| (value) => VmwareUpgradeComponent.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| createTime: json_['createTime'] as core.String?, |
| description: json_['description'] as core.String?, |
| endTime: json_['endTime'] as core.String?, |
| estimatedDuration: json_['estimatedDuration'] as core.String?, |
| etag: json_['etag'] as core.String?, |
| name: json_['name'] as core.String?, |
| schedule: json_.containsKey('schedule') |
| ? Schedule.fromJson( |
| json_['schedule'] as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| startVersion: json_['startVersion'] as core.String?, |
| state: json_['state'] as core.String?, |
| targetVersion: json_['targetVersion'] as core.String?, |
| type: json_['type'] as core.String?, |
| uid: json_['uid'] as core.String?, |
| updateTime: json_['updateTime'] as core.String?, |
| version: json_['version'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final componentUpgrades = this.componentUpgrades; |
| final createTime = this.createTime; |
| final description = this.description; |
| final endTime = this.endTime; |
| final estimatedDuration = this.estimatedDuration; |
| final etag = this.etag; |
| final name = this.name; |
| final schedule = this.schedule; |
| final startVersion = this.startVersion; |
| final state = this.state; |
| final targetVersion = this.targetVersion; |
| final type = this.type; |
| final uid = this.uid; |
| final updateTime = this.updateTime; |
| final version = this.version; |
| return { |
| 'componentUpgrades': ?componentUpgrades, |
| 'createTime': ?createTime, |
| 'description': ?description, |
| 'endTime': ?endTime, |
| 'estimatedDuration': ?estimatedDuration, |
| 'etag': ?etag, |
| 'name': ?name, |
| 'schedule': ?schedule, |
| 'startVersion': ?startVersion, |
| 'state': ?state, |
| 'targetVersion': ?targetVersion, |
| 'type': ?type, |
| 'uid': ?uid, |
| 'updateTime': ?updateTime, |
| 'version': ?version, |
| }; |
| } |
| } |
| |
| /// Details about a vCenter Server management appliance. |
| typedef Vcenter = $Shared22; |
| |
| /// VMware Engine network resource that provides connectivity for VMware Engine |
| /// private clouds. |
| class VmwareEngineNetwork { |
| /// Creation time of this resource. |
| /// |
| /// Output only. |
| core.String? createTime; |
| |
| /// User-provided description for this VMware Engine network. |
| core.String? description; |
| |
| /// Checksum that may be sent on update and delete requests to ensure that the |
| /// user-provided value is up to date before the server processes a request. |
| /// |
| /// The server computes checksums based on the value of other fields in the |
| /// request. |
| core.String? etag; |
| |
| /// Identifier. |
| /// |
| /// The resource name of the VMware Engine network. Resource names are |
| /// schemeless URIs that follow the conventions in |
| /// https://cloud.google.com/apis/design/resource_names. For example: |
| /// `projects/my-project/locations/global/vmwareEngineNetworks/my-network` |
| /// |
| /// Output only. |
| core.String? name; |
| |
| /// State of the VMware Engine network. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "STATE_UNSPECIFIED" : The default value. This value is used if the state |
| /// is omitted. |
| /// - "CREATING" : The VMware Engine network is being created. |
| /// - "ACTIVE" : The VMware Engine network is ready. |
| /// - "UPDATING" : The VMware Engine network is being updated. |
| /// - "DELETING" : The VMware Engine network is being deleted. |
| core.String? state; |
| |
| /// VMware Engine network type. |
| /// |
| /// Required. |
| /// Possible string values are: |
| /// - "TYPE_UNSPECIFIED" : The default value. This value should never be used. |
| /// - "LEGACY" : Network type used by private clouds created in projects |
| /// without a network of type `STANDARD`. This network type is no longer used |
| /// for new VMware Engine private cloud deployments. |
| /// - "STANDARD" : Standard network type used for private cloud connectivity. |
| core.String? type; |
| |
| /// System-generated unique identifier for the resource. |
| /// |
| /// Output only. |
| core.String? uid; |
| |
| /// Last update time of this resource. |
| /// |
| /// Output only. |
| core.String? updateTime; |
| |
| /// VMware Engine service VPC networks that provide connectivity from a |
| /// private cloud to customer projects, the internet, and other Google Cloud |
| /// services. |
| /// |
| /// Output only. |
| core.List<VpcNetwork>? vpcNetworks; |
| |
| VmwareEngineNetwork({ |
| this.createTime, |
| this.description, |
| this.etag, |
| this.name, |
| this.state, |
| this.type, |
| this.uid, |
| this.updateTime, |
| this.vpcNetworks, |
| }); |
| |
| VmwareEngineNetwork.fromJson(core.Map json_) |
| : this( |
| createTime: json_['createTime'] as core.String?, |
| description: json_['description'] as core.String?, |
| etag: json_['etag'] as core.String?, |
| name: json_['name'] as core.String?, |
| state: json_['state'] as core.String?, |
| type: json_['type'] as core.String?, |
| uid: json_['uid'] as core.String?, |
| updateTime: json_['updateTime'] as core.String?, |
| vpcNetworks: (json_['vpcNetworks'] as core.List?) |
| ?.map( |
| (value) => VpcNetwork.fromJson( |
| value as core.Map<core.String, core.dynamic>, |
| ), |
| ) |
| .toList(), |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final createTime = this.createTime; |
| final description = this.description; |
| final etag = this.etag; |
| final name = this.name; |
| final state = this.state; |
| final type = this.type; |
| final uid = this.uid; |
| final updateTime = this.updateTime; |
| final vpcNetworks = this.vpcNetworks; |
| return { |
| 'createTime': ?createTime, |
| 'description': ?description, |
| 'etag': ?etag, |
| 'name': ?name, |
| 'state': ?state, |
| 'type': ?type, |
| 'uid': ?uid, |
| 'updateTime': ?updateTime, |
| 'vpcNetworks': ?vpcNetworks, |
| }; |
| } |
| } |
| |
| /// Per component upgrade resource |
| class VmwareUpgradeComponent { |
| /// Type of component |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "VMWARE_COMPONENT_TYPE_UNSPECIFIED" : The default value. This value |
| /// should never be used. |
| /// - "VCENTER" : vcenter |
| /// - "ESXI" : esxi nodes + transport nodes |
| /// - "NSXT_UC" : nsxt upgrade coordinator |
| /// - "NSXT_EDGE" : nsxt edges cluster |
| /// - "NSXT_MGR" : nsxt managers/management plane |
| /// - "HCX" : hcx |
| /// - "VSAN" : VSAN cluster |
| /// - "DVS" : DVS switch |
| /// - "NAMESERVER_VM" : Nameserver VMs |
| /// - "KMS_VM" : KMS VM used for vsan encryption |
| /// - "WITNESS_VM" : witness VM in case of stretch PC |
| /// - "NSXT" : nsxt |
| /// - "CLUSTER" : Cluster is used in case of BM |
| core.String? componentType; |
| |
| /// Component's upgrade state. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "STATE_UNSPECIFIED" : The default value. This value should never be |
| /// used. |
| /// - "RUNNING" : Component's upgrade is in progress |
| /// - "PAUSED" : The component's upgrade is paused. Will be resumed when |
| /// upgrade job is resumed |
| /// - "SUCCEEDED" : The component's upgrade is successfully completed |
| /// - "FAILED" : The component's upgrade has failed. This will move to resume |
| /// if upgrade is resumed or stay as is |
| /// - "NOT_STARTED" : Component's upgrade has not started yet |
| /// - "NOT_APPLICABLE" : Component's upgrade is not applicable in this |
| /// upgrade. It will be skipped. |
| core.String? state; |
| |
| VmwareUpgradeComponent({this.componentType, this.state}); |
| |
| VmwareUpgradeComponent.fromJson(core.Map json_) |
| : this( |
| componentType: json_['componentType'] as core.String?, |
| state: json_['state'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final componentType = this.componentType; |
| final state = this.state; |
| return {'componentType': ?componentType, 'state': ?state}; |
| } |
| } |
| |
| /// Represents a VMware Engine VPC network that is managed by a VMware Engine |
| /// network resource. |
| class VpcNetwork { |
| /// The relative resource name of the service VPC network this VMware Engine |
| /// network is attached to. |
| /// |
| /// For example: `projects/123123/global/networks/my-network` |
| /// |
| /// Output only. |
| core.String? network; |
| |
| /// Type of VPC network (INTRANET, INTERNET, or GOOGLE_CLOUD) |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "TYPE_UNSPECIFIED" : The default value. This value should never be used. |
| /// - "INTRANET" : VPC network that will be peered with a consumer VPC network |
| /// or the intranet VPC of another VMware Engine network. Access a private |
| /// cloud through Compute Engine VMs on a peered VPC network or an on-premises |
| /// resource connected to a peered consumer VPC network. |
| /// - "INTERNET" : VPC network used for internet access to and from a private |
| /// cloud. |
| /// - "GOOGLE_CLOUD" : VPC network used for access to Google Cloud services |
| /// like Cloud Storage. |
| core.String? type; |
| |
| VpcNetwork({this.network, this.type}); |
| |
| VpcNetwork.fromJson(core.Map json_) |
| : this( |
| network: json_['network'] as core.String?, |
| type: json_['type'] as core.String?, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final network = this.network; |
| final type = this.type; |
| return {'network': ?network, 'type': ?type}; |
| } |
| } |
| |
| /// Represents a time interval, spanning across days of the week. |
| /// |
| /// Until local timezones are supported, this interval is in UTC. |
| class WeeklyTimeInterval { |
| /// The day on which the interval ends. |
| /// |
| /// Can be same as start day. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "DAY_OF_WEEK_UNSPECIFIED" : The day of the week is unspecified. |
| /// - "MONDAY" : Monday |
| /// - "TUESDAY" : Tuesday |
| /// - "WEDNESDAY" : Wednesday |
| /// - "THURSDAY" : Thursday |
| /// - "FRIDAY" : Friday |
| /// - "SATURDAY" : Saturday |
| /// - "SUNDAY" : Sunday |
| core.String? endDay; |
| |
| /// The time on the end day at which the interval ends. |
| /// |
| /// Output only. |
| TimeOfDay? endTime; |
| |
| /// The day on which the interval starts. |
| /// |
| /// Output only. |
| /// Possible string values are: |
| /// - "DAY_OF_WEEK_UNSPECIFIED" : The day of the week is unspecified. |
| /// - "MONDAY" : Monday |
| /// - "TUESDAY" : Tuesday |
| /// - "WEDNESDAY" : Wednesday |
| /// - "THURSDAY" : Thursday |
| /// - "FRIDAY" : Friday |
| /// - "SATURDAY" : Saturday |
| /// - "SUNDAY" : Sunday |
| core.String? startDay; |
| |
| /// The time on the start day at which the interval starts. |
| /// |
| /// Output only. |
| TimeOfDay? startTime; |
| |
| WeeklyTimeInterval({ |
| this.endDay, |
| this.endTime, |
| this.startDay, |
| this.startTime, |
| }); |
| |
| WeeklyTimeInterval.fromJson(core.Map json_) |
| : this( |
| endDay: json_['endDay'] as core.String?, |
| endTime: json_.containsKey('endTime') |
| ? TimeOfDay.fromJson( |
| json_['endTime'] as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| startDay: json_['startDay'] as core.String?, |
| startTime: json_.containsKey('startTime') |
| ? TimeOfDay.fromJson( |
| json_['startTime'] as core.Map<core.String, core.dynamic>, |
| ) |
| : null, |
| ); |
| |
| core.Map<core.String, core.dynamic> toJson() { |
| final endDay = this.endDay; |
| final endTime = this.endTime; |
| final startDay = this.startDay; |
| final startTime = this.startTime; |
| return { |
| 'endDay': ?endDay, |
| 'endTime': ?endTime, |
| 'startDay': ?startDay, |
| 'startTime': ?startTime, |
| }; |
| } |
| } |