...

Source file src/google.golang.org/api/vmwareengine/v1/vmwareengine-gen.go

Documentation: google.golang.org/api/vmwareengine/v1

     1  // Copyright 2024 Google LLC.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  // Code generated file. DO NOT EDIT.
     6  
     7  // Package vmwareengine provides access to the VMware Engine API.
     8  //
     9  // For product documentation, see: https://cloud.google.com/solutions/vmware-as-a-service
    10  //
    11  // # Library status
    12  //
    13  // These client libraries are officially supported by Google. However, this
    14  // library is considered complete and is in maintenance mode. This means
    15  // that we will address critical bugs and security issues but will not add
    16  // any new features.
    17  //
    18  // When possible, we recommend using our newer
    19  // [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go)
    20  // that are still actively being worked and iterated on.
    21  //
    22  // # Creating a client
    23  //
    24  // Usage example:
    25  //
    26  //	import "google.golang.org/api/vmwareengine/v1"
    27  //	...
    28  //	ctx := context.Background()
    29  //	vmwareengineService, err := vmwareengine.NewService(ctx)
    30  //
    31  // In this example, Google Application Default Credentials are used for
    32  // authentication. For information on how to create and obtain Application
    33  // Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
    34  //
    35  // # Other authentication options
    36  //
    37  // To use an API key for authentication (note: some APIs do not support API
    38  // keys), use [google.golang.org/api/option.WithAPIKey]:
    39  //
    40  //	vmwareengineService, err := vmwareengine.NewService(ctx, option.WithAPIKey("AIza..."))
    41  //
    42  // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth
    43  // flow, use [google.golang.org/api/option.WithTokenSource]:
    44  //
    45  //	config := &oauth2.Config{...}
    46  //	// ...
    47  //	token, err := config.Exchange(ctx, ...)
    48  //	vmwareengineService, err := vmwareengine.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
    49  //
    50  // See [google.golang.org/api/option.ClientOption] for details on options.
    51  package vmwareengine // import "google.golang.org/api/vmwareengine/v1"
    52  
    53  import (
    54  	"bytes"
    55  	"context"
    56  	"encoding/json"
    57  	"errors"
    58  	"fmt"
    59  	"io"
    60  	"net/http"
    61  	"net/url"
    62  	"strconv"
    63  	"strings"
    64  
    65  	googleapi "google.golang.org/api/googleapi"
    66  	internal "google.golang.org/api/internal"
    67  	gensupport "google.golang.org/api/internal/gensupport"
    68  	option "google.golang.org/api/option"
    69  	internaloption "google.golang.org/api/option/internaloption"
    70  	htransport "google.golang.org/api/transport/http"
    71  )
    72  
    73  // Always reference these packages, just in case the auto-generated code
    74  // below doesn't.
    75  var _ = bytes.NewBuffer
    76  var _ = strconv.Itoa
    77  var _ = fmt.Sprintf
    78  var _ = json.NewDecoder
    79  var _ = io.Copy
    80  var _ = url.Parse
    81  var _ = gensupport.MarshalJSON
    82  var _ = googleapi.Version
    83  var _ = errors.New
    84  var _ = strings.Replace
    85  var _ = context.Canceled
    86  var _ = internaloption.WithDefaultEndpoint
    87  var _ = internal.Version
    88  
    89  const apiId = "vmwareengine:v1"
    90  const apiName = "vmwareengine"
    91  const apiVersion = "v1"
    92  const basePath = "https://vmwareengine.googleapis.com/"
    93  const basePathTemplate = "https://vmwareengine.UNIVERSE_DOMAIN/"
    94  const mtlsBasePath = "https://vmwareengine.mtls.googleapis.com/"
    95  
    96  // OAuth2 scopes used by this API.
    97  const (
    98  	// See, edit, configure, and delete your Google Cloud data and see the email
    99  	// address for your Google Account.
   100  	CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
   101  )
   102  
   103  // NewService creates a new Service.
   104  func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
   105  	scopesOption := internaloption.WithDefaultScopes(
   106  		"https://www.googleapis.com/auth/cloud-platform",
   107  	)
   108  	// NOTE: prepend, so we don't override user-specified scopes.
   109  	opts = append([]option.ClientOption{scopesOption}, opts...)
   110  	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
   111  	opts = append(opts, internaloption.WithDefaultEndpointTemplate(basePathTemplate))
   112  	opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
   113  	opts = append(opts, internaloption.EnableNewAuthLibrary())
   114  	client, endpoint, err := htransport.NewClient(ctx, opts...)
   115  	if err != nil {
   116  		return nil, err
   117  	}
   118  	s, err := New(client)
   119  	if err != nil {
   120  		return nil, err
   121  	}
   122  	if endpoint != "" {
   123  		s.BasePath = endpoint
   124  	}
   125  	return s, nil
   126  }
   127  
   128  // New creates a new Service. It uses the provided http.Client for requests.
   129  //
   130  // Deprecated: please use NewService instead.
   131  // To provide a custom HTTP client, use option.WithHTTPClient.
   132  // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
   133  func New(client *http.Client) (*Service, error) {
   134  	if client == nil {
   135  		return nil, errors.New("client is nil")
   136  	}
   137  	s := &Service{client: client, BasePath: basePath}
   138  	s.Projects = NewProjectsService(s)
   139  	return s, nil
   140  }
   141  
   142  type Service struct {
   143  	client    *http.Client
   144  	BasePath  string // API endpoint base URL
   145  	UserAgent string // optional additional User-Agent fragment
   146  
   147  	Projects *ProjectsService
   148  }
   149  
   150  func (s *Service) userAgent() string {
   151  	if s.UserAgent == "" {
   152  		return googleapi.UserAgent
   153  	}
   154  	return googleapi.UserAgent + " " + s.UserAgent
   155  }
   156  
   157  func NewProjectsService(s *Service) *ProjectsService {
   158  	rs := &ProjectsService{s: s}
   159  	rs.Locations = NewProjectsLocationsService(s)
   160  	return rs
   161  }
   162  
   163  type ProjectsService struct {
   164  	s *Service
   165  
   166  	Locations *ProjectsLocationsService
   167  }
   168  
   169  func NewProjectsLocationsService(s *Service) *ProjectsLocationsService {
   170  	rs := &ProjectsLocationsService{s: s}
   171  	rs.DnsBindPermission = NewProjectsLocationsDnsBindPermissionService(s)
   172  	rs.NetworkPeerings = NewProjectsLocationsNetworkPeeringsService(s)
   173  	rs.NetworkPolicies = NewProjectsLocationsNetworkPoliciesService(s)
   174  	rs.NodeTypes = NewProjectsLocationsNodeTypesService(s)
   175  	rs.Operations = NewProjectsLocationsOperationsService(s)
   176  	rs.PrivateClouds = NewProjectsLocationsPrivateCloudsService(s)
   177  	rs.PrivateConnections = NewProjectsLocationsPrivateConnectionsService(s)
   178  	rs.VmwareEngineNetworks = NewProjectsLocationsVmwareEngineNetworksService(s)
   179  	return rs
   180  }
   181  
   182  type ProjectsLocationsService struct {
   183  	s *Service
   184  
   185  	DnsBindPermission *ProjectsLocationsDnsBindPermissionService
   186  
   187  	NetworkPeerings *ProjectsLocationsNetworkPeeringsService
   188  
   189  	NetworkPolicies *ProjectsLocationsNetworkPoliciesService
   190  
   191  	NodeTypes *ProjectsLocationsNodeTypesService
   192  
   193  	Operations *ProjectsLocationsOperationsService
   194  
   195  	PrivateClouds *ProjectsLocationsPrivateCloudsService
   196  
   197  	PrivateConnections *ProjectsLocationsPrivateConnectionsService
   198  
   199  	VmwareEngineNetworks *ProjectsLocationsVmwareEngineNetworksService
   200  }
   201  
   202  func NewProjectsLocationsDnsBindPermissionService(s *Service) *ProjectsLocationsDnsBindPermissionService {
   203  	rs := &ProjectsLocationsDnsBindPermissionService{s: s}
   204  	return rs
   205  }
   206  
   207  type ProjectsLocationsDnsBindPermissionService struct {
   208  	s *Service
   209  }
   210  
   211  func NewProjectsLocationsNetworkPeeringsService(s *Service) *ProjectsLocationsNetworkPeeringsService {
   212  	rs := &ProjectsLocationsNetworkPeeringsService{s: s}
   213  	rs.PeeringRoutes = NewProjectsLocationsNetworkPeeringsPeeringRoutesService(s)
   214  	return rs
   215  }
   216  
   217  type ProjectsLocationsNetworkPeeringsService struct {
   218  	s *Service
   219  
   220  	PeeringRoutes *ProjectsLocationsNetworkPeeringsPeeringRoutesService
   221  }
   222  
   223  func NewProjectsLocationsNetworkPeeringsPeeringRoutesService(s *Service) *ProjectsLocationsNetworkPeeringsPeeringRoutesService {
   224  	rs := &ProjectsLocationsNetworkPeeringsPeeringRoutesService{s: s}
   225  	return rs
   226  }
   227  
   228  type ProjectsLocationsNetworkPeeringsPeeringRoutesService struct {
   229  	s *Service
   230  }
   231  
   232  func NewProjectsLocationsNetworkPoliciesService(s *Service) *ProjectsLocationsNetworkPoliciesService {
   233  	rs := &ProjectsLocationsNetworkPoliciesService{s: s}
   234  	rs.ExternalAccessRules = NewProjectsLocationsNetworkPoliciesExternalAccessRulesService(s)
   235  	return rs
   236  }
   237  
   238  type ProjectsLocationsNetworkPoliciesService struct {
   239  	s *Service
   240  
   241  	ExternalAccessRules *ProjectsLocationsNetworkPoliciesExternalAccessRulesService
   242  }
   243  
   244  func NewProjectsLocationsNetworkPoliciesExternalAccessRulesService(s *Service) *ProjectsLocationsNetworkPoliciesExternalAccessRulesService {
   245  	rs := &ProjectsLocationsNetworkPoliciesExternalAccessRulesService{s: s}
   246  	return rs
   247  }
   248  
   249  type ProjectsLocationsNetworkPoliciesExternalAccessRulesService struct {
   250  	s *Service
   251  }
   252  
   253  func NewProjectsLocationsNodeTypesService(s *Service) *ProjectsLocationsNodeTypesService {
   254  	rs := &ProjectsLocationsNodeTypesService{s: s}
   255  	return rs
   256  }
   257  
   258  type ProjectsLocationsNodeTypesService struct {
   259  	s *Service
   260  }
   261  
   262  func NewProjectsLocationsOperationsService(s *Service) *ProjectsLocationsOperationsService {
   263  	rs := &ProjectsLocationsOperationsService{s: s}
   264  	return rs
   265  }
   266  
   267  type ProjectsLocationsOperationsService struct {
   268  	s *Service
   269  }
   270  
   271  func NewProjectsLocationsPrivateCloudsService(s *Service) *ProjectsLocationsPrivateCloudsService {
   272  	rs := &ProjectsLocationsPrivateCloudsService{s: s}
   273  	rs.Clusters = NewProjectsLocationsPrivateCloudsClustersService(s)
   274  	rs.ExternalAddresses = NewProjectsLocationsPrivateCloudsExternalAddressesService(s)
   275  	rs.HcxActivationKeys = NewProjectsLocationsPrivateCloudsHcxActivationKeysService(s)
   276  	rs.LoggingServers = NewProjectsLocationsPrivateCloudsLoggingServersService(s)
   277  	rs.ManagementDnsZoneBindings = NewProjectsLocationsPrivateCloudsManagementDnsZoneBindingsService(s)
   278  	rs.Subnets = NewProjectsLocationsPrivateCloudsSubnetsService(s)
   279  	return rs
   280  }
   281  
   282  type ProjectsLocationsPrivateCloudsService struct {
   283  	s *Service
   284  
   285  	Clusters *ProjectsLocationsPrivateCloudsClustersService
   286  
   287  	ExternalAddresses *ProjectsLocationsPrivateCloudsExternalAddressesService
   288  
   289  	HcxActivationKeys *ProjectsLocationsPrivateCloudsHcxActivationKeysService
   290  
   291  	LoggingServers *ProjectsLocationsPrivateCloudsLoggingServersService
   292  
   293  	ManagementDnsZoneBindings *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsService
   294  
   295  	Subnets *ProjectsLocationsPrivateCloudsSubnetsService
   296  }
   297  
   298  func NewProjectsLocationsPrivateCloudsClustersService(s *Service) *ProjectsLocationsPrivateCloudsClustersService {
   299  	rs := &ProjectsLocationsPrivateCloudsClustersService{s: s}
   300  	rs.Nodes = NewProjectsLocationsPrivateCloudsClustersNodesService(s)
   301  	return rs
   302  }
   303  
   304  type ProjectsLocationsPrivateCloudsClustersService struct {
   305  	s *Service
   306  
   307  	Nodes *ProjectsLocationsPrivateCloudsClustersNodesService
   308  }
   309  
   310  func NewProjectsLocationsPrivateCloudsClustersNodesService(s *Service) *ProjectsLocationsPrivateCloudsClustersNodesService {
   311  	rs := &ProjectsLocationsPrivateCloudsClustersNodesService{s: s}
   312  	return rs
   313  }
   314  
   315  type ProjectsLocationsPrivateCloudsClustersNodesService struct {
   316  	s *Service
   317  }
   318  
   319  func NewProjectsLocationsPrivateCloudsExternalAddressesService(s *Service) *ProjectsLocationsPrivateCloudsExternalAddressesService {
   320  	rs := &ProjectsLocationsPrivateCloudsExternalAddressesService{s: s}
   321  	return rs
   322  }
   323  
   324  type ProjectsLocationsPrivateCloudsExternalAddressesService struct {
   325  	s *Service
   326  }
   327  
   328  func NewProjectsLocationsPrivateCloudsHcxActivationKeysService(s *Service) *ProjectsLocationsPrivateCloudsHcxActivationKeysService {
   329  	rs := &ProjectsLocationsPrivateCloudsHcxActivationKeysService{s: s}
   330  	return rs
   331  }
   332  
   333  type ProjectsLocationsPrivateCloudsHcxActivationKeysService struct {
   334  	s *Service
   335  }
   336  
   337  func NewProjectsLocationsPrivateCloudsLoggingServersService(s *Service) *ProjectsLocationsPrivateCloudsLoggingServersService {
   338  	rs := &ProjectsLocationsPrivateCloudsLoggingServersService{s: s}
   339  	return rs
   340  }
   341  
   342  type ProjectsLocationsPrivateCloudsLoggingServersService struct {
   343  	s *Service
   344  }
   345  
   346  func NewProjectsLocationsPrivateCloudsManagementDnsZoneBindingsService(s *Service) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsService {
   347  	rs := &ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsService{s: s}
   348  	return rs
   349  }
   350  
   351  type ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsService struct {
   352  	s *Service
   353  }
   354  
   355  func NewProjectsLocationsPrivateCloudsSubnetsService(s *Service) *ProjectsLocationsPrivateCloudsSubnetsService {
   356  	rs := &ProjectsLocationsPrivateCloudsSubnetsService{s: s}
   357  	return rs
   358  }
   359  
   360  type ProjectsLocationsPrivateCloudsSubnetsService struct {
   361  	s *Service
   362  }
   363  
   364  func NewProjectsLocationsPrivateConnectionsService(s *Service) *ProjectsLocationsPrivateConnectionsService {
   365  	rs := &ProjectsLocationsPrivateConnectionsService{s: s}
   366  	rs.PeeringRoutes = NewProjectsLocationsPrivateConnectionsPeeringRoutesService(s)
   367  	return rs
   368  }
   369  
   370  type ProjectsLocationsPrivateConnectionsService struct {
   371  	s *Service
   372  
   373  	PeeringRoutes *ProjectsLocationsPrivateConnectionsPeeringRoutesService
   374  }
   375  
   376  func NewProjectsLocationsPrivateConnectionsPeeringRoutesService(s *Service) *ProjectsLocationsPrivateConnectionsPeeringRoutesService {
   377  	rs := &ProjectsLocationsPrivateConnectionsPeeringRoutesService{s: s}
   378  	return rs
   379  }
   380  
   381  type ProjectsLocationsPrivateConnectionsPeeringRoutesService struct {
   382  	s *Service
   383  }
   384  
   385  func NewProjectsLocationsVmwareEngineNetworksService(s *Service) *ProjectsLocationsVmwareEngineNetworksService {
   386  	rs := &ProjectsLocationsVmwareEngineNetworksService{s: s}
   387  	return rs
   388  }
   389  
   390  type ProjectsLocationsVmwareEngineNetworksService struct {
   391  	s *Service
   392  }
   393  
   394  // AuditConfig: Specifies the audit configuration for a service. The
   395  // configuration determines which permission types are logged, and what
   396  // identities, if any, are exempted from logging. An AuditConfig must have one
   397  // or more AuditLogConfigs. If there are AuditConfigs for both `allServices`
   398  // and a specific service, the union of the two AuditConfigs is used for that
   399  // service: the log_types specified in each AuditConfig are enabled, and the
   400  // exempted_members in each AuditLogConfig are exempted. Example Policy with
   401  // multiple AuditConfigs: { "audit_configs": [ { "service": "allServices",
   402  // "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": [
   403  // "user:jose@example.com" ] }, { "log_type": "DATA_WRITE" }, { "log_type":
   404  // "ADMIN_READ" } ] }, { "service": "sampleservice.googleapis.com",
   405  // "audit_log_configs": [ { "log_type": "DATA_READ" }, { "log_type":
   406  // "DATA_WRITE", "exempted_members": [ "user:aliya@example.com" ] } ] } ] } For
   407  // sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
   408  // logging. It also exempts `jose@example.com` from DATA_READ logging, and
   409  // `aliya@example.com` from DATA_WRITE logging.
   410  type AuditConfig struct {
   411  	// AuditLogConfigs: The configuration for logging of each type of permission.
   412  	AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"`
   413  	// Service: Specifies a service that will be enabled for audit logging. For
   414  	// example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices`
   415  	// is a special value that covers all services.
   416  	Service string `json:"service,omitempty"`
   417  	// ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to
   418  	// unconditionally include in API requests. By default, fields with empty or
   419  	// default values are omitted from API requests. See
   420  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   421  	// details.
   422  	ForceSendFields []string `json:"-"`
   423  	// NullFields is a list of field names (e.g. "AuditLogConfigs") to include in
   424  	// API requests with the JSON null value. By default, fields with empty values
   425  	// are omitted from API requests. See
   426  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   427  	NullFields []string `json:"-"`
   428  }
   429  
   430  func (s *AuditConfig) MarshalJSON() ([]byte, error) {
   431  	type NoMethod AuditConfig
   432  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   433  }
   434  
   435  // AuditLogConfig: Provides the configuration for logging a type of
   436  // permissions. Example: { "audit_log_configs": [ { "log_type": "DATA_READ",
   437  // "exempted_members": [ "user:jose@example.com" ] }, { "log_type":
   438  // "DATA_WRITE" } ] } This enables 'DATA_READ' and 'DATA_WRITE' logging, while
   439  // exempting jose@example.com from DATA_READ logging.
   440  type AuditLogConfig struct {
   441  	// ExemptedMembers: Specifies the identities that do not cause logging for this
   442  	// type of permission. Follows the same format of Binding.members.
   443  	ExemptedMembers []string `json:"exemptedMembers,omitempty"`
   444  	// LogType: The log type that this config enables.
   445  	//
   446  	// Possible values:
   447  	//   "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this.
   448  	//   "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy
   449  	//   "DATA_WRITE" - Data writes. Example: CloudSQL Users create
   450  	//   "DATA_READ" - Data reads. Example: CloudSQL Users list
   451  	LogType string `json:"logType,omitempty"`
   452  	// ForceSendFields is a list of field names (e.g. "ExemptedMembers") to
   453  	// unconditionally include in API requests. By default, fields with empty or
   454  	// default values are omitted from API requests. See
   455  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   456  	// details.
   457  	ForceSendFields []string `json:"-"`
   458  	// NullFields is a list of field names (e.g. "ExemptedMembers") to include in
   459  	// API requests with the JSON null value. By default, fields with empty values
   460  	// are omitted from API requests. See
   461  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   462  	NullFields []string `json:"-"`
   463  }
   464  
   465  func (s *AuditLogConfig) MarshalJSON() ([]byte, error) {
   466  	type NoMethod AuditLogConfig
   467  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   468  }
   469  
   470  // Binding: Associates `members`, or principals, with a `role`.
   471  type Binding struct {
   472  	// Condition: The condition that is associated with this binding. If the
   473  	// condition evaluates to `true`, then this binding applies to the current
   474  	// request. If the condition evaluates to `false`, then this binding does not
   475  	// apply to the current request. However, a different role binding might grant
   476  	// the same role to one or more of the principals in this binding. To learn
   477  	// which resources support conditions in their IAM policies, see the IAM
   478  	// documentation
   479  	// (https://cloud.google.com/iam/help/conditions/resource-policies).
   480  	Condition *Expr `json:"condition,omitempty"`
   481  	// Members: Specifies the principals requesting access for a Google Cloud
   482  	// resource. `members` can have the following values: * `allUsers`: A special
   483  	// identifier that represents anyone who is on the internet; with or without a
   484  	// Google account. * `allAuthenticatedUsers`: A special identifier that
   485  	// represents anyone who is authenticated with a Google account or a service
   486  	// account. Does not include identities that come from external identity
   487  	// providers (IdPs) through identity federation. * `user:{emailid}`: An email
   488  	// address that represents a specific Google account. For example,
   489  	// `alice@example.com` . * `serviceAccount:{emailid}`: An email address that
   490  	// represents a Google service account. For example,
   491  	// `my-other-app@appspot.gserviceaccount.com`. *
   492  	// `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An
   493  	// identifier for a Kubernetes service account
   494  	// (https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts).
   495  	// For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. *
   496  	// `group:{emailid}`: An email address that represents a Google group. For
   497  	// example, `admins@example.com`. * `domain:{domain}`: The G Suite domain
   498  	// (primary) that represents all the users of that domain. For example,
   499  	// `google.com` or `example.com`. *
   500  	// `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/sub
   501  	// ject/{subject_attribute_value}`: A single identity in a workforce identity
   502  	// pool. *
   503  	// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/
   504  	// group/{group_id}`: All workforce identities in a group. *
   505  	// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/
   506  	// attribute.{attribute_name}/{attribute_value}`: All workforce identities with
   507  	// a specific attribute value. *
   508  	// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/
   509  	// *`: All identities in a workforce identity pool. *
   510  	// `principal://iam.googleapis.com/projects/{project_number}/locations/global/wo
   511  	// rkloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single
   512  	// identity in a workload identity pool. *
   513  	// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global
   514  	// /workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool
   515  	// group. *
   516  	// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global
   517  	// /workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}
   518  	// `: All identities in a workload identity pool with a certain attribute. *
   519  	// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global
   520  	// /workloadIdentityPools/{pool_id}/*`: All identities in a workload identity
   521  	// pool. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus
   522  	// unique identifier) representing a user that has been recently deleted. For
   523  	// example, `alice@example.com?uid=123456789012345678901`. If the user is
   524  	// recovered, this value reverts to `user:{emailid}` and the recovered user
   525  	// retains the role in the binding. *
   526  	// `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
   527  	// unique identifier) representing a service account that has been recently
   528  	// deleted. For example,
   529  	// `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the
   530  	// service account is undeleted, this value reverts to
   531  	// `serviceAccount:{emailid}` and the undeleted service account retains the
   532  	// role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email
   533  	// address (plus unique identifier) representing a Google group that has been
   534  	// recently deleted. For example,
   535  	// `admins@example.com?uid=123456789012345678901`. If the group is recovered,
   536  	// this value reverts to `group:{emailid}` and the recovered group retains the
   537  	// role in the binding. *
   538  	// `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool
   539  	// _id}/subject/{subject_attribute_value}`: Deleted single identity in a
   540  	// workforce identity pool. For example,
   541  	// `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-po
   542  	// ol-id/subject/my-subject-attribute-value`.
   543  	Members []string `json:"members,omitempty"`
   544  	// Role: Role that is assigned to the list of `members`, or principals. For
   545  	// example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview
   546  	// of the IAM roles and permissions, see the IAM documentation
   547  	// (https://cloud.google.com/iam/docs/roles-overview). For a list of the
   548  	// available pre-defined roles, see here
   549  	// (https://cloud.google.com/iam/docs/understanding-roles).
   550  	Role string `json:"role,omitempty"`
   551  	// ForceSendFields is a list of field names (e.g. "Condition") to
   552  	// unconditionally include in API requests. By default, fields with empty or
   553  	// default values are omitted from API requests. See
   554  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   555  	// details.
   556  	ForceSendFields []string `json:"-"`
   557  	// NullFields is a list of field names (e.g. "Condition") to include in API
   558  	// requests with the JSON null value. By default, fields with empty values are
   559  	// omitted from API requests. See
   560  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   561  	NullFields []string `json:"-"`
   562  }
   563  
   564  func (s *Binding) MarshalJSON() ([]byte, error) {
   565  	type NoMethod Binding
   566  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   567  }
   568  
   569  // Cluster: A cluster in a private cloud.
   570  type Cluster struct {
   571  	// CreateTime: Output only. Creation time of this resource.
   572  	CreateTime string `json:"createTime,omitempty"`
   573  	// Management: Output only. True if the cluster is a management cluster; false
   574  	// otherwise. There can only be one management cluster in a private cloud and
   575  	// it has to be the first one.
   576  	Management bool `json:"management,omitempty"`
   577  	// Name: Output only. The resource name of this cluster. Resource names are
   578  	// schemeless URIs that follow the conventions in
   579  	// https://cloud.google.com/apis/design/resource_names. For example:
   580  	// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/
   581  	// my-cluster`
   582  	Name string `json:"name,omitempty"`
   583  	// NodeTypeConfigs: Required. The map of cluster node types in this cluster,
   584  	// where the key is canonical identifier of the node type (corresponds to the
   585  	// `NodeType`).
   586  	NodeTypeConfigs map[string]NodeTypeConfig `json:"nodeTypeConfigs,omitempty"`
   587  	// State: Output only. State of the resource.
   588  	//
   589  	// Possible values:
   590  	//   "STATE_UNSPECIFIED" - The default value. This value should never be used.
   591  	//   "ACTIVE" - The Cluster is operational and can be used by the user.
   592  	//   "CREATING" - The Cluster is being deployed.
   593  	//   "UPDATING" - Adding or removing of a node to the cluster, any other
   594  	// cluster specific updates.
   595  	//   "DELETING" - The Cluster is being deleted.
   596  	//   "REPAIRING" - The Cluster is undergoing maintenance, for example: a failed
   597  	// node is getting replaced.
   598  	State string `json:"state,omitempty"`
   599  	// StretchedClusterConfig: Optional. Configuration of a stretched cluster.
   600  	// Required for clusters that belong to a STRETCHED private cloud.
   601  	StretchedClusterConfig *StretchedClusterConfig `json:"stretchedClusterConfig,omitempty"`
   602  	// Uid: Output only. System-generated unique identifier for the resource.
   603  	Uid string `json:"uid,omitempty"`
   604  	// UpdateTime: Output only. Last update time of this resource.
   605  	UpdateTime string `json:"updateTime,omitempty"`
   606  
   607  	// ServerResponse contains the HTTP response code and headers from the server.
   608  	googleapi.ServerResponse `json:"-"`
   609  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
   610  	// unconditionally include in API requests. By default, fields with empty or
   611  	// default values are omitted from API requests. See
   612  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   613  	// details.
   614  	ForceSendFields []string `json:"-"`
   615  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
   616  	// requests with the JSON null value. By default, fields with empty values are
   617  	// omitted from API requests. See
   618  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   619  	NullFields []string `json:"-"`
   620  }
   621  
   622  func (s *Cluster) MarshalJSON() ([]byte, error) {
   623  	type NoMethod Cluster
   624  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   625  }
   626  
   627  // Credentials: Credentials for a private cloud.
   628  type Credentials struct {
   629  	// Password: Initial password.
   630  	Password string `json:"password,omitempty"`
   631  	// Username: Initial username.
   632  	Username string `json:"username,omitempty"`
   633  
   634  	// ServerResponse contains the HTTP response code and headers from the server.
   635  	googleapi.ServerResponse `json:"-"`
   636  	// ForceSendFields is a list of field names (e.g. "Password") to
   637  	// unconditionally include in API requests. By default, fields with empty or
   638  	// default values are omitted from API requests. See
   639  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   640  	// details.
   641  	ForceSendFields []string `json:"-"`
   642  	// NullFields is a list of field names (e.g. "Password") to include in API
   643  	// requests with the JSON null value. By default, fields with empty values are
   644  	// omitted from API requests. See
   645  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   646  	NullFields []string `json:"-"`
   647  }
   648  
   649  func (s *Credentials) MarshalJSON() ([]byte, error) {
   650  	type NoMethod Credentials
   651  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   652  }
   653  
   654  // DnsBindPermission: DnsBindPermission resource that contains the accounts
   655  // having the consumer DNS bind permission on the corresponding intranet VPC of
   656  // the consumer project.
   657  type DnsBindPermission struct {
   658  	// Name: Required. Output only. The name of the resource which stores the
   659  	// users/service accounts having the permission to bind to the corresponding
   660  	// intranet VPC of the consumer project. DnsBindPermission is a global resource
   661  	// and location can only be global. Resource names are schemeless URIs that
   662  	// follow the conventions in
   663  	// https://cloud.google.com/apis/design/resource_names. For example:
   664  	// `projects/my-project/locations/global/dnsBindPermission`
   665  	Name string `json:"name,omitempty"`
   666  	// Principals: Output only. Users/Service accounts which have access for
   667  	// binding on the intranet VPC project corresponding to the consumer project.
   668  	Principals []*Principal `json:"principals,omitempty"`
   669  
   670  	// ServerResponse contains the HTTP response code and headers from the server.
   671  	googleapi.ServerResponse `json:"-"`
   672  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
   673  	// include in API requests. By default, fields with empty or default values are
   674  	// omitted from API requests. See
   675  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   676  	// details.
   677  	ForceSendFields []string `json:"-"`
   678  	// NullFields is a list of field names (e.g. "Name") to include in API requests
   679  	// with the JSON null value. By default, fields with empty values are omitted
   680  	// from API requests. See
   681  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   682  	NullFields []string `json:"-"`
   683  }
   684  
   685  func (s *DnsBindPermission) MarshalJSON() ([]byte, error) {
   686  	type NoMethod DnsBindPermission
   687  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   688  }
   689  
   690  // DnsForwarding: DNS forwarding config. This config defines a list of domain
   691  // to name server mappings, and is attached to the private cloud for custom
   692  // domain resolution.
   693  type DnsForwarding struct {
   694  	// CreateTime: Output only. Creation time of this resource.
   695  	CreateTime string `json:"createTime,omitempty"`
   696  	// ForwardingRules: Required. List of domain mappings to configure
   697  	ForwardingRules []*ForwardingRule `json:"forwardingRules,omitempty"`
   698  	// Name: Output only. The resource name of this DNS profile. Resource names are
   699  	// schemeless URIs that follow the conventions in
   700  	// https://cloud.google.com/apis/design/resource_names. For example:
   701  	// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/dnsForwar
   702  	// ding`
   703  	Name string `json:"name,omitempty"`
   704  	// UpdateTime: Output only. Last update time of this resource.
   705  	UpdateTime string `json:"updateTime,omitempty"`
   706  
   707  	// ServerResponse contains the HTTP response code and headers from the server.
   708  	googleapi.ServerResponse `json:"-"`
   709  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
   710  	// unconditionally include in API requests. By default, fields with empty or
   711  	// default values are omitted from API requests. See
   712  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   713  	// details.
   714  	ForceSendFields []string `json:"-"`
   715  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
   716  	// requests with the JSON null value. By default, fields with empty values are
   717  	// omitted from API requests. See
   718  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   719  	NullFields []string `json:"-"`
   720  }
   721  
   722  func (s *DnsForwarding) MarshalJSON() ([]byte, error) {
   723  	type NoMethod DnsForwarding
   724  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   725  }
   726  
   727  // Empty: A generic empty message that you can re-use to avoid defining
   728  // duplicated empty messages in your APIs. A typical example is to use it as
   729  // the request or the response type of an API method. For instance: service Foo
   730  // { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
   731  type Empty struct {
   732  	// ServerResponse contains the HTTP response code and headers from the server.
   733  	googleapi.ServerResponse `json:"-"`
   734  }
   735  
   736  // Expr: Represents a textual expression in the Common Expression Language
   737  // (CEL) syntax. CEL is a C-like expression language. The syntax and semantics
   738  // of CEL are documented at https://github.com/google/cel-spec. Example
   739  // (Comparison): title: "Summary size limit" description: "Determines if a
   740  // summary is less than 100 chars" expression: "document.summary.size() < 100"
   741  // Example (Equality): title: "Requestor is owner" description: "Determines if
   742  // requestor is the document owner" expression: "document.owner ==
   743  // request.auth.claims.email" Example (Logic): title: "Public documents"
   744  // description: "Determine whether the document should be publicly visible"
   745  // expression: "document.type != 'private' && document.type != 'internal'"
   746  // Example (Data Manipulation): title: "Notification string" description:
   747  // "Create a notification string with a timestamp." expression: "'New message
   748  // received at ' + string(document.create_time)" The exact variables and
   749  // functions that may be referenced within an expression are determined by the
   750  // service that evaluates it. See the service documentation for additional
   751  // information.
   752  type Expr struct {
   753  	// Description: Optional. Description of the expression. This is a longer text
   754  	// which describes the expression, e.g. when hovered over it in a UI.
   755  	Description string `json:"description,omitempty"`
   756  	// Expression: Textual representation of an expression in Common Expression
   757  	// Language syntax.
   758  	Expression string `json:"expression,omitempty"`
   759  	// Location: Optional. String indicating the location of the expression for
   760  	// error reporting, e.g. a file name and a position in the file.
   761  	Location string `json:"location,omitempty"`
   762  	// Title: Optional. Title for the expression, i.e. a short string describing
   763  	// its purpose. This can be used e.g. in UIs which allow to enter the
   764  	// expression.
   765  	Title string `json:"title,omitempty"`
   766  	// ForceSendFields is a list of field names (e.g. "Description") to
   767  	// unconditionally include in API requests. By default, fields with empty or
   768  	// default values are omitted from API requests. See
   769  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   770  	// details.
   771  	ForceSendFields []string `json:"-"`
   772  	// NullFields is a list of field names (e.g. "Description") to include in API
   773  	// requests with the JSON null value. By default, fields with empty values are
   774  	// omitted from API requests. See
   775  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   776  	NullFields []string `json:"-"`
   777  }
   778  
   779  func (s *Expr) MarshalJSON() ([]byte, error) {
   780  	type NoMethod Expr
   781  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   782  }
   783  
   784  // ExternalAccessRule: External access firewall rules for filtering incoming
   785  // traffic destined to `ExternalAddress` resources.
   786  type ExternalAccessRule struct {
   787  	// Action: The action that the external access rule performs.
   788  	//
   789  	// Possible values:
   790  	//   "ACTION_UNSPECIFIED" - Defaults to allow.
   791  	//   "ALLOW" - Allows connections that match the other specified components.
   792  	//   "DENY" - Blocks connections that match the other specified components.
   793  	Action string `json:"action,omitempty"`
   794  	// CreateTime: Output only. Creation time of this resource.
   795  	CreateTime string `json:"createTime,omitempty"`
   796  	// Description: User-provided description for this external access rule.
   797  	Description string `json:"description,omitempty"`
   798  	// DestinationIpRanges: If destination ranges are specified, the external
   799  	// access rule applies only to the traffic that has a destination IP address in
   800  	// these ranges. The specified IP addresses must have reserved external IP
   801  	// addresses in the scope of the parent network policy. To match all external
   802  	// IP addresses in the scope of the parent network policy, specify `0.0.0.0/0`.
   803  	// To match a specific external IP address, specify it using the
   804  	// `IpRange.external_address` property.
   805  	DestinationIpRanges []*IpRange `json:"destinationIpRanges,omitempty"`
   806  	// DestinationPorts: A list of destination ports to which the external access
   807  	// rule applies. This field is only applicable for the UDP or TCP protocol.
   808  	// Each entry must be either an integer or a range. For example: `["22"]`,
   809  	// `["80","443"]`, or `["12345-12349"]`. To match all destination ports,
   810  	// specify `["0-65535"]`.
   811  	DestinationPorts []string `json:"destinationPorts,omitempty"`
   812  	// IpProtocol: The IP protocol to which the external access rule applies. This
   813  	// value can be one of the following three protocol strings (not
   814  	// case-sensitive): `tcp`, `udp`, or `icmp`.
   815  	IpProtocol string `json:"ipProtocol,omitempty"`
   816  	// Name: Output only. The resource name of this external access rule. Resource
   817  	// names are schemeless URIs that follow the conventions in
   818  	// https://cloud.google.com/apis/design/resource_names. For example:
   819  	// `projects/my-project/locations/us-central1/networkPolicies/my-policy/external
   820  	// AccessRules/my-rule`
   821  	Name string `json:"name,omitempty"`
   822  	// Priority: External access rule priority, which determines the external
   823  	// access rule to use when multiple rules apply. If multiple rules have the
   824  	// same priority, their ordering is non-deterministic. If specific ordering is
   825  	// required, assign unique priorities to enforce such ordering. The external
   826  	// access rule priority is an integer from 100 to 4096, both inclusive. Lower
   827  	// integers indicate higher precedence. For example, a rule with priority `100`
   828  	// has higher precedence than a rule with priority `101`.
   829  	Priority int64 `json:"priority,omitempty"`
   830  	// SourceIpRanges: If source ranges are specified, the external access rule
   831  	// applies only to traffic that has a source IP address in these ranges. These
   832  	// ranges can either be expressed in the CIDR format or as an IP address. As
   833  	// only inbound rules are supported, `ExternalAddress` resources cannot be the
   834  	// source IP addresses of an external access rule. To match all source
   835  	// addresses, specify `0.0.0.0/0`.
   836  	SourceIpRanges []*IpRange `json:"sourceIpRanges,omitempty"`
   837  	// SourcePorts: A list of source ports to which the external access rule
   838  	// applies. This field is only applicable for the UDP or TCP protocol. Each
   839  	// entry must be either an integer or a range. For example: `["22"]`,
   840  	// `["80","443"]`, or `["12345-12349"]`. To match all source ports, specify
   841  	// `["0-65535"]`.
   842  	SourcePorts []string `json:"sourcePorts,omitempty"`
   843  	// State: Output only. The state of the resource.
   844  	//
   845  	// Possible values:
   846  	//   "STATE_UNSPECIFIED" - The default value. This value is used if the state
   847  	// is omitted.
   848  	//   "ACTIVE" - The rule is ready.
   849  	//   "CREATING" - The rule is being created.
   850  	//   "UPDATING" - The rule is being updated.
   851  	//   "DELETING" - The rule is being deleted.
   852  	State string `json:"state,omitempty"`
   853  	// Uid: Output only. System-generated unique identifier for the resource.
   854  	Uid string `json:"uid,omitempty"`
   855  	// UpdateTime: Output only. Last update time of this resource.
   856  	UpdateTime string `json:"updateTime,omitempty"`
   857  
   858  	// ServerResponse contains the HTTP response code and headers from the server.
   859  	googleapi.ServerResponse `json:"-"`
   860  	// ForceSendFields is a list of field names (e.g. "Action") to unconditionally
   861  	// include in API requests. By default, fields with empty or default values are
   862  	// omitted from API requests. See
   863  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   864  	// details.
   865  	ForceSendFields []string `json:"-"`
   866  	// NullFields is a list of field names (e.g. "Action") to include in API
   867  	// requests with the JSON null value. By default, fields with empty values are
   868  	// omitted from API requests. See
   869  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   870  	NullFields []string `json:"-"`
   871  }
   872  
   873  func (s *ExternalAccessRule) MarshalJSON() ([]byte, error) {
   874  	type NoMethod ExternalAccessRule
   875  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   876  }
   877  
   878  // ExternalAddress: Represents an allocated external IP address and its
   879  // corresponding internal IP address in a private cloud.
   880  type ExternalAddress struct {
   881  	// CreateTime: Output only. Creation time of this resource.
   882  	CreateTime string `json:"createTime,omitempty"`
   883  	// Description: User-provided description for this resource.
   884  	Description string `json:"description,omitempty"`
   885  	// ExternalIp: Output only. The external IP address of a workload VM.
   886  	ExternalIp string `json:"externalIp,omitempty"`
   887  	// InternalIp: The internal IP address of a workload VM.
   888  	InternalIp string `json:"internalIp,omitempty"`
   889  	// Name: Output only. The resource name of this external IP address. Resource
   890  	// names are schemeless URIs that follow the conventions in
   891  	// https://cloud.google.com/apis/design/resource_names. For example:
   892  	// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/externalA
   893  	// ddresses/my-address`
   894  	Name string `json:"name,omitempty"`
   895  	// State: Output only. The state of the resource.
   896  	//
   897  	// Possible values:
   898  	//   "STATE_UNSPECIFIED" - The default value. This value should never be used.
   899  	//   "ACTIVE" - The address is ready.
   900  	//   "CREATING" - The address is being created.
   901  	//   "UPDATING" - The address is being updated.
   902  	//   "DELETING" - The address is being deleted.
   903  	State string `json:"state,omitempty"`
   904  	// Uid: Output only. System-generated unique identifier for the resource.
   905  	Uid string `json:"uid,omitempty"`
   906  	// UpdateTime: Output only. Last update time of this resource.
   907  	UpdateTime string `json:"updateTime,omitempty"`
   908  
   909  	// ServerResponse contains the HTTP response code and headers from the server.
   910  	googleapi.ServerResponse `json:"-"`
   911  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
   912  	// unconditionally include in API requests. By default, fields with empty or
   913  	// default values are omitted from API requests. See
   914  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   915  	// details.
   916  	ForceSendFields []string `json:"-"`
   917  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
   918  	// requests with the JSON null value. By default, fields with empty values are
   919  	// omitted from API requests. See
   920  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   921  	NullFields []string `json:"-"`
   922  }
   923  
   924  func (s *ExternalAddress) MarshalJSON() ([]byte, error) {
   925  	type NoMethod ExternalAddress
   926  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   927  }
   928  
   929  // FetchNetworkPolicyExternalAddressesResponse: Response message for
   930  // VmwareEngine.FetchNetworkPolicyExternalAddresses
   931  type FetchNetworkPolicyExternalAddressesResponse struct {
   932  	// ExternalAddresses: A list of external IP addresses assigned to VMware
   933  	// workload VMs within the scope of the given network policy.
   934  	ExternalAddresses []*ExternalAddress `json:"externalAddresses,omitempty"`
   935  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
   936  	// next page. If this field is omitted, there are no subsequent pages.
   937  	NextPageToken string `json:"nextPageToken,omitempty"`
   938  
   939  	// ServerResponse contains the HTTP response code and headers from the server.
   940  	googleapi.ServerResponse `json:"-"`
   941  	// ForceSendFields is a list of field names (e.g. "ExternalAddresses") to
   942  	// unconditionally include in API requests. By default, fields with empty or
   943  	// default values are omitted from API requests. See
   944  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   945  	// details.
   946  	ForceSendFields []string `json:"-"`
   947  	// NullFields is a list of field names (e.g. "ExternalAddresses") to include in
   948  	// API requests with the JSON null value. By default, fields with empty values
   949  	// are omitted from API requests. See
   950  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   951  	NullFields []string `json:"-"`
   952  }
   953  
   954  func (s *FetchNetworkPolicyExternalAddressesResponse) MarshalJSON() ([]byte, error) {
   955  	type NoMethod FetchNetworkPolicyExternalAddressesResponse
   956  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   957  }
   958  
   959  // ForwardingRule: A forwarding rule is a mapping of a `domain` to
   960  // `name_servers`. This mapping allows VMware Engine to resolve domains for
   961  // attached private clouds by forwarding DNS requests for a given domain to the
   962  // specified nameservers.
   963  type ForwardingRule struct {
   964  	// Domain: Required. Domain used to resolve a `name_servers` list.
   965  	Domain string `json:"domain,omitempty"`
   966  	// NameServers: Required. List of DNS servers to use for domain resolution
   967  	NameServers []string `json:"nameServers,omitempty"`
   968  	// ForceSendFields is a list of field names (e.g. "Domain") to unconditionally
   969  	// include in API requests. By default, fields with empty or default values are
   970  	// omitted from API requests. See
   971  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   972  	// details.
   973  	ForceSendFields []string `json:"-"`
   974  	// NullFields is a list of field names (e.g. "Domain") to include in API
   975  	// requests with the JSON null value. By default, fields with empty values are
   976  	// omitted from API requests. See
   977  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   978  	NullFields []string `json:"-"`
   979  }
   980  
   981  func (s *ForwardingRule) MarshalJSON() ([]byte, error) {
   982  	type NoMethod ForwardingRule
   983  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   984  }
   985  
   986  // GrantDnsBindPermissionRequest: Request message for
   987  // VmwareEngine.GrantDnsBindPermission
   988  type GrantDnsBindPermissionRequest struct {
   989  	// Principal: Required. The consumer provided user/service account which needs
   990  	// to be granted permission to bind with the intranet VPC corresponding to the
   991  	// consumer project.
   992  	Principal *Principal `json:"principal,omitempty"`
   993  	// RequestId: Optional. A request ID to identify requests. Specify a unique
   994  	// request ID so that if you must retry your request, the server will know to
   995  	// ignore the request if it has already been completed. The server guarantees
   996  	// that a request doesn't result in creation of duplicate commitments for at
   997  	// least 60 minutes. For example, consider a situation where you make an
   998  	// initial request and the request times out. If you make the request again
   999  	// with the same request ID, the server can check if original operation with
  1000  	// the same request ID was received, and if so, will ignore the second request.
  1001  	// This prevents clients from accidentally creating duplicate commitments. The
  1002  	// request ID must be a valid UUID with the exception that zero UUID is not
  1003  	// supported (00000000-0000-0000-0000-000000000000).
  1004  	RequestId string `json:"requestId,omitempty"`
  1005  	// ForceSendFields is a list of field names (e.g. "Principal") to
  1006  	// unconditionally include in API requests. By default, fields with empty or
  1007  	// default values are omitted from API requests. See
  1008  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1009  	// details.
  1010  	ForceSendFields []string `json:"-"`
  1011  	// NullFields is a list of field names (e.g. "Principal") to include in API
  1012  	// requests with the JSON null value. By default, fields with empty values are
  1013  	// omitted from API requests. See
  1014  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1015  	NullFields []string `json:"-"`
  1016  }
  1017  
  1018  func (s *GrantDnsBindPermissionRequest) MarshalJSON() ([]byte, error) {
  1019  	type NoMethod GrantDnsBindPermissionRequest
  1020  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1021  }
  1022  
  1023  // Hcx: Details about a HCX Cloud Manager appliance.
  1024  type Hcx struct {
  1025  	// Fqdn: Fully qualified domain name of the appliance.
  1026  	Fqdn string `json:"fqdn,omitempty"`
  1027  	// InternalIp: Internal IP address of the appliance.
  1028  	InternalIp string `json:"internalIp,omitempty"`
  1029  	// State: Output only. The state of the appliance.
  1030  	//
  1031  	// Possible values:
  1032  	//   "STATE_UNSPECIFIED" - Unspecified appliance state. This is the default
  1033  	// value.
  1034  	//   "ACTIVE" - The appliance is operational and can be used.
  1035  	//   "CREATING" - The appliance is being deployed.
  1036  	State string `json:"state,omitempty"`
  1037  	// Version: Version of the appliance.
  1038  	Version string `json:"version,omitempty"`
  1039  	// ForceSendFields is a list of field names (e.g. "Fqdn") to unconditionally
  1040  	// include in API requests. By default, fields with empty or default values are
  1041  	// omitted from API requests. See
  1042  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1043  	// details.
  1044  	ForceSendFields []string `json:"-"`
  1045  	// NullFields is a list of field names (e.g. "Fqdn") to include in API requests
  1046  	// with the JSON null value. By default, fields with empty values are omitted
  1047  	// from API requests. See
  1048  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1049  	NullFields []string `json:"-"`
  1050  }
  1051  
  1052  func (s *Hcx) MarshalJSON() ([]byte, error) {
  1053  	type NoMethod Hcx
  1054  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1055  }
  1056  
  1057  // HcxActivationKey: HCX activation key. A default key is created during
  1058  // private cloud provisioning, but this behavior is subject to change and you
  1059  // should always verify active keys. Use VmwareEngine.ListHcxActivationKeys to
  1060  // retrieve existing keys and VmwareEngine.CreateHcxActivationKey to create new
  1061  // ones.
  1062  type HcxActivationKey struct {
  1063  	// ActivationKey: Output only. HCX activation key.
  1064  	ActivationKey string `json:"activationKey,omitempty"`
  1065  	// CreateTime: Output only. Creation time of HCX activation key.
  1066  	CreateTime string `json:"createTime,omitempty"`
  1067  	// Name: Output only. The resource name of this HcxActivationKey. Resource
  1068  	// names are schemeless URIs that follow the conventions in
  1069  	// https://cloud.google.com/apis/design/resource_names. For example:
  1070  	// `projects/my-project/locations/us-central1/privateClouds/my-cloud/hcxActivati
  1071  	// onKeys/my-key`
  1072  	Name string `json:"name,omitempty"`
  1073  	// State: Output only. State of HCX activation key.
  1074  	//
  1075  	// Possible values:
  1076  	//   "STATE_UNSPECIFIED" - Unspecified state.
  1077  	//   "AVAILABLE" - State of a newly generated activation key.
  1078  	//   "CONSUMED" - State of key when it has been used to activate HCX appliance.
  1079  	//   "CREATING" - State of key when it is being created.
  1080  	State string `json:"state,omitempty"`
  1081  	// Uid: Output only. System-generated unique identifier for the resource.
  1082  	Uid string `json:"uid,omitempty"`
  1083  
  1084  	// ServerResponse contains the HTTP response code and headers from the server.
  1085  	googleapi.ServerResponse `json:"-"`
  1086  	// ForceSendFields is a list of field names (e.g. "ActivationKey") to
  1087  	// unconditionally include in API requests. By default, fields with empty or
  1088  	// default values are omitted from API requests. See
  1089  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1090  	// details.
  1091  	ForceSendFields []string `json:"-"`
  1092  	// NullFields is a list of field names (e.g. "ActivationKey") to include in API
  1093  	// requests with the JSON null value. By default, fields with empty values are
  1094  	// omitted from API requests. See
  1095  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1096  	NullFields []string `json:"-"`
  1097  }
  1098  
  1099  func (s *HcxActivationKey) MarshalJSON() ([]byte, error) {
  1100  	type NoMethod HcxActivationKey
  1101  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1102  }
  1103  
  1104  // IpRange: An IP range provided in any one of the supported formats.
  1105  type IpRange struct {
  1106  	// ExternalAddress: The name of an `ExternalAddress` resource. The external
  1107  	// address must have been reserved in the scope of this external access rule's
  1108  	// parent network policy. Provide the external address name in the form of
  1109  	// `projects/{project}/locations/{location}/privateClouds/{private_cloud}/extern
  1110  	// alAddresses/{external_address}`. For example:
  1111  	// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/externalA
  1112  	// ddresses/my-address`.
  1113  	ExternalAddress string `json:"externalAddress,omitempty"`
  1114  	// IpAddress: A single IP address. For example: `10.0.0.5`.
  1115  	IpAddress string `json:"ipAddress,omitempty"`
  1116  	// IpAddressRange: An IP address range in the CIDR format. For example:
  1117  	// `10.0.0.0/24`.
  1118  	IpAddressRange string `json:"ipAddressRange,omitempty"`
  1119  	// ForceSendFields is a list of field names (e.g. "ExternalAddress") to
  1120  	// unconditionally include in API requests. By default, fields with empty or
  1121  	// default values are omitted from API requests. See
  1122  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1123  	// details.
  1124  	ForceSendFields []string `json:"-"`
  1125  	// NullFields is a list of field names (e.g. "ExternalAddress") to include in
  1126  	// API requests with the JSON null value. By default, fields with empty values
  1127  	// are omitted from API requests. See
  1128  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1129  	NullFields []string `json:"-"`
  1130  }
  1131  
  1132  func (s *IpRange) MarshalJSON() ([]byte, error) {
  1133  	type NoMethod IpRange
  1134  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1135  }
  1136  
  1137  // ListClustersResponse: Response message for VmwareEngine.ListClusters
  1138  type ListClustersResponse struct {
  1139  	// Clusters: A list of private cloud clusters.
  1140  	Clusters []*Cluster `json:"clusters,omitempty"`
  1141  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  1142  	// next page. If this field is omitted, there are no subsequent pages.
  1143  	NextPageToken string `json:"nextPageToken,omitempty"`
  1144  	// Unreachable: Locations that could not be reached when making an aggregated
  1145  	// query using wildcards.
  1146  	Unreachable []string `json:"unreachable,omitempty"`
  1147  
  1148  	// ServerResponse contains the HTTP response code and headers from the server.
  1149  	googleapi.ServerResponse `json:"-"`
  1150  	// ForceSendFields is a list of field names (e.g. "Clusters") to
  1151  	// unconditionally include in API requests. By default, fields with empty or
  1152  	// default values are omitted from API requests. See
  1153  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1154  	// details.
  1155  	ForceSendFields []string `json:"-"`
  1156  	// NullFields is a list of field names (e.g. "Clusters") to include in API
  1157  	// requests with the JSON null value. By default, fields with empty values are
  1158  	// omitted from API requests. See
  1159  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1160  	NullFields []string `json:"-"`
  1161  }
  1162  
  1163  func (s *ListClustersResponse) MarshalJSON() ([]byte, error) {
  1164  	type NoMethod ListClustersResponse
  1165  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1166  }
  1167  
  1168  // ListExternalAccessRulesResponse: Response message for
  1169  // VmwareEngine.ListExternalAccessRules
  1170  type ListExternalAccessRulesResponse struct {
  1171  	// ExternalAccessRules: A list of external access firewall rules.
  1172  	ExternalAccessRules []*ExternalAccessRule `json:"externalAccessRules,omitempty"`
  1173  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  1174  	// next page. If this field is omitted, there are no subsequent pages.
  1175  	NextPageToken string `json:"nextPageToken,omitempty"`
  1176  	// Unreachable: Locations that could not be reached when making an aggregated
  1177  	// query using wildcards.
  1178  	Unreachable []string `json:"unreachable,omitempty"`
  1179  
  1180  	// ServerResponse contains the HTTP response code and headers from the server.
  1181  	googleapi.ServerResponse `json:"-"`
  1182  	// ForceSendFields is a list of field names (e.g. "ExternalAccessRules") to
  1183  	// unconditionally include in API requests. By default, fields with empty or
  1184  	// default values are omitted from API requests. See
  1185  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1186  	// details.
  1187  	ForceSendFields []string `json:"-"`
  1188  	// NullFields is a list of field names (e.g. "ExternalAccessRules") to include
  1189  	// in API requests with the JSON null value. By default, fields with empty
  1190  	// values are omitted from API requests. See
  1191  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1192  	NullFields []string `json:"-"`
  1193  }
  1194  
  1195  func (s *ListExternalAccessRulesResponse) MarshalJSON() ([]byte, error) {
  1196  	type NoMethod ListExternalAccessRulesResponse
  1197  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1198  }
  1199  
  1200  // ListExternalAddressesResponse: Response message for
  1201  // VmwareEngine.ListExternalAddresses
  1202  type ListExternalAddressesResponse struct {
  1203  	// ExternalAddresses: A list of external IP addresses.
  1204  	ExternalAddresses []*ExternalAddress `json:"externalAddresses,omitempty"`
  1205  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  1206  	// next page. If this field is omitted, there are no subsequent pages.
  1207  	NextPageToken string `json:"nextPageToken,omitempty"`
  1208  	// Unreachable: Locations that could not be reached when making an aggregated
  1209  	// query using wildcards.
  1210  	Unreachable []string `json:"unreachable,omitempty"`
  1211  
  1212  	// ServerResponse contains the HTTP response code and headers from the server.
  1213  	googleapi.ServerResponse `json:"-"`
  1214  	// ForceSendFields is a list of field names (e.g. "ExternalAddresses") to
  1215  	// unconditionally include in API requests. By default, fields with empty or
  1216  	// default values are omitted from API requests. See
  1217  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1218  	// details.
  1219  	ForceSendFields []string `json:"-"`
  1220  	// NullFields is a list of field names (e.g. "ExternalAddresses") to include in
  1221  	// API requests with the JSON null value. By default, fields with empty values
  1222  	// are omitted from API requests. See
  1223  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1224  	NullFields []string `json:"-"`
  1225  }
  1226  
  1227  func (s *ListExternalAddressesResponse) MarshalJSON() ([]byte, error) {
  1228  	type NoMethod ListExternalAddressesResponse
  1229  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1230  }
  1231  
  1232  // ListHcxActivationKeysResponse: Response message for
  1233  // VmwareEngine.ListHcxActivationKeys
  1234  type ListHcxActivationKeysResponse struct {
  1235  	// HcxActivationKeys: List of HCX activation keys.
  1236  	HcxActivationKeys []*HcxActivationKey `json:"hcxActivationKeys,omitempty"`
  1237  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  1238  	// next page. If this field is omitted, there are no subsequent pages.
  1239  	NextPageToken string `json:"nextPageToken,omitempty"`
  1240  	// Unreachable: Locations that could not be reached when making an aggregated
  1241  	// query using wildcards.
  1242  	Unreachable []string `json:"unreachable,omitempty"`
  1243  
  1244  	// ServerResponse contains the HTTP response code and headers from the server.
  1245  	googleapi.ServerResponse `json:"-"`
  1246  	// ForceSendFields is a list of field names (e.g. "HcxActivationKeys") to
  1247  	// unconditionally include in API requests. By default, fields with empty or
  1248  	// default values are omitted from API requests. See
  1249  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1250  	// details.
  1251  	ForceSendFields []string `json:"-"`
  1252  	// NullFields is a list of field names (e.g. "HcxActivationKeys") to include in
  1253  	// API requests with the JSON null value. By default, fields with empty values
  1254  	// are omitted from API requests. See
  1255  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1256  	NullFields []string `json:"-"`
  1257  }
  1258  
  1259  func (s *ListHcxActivationKeysResponse) MarshalJSON() ([]byte, error) {
  1260  	type NoMethod ListHcxActivationKeysResponse
  1261  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1262  }
  1263  
  1264  // ListLocationsResponse: The response message for Locations.ListLocations.
  1265  type ListLocationsResponse struct {
  1266  	// Locations: A list of locations that matches the specified filter in the
  1267  	// request.
  1268  	Locations []*Location `json:"locations,omitempty"`
  1269  	// NextPageToken: The standard List next-page token.
  1270  	NextPageToken string `json:"nextPageToken,omitempty"`
  1271  
  1272  	// ServerResponse contains the HTTP response code and headers from the server.
  1273  	googleapi.ServerResponse `json:"-"`
  1274  	// ForceSendFields is a list of field names (e.g. "Locations") to
  1275  	// unconditionally include in API requests. By default, fields with empty or
  1276  	// default values are omitted from API requests. See
  1277  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1278  	// details.
  1279  	ForceSendFields []string `json:"-"`
  1280  	// NullFields is a list of field names (e.g. "Locations") to include in API
  1281  	// requests with the JSON null value. By default, fields with empty values are
  1282  	// omitted from API requests. See
  1283  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1284  	NullFields []string `json:"-"`
  1285  }
  1286  
  1287  func (s *ListLocationsResponse) MarshalJSON() ([]byte, error) {
  1288  	type NoMethod ListLocationsResponse
  1289  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1290  }
  1291  
  1292  // ListLoggingServersResponse: Response message for
  1293  // VmwareEngine.ListLoggingServers
  1294  type ListLoggingServersResponse struct {
  1295  	// LoggingServers: A list of Logging Servers.
  1296  	LoggingServers []*LoggingServer `json:"loggingServers,omitempty"`
  1297  	// NextPageToken: A token, which can be send as `page_token` to retrieve the
  1298  	// next page. If this field is omitted, there are no subsequent pages.
  1299  	NextPageToken string `json:"nextPageToken,omitempty"`
  1300  	// Unreachable: Locations that could not be reached when making an aggregated
  1301  	// query using wildcards.
  1302  	Unreachable []string `json:"unreachable,omitempty"`
  1303  
  1304  	// ServerResponse contains the HTTP response code and headers from the server.
  1305  	googleapi.ServerResponse `json:"-"`
  1306  	// ForceSendFields is a list of field names (e.g. "LoggingServers") to
  1307  	// unconditionally include in API requests. By default, fields with empty or
  1308  	// default values are omitted from API requests. See
  1309  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1310  	// details.
  1311  	ForceSendFields []string `json:"-"`
  1312  	// NullFields is a list of field names (e.g. "LoggingServers") to include in
  1313  	// API requests with the JSON null value. By default, fields with empty values
  1314  	// are omitted from API requests. See
  1315  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1316  	NullFields []string `json:"-"`
  1317  }
  1318  
  1319  func (s *ListLoggingServersResponse) MarshalJSON() ([]byte, error) {
  1320  	type NoMethod ListLoggingServersResponse
  1321  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1322  }
  1323  
  1324  // ListManagementDnsZoneBindingsResponse: Response message for
  1325  // VmwareEngine.ListManagementDnsZoneBindings
  1326  type ListManagementDnsZoneBindingsResponse struct {
  1327  	// ManagementDnsZoneBindings: A list of management DNS zone bindings.
  1328  	ManagementDnsZoneBindings []*ManagementDnsZoneBinding `json:"managementDnsZoneBindings,omitempty"`
  1329  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  1330  	// next page. If this field is omitted, there are no subsequent pages.
  1331  	NextPageToken string `json:"nextPageToken,omitempty"`
  1332  	// Unreachable: Locations that could not be reached when making an aggregated
  1333  	// query using wildcards.
  1334  	Unreachable []string `json:"unreachable,omitempty"`
  1335  
  1336  	// ServerResponse contains the HTTP response code and headers from the server.
  1337  	googleapi.ServerResponse `json:"-"`
  1338  	// ForceSendFields is a list of field names (e.g. "ManagementDnsZoneBindings")
  1339  	// to unconditionally include in API requests. By default, fields with empty or
  1340  	// default values are omitted from API requests. See
  1341  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1342  	// details.
  1343  	ForceSendFields []string `json:"-"`
  1344  	// NullFields is a list of field names (e.g. "ManagementDnsZoneBindings") to
  1345  	// include in API requests with the JSON null value. By default, fields with
  1346  	// empty values are omitted from API requests. See
  1347  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1348  	NullFields []string `json:"-"`
  1349  }
  1350  
  1351  func (s *ListManagementDnsZoneBindingsResponse) MarshalJSON() ([]byte, error) {
  1352  	type NoMethod ListManagementDnsZoneBindingsResponse
  1353  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1354  }
  1355  
  1356  // ListNetworkPeeringsResponse: Response message for
  1357  // VmwareEngine.ListNetworkPeerings
  1358  type ListNetworkPeeringsResponse struct {
  1359  	// NetworkPeerings: A list of network peerings.
  1360  	NetworkPeerings []*NetworkPeering `json:"networkPeerings,omitempty"`
  1361  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  1362  	// next page. If this field is omitted, there are no subsequent pages.
  1363  	NextPageToken string `json:"nextPageToken,omitempty"`
  1364  	// Unreachable: Unreachable resources.
  1365  	Unreachable []string `json:"unreachable,omitempty"`
  1366  
  1367  	// ServerResponse contains the HTTP response code and headers from the server.
  1368  	googleapi.ServerResponse `json:"-"`
  1369  	// ForceSendFields is a list of field names (e.g. "NetworkPeerings") to
  1370  	// unconditionally include in API requests. By default, fields with empty or
  1371  	// default values are omitted from API requests. See
  1372  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1373  	// details.
  1374  	ForceSendFields []string `json:"-"`
  1375  	// NullFields is a list of field names (e.g. "NetworkPeerings") to include in
  1376  	// API requests with the JSON null value. By default, fields with empty values
  1377  	// are omitted from API requests. See
  1378  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1379  	NullFields []string `json:"-"`
  1380  }
  1381  
  1382  func (s *ListNetworkPeeringsResponse) MarshalJSON() ([]byte, error) {
  1383  	type NoMethod ListNetworkPeeringsResponse
  1384  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1385  }
  1386  
  1387  // ListNetworkPoliciesResponse: Response message for
  1388  // VmwareEngine.ListNetworkPolicies
  1389  type ListNetworkPoliciesResponse struct {
  1390  	// NetworkPolicies: A list of network policies.
  1391  	NetworkPolicies []*NetworkPolicy `json:"networkPolicies,omitempty"`
  1392  	// NextPageToken: A token, which can be send as `page_token` to retrieve the
  1393  	// next page. If this field is omitted, there are no subsequent pages.
  1394  	NextPageToken string `json:"nextPageToken,omitempty"`
  1395  	// Unreachable: Locations that could not be reached when making an aggregated
  1396  	// query using wildcards.
  1397  	Unreachable []string `json:"unreachable,omitempty"`
  1398  
  1399  	// ServerResponse contains the HTTP response code and headers from the server.
  1400  	googleapi.ServerResponse `json:"-"`
  1401  	// ForceSendFields is a list of field names (e.g. "NetworkPolicies") to
  1402  	// unconditionally include in API requests. By default, fields with empty or
  1403  	// default values are omitted from API requests. See
  1404  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1405  	// details.
  1406  	ForceSendFields []string `json:"-"`
  1407  	// NullFields is a list of field names (e.g. "NetworkPolicies") to include in
  1408  	// API requests with the JSON null value. By default, fields with empty values
  1409  	// are omitted from API requests. See
  1410  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1411  	NullFields []string `json:"-"`
  1412  }
  1413  
  1414  func (s *ListNetworkPoliciesResponse) MarshalJSON() ([]byte, error) {
  1415  	type NoMethod ListNetworkPoliciesResponse
  1416  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1417  }
  1418  
  1419  // ListNodeTypesResponse: Response message for VmwareEngine.ListNodeTypes
  1420  type ListNodeTypesResponse struct {
  1421  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  1422  	// next page. If this field is omitted, there are no subsequent pages.
  1423  	NextPageToken string `json:"nextPageToken,omitempty"`
  1424  	// NodeTypes: A list of Node Types.
  1425  	NodeTypes []*NodeType `json:"nodeTypes,omitempty"`
  1426  	// Unreachable: Locations that could not be reached when making an aggregated
  1427  	// query using wildcards.
  1428  	Unreachable []string `json:"unreachable,omitempty"`
  1429  
  1430  	// ServerResponse contains the HTTP response code and headers from the server.
  1431  	googleapi.ServerResponse `json:"-"`
  1432  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1433  	// unconditionally include in API requests. By default, fields with empty or
  1434  	// default values are omitted from API requests. See
  1435  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1436  	// details.
  1437  	ForceSendFields []string `json:"-"`
  1438  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1439  	// requests with the JSON null value. By default, fields with empty values are
  1440  	// omitted from API requests. See
  1441  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1442  	NullFields []string `json:"-"`
  1443  }
  1444  
  1445  func (s *ListNodeTypesResponse) MarshalJSON() ([]byte, error) {
  1446  	type NoMethod ListNodeTypesResponse
  1447  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1448  }
  1449  
  1450  // ListNodesResponse: Response message for VmwareEngine.ListNodes
  1451  type ListNodesResponse struct {
  1452  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  1453  	// next page. If this field is omitted, there are no subsequent pages.
  1454  	NextPageToken string `json:"nextPageToken,omitempty"`
  1455  	// Nodes: The nodes.
  1456  	Nodes []*Node `json:"nodes,omitempty"`
  1457  
  1458  	// ServerResponse contains the HTTP response code and headers from the server.
  1459  	googleapi.ServerResponse `json:"-"`
  1460  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1461  	// unconditionally include in API requests. By default, fields with empty or
  1462  	// default values are omitted from API requests. See
  1463  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1464  	// details.
  1465  	ForceSendFields []string `json:"-"`
  1466  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1467  	// requests with the JSON null value. By default, fields with empty values are
  1468  	// omitted from API requests. See
  1469  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1470  	NullFields []string `json:"-"`
  1471  }
  1472  
  1473  func (s *ListNodesResponse) MarshalJSON() ([]byte, error) {
  1474  	type NoMethod ListNodesResponse
  1475  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1476  }
  1477  
  1478  // ListOperationsResponse: The response message for Operations.ListOperations.
  1479  type ListOperationsResponse struct {
  1480  	// NextPageToken: The standard List next-page token.
  1481  	NextPageToken string `json:"nextPageToken,omitempty"`
  1482  	// Operations: A list of operations that matches the specified filter in the
  1483  	// request.
  1484  	Operations []*Operation `json:"operations,omitempty"`
  1485  
  1486  	// ServerResponse contains the HTTP response code and headers from the server.
  1487  	googleapi.ServerResponse `json:"-"`
  1488  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1489  	// unconditionally include in API requests. By default, fields with empty or
  1490  	// default values are omitted from API requests. See
  1491  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1492  	// details.
  1493  	ForceSendFields []string `json:"-"`
  1494  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1495  	// requests with the JSON null value. By default, fields with empty values are
  1496  	// omitted from API requests. See
  1497  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1498  	NullFields []string `json:"-"`
  1499  }
  1500  
  1501  func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) {
  1502  	type NoMethod ListOperationsResponse
  1503  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1504  }
  1505  
  1506  // ListPeeringRoutesResponse: Response message for
  1507  // VmwareEngine.ListPeeringRoutes
  1508  type ListPeeringRoutesResponse struct {
  1509  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  1510  	// next page. If this field is omitted, there are no subsequent pages.
  1511  	NextPageToken string `json:"nextPageToken,omitempty"`
  1512  	// PeeringRoutes: A list of peering routes.
  1513  	PeeringRoutes []*PeeringRoute `json:"peeringRoutes,omitempty"`
  1514  
  1515  	// ServerResponse contains the HTTP response code and headers from the server.
  1516  	googleapi.ServerResponse `json:"-"`
  1517  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1518  	// unconditionally include in API requests. By default, fields with empty or
  1519  	// default values are omitted from API requests. See
  1520  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1521  	// details.
  1522  	ForceSendFields []string `json:"-"`
  1523  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1524  	// requests with the JSON null value. By default, fields with empty values are
  1525  	// omitted from API requests. See
  1526  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1527  	NullFields []string `json:"-"`
  1528  }
  1529  
  1530  func (s *ListPeeringRoutesResponse) MarshalJSON() ([]byte, error) {
  1531  	type NoMethod ListPeeringRoutesResponse
  1532  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1533  }
  1534  
  1535  // ListPrivateCloudsResponse: Response message for
  1536  // VmwareEngine.ListPrivateClouds
  1537  type ListPrivateCloudsResponse struct {
  1538  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  1539  	// next page. If this field is omitted, there are no subsequent pages.
  1540  	NextPageToken string `json:"nextPageToken,omitempty"`
  1541  	// PrivateClouds: A list of private clouds.
  1542  	PrivateClouds []*PrivateCloud `json:"privateClouds,omitempty"`
  1543  	// Unreachable: Locations that could not be reached when making an aggregated
  1544  	// query using wildcards.
  1545  	Unreachable []string `json:"unreachable,omitempty"`
  1546  
  1547  	// ServerResponse contains the HTTP response code and headers from the server.
  1548  	googleapi.ServerResponse `json:"-"`
  1549  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1550  	// unconditionally include in API requests. By default, fields with empty or
  1551  	// default values are omitted from API requests. See
  1552  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1553  	// details.
  1554  	ForceSendFields []string `json:"-"`
  1555  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1556  	// requests with the JSON null value. By default, fields with empty values are
  1557  	// omitted from API requests. See
  1558  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1559  	NullFields []string `json:"-"`
  1560  }
  1561  
  1562  func (s *ListPrivateCloudsResponse) MarshalJSON() ([]byte, error) {
  1563  	type NoMethod ListPrivateCloudsResponse
  1564  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1565  }
  1566  
  1567  // ListPrivateConnectionPeeringRoutesResponse: Response message for
  1568  // VmwareEngine.ListPrivateConnectionPeeringRoutes
  1569  type ListPrivateConnectionPeeringRoutesResponse struct {
  1570  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  1571  	// next page. If this field is omitted, there are no subsequent pages.
  1572  	NextPageToken string `json:"nextPageToken,omitempty"`
  1573  	// PeeringRoutes: A list of peering routes.
  1574  	PeeringRoutes []*PeeringRoute `json:"peeringRoutes,omitempty"`
  1575  
  1576  	// ServerResponse contains the HTTP response code and headers from the server.
  1577  	googleapi.ServerResponse `json:"-"`
  1578  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1579  	// unconditionally include in API requests. By default, fields with empty or
  1580  	// default values are omitted from API requests. See
  1581  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1582  	// details.
  1583  	ForceSendFields []string `json:"-"`
  1584  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1585  	// requests with the JSON null value. By default, fields with empty values are
  1586  	// omitted from API requests. See
  1587  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1588  	NullFields []string `json:"-"`
  1589  }
  1590  
  1591  func (s *ListPrivateConnectionPeeringRoutesResponse) MarshalJSON() ([]byte, error) {
  1592  	type NoMethod ListPrivateConnectionPeeringRoutesResponse
  1593  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1594  }
  1595  
  1596  // ListPrivateConnectionsResponse: Response message for
  1597  // VmwareEngine.ListPrivateConnections
  1598  type ListPrivateConnectionsResponse struct {
  1599  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  1600  	// next page. If this field is omitted, there are no subsequent pages.
  1601  	NextPageToken string `json:"nextPageToken,omitempty"`
  1602  	// PrivateConnections: A list of private connections.
  1603  	PrivateConnections []*PrivateConnection `json:"privateConnections,omitempty"`
  1604  	// Unreachable: Unreachable resources.
  1605  	Unreachable []string `json:"unreachable,omitempty"`
  1606  
  1607  	// ServerResponse contains the HTTP response code and headers from the server.
  1608  	googleapi.ServerResponse `json:"-"`
  1609  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1610  	// unconditionally include in API requests. By default, fields with empty or
  1611  	// default values are omitted from API requests. See
  1612  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1613  	// details.
  1614  	ForceSendFields []string `json:"-"`
  1615  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1616  	// requests with the JSON null value. By default, fields with empty values are
  1617  	// omitted from API requests. See
  1618  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1619  	NullFields []string `json:"-"`
  1620  }
  1621  
  1622  func (s *ListPrivateConnectionsResponse) MarshalJSON() ([]byte, error) {
  1623  	type NoMethod ListPrivateConnectionsResponse
  1624  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1625  }
  1626  
  1627  // ListSubnetsResponse: Response message for VmwareEngine.ListSubnets
  1628  type ListSubnetsResponse struct {
  1629  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  1630  	// next page. If this field is omitted, there are no subsequent pages.
  1631  	NextPageToken string `json:"nextPageToken,omitempty"`
  1632  	// Subnets: A list of subnets.
  1633  	Subnets []*Subnet `json:"subnets,omitempty"`
  1634  	// Unreachable: Locations that could not be reached when making an aggregated
  1635  	// query using wildcards.
  1636  	Unreachable []string `json:"unreachable,omitempty"`
  1637  
  1638  	// ServerResponse contains the HTTP response code and headers from the server.
  1639  	googleapi.ServerResponse `json:"-"`
  1640  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1641  	// unconditionally include in API requests. By default, fields with empty or
  1642  	// default values are omitted from API requests. See
  1643  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1644  	// details.
  1645  	ForceSendFields []string `json:"-"`
  1646  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1647  	// requests with the JSON null value. By default, fields with empty values are
  1648  	// omitted from API requests. See
  1649  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1650  	NullFields []string `json:"-"`
  1651  }
  1652  
  1653  func (s *ListSubnetsResponse) MarshalJSON() ([]byte, error) {
  1654  	type NoMethod ListSubnetsResponse
  1655  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1656  }
  1657  
  1658  // ListVmwareEngineNetworksResponse: Response message for
  1659  // VmwareEngine.ListVmwareEngineNetworks
  1660  type ListVmwareEngineNetworksResponse struct {
  1661  	// NextPageToken: A token, which can be sent as `page_token` to retrieve the
  1662  	// next page. If this field is omitted, there are no subsequent pages.
  1663  	NextPageToken string `json:"nextPageToken,omitempty"`
  1664  	// Unreachable: Unreachable resources.
  1665  	Unreachable []string `json:"unreachable,omitempty"`
  1666  	// VmwareEngineNetworks: A list of VMware Engine networks.
  1667  	VmwareEngineNetworks []*VmwareEngineNetwork `json:"vmwareEngineNetworks,omitempty"`
  1668  
  1669  	// ServerResponse contains the HTTP response code and headers from the server.
  1670  	googleapi.ServerResponse `json:"-"`
  1671  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1672  	// unconditionally include in API requests. By default, fields with empty or
  1673  	// default values are omitted from API requests. See
  1674  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1675  	// details.
  1676  	ForceSendFields []string `json:"-"`
  1677  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1678  	// requests with the JSON null value. By default, fields with empty values are
  1679  	// omitted from API requests. See
  1680  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1681  	NullFields []string `json:"-"`
  1682  }
  1683  
  1684  func (s *ListVmwareEngineNetworksResponse) MarshalJSON() ([]byte, error) {
  1685  	type NoMethod ListVmwareEngineNetworksResponse
  1686  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1687  }
  1688  
  1689  // Location: A resource that represents a Google Cloud location.
  1690  type Location struct {
  1691  	// DisplayName: The friendly name for this location, typically a nearby city
  1692  	// name. For example, "Tokyo".
  1693  	DisplayName string `json:"displayName,omitempty"`
  1694  	// Labels: Cross-service attributes for the location. For example
  1695  	// {"cloud.googleapis.com/region": "us-east1"}
  1696  	Labels map[string]string `json:"labels,omitempty"`
  1697  	// LocationId: The canonical id for this location. For example: "us-east1".
  1698  	LocationId string `json:"locationId,omitempty"`
  1699  	// Metadata: Service-specific metadata. For example the available capacity at
  1700  	// the given location.
  1701  	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
  1702  	// Name: Resource name for the location, which may vary between
  1703  	// implementations. For example:
  1704  	// "projects/example-project/locations/us-east1"
  1705  	Name string `json:"name,omitempty"`
  1706  
  1707  	// ServerResponse contains the HTTP response code and headers from the server.
  1708  	googleapi.ServerResponse `json:"-"`
  1709  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  1710  	// unconditionally include in API requests. By default, fields with empty or
  1711  	// default values are omitted from API requests. See
  1712  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1713  	// details.
  1714  	ForceSendFields []string `json:"-"`
  1715  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  1716  	// requests with the JSON null value. By default, fields with empty values are
  1717  	// omitted from API requests. See
  1718  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1719  	NullFields []string `json:"-"`
  1720  }
  1721  
  1722  func (s *Location) MarshalJSON() ([]byte, error) {
  1723  	type NoMethod Location
  1724  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1725  }
  1726  
  1727  // LocationMetadata: VmwareEngine specific metadata for the given
  1728  // google.cloud.location.Location. It is returned as a content of the
  1729  // `google.cloud.location.Location.metadata` field.
  1730  type LocationMetadata struct {
  1731  	// Capabilities: Output only. Capabilities of this location.
  1732  	//
  1733  	// Possible values:
  1734  	//   "CAPABILITY_UNSPECIFIED" - The default value. This value is used if the
  1735  	// capability is omitted or unknown.
  1736  	//   "STRETCHED_CLUSTERS" - Stretch clusters are supported in this location.
  1737  	Capabilities []string `json:"capabilities,omitempty"`
  1738  	// ForceSendFields is a list of field names (e.g. "Capabilities") to
  1739  	// unconditionally include in API requests. By default, fields with empty or
  1740  	// default values are omitted from API requests. See
  1741  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1742  	// details.
  1743  	ForceSendFields []string `json:"-"`
  1744  	// NullFields is a list of field names (e.g. "Capabilities") to include in API
  1745  	// requests with the JSON null value. By default, fields with empty values are
  1746  	// omitted from API requests. See
  1747  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1748  	NullFields []string `json:"-"`
  1749  }
  1750  
  1751  func (s *LocationMetadata) MarshalJSON() ([]byte, error) {
  1752  	type NoMethod LocationMetadata
  1753  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1754  }
  1755  
  1756  // LoggingServer: Logging server to receive vCenter or ESXi logs.
  1757  type LoggingServer struct {
  1758  	// CreateTime: Output only. Creation time of this resource.
  1759  	CreateTime string `json:"createTime,omitempty"`
  1760  	// Hostname: Required. Fully-qualified domain name (FQDN) or IP Address of the
  1761  	// logging server.
  1762  	Hostname string `json:"hostname,omitempty"`
  1763  	// Name: Output only. The resource name of this logging server. Resource names
  1764  	// are schemeless URIs that follow the conventions in
  1765  	// https://cloud.google.com/apis/design/resource_names. For example:
  1766  	// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/loggingSe
  1767  	// rvers/my-logging-server`
  1768  	Name string `json:"name,omitempty"`
  1769  	// Port: Required. Port number at which the logging server receives logs.
  1770  	Port int64 `json:"port,omitempty"`
  1771  	// Protocol: Required. Protocol used by vCenter to send logs to a logging
  1772  	// server.
  1773  	//
  1774  	// Possible values:
  1775  	//   "PROTOCOL_UNSPECIFIED" - Unspecified communications protocol. This is the
  1776  	// default value.
  1777  	//   "UDP" - UDP
  1778  	//   "TCP" - TCP
  1779  	//   "TLS" - TLS
  1780  	//   "SSL" - SSL
  1781  	//   "RELP" - RELP
  1782  	Protocol string `json:"protocol,omitempty"`
  1783  	// SourceType: Required. The type of component that produces logs that will be
  1784  	// forwarded to this logging server.
  1785  	//
  1786  	// Possible values:
  1787  	//   "SOURCE_TYPE_UNSPECIFIED" - The default value. This value should never be
  1788  	// used.
  1789  	//   "ESXI" - Logs produced by ESXI hosts
  1790  	//   "VCSA" - Logs produced by vCenter server
  1791  	SourceType string `json:"sourceType,omitempty"`
  1792  	// Uid: Output only. System-generated unique identifier for the resource.
  1793  	Uid string `json:"uid,omitempty"`
  1794  	// UpdateTime: Output only. Last update time of this resource.
  1795  	UpdateTime string `json:"updateTime,omitempty"`
  1796  
  1797  	// ServerResponse contains the HTTP response code and headers from the server.
  1798  	googleapi.ServerResponse `json:"-"`
  1799  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  1800  	// unconditionally include in API requests. By default, fields with empty or
  1801  	// default values are omitted from API requests. See
  1802  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1803  	// details.
  1804  	ForceSendFields []string `json:"-"`
  1805  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  1806  	// requests with the JSON null value. By default, fields with empty values are
  1807  	// omitted from API requests. See
  1808  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1809  	NullFields []string `json:"-"`
  1810  }
  1811  
  1812  func (s *LoggingServer) MarshalJSON() ([]byte, error) {
  1813  	type NoMethod LoggingServer
  1814  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1815  }
  1816  
  1817  // ManagementCluster: Management cluster configuration.
  1818  type ManagementCluster struct {
  1819  	// ClusterId: Required. The user-provided identifier of the new `Cluster`. The
  1820  	// identifier must meet the following requirements: * Only contains 1-63
  1821  	// alphanumeric characters and hyphens * Begins with an alphabetical character
  1822  	// * Ends with a non-hyphen character * Not formatted as a UUID * Complies with
  1823  	// RFC 1034 (https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
  1824  	ClusterId string `json:"clusterId,omitempty"`
  1825  	// NodeTypeConfigs: Required. The map of cluster node types in this cluster,
  1826  	// where the key is canonical identifier of the node type (corresponds to the
  1827  	// `NodeType`).
  1828  	NodeTypeConfigs map[string]NodeTypeConfig `json:"nodeTypeConfigs,omitempty"`
  1829  	// StretchedClusterConfig: Optional. Configuration of a stretched cluster.
  1830  	// Required for STRETCHED private clouds.
  1831  	StretchedClusterConfig *StretchedClusterConfig `json:"stretchedClusterConfig,omitempty"`
  1832  	// ForceSendFields is a list of field names (e.g. "ClusterId") to
  1833  	// unconditionally include in API requests. By default, fields with empty or
  1834  	// default values are omitted from API requests. See
  1835  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1836  	// details.
  1837  	ForceSendFields []string `json:"-"`
  1838  	// NullFields is a list of field names (e.g. "ClusterId") to include in API
  1839  	// requests with the JSON null value. By default, fields with empty values are
  1840  	// omitted from API requests. See
  1841  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1842  	NullFields []string `json:"-"`
  1843  }
  1844  
  1845  func (s *ManagementCluster) MarshalJSON() ([]byte, error) {
  1846  	type NoMethod ManagementCluster
  1847  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1848  }
  1849  
  1850  // ManagementDnsZoneBinding: Represents a binding between a network and the
  1851  // management DNS zone. A management DNS zone is the Cloud DNS cross-project
  1852  // binding zone that VMware Engine creates for each private cloud. It contains
  1853  // FQDNs and corresponding IP addresses for the private cloud's ESXi hosts and
  1854  // management VM appliances like vCenter and NSX Manager.
  1855  type ManagementDnsZoneBinding struct {
  1856  	// CreateTime: Output only. Creation time of this resource.
  1857  	CreateTime string `json:"createTime,omitempty"`
  1858  	// Description: User-provided description for this resource.
  1859  	Description string `json:"description,omitempty"`
  1860  	// Name: Output only. The resource name of this binding. Resource names are
  1861  	// schemeless URIs that follow the conventions in
  1862  	// https://cloud.google.com/apis/design/resource_names. For example:
  1863  	// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/managemen
  1864  	// tDnsZoneBindings/my-management-dns-zone-binding`
  1865  	Name string `json:"name,omitempty"`
  1866  	// State: Output only. The state of the resource.
  1867  	//
  1868  	// Possible values:
  1869  	//   "STATE_UNSPECIFIED" - The default value. This value should never be used.
  1870  	//   "ACTIVE" - The binding is ready.
  1871  	//   "CREATING" - The binding is being created.
  1872  	//   "UPDATING" - The binding is being updated.
  1873  	//   "DELETING" - The binding is being deleted.
  1874  	//   "FAILED" - The binding has failed.
  1875  	State string `json:"state,omitempty"`
  1876  	// Uid: Output only. System-generated unique identifier for the resource.
  1877  	Uid string `json:"uid,omitempty"`
  1878  	// UpdateTime: Output only. Last update time of this resource.
  1879  	UpdateTime string `json:"updateTime,omitempty"`
  1880  	// VmwareEngineNetwork: Network to bind is a VMware Engine network. Specify the
  1881  	// name in the following form for VMware engine network:
  1882  	// `projects/{project}/locations/global/vmwareEngineNetworks/{vmware_engine_netw
  1883  	// ork_id}`. `{project}` can either be a project number or a project ID.
  1884  	VmwareEngineNetwork string `json:"vmwareEngineNetwork,omitempty"`
  1885  	// VpcNetwork: Network to bind is a standard consumer VPC. Specify the name in
  1886  	// the following form for consumer VPC network:
  1887  	// `projects/{project}/global/networks/{network_id}`. `{project}` can either be
  1888  	// a project number or a project ID.
  1889  	VpcNetwork string `json:"vpcNetwork,omitempty"`
  1890  
  1891  	// ServerResponse contains the HTTP response code and headers from the server.
  1892  	googleapi.ServerResponse `json:"-"`
  1893  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  1894  	// unconditionally include in API requests. By default, fields with empty or
  1895  	// default values are omitted from API requests. See
  1896  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1897  	// details.
  1898  	ForceSendFields []string `json:"-"`
  1899  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  1900  	// requests with the JSON null value. By default, fields with empty values are
  1901  	// omitted from API requests. See
  1902  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1903  	NullFields []string `json:"-"`
  1904  }
  1905  
  1906  func (s *ManagementDnsZoneBinding) MarshalJSON() ([]byte, error) {
  1907  	type NoMethod ManagementDnsZoneBinding
  1908  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1909  }
  1910  
  1911  // NetworkConfig: Network configuration in the consumer project with which the
  1912  // peering has to be done.
  1913  type NetworkConfig struct {
  1914  	// DnsServerIp: Output only. DNS Server IP of the Private Cloud. All DNS
  1915  	// queries can be forwarded to this address for name resolution of Private
  1916  	// Cloud's management entities like vCenter, NSX-T Manager and ESXi hosts.
  1917  	DnsServerIp string `json:"dnsServerIp,omitempty"`
  1918  	// ManagementCidr: Required. Management CIDR used by VMware management
  1919  	// appliances.
  1920  	ManagementCidr string `json:"managementCidr,omitempty"`
  1921  	// ManagementIpAddressLayoutVersion: Output only. The IP address layout version
  1922  	// of the management IP address range. Possible versions include: *
  1923  	// `managementIpAddressLayoutVersion=1`: Indicates the legacy IP address layout
  1924  	// used by some existing private clouds. This is no longer supported for new
  1925  	// private clouds as it does not support all features. *
  1926  	// `managementIpAddressLayoutVersion=2`: Indicates the latest IP address layout
  1927  	// used by all newly created private clouds. This version supports all current
  1928  	// features.
  1929  	ManagementIpAddressLayoutVersion int64 `json:"managementIpAddressLayoutVersion,omitempty"`
  1930  	// VmwareEngineNetwork: Optional. The relative resource name of the VMware
  1931  	// Engine network attached to the private cloud. Specify the name in the
  1932  	// following form:
  1933  	// `projects/{project}/locations/{location}/vmwareEngineNetworks/{vmware_engine_
  1934  	// network_id}` where `{project}` can either be a project number or a project
  1935  	// ID.
  1936  	VmwareEngineNetwork string `json:"vmwareEngineNetwork,omitempty"`
  1937  	// VmwareEngineNetworkCanonical: Output only. The canonical name of the VMware
  1938  	// Engine network in the form:
  1939  	// `projects/{project_number}/locations/{location}/vmwareEngineNetworks/{vmware_
  1940  	// engine_network_id}`
  1941  	VmwareEngineNetworkCanonical string `json:"vmwareEngineNetworkCanonical,omitempty"`
  1942  	// ForceSendFields is a list of field names (e.g. "DnsServerIp") to
  1943  	// unconditionally include in API requests. By default, fields with empty or
  1944  	// default values are omitted from API requests. See
  1945  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1946  	// details.
  1947  	ForceSendFields []string `json:"-"`
  1948  	// NullFields is a list of field names (e.g. "DnsServerIp") to include in API
  1949  	// requests with the JSON null value. By default, fields with empty values are
  1950  	// omitted from API requests. See
  1951  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1952  	NullFields []string `json:"-"`
  1953  }
  1954  
  1955  func (s *NetworkConfig) MarshalJSON() ([]byte, error) {
  1956  	type NoMethod NetworkConfig
  1957  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1958  }
  1959  
  1960  // NetworkPeering: Details of a network peering.
  1961  type NetworkPeering struct {
  1962  	// CreateTime: Output only. Creation time of this resource.
  1963  	CreateTime string `json:"createTime,omitempty"`
  1964  	// Description: Optional. User-provided description for this network peering.
  1965  	Description string `json:"description,omitempty"`
  1966  	// ExchangeSubnetRoutes: Optional. True if full mesh connectivity is created
  1967  	// and managed automatically between peered networks; false otherwise.
  1968  	// Currently this field is always true because Google Compute Engine
  1969  	// automatically creates and manages subnetwork routes between two VPC networks
  1970  	// when peering state is 'ACTIVE'.
  1971  	ExchangeSubnetRoutes bool `json:"exchangeSubnetRoutes,omitempty"`
  1972  	// ExportCustomRoutes: Optional. True if custom routes are exported to the
  1973  	// peered network; false otherwise. The default value is true.
  1974  	ExportCustomRoutes bool `json:"exportCustomRoutes,omitempty"`
  1975  	// ExportCustomRoutesWithPublicIp: Optional. True if all subnet routes with a
  1976  	// public IP address range are exported; false otherwise. The default value is
  1977  	// true. IPv4 special-use ranges
  1978  	// (https://en.wikipedia.org/wiki/IPv4#Special_addresses) are always exported
  1979  	// to peers and are not controlled by this field.
  1980  	ExportCustomRoutesWithPublicIp bool `json:"exportCustomRoutesWithPublicIp,omitempty"`
  1981  	// ImportCustomRoutes: Optional. True if custom routes are imported from the
  1982  	// peered network; false otherwise. The default value is true.
  1983  	ImportCustomRoutes bool `json:"importCustomRoutes,omitempty"`
  1984  	// ImportCustomRoutesWithPublicIp: Optional. True if all subnet routes with
  1985  	// public IP address range are imported; false otherwise. The default value is
  1986  	// true. IPv4 special-use ranges
  1987  	// (https://en.wikipedia.org/wiki/IPv4#Special_addresses) are always imported
  1988  	// to peers and are not controlled by this field.
  1989  	ImportCustomRoutesWithPublicIp bool `json:"importCustomRoutesWithPublicIp,omitempty"`
  1990  	// Name: Output only. The resource name of the network peering. NetworkPeering
  1991  	// is a global resource and location can only be global. Resource names are
  1992  	// scheme-less URIs that follow the conventions in
  1993  	// https://cloud.google.com/apis/design/resource_names. For example:
  1994  	// `projects/my-project/locations/global/networkPeerings/my-peering`
  1995  	Name string `json:"name,omitempty"`
  1996  	// PeerMtu: Optional. Maximum transmission unit (MTU) in bytes. The default
  1997  	// value is `1500`. If a value of `0` is provided for this field, VMware Engine
  1998  	// uses the default value instead.
  1999  	PeerMtu int64 `json:"peerMtu,omitempty"`
  2000  	// PeerNetwork: Required. The relative resource name of the network to peer
  2001  	// with a standard VMware Engine network. The provided network can be a
  2002  	// consumer VPC network or another standard VMware Engine network. If the
  2003  	// `peer_network_type` is VMWARE_ENGINE_NETWORK, specify the name in the form:
  2004  	// `projects/{project}/locations/global/vmwareEngineNetworks/{vmware_engine_netw
  2005  	// ork_id}`. Otherwise specify the name in the form:
  2006  	// `projects/{project}/global/networks/{network_id}`, where `{project}` can
  2007  	// either be a project number or a project ID.
  2008  	PeerNetwork string `json:"peerNetwork,omitempty"`
  2009  	// PeerNetworkType: Required. The type of the network to peer with the VMware
  2010  	// Engine network.
  2011  	//
  2012  	// Possible values:
  2013  	//   "PEER_NETWORK_TYPE_UNSPECIFIED" - Unspecified
  2014  	//   "STANDARD" - Peering connection used for connecting to another VPC network
  2015  	// established by the same user. For example, a peering connection to another
  2016  	// VPC network in the same project or to an on-premises network.
  2017  	//   "VMWARE_ENGINE_NETWORK" - Peering connection used for connecting to
  2018  	// another VMware Engine network.
  2019  	//   "PRIVATE_SERVICES_ACCESS" - Peering connection used for establishing
  2020  	// [private services
  2021  	// access](https://cloud.google.com/vpc/docs/private-services-access).
  2022  	//   "NETAPP_CLOUD_VOLUMES" - Peering connection used for connecting to NetApp
  2023  	// Cloud Volumes.
  2024  	//   "THIRD_PARTY_SERVICE" - Peering connection used for connecting to
  2025  	// third-party services. Most third-party services require manual setup of
  2026  	// reverse peering on the VPC network associated with the third-party service.
  2027  	//   "DELL_POWERSCALE" - Peering connection used for connecting to Dell
  2028  	// PowerScale Filers
  2029  	PeerNetworkType string `json:"peerNetworkType,omitempty"`
  2030  	// State: Output only. State of the network peering. This field has a value of
  2031  	// 'ACTIVE' when there's a matching configuration in the peer network. New
  2032  	// values may be added to this enum when appropriate.
  2033  	//
  2034  	// Possible values:
  2035  	//   "STATE_UNSPECIFIED" - Unspecified network peering state. This is the
  2036  	// default value.
  2037  	//   "INACTIVE" - The peering is not active.
  2038  	//   "ACTIVE" - The peering is active.
  2039  	//   "CREATING" - The peering is being created.
  2040  	//   "DELETING" - The peering is being deleted.
  2041  	State string `json:"state,omitempty"`
  2042  	// StateDetails: Output only. Output Only. Details about the current state of
  2043  	// the network peering.
  2044  	StateDetails string `json:"stateDetails,omitempty"`
  2045  	// Uid: Output only. System-generated unique identifier for the resource.
  2046  	Uid string `json:"uid,omitempty"`
  2047  	// UpdateTime: Output only. Last update time of this resource.
  2048  	UpdateTime string `json:"updateTime,omitempty"`
  2049  	// VmwareEngineNetwork: Required. The relative resource name of the VMware
  2050  	// Engine network. Specify the name in the following form:
  2051  	// `projects/{project}/locations/{location}/vmwareEngineNetworks/{vmware_engine_
  2052  	// network_id}` where `{project}` can either be a project number or a project
  2053  	// ID.
  2054  	VmwareEngineNetwork string `json:"vmwareEngineNetwork,omitempty"`
  2055  
  2056  	// ServerResponse contains the HTTP response code and headers from the server.
  2057  	googleapi.ServerResponse `json:"-"`
  2058  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  2059  	// unconditionally include in API requests. By default, fields with empty or
  2060  	// default values are omitted from API requests. See
  2061  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2062  	// details.
  2063  	ForceSendFields []string `json:"-"`
  2064  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  2065  	// requests with the JSON null value. By default, fields with empty values are
  2066  	// omitted from API requests. See
  2067  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2068  	NullFields []string `json:"-"`
  2069  }
  2070  
  2071  func (s *NetworkPeering) MarshalJSON() ([]byte, error) {
  2072  	type NoMethod NetworkPeering
  2073  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2074  }
  2075  
  2076  // NetworkPolicy: Represents a network policy resource. Network policies are
  2077  // regional resources. You can use a network policy to enable or disable
  2078  // internet access and external IP access. Network policies are associated with
  2079  // a VMware Engine network, which might span across regions. For a given
  2080  // region, a network policy applies to all private clouds in the VMware Engine
  2081  // network associated with the policy.
  2082  type NetworkPolicy struct {
  2083  	// CreateTime: Output only. Creation time of this resource.
  2084  	CreateTime string `json:"createTime,omitempty"`
  2085  	// Description: Optional. User-provided description for this network policy.
  2086  	Description string `json:"description,omitempty"`
  2087  	// EdgeServicesCidr: Required. IP address range in CIDR notation used to create
  2088  	// internet access and external IP access. An RFC 1918 CIDR block, with a "/26"
  2089  	// prefix, is required. The range cannot overlap with any prefixes either in
  2090  	// the consumer VPC network or in use by the private clouds attached to that
  2091  	// VPC network.
  2092  	EdgeServicesCidr string `json:"edgeServicesCidr,omitempty"`
  2093  	// ExternalIp: Network service that allows External IP addresses to be assigned
  2094  	// to VMware workloads. This service can only be enabled when `internet_access`
  2095  	// is also enabled.
  2096  	ExternalIp *NetworkService `json:"externalIp,omitempty"`
  2097  	// InternetAccess: Network service that allows VMware workloads to access the
  2098  	// internet.
  2099  	InternetAccess *NetworkService `json:"internetAccess,omitempty"`
  2100  	// Name: Output only. The resource name of this network policy. Resource names
  2101  	// are schemeless URIs that follow the conventions in
  2102  	// https://cloud.google.com/apis/design/resource_names. For example:
  2103  	// `projects/my-project/locations/us-central1/networkPolicies/my-network-policy`
  2104  	Name string `json:"name,omitempty"`
  2105  	// Uid: Output only. System-generated unique identifier for the resource.
  2106  	Uid string `json:"uid,omitempty"`
  2107  	// UpdateTime: Output only. Last update time of this resource.
  2108  	UpdateTime string `json:"updateTime,omitempty"`
  2109  	// VmwareEngineNetwork: Optional. The relative resource name of the VMware
  2110  	// Engine network. Specify the name in the following form:
  2111  	// `projects/{project}/locations/{location}/vmwareEngineNetworks/{vmware_engine_
  2112  	// network_id}` where `{project}` can either be a project number or a project
  2113  	// ID.
  2114  	VmwareEngineNetwork string `json:"vmwareEngineNetwork,omitempty"`
  2115  	// VmwareEngineNetworkCanonical: Output only. The canonical name of the VMware
  2116  	// Engine network in the form:
  2117  	// `projects/{project_number}/locations/{location}/vmwareEngineNetworks/{vmware_
  2118  	// engine_network_id}`
  2119  	VmwareEngineNetworkCanonical string `json:"vmwareEngineNetworkCanonical,omitempty"`
  2120  
  2121  	// ServerResponse contains the HTTP response code and headers from the server.
  2122  	googleapi.ServerResponse `json:"-"`
  2123  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  2124  	// unconditionally include in API requests. By default, fields with empty or
  2125  	// default values are omitted from API requests. See
  2126  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2127  	// details.
  2128  	ForceSendFields []string `json:"-"`
  2129  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  2130  	// requests with the JSON null value. By default, fields with empty values are
  2131  	// omitted from API requests. See
  2132  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2133  	NullFields []string `json:"-"`
  2134  }
  2135  
  2136  func (s *NetworkPolicy) MarshalJSON() ([]byte, error) {
  2137  	type NoMethod NetworkPolicy
  2138  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2139  }
  2140  
  2141  // NetworkService: Represents a network service that is managed by a
  2142  // `NetworkPolicy` resource. A network service provides a way to control an
  2143  // aspect of external access to VMware workloads. For example, whether the
  2144  // VMware workloads in the private clouds governed by a network policy can
  2145  // access or be accessed from the internet.
  2146  type NetworkService struct {
  2147  	// Enabled: True if the service is enabled; false otherwise.
  2148  	Enabled bool `json:"enabled,omitempty"`
  2149  	// State: Output only. State of the service. New values may be added to this
  2150  	// enum when appropriate.
  2151  	//
  2152  	// Possible values:
  2153  	//   "STATE_UNSPECIFIED" - Unspecified service state. This is the default
  2154  	// value.
  2155  	//   "UNPROVISIONED" - Service is not provisioned.
  2156  	//   "RECONCILING" - Service is in the process of being
  2157  	// provisioned/deprovisioned.
  2158  	//   "ACTIVE" - Service is active.
  2159  	State string `json:"state,omitempty"`
  2160  	// ForceSendFields is a list of field names (e.g. "Enabled") to unconditionally
  2161  	// include in API requests. By default, fields with empty or default values are
  2162  	// omitted from API requests. See
  2163  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2164  	// details.
  2165  	ForceSendFields []string `json:"-"`
  2166  	// NullFields is a list of field names (e.g. "Enabled") to include in API
  2167  	// requests with the JSON null value. By default, fields with empty values are
  2168  	// omitted from API requests. See
  2169  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2170  	NullFields []string `json:"-"`
  2171  }
  2172  
  2173  func (s *NetworkService) MarshalJSON() ([]byte, error) {
  2174  	type NoMethod NetworkService
  2175  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2176  }
  2177  
  2178  // Node: Node in a cluster.
  2179  type Node struct {
  2180  	// CustomCoreCount: Output only. Customized number of cores
  2181  	CustomCoreCount int64 `json:"customCoreCount,omitempty,string"`
  2182  	// Fqdn: Output only. Fully qualified domain name of the node.
  2183  	Fqdn string `json:"fqdn,omitempty"`
  2184  	// InternalIp: Output only. Internal IP address of the node.
  2185  	InternalIp string `json:"internalIp,omitempty"`
  2186  	// Name: Output only. The resource name of this node. Resource names are
  2187  	// schemeless URIs that follow the conventions in
  2188  	// https://cloud.google.com/apis/design/resource_names. For example:
  2189  	// projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/m
  2190  	// y-cluster/nodes/my-node
  2191  	Name string `json:"name,omitempty"`
  2192  	// NodeTypeId: Output only. The canonical identifier of the node type
  2193  	// (corresponds to the `NodeType`). For example: standard-72.
  2194  	NodeTypeId string `json:"nodeTypeId,omitempty"`
  2195  	// State: Output only. The state of the appliance.
  2196  	//
  2197  	// Possible values:
  2198  	//   "STATE_UNSPECIFIED" - The default value. This value should never be used.
  2199  	//   "ACTIVE" - Node is operational and can be used by the user.
  2200  	//   "CREATING" - Node is being provisioned.
  2201  	//   "FAILED" - Node is in a failed state.
  2202  	//   "UPGRADING" - Node is undergoing maintenance, e.g.: during private cloud
  2203  	// upgrade.
  2204  	State string `json:"state,omitempty"`
  2205  	// Version: Output only. The version number of the VMware ESXi management
  2206  	// component in this cluster.
  2207  	Version string `json:"version,omitempty"`
  2208  
  2209  	// ServerResponse contains the HTTP response code and headers from the server.
  2210  	googleapi.ServerResponse `json:"-"`
  2211  	// ForceSendFields is a list of field names (e.g. "CustomCoreCount") to
  2212  	// unconditionally include in API requests. By default, fields with empty or
  2213  	// default values are omitted from API requests. See
  2214  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2215  	// details.
  2216  	ForceSendFields []string `json:"-"`
  2217  	// NullFields is a list of field names (e.g. "CustomCoreCount") to include in
  2218  	// API requests with the JSON null value. By default, fields with empty values
  2219  	// are omitted from API requests. See
  2220  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2221  	NullFields []string `json:"-"`
  2222  }
  2223  
  2224  func (s *Node) MarshalJSON() ([]byte, error) {
  2225  	type NoMethod Node
  2226  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2227  }
  2228  
  2229  // NodeType: Describes node type.
  2230  type NodeType struct {
  2231  	// AvailableCustomCoreCounts: Output only. List of possible values of custom
  2232  	// core count.
  2233  	AvailableCustomCoreCounts []int64 `json:"availableCustomCoreCounts,omitempty"`
  2234  	// Capabilities: Output only. Capabilities of this node type.
  2235  	//
  2236  	// Possible values:
  2237  	//   "CAPABILITY_UNSPECIFIED" - The default value. This value is used if the
  2238  	// capability is omitted or unknown.
  2239  	//   "STRETCHED_CLUSTERS" - This node type supports stretch clusters.
  2240  	Capabilities []string `json:"capabilities,omitempty"`
  2241  	// DiskSizeGb: Output only. The amount of storage available, defined in GB.
  2242  	DiskSizeGb int64 `json:"diskSizeGb,omitempty"`
  2243  	// DisplayName: Output only. The friendly name for this node type. For example:
  2244  	// ve1-standard-72
  2245  	DisplayName string `json:"displayName,omitempty"`
  2246  	// Families: Output only. Families of the node type. For node types to be in
  2247  	// the same cluster they must share at least one element in the `families`.
  2248  	Families []string `json:"families,omitempty"`
  2249  	// Kind: Output only. The type of the resource.
  2250  	//
  2251  	// Possible values:
  2252  	//   "KIND_UNSPECIFIED" - The default value. This value should never be used.
  2253  	//   "STANDARD" - Standard HCI node.
  2254  	//   "STORAGE_ONLY" - Storage only Node.
  2255  	Kind string `json:"kind,omitempty"`
  2256  	// MemoryGb: Output only. The amount of physical memory available, defined in
  2257  	// GB.
  2258  	MemoryGb int64 `json:"memoryGb,omitempty"`
  2259  	// Name: Output only. The resource name of this node type. Resource names are
  2260  	// schemeless URIs that follow the conventions in
  2261  	// https://cloud.google.com/apis/design/resource_names. For example:
  2262  	// `projects/my-proj/locations/us-central1-a/nodeTypes/standard-72`
  2263  	Name string `json:"name,omitempty"`
  2264  	// NodeTypeId: Output only. The canonical identifier of the node type
  2265  	// (corresponds to the `NodeType`). For example: standard-72.
  2266  	NodeTypeId string `json:"nodeTypeId,omitempty"`
  2267  	// TotalCoreCount: Output only. The total number of CPU cores in a single node.
  2268  	TotalCoreCount int64 `json:"totalCoreCount,omitempty"`
  2269  	// VirtualCpuCount: Output only. The total number of virtual CPUs in a single
  2270  	// node.
  2271  	VirtualCpuCount int64 `json:"virtualCpuCount,omitempty"`
  2272  
  2273  	// ServerResponse contains the HTTP response code and headers from the server.
  2274  	googleapi.ServerResponse `json:"-"`
  2275  	// ForceSendFields is a list of field names (e.g. "AvailableCustomCoreCounts")
  2276  	// to unconditionally include in API requests. By default, fields with empty or
  2277  	// default values are omitted from API requests. See
  2278  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2279  	// details.
  2280  	ForceSendFields []string `json:"-"`
  2281  	// NullFields is a list of field names (e.g. "AvailableCustomCoreCounts") to
  2282  	// include in API requests with the JSON null value. By default, fields with
  2283  	// empty values are omitted from API requests. See
  2284  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2285  	NullFields []string `json:"-"`
  2286  }
  2287  
  2288  func (s *NodeType) MarshalJSON() ([]byte, error) {
  2289  	type NoMethod NodeType
  2290  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2291  }
  2292  
  2293  // NodeTypeConfig: Information about the type and number of nodes associated
  2294  // with the cluster.
  2295  type NodeTypeConfig struct {
  2296  	// CustomCoreCount: Optional. Customized number of cores available to each node
  2297  	// of the type. This number must always be one of
  2298  	// `nodeType.availableCustomCoreCounts`. If zero is provided max value from
  2299  	// `nodeType.availableCustomCoreCounts` will be used.
  2300  	CustomCoreCount int64 `json:"customCoreCount,omitempty"`
  2301  	// NodeCount: Required. The number of nodes of this type in the cluster
  2302  	NodeCount int64 `json:"nodeCount,omitempty"`
  2303  	// ForceSendFields is a list of field names (e.g. "CustomCoreCount") to
  2304  	// unconditionally include in API requests. By default, fields with empty or
  2305  	// default values are omitted from API requests. See
  2306  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2307  	// details.
  2308  	ForceSendFields []string `json:"-"`
  2309  	// NullFields is a list of field names (e.g. "CustomCoreCount") to include in
  2310  	// API requests with the JSON null value. By default, fields with empty values
  2311  	// are omitted from API requests. See
  2312  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2313  	NullFields []string `json:"-"`
  2314  }
  2315  
  2316  func (s *NodeTypeConfig) MarshalJSON() ([]byte, error) {
  2317  	type NoMethod NodeTypeConfig
  2318  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2319  }
  2320  
  2321  // Nsx: Details about a NSX Manager appliance.
  2322  type Nsx struct {
  2323  	// Fqdn: Fully qualified domain name of the appliance.
  2324  	Fqdn string `json:"fqdn,omitempty"`
  2325  	// InternalIp: Internal IP address of the appliance.
  2326  	InternalIp string `json:"internalIp,omitempty"`
  2327  	// State: Output only. The state of the appliance.
  2328  	//
  2329  	// Possible values:
  2330  	//   "STATE_UNSPECIFIED" - Unspecified appliance state. This is the default
  2331  	// value.
  2332  	//   "ACTIVE" - The appliance is operational and can be used.
  2333  	//   "CREATING" - The appliance is being deployed.
  2334  	State string `json:"state,omitempty"`
  2335  	// Version: Version of the appliance.
  2336  	Version string `json:"version,omitempty"`
  2337  	// ForceSendFields is a list of field names (e.g. "Fqdn") to unconditionally
  2338  	// include in API requests. By default, fields with empty or default values are
  2339  	// omitted from API requests. See
  2340  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2341  	// details.
  2342  	ForceSendFields []string `json:"-"`
  2343  	// NullFields is a list of field names (e.g. "Fqdn") to include in API requests
  2344  	// with the JSON null value. By default, fields with empty values are omitted
  2345  	// from API requests. See
  2346  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2347  	NullFields []string `json:"-"`
  2348  }
  2349  
  2350  func (s *Nsx) MarshalJSON() ([]byte, error) {
  2351  	type NoMethod Nsx
  2352  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2353  }
  2354  
  2355  // Operation: This resource represents a long-running operation that is the
  2356  // result of a network API call.
  2357  type Operation struct {
  2358  	// Done: If the value is `false`, it means the operation is still in progress.
  2359  	// If `true`, the operation is completed, and either `error` or `response` is
  2360  	// available.
  2361  	Done bool `json:"done,omitempty"`
  2362  	// Error: The error result of the operation in case of failure or cancellation.
  2363  	Error *Status `json:"error,omitempty"`
  2364  	// Metadata: Service-specific metadata associated with the operation. It
  2365  	// typically contains progress information and common metadata such as create
  2366  	// time. Some services might not provide such metadata. Any method that returns
  2367  	// a long-running operation should document the metadata type, if any.
  2368  	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
  2369  	// Name: The server-assigned name, which is only unique within the same service
  2370  	// that originally returns it. If you use the default HTTP mapping, the `name`
  2371  	// should be a resource name ending with `operations/{unique_id}`.
  2372  	Name string `json:"name,omitempty"`
  2373  	// Response: The normal, successful response of the operation. If the original
  2374  	// method returns no data on success, such as `Delete`, the response is
  2375  	// `google.protobuf.Empty`. If the original method is standard
  2376  	// `Get`/`Create`/`Update`, the response should be the resource. For other
  2377  	// methods, the response should have the type `XxxResponse`, where `Xxx` is the
  2378  	// original method name. For example, if the original method name is
  2379  	// `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
  2380  	Response googleapi.RawMessage `json:"response,omitempty"`
  2381  
  2382  	// ServerResponse contains the HTTP response code and headers from the server.
  2383  	googleapi.ServerResponse `json:"-"`
  2384  	// ForceSendFields is a list of field names (e.g. "Done") to unconditionally
  2385  	// include in API requests. By default, fields with empty or default values are
  2386  	// omitted from API requests. See
  2387  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2388  	// details.
  2389  	ForceSendFields []string `json:"-"`
  2390  	// NullFields is a list of field names (e.g. "Done") to include in API requests
  2391  	// with the JSON null value. By default, fields with empty values are omitted
  2392  	// from API requests. See
  2393  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2394  	NullFields []string `json:"-"`
  2395  }
  2396  
  2397  func (s *Operation) MarshalJSON() ([]byte, error) {
  2398  	type NoMethod Operation
  2399  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2400  }
  2401  
  2402  // OperationMetadata: Represents the metadata of the long-running operation.
  2403  type OperationMetadata struct {
  2404  	// ApiVersion: Output only. API version used to start the operation.
  2405  	ApiVersion string `json:"apiVersion,omitempty"`
  2406  	// CreateTime: Output only. The time the operation was created.
  2407  	CreateTime string `json:"createTime,omitempty"`
  2408  	// EndTime: Output only. The time the operation finished running.
  2409  	EndTime string `json:"endTime,omitempty"`
  2410  	// RequestedCancellation: Output only. True if the user has requested
  2411  	// cancellation of the operation; false otherwise. Operations that have
  2412  	// successfully been cancelled have Operation.error value with a
  2413  	// google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.
  2414  	RequestedCancellation bool `json:"requestedCancellation,omitempty"`
  2415  	// StatusMessage: Output only. Human-readable status of the operation, if any.
  2416  	StatusMessage string `json:"statusMessage,omitempty"`
  2417  	// Target: Output only. Server-defined resource path for the target of the
  2418  	// operation.
  2419  	Target string `json:"target,omitempty"`
  2420  	// Verb: Output only. Name of the verb executed by the operation.
  2421  	Verb string `json:"verb,omitempty"`
  2422  	// ForceSendFields is a list of field names (e.g. "ApiVersion") to
  2423  	// unconditionally include in API requests. By default, fields with empty or
  2424  	// default values are omitted from API requests. See
  2425  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2426  	// details.
  2427  	ForceSendFields []string `json:"-"`
  2428  	// NullFields is a list of field names (e.g. "ApiVersion") to include in API
  2429  	// requests with the JSON null value. By default, fields with empty values are
  2430  	// omitted from API requests. See
  2431  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2432  	NullFields []string `json:"-"`
  2433  }
  2434  
  2435  func (s *OperationMetadata) MarshalJSON() ([]byte, error) {
  2436  	type NoMethod OperationMetadata
  2437  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2438  }
  2439  
  2440  // PeeringRoute: Exchanged network peering route.
  2441  type PeeringRoute struct {
  2442  	// DestRange: Output only. Destination range of the peering route in CIDR
  2443  	// notation.
  2444  	DestRange string `json:"destRange,omitempty"`
  2445  	// Direction: Output only. Direction of the routes exchanged with the peer
  2446  	// network, from the VMware Engine network perspective: * Routes of direction
  2447  	// `INCOMING` are imported from the peer network. * Routes of direction
  2448  	// `OUTGOING` are exported from the intranet VPC network of the VMware Engine
  2449  	// network.
  2450  	//
  2451  	// Possible values:
  2452  	//   "DIRECTION_UNSPECIFIED" - Unspecified exchanged routes direction. This is
  2453  	// default.
  2454  	//   "INCOMING" - Routes imported from the peer network.
  2455  	//   "OUTGOING" - Routes exported to the peer network.
  2456  	Direction string `json:"direction,omitempty"`
  2457  	// Imported: Output only. True if the peering route has been imported from a
  2458  	// peered VPC network; false otherwise. The import happens if the field
  2459  	// `NetworkPeering.importCustomRoutes` is true for this network,
  2460  	// `NetworkPeering.exportCustomRoutes` is true for the peer VPC network, and
  2461  	// the import does not result in a route conflict.
  2462  	Imported bool `json:"imported,omitempty"`
  2463  	// NextHopRegion: Output only. Region containing the next hop of the peering
  2464  	// route. This field only applies to dynamic routes in the peer VPC network.
  2465  	NextHopRegion string `json:"nextHopRegion,omitempty"`
  2466  	// Priority: Output only. The priority of the peering route.
  2467  	Priority int64 `json:"priority,omitempty,string"`
  2468  	// Type: Output only. Type of the route in the peer VPC network.
  2469  	//
  2470  	// Possible values:
  2471  	//   "TYPE_UNSPECIFIED" - Unspecified peering route type. This is the default
  2472  	// value.
  2473  	//   "DYNAMIC_PEERING_ROUTE" - Dynamic routes in the peer network.
  2474  	//   "STATIC_PEERING_ROUTE" - Static routes in the peer network.
  2475  	//   "SUBNET_PEERING_ROUTE" - Created, updated, and removed automatically by
  2476  	// Google Cloud when subnets are created, modified, or deleted in the peer
  2477  	// network.
  2478  	Type string `json:"type,omitempty"`
  2479  	// ForceSendFields is a list of field names (e.g. "DestRange") to
  2480  	// unconditionally include in API requests. By default, fields with empty or
  2481  	// default values are omitted from API requests. See
  2482  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2483  	// details.
  2484  	ForceSendFields []string `json:"-"`
  2485  	// NullFields is a list of field names (e.g. "DestRange") to include in API
  2486  	// requests with the JSON null value. By default, fields with empty values are
  2487  	// omitted from API requests. See
  2488  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2489  	NullFields []string `json:"-"`
  2490  }
  2491  
  2492  func (s *PeeringRoute) MarshalJSON() ([]byte, error) {
  2493  	type NoMethod PeeringRoute
  2494  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2495  }
  2496  
  2497  // Policy: An Identity and Access Management (IAM) policy, which specifies
  2498  // access controls for Google Cloud resources. A `Policy` is a collection of
  2499  // `bindings`. A `binding` binds one or more `members`, or principals, to a
  2500  // single `role`. Principals can be user accounts, service accounts, Google
  2501  // groups, and domains (such as G Suite). A `role` is a named list of
  2502  // permissions; each `role` can be an IAM predefined role or a user-created
  2503  // custom role. For some types of Google Cloud resources, a `binding` can also
  2504  // specify a `condition`, which is a logical expression that allows access to a
  2505  // resource only if the expression evaluates to `true`. A condition can add
  2506  // constraints based on attributes of the request, the resource, or both. To
  2507  // learn which resources support conditions in their IAM policies, see the IAM
  2508  // documentation
  2509  // (https://cloud.google.com/iam/help/conditions/resource-policies). **JSON
  2510  // example:** ``` { "bindings": [ { "role":
  2511  // "roles/resourcemanager.organizationAdmin", "members": [
  2512  // "user:mike@example.com", "group:admins@example.com", "domain:google.com",
  2513  // "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role":
  2514  // "roles/resourcemanager.organizationViewer", "members": [
  2515  // "user:eve@example.com" ], "condition": { "title": "expirable access",
  2516  // "description": "Does not grant access after Sep 2020", "expression":
  2517  // "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag":
  2518  // "BwWWja0YfJA=", "version": 3 } ``` **YAML example:** ``` bindings: -
  2519  // members: - user:mike@example.com - group:admins@example.com -
  2520  // domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
  2521  // role: roles/resourcemanager.organizationAdmin - members: -
  2522  // user:eve@example.com role: roles/resourcemanager.organizationViewer
  2523  // condition: title: expirable access description: Does not grant access after
  2524  // Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
  2525  // etag: BwWWja0YfJA= version: 3 ``` For a description of IAM and its features,
  2526  // see the IAM documentation (https://cloud.google.com/iam/docs/).
  2527  type Policy struct {
  2528  	// AuditConfigs: Specifies cloud audit logging configuration for this policy.
  2529  	AuditConfigs []*AuditConfig `json:"auditConfigs,omitempty"`
  2530  	// Bindings: Associates a list of `members`, or principals, with a `role`.
  2531  	// Optionally, may specify a `condition` that determines how and when the
  2532  	// `bindings` are applied. Each of the `bindings` must contain at least one
  2533  	// principal. The `bindings` in a `Policy` can refer to up to 1,500 principals;
  2534  	// up to 250 of these principals can be Google groups. Each occurrence of a
  2535  	// principal counts towards these limits. For example, if the `bindings` grant
  2536  	// 50 different roles to `user:alice@example.com`, and not to any other
  2537  	// principal, then you can add another 1,450 principals to the `bindings` in
  2538  	// the `Policy`.
  2539  	Bindings []*Binding `json:"bindings,omitempty"`
  2540  	// Etag: `etag` is used for optimistic concurrency control as a way to help
  2541  	// prevent simultaneous updates of a policy from overwriting each other. It is
  2542  	// strongly suggested that systems make use of the `etag` in the
  2543  	// read-modify-write cycle to perform policy updates in order to avoid race
  2544  	// conditions: An `etag` is returned in the response to `getIamPolicy`, and
  2545  	// systems are expected to put that etag in the request to `setIamPolicy` to
  2546  	// ensure that their change will be applied to the same version of the policy.
  2547  	// **Important:** If you use IAM Conditions, you must include the `etag` field
  2548  	// whenever you call `setIamPolicy`. If you omit this field, then IAM allows
  2549  	// you to overwrite a version `3` policy with a version `1` policy, and all of
  2550  	// the conditions in the version `3` policy are lost.
  2551  	Etag string `json:"etag,omitempty"`
  2552  	// Version: Specifies the format of the policy. Valid values are `0`, `1`, and
  2553  	// `3`. Requests that specify an invalid value are rejected. Any operation that
  2554  	// affects conditional role bindings must specify version `3`. This requirement
  2555  	// applies to the following operations: * Getting a policy that includes a
  2556  	// conditional role binding * Adding a conditional role binding to a policy *
  2557  	// Changing a conditional role binding in a policy * Removing any role binding,
  2558  	// with or without a condition, from a policy that includes conditions
  2559  	// **Important:** If you use IAM Conditions, you must include the `etag` field
  2560  	// whenever you call `setIamPolicy`. If you omit this field, then IAM allows
  2561  	// you to overwrite a version `3` policy with a version `1` policy, and all of
  2562  	// the conditions in the version `3` policy are lost. If a policy does not
  2563  	// include any conditions, operations on that policy may specify any valid
  2564  	// version or leave the field unset. To learn which resources support
  2565  	// conditions in their IAM policies, see the IAM documentation
  2566  	// (https://cloud.google.com/iam/help/conditions/resource-policies).
  2567  	Version int64 `json:"version,omitempty"`
  2568  
  2569  	// ServerResponse contains the HTTP response code and headers from the server.
  2570  	googleapi.ServerResponse `json:"-"`
  2571  	// ForceSendFields is a list of field names (e.g. "AuditConfigs") to
  2572  	// unconditionally include in API requests. By default, fields with empty or
  2573  	// default values are omitted from API requests. See
  2574  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2575  	// details.
  2576  	ForceSendFields []string `json:"-"`
  2577  	// NullFields is a list of field names (e.g. "AuditConfigs") to include in API
  2578  	// requests with the JSON null value. By default, fields with empty values are
  2579  	// omitted from API requests. See
  2580  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2581  	NullFields []string `json:"-"`
  2582  }
  2583  
  2584  func (s *Policy) MarshalJSON() ([]byte, error) {
  2585  	type NoMethod Policy
  2586  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2587  }
  2588  
  2589  // Principal: Users/Service accounts which have access for DNS binding on the
  2590  // intranet VPC corresponding to the consumer project.
  2591  type Principal struct {
  2592  	// ServiceAccount: The service account which needs to be granted the
  2593  	// permission.
  2594  	ServiceAccount string `json:"serviceAccount,omitempty"`
  2595  	// User: The user who needs to be granted permission.
  2596  	User string `json:"user,omitempty"`
  2597  	// ForceSendFields is a list of field names (e.g. "ServiceAccount") to
  2598  	// unconditionally include in API requests. By default, fields with empty or
  2599  	// default values are omitted from API requests. See
  2600  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2601  	// details.
  2602  	ForceSendFields []string `json:"-"`
  2603  	// NullFields is a list of field names (e.g. "ServiceAccount") to include in
  2604  	// API requests with the JSON null value. By default, fields with empty values
  2605  	// are omitted from API requests. See
  2606  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2607  	NullFields []string `json:"-"`
  2608  }
  2609  
  2610  func (s *Principal) MarshalJSON() ([]byte, error) {
  2611  	type NoMethod Principal
  2612  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2613  }
  2614  
  2615  // PrivateCloud: Represents a private cloud resource. Private clouds of type
  2616  // `STANDARD` and `TIME_LIMITED` are zonal resources, `STRETCHED` private
  2617  // clouds are regional.
  2618  type PrivateCloud struct {
  2619  	// CreateTime: Output only. Creation time of this resource.
  2620  	CreateTime string `json:"createTime,omitempty"`
  2621  	// DeleteTime: Output only. Time when the resource was scheduled for deletion.
  2622  	DeleteTime string `json:"deleteTime,omitempty"`
  2623  	// Description: User-provided description for this private cloud.
  2624  	Description string `json:"description,omitempty"`
  2625  	// ExpireTime: Output only. Time when the resource will be irreversibly
  2626  	// deleted.
  2627  	ExpireTime string `json:"expireTime,omitempty"`
  2628  	// Hcx: Output only. HCX appliance.
  2629  	Hcx *Hcx `json:"hcx,omitempty"`
  2630  	// ManagementCluster: Required. Input only. The management cluster for this
  2631  	// private cloud. This field is required during creation of the private cloud
  2632  	// to provide details for the default cluster. The following fields can't be
  2633  	// changed after private cloud creation: `ManagementCluster.clusterId`,
  2634  	// `ManagementCluster.nodeTypeId`.
  2635  	ManagementCluster *ManagementCluster `json:"managementCluster,omitempty"`
  2636  	// Name: Output only. The resource name of this private cloud. Resource names
  2637  	// are schemeless URIs that follow the conventions in
  2638  	// https://cloud.google.com/apis/design/resource_names. For example:
  2639  	// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud`
  2640  	Name string `json:"name,omitempty"`
  2641  	// NetworkConfig: Required. Network configuration of the private cloud.
  2642  	NetworkConfig *NetworkConfig `json:"networkConfig,omitempty"`
  2643  	// Nsx: Output only. NSX appliance.
  2644  	Nsx *Nsx `json:"nsx,omitempty"`
  2645  	// State: Output only. State of the resource. New values may be added to this
  2646  	// enum when appropriate.
  2647  	//
  2648  	// Possible values:
  2649  	//   "STATE_UNSPECIFIED" - The default value. This value should never be used.
  2650  	//   "ACTIVE" - The private cloud is ready.
  2651  	//   "CREATING" - The private cloud is being created.
  2652  	//   "UPDATING" - The private cloud is being updated.
  2653  	//   "FAILED" - The private cloud is in failed state.
  2654  	//   "DELETED" - The private cloud is scheduled for deletion. The deletion
  2655  	// process can be cancelled by using the corresponding undelete method.
  2656  	//   "PURGING" - The private cloud is irreversibly deleted and is being removed
  2657  	// from the system.
  2658  	State string `json:"state,omitempty"`
  2659  	// Type: Optional. Type of the private cloud. Defaults to STANDARD.
  2660  	//
  2661  	// Possible values:
  2662  	//   "STANDARD" - Standard private is a zonal resource, with 3+ nodes. Default
  2663  	// type.
  2664  	//   "TIME_LIMITED" - Time limited private cloud is a zonal resource, can have
  2665  	// only 1 node and has limited life span. Will be deleted after defined period
  2666  	// of time, can be converted into standard private cloud by expanding it up to
  2667  	// 3 or more nodes.
  2668  	//   "STRETCHED" - Stretched private cloud is a regional resource with
  2669  	// redundancy, with a minimum of 6 nodes, nodes count has to be even.
  2670  	Type string `json:"type,omitempty"`
  2671  	// Uid: Output only. System-generated unique identifier for the resource.
  2672  	Uid string `json:"uid,omitempty"`
  2673  	// UpdateTime: Output only. Last update time of this resource.
  2674  	UpdateTime string `json:"updateTime,omitempty"`
  2675  	// Vcenter: Output only. Vcenter appliance.
  2676  	Vcenter *Vcenter `json:"vcenter,omitempty"`
  2677  
  2678  	// ServerResponse contains the HTTP response code and headers from the server.
  2679  	googleapi.ServerResponse `json:"-"`
  2680  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  2681  	// unconditionally include in API requests. By default, fields with empty or
  2682  	// default values are omitted from API requests. See
  2683  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2684  	// details.
  2685  	ForceSendFields []string `json:"-"`
  2686  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  2687  	// requests with the JSON null value. By default, fields with empty values are
  2688  	// omitted from API requests. See
  2689  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2690  	NullFields []string `json:"-"`
  2691  }
  2692  
  2693  func (s *PrivateCloud) MarshalJSON() ([]byte, error) {
  2694  	type NoMethod PrivateCloud
  2695  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2696  }
  2697  
  2698  // PrivateConnection: Private connection resource that provides connectivity
  2699  // for VMware Engine private clouds.
  2700  type PrivateConnection struct {
  2701  	// CreateTime: Output only. Creation time of this resource.
  2702  	CreateTime string `json:"createTime,omitempty"`
  2703  	// Description: Optional. User-provided description for this private
  2704  	// connection.
  2705  	Description string `json:"description,omitempty"`
  2706  	// Name: Output only. The resource name of the private connection. Resource
  2707  	// names are schemeless URIs that follow the conventions in
  2708  	// https://cloud.google.com/apis/design/resource_names. For example:
  2709  	// `projects/my-project/locations/us-central1/privateConnections/my-connection`
  2710  	Name string `json:"name,omitempty"`
  2711  	// PeeringId: Output only. VPC network peering id between given network VPC and
  2712  	// VMwareEngineNetwork.
  2713  	PeeringId string `json:"peeringId,omitempty"`
  2714  	// PeeringState: Output only. Peering state between service network and VMware
  2715  	// Engine network.
  2716  	//
  2717  	// Possible values:
  2718  	//   "PEERING_STATE_UNSPECIFIED" - The default value. This value is used if the
  2719  	// peering state is omitted or unknown.
  2720  	//   "PEERING_ACTIVE" - The peering is in active state.
  2721  	//   "PEERING_INACTIVE" - The peering is in inactive state.
  2722  	PeeringState string `json:"peeringState,omitempty"`
  2723  	// RoutingMode: Optional. Routing Mode. Default value is set to GLOBAL. For
  2724  	// type = PRIVATE_SERVICE_ACCESS, this field can be set to GLOBAL or REGIONAL,
  2725  	// for other types only GLOBAL is supported.
  2726  	//
  2727  	// Possible values:
  2728  	//   "ROUTING_MODE_UNSPECIFIED" - The default value. This value should never be
  2729  	// used.
  2730  	//   "GLOBAL" - Global Routing Mode
  2731  	//   "REGIONAL" - Regional Routing Mode
  2732  	RoutingMode string `json:"routingMode,omitempty"`
  2733  	// ServiceNetwork: Required. Service network to create private connection.
  2734  	// Specify the name in the following form:
  2735  	// `projects/{project}/global/networks/{network_id}` For type =
  2736  	// PRIVATE_SERVICE_ACCESS, this field represents servicenetworking VPC, e.g.
  2737  	// projects/project-tp/global/networks/servicenetworking. For type =
  2738  	// NETAPP_CLOUD_VOLUME, this field represents NetApp service VPC, e.g.
  2739  	// projects/project-tp/global/networks/netapp-tenant-vpc. For type =
  2740  	// DELL_POWERSCALE, this field represent Dell service VPC, e.g.
  2741  	// projects/project-tp/global/networks/dell-tenant-vpc. For type=
  2742  	// THIRD_PARTY_SERVICE, this field could represent a consumer VPC or any other
  2743  	// producer VPC to which the VMware Engine Network needs to be connected, e.g.
  2744  	// projects/project/global/networks/vpc.
  2745  	ServiceNetwork string `json:"serviceNetwork,omitempty"`
  2746  	// State: Output only. State of the private connection.
  2747  	//
  2748  	// Possible values:
  2749  	//   "STATE_UNSPECIFIED" - The default value. This value is used if the state
  2750  	// is omitted.
  2751  	//   "CREATING" - The private connection is being created.
  2752  	//   "ACTIVE" - The private connection is ready.
  2753  	//   "UPDATING" - The private connection is being updated.
  2754  	//   "DELETING" - The private connection is being deleted.
  2755  	//   "UNPROVISIONED" - The private connection is not provisioned, since no
  2756  	// private cloud is present for which this private connection is needed.
  2757  	//   "FAILED" - The private connection is in failed state.
  2758  	State string `json:"state,omitempty"`
  2759  	// Type: Required. Private connection type.
  2760  	//
  2761  	// Possible values:
  2762  	//   "TYPE_UNSPECIFIED" - The default value. This value should never be used.
  2763  	//   "PRIVATE_SERVICE_ACCESS" - Connection used for establishing [private
  2764  	// services access](https://cloud.google.com/vpc/docs/private-services-access).
  2765  	//   "NETAPP_CLOUD_VOLUMES" - Connection used for connecting to NetApp Cloud
  2766  	// Volumes.
  2767  	//   "DELL_POWERSCALE" - Connection used for connecting to Dell PowerScale.
  2768  	//   "THIRD_PARTY_SERVICE" - Connection used for connecting to third-party
  2769  	// services.
  2770  	Type string `json:"type,omitempty"`
  2771  	// Uid: Output only. System-generated unique identifier for the resource.
  2772  	Uid string `json:"uid,omitempty"`
  2773  	// UpdateTime: Output only. Last update time of this resource.
  2774  	UpdateTime string `json:"updateTime,omitempty"`
  2775  	// VmwareEngineNetwork: Required. The relative resource name of Legacy VMware
  2776  	// Engine network. Specify the name in the following form:
  2777  	// `projects/{project}/locations/{location}/vmwareEngineNetworks/{vmware_engine_
  2778  	// network_id}` where `{project}`, `{location}` will be same as specified in
  2779  	// private connection resource name and `{vmware_engine_network_id}` will be in
  2780  	// the form of `{location}`-default e.g.
  2781  	// projects/project/locations/us-central1/vmwareEngineNetworks/us-central1-defau
  2782  	// lt.
  2783  	VmwareEngineNetwork string `json:"vmwareEngineNetwork,omitempty"`
  2784  	// VmwareEngineNetworkCanonical: Output only. The canonical name of the VMware
  2785  	// Engine network in the form:
  2786  	// `projects/{project_number}/locations/{location}/vmwareEngineNetworks/{vmware_
  2787  	// engine_network_id}`
  2788  	VmwareEngineNetworkCanonical string `json:"vmwareEngineNetworkCanonical,omitempty"`
  2789  
  2790  	// ServerResponse contains the HTTP response code and headers from the server.
  2791  	googleapi.ServerResponse `json:"-"`
  2792  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  2793  	// unconditionally include in API requests. By default, fields with empty or
  2794  	// default values are omitted from API requests. See
  2795  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2796  	// details.
  2797  	ForceSendFields []string `json:"-"`
  2798  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  2799  	// requests with the JSON null value. By default, fields with empty values are
  2800  	// omitted from API requests. See
  2801  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2802  	NullFields []string `json:"-"`
  2803  }
  2804  
  2805  func (s *PrivateConnection) MarshalJSON() ([]byte, error) {
  2806  	type NoMethod PrivateConnection
  2807  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2808  }
  2809  
  2810  // RepairManagementDnsZoneBindingRequest: Request message for
  2811  // VmwareEngine.RepairManagementDnsZoneBindings
  2812  type RepairManagementDnsZoneBindingRequest struct {
  2813  	// RequestId: Optional. A request ID to identify requests. Specify a unique
  2814  	// request ID so that if you must retry your request, the server will know to
  2815  	// ignore the request if it has already been completed. The server guarantees
  2816  	// that a request doesn't result in creation of duplicate commitments for at
  2817  	// least 60 minutes. For example, consider a situation where you make an
  2818  	// initial request and the request times out. If you make the request again
  2819  	// with the same request ID, the server can check if the original operation
  2820  	// with the same request ID was received, and if so, will ignore the second
  2821  	// request. This prevents clients from accidentally creating duplicate
  2822  	// commitments. The request ID must be a valid UUID with the exception that
  2823  	// zero UUID is not supported (00000000-0000-0000-0000-000000000000).
  2824  	RequestId string `json:"requestId,omitempty"`
  2825  	// ForceSendFields is a list of field names (e.g. "RequestId") to
  2826  	// unconditionally include in API requests. By default, fields with empty or
  2827  	// default values are omitted from API requests. See
  2828  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2829  	// details.
  2830  	ForceSendFields []string `json:"-"`
  2831  	// NullFields is a list of field names (e.g. "RequestId") to include in API
  2832  	// requests with the JSON null value. By default, fields with empty values are
  2833  	// omitted from API requests. See
  2834  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2835  	NullFields []string `json:"-"`
  2836  }
  2837  
  2838  func (s *RepairManagementDnsZoneBindingRequest) MarshalJSON() ([]byte, error) {
  2839  	type NoMethod RepairManagementDnsZoneBindingRequest
  2840  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2841  }
  2842  
  2843  // ResetNsxCredentialsRequest: Request message for
  2844  // VmwareEngine.ResetNsxCredentials
  2845  type ResetNsxCredentialsRequest struct {
  2846  	// RequestId: Optional. A request ID to identify requests. Specify a unique
  2847  	// request ID so that if you must retry your request, the server will know to
  2848  	// ignore the request if it has already been completed. The server guarantees
  2849  	// that a request doesn't result in creation of duplicate commitments for at
  2850  	// least 60 minutes. For example, consider a situation where you make an
  2851  	// initial request and the request times out. If you make the request again
  2852  	// with the same request ID, the server can check if original operation with
  2853  	// the same request ID was received, and if so, will ignore the second request.
  2854  	// This prevents clients from accidentally creating duplicate commitments. The
  2855  	// request ID must be a valid UUID with the exception that zero UUID is not
  2856  	// supported (00000000-0000-0000-0000-000000000000).
  2857  	RequestId string `json:"requestId,omitempty"`
  2858  	// ForceSendFields is a list of field names (e.g. "RequestId") to
  2859  	// unconditionally include in API requests. By default, fields with empty or
  2860  	// default values are omitted from API requests. See
  2861  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2862  	// details.
  2863  	ForceSendFields []string `json:"-"`
  2864  	// NullFields is a list of field names (e.g. "RequestId") to include in API
  2865  	// requests with the JSON null value. By default, fields with empty values are
  2866  	// omitted from API requests. See
  2867  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2868  	NullFields []string `json:"-"`
  2869  }
  2870  
  2871  func (s *ResetNsxCredentialsRequest) MarshalJSON() ([]byte, error) {
  2872  	type NoMethod ResetNsxCredentialsRequest
  2873  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2874  }
  2875  
  2876  // ResetVcenterCredentialsRequest: Request message for
  2877  // VmwareEngine.ResetVcenterCredentials
  2878  type ResetVcenterCredentialsRequest struct {
  2879  	// RequestId: Optional. A request ID to identify requests. Specify a unique
  2880  	// request ID so that if you must retry your request, the server will know to
  2881  	// ignore the request if it has already been completed. The server guarantees
  2882  	// that a request doesn't result in creation of duplicate commitments for at
  2883  	// least 60 minutes. For example, consider a situation where you make an
  2884  	// initial request and the request times out. If you make the request again
  2885  	// with the same request ID, the server can check if original operation with
  2886  	// the same request ID was received, and if so, will ignore the second request.
  2887  	// This prevents clients from accidentally creating duplicate commitments. The
  2888  	// request ID must be a valid UUID with the exception that zero UUID is not
  2889  	// supported (00000000-0000-0000-0000-000000000000).
  2890  	RequestId string `json:"requestId,omitempty"`
  2891  	// Username: Optional. The username of the user to be to reset the credentials.
  2892  	// The default value of this field is CloudOwner@gve.local. The provided value
  2893  	// should be one of the following: solution-user-01@gve.local,
  2894  	// solution-user-02@gve.local, solution-user-03@gve.local,
  2895  	// solution-user-04@gve.local, solution-user-05@gve.local,
  2896  	// zertoadmin@gve.local.
  2897  	Username string `json:"username,omitempty"`
  2898  	// ForceSendFields is a list of field names (e.g. "RequestId") to
  2899  	// unconditionally include in API requests. By default, fields with empty or
  2900  	// default values are omitted from API requests. See
  2901  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2902  	// details.
  2903  	ForceSendFields []string `json:"-"`
  2904  	// NullFields is a list of field names (e.g. "RequestId") to include in API
  2905  	// requests with the JSON null value. By default, fields with empty values are
  2906  	// omitted from API requests. See
  2907  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2908  	NullFields []string `json:"-"`
  2909  }
  2910  
  2911  func (s *ResetVcenterCredentialsRequest) MarshalJSON() ([]byte, error) {
  2912  	type NoMethod ResetVcenterCredentialsRequest
  2913  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2914  }
  2915  
  2916  // RevokeDnsBindPermissionRequest: Request message for
  2917  // VmwareEngine.RevokeDnsBindPermission
  2918  type RevokeDnsBindPermissionRequest struct {
  2919  	// Principal: Required. The consumer provided user/service account which needs
  2920  	// to be granted permission to bind with the intranet VPC corresponding to the
  2921  	// consumer project.
  2922  	Principal *Principal `json:"principal,omitempty"`
  2923  	// RequestId: Optional. A request ID to identify requests. Specify a unique
  2924  	// request ID so that if you must retry your request, the server will know to
  2925  	// ignore the request if it has already been completed. The server guarantees
  2926  	// that a request doesn't result in creation of duplicate commitments for at
  2927  	// least 60 minutes. For example, consider a situation where you make an
  2928  	// initial request and the request times out. If you make the request again
  2929  	// with the same request ID, the server can check if original operation with
  2930  	// the same request ID was received, and if so, will ignore the second request.
  2931  	// This prevents clients from accidentally creating duplicate commitments. The
  2932  	// request ID must be a valid UUID with the exception that zero UUID is not
  2933  	// supported (00000000-0000-0000-0000-000000000000).
  2934  	RequestId string `json:"requestId,omitempty"`
  2935  	// ForceSendFields is a list of field names (e.g. "Principal") to
  2936  	// unconditionally include in API requests. By default, fields with empty or
  2937  	// default values are omitted from API requests. See
  2938  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2939  	// details.
  2940  	ForceSendFields []string `json:"-"`
  2941  	// NullFields is a list of field names (e.g. "Principal") to include in API
  2942  	// requests with the JSON null value. By default, fields with empty values are
  2943  	// omitted from API requests. See
  2944  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2945  	NullFields []string `json:"-"`
  2946  }
  2947  
  2948  func (s *RevokeDnsBindPermissionRequest) MarshalJSON() ([]byte, error) {
  2949  	type NoMethod RevokeDnsBindPermissionRequest
  2950  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2951  }
  2952  
  2953  // SetIamPolicyRequest: Request message for `SetIamPolicy` method.
  2954  type SetIamPolicyRequest struct {
  2955  	// Policy: REQUIRED: The complete policy to be applied to the `resource`. The
  2956  	// size of the policy is limited to a few 10s of KB. An empty policy is a valid
  2957  	// policy but certain Google Cloud services (such as Projects) might reject
  2958  	// them.
  2959  	Policy *Policy `json:"policy,omitempty"`
  2960  	// UpdateMask: OPTIONAL: A FieldMask specifying which fields of the policy to
  2961  	// modify. Only the fields in the mask will be modified. If no mask is
  2962  	// provided, the following default mask is used: `paths: "bindings, etag"
  2963  	UpdateMask string `json:"updateMask,omitempty"`
  2964  	// ForceSendFields is a list of field names (e.g. "Policy") to unconditionally
  2965  	// include in API requests. By default, fields with empty or default values are
  2966  	// omitted from API requests. See
  2967  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2968  	// details.
  2969  	ForceSendFields []string `json:"-"`
  2970  	// NullFields is a list of field names (e.g. "Policy") to include in API
  2971  	// requests with the JSON null value. By default, fields with empty values are
  2972  	// omitted from API requests. See
  2973  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2974  	NullFields []string `json:"-"`
  2975  }
  2976  
  2977  func (s *SetIamPolicyRequest) MarshalJSON() ([]byte, error) {
  2978  	type NoMethod SetIamPolicyRequest
  2979  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2980  }
  2981  
  2982  // Status: The `Status` type defines a logical error model that is suitable for
  2983  // different programming environments, including REST APIs and RPC APIs. It is
  2984  // used by gRPC (https://github.com/grpc). Each `Status` message contains three
  2985  // pieces of data: error code, error message, and error details. You can find
  2986  // out more about this error model and how to work with it in the API Design
  2987  // Guide (https://cloud.google.com/apis/design/errors).
  2988  type Status struct {
  2989  	// Code: The status code, which should be an enum value of google.rpc.Code.
  2990  	Code int64 `json:"code,omitempty"`
  2991  	// Details: A list of messages that carry the error details. There is a common
  2992  	// set of message types for APIs to use.
  2993  	Details []googleapi.RawMessage `json:"details,omitempty"`
  2994  	// Message: A developer-facing error message, which should be in English. Any
  2995  	// user-facing error message should be localized and sent in the
  2996  	// google.rpc.Status.details field, or localized by the client.
  2997  	Message string `json:"message,omitempty"`
  2998  	// ForceSendFields is a list of field names (e.g. "Code") to unconditionally
  2999  	// include in API requests. By default, fields with empty or default values are
  3000  	// omitted from API requests. See
  3001  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3002  	// details.
  3003  	ForceSendFields []string `json:"-"`
  3004  	// NullFields is a list of field names (e.g. "Code") to include in API requests
  3005  	// with the JSON null value. By default, fields with empty values are omitted
  3006  	// from API requests. See
  3007  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3008  	NullFields []string `json:"-"`
  3009  }
  3010  
  3011  func (s *Status) MarshalJSON() ([]byte, error) {
  3012  	type NoMethod Status
  3013  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3014  }
  3015  
  3016  // StretchedClusterConfig: Configuration of a stretched cluster.
  3017  type StretchedClusterConfig struct {
  3018  	// PreferredLocation: Required. Zone that will remain operational when
  3019  	// connection between the two zones is lost. Specify the resource name of a
  3020  	// zone that belongs to the region of the private cloud. For example:
  3021  	// `projects/{project}/locations/europe-west3-a` where `{project}` can either
  3022  	// be a project number or a project ID.
  3023  	PreferredLocation string `json:"preferredLocation,omitempty"`
  3024  	// SecondaryLocation: Required. Additional zone for a higher level of
  3025  	// availability and load balancing. Specify the resource name of a zone that
  3026  	// belongs to the region of the private cloud. For example:
  3027  	// `projects/{project}/locations/europe-west3-b` where `{project}` can either
  3028  	// be a project number or a project ID.
  3029  	SecondaryLocation string `json:"secondaryLocation,omitempty"`
  3030  	// ForceSendFields is a list of field names (e.g. "PreferredLocation") to
  3031  	// unconditionally include in API requests. By default, fields with empty or
  3032  	// default values are omitted from API requests. See
  3033  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3034  	// details.
  3035  	ForceSendFields []string `json:"-"`
  3036  	// NullFields is a list of field names (e.g. "PreferredLocation") to include in
  3037  	// API requests with the JSON null value. By default, fields with empty values
  3038  	// are omitted from API requests. See
  3039  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3040  	NullFields []string `json:"-"`
  3041  }
  3042  
  3043  func (s *StretchedClusterConfig) MarshalJSON() ([]byte, error) {
  3044  	type NoMethod StretchedClusterConfig
  3045  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3046  }
  3047  
  3048  // Subnet: Subnet in a private cloud. Either `management` subnets (such as
  3049  // vMotion) that are read-only, or `userDefined`, which can also be updated.
  3050  type Subnet struct {
  3051  	// GatewayIp: The IP address of the gateway of this subnet. Must fall within
  3052  	// the IP prefix defined above.
  3053  	GatewayIp string `json:"gatewayIp,omitempty"`
  3054  	// IpCidrRange: The IP address range of the subnet in CIDR format
  3055  	// '10.0.0.0/24'.
  3056  	IpCidrRange string `json:"ipCidrRange,omitempty"`
  3057  	// Name: Output only. The resource name of this subnet. Resource names are
  3058  	// schemeless URIs that follow the conventions in
  3059  	// https://cloud.google.com/apis/design/resource_names. For example:
  3060  	// `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/subnets/m
  3061  	// y-subnet`
  3062  	Name string `json:"name,omitempty"`
  3063  	// State: Output only. The state of the resource.
  3064  	//
  3065  	// Possible values:
  3066  	//   "STATE_UNSPECIFIED" - The default value. This value should never be used.
  3067  	//   "ACTIVE" - The subnet is ready.
  3068  	//   "CREATING" - The subnet is being created.
  3069  	//   "UPDATING" - The subnet is being updated.
  3070  	//   "DELETING" - The subnet is being deleted.
  3071  	//   "RECONCILING" - Changes requested in the last operation are being
  3072  	// propagated.
  3073  	//   "FAILED" - Last operation on the subnet did not succeed. Subnet's payload
  3074  	// is reverted back to its most recent working state.
  3075  	State string `json:"state,omitempty"`
  3076  	// Type: Output only. The type of the subnet. For example "management" or
  3077  	// "userDefined".
  3078  	Type string `json:"type,omitempty"`
  3079  	// VlanId: Output only. VLAN ID of the VLAN on which the subnet is configured
  3080  	VlanId int64 `json:"vlanId,omitempty"`
  3081  
  3082  	// ServerResponse contains the HTTP response code and headers from the server.
  3083  	googleapi.ServerResponse `json:"-"`
  3084  	// ForceSendFields is a list of field names (e.g. "GatewayIp") to
  3085  	// unconditionally include in API requests. By default, fields with empty or
  3086  	// default values are omitted from API requests. See
  3087  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3088  	// details.
  3089  	ForceSendFields []string `json:"-"`
  3090  	// NullFields is a list of field names (e.g. "GatewayIp") to include in API
  3091  	// requests with the JSON null value. By default, fields with empty values are
  3092  	// omitted from API requests. See
  3093  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3094  	NullFields []string `json:"-"`
  3095  }
  3096  
  3097  func (s *Subnet) MarshalJSON() ([]byte, error) {
  3098  	type NoMethod Subnet
  3099  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3100  }
  3101  
  3102  // TestIamPermissionsRequest: Request message for `TestIamPermissions` method.
  3103  type TestIamPermissionsRequest struct {
  3104  	// Permissions: The set of permissions to check for the `resource`. Permissions
  3105  	// with wildcards (such as `*` or `storage.*`) are not allowed. For more
  3106  	// information see IAM Overview
  3107  	// (https://cloud.google.com/iam/docs/overview#permissions).
  3108  	Permissions []string `json:"permissions,omitempty"`
  3109  	// ForceSendFields is a list of field names (e.g. "Permissions") to
  3110  	// unconditionally include in API requests. By default, fields with empty or
  3111  	// default values are omitted from API requests. See
  3112  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3113  	// details.
  3114  	ForceSendFields []string `json:"-"`
  3115  	// NullFields is a list of field names (e.g. "Permissions") to include in API
  3116  	// requests with the JSON null value. By default, fields with empty values are
  3117  	// omitted from API requests. See
  3118  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3119  	NullFields []string `json:"-"`
  3120  }
  3121  
  3122  func (s *TestIamPermissionsRequest) MarshalJSON() ([]byte, error) {
  3123  	type NoMethod TestIamPermissionsRequest
  3124  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3125  }
  3126  
  3127  // TestIamPermissionsResponse: Response message for `TestIamPermissions`
  3128  // method.
  3129  type TestIamPermissionsResponse struct {
  3130  	// Permissions: A subset of `TestPermissionsRequest.permissions` that the
  3131  	// caller is allowed.
  3132  	Permissions []string `json:"permissions,omitempty"`
  3133  
  3134  	// ServerResponse contains the HTTP response code and headers from the server.
  3135  	googleapi.ServerResponse `json:"-"`
  3136  	// ForceSendFields is a list of field names (e.g. "Permissions") to
  3137  	// unconditionally include in API requests. By default, fields with empty or
  3138  	// default values are omitted from API requests. See
  3139  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3140  	// details.
  3141  	ForceSendFields []string `json:"-"`
  3142  	// NullFields is a list of field names (e.g. "Permissions") to include in API
  3143  	// requests with the JSON null value. By default, fields with empty values are
  3144  	// omitted from API requests. See
  3145  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3146  	NullFields []string `json:"-"`
  3147  }
  3148  
  3149  func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) {
  3150  	type NoMethod TestIamPermissionsResponse
  3151  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3152  }
  3153  
  3154  // UndeletePrivateCloudRequest: Request message for
  3155  // VmwareEngine.UndeletePrivateCloud
  3156  type UndeletePrivateCloudRequest struct {
  3157  	// RequestId: Optional. The request ID must be a valid UUID with the exception
  3158  	// that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
  3159  	RequestId string `json:"requestId,omitempty"`
  3160  	// ForceSendFields is a list of field names (e.g. "RequestId") to
  3161  	// unconditionally include in API requests. By default, fields with empty or
  3162  	// default values are omitted from API requests. See
  3163  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3164  	// details.
  3165  	ForceSendFields []string `json:"-"`
  3166  	// NullFields is a list of field names (e.g. "RequestId") to include in API
  3167  	// requests with the JSON null value. By default, fields with empty values are
  3168  	// omitted from API requests. See
  3169  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3170  	NullFields []string `json:"-"`
  3171  }
  3172  
  3173  func (s *UndeletePrivateCloudRequest) MarshalJSON() ([]byte, error) {
  3174  	type NoMethod UndeletePrivateCloudRequest
  3175  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3176  }
  3177  
  3178  // Vcenter: Details about a vCenter Server management appliance.
  3179  type Vcenter struct {
  3180  	// Fqdn: Fully qualified domain name of the appliance.
  3181  	Fqdn string `json:"fqdn,omitempty"`
  3182  	// InternalIp: Internal IP address of the appliance.
  3183  	InternalIp string `json:"internalIp,omitempty"`
  3184  	// State: Output only. The state of the appliance.
  3185  	//
  3186  	// Possible values:
  3187  	//   "STATE_UNSPECIFIED" - Unspecified appliance state. This is the default
  3188  	// value.
  3189  	//   "ACTIVE" - The appliance is operational and can be used.
  3190  	//   "CREATING" - The appliance is being deployed.
  3191  	State string `json:"state,omitempty"`
  3192  	// Version: Version of the appliance.
  3193  	Version string `json:"version,omitempty"`
  3194  	// ForceSendFields is a list of field names (e.g. "Fqdn") to unconditionally
  3195  	// include in API requests. By default, fields with empty or default values are
  3196  	// omitted from API requests. See
  3197  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3198  	// details.
  3199  	ForceSendFields []string `json:"-"`
  3200  	// NullFields is a list of field names (e.g. "Fqdn") to include in API requests
  3201  	// with the JSON null value. By default, fields with empty values are omitted
  3202  	// from API requests. See
  3203  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3204  	NullFields []string `json:"-"`
  3205  }
  3206  
  3207  func (s *Vcenter) MarshalJSON() ([]byte, error) {
  3208  	type NoMethod Vcenter
  3209  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3210  }
  3211  
  3212  // VmwareEngineNetwork: VMware Engine network resource that provides
  3213  // connectivity for VMware Engine private clouds.
  3214  type VmwareEngineNetwork struct {
  3215  	// CreateTime: Output only. Creation time of this resource.
  3216  	CreateTime string `json:"createTime,omitempty"`
  3217  	// Description: User-provided description for this VMware Engine network.
  3218  	Description string `json:"description,omitempty"`
  3219  	// Etag: Checksum that may be sent on update and delete requests to ensure that
  3220  	// the user-provided value is up to date before the server processes a request.
  3221  	// The server computes checksums based on the value of other fields in the
  3222  	// request.
  3223  	Etag string `json:"etag,omitempty"`
  3224  	// Name: Output only. The resource name of the VMware Engine network. Resource
  3225  	// names are schemeless URIs that follow the conventions in
  3226  	// https://cloud.google.com/apis/design/resource_names. For example:
  3227  	// `projects/my-project/locations/global/vmwareEngineNetworks/my-network`
  3228  	Name string `json:"name,omitempty"`
  3229  	// State: Output only. State of the VMware Engine network.
  3230  	//
  3231  	// Possible values:
  3232  	//   "STATE_UNSPECIFIED" - The default value. This value is used if the state
  3233  	// is omitted.
  3234  	//   "CREATING" - The VMware Engine network is being created.
  3235  	//   "ACTIVE" - The VMware Engine network is ready.
  3236  	//   "UPDATING" - The VMware Engine network is being updated.
  3237  	//   "DELETING" - The VMware Engine network is being deleted.
  3238  	State string `json:"state,omitempty"`
  3239  	// Type: Required. VMware Engine network type.
  3240  	//
  3241  	// Possible values:
  3242  	//   "TYPE_UNSPECIFIED" - The default value. This value should never be used.
  3243  	//   "LEGACY" - Network type used by private clouds created in projects without
  3244  	// a network of type `STANDARD`. This network type is no longer used for new
  3245  	// VMware Engine private cloud deployments.
  3246  	//   "STANDARD" - Standard network type used for private cloud connectivity.
  3247  	Type string `json:"type,omitempty"`
  3248  	// Uid: Output only. System-generated unique identifier for the resource.
  3249  	Uid string `json:"uid,omitempty"`
  3250  	// UpdateTime: Output only. Last update time of this resource.
  3251  	UpdateTime string `json:"updateTime,omitempty"`
  3252  	// VpcNetworks: Output only. VMware Engine service VPC networks that provide
  3253  	// connectivity from a private cloud to customer projects, the internet, and
  3254  	// other Google Cloud services.
  3255  	VpcNetworks []*VpcNetwork `json:"vpcNetworks,omitempty"`
  3256  
  3257  	// ServerResponse contains the HTTP response code and headers from the server.
  3258  	googleapi.ServerResponse `json:"-"`
  3259  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  3260  	// unconditionally include in API requests. By default, fields with empty or
  3261  	// default values are omitted from API requests. See
  3262  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3263  	// details.
  3264  	ForceSendFields []string `json:"-"`
  3265  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  3266  	// requests with the JSON null value. By default, fields with empty values are
  3267  	// omitted from API requests. See
  3268  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3269  	NullFields []string `json:"-"`
  3270  }
  3271  
  3272  func (s *VmwareEngineNetwork) MarshalJSON() ([]byte, error) {
  3273  	type NoMethod VmwareEngineNetwork
  3274  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3275  }
  3276  
  3277  // VpcNetwork: Represents a VMware Engine VPC network that is managed by a
  3278  // VMware Engine network resource.
  3279  type VpcNetwork struct {
  3280  	// Network: Output only. The relative resource name of the service VPC network
  3281  	// this VMware Engine network is attached to. For example:
  3282  	// `projects/123123/global/networks/my-network`
  3283  	Network string `json:"network,omitempty"`
  3284  	// Type: Output only. Type of VPC network (INTRANET, INTERNET, or GOOGLE_CLOUD)
  3285  	//
  3286  	// Possible values:
  3287  	//   "TYPE_UNSPECIFIED" - The default value. This value should never be used.
  3288  	//   "INTRANET" - VPC network that will be peered with a consumer VPC network
  3289  	// or the intranet VPC of another VMware Engine network. Access a private cloud
  3290  	// through Compute Engine VMs on a peered VPC network or an on-premises
  3291  	// resource connected to a peered consumer VPC network.
  3292  	//   "INTERNET" - VPC network used for internet access to and from a private
  3293  	// cloud.
  3294  	//   "GOOGLE_CLOUD" - VPC network used for access to Google Cloud services like
  3295  	// Cloud Storage.
  3296  	Type string `json:"type,omitempty"`
  3297  	// ForceSendFields is a list of field names (e.g. "Network") to unconditionally
  3298  	// include in API requests. By default, fields with empty or default values are
  3299  	// omitted from API requests. See
  3300  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3301  	// details.
  3302  	ForceSendFields []string `json:"-"`
  3303  	// NullFields is a list of field names (e.g. "Network") to include in API
  3304  	// requests with the JSON null value. By default, fields with empty values are
  3305  	// omitted from API requests. See
  3306  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3307  	NullFields []string `json:"-"`
  3308  }
  3309  
  3310  func (s *VpcNetwork) MarshalJSON() ([]byte, error) {
  3311  	type NoMethod VpcNetwork
  3312  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3313  }
  3314  
  3315  type ProjectsLocationsGetCall struct {
  3316  	s            *Service
  3317  	name         string
  3318  	urlParams_   gensupport.URLParams
  3319  	ifNoneMatch_ string
  3320  	ctx_         context.Context
  3321  	header_      http.Header
  3322  }
  3323  
  3324  // Get: Gets information about a location.
  3325  //
  3326  // - name: Resource name for the location.
  3327  func (r *ProjectsLocationsService) Get(name string) *ProjectsLocationsGetCall {
  3328  	c := &ProjectsLocationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3329  	c.name = name
  3330  	return c
  3331  }
  3332  
  3333  // Fields allows partial responses to be retrieved. See
  3334  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3335  // details.
  3336  func (c *ProjectsLocationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsGetCall {
  3337  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3338  	return c
  3339  }
  3340  
  3341  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  3342  // object's ETag matches the given value. This is useful for getting updates
  3343  // only after the object has changed since the last request.
  3344  func (c *ProjectsLocationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsGetCall {
  3345  	c.ifNoneMatch_ = entityTag
  3346  	return c
  3347  }
  3348  
  3349  // Context sets the context to be used in this call's Do method.
  3350  func (c *ProjectsLocationsGetCall) Context(ctx context.Context) *ProjectsLocationsGetCall {
  3351  	c.ctx_ = ctx
  3352  	return c
  3353  }
  3354  
  3355  // Header returns a http.Header that can be modified by the caller to add
  3356  // headers to the request.
  3357  func (c *ProjectsLocationsGetCall) Header() http.Header {
  3358  	if c.header_ == nil {
  3359  		c.header_ = make(http.Header)
  3360  	}
  3361  	return c.header_
  3362  }
  3363  
  3364  func (c *ProjectsLocationsGetCall) doRequest(alt string) (*http.Response, error) {
  3365  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  3366  	if c.ifNoneMatch_ != "" {
  3367  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  3368  	}
  3369  	var body io.Reader = nil
  3370  	c.urlParams_.Set("alt", alt)
  3371  	c.urlParams_.Set("prettyPrint", "false")
  3372  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  3373  	urls += "?" + c.urlParams_.Encode()
  3374  	req, err := http.NewRequest("GET", urls, body)
  3375  	if err != nil {
  3376  		return nil, err
  3377  	}
  3378  	req.Header = reqHeaders
  3379  	googleapi.Expand(req.URL, map[string]string{
  3380  		"name": c.name,
  3381  	})
  3382  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3383  }
  3384  
  3385  // Do executes the "vmwareengine.projects.locations.get" call.
  3386  // Any non-2xx status code is an error. Response headers are in either
  3387  // *Location.ServerResponse.Header or (if a response was returned at all) in
  3388  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3389  // whether the returned error was because http.StatusNotModified was returned.
  3390  func (c *ProjectsLocationsGetCall) Do(opts ...googleapi.CallOption) (*Location, error) {
  3391  	gensupport.SetOptions(c.urlParams_, opts...)
  3392  	res, err := c.doRequest("json")
  3393  	if res != nil && res.StatusCode == http.StatusNotModified {
  3394  		if res.Body != nil {
  3395  			res.Body.Close()
  3396  		}
  3397  		return nil, gensupport.WrapError(&googleapi.Error{
  3398  			Code:   res.StatusCode,
  3399  			Header: res.Header,
  3400  		})
  3401  	}
  3402  	if err != nil {
  3403  		return nil, err
  3404  	}
  3405  	defer googleapi.CloseBody(res)
  3406  	if err := googleapi.CheckResponse(res); err != nil {
  3407  		return nil, gensupport.WrapError(err)
  3408  	}
  3409  	ret := &Location{
  3410  		ServerResponse: googleapi.ServerResponse{
  3411  			Header:         res.Header,
  3412  			HTTPStatusCode: res.StatusCode,
  3413  		},
  3414  	}
  3415  	target := &ret
  3416  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3417  		return nil, err
  3418  	}
  3419  	return ret, nil
  3420  }
  3421  
  3422  type ProjectsLocationsGetDnsBindPermissionCall struct {
  3423  	s            *Service
  3424  	name         string
  3425  	urlParams_   gensupport.URLParams
  3426  	ifNoneMatch_ string
  3427  	ctx_         context.Context
  3428  	header_      http.Header
  3429  }
  3430  
  3431  // GetDnsBindPermission: Gets all the principals having bind permission on the
  3432  // intranet VPC associated with the consumer project granted by the Grant API.
  3433  // DnsBindPermission is a global resource and location can only be global.
  3434  //
  3435  //   - name: The name of the resource which stores the users/service accounts
  3436  //     having the permission to bind to the corresponding intranet VPC of the
  3437  //     consumer project. DnsBindPermission is a global resource. Resource names
  3438  //     are schemeless URIs that follow the conventions in
  3439  //     https://cloud.google.com/apis/design/resource_names. For example:
  3440  //     `projects/my-project/locations/global/dnsBindPermission`.
  3441  func (r *ProjectsLocationsService) GetDnsBindPermission(name string) *ProjectsLocationsGetDnsBindPermissionCall {
  3442  	c := &ProjectsLocationsGetDnsBindPermissionCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3443  	c.name = name
  3444  	return c
  3445  }
  3446  
  3447  // Fields allows partial responses to be retrieved. See
  3448  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3449  // details.
  3450  func (c *ProjectsLocationsGetDnsBindPermissionCall) Fields(s ...googleapi.Field) *ProjectsLocationsGetDnsBindPermissionCall {
  3451  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3452  	return c
  3453  }
  3454  
  3455  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  3456  // object's ETag matches the given value. This is useful for getting updates
  3457  // only after the object has changed since the last request.
  3458  func (c *ProjectsLocationsGetDnsBindPermissionCall) IfNoneMatch(entityTag string) *ProjectsLocationsGetDnsBindPermissionCall {
  3459  	c.ifNoneMatch_ = entityTag
  3460  	return c
  3461  }
  3462  
  3463  // Context sets the context to be used in this call's Do method.
  3464  func (c *ProjectsLocationsGetDnsBindPermissionCall) Context(ctx context.Context) *ProjectsLocationsGetDnsBindPermissionCall {
  3465  	c.ctx_ = ctx
  3466  	return c
  3467  }
  3468  
  3469  // Header returns a http.Header that can be modified by the caller to add
  3470  // headers to the request.
  3471  func (c *ProjectsLocationsGetDnsBindPermissionCall) Header() http.Header {
  3472  	if c.header_ == nil {
  3473  		c.header_ = make(http.Header)
  3474  	}
  3475  	return c.header_
  3476  }
  3477  
  3478  func (c *ProjectsLocationsGetDnsBindPermissionCall) doRequest(alt string) (*http.Response, error) {
  3479  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  3480  	if c.ifNoneMatch_ != "" {
  3481  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  3482  	}
  3483  	var body io.Reader = nil
  3484  	c.urlParams_.Set("alt", alt)
  3485  	c.urlParams_.Set("prettyPrint", "false")
  3486  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  3487  	urls += "?" + c.urlParams_.Encode()
  3488  	req, err := http.NewRequest("GET", urls, body)
  3489  	if err != nil {
  3490  		return nil, err
  3491  	}
  3492  	req.Header = reqHeaders
  3493  	googleapi.Expand(req.URL, map[string]string{
  3494  		"name": c.name,
  3495  	})
  3496  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3497  }
  3498  
  3499  // Do executes the "vmwareengine.projects.locations.getDnsBindPermission" call.
  3500  // Any non-2xx status code is an error. Response headers are in either
  3501  // *DnsBindPermission.ServerResponse.Header or (if a response was returned at
  3502  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  3503  // check whether the returned error was because http.StatusNotModified was
  3504  // returned.
  3505  func (c *ProjectsLocationsGetDnsBindPermissionCall) Do(opts ...googleapi.CallOption) (*DnsBindPermission, error) {
  3506  	gensupport.SetOptions(c.urlParams_, opts...)
  3507  	res, err := c.doRequest("json")
  3508  	if res != nil && res.StatusCode == http.StatusNotModified {
  3509  		if res.Body != nil {
  3510  			res.Body.Close()
  3511  		}
  3512  		return nil, gensupport.WrapError(&googleapi.Error{
  3513  			Code:   res.StatusCode,
  3514  			Header: res.Header,
  3515  		})
  3516  	}
  3517  	if err != nil {
  3518  		return nil, err
  3519  	}
  3520  	defer googleapi.CloseBody(res)
  3521  	if err := googleapi.CheckResponse(res); err != nil {
  3522  		return nil, gensupport.WrapError(err)
  3523  	}
  3524  	ret := &DnsBindPermission{
  3525  		ServerResponse: googleapi.ServerResponse{
  3526  			Header:         res.Header,
  3527  			HTTPStatusCode: res.StatusCode,
  3528  		},
  3529  	}
  3530  	target := &ret
  3531  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3532  		return nil, err
  3533  	}
  3534  	return ret, nil
  3535  }
  3536  
  3537  type ProjectsLocationsListCall struct {
  3538  	s            *Service
  3539  	name         string
  3540  	urlParams_   gensupport.URLParams
  3541  	ifNoneMatch_ string
  3542  	ctx_         context.Context
  3543  	header_      http.Header
  3544  }
  3545  
  3546  // List: Lists information about the supported locations for this service.
  3547  //
  3548  // - name: The resource that owns the locations collection, if applicable.
  3549  func (r *ProjectsLocationsService) List(name string) *ProjectsLocationsListCall {
  3550  	c := &ProjectsLocationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3551  	c.name = name
  3552  	return c
  3553  }
  3554  
  3555  // Filter sets the optional parameter "filter": A filter to narrow down results
  3556  // to a preferred subset. The filtering language accepts strings like
  3557  // "displayName=tokyo", and is documented in more detail in AIP-160
  3558  // (https://google.aip.dev/160).
  3559  func (c *ProjectsLocationsListCall) Filter(filter string) *ProjectsLocationsListCall {
  3560  	c.urlParams_.Set("filter", filter)
  3561  	return c
  3562  }
  3563  
  3564  // PageSize sets the optional parameter "pageSize": The maximum number of
  3565  // results to return. If not set, the service selects a default.
  3566  func (c *ProjectsLocationsListCall) PageSize(pageSize int64) *ProjectsLocationsListCall {
  3567  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  3568  	return c
  3569  }
  3570  
  3571  // PageToken sets the optional parameter "pageToken": A page token received
  3572  // from the `next_page_token` field in the response. Send that page token to
  3573  // receive the subsequent page.
  3574  func (c *ProjectsLocationsListCall) PageToken(pageToken string) *ProjectsLocationsListCall {
  3575  	c.urlParams_.Set("pageToken", pageToken)
  3576  	return c
  3577  }
  3578  
  3579  // Fields allows partial responses to be retrieved. See
  3580  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3581  // details.
  3582  func (c *ProjectsLocationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsListCall {
  3583  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3584  	return c
  3585  }
  3586  
  3587  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  3588  // object's ETag matches the given value. This is useful for getting updates
  3589  // only after the object has changed since the last request.
  3590  func (c *ProjectsLocationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsListCall {
  3591  	c.ifNoneMatch_ = entityTag
  3592  	return c
  3593  }
  3594  
  3595  // Context sets the context to be used in this call's Do method.
  3596  func (c *ProjectsLocationsListCall) Context(ctx context.Context) *ProjectsLocationsListCall {
  3597  	c.ctx_ = ctx
  3598  	return c
  3599  }
  3600  
  3601  // Header returns a http.Header that can be modified by the caller to add
  3602  // headers to the request.
  3603  func (c *ProjectsLocationsListCall) Header() http.Header {
  3604  	if c.header_ == nil {
  3605  		c.header_ = make(http.Header)
  3606  	}
  3607  	return c.header_
  3608  }
  3609  
  3610  func (c *ProjectsLocationsListCall) doRequest(alt string) (*http.Response, error) {
  3611  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  3612  	if c.ifNoneMatch_ != "" {
  3613  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  3614  	}
  3615  	var body io.Reader = nil
  3616  	c.urlParams_.Set("alt", alt)
  3617  	c.urlParams_.Set("prettyPrint", "false")
  3618  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}/locations")
  3619  	urls += "?" + c.urlParams_.Encode()
  3620  	req, err := http.NewRequest("GET", urls, body)
  3621  	if err != nil {
  3622  		return nil, err
  3623  	}
  3624  	req.Header = reqHeaders
  3625  	googleapi.Expand(req.URL, map[string]string{
  3626  		"name": c.name,
  3627  	})
  3628  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3629  }
  3630  
  3631  // Do executes the "vmwareengine.projects.locations.list" call.
  3632  // Any non-2xx status code is an error. Response headers are in either
  3633  // *ListLocationsResponse.ServerResponse.Header or (if a response was returned
  3634  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  3635  // check whether the returned error was because http.StatusNotModified was
  3636  // returned.
  3637  func (c *ProjectsLocationsListCall) Do(opts ...googleapi.CallOption) (*ListLocationsResponse, error) {
  3638  	gensupport.SetOptions(c.urlParams_, opts...)
  3639  	res, err := c.doRequest("json")
  3640  	if res != nil && res.StatusCode == http.StatusNotModified {
  3641  		if res.Body != nil {
  3642  			res.Body.Close()
  3643  		}
  3644  		return nil, gensupport.WrapError(&googleapi.Error{
  3645  			Code:   res.StatusCode,
  3646  			Header: res.Header,
  3647  		})
  3648  	}
  3649  	if err != nil {
  3650  		return nil, err
  3651  	}
  3652  	defer googleapi.CloseBody(res)
  3653  	if err := googleapi.CheckResponse(res); err != nil {
  3654  		return nil, gensupport.WrapError(err)
  3655  	}
  3656  	ret := &ListLocationsResponse{
  3657  		ServerResponse: googleapi.ServerResponse{
  3658  			Header:         res.Header,
  3659  			HTTPStatusCode: res.StatusCode,
  3660  		},
  3661  	}
  3662  	target := &ret
  3663  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3664  		return nil, err
  3665  	}
  3666  	return ret, nil
  3667  }
  3668  
  3669  // Pages invokes f for each page of results.
  3670  // A non-nil error returned from f will halt the iteration.
  3671  // The provided context supersedes any context provided to the Context method.
  3672  func (c *ProjectsLocationsListCall) Pages(ctx context.Context, f func(*ListLocationsResponse) error) error {
  3673  	c.ctx_ = ctx
  3674  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  3675  	for {
  3676  		x, err := c.Do()
  3677  		if err != nil {
  3678  			return err
  3679  		}
  3680  		if err := f(x); err != nil {
  3681  			return err
  3682  		}
  3683  		if x.NextPageToken == "" {
  3684  			return nil
  3685  		}
  3686  		c.PageToken(x.NextPageToken)
  3687  	}
  3688  }
  3689  
  3690  type ProjectsLocationsDnsBindPermissionGrantCall struct {
  3691  	s                             *Service
  3692  	name                          string
  3693  	grantdnsbindpermissionrequest *GrantDnsBindPermissionRequest
  3694  	urlParams_                    gensupport.URLParams
  3695  	ctx_                          context.Context
  3696  	header_                       http.Header
  3697  }
  3698  
  3699  // Grant: Grants the bind permission to the customer provided principal(user /
  3700  // service account) to bind their DNS zone with the intranet VPC associated
  3701  // with the project. DnsBindPermission is a global resource and location can
  3702  // only be global.
  3703  //
  3704  //   - name: The name of the resource which stores the users/service accounts
  3705  //     having the permission to bind to the corresponding intranet VPC of the
  3706  //     consumer project. DnsBindPermission is a global resource. Resource names
  3707  //     are schemeless URIs that follow the conventions in
  3708  //     https://cloud.google.com/apis/design/resource_names. For example:
  3709  //     `projects/my-project/locations/global/dnsBindPermission`.
  3710  func (r *ProjectsLocationsDnsBindPermissionService) Grant(name string, grantdnsbindpermissionrequest *GrantDnsBindPermissionRequest) *ProjectsLocationsDnsBindPermissionGrantCall {
  3711  	c := &ProjectsLocationsDnsBindPermissionGrantCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3712  	c.name = name
  3713  	c.grantdnsbindpermissionrequest = grantdnsbindpermissionrequest
  3714  	return c
  3715  }
  3716  
  3717  // Fields allows partial responses to be retrieved. See
  3718  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3719  // details.
  3720  func (c *ProjectsLocationsDnsBindPermissionGrantCall) Fields(s ...googleapi.Field) *ProjectsLocationsDnsBindPermissionGrantCall {
  3721  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3722  	return c
  3723  }
  3724  
  3725  // Context sets the context to be used in this call's Do method.
  3726  func (c *ProjectsLocationsDnsBindPermissionGrantCall) Context(ctx context.Context) *ProjectsLocationsDnsBindPermissionGrantCall {
  3727  	c.ctx_ = ctx
  3728  	return c
  3729  }
  3730  
  3731  // Header returns a http.Header that can be modified by the caller to add
  3732  // headers to the request.
  3733  func (c *ProjectsLocationsDnsBindPermissionGrantCall) Header() http.Header {
  3734  	if c.header_ == nil {
  3735  		c.header_ = make(http.Header)
  3736  	}
  3737  	return c.header_
  3738  }
  3739  
  3740  func (c *ProjectsLocationsDnsBindPermissionGrantCall) doRequest(alt string) (*http.Response, error) {
  3741  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3742  	var body io.Reader = nil
  3743  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.grantdnsbindpermissionrequest)
  3744  	if err != nil {
  3745  		return nil, err
  3746  	}
  3747  	c.urlParams_.Set("alt", alt)
  3748  	c.urlParams_.Set("prettyPrint", "false")
  3749  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:grant")
  3750  	urls += "?" + c.urlParams_.Encode()
  3751  	req, err := http.NewRequest("POST", urls, body)
  3752  	if err != nil {
  3753  		return nil, err
  3754  	}
  3755  	req.Header = reqHeaders
  3756  	googleapi.Expand(req.URL, map[string]string{
  3757  		"name": c.name,
  3758  	})
  3759  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3760  }
  3761  
  3762  // Do executes the "vmwareengine.projects.locations.dnsBindPermission.grant" call.
  3763  // Any non-2xx status code is an error. Response headers are in either
  3764  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3765  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3766  // whether the returned error was because http.StatusNotModified was returned.
  3767  func (c *ProjectsLocationsDnsBindPermissionGrantCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3768  	gensupport.SetOptions(c.urlParams_, opts...)
  3769  	res, err := c.doRequest("json")
  3770  	if res != nil && res.StatusCode == http.StatusNotModified {
  3771  		if res.Body != nil {
  3772  			res.Body.Close()
  3773  		}
  3774  		return nil, gensupport.WrapError(&googleapi.Error{
  3775  			Code:   res.StatusCode,
  3776  			Header: res.Header,
  3777  		})
  3778  	}
  3779  	if err != nil {
  3780  		return nil, err
  3781  	}
  3782  	defer googleapi.CloseBody(res)
  3783  	if err := googleapi.CheckResponse(res); err != nil {
  3784  		return nil, gensupport.WrapError(err)
  3785  	}
  3786  	ret := &Operation{
  3787  		ServerResponse: googleapi.ServerResponse{
  3788  			Header:         res.Header,
  3789  			HTTPStatusCode: res.StatusCode,
  3790  		},
  3791  	}
  3792  	target := &ret
  3793  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3794  		return nil, err
  3795  	}
  3796  	return ret, nil
  3797  }
  3798  
  3799  type ProjectsLocationsDnsBindPermissionRevokeCall struct {
  3800  	s                              *Service
  3801  	name                           string
  3802  	revokednsbindpermissionrequest *RevokeDnsBindPermissionRequest
  3803  	urlParams_                     gensupport.URLParams
  3804  	ctx_                           context.Context
  3805  	header_                        http.Header
  3806  }
  3807  
  3808  // Revoke: Revokes the bind permission from the customer provided
  3809  // principal(user / service account) on the intranet VPC associated with the
  3810  // consumer project. DnsBindPermission is a global resource and location can
  3811  // only be global.
  3812  //
  3813  //   - name: The name of the resource which stores the users/service accounts
  3814  //     having the permission to bind to the corresponding intranet VPC of the
  3815  //     consumer project. DnsBindPermission is a global resource. Resource names
  3816  //     are schemeless URIs that follow the conventions in
  3817  //     https://cloud.google.com/apis/design/resource_names. For example:
  3818  //     `projects/my-project/locations/global/dnsBindPermission`.
  3819  func (r *ProjectsLocationsDnsBindPermissionService) Revoke(name string, revokednsbindpermissionrequest *RevokeDnsBindPermissionRequest) *ProjectsLocationsDnsBindPermissionRevokeCall {
  3820  	c := &ProjectsLocationsDnsBindPermissionRevokeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3821  	c.name = name
  3822  	c.revokednsbindpermissionrequest = revokednsbindpermissionrequest
  3823  	return c
  3824  }
  3825  
  3826  // Fields allows partial responses to be retrieved. See
  3827  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3828  // details.
  3829  func (c *ProjectsLocationsDnsBindPermissionRevokeCall) Fields(s ...googleapi.Field) *ProjectsLocationsDnsBindPermissionRevokeCall {
  3830  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3831  	return c
  3832  }
  3833  
  3834  // Context sets the context to be used in this call's Do method.
  3835  func (c *ProjectsLocationsDnsBindPermissionRevokeCall) Context(ctx context.Context) *ProjectsLocationsDnsBindPermissionRevokeCall {
  3836  	c.ctx_ = ctx
  3837  	return c
  3838  }
  3839  
  3840  // Header returns a http.Header that can be modified by the caller to add
  3841  // headers to the request.
  3842  func (c *ProjectsLocationsDnsBindPermissionRevokeCall) Header() http.Header {
  3843  	if c.header_ == nil {
  3844  		c.header_ = make(http.Header)
  3845  	}
  3846  	return c.header_
  3847  }
  3848  
  3849  func (c *ProjectsLocationsDnsBindPermissionRevokeCall) doRequest(alt string) (*http.Response, error) {
  3850  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3851  	var body io.Reader = nil
  3852  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.revokednsbindpermissionrequest)
  3853  	if err != nil {
  3854  		return nil, err
  3855  	}
  3856  	c.urlParams_.Set("alt", alt)
  3857  	c.urlParams_.Set("prettyPrint", "false")
  3858  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:revoke")
  3859  	urls += "?" + c.urlParams_.Encode()
  3860  	req, err := http.NewRequest("POST", urls, body)
  3861  	if err != nil {
  3862  		return nil, err
  3863  	}
  3864  	req.Header = reqHeaders
  3865  	googleapi.Expand(req.URL, map[string]string{
  3866  		"name": c.name,
  3867  	})
  3868  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3869  }
  3870  
  3871  // Do executes the "vmwareengine.projects.locations.dnsBindPermission.revoke" call.
  3872  // Any non-2xx status code is an error. Response headers are in either
  3873  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3874  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3875  // whether the returned error was because http.StatusNotModified was returned.
  3876  func (c *ProjectsLocationsDnsBindPermissionRevokeCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3877  	gensupport.SetOptions(c.urlParams_, opts...)
  3878  	res, err := c.doRequest("json")
  3879  	if res != nil && res.StatusCode == http.StatusNotModified {
  3880  		if res.Body != nil {
  3881  			res.Body.Close()
  3882  		}
  3883  		return nil, gensupport.WrapError(&googleapi.Error{
  3884  			Code:   res.StatusCode,
  3885  			Header: res.Header,
  3886  		})
  3887  	}
  3888  	if err != nil {
  3889  		return nil, err
  3890  	}
  3891  	defer googleapi.CloseBody(res)
  3892  	if err := googleapi.CheckResponse(res); err != nil {
  3893  		return nil, gensupport.WrapError(err)
  3894  	}
  3895  	ret := &Operation{
  3896  		ServerResponse: googleapi.ServerResponse{
  3897  			Header:         res.Header,
  3898  			HTTPStatusCode: res.StatusCode,
  3899  		},
  3900  	}
  3901  	target := &ret
  3902  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3903  		return nil, err
  3904  	}
  3905  	return ret, nil
  3906  }
  3907  
  3908  type ProjectsLocationsNetworkPeeringsCreateCall struct {
  3909  	s              *Service
  3910  	parent         string
  3911  	networkpeering *NetworkPeering
  3912  	urlParams_     gensupport.URLParams
  3913  	ctx_           context.Context
  3914  	header_        http.Header
  3915  }
  3916  
  3917  // Create: Creates a new network peering between the peer network and VMware
  3918  // Engine network provided in a `NetworkPeering` resource. NetworkPeering is a
  3919  // global resource and location can only be global.
  3920  //
  3921  //   - parent: The resource name of the location to create the new network
  3922  //     peering in. This value is always `global`, because `NetworkPeering` is a
  3923  //     global resource. Resource names are schemeless URIs that follow the
  3924  //     conventions in https://cloud.google.com/apis/design/resource_names. For
  3925  //     example: `projects/my-project/locations/global`.
  3926  func (r *ProjectsLocationsNetworkPeeringsService) Create(parent string, networkpeering *NetworkPeering) *ProjectsLocationsNetworkPeeringsCreateCall {
  3927  	c := &ProjectsLocationsNetworkPeeringsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3928  	c.parent = parent
  3929  	c.networkpeering = networkpeering
  3930  	return c
  3931  }
  3932  
  3933  // NetworkPeeringId sets the optional parameter "networkPeeringId": Required.
  3934  // The user-provided identifier of the new `NetworkPeering`. This identifier
  3935  // must be unique among `NetworkPeering` resources within the parent and
  3936  // becomes the final token in the name URI. The identifier must meet the
  3937  // following requirements: * Only contains 1-63 alphanumeric characters and
  3938  // hyphens * Begins with an alphabetical character * Ends with a non-hyphen
  3939  // character * Not formatted as a UUID * Complies with RFC 1034
  3940  // (https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
  3941  func (c *ProjectsLocationsNetworkPeeringsCreateCall) NetworkPeeringId(networkPeeringId string) *ProjectsLocationsNetworkPeeringsCreateCall {
  3942  	c.urlParams_.Set("networkPeeringId", networkPeeringId)
  3943  	return c
  3944  }
  3945  
  3946  // RequestId sets the optional parameter "requestId": A request ID to identify
  3947  // requests. Specify a unique request ID so that if you must retry your
  3948  // request, the server will know to ignore the request if it has already been
  3949  // completed. The server guarantees that a request doesn't result in creation
  3950  // of duplicate commitments for at least 60 minutes. For example, consider a
  3951  // situation where you make an initial request and the request times out. If
  3952  // you make the request again with the same request ID, the server can check if
  3953  // original operation with the same request ID was received, and if so, will
  3954  // ignore the second request. This prevents clients from accidentally creating
  3955  // duplicate commitments. The request ID must be a valid UUID with the
  3956  // exception that zero UUID is not supported
  3957  // (00000000-0000-0000-0000-000000000000).
  3958  func (c *ProjectsLocationsNetworkPeeringsCreateCall) RequestId(requestId string) *ProjectsLocationsNetworkPeeringsCreateCall {
  3959  	c.urlParams_.Set("requestId", requestId)
  3960  	return c
  3961  }
  3962  
  3963  // Fields allows partial responses to be retrieved. See
  3964  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3965  // details.
  3966  func (c *ProjectsLocationsNetworkPeeringsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsNetworkPeeringsCreateCall {
  3967  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3968  	return c
  3969  }
  3970  
  3971  // Context sets the context to be used in this call's Do method.
  3972  func (c *ProjectsLocationsNetworkPeeringsCreateCall) Context(ctx context.Context) *ProjectsLocationsNetworkPeeringsCreateCall {
  3973  	c.ctx_ = ctx
  3974  	return c
  3975  }
  3976  
  3977  // Header returns a http.Header that can be modified by the caller to add
  3978  // headers to the request.
  3979  func (c *ProjectsLocationsNetworkPeeringsCreateCall) Header() http.Header {
  3980  	if c.header_ == nil {
  3981  		c.header_ = make(http.Header)
  3982  	}
  3983  	return c.header_
  3984  }
  3985  
  3986  func (c *ProjectsLocationsNetworkPeeringsCreateCall) doRequest(alt string) (*http.Response, error) {
  3987  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3988  	var body io.Reader = nil
  3989  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.networkpeering)
  3990  	if err != nil {
  3991  		return nil, err
  3992  	}
  3993  	c.urlParams_.Set("alt", alt)
  3994  	c.urlParams_.Set("prettyPrint", "false")
  3995  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/networkPeerings")
  3996  	urls += "?" + c.urlParams_.Encode()
  3997  	req, err := http.NewRequest("POST", urls, body)
  3998  	if err != nil {
  3999  		return nil, err
  4000  	}
  4001  	req.Header = reqHeaders
  4002  	googleapi.Expand(req.URL, map[string]string{
  4003  		"parent": c.parent,
  4004  	})
  4005  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4006  }
  4007  
  4008  // Do executes the "vmwareengine.projects.locations.networkPeerings.create" call.
  4009  // Any non-2xx status code is an error. Response headers are in either
  4010  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  4011  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4012  // whether the returned error was because http.StatusNotModified was returned.
  4013  func (c *ProjectsLocationsNetworkPeeringsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  4014  	gensupport.SetOptions(c.urlParams_, opts...)
  4015  	res, err := c.doRequest("json")
  4016  	if res != nil && res.StatusCode == http.StatusNotModified {
  4017  		if res.Body != nil {
  4018  			res.Body.Close()
  4019  		}
  4020  		return nil, gensupport.WrapError(&googleapi.Error{
  4021  			Code:   res.StatusCode,
  4022  			Header: res.Header,
  4023  		})
  4024  	}
  4025  	if err != nil {
  4026  		return nil, err
  4027  	}
  4028  	defer googleapi.CloseBody(res)
  4029  	if err := googleapi.CheckResponse(res); err != nil {
  4030  		return nil, gensupport.WrapError(err)
  4031  	}
  4032  	ret := &Operation{
  4033  		ServerResponse: googleapi.ServerResponse{
  4034  			Header:         res.Header,
  4035  			HTTPStatusCode: res.StatusCode,
  4036  		},
  4037  	}
  4038  	target := &ret
  4039  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4040  		return nil, err
  4041  	}
  4042  	return ret, nil
  4043  }
  4044  
  4045  type ProjectsLocationsNetworkPeeringsDeleteCall struct {
  4046  	s          *Service
  4047  	name       string
  4048  	urlParams_ gensupport.URLParams
  4049  	ctx_       context.Context
  4050  	header_    http.Header
  4051  }
  4052  
  4053  // Delete: Deletes a `NetworkPeering` resource. When a network peering is
  4054  // deleted for a VMware Engine network, the peer network becomes inaccessible
  4055  // to that VMware Engine network. NetworkPeering is a global resource and
  4056  // location can only be global.
  4057  //
  4058  //   - name: The resource name of the network peering to be deleted. Resource
  4059  //     names are schemeless URIs that follow the conventions in
  4060  //     https://cloud.google.com/apis/design/resource_names. For example:
  4061  //     `projects/my-project/locations/global/networkPeerings/my-peering`.
  4062  func (r *ProjectsLocationsNetworkPeeringsService) Delete(name string) *ProjectsLocationsNetworkPeeringsDeleteCall {
  4063  	c := &ProjectsLocationsNetworkPeeringsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4064  	c.name = name
  4065  	return c
  4066  }
  4067  
  4068  // RequestId sets the optional parameter "requestId": A request ID to identify
  4069  // requests. Specify a unique request ID so that if you must retry your
  4070  // request, the server will know to ignore the request if it has already been
  4071  // completed. The server guarantees that a request doesn't result in creation
  4072  // of duplicate commitments for at least 60 minutes. For example, consider a
  4073  // situation where you make an initial request and the request times out. If
  4074  // you make the request again with the same request ID, the server can check if
  4075  // original operation with the same request ID was received, and if so, will
  4076  // ignore the second request. This prevents clients from accidentally creating
  4077  // duplicate commitments. The request ID must be a valid UUID with the
  4078  // exception that zero UUID is not supported
  4079  // (00000000-0000-0000-0000-000000000000).
  4080  func (c *ProjectsLocationsNetworkPeeringsDeleteCall) RequestId(requestId string) *ProjectsLocationsNetworkPeeringsDeleteCall {
  4081  	c.urlParams_.Set("requestId", requestId)
  4082  	return c
  4083  }
  4084  
  4085  // Fields allows partial responses to be retrieved. See
  4086  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4087  // details.
  4088  func (c *ProjectsLocationsNetworkPeeringsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsNetworkPeeringsDeleteCall {
  4089  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4090  	return c
  4091  }
  4092  
  4093  // Context sets the context to be used in this call's Do method.
  4094  func (c *ProjectsLocationsNetworkPeeringsDeleteCall) Context(ctx context.Context) *ProjectsLocationsNetworkPeeringsDeleteCall {
  4095  	c.ctx_ = ctx
  4096  	return c
  4097  }
  4098  
  4099  // Header returns a http.Header that can be modified by the caller to add
  4100  // headers to the request.
  4101  func (c *ProjectsLocationsNetworkPeeringsDeleteCall) Header() http.Header {
  4102  	if c.header_ == nil {
  4103  		c.header_ = make(http.Header)
  4104  	}
  4105  	return c.header_
  4106  }
  4107  
  4108  func (c *ProjectsLocationsNetworkPeeringsDeleteCall) doRequest(alt string) (*http.Response, error) {
  4109  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4110  	var body io.Reader = nil
  4111  	c.urlParams_.Set("alt", alt)
  4112  	c.urlParams_.Set("prettyPrint", "false")
  4113  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  4114  	urls += "?" + c.urlParams_.Encode()
  4115  	req, err := http.NewRequest("DELETE", urls, body)
  4116  	if err != nil {
  4117  		return nil, err
  4118  	}
  4119  	req.Header = reqHeaders
  4120  	googleapi.Expand(req.URL, map[string]string{
  4121  		"name": c.name,
  4122  	})
  4123  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4124  }
  4125  
  4126  // Do executes the "vmwareengine.projects.locations.networkPeerings.delete" call.
  4127  // Any non-2xx status code is an error. Response headers are in either
  4128  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  4129  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4130  // whether the returned error was because http.StatusNotModified was returned.
  4131  func (c *ProjectsLocationsNetworkPeeringsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  4132  	gensupport.SetOptions(c.urlParams_, opts...)
  4133  	res, err := c.doRequest("json")
  4134  	if res != nil && res.StatusCode == http.StatusNotModified {
  4135  		if res.Body != nil {
  4136  			res.Body.Close()
  4137  		}
  4138  		return nil, gensupport.WrapError(&googleapi.Error{
  4139  			Code:   res.StatusCode,
  4140  			Header: res.Header,
  4141  		})
  4142  	}
  4143  	if err != nil {
  4144  		return nil, err
  4145  	}
  4146  	defer googleapi.CloseBody(res)
  4147  	if err := googleapi.CheckResponse(res); err != nil {
  4148  		return nil, gensupport.WrapError(err)
  4149  	}
  4150  	ret := &Operation{
  4151  		ServerResponse: googleapi.ServerResponse{
  4152  			Header:         res.Header,
  4153  			HTTPStatusCode: res.StatusCode,
  4154  		},
  4155  	}
  4156  	target := &ret
  4157  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4158  		return nil, err
  4159  	}
  4160  	return ret, nil
  4161  }
  4162  
  4163  type ProjectsLocationsNetworkPeeringsGetCall struct {
  4164  	s            *Service
  4165  	name         string
  4166  	urlParams_   gensupport.URLParams
  4167  	ifNoneMatch_ string
  4168  	ctx_         context.Context
  4169  	header_      http.Header
  4170  }
  4171  
  4172  // Get: Retrieves a `NetworkPeering` resource by its resource name. The
  4173  // resource contains details of the network peering, such as peered networks,
  4174  // import and export custom route configurations, and peering state.
  4175  // NetworkPeering is a global resource and location can only be global.
  4176  //
  4177  //   - name: The resource name of the network peering to retrieve. Resource names
  4178  //     are schemeless URIs that follow the conventions in
  4179  //     https://cloud.google.com/apis/design/resource_names. For example:
  4180  //     `projects/my-project/locations/global/networkPeerings/my-peering`.
  4181  func (r *ProjectsLocationsNetworkPeeringsService) Get(name string) *ProjectsLocationsNetworkPeeringsGetCall {
  4182  	c := &ProjectsLocationsNetworkPeeringsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4183  	c.name = name
  4184  	return c
  4185  }
  4186  
  4187  // Fields allows partial responses to be retrieved. See
  4188  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4189  // details.
  4190  func (c *ProjectsLocationsNetworkPeeringsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsNetworkPeeringsGetCall {
  4191  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4192  	return c
  4193  }
  4194  
  4195  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  4196  // object's ETag matches the given value. This is useful for getting updates
  4197  // only after the object has changed since the last request.
  4198  func (c *ProjectsLocationsNetworkPeeringsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsNetworkPeeringsGetCall {
  4199  	c.ifNoneMatch_ = entityTag
  4200  	return c
  4201  }
  4202  
  4203  // Context sets the context to be used in this call's Do method.
  4204  func (c *ProjectsLocationsNetworkPeeringsGetCall) Context(ctx context.Context) *ProjectsLocationsNetworkPeeringsGetCall {
  4205  	c.ctx_ = ctx
  4206  	return c
  4207  }
  4208  
  4209  // Header returns a http.Header that can be modified by the caller to add
  4210  // headers to the request.
  4211  func (c *ProjectsLocationsNetworkPeeringsGetCall) Header() http.Header {
  4212  	if c.header_ == nil {
  4213  		c.header_ = make(http.Header)
  4214  	}
  4215  	return c.header_
  4216  }
  4217  
  4218  func (c *ProjectsLocationsNetworkPeeringsGetCall) doRequest(alt string) (*http.Response, error) {
  4219  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4220  	if c.ifNoneMatch_ != "" {
  4221  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4222  	}
  4223  	var body io.Reader = nil
  4224  	c.urlParams_.Set("alt", alt)
  4225  	c.urlParams_.Set("prettyPrint", "false")
  4226  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  4227  	urls += "?" + c.urlParams_.Encode()
  4228  	req, err := http.NewRequest("GET", urls, body)
  4229  	if err != nil {
  4230  		return nil, err
  4231  	}
  4232  	req.Header = reqHeaders
  4233  	googleapi.Expand(req.URL, map[string]string{
  4234  		"name": c.name,
  4235  	})
  4236  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4237  }
  4238  
  4239  // Do executes the "vmwareengine.projects.locations.networkPeerings.get" call.
  4240  // Any non-2xx status code is an error. Response headers are in either
  4241  // *NetworkPeering.ServerResponse.Header or (if a response was returned at all)
  4242  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4243  // whether the returned error was because http.StatusNotModified was returned.
  4244  func (c *ProjectsLocationsNetworkPeeringsGetCall) Do(opts ...googleapi.CallOption) (*NetworkPeering, error) {
  4245  	gensupport.SetOptions(c.urlParams_, opts...)
  4246  	res, err := c.doRequest("json")
  4247  	if res != nil && res.StatusCode == http.StatusNotModified {
  4248  		if res.Body != nil {
  4249  			res.Body.Close()
  4250  		}
  4251  		return nil, gensupport.WrapError(&googleapi.Error{
  4252  			Code:   res.StatusCode,
  4253  			Header: res.Header,
  4254  		})
  4255  	}
  4256  	if err != nil {
  4257  		return nil, err
  4258  	}
  4259  	defer googleapi.CloseBody(res)
  4260  	if err := googleapi.CheckResponse(res); err != nil {
  4261  		return nil, gensupport.WrapError(err)
  4262  	}
  4263  	ret := &NetworkPeering{
  4264  		ServerResponse: googleapi.ServerResponse{
  4265  			Header:         res.Header,
  4266  			HTTPStatusCode: res.StatusCode,
  4267  		},
  4268  	}
  4269  	target := &ret
  4270  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4271  		return nil, err
  4272  	}
  4273  	return ret, nil
  4274  }
  4275  
  4276  type ProjectsLocationsNetworkPeeringsListCall struct {
  4277  	s            *Service
  4278  	parent       string
  4279  	urlParams_   gensupport.URLParams
  4280  	ifNoneMatch_ string
  4281  	ctx_         context.Context
  4282  	header_      http.Header
  4283  }
  4284  
  4285  // List: Lists `NetworkPeering` resources in a given project. NetworkPeering is
  4286  // a global resource and location can only be global.
  4287  //
  4288  //   - parent: The resource name of the location (global) to query for network
  4289  //     peerings. Resource names are schemeless URIs that follow the conventions
  4290  //     in https://cloud.google.com/apis/design/resource_names. For example:
  4291  //     `projects/my-project/locations/global`.
  4292  func (r *ProjectsLocationsNetworkPeeringsService) List(parent string) *ProjectsLocationsNetworkPeeringsListCall {
  4293  	c := &ProjectsLocationsNetworkPeeringsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4294  	c.parent = parent
  4295  	return c
  4296  }
  4297  
  4298  // Filter sets the optional parameter "filter": A filter expression that
  4299  // matches resources returned in the response. The expression must specify the
  4300  // field name, a comparison operator, and the value that you want to use for
  4301  // filtering. The value must be a string, a number, or a boolean. The
  4302  // comparison operator must be `=`, `!=`, `>`, or `<`. For example, if you are
  4303  // filtering a list of network peerings, you can exclude the ones named
  4304  // `example-peering` by specifying `name != "example-peering". To filter on
  4305  // multiple expressions, provide each separate expression within parentheses.
  4306  // For example: ``` (name = "example-peering") (createTime >
  4307  // "2021-04-12T08:15:10.40Z") ``` By default, each expression is an `AND`
  4308  // expression. However, you can include `AND` and `OR` expressions explicitly.
  4309  // For example: ``` (name = "example-peering-1") AND (createTime >
  4310  // "2021-04-12T08:15:10.40Z") OR (name = "example-peering-2") ```
  4311  func (c *ProjectsLocationsNetworkPeeringsListCall) Filter(filter string) *ProjectsLocationsNetworkPeeringsListCall {
  4312  	c.urlParams_.Set("filter", filter)
  4313  	return c
  4314  }
  4315  
  4316  // OrderBy sets the optional parameter "orderBy": Sorts list results by a
  4317  // certain order. By default, returned results are ordered by `name` in
  4318  // ascending order. You can also sort results in descending order based on the
  4319  // `name` value using `orderBy="name desc". Currently, only ordering by `name`
  4320  // is supported.
  4321  func (c *ProjectsLocationsNetworkPeeringsListCall) OrderBy(orderBy string) *ProjectsLocationsNetworkPeeringsListCall {
  4322  	c.urlParams_.Set("orderBy", orderBy)
  4323  	return c
  4324  }
  4325  
  4326  // PageSize sets the optional parameter "pageSize": The maximum number of
  4327  // network peerings to return in one page. The maximum value is coerced to
  4328  // 1000. The default value of this field is 500.
  4329  func (c *ProjectsLocationsNetworkPeeringsListCall) PageSize(pageSize int64) *ProjectsLocationsNetworkPeeringsListCall {
  4330  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  4331  	return c
  4332  }
  4333  
  4334  // PageToken sets the optional parameter "pageToken": A page token, received
  4335  // from a previous `ListNetworkPeerings` call. Provide this to retrieve the
  4336  // subsequent page. When paginating, all other parameters provided to
  4337  // `ListNetworkPeerings` must match the call that provided the page token.
  4338  func (c *ProjectsLocationsNetworkPeeringsListCall) PageToken(pageToken string) *ProjectsLocationsNetworkPeeringsListCall {
  4339  	c.urlParams_.Set("pageToken", pageToken)
  4340  	return c
  4341  }
  4342  
  4343  // Fields allows partial responses to be retrieved. See
  4344  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4345  // details.
  4346  func (c *ProjectsLocationsNetworkPeeringsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsNetworkPeeringsListCall {
  4347  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4348  	return c
  4349  }
  4350  
  4351  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  4352  // object's ETag matches the given value. This is useful for getting updates
  4353  // only after the object has changed since the last request.
  4354  func (c *ProjectsLocationsNetworkPeeringsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsNetworkPeeringsListCall {
  4355  	c.ifNoneMatch_ = entityTag
  4356  	return c
  4357  }
  4358  
  4359  // Context sets the context to be used in this call's Do method.
  4360  func (c *ProjectsLocationsNetworkPeeringsListCall) Context(ctx context.Context) *ProjectsLocationsNetworkPeeringsListCall {
  4361  	c.ctx_ = ctx
  4362  	return c
  4363  }
  4364  
  4365  // Header returns a http.Header that can be modified by the caller to add
  4366  // headers to the request.
  4367  func (c *ProjectsLocationsNetworkPeeringsListCall) Header() http.Header {
  4368  	if c.header_ == nil {
  4369  		c.header_ = make(http.Header)
  4370  	}
  4371  	return c.header_
  4372  }
  4373  
  4374  func (c *ProjectsLocationsNetworkPeeringsListCall) doRequest(alt string) (*http.Response, error) {
  4375  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4376  	if c.ifNoneMatch_ != "" {
  4377  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4378  	}
  4379  	var body io.Reader = nil
  4380  	c.urlParams_.Set("alt", alt)
  4381  	c.urlParams_.Set("prettyPrint", "false")
  4382  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/networkPeerings")
  4383  	urls += "?" + c.urlParams_.Encode()
  4384  	req, err := http.NewRequest("GET", urls, body)
  4385  	if err != nil {
  4386  		return nil, err
  4387  	}
  4388  	req.Header = reqHeaders
  4389  	googleapi.Expand(req.URL, map[string]string{
  4390  		"parent": c.parent,
  4391  	})
  4392  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4393  }
  4394  
  4395  // Do executes the "vmwareengine.projects.locations.networkPeerings.list" call.
  4396  // Any non-2xx status code is an error. Response headers are in either
  4397  // *ListNetworkPeeringsResponse.ServerResponse.Header or (if a response was
  4398  // returned at all) in error.(*googleapi.Error).Header. Use
  4399  // googleapi.IsNotModified to check whether the returned error was because
  4400  // http.StatusNotModified was returned.
  4401  func (c *ProjectsLocationsNetworkPeeringsListCall) Do(opts ...googleapi.CallOption) (*ListNetworkPeeringsResponse, error) {
  4402  	gensupport.SetOptions(c.urlParams_, opts...)
  4403  	res, err := c.doRequest("json")
  4404  	if res != nil && res.StatusCode == http.StatusNotModified {
  4405  		if res.Body != nil {
  4406  			res.Body.Close()
  4407  		}
  4408  		return nil, gensupport.WrapError(&googleapi.Error{
  4409  			Code:   res.StatusCode,
  4410  			Header: res.Header,
  4411  		})
  4412  	}
  4413  	if err != nil {
  4414  		return nil, err
  4415  	}
  4416  	defer googleapi.CloseBody(res)
  4417  	if err := googleapi.CheckResponse(res); err != nil {
  4418  		return nil, gensupport.WrapError(err)
  4419  	}
  4420  	ret := &ListNetworkPeeringsResponse{
  4421  		ServerResponse: googleapi.ServerResponse{
  4422  			Header:         res.Header,
  4423  			HTTPStatusCode: res.StatusCode,
  4424  		},
  4425  	}
  4426  	target := &ret
  4427  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4428  		return nil, err
  4429  	}
  4430  	return ret, nil
  4431  }
  4432  
  4433  // Pages invokes f for each page of results.
  4434  // A non-nil error returned from f will halt the iteration.
  4435  // The provided context supersedes any context provided to the Context method.
  4436  func (c *ProjectsLocationsNetworkPeeringsListCall) Pages(ctx context.Context, f func(*ListNetworkPeeringsResponse) error) error {
  4437  	c.ctx_ = ctx
  4438  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  4439  	for {
  4440  		x, err := c.Do()
  4441  		if err != nil {
  4442  			return err
  4443  		}
  4444  		if err := f(x); err != nil {
  4445  			return err
  4446  		}
  4447  		if x.NextPageToken == "" {
  4448  			return nil
  4449  		}
  4450  		c.PageToken(x.NextPageToken)
  4451  	}
  4452  }
  4453  
  4454  type ProjectsLocationsNetworkPeeringsPatchCall struct {
  4455  	s              *Service
  4456  	name           string
  4457  	networkpeering *NetworkPeering
  4458  	urlParams_     gensupport.URLParams
  4459  	ctx_           context.Context
  4460  	header_        http.Header
  4461  }
  4462  
  4463  // Patch: Modifies a `NetworkPeering` resource. Only the `description` field
  4464  // can be updated. Only fields specified in `updateMask` are applied.
  4465  // NetworkPeering is a global resource and location can only be global.
  4466  //
  4467  //   - name: Output only. The resource name of the network peering.
  4468  //     NetworkPeering is a global resource and location can only be global.
  4469  //     Resource names are scheme-less URIs that follow the conventions in
  4470  //     https://cloud.google.com/apis/design/resource_names. For example:
  4471  //     `projects/my-project/locations/global/networkPeerings/my-peering`.
  4472  func (r *ProjectsLocationsNetworkPeeringsService) Patch(name string, networkpeering *NetworkPeering) *ProjectsLocationsNetworkPeeringsPatchCall {
  4473  	c := &ProjectsLocationsNetworkPeeringsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4474  	c.name = name
  4475  	c.networkpeering = networkpeering
  4476  	return c
  4477  }
  4478  
  4479  // RequestId sets the optional parameter "requestId": A request ID to identify
  4480  // requests. Specify a unique request ID so that if you must retry your
  4481  // request, the server will know to ignore the request if it has already been
  4482  // completed. The server guarantees that a request doesn't result in creation
  4483  // of duplicate commitments for at least 60 minutes. For example, consider a
  4484  // situation where you make an initial request and the request times out. If
  4485  // you make the request again with the same request ID, the server can check if
  4486  // original operation with the same request ID was received, and if so, will
  4487  // ignore the second request. This prevents clients from accidentally creating
  4488  // duplicate commitments. The request ID must be a valid UUID with the
  4489  // exception that zero UUID is not supported
  4490  // (00000000-0000-0000-0000-000000000000).
  4491  func (c *ProjectsLocationsNetworkPeeringsPatchCall) RequestId(requestId string) *ProjectsLocationsNetworkPeeringsPatchCall {
  4492  	c.urlParams_.Set("requestId", requestId)
  4493  	return c
  4494  }
  4495  
  4496  // UpdateMask sets the optional parameter "updateMask": Required. Field mask is
  4497  // used to specify the fields to be overwritten in the `NetworkPeering`
  4498  // resource by the update. The fields specified in the `update_mask` are
  4499  // relative to the resource, not the full request. A field will be overwritten
  4500  // if it is in the mask. If the user does not provide a mask then all fields
  4501  // will be overwritten.
  4502  func (c *ProjectsLocationsNetworkPeeringsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsNetworkPeeringsPatchCall {
  4503  	c.urlParams_.Set("updateMask", updateMask)
  4504  	return c
  4505  }
  4506  
  4507  // Fields allows partial responses to be retrieved. See
  4508  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4509  // details.
  4510  func (c *ProjectsLocationsNetworkPeeringsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsNetworkPeeringsPatchCall {
  4511  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4512  	return c
  4513  }
  4514  
  4515  // Context sets the context to be used in this call's Do method.
  4516  func (c *ProjectsLocationsNetworkPeeringsPatchCall) Context(ctx context.Context) *ProjectsLocationsNetworkPeeringsPatchCall {
  4517  	c.ctx_ = ctx
  4518  	return c
  4519  }
  4520  
  4521  // Header returns a http.Header that can be modified by the caller to add
  4522  // headers to the request.
  4523  func (c *ProjectsLocationsNetworkPeeringsPatchCall) Header() http.Header {
  4524  	if c.header_ == nil {
  4525  		c.header_ = make(http.Header)
  4526  	}
  4527  	return c.header_
  4528  }
  4529  
  4530  func (c *ProjectsLocationsNetworkPeeringsPatchCall) doRequest(alt string) (*http.Response, error) {
  4531  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4532  	var body io.Reader = nil
  4533  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.networkpeering)
  4534  	if err != nil {
  4535  		return nil, err
  4536  	}
  4537  	c.urlParams_.Set("alt", alt)
  4538  	c.urlParams_.Set("prettyPrint", "false")
  4539  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  4540  	urls += "?" + c.urlParams_.Encode()
  4541  	req, err := http.NewRequest("PATCH", urls, body)
  4542  	if err != nil {
  4543  		return nil, err
  4544  	}
  4545  	req.Header = reqHeaders
  4546  	googleapi.Expand(req.URL, map[string]string{
  4547  		"name": c.name,
  4548  	})
  4549  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4550  }
  4551  
  4552  // Do executes the "vmwareengine.projects.locations.networkPeerings.patch" call.
  4553  // Any non-2xx status code is an error. Response headers are in either
  4554  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  4555  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4556  // whether the returned error was because http.StatusNotModified was returned.
  4557  func (c *ProjectsLocationsNetworkPeeringsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  4558  	gensupport.SetOptions(c.urlParams_, opts...)
  4559  	res, err := c.doRequest("json")
  4560  	if res != nil && res.StatusCode == http.StatusNotModified {
  4561  		if res.Body != nil {
  4562  			res.Body.Close()
  4563  		}
  4564  		return nil, gensupport.WrapError(&googleapi.Error{
  4565  			Code:   res.StatusCode,
  4566  			Header: res.Header,
  4567  		})
  4568  	}
  4569  	if err != nil {
  4570  		return nil, err
  4571  	}
  4572  	defer googleapi.CloseBody(res)
  4573  	if err := googleapi.CheckResponse(res); err != nil {
  4574  		return nil, gensupport.WrapError(err)
  4575  	}
  4576  	ret := &Operation{
  4577  		ServerResponse: googleapi.ServerResponse{
  4578  			Header:         res.Header,
  4579  			HTTPStatusCode: res.StatusCode,
  4580  		},
  4581  	}
  4582  	target := &ret
  4583  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4584  		return nil, err
  4585  	}
  4586  	return ret, nil
  4587  }
  4588  
  4589  type ProjectsLocationsNetworkPeeringsPeeringRoutesListCall struct {
  4590  	s            *Service
  4591  	parent       string
  4592  	urlParams_   gensupport.URLParams
  4593  	ifNoneMatch_ string
  4594  	ctx_         context.Context
  4595  	header_      http.Header
  4596  }
  4597  
  4598  // List: Lists the network peering routes exchanged over a peering connection.
  4599  // NetworkPeering is a global resource and location can only be global.
  4600  //
  4601  //   - parent: The resource name of the network peering to retrieve peering
  4602  //     routes from. Resource names are schemeless URIs that follow the
  4603  //     conventions in https://cloud.google.com/apis/design/resource_names. For
  4604  //     example: `projects/my-project/locations/global/networkPeerings/my-peering`.
  4605  func (r *ProjectsLocationsNetworkPeeringsPeeringRoutesService) List(parent string) *ProjectsLocationsNetworkPeeringsPeeringRoutesListCall {
  4606  	c := &ProjectsLocationsNetworkPeeringsPeeringRoutesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4607  	c.parent = parent
  4608  	return c
  4609  }
  4610  
  4611  // Filter sets the optional parameter "filter": A filter expression that
  4612  // matches resources returned in the response. Currently, only filtering on the
  4613  // `direction` field is supported. To return routes imported from the peer
  4614  // network, provide "direction=INCOMING". To return routes exported from the
  4615  // VMware Engine network, provide "direction=OUTGOING". Other filter
  4616  // expressions return an error.
  4617  func (c *ProjectsLocationsNetworkPeeringsPeeringRoutesListCall) Filter(filter string) *ProjectsLocationsNetworkPeeringsPeeringRoutesListCall {
  4618  	c.urlParams_.Set("filter", filter)
  4619  	return c
  4620  }
  4621  
  4622  // PageSize sets the optional parameter "pageSize": The maximum number of
  4623  // peering routes to return in one page. The service may return fewer than this
  4624  // value. The maximum value is coerced to 1000. The default value of this field
  4625  // is 500.
  4626  func (c *ProjectsLocationsNetworkPeeringsPeeringRoutesListCall) PageSize(pageSize int64) *ProjectsLocationsNetworkPeeringsPeeringRoutesListCall {
  4627  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  4628  	return c
  4629  }
  4630  
  4631  // PageToken sets the optional parameter "pageToken": A page token, received
  4632  // from a previous `ListPeeringRoutes` call. Provide this to retrieve the
  4633  // subsequent page. When paginating, all other parameters provided to
  4634  // `ListPeeringRoutes` must match the call that provided the page token.
  4635  func (c *ProjectsLocationsNetworkPeeringsPeeringRoutesListCall) PageToken(pageToken string) *ProjectsLocationsNetworkPeeringsPeeringRoutesListCall {
  4636  	c.urlParams_.Set("pageToken", pageToken)
  4637  	return c
  4638  }
  4639  
  4640  // Fields allows partial responses to be retrieved. See
  4641  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4642  // details.
  4643  func (c *ProjectsLocationsNetworkPeeringsPeeringRoutesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsNetworkPeeringsPeeringRoutesListCall {
  4644  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4645  	return c
  4646  }
  4647  
  4648  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  4649  // object's ETag matches the given value. This is useful for getting updates
  4650  // only after the object has changed since the last request.
  4651  func (c *ProjectsLocationsNetworkPeeringsPeeringRoutesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsNetworkPeeringsPeeringRoutesListCall {
  4652  	c.ifNoneMatch_ = entityTag
  4653  	return c
  4654  }
  4655  
  4656  // Context sets the context to be used in this call's Do method.
  4657  func (c *ProjectsLocationsNetworkPeeringsPeeringRoutesListCall) Context(ctx context.Context) *ProjectsLocationsNetworkPeeringsPeeringRoutesListCall {
  4658  	c.ctx_ = ctx
  4659  	return c
  4660  }
  4661  
  4662  // Header returns a http.Header that can be modified by the caller to add
  4663  // headers to the request.
  4664  func (c *ProjectsLocationsNetworkPeeringsPeeringRoutesListCall) Header() http.Header {
  4665  	if c.header_ == nil {
  4666  		c.header_ = make(http.Header)
  4667  	}
  4668  	return c.header_
  4669  }
  4670  
  4671  func (c *ProjectsLocationsNetworkPeeringsPeeringRoutesListCall) doRequest(alt string) (*http.Response, error) {
  4672  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4673  	if c.ifNoneMatch_ != "" {
  4674  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4675  	}
  4676  	var body io.Reader = nil
  4677  	c.urlParams_.Set("alt", alt)
  4678  	c.urlParams_.Set("prettyPrint", "false")
  4679  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/peeringRoutes")
  4680  	urls += "?" + c.urlParams_.Encode()
  4681  	req, err := http.NewRequest("GET", urls, body)
  4682  	if err != nil {
  4683  		return nil, err
  4684  	}
  4685  	req.Header = reqHeaders
  4686  	googleapi.Expand(req.URL, map[string]string{
  4687  		"parent": c.parent,
  4688  	})
  4689  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4690  }
  4691  
  4692  // Do executes the "vmwareengine.projects.locations.networkPeerings.peeringRoutes.list" call.
  4693  // Any non-2xx status code is an error. Response headers are in either
  4694  // *ListPeeringRoutesResponse.ServerResponse.Header or (if a response was
  4695  // returned at all) in error.(*googleapi.Error).Header. Use
  4696  // googleapi.IsNotModified to check whether the returned error was because
  4697  // http.StatusNotModified was returned.
  4698  func (c *ProjectsLocationsNetworkPeeringsPeeringRoutesListCall) Do(opts ...googleapi.CallOption) (*ListPeeringRoutesResponse, error) {
  4699  	gensupport.SetOptions(c.urlParams_, opts...)
  4700  	res, err := c.doRequest("json")
  4701  	if res != nil && res.StatusCode == http.StatusNotModified {
  4702  		if res.Body != nil {
  4703  			res.Body.Close()
  4704  		}
  4705  		return nil, gensupport.WrapError(&googleapi.Error{
  4706  			Code:   res.StatusCode,
  4707  			Header: res.Header,
  4708  		})
  4709  	}
  4710  	if err != nil {
  4711  		return nil, err
  4712  	}
  4713  	defer googleapi.CloseBody(res)
  4714  	if err := googleapi.CheckResponse(res); err != nil {
  4715  		return nil, gensupport.WrapError(err)
  4716  	}
  4717  	ret := &ListPeeringRoutesResponse{
  4718  		ServerResponse: googleapi.ServerResponse{
  4719  			Header:         res.Header,
  4720  			HTTPStatusCode: res.StatusCode,
  4721  		},
  4722  	}
  4723  	target := &ret
  4724  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4725  		return nil, err
  4726  	}
  4727  	return ret, nil
  4728  }
  4729  
  4730  // Pages invokes f for each page of results.
  4731  // A non-nil error returned from f will halt the iteration.
  4732  // The provided context supersedes any context provided to the Context method.
  4733  func (c *ProjectsLocationsNetworkPeeringsPeeringRoutesListCall) Pages(ctx context.Context, f func(*ListPeeringRoutesResponse) error) error {
  4734  	c.ctx_ = ctx
  4735  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  4736  	for {
  4737  		x, err := c.Do()
  4738  		if err != nil {
  4739  			return err
  4740  		}
  4741  		if err := f(x); err != nil {
  4742  			return err
  4743  		}
  4744  		if x.NextPageToken == "" {
  4745  			return nil
  4746  		}
  4747  		c.PageToken(x.NextPageToken)
  4748  	}
  4749  }
  4750  
  4751  type ProjectsLocationsNetworkPoliciesCreateCall struct {
  4752  	s             *Service
  4753  	parent        string
  4754  	networkpolicy *NetworkPolicy
  4755  	urlParams_    gensupport.URLParams
  4756  	ctx_          context.Context
  4757  	header_       http.Header
  4758  }
  4759  
  4760  // Create: Creates a new network policy in a given VMware Engine network of a
  4761  // project and location (region). A new network policy cannot be created if
  4762  // another network policy already exists in the same scope.
  4763  //
  4764  //   - parent: The resource name of the location (region) to create the new
  4765  //     network policy in. Resource names are schemeless URIs that follow the
  4766  //     conventions in https://cloud.google.com/apis/design/resource_names. For
  4767  //     example: `projects/my-project/locations/us-central1`.
  4768  func (r *ProjectsLocationsNetworkPoliciesService) Create(parent string, networkpolicy *NetworkPolicy) *ProjectsLocationsNetworkPoliciesCreateCall {
  4769  	c := &ProjectsLocationsNetworkPoliciesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4770  	c.parent = parent
  4771  	c.networkpolicy = networkpolicy
  4772  	return c
  4773  }
  4774  
  4775  // NetworkPolicyId sets the optional parameter "networkPolicyId": Required. The
  4776  // user-provided identifier of the network policy to be created. This
  4777  // identifier must be unique within parent
  4778  // `projects/{my-project}/locations/{us-central1}/networkPolicies` and becomes
  4779  // the final token in the name URI. The identifier must meet the following
  4780  // requirements: * Only contains 1-63 alphanumeric characters and hyphens *
  4781  // Begins with an alphabetical character * Ends with a non-hyphen character *
  4782  // Not formatted as a UUID * Complies with RFC 1034
  4783  // (https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
  4784  func (c *ProjectsLocationsNetworkPoliciesCreateCall) NetworkPolicyId(networkPolicyId string) *ProjectsLocationsNetworkPoliciesCreateCall {
  4785  	c.urlParams_.Set("networkPolicyId", networkPolicyId)
  4786  	return c
  4787  }
  4788  
  4789  // RequestId sets the optional parameter "requestId": A request ID to identify
  4790  // requests. Specify a unique request ID so that if you must retry your
  4791  // request, the server will know to ignore the request if it has already been
  4792  // completed. The server guarantees that a request doesn't result in creation
  4793  // of duplicate commitments for at least 60 minutes. For example, consider a
  4794  // situation where you make an initial request and the request times out. If
  4795  // you make the request again with the same request ID, the server can check if
  4796  // original operation with the same request ID was received, and if so, will
  4797  // ignore the second request. This prevents clients from accidentally creating
  4798  // duplicate commitments. The request ID must be a valid UUID with the
  4799  // exception that zero UUID is not supported
  4800  // (00000000-0000-0000-0000-000000000000).
  4801  func (c *ProjectsLocationsNetworkPoliciesCreateCall) RequestId(requestId string) *ProjectsLocationsNetworkPoliciesCreateCall {
  4802  	c.urlParams_.Set("requestId", requestId)
  4803  	return c
  4804  }
  4805  
  4806  // Fields allows partial responses to be retrieved. See
  4807  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4808  // details.
  4809  func (c *ProjectsLocationsNetworkPoliciesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsNetworkPoliciesCreateCall {
  4810  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4811  	return c
  4812  }
  4813  
  4814  // Context sets the context to be used in this call's Do method.
  4815  func (c *ProjectsLocationsNetworkPoliciesCreateCall) Context(ctx context.Context) *ProjectsLocationsNetworkPoliciesCreateCall {
  4816  	c.ctx_ = ctx
  4817  	return c
  4818  }
  4819  
  4820  // Header returns a http.Header that can be modified by the caller to add
  4821  // headers to the request.
  4822  func (c *ProjectsLocationsNetworkPoliciesCreateCall) Header() http.Header {
  4823  	if c.header_ == nil {
  4824  		c.header_ = make(http.Header)
  4825  	}
  4826  	return c.header_
  4827  }
  4828  
  4829  func (c *ProjectsLocationsNetworkPoliciesCreateCall) doRequest(alt string) (*http.Response, error) {
  4830  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  4831  	var body io.Reader = nil
  4832  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.networkpolicy)
  4833  	if err != nil {
  4834  		return nil, err
  4835  	}
  4836  	c.urlParams_.Set("alt", alt)
  4837  	c.urlParams_.Set("prettyPrint", "false")
  4838  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/networkPolicies")
  4839  	urls += "?" + c.urlParams_.Encode()
  4840  	req, err := http.NewRequest("POST", urls, body)
  4841  	if err != nil {
  4842  		return nil, err
  4843  	}
  4844  	req.Header = reqHeaders
  4845  	googleapi.Expand(req.URL, map[string]string{
  4846  		"parent": c.parent,
  4847  	})
  4848  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4849  }
  4850  
  4851  // Do executes the "vmwareengine.projects.locations.networkPolicies.create" call.
  4852  // Any non-2xx status code is an error. Response headers are in either
  4853  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  4854  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4855  // whether the returned error was because http.StatusNotModified was returned.
  4856  func (c *ProjectsLocationsNetworkPoliciesCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  4857  	gensupport.SetOptions(c.urlParams_, opts...)
  4858  	res, err := c.doRequest("json")
  4859  	if res != nil && res.StatusCode == http.StatusNotModified {
  4860  		if res.Body != nil {
  4861  			res.Body.Close()
  4862  		}
  4863  		return nil, gensupport.WrapError(&googleapi.Error{
  4864  			Code:   res.StatusCode,
  4865  			Header: res.Header,
  4866  		})
  4867  	}
  4868  	if err != nil {
  4869  		return nil, err
  4870  	}
  4871  	defer googleapi.CloseBody(res)
  4872  	if err := googleapi.CheckResponse(res); err != nil {
  4873  		return nil, gensupport.WrapError(err)
  4874  	}
  4875  	ret := &Operation{
  4876  		ServerResponse: googleapi.ServerResponse{
  4877  			Header:         res.Header,
  4878  			HTTPStatusCode: res.StatusCode,
  4879  		},
  4880  	}
  4881  	target := &ret
  4882  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4883  		return nil, err
  4884  	}
  4885  	return ret, nil
  4886  }
  4887  
  4888  type ProjectsLocationsNetworkPoliciesDeleteCall struct {
  4889  	s          *Service
  4890  	name       string
  4891  	urlParams_ gensupport.URLParams
  4892  	ctx_       context.Context
  4893  	header_    http.Header
  4894  }
  4895  
  4896  // Delete: Deletes a `NetworkPolicy` resource. A network policy cannot be
  4897  // deleted when `NetworkService.state` is set to `RECONCILING` for either its
  4898  // external IP or internet access service.
  4899  //
  4900  //   - name: The resource name of the network policy to delete. Resource names
  4901  //     are schemeless URIs that follow the conventions in
  4902  //     https://cloud.google.com/apis/design/resource_names. For example:
  4903  //     `projects/my-project/locations/us-central1/networkPolicies/my-network-polic
  4904  //     y`.
  4905  func (r *ProjectsLocationsNetworkPoliciesService) Delete(name string) *ProjectsLocationsNetworkPoliciesDeleteCall {
  4906  	c := &ProjectsLocationsNetworkPoliciesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4907  	c.name = name
  4908  	return c
  4909  }
  4910  
  4911  // RequestId sets the optional parameter "requestId": A request ID to identify
  4912  // requests. Specify a unique request ID so that if you must retry your
  4913  // request, the server will know to ignore the request if it has already been
  4914  // completed. The server guarantees that a request doesn't result in creation
  4915  // of duplicate commitments for at least 60 minutes. For example, consider a
  4916  // situation where you make an initial request and the request times out. If
  4917  // you make the request again with the same request ID, the server can check if
  4918  // original operation with the same request ID was received, and if so, will
  4919  // ignore the second request. This prevents clients from accidentally creating
  4920  // duplicate commitments. The request ID must be a valid UUID with the
  4921  // exception that zero UUID is not supported
  4922  // (00000000-0000-0000-0000-000000000000).
  4923  func (c *ProjectsLocationsNetworkPoliciesDeleteCall) RequestId(requestId string) *ProjectsLocationsNetworkPoliciesDeleteCall {
  4924  	c.urlParams_.Set("requestId", requestId)
  4925  	return c
  4926  }
  4927  
  4928  // Fields allows partial responses to be retrieved. See
  4929  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4930  // details.
  4931  func (c *ProjectsLocationsNetworkPoliciesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsNetworkPoliciesDeleteCall {
  4932  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4933  	return c
  4934  }
  4935  
  4936  // Context sets the context to be used in this call's Do method.
  4937  func (c *ProjectsLocationsNetworkPoliciesDeleteCall) Context(ctx context.Context) *ProjectsLocationsNetworkPoliciesDeleteCall {
  4938  	c.ctx_ = ctx
  4939  	return c
  4940  }
  4941  
  4942  // Header returns a http.Header that can be modified by the caller to add
  4943  // headers to the request.
  4944  func (c *ProjectsLocationsNetworkPoliciesDeleteCall) Header() http.Header {
  4945  	if c.header_ == nil {
  4946  		c.header_ = make(http.Header)
  4947  	}
  4948  	return c.header_
  4949  }
  4950  
  4951  func (c *ProjectsLocationsNetworkPoliciesDeleteCall) doRequest(alt string) (*http.Response, error) {
  4952  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4953  	var body io.Reader = nil
  4954  	c.urlParams_.Set("alt", alt)
  4955  	c.urlParams_.Set("prettyPrint", "false")
  4956  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  4957  	urls += "?" + c.urlParams_.Encode()
  4958  	req, err := http.NewRequest("DELETE", urls, body)
  4959  	if err != nil {
  4960  		return nil, err
  4961  	}
  4962  	req.Header = reqHeaders
  4963  	googleapi.Expand(req.URL, map[string]string{
  4964  		"name": c.name,
  4965  	})
  4966  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4967  }
  4968  
  4969  // Do executes the "vmwareengine.projects.locations.networkPolicies.delete" call.
  4970  // Any non-2xx status code is an error. Response headers are in either
  4971  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  4972  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4973  // whether the returned error was because http.StatusNotModified was returned.
  4974  func (c *ProjectsLocationsNetworkPoliciesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  4975  	gensupport.SetOptions(c.urlParams_, opts...)
  4976  	res, err := c.doRequest("json")
  4977  	if res != nil && res.StatusCode == http.StatusNotModified {
  4978  		if res.Body != nil {
  4979  			res.Body.Close()
  4980  		}
  4981  		return nil, gensupport.WrapError(&googleapi.Error{
  4982  			Code:   res.StatusCode,
  4983  			Header: res.Header,
  4984  		})
  4985  	}
  4986  	if err != nil {
  4987  		return nil, err
  4988  	}
  4989  	defer googleapi.CloseBody(res)
  4990  	if err := googleapi.CheckResponse(res); err != nil {
  4991  		return nil, gensupport.WrapError(err)
  4992  	}
  4993  	ret := &Operation{
  4994  		ServerResponse: googleapi.ServerResponse{
  4995  			Header:         res.Header,
  4996  			HTTPStatusCode: res.StatusCode,
  4997  		},
  4998  	}
  4999  	target := &ret
  5000  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5001  		return nil, err
  5002  	}
  5003  	return ret, nil
  5004  }
  5005  
  5006  type ProjectsLocationsNetworkPoliciesFetchExternalAddressesCall struct {
  5007  	s             *Service
  5008  	networkPolicy string
  5009  	urlParams_    gensupport.URLParams
  5010  	ifNoneMatch_  string
  5011  	ctx_          context.Context
  5012  	header_       http.Header
  5013  }
  5014  
  5015  // FetchExternalAddresses: Lists external IP addresses assigned to VMware
  5016  // workload VMs within the scope of the given network policy.
  5017  //
  5018  //   - networkPolicy: The resource name of the network policy to query for
  5019  //     assigned external IP addresses. Resource names are schemeless URIs that
  5020  //     follow the conventions in
  5021  //     https://cloud.google.com/apis/design/resource_names. For example:
  5022  //     `projects/my-project/locations/us-central1/networkPolicies/my-policy`.
  5023  func (r *ProjectsLocationsNetworkPoliciesService) FetchExternalAddresses(networkPolicy string) *ProjectsLocationsNetworkPoliciesFetchExternalAddressesCall {
  5024  	c := &ProjectsLocationsNetworkPoliciesFetchExternalAddressesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5025  	c.networkPolicy = networkPolicy
  5026  	return c
  5027  }
  5028  
  5029  // PageSize sets the optional parameter "pageSize": The maximum number of
  5030  // external IP addresses to return in one page. The service may return fewer
  5031  // than this value. The maximum value is coerced to 1000. The default value of
  5032  // this field is 500.
  5033  func (c *ProjectsLocationsNetworkPoliciesFetchExternalAddressesCall) PageSize(pageSize int64) *ProjectsLocationsNetworkPoliciesFetchExternalAddressesCall {
  5034  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  5035  	return c
  5036  }
  5037  
  5038  // PageToken sets the optional parameter "pageToken": A page token, received
  5039  // from a previous `FetchNetworkPolicyExternalAddresses` call. Provide this to
  5040  // retrieve the subsequent page. When paginating, all parameters provided to
  5041  // `FetchNetworkPolicyExternalAddresses`, except for `page_size` and
  5042  // `page_token`, must match the call that provided the page token.
  5043  func (c *ProjectsLocationsNetworkPoliciesFetchExternalAddressesCall) PageToken(pageToken string) *ProjectsLocationsNetworkPoliciesFetchExternalAddressesCall {
  5044  	c.urlParams_.Set("pageToken", pageToken)
  5045  	return c
  5046  }
  5047  
  5048  // Fields allows partial responses to be retrieved. See
  5049  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5050  // details.
  5051  func (c *ProjectsLocationsNetworkPoliciesFetchExternalAddressesCall) Fields(s ...googleapi.Field) *ProjectsLocationsNetworkPoliciesFetchExternalAddressesCall {
  5052  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5053  	return c
  5054  }
  5055  
  5056  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5057  // object's ETag matches the given value. This is useful for getting updates
  5058  // only after the object has changed since the last request.
  5059  func (c *ProjectsLocationsNetworkPoliciesFetchExternalAddressesCall) IfNoneMatch(entityTag string) *ProjectsLocationsNetworkPoliciesFetchExternalAddressesCall {
  5060  	c.ifNoneMatch_ = entityTag
  5061  	return c
  5062  }
  5063  
  5064  // Context sets the context to be used in this call's Do method.
  5065  func (c *ProjectsLocationsNetworkPoliciesFetchExternalAddressesCall) Context(ctx context.Context) *ProjectsLocationsNetworkPoliciesFetchExternalAddressesCall {
  5066  	c.ctx_ = ctx
  5067  	return c
  5068  }
  5069  
  5070  // Header returns a http.Header that can be modified by the caller to add
  5071  // headers to the request.
  5072  func (c *ProjectsLocationsNetworkPoliciesFetchExternalAddressesCall) Header() http.Header {
  5073  	if c.header_ == nil {
  5074  		c.header_ = make(http.Header)
  5075  	}
  5076  	return c.header_
  5077  }
  5078  
  5079  func (c *ProjectsLocationsNetworkPoliciesFetchExternalAddressesCall) doRequest(alt string) (*http.Response, error) {
  5080  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5081  	if c.ifNoneMatch_ != "" {
  5082  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5083  	}
  5084  	var body io.Reader = nil
  5085  	c.urlParams_.Set("alt", alt)
  5086  	c.urlParams_.Set("prettyPrint", "false")
  5087  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+networkPolicy}:fetchExternalAddresses")
  5088  	urls += "?" + c.urlParams_.Encode()
  5089  	req, err := http.NewRequest("GET", urls, body)
  5090  	if err != nil {
  5091  		return nil, err
  5092  	}
  5093  	req.Header = reqHeaders
  5094  	googleapi.Expand(req.URL, map[string]string{
  5095  		"networkPolicy": c.networkPolicy,
  5096  	})
  5097  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5098  }
  5099  
  5100  // Do executes the "vmwareengine.projects.locations.networkPolicies.fetchExternalAddresses" call.
  5101  // Any non-2xx status code is an error. Response headers are in either
  5102  // *FetchNetworkPolicyExternalAddressesResponse.ServerResponse.Header or (if a
  5103  // response was returned at all) in error.(*googleapi.Error).Header. Use
  5104  // googleapi.IsNotModified to check whether the returned error was because
  5105  // http.StatusNotModified was returned.
  5106  func (c *ProjectsLocationsNetworkPoliciesFetchExternalAddressesCall) Do(opts ...googleapi.CallOption) (*FetchNetworkPolicyExternalAddressesResponse, error) {
  5107  	gensupport.SetOptions(c.urlParams_, opts...)
  5108  	res, err := c.doRequest("json")
  5109  	if res != nil && res.StatusCode == http.StatusNotModified {
  5110  		if res.Body != nil {
  5111  			res.Body.Close()
  5112  		}
  5113  		return nil, gensupport.WrapError(&googleapi.Error{
  5114  			Code:   res.StatusCode,
  5115  			Header: res.Header,
  5116  		})
  5117  	}
  5118  	if err != nil {
  5119  		return nil, err
  5120  	}
  5121  	defer googleapi.CloseBody(res)
  5122  	if err := googleapi.CheckResponse(res); err != nil {
  5123  		return nil, gensupport.WrapError(err)
  5124  	}
  5125  	ret := &FetchNetworkPolicyExternalAddressesResponse{
  5126  		ServerResponse: googleapi.ServerResponse{
  5127  			Header:         res.Header,
  5128  			HTTPStatusCode: res.StatusCode,
  5129  		},
  5130  	}
  5131  	target := &ret
  5132  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5133  		return nil, err
  5134  	}
  5135  	return ret, nil
  5136  }
  5137  
  5138  // Pages invokes f for each page of results.
  5139  // A non-nil error returned from f will halt the iteration.
  5140  // The provided context supersedes any context provided to the Context method.
  5141  func (c *ProjectsLocationsNetworkPoliciesFetchExternalAddressesCall) Pages(ctx context.Context, f func(*FetchNetworkPolicyExternalAddressesResponse) error) error {
  5142  	c.ctx_ = ctx
  5143  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  5144  	for {
  5145  		x, err := c.Do()
  5146  		if err != nil {
  5147  			return err
  5148  		}
  5149  		if err := f(x); err != nil {
  5150  			return err
  5151  		}
  5152  		if x.NextPageToken == "" {
  5153  			return nil
  5154  		}
  5155  		c.PageToken(x.NextPageToken)
  5156  	}
  5157  }
  5158  
  5159  type ProjectsLocationsNetworkPoliciesGetCall struct {
  5160  	s            *Service
  5161  	name         string
  5162  	urlParams_   gensupport.URLParams
  5163  	ifNoneMatch_ string
  5164  	ctx_         context.Context
  5165  	header_      http.Header
  5166  }
  5167  
  5168  // Get: Retrieves a `NetworkPolicy` resource by its resource name.
  5169  //
  5170  //   - name: The resource name of the network policy to retrieve. Resource names
  5171  //     are schemeless URIs that follow the conventions in
  5172  //     https://cloud.google.com/apis/design/resource_names. For example:
  5173  //     `projects/my-project/locations/us-central1/networkPolicies/my-network-polic
  5174  //     y`.
  5175  func (r *ProjectsLocationsNetworkPoliciesService) Get(name string) *ProjectsLocationsNetworkPoliciesGetCall {
  5176  	c := &ProjectsLocationsNetworkPoliciesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5177  	c.name = name
  5178  	return c
  5179  }
  5180  
  5181  // Fields allows partial responses to be retrieved. See
  5182  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5183  // details.
  5184  func (c *ProjectsLocationsNetworkPoliciesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsNetworkPoliciesGetCall {
  5185  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5186  	return c
  5187  }
  5188  
  5189  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5190  // object's ETag matches the given value. This is useful for getting updates
  5191  // only after the object has changed since the last request.
  5192  func (c *ProjectsLocationsNetworkPoliciesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsNetworkPoliciesGetCall {
  5193  	c.ifNoneMatch_ = entityTag
  5194  	return c
  5195  }
  5196  
  5197  // Context sets the context to be used in this call's Do method.
  5198  func (c *ProjectsLocationsNetworkPoliciesGetCall) Context(ctx context.Context) *ProjectsLocationsNetworkPoliciesGetCall {
  5199  	c.ctx_ = ctx
  5200  	return c
  5201  }
  5202  
  5203  // Header returns a http.Header that can be modified by the caller to add
  5204  // headers to the request.
  5205  func (c *ProjectsLocationsNetworkPoliciesGetCall) Header() http.Header {
  5206  	if c.header_ == nil {
  5207  		c.header_ = make(http.Header)
  5208  	}
  5209  	return c.header_
  5210  }
  5211  
  5212  func (c *ProjectsLocationsNetworkPoliciesGetCall) doRequest(alt string) (*http.Response, error) {
  5213  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5214  	if c.ifNoneMatch_ != "" {
  5215  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5216  	}
  5217  	var body io.Reader = nil
  5218  	c.urlParams_.Set("alt", alt)
  5219  	c.urlParams_.Set("prettyPrint", "false")
  5220  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  5221  	urls += "?" + c.urlParams_.Encode()
  5222  	req, err := http.NewRequest("GET", urls, body)
  5223  	if err != nil {
  5224  		return nil, err
  5225  	}
  5226  	req.Header = reqHeaders
  5227  	googleapi.Expand(req.URL, map[string]string{
  5228  		"name": c.name,
  5229  	})
  5230  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5231  }
  5232  
  5233  // Do executes the "vmwareengine.projects.locations.networkPolicies.get" call.
  5234  // Any non-2xx status code is an error. Response headers are in either
  5235  // *NetworkPolicy.ServerResponse.Header or (if a response was returned at all)
  5236  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5237  // whether the returned error was because http.StatusNotModified was returned.
  5238  func (c *ProjectsLocationsNetworkPoliciesGetCall) Do(opts ...googleapi.CallOption) (*NetworkPolicy, error) {
  5239  	gensupport.SetOptions(c.urlParams_, opts...)
  5240  	res, err := c.doRequest("json")
  5241  	if res != nil && res.StatusCode == http.StatusNotModified {
  5242  		if res.Body != nil {
  5243  			res.Body.Close()
  5244  		}
  5245  		return nil, gensupport.WrapError(&googleapi.Error{
  5246  			Code:   res.StatusCode,
  5247  			Header: res.Header,
  5248  		})
  5249  	}
  5250  	if err != nil {
  5251  		return nil, err
  5252  	}
  5253  	defer googleapi.CloseBody(res)
  5254  	if err := googleapi.CheckResponse(res); err != nil {
  5255  		return nil, gensupport.WrapError(err)
  5256  	}
  5257  	ret := &NetworkPolicy{
  5258  		ServerResponse: googleapi.ServerResponse{
  5259  			Header:         res.Header,
  5260  			HTTPStatusCode: res.StatusCode,
  5261  		},
  5262  	}
  5263  	target := &ret
  5264  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5265  		return nil, err
  5266  	}
  5267  	return ret, nil
  5268  }
  5269  
  5270  type ProjectsLocationsNetworkPoliciesListCall struct {
  5271  	s            *Service
  5272  	parent       string
  5273  	urlParams_   gensupport.URLParams
  5274  	ifNoneMatch_ string
  5275  	ctx_         context.Context
  5276  	header_      http.Header
  5277  }
  5278  
  5279  // List: Lists `NetworkPolicy` resources in a specified project and location.
  5280  //
  5281  //   - parent: The resource name of the location (region) to query for network
  5282  //     policies. Resource names are schemeless URIs that follow the conventions
  5283  //     in https://cloud.google.com/apis/design/resource_names. For example:
  5284  //     `projects/my-project/locations/us-central1`.
  5285  func (r *ProjectsLocationsNetworkPoliciesService) List(parent string) *ProjectsLocationsNetworkPoliciesListCall {
  5286  	c := &ProjectsLocationsNetworkPoliciesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5287  	c.parent = parent
  5288  	return c
  5289  }
  5290  
  5291  // Filter sets the optional parameter "filter": A filter expression that
  5292  // matches resources returned in the response. The expression must specify the
  5293  // field name, a comparison operator, and the value that you want to use for
  5294  // filtering. The value must be a string, a number, or a boolean. The
  5295  // comparison operator must be `=`, `!=`, `>`, or `<`. For example, if you are
  5296  // filtering a list of network policies, you can exclude the ones named
  5297  // `example-policy` by specifying `name != "example-policy". To filter on
  5298  // multiple expressions, provide each separate expression within parentheses.
  5299  // For example: ``` (name = "example-policy") (createTime >
  5300  // "2021-04-12T08:15:10.40Z") ``` By default, each expression is an `AND`
  5301  // expression. However, you can include `AND` and `OR` expressions explicitly.
  5302  // For example: ``` (name = "example-policy-1") AND (createTime >
  5303  // "2021-04-12T08:15:10.40Z") OR (name = "example-policy-2") ```
  5304  func (c *ProjectsLocationsNetworkPoliciesListCall) Filter(filter string) *ProjectsLocationsNetworkPoliciesListCall {
  5305  	c.urlParams_.Set("filter", filter)
  5306  	return c
  5307  }
  5308  
  5309  // OrderBy sets the optional parameter "orderBy": Sorts list results by a
  5310  // certain order. By default, returned results are ordered by `name` in
  5311  // ascending order. You can also sort results in descending order based on the
  5312  // `name` value using `orderBy="name desc". Currently, only ordering by `name`
  5313  // is supported.
  5314  func (c *ProjectsLocationsNetworkPoliciesListCall) OrderBy(orderBy string) *ProjectsLocationsNetworkPoliciesListCall {
  5315  	c.urlParams_.Set("orderBy", orderBy)
  5316  	return c
  5317  }
  5318  
  5319  // PageSize sets the optional parameter "pageSize": The maximum number of
  5320  // network policies to return in one page. The service may return fewer than
  5321  // this value. The maximum value is coerced to 1000. The default value of this
  5322  // field is 500.
  5323  func (c *ProjectsLocationsNetworkPoliciesListCall) PageSize(pageSize int64) *ProjectsLocationsNetworkPoliciesListCall {
  5324  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  5325  	return c
  5326  }
  5327  
  5328  // PageToken sets the optional parameter "pageToken": A page token, received
  5329  // from a previous `ListNetworkPolicies` call. Provide this to retrieve the
  5330  // subsequent page. When paginating, all other parameters provided to
  5331  // `ListNetworkPolicies` must match the call that provided the page token.
  5332  func (c *ProjectsLocationsNetworkPoliciesListCall) PageToken(pageToken string) *ProjectsLocationsNetworkPoliciesListCall {
  5333  	c.urlParams_.Set("pageToken", pageToken)
  5334  	return c
  5335  }
  5336  
  5337  // Fields allows partial responses to be retrieved. See
  5338  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5339  // details.
  5340  func (c *ProjectsLocationsNetworkPoliciesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsNetworkPoliciesListCall {
  5341  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5342  	return c
  5343  }
  5344  
  5345  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5346  // object's ETag matches the given value. This is useful for getting updates
  5347  // only after the object has changed since the last request.
  5348  func (c *ProjectsLocationsNetworkPoliciesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsNetworkPoliciesListCall {
  5349  	c.ifNoneMatch_ = entityTag
  5350  	return c
  5351  }
  5352  
  5353  // Context sets the context to be used in this call's Do method.
  5354  func (c *ProjectsLocationsNetworkPoliciesListCall) Context(ctx context.Context) *ProjectsLocationsNetworkPoliciesListCall {
  5355  	c.ctx_ = ctx
  5356  	return c
  5357  }
  5358  
  5359  // Header returns a http.Header that can be modified by the caller to add
  5360  // headers to the request.
  5361  func (c *ProjectsLocationsNetworkPoliciesListCall) Header() http.Header {
  5362  	if c.header_ == nil {
  5363  		c.header_ = make(http.Header)
  5364  	}
  5365  	return c.header_
  5366  }
  5367  
  5368  func (c *ProjectsLocationsNetworkPoliciesListCall) doRequest(alt string) (*http.Response, error) {
  5369  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5370  	if c.ifNoneMatch_ != "" {
  5371  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5372  	}
  5373  	var body io.Reader = nil
  5374  	c.urlParams_.Set("alt", alt)
  5375  	c.urlParams_.Set("prettyPrint", "false")
  5376  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/networkPolicies")
  5377  	urls += "?" + c.urlParams_.Encode()
  5378  	req, err := http.NewRequest("GET", urls, body)
  5379  	if err != nil {
  5380  		return nil, err
  5381  	}
  5382  	req.Header = reqHeaders
  5383  	googleapi.Expand(req.URL, map[string]string{
  5384  		"parent": c.parent,
  5385  	})
  5386  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5387  }
  5388  
  5389  // Do executes the "vmwareengine.projects.locations.networkPolicies.list" call.
  5390  // Any non-2xx status code is an error. Response headers are in either
  5391  // *ListNetworkPoliciesResponse.ServerResponse.Header or (if a response was
  5392  // returned at all) in error.(*googleapi.Error).Header. Use
  5393  // googleapi.IsNotModified to check whether the returned error was because
  5394  // http.StatusNotModified was returned.
  5395  func (c *ProjectsLocationsNetworkPoliciesListCall) Do(opts ...googleapi.CallOption) (*ListNetworkPoliciesResponse, error) {
  5396  	gensupport.SetOptions(c.urlParams_, opts...)
  5397  	res, err := c.doRequest("json")
  5398  	if res != nil && res.StatusCode == http.StatusNotModified {
  5399  		if res.Body != nil {
  5400  			res.Body.Close()
  5401  		}
  5402  		return nil, gensupport.WrapError(&googleapi.Error{
  5403  			Code:   res.StatusCode,
  5404  			Header: res.Header,
  5405  		})
  5406  	}
  5407  	if err != nil {
  5408  		return nil, err
  5409  	}
  5410  	defer googleapi.CloseBody(res)
  5411  	if err := googleapi.CheckResponse(res); err != nil {
  5412  		return nil, gensupport.WrapError(err)
  5413  	}
  5414  	ret := &ListNetworkPoliciesResponse{
  5415  		ServerResponse: googleapi.ServerResponse{
  5416  			Header:         res.Header,
  5417  			HTTPStatusCode: res.StatusCode,
  5418  		},
  5419  	}
  5420  	target := &ret
  5421  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5422  		return nil, err
  5423  	}
  5424  	return ret, nil
  5425  }
  5426  
  5427  // Pages invokes f for each page of results.
  5428  // A non-nil error returned from f will halt the iteration.
  5429  // The provided context supersedes any context provided to the Context method.
  5430  func (c *ProjectsLocationsNetworkPoliciesListCall) Pages(ctx context.Context, f func(*ListNetworkPoliciesResponse) error) error {
  5431  	c.ctx_ = ctx
  5432  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  5433  	for {
  5434  		x, err := c.Do()
  5435  		if err != nil {
  5436  			return err
  5437  		}
  5438  		if err := f(x); err != nil {
  5439  			return err
  5440  		}
  5441  		if x.NextPageToken == "" {
  5442  			return nil
  5443  		}
  5444  		c.PageToken(x.NextPageToken)
  5445  	}
  5446  }
  5447  
  5448  type ProjectsLocationsNetworkPoliciesPatchCall struct {
  5449  	s             *Service
  5450  	name          string
  5451  	networkpolicy *NetworkPolicy
  5452  	urlParams_    gensupport.URLParams
  5453  	ctx_          context.Context
  5454  	header_       http.Header
  5455  }
  5456  
  5457  // Patch: Modifies a `NetworkPolicy` resource. Only the following fields can be
  5458  // updated: `internet_access`, `external_ip`, `edge_services_cidr`. Only fields
  5459  // specified in `updateMask` are applied. When updating a network policy, the
  5460  // external IP network service can only be disabled if there are no external IP
  5461  // addresses present in the scope of the policy. Also, a `NetworkService`
  5462  // cannot be updated when `NetworkService.state` is set to `RECONCILING`.
  5463  // During operation processing, the resource is temporarily in the `ACTIVE`
  5464  // state before the operation fully completes. For that period of time, you
  5465  // can't update the resource. Use the operation status to determine when the
  5466  // processing fully completes.
  5467  //
  5468  //   - name: Output only. The resource name of this network policy. Resource
  5469  //     names are schemeless URIs that follow the conventions in
  5470  //     https://cloud.google.com/apis/design/resource_names. For example:
  5471  //     `projects/my-project/locations/us-central1/networkPolicies/my-network-polic
  5472  //     y`.
  5473  func (r *ProjectsLocationsNetworkPoliciesService) Patch(name string, networkpolicy *NetworkPolicy) *ProjectsLocationsNetworkPoliciesPatchCall {
  5474  	c := &ProjectsLocationsNetworkPoliciesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5475  	c.name = name
  5476  	c.networkpolicy = networkpolicy
  5477  	return c
  5478  }
  5479  
  5480  // RequestId sets the optional parameter "requestId": A request ID to identify
  5481  // requests. Specify a unique request ID so that if you must retry your
  5482  // request, the server will know to ignore the request if it has already been
  5483  // completed. The server guarantees that a request doesn't result in creation
  5484  // of duplicate commitments for at least 60 minutes. For example, consider a
  5485  // situation where you make an initial request and the request times out. If
  5486  // you make the request again with the same request ID, the server can check if
  5487  // original operation with the same request ID was received, and if so, will
  5488  // ignore the second request. This prevents clients from accidentally creating
  5489  // duplicate commitments. The request ID must be a valid UUID with the
  5490  // exception that zero UUID is not supported
  5491  // (00000000-0000-0000-0000-000000000000).
  5492  func (c *ProjectsLocationsNetworkPoliciesPatchCall) RequestId(requestId string) *ProjectsLocationsNetworkPoliciesPatchCall {
  5493  	c.urlParams_.Set("requestId", requestId)
  5494  	return c
  5495  }
  5496  
  5497  // UpdateMask sets the optional parameter "updateMask": Required. Field mask is
  5498  // used to specify the fields to be overwritten in the `NetworkPolicy` resource
  5499  // by the update. The fields specified in the `update_mask` are relative to the
  5500  // resource, not the full request. A field will be overwritten if it is in the
  5501  // mask. If the user does not provide a mask then all fields will be
  5502  // overwritten.
  5503  func (c *ProjectsLocationsNetworkPoliciesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsNetworkPoliciesPatchCall {
  5504  	c.urlParams_.Set("updateMask", updateMask)
  5505  	return c
  5506  }
  5507  
  5508  // Fields allows partial responses to be retrieved. See
  5509  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5510  // details.
  5511  func (c *ProjectsLocationsNetworkPoliciesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsNetworkPoliciesPatchCall {
  5512  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5513  	return c
  5514  }
  5515  
  5516  // Context sets the context to be used in this call's Do method.
  5517  func (c *ProjectsLocationsNetworkPoliciesPatchCall) Context(ctx context.Context) *ProjectsLocationsNetworkPoliciesPatchCall {
  5518  	c.ctx_ = ctx
  5519  	return c
  5520  }
  5521  
  5522  // Header returns a http.Header that can be modified by the caller to add
  5523  // headers to the request.
  5524  func (c *ProjectsLocationsNetworkPoliciesPatchCall) Header() http.Header {
  5525  	if c.header_ == nil {
  5526  		c.header_ = make(http.Header)
  5527  	}
  5528  	return c.header_
  5529  }
  5530  
  5531  func (c *ProjectsLocationsNetworkPoliciesPatchCall) doRequest(alt string) (*http.Response, error) {
  5532  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5533  	var body io.Reader = nil
  5534  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.networkpolicy)
  5535  	if err != nil {
  5536  		return nil, err
  5537  	}
  5538  	c.urlParams_.Set("alt", alt)
  5539  	c.urlParams_.Set("prettyPrint", "false")
  5540  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  5541  	urls += "?" + c.urlParams_.Encode()
  5542  	req, err := http.NewRequest("PATCH", urls, body)
  5543  	if err != nil {
  5544  		return nil, err
  5545  	}
  5546  	req.Header = reqHeaders
  5547  	googleapi.Expand(req.URL, map[string]string{
  5548  		"name": c.name,
  5549  	})
  5550  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5551  }
  5552  
  5553  // Do executes the "vmwareengine.projects.locations.networkPolicies.patch" call.
  5554  // Any non-2xx status code is an error. Response headers are in either
  5555  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  5556  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5557  // whether the returned error was because http.StatusNotModified was returned.
  5558  func (c *ProjectsLocationsNetworkPoliciesPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  5559  	gensupport.SetOptions(c.urlParams_, opts...)
  5560  	res, err := c.doRequest("json")
  5561  	if res != nil && res.StatusCode == http.StatusNotModified {
  5562  		if res.Body != nil {
  5563  			res.Body.Close()
  5564  		}
  5565  		return nil, gensupport.WrapError(&googleapi.Error{
  5566  			Code:   res.StatusCode,
  5567  			Header: res.Header,
  5568  		})
  5569  	}
  5570  	if err != nil {
  5571  		return nil, err
  5572  	}
  5573  	defer googleapi.CloseBody(res)
  5574  	if err := googleapi.CheckResponse(res); err != nil {
  5575  		return nil, gensupport.WrapError(err)
  5576  	}
  5577  	ret := &Operation{
  5578  		ServerResponse: googleapi.ServerResponse{
  5579  			Header:         res.Header,
  5580  			HTTPStatusCode: res.StatusCode,
  5581  		},
  5582  	}
  5583  	target := &ret
  5584  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5585  		return nil, err
  5586  	}
  5587  	return ret, nil
  5588  }
  5589  
  5590  type ProjectsLocationsNetworkPoliciesExternalAccessRulesCreateCall struct {
  5591  	s                  *Service
  5592  	parent             string
  5593  	externalaccessrule *ExternalAccessRule
  5594  	urlParams_         gensupport.URLParams
  5595  	ctx_               context.Context
  5596  	header_            http.Header
  5597  }
  5598  
  5599  // Create: Creates a new external access rule in a given network policy.
  5600  //
  5601  //   - parent: The resource name of the network policy to create a new external
  5602  //     access firewall rule in. Resource names are schemeless URIs that follow
  5603  //     the conventions in https://cloud.google.com/apis/design/resource_names.
  5604  //     For example:
  5605  //     `projects/my-project/locations/us-central1/networkPolicies/my-policy`.
  5606  func (r *ProjectsLocationsNetworkPoliciesExternalAccessRulesService) Create(parent string, externalaccessrule *ExternalAccessRule) *ProjectsLocationsNetworkPoliciesExternalAccessRulesCreateCall {
  5607  	c := &ProjectsLocationsNetworkPoliciesExternalAccessRulesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5608  	c.parent = parent
  5609  	c.externalaccessrule = externalaccessrule
  5610  	return c
  5611  }
  5612  
  5613  // ExternalAccessRuleId sets the optional parameter "externalAccessRuleId":
  5614  // Required. The user-provided identifier of the `ExternalAccessRule` to be
  5615  // created. This identifier must be unique among `ExternalAccessRule` resources
  5616  // within the parent and becomes the final token in the name URI. The
  5617  // identifier must meet the following requirements: * Only contains 1-63
  5618  // alphanumeric characters and hyphens * Begins with an alphabetical character
  5619  // * Ends with a non-hyphen character * Not formatted as a UUID * Complies with
  5620  // RFC 1034 (https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
  5621  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesCreateCall) ExternalAccessRuleId(externalAccessRuleId string) *ProjectsLocationsNetworkPoliciesExternalAccessRulesCreateCall {
  5622  	c.urlParams_.Set("externalAccessRuleId", externalAccessRuleId)
  5623  	return c
  5624  }
  5625  
  5626  // RequestId sets the optional parameter "requestId": A request ID to identify
  5627  // requests. Specify a unique request ID so that if you must retry your
  5628  // request, the server will know to ignore the request if it has already been
  5629  // completed. The server guarantees that a request doesn't result in creation
  5630  // of duplicate commitments for at least 60 minutes. For example, consider a
  5631  // situation where you make an initial request and the request times out. If
  5632  // you make the request again with the same request ID, the server can check if
  5633  // the original operation with the same request ID was received, and if so,
  5634  // will ignore the second request. This prevents clients from accidentally
  5635  // creating duplicate commitments. The request ID must be a valid UUID with the
  5636  // exception that zero UUID is not supported
  5637  // (00000000-0000-0000-0000-000000000000).
  5638  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesCreateCall) RequestId(requestId string) *ProjectsLocationsNetworkPoliciesExternalAccessRulesCreateCall {
  5639  	c.urlParams_.Set("requestId", requestId)
  5640  	return c
  5641  }
  5642  
  5643  // Fields allows partial responses to be retrieved. See
  5644  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5645  // details.
  5646  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsNetworkPoliciesExternalAccessRulesCreateCall {
  5647  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5648  	return c
  5649  }
  5650  
  5651  // Context sets the context to be used in this call's Do method.
  5652  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesCreateCall) Context(ctx context.Context) *ProjectsLocationsNetworkPoliciesExternalAccessRulesCreateCall {
  5653  	c.ctx_ = ctx
  5654  	return c
  5655  }
  5656  
  5657  // Header returns a http.Header that can be modified by the caller to add
  5658  // headers to the request.
  5659  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesCreateCall) Header() http.Header {
  5660  	if c.header_ == nil {
  5661  		c.header_ = make(http.Header)
  5662  	}
  5663  	return c.header_
  5664  }
  5665  
  5666  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesCreateCall) doRequest(alt string) (*http.Response, error) {
  5667  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5668  	var body io.Reader = nil
  5669  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.externalaccessrule)
  5670  	if err != nil {
  5671  		return nil, err
  5672  	}
  5673  	c.urlParams_.Set("alt", alt)
  5674  	c.urlParams_.Set("prettyPrint", "false")
  5675  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/externalAccessRules")
  5676  	urls += "?" + c.urlParams_.Encode()
  5677  	req, err := http.NewRequest("POST", urls, body)
  5678  	if err != nil {
  5679  		return nil, err
  5680  	}
  5681  	req.Header = reqHeaders
  5682  	googleapi.Expand(req.URL, map[string]string{
  5683  		"parent": c.parent,
  5684  	})
  5685  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5686  }
  5687  
  5688  // Do executes the "vmwareengine.projects.locations.networkPolicies.externalAccessRules.create" call.
  5689  // Any non-2xx status code is an error. Response headers are in either
  5690  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  5691  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5692  // whether the returned error was because http.StatusNotModified was returned.
  5693  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  5694  	gensupport.SetOptions(c.urlParams_, opts...)
  5695  	res, err := c.doRequest("json")
  5696  	if res != nil && res.StatusCode == http.StatusNotModified {
  5697  		if res.Body != nil {
  5698  			res.Body.Close()
  5699  		}
  5700  		return nil, gensupport.WrapError(&googleapi.Error{
  5701  			Code:   res.StatusCode,
  5702  			Header: res.Header,
  5703  		})
  5704  	}
  5705  	if err != nil {
  5706  		return nil, err
  5707  	}
  5708  	defer googleapi.CloseBody(res)
  5709  	if err := googleapi.CheckResponse(res); err != nil {
  5710  		return nil, gensupport.WrapError(err)
  5711  	}
  5712  	ret := &Operation{
  5713  		ServerResponse: googleapi.ServerResponse{
  5714  			Header:         res.Header,
  5715  			HTTPStatusCode: res.StatusCode,
  5716  		},
  5717  	}
  5718  	target := &ret
  5719  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5720  		return nil, err
  5721  	}
  5722  	return ret, nil
  5723  }
  5724  
  5725  type ProjectsLocationsNetworkPoliciesExternalAccessRulesDeleteCall struct {
  5726  	s          *Service
  5727  	name       string
  5728  	urlParams_ gensupport.URLParams
  5729  	ctx_       context.Context
  5730  	header_    http.Header
  5731  }
  5732  
  5733  // Delete: Deletes a single external access rule.
  5734  //
  5735  //   - name: The resource name of the external access firewall rule to delete.
  5736  //     Resource names are schemeless URIs that follow the conventions in
  5737  //     https://cloud.google.com/apis/design/resource_names. For example:
  5738  //     `projects/my-project/locations/us-central1/networkPolicies/my-policy/extern
  5739  //     alAccessRules/my-rule`.
  5740  func (r *ProjectsLocationsNetworkPoliciesExternalAccessRulesService) Delete(name string) *ProjectsLocationsNetworkPoliciesExternalAccessRulesDeleteCall {
  5741  	c := &ProjectsLocationsNetworkPoliciesExternalAccessRulesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5742  	c.name = name
  5743  	return c
  5744  }
  5745  
  5746  // RequestId sets the optional parameter "requestId": A request ID to identify
  5747  // requests. Specify a unique request ID so that if you must retry your
  5748  // request, the server will know to ignore the request if it has already been
  5749  // completed. The server guarantees that a request doesn't result in creation
  5750  // of duplicate commitments for at least 60 minutes. For example, consider a
  5751  // situation where you make an initial request and the request times out. If
  5752  // you make the request again with the same request ID, the server can check if
  5753  // the original operation with the same request ID was received, and if so,
  5754  // will ignore the second request. This prevents clients from accidentally
  5755  // creating duplicate commitments. The request ID must be a valid UUID with the
  5756  // exception that zero UUID is not supported
  5757  // (00000000-0000-0000-0000-000000000000).
  5758  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesDeleteCall) RequestId(requestId string) *ProjectsLocationsNetworkPoliciesExternalAccessRulesDeleteCall {
  5759  	c.urlParams_.Set("requestId", requestId)
  5760  	return c
  5761  }
  5762  
  5763  // Fields allows partial responses to be retrieved. See
  5764  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5765  // details.
  5766  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsNetworkPoliciesExternalAccessRulesDeleteCall {
  5767  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5768  	return c
  5769  }
  5770  
  5771  // Context sets the context to be used in this call's Do method.
  5772  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesDeleteCall) Context(ctx context.Context) *ProjectsLocationsNetworkPoliciesExternalAccessRulesDeleteCall {
  5773  	c.ctx_ = ctx
  5774  	return c
  5775  }
  5776  
  5777  // Header returns a http.Header that can be modified by the caller to add
  5778  // headers to the request.
  5779  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesDeleteCall) Header() http.Header {
  5780  	if c.header_ == nil {
  5781  		c.header_ = make(http.Header)
  5782  	}
  5783  	return c.header_
  5784  }
  5785  
  5786  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesDeleteCall) doRequest(alt string) (*http.Response, error) {
  5787  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5788  	var body io.Reader = nil
  5789  	c.urlParams_.Set("alt", alt)
  5790  	c.urlParams_.Set("prettyPrint", "false")
  5791  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  5792  	urls += "?" + c.urlParams_.Encode()
  5793  	req, err := http.NewRequest("DELETE", urls, body)
  5794  	if err != nil {
  5795  		return nil, err
  5796  	}
  5797  	req.Header = reqHeaders
  5798  	googleapi.Expand(req.URL, map[string]string{
  5799  		"name": c.name,
  5800  	})
  5801  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5802  }
  5803  
  5804  // Do executes the "vmwareengine.projects.locations.networkPolicies.externalAccessRules.delete" call.
  5805  // Any non-2xx status code is an error. Response headers are in either
  5806  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  5807  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5808  // whether the returned error was because http.StatusNotModified was returned.
  5809  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  5810  	gensupport.SetOptions(c.urlParams_, opts...)
  5811  	res, err := c.doRequest("json")
  5812  	if res != nil && res.StatusCode == http.StatusNotModified {
  5813  		if res.Body != nil {
  5814  			res.Body.Close()
  5815  		}
  5816  		return nil, gensupport.WrapError(&googleapi.Error{
  5817  			Code:   res.StatusCode,
  5818  			Header: res.Header,
  5819  		})
  5820  	}
  5821  	if err != nil {
  5822  		return nil, err
  5823  	}
  5824  	defer googleapi.CloseBody(res)
  5825  	if err := googleapi.CheckResponse(res); err != nil {
  5826  		return nil, gensupport.WrapError(err)
  5827  	}
  5828  	ret := &Operation{
  5829  		ServerResponse: googleapi.ServerResponse{
  5830  			Header:         res.Header,
  5831  			HTTPStatusCode: res.StatusCode,
  5832  		},
  5833  	}
  5834  	target := &ret
  5835  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5836  		return nil, err
  5837  	}
  5838  	return ret, nil
  5839  }
  5840  
  5841  type ProjectsLocationsNetworkPoliciesExternalAccessRulesGetCall struct {
  5842  	s            *Service
  5843  	name         string
  5844  	urlParams_   gensupport.URLParams
  5845  	ifNoneMatch_ string
  5846  	ctx_         context.Context
  5847  	header_      http.Header
  5848  }
  5849  
  5850  // Get: Gets details of a single external access rule.
  5851  //
  5852  //   - name: The resource name of the external access firewall rule to retrieve.
  5853  //     Resource names are schemeless URIs that follow the conventions in
  5854  //     https://cloud.google.com/apis/design/resource_names. For example:
  5855  //     `projects/my-project/locations/us-central1/networkPolicies/my-policy/extern
  5856  //     alAccessRules/my-rule`.
  5857  func (r *ProjectsLocationsNetworkPoliciesExternalAccessRulesService) Get(name string) *ProjectsLocationsNetworkPoliciesExternalAccessRulesGetCall {
  5858  	c := &ProjectsLocationsNetworkPoliciesExternalAccessRulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5859  	c.name = name
  5860  	return c
  5861  }
  5862  
  5863  // Fields allows partial responses to be retrieved. See
  5864  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5865  // details.
  5866  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsNetworkPoliciesExternalAccessRulesGetCall {
  5867  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5868  	return c
  5869  }
  5870  
  5871  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5872  // object's ETag matches the given value. This is useful for getting updates
  5873  // only after the object has changed since the last request.
  5874  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsNetworkPoliciesExternalAccessRulesGetCall {
  5875  	c.ifNoneMatch_ = entityTag
  5876  	return c
  5877  }
  5878  
  5879  // Context sets the context to be used in this call's Do method.
  5880  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesGetCall) Context(ctx context.Context) *ProjectsLocationsNetworkPoliciesExternalAccessRulesGetCall {
  5881  	c.ctx_ = ctx
  5882  	return c
  5883  }
  5884  
  5885  // Header returns a http.Header that can be modified by the caller to add
  5886  // headers to the request.
  5887  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesGetCall) Header() http.Header {
  5888  	if c.header_ == nil {
  5889  		c.header_ = make(http.Header)
  5890  	}
  5891  	return c.header_
  5892  }
  5893  
  5894  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesGetCall) doRequest(alt string) (*http.Response, error) {
  5895  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5896  	if c.ifNoneMatch_ != "" {
  5897  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5898  	}
  5899  	var body io.Reader = nil
  5900  	c.urlParams_.Set("alt", alt)
  5901  	c.urlParams_.Set("prettyPrint", "false")
  5902  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  5903  	urls += "?" + c.urlParams_.Encode()
  5904  	req, err := http.NewRequest("GET", urls, body)
  5905  	if err != nil {
  5906  		return nil, err
  5907  	}
  5908  	req.Header = reqHeaders
  5909  	googleapi.Expand(req.URL, map[string]string{
  5910  		"name": c.name,
  5911  	})
  5912  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5913  }
  5914  
  5915  // Do executes the "vmwareengine.projects.locations.networkPolicies.externalAccessRules.get" call.
  5916  // Any non-2xx status code is an error. Response headers are in either
  5917  // *ExternalAccessRule.ServerResponse.Header or (if a response was returned at
  5918  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  5919  // check whether the returned error was because http.StatusNotModified was
  5920  // returned.
  5921  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesGetCall) Do(opts ...googleapi.CallOption) (*ExternalAccessRule, error) {
  5922  	gensupport.SetOptions(c.urlParams_, opts...)
  5923  	res, err := c.doRequest("json")
  5924  	if res != nil && res.StatusCode == http.StatusNotModified {
  5925  		if res.Body != nil {
  5926  			res.Body.Close()
  5927  		}
  5928  		return nil, gensupport.WrapError(&googleapi.Error{
  5929  			Code:   res.StatusCode,
  5930  			Header: res.Header,
  5931  		})
  5932  	}
  5933  	if err != nil {
  5934  		return nil, err
  5935  	}
  5936  	defer googleapi.CloseBody(res)
  5937  	if err := googleapi.CheckResponse(res); err != nil {
  5938  		return nil, gensupport.WrapError(err)
  5939  	}
  5940  	ret := &ExternalAccessRule{
  5941  		ServerResponse: googleapi.ServerResponse{
  5942  			Header:         res.Header,
  5943  			HTTPStatusCode: res.StatusCode,
  5944  		},
  5945  	}
  5946  	target := &ret
  5947  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5948  		return nil, err
  5949  	}
  5950  	return ret, nil
  5951  }
  5952  
  5953  type ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall struct {
  5954  	s            *Service
  5955  	parent       string
  5956  	urlParams_   gensupport.URLParams
  5957  	ifNoneMatch_ string
  5958  	ctx_         context.Context
  5959  	header_      http.Header
  5960  }
  5961  
  5962  // List: Lists `ExternalAccessRule` resources in the specified network policy.
  5963  //
  5964  //   - parent: The resource name of the network policy to query for external
  5965  //     access firewall rules. Resource names are schemeless URIs that follow the
  5966  //     conventions in https://cloud.google.com/apis/design/resource_names. For
  5967  //     example:
  5968  //     `projects/my-project/locations/us-central1/networkPolicies/my-policy`.
  5969  func (r *ProjectsLocationsNetworkPoliciesExternalAccessRulesService) List(parent string) *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall {
  5970  	c := &ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5971  	c.parent = parent
  5972  	return c
  5973  }
  5974  
  5975  // Filter sets the optional parameter "filter": A filter expression that
  5976  // matches resources returned in the response. The expression must specify the
  5977  // field name, a comparison operator, and the value that you want to use for
  5978  // filtering. The value must be a string, a number, or a boolean. The
  5979  // comparison operator must be `=`, `!=`, `>`, or `<`. For example, if you are
  5980  // filtering a list of external access rules, you can exclude the ones named
  5981  // `example-rule` by specifying `name != "example-rule". To filter on multiple
  5982  // expressions, provide each separate expression within parentheses. For
  5983  // example: ``` (name = "example-rule") (createTime >
  5984  // "2021-04-12T08:15:10.40Z") ``` By default, each expression is an `AND`
  5985  // expression. However, you can include `AND` and `OR` expressions explicitly.
  5986  // For example: ``` (name = "example-rule-1") AND (createTime >
  5987  // "2021-04-12T08:15:10.40Z") OR (name = "example-rule-2") ```
  5988  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall) Filter(filter string) *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall {
  5989  	c.urlParams_.Set("filter", filter)
  5990  	return c
  5991  }
  5992  
  5993  // OrderBy sets the optional parameter "orderBy": Sorts list results by a
  5994  // certain order. By default, returned results are ordered by `name` in
  5995  // ascending order. You can also sort results in descending order based on the
  5996  // `name` value using `orderBy="name desc". Currently, only ordering by `name`
  5997  // is supported.
  5998  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall) OrderBy(orderBy string) *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall {
  5999  	c.urlParams_.Set("orderBy", orderBy)
  6000  	return c
  6001  }
  6002  
  6003  // PageSize sets the optional parameter "pageSize": The maximum number of
  6004  // external access rules to return in one page. The service may return fewer
  6005  // than this value. The maximum value is coerced to 1000. The default value of
  6006  // this field is 500.
  6007  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall) PageSize(pageSize int64) *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall {
  6008  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  6009  	return c
  6010  }
  6011  
  6012  // PageToken sets the optional parameter "pageToken": A page token, received
  6013  // from a previous `ListExternalAccessRulesRequest` call. Provide this to
  6014  // retrieve the subsequent page. When paginating, all other parameters provided
  6015  // to `ListExternalAccessRulesRequest` must match the call that provided the
  6016  // page token.
  6017  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall) PageToken(pageToken string) *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall {
  6018  	c.urlParams_.Set("pageToken", pageToken)
  6019  	return c
  6020  }
  6021  
  6022  // Fields allows partial responses to be retrieved. See
  6023  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6024  // details.
  6025  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall {
  6026  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6027  	return c
  6028  }
  6029  
  6030  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6031  // object's ETag matches the given value. This is useful for getting updates
  6032  // only after the object has changed since the last request.
  6033  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall {
  6034  	c.ifNoneMatch_ = entityTag
  6035  	return c
  6036  }
  6037  
  6038  // Context sets the context to be used in this call's Do method.
  6039  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall) Context(ctx context.Context) *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall {
  6040  	c.ctx_ = ctx
  6041  	return c
  6042  }
  6043  
  6044  // Header returns a http.Header that can be modified by the caller to add
  6045  // headers to the request.
  6046  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall) Header() http.Header {
  6047  	if c.header_ == nil {
  6048  		c.header_ = make(http.Header)
  6049  	}
  6050  	return c.header_
  6051  }
  6052  
  6053  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall) doRequest(alt string) (*http.Response, error) {
  6054  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6055  	if c.ifNoneMatch_ != "" {
  6056  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6057  	}
  6058  	var body io.Reader = nil
  6059  	c.urlParams_.Set("alt", alt)
  6060  	c.urlParams_.Set("prettyPrint", "false")
  6061  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/externalAccessRules")
  6062  	urls += "?" + c.urlParams_.Encode()
  6063  	req, err := http.NewRequest("GET", urls, body)
  6064  	if err != nil {
  6065  		return nil, err
  6066  	}
  6067  	req.Header = reqHeaders
  6068  	googleapi.Expand(req.URL, map[string]string{
  6069  		"parent": c.parent,
  6070  	})
  6071  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6072  }
  6073  
  6074  // Do executes the "vmwareengine.projects.locations.networkPolicies.externalAccessRules.list" call.
  6075  // Any non-2xx status code is an error. Response headers are in either
  6076  // *ListExternalAccessRulesResponse.ServerResponse.Header or (if a response was
  6077  // returned at all) in error.(*googleapi.Error).Header. Use
  6078  // googleapi.IsNotModified to check whether the returned error was because
  6079  // http.StatusNotModified was returned.
  6080  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall) Do(opts ...googleapi.CallOption) (*ListExternalAccessRulesResponse, error) {
  6081  	gensupport.SetOptions(c.urlParams_, opts...)
  6082  	res, err := c.doRequest("json")
  6083  	if res != nil && res.StatusCode == http.StatusNotModified {
  6084  		if res.Body != nil {
  6085  			res.Body.Close()
  6086  		}
  6087  		return nil, gensupport.WrapError(&googleapi.Error{
  6088  			Code:   res.StatusCode,
  6089  			Header: res.Header,
  6090  		})
  6091  	}
  6092  	if err != nil {
  6093  		return nil, err
  6094  	}
  6095  	defer googleapi.CloseBody(res)
  6096  	if err := googleapi.CheckResponse(res); err != nil {
  6097  		return nil, gensupport.WrapError(err)
  6098  	}
  6099  	ret := &ListExternalAccessRulesResponse{
  6100  		ServerResponse: googleapi.ServerResponse{
  6101  			Header:         res.Header,
  6102  			HTTPStatusCode: res.StatusCode,
  6103  		},
  6104  	}
  6105  	target := &ret
  6106  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6107  		return nil, err
  6108  	}
  6109  	return ret, nil
  6110  }
  6111  
  6112  // Pages invokes f for each page of results.
  6113  // A non-nil error returned from f will halt the iteration.
  6114  // The provided context supersedes any context provided to the Context method.
  6115  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesListCall) Pages(ctx context.Context, f func(*ListExternalAccessRulesResponse) error) error {
  6116  	c.ctx_ = ctx
  6117  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  6118  	for {
  6119  		x, err := c.Do()
  6120  		if err != nil {
  6121  			return err
  6122  		}
  6123  		if err := f(x); err != nil {
  6124  			return err
  6125  		}
  6126  		if x.NextPageToken == "" {
  6127  			return nil
  6128  		}
  6129  		c.PageToken(x.NextPageToken)
  6130  	}
  6131  }
  6132  
  6133  type ProjectsLocationsNetworkPoliciesExternalAccessRulesPatchCall struct {
  6134  	s                  *Service
  6135  	name               string
  6136  	externalaccessrule *ExternalAccessRule
  6137  	urlParams_         gensupport.URLParams
  6138  	ctx_               context.Context
  6139  	header_            http.Header
  6140  }
  6141  
  6142  // Patch: Updates the parameters of a single external access rule. Only fields
  6143  // specified in `update_mask` are applied.
  6144  //
  6145  //   - name: Output only. The resource name of this external access rule.
  6146  //     Resource names are schemeless URIs that follow the conventions in
  6147  //     https://cloud.google.com/apis/design/resource_names. For example:
  6148  //     `projects/my-project/locations/us-central1/networkPolicies/my-policy/extern
  6149  //     alAccessRules/my-rule`.
  6150  func (r *ProjectsLocationsNetworkPoliciesExternalAccessRulesService) Patch(name string, externalaccessrule *ExternalAccessRule) *ProjectsLocationsNetworkPoliciesExternalAccessRulesPatchCall {
  6151  	c := &ProjectsLocationsNetworkPoliciesExternalAccessRulesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6152  	c.name = name
  6153  	c.externalaccessrule = externalaccessrule
  6154  	return c
  6155  }
  6156  
  6157  // RequestId sets the optional parameter "requestId": A request ID to identify
  6158  // requests. Specify a unique request ID so that if you must retry your
  6159  // request, the server will know to ignore the request if it has already been
  6160  // completed. The server guarantees that a request doesn't result in creation
  6161  // of duplicate commitments for at least 60 minutes. For example, consider a
  6162  // situation where you make an initial request and the request times out. If
  6163  // you make the request again with the same request ID, the server can check if
  6164  // the original operation with the same request ID was received, and if so,
  6165  // will ignore the second request. This prevents clients from accidentally
  6166  // creating duplicate commitments. The request ID must be a valid UUID with the
  6167  // exception that zero UUID is not supported
  6168  // (00000000-0000-0000-0000-000000000000).
  6169  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesPatchCall) RequestId(requestId string) *ProjectsLocationsNetworkPoliciesExternalAccessRulesPatchCall {
  6170  	c.urlParams_.Set("requestId", requestId)
  6171  	return c
  6172  }
  6173  
  6174  // UpdateMask sets the optional parameter "updateMask": Required. Field mask is
  6175  // used to specify the fields to be overwritten in the `ExternalAccessRule`
  6176  // resource by the update. The fields specified in the `update_mask` are
  6177  // relative to the resource, not the full request. A field will be overwritten
  6178  // if it is in the mask. If the user does not provide a mask then all fields
  6179  // will be overwritten.
  6180  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsNetworkPoliciesExternalAccessRulesPatchCall {
  6181  	c.urlParams_.Set("updateMask", updateMask)
  6182  	return c
  6183  }
  6184  
  6185  // Fields allows partial responses to be retrieved. See
  6186  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6187  // details.
  6188  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsNetworkPoliciesExternalAccessRulesPatchCall {
  6189  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6190  	return c
  6191  }
  6192  
  6193  // Context sets the context to be used in this call's Do method.
  6194  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesPatchCall) Context(ctx context.Context) *ProjectsLocationsNetworkPoliciesExternalAccessRulesPatchCall {
  6195  	c.ctx_ = ctx
  6196  	return c
  6197  }
  6198  
  6199  // Header returns a http.Header that can be modified by the caller to add
  6200  // headers to the request.
  6201  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesPatchCall) Header() http.Header {
  6202  	if c.header_ == nil {
  6203  		c.header_ = make(http.Header)
  6204  	}
  6205  	return c.header_
  6206  }
  6207  
  6208  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesPatchCall) doRequest(alt string) (*http.Response, error) {
  6209  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6210  	var body io.Reader = nil
  6211  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.externalaccessrule)
  6212  	if err != nil {
  6213  		return nil, err
  6214  	}
  6215  	c.urlParams_.Set("alt", alt)
  6216  	c.urlParams_.Set("prettyPrint", "false")
  6217  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  6218  	urls += "?" + c.urlParams_.Encode()
  6219  	req, err := http.NewRequest("PATCH", urls, body)
  6220  	if err != nil {
  6221  		return nil, err
  6222  	}
  6223  	req.Header = reqHeaders
  6224  	googleapi.Expand(req.URL, map[string]string{
  6225  		"name": c.name,
  6226  	})
  6227  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6228  }
  6229  
  6230  // Do executes the "vmwareengine.projects.locations.networkPolicies.externalAccessRules.patch" call.
  6231  // Any non-2xx status code is an error. Response headers are in either
  6232  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  6233  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6234  // whether the returned error was because http.StatusNotModified was returned.
  6235  func (c *ProjectsLocationsNetworkPoliciesExternalAccessRulesPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  6236  	gensupport.SetOptions(c.urlParams_, opts...)
  6237  	res, err := c.doRequest("json")
  6238  	if res != nil && res.StatusCode == http.StatusNotModified {
  6239  		if res.Body != nil {
  6240  			res.Body.Close()
  6241  		}
  6242  		return nil, gensupport.WrapError(&googleapi.Error{
  6243  			Code:   res.StatusCode,
  6244  			Header: res.Header,
  6245  		})
  6246  	}
  6247  	if err != nil {
  6248  		return nil, err
  6249  	}
  6250  	defer googleapi.CloseBody(res)
  6251  	if err := googleapi.CheckResponse(res); err != nil {
  6252  		return nil, gensupport.WrapError(err)
  6253  	}
  6254  	ret := &Operation{
  6255  		ServerResponse: googleapi.ServerResponse{
  6256  			Header:         res.Header,
  6257  			HTTPStatusCode: res.StatusCode,
  6258  		},
  6259  	}
  6260  	target := &ret
  6261  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6262  		return nil, err
  6263  	}
  6264  	return ret, nil
  6265  }
  6266  
  6267  type ProjectsLocationsNodeTypesGetCall struct {
  6268  	s            *Service
  6269  	name         string
  6270  	urlParams_   gensupport.URLParams
  6271  	ifNoneMatch_ string
  6272  	ctx_         context.Context
  6273  	header_      http.Header
  6274  }
  6275  
  6276  // Get: Gets details of a single `NodeType`.
  6277  //
  6278  //   - name: The resource name of the node type to retrieve. Resource names are
  6279  //     schemeless URIs that follow the conventions in
  6280  //     https://cloud.google.com/apis/design/resource_names. For example:
  6281  //     `projects/my-proj/locations/us-central1-a/nodeTypes/standard-72`.
  6282  func (r *ProjectsLocationsNodeTypesService) Get(name string) *ProjectsLocationsNodeTypesGetCall {
  6283  	c := &ProjectsLocationsNodeTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6284  	c.name = name
  6285  	return c
  6286  }
  6287  
  6288  // Fields allows partial responses to be retrieved. See
  6289  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6290  // details.
  6291  func (c *ProjectsLocationsNodeTypesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsNodeTypesGetCall {
  6292  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6293  	return c
  6294  }
  6295  
  6296  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6297  // object's ETag matches the given value. This is useful for getting updates
  6298  // only after the object has changed since the last request.
  6299  func (c *ProjectsLocationsNodeTypesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsNodeTypesGetCall {
  6300  	c.ifNoneMatch_ = entityTag
  6301  	return c
  6302  }
  6303  
  6304  // Context sets the context to be used in this call's Do method.
  6305  func (c *ProjectsLocationsNodeTypesGetCall) Context(ctx context.Context) *ProjectsLocationsNodeTypesGetCall {
  6306  	c.ctx_ = ctx
  6307  	return c
  6308  }
  6309  
  6310  // Header returns a http.Header that can be modified by the caller to add
  6311  // headers to the request.
  6312  func (c *ProjectsLocationsNodeTypesGetCall) Header() http.Header {
  6313  	if c.header_ == nil {
  6314  		c.header_ = make(http.Header)
  6315  	}
  6316  	return c.header_
  6317  }
  6318  
  6319  func (c *ProjectsLocationsNodeTypesGetCall) doRequest(alt string) (*http.Response, error) {
  6320  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6321  	if c.ifNoneMatch_ != "" {
  6322  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6323  	}
  6324  	var body io.Reader = nil
  6325  	c.urlParams_.Set("alt", alt)
  6326  	c.urlParams_.Set("prettyPrint", "false")
  6327  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  6328  	urls += "?" + c.urlParams_.Encode()
  6329  	req, err := http.NewRequest("GET", urls, body)
  6330  	if err != nil {
  6331  		return nil, err
  6332  	}
  6333  	req.Header = reqHeaders
  6334  	googleapi.Expand(req.URL, map[string]string{
  6335  		"name": c.name,
  6336  	})
  6337  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6338  }
  6339  
  6340  // Do executes the "vmwareengine.projects.locations.nodeTypes.get" call.
  6341  // Any non-2xx status code is an error. Response headers are in either
  6342  // *NodeType.ServerResponse.Header or (if a response was returned at all) in
  6343  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6344  // whether the returned error was because http.StatusNotModified was returned.
  6345  func (c *ProjectsLocationsNodeTypesGetCall) Do(opts ...googleapi.CallOption) (*NodeType, error) {
  6346  	gensupport.SetOptions(c.urlParams_, opts...)
  6347  	res, err := c.doRequest("json")
  6348  	if res != nil && res.StatusCode == http.StatusNotModified {
  6349  		if res.Body != nil {
  6350  			res.Body.Close()
  6351  		}
  6352  		return nil, gensupport.WrapError(&googleapi.Error{
  6353  			Code:   res.StatusCode,
  6354  			Header: res.Header,
  6355  		})
  6356  	}
  6357  	if err != nil {
  6358  		return nil, err
  6359  	}
  6360  	defer googleapi.CloseBody(res)
  6361  	if err := googleapi.CheckResponse(res); err != nil {
  6362  		return nil, gensupport.WrapError(err)
  6363  	}
  6364  	ret := &NodeType{
  6365  		ServerResponse: googleapi.ServerResponse{
  6366  			Header:         res.Header,
  6367  			HTTPStatusCode: res.StatusCode,
  6368  		},
  6369  	}
  6370  	target := &ret
  6371  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6372  		return nil, err
  6373  	}
  6374  	return ret, nil
  6375  }
  6376  
  6377  type ProjectsLocationsNodeTypesListCall struct {
  6378  	s            *Service
  6379  	parent       string
  6380  	urlParams_   gensupport.URLParams
  6381  	ifNoneMatch_ string
  6382  	ctx_         context.Context
  6383  	header_      http.Header
  6384  }
  6385  
  6386  // List: Lists node types
  6387  //
  6388  //   - parent: The resource name of the location to be queried for node types.
  6389  //     Resource names are schemeless URIs that follow the conventions in
  6390  //     https://cloud.google.com/apis/design/resource_names. For example:
  6391  //     `projects/my-project/locations/us-central1-a`.
  6392  func (r *ProjectsLocationsNodeTypesService) List(parent string) *ProjectsLocationsNodeTypesListCall {
  6393  	c := &ProjectsLocationsNodeTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6394  	c.parent = parent
  6395  	return c
  6396  }
  6397  
  6398  // Filter sets the optional parameter "filter": A filter expression that
  6399  // matches resources returned in the response. The expression must specify the
  6400  // field name, a comparison operator, and the value that you want to use for
  6401  // filtering. The value must be a string, a number, or a boolean. The
  6402  // comparison operator must be `=`, `!=`, `>`, or `<`. For example, if you are
  6403  // filtering a list of node types, you can exclude the ones named `standard-72`
  6404  // by specifying `name != "standard-72". To filter on multiple expressions,
  6405  // provide each separate expression within parentheses. For example: ``` (name
  6406  // = "standard-72") (virtual_cpu_count > 2) ``` By default, each expression is
  6407  // an `AND` expression. However, you can include `AND` and `OR` expressions
  6408  // explicitly. For example: ``` (name = "standard-96") AND (virtual_cpu_count >
  6409  // 2) OR (name = "standard-72") ```
  6410  func (c *ProjectsLocationsNodeTypesListCall) Filter(filter string) *ProjectsLocationsNodeTypesListCall {
  6411  	c.urlParams_.Set("filter", filter)
  6412  	return c
  6413  }
  6414  
  6415  // PageSize sets the optional parameter "pageSize": The maximum number of node
  6416  // types to return in one page. The service may return fewer than this value.
  6417  // The maximum value is coerced to 1000. The default value of this field is
  6418  // 500.
  6419  func (c *ProjectsLocationsNodeTypesListCall) PageSize(pageSize int64) *ProjectsLocationsNodeTypesListCall {
  6420  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  6421  	return c
  6422  }
  6423  
  6424  // PageToken sets the optional parameter "pageToken": A page token, received
  6425  // from a previous `ListNodeTypes` call. Provide this to retrieve the
  6426  // subsequent page. When paginating, all other parameters provided to
  6427  // `ListNodeTypes` must match the call that provided the page token.
  6428  func (c *ProjectsLocationsNodeTypesListCall) PageToken(pageToken string) *ProjectsLocationsNodeTypesListCall {
  6429  	c.urlParams_.Set("pageToken", pageToken)
  6430  	return c
  6431  }
  6432  
  6433  // Fields allows partial responses to be retrieved. See
  6434  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6435  // details.
  6436  func (c *ProjectsLocationsNodeTypesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsNodeTypesListCall {
  6437  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6438  	return c
  6439  }
  6440  
  6441  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6442  // object's ETag matches the given value. This is useful for getting updates
  6443  // only after the object has changed since the last request.
  6444  func (c *ProjectsLocationsNodeTypesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsNodeTypesListCall {
  6445  	c.ifNoneMatch_ = entityTag
  6446  	return c
  6447  }
  6448  
  6449  // Context sets the context to be used in this call's Do method.
  6450  func (c *ProjectsLocationsNodeTypesListCall) Context(ctx context.Context) *ProjectsLocationsNodeTypesListCall {
  6451  	c.ctx_ = ctx
  6452  	return c
  6453  }
  6454  
  6455  // Header returns a http.Header that can be modified by the caller to add
  6456  // headers to the request.
  6457  func (c *ProjectsLocationsNodeTypesListCall) Header() http.Header {
  6458  	if c.header_ == nil {
  6459  		c.header_ = make(http.Header)
  6460  	}
  6461  	return c.header_
  6462  }
  6463  
  6464  func (c *ProjectsLocationsNodeTypesListCall) doRequest(alt string) (*http.Response, error) {
  6465  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6466  	if c.ifNoneMatch_ != "" {
  6467  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6468  	}
  6469  	var body io.Reader = nil
  6470  	c.urlParams_.Set("alt", alt)
  6471  	c.urlParams_.Set("prettyPrint", "false")
  6472  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/nodeTypes")
  6473  	urls += "?" + c.urlParams_.Encode()
  6474  	req, err := http.NewRequest("GET", urls, body)
  6475  	if err != nil {
  6476  		return nil, err
  6477  	}
  6478  	req.Header = reqHeaders
  6479  	googleapi.Expand(req.URL, map[string]string{
  6480  		"parent": c.parent,
  6481  	})
  6482  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6483  }
  6484  
  6485  // Do executes the "vmwareengine.projects.locations.nodeTypes.list" call.
  6486  // Any non-2xx status code is an error. Response headers are in either
  6487  // *ListNodeTypesResponse.ServerResponse.Header or (if a response was returned
  6488  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  6489  // check whether the returned error was because http.StatusNotModified was
  6490  // returned.
  6491  func (c *ProjectsLocationsNodeTypesListCall) Do(opts ...googleapi.CallOption) (*ListNodeTypesResponse, error) {
  6492  	gensupport.SetOptions(c.urlParams_, opts...)
  6493  	res, err := c.doRequest("json")
  6494  	if res != nil && res.StatusCode == http.StatusNotModified {
  6495  		if res.Body != nil {
  6496  			res.Body.Close()
  6497  		}
  6498  		return nil, gensupport.WrapError(&googleapi.Error{
  6499  			Code:   res.StatusCode,
  6500  			Header: res.Header,
  6501  		})
  6502  	}
  6503  	if err != nil {
  6504  		return nil, err
  6505  	}
  6506  	defer googleapi.CloseBody(res)
  6507  	if err := googleapi.CheckResponse(res); err != nil {
  6508  		return nil, gensupport.WrapError(err)
  6509  	}
  6510  	ret := &ListNodeTypesResponse{
  6511  		ServerResponse: googleapi.ServerResponse{
  6512  			Header:         res.Header,
  6513  			HTTPStatusCode: res.StatusCode,
  6514  		},
  6515  	}
  6516  	target := &ret
  6517  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6518  		return nil, err
  6519  	}
  6520  	return ret, nil
  6521  }
  6522  
  6523  // Pages invokes f for each page of results.
  6524  // A non-nil error returned from f will halt the iteration.
  6525  // The provided context supersedes any context provided to the Context method.
  6526  func (c *ProjectsLocationsNodeTypesListCall) Pages(ctx context.Context, f func(*ListNodeTypesResponse) error) error {
  6527  	c.ctx_ = ctx
  6528  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  6529  	for {
  6530  		x, err := c.Do()
  6531  		if err != nil {
  6532  			return err
  6533  		}
  6534  		if err := f(x); err != nil {
  6535  			return err
  6536  		}
  6537  		if x.NextPageToken == "" {
  6538  			return nil
  6539  		}
  6540  		c.PageToken(x.NextPageToken)
  6541  	}
  6542  }
  6543  
  6544  type ProjectsLocationsOperationsDeleteCall struct {
  6545  	s          *Service
  6546  	name       string
  6547  	urlParams_ gensupport.URLParams
  6548  	ctx_       context.Context
  6549  	header_    http.Header
  6550  }
  6551  
  6552  // Delete: Deletes a long-running operation. This method indicates that the
  6553  // client is no longer interested in the operation result. It does not cancel
  6554  // the operation. If the server doesn't support this method, it returns
  6555  // `google.rpc.Code.UNIMPLEMENTED`.
  6556  //
  6557  // - name: The name of the operation resource to be deleted.
  6558  func (r *ProjectsLocationsOperationsService) Delete(name string) *ProjectsLocationsOperationsDeleteCall {
  6559  	c := &ProjectsLocationsOperationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6560  	c.name = name
  6561  	return c
  6562  }
  6563  
  6564  // Fields allows partial responses to be retrieved. See
  6565  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6566  // details.
  6567  func (c *ProjectsLocationsOperationsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsDeleteCall {
  6568  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6569  	return c
  6570  }
  6571  
  6572  // Context sets the context to be used in this call's Do method.
  6573  func (c *ProjectsLocationsOperationsDeleteCall) Context(ctx context.Context) *ProjectsLocationsOperationsDeleteCall {
  6574  	c.ctx_ = ctx
  6575  	return c
  6576  }
  6577  
  6578  // Header returns a http.Header that can be modified by the caller to add
  6579  // headers to the request.
  6580  func (c *ProjectsLocationsOperationsDeleteCall) Header() http.Header {
  6581  	if c.header_ == nil {
  6582  		c.header_ = make(http.Header)
  6583  	}
  6584  	return c.header_
  6585  }
  6586  
  6587  func (c *ProjectsLocationsOperationsDeleteCall) doRequest(alt string) (*http.Response, error) {
  6588  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6589  	var body io.Reader = nil
  6590  	c.urlParams_.Set("alt", alt)
  6591  	c.urlParams_.Set("prettyPrint", "false")
  6592  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  6593  	urls += "?" + c.urlParams_.Encode()
  6594  	req, err := http.NewRequest("DELETE", urls, body)
  6595  	if err != nil {
  6596  		return nil, err
  6597  	}
  6598  	req.Header = reqHeaders
  6599  	googleapi.Expand(req.URL, map[string]string{
  6600  		"name": c.name,
  6601  	})
  6602  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6603  }
  6604  
  6605  // Do executes the "vmwareengine.projects.locations.operations.delete" call.
  6606  // Any non-2xx status code is an error. Response headers are in either
  6607  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  6608  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6609  // whether the returned error was because http.StatusNotModified was returned.
  6610  func (c *ProjectsLocationsOperationsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  6611  	gensupport.SetOptions(c.urlParams_, opts...)
  6612  	res, err := c.doRequest("json")
  6613  	if res != nil && res.StatusCode == http.StatusNotModified {
  6614  		if res.Body != nil {
  6615  			res.Body.Close()
  6616  		}
  6617  		return nil, gensupport.WrapError(&googleapi.Error{
  6618  			Code:   res.StatusCode,
  6619  			Header: res.Header,
  6620  		})
  6621  	}
  6622  	if err != nil {
  6623  		return nil, err
  6624  	}
  6625  	defer googleapi.CloseBody(res)
  6626  	if err := googleapi.CheckResponse(res); err != nil {
  6627  		return nil, gensupport.WrapError(err)
  6628  	}
  6629  	ret := &Empty{
  6630  		ServerResponse: googleapi.ServerResponse{
  6631  			Header:         res.Header,
  6632  			HTTPStatusCode: res.StatusCode,
  6633  		},
  6634  	}
  6635  	target := &ret
  6636  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6637  		return nil, err
  6638  	}
  6639  	return ret, nil
  6640  }
  6641  
  6642  type ProjectsLocationsOperationsGetCall struct {
  6643  	s            *Service
  6644  	name         string
  6645  	urlParams_   gensupport.URLParams
  6646  	ifNoneMatch_ string
  6647  	ctx_         context.Context
  6648  	header_      http.Header
  6649  }
  6650  
  6651  // Get: Gets the latest state of a long-running operation. Clients can use this
  6652  // method to poll the operation result at intervals as recommended by the API
  6653  // service.
  6654  //
  6655  // - name: The name of the operation resource.
  6656  func (r *ProjectsLocationsOperationsService) Get(name string) *ProjectsLocationsOperationsGetCall {
  6657  	c := &ProjectsLocationsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6658  	c.name = name
  6659  	return c
  6660  }
  6661  
  6662  // Fields allows partial responses to be retrieved. See
  6663  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6664  // details.
  6665  func (c *ProjectsLocationsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsGetCall {
  6666  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6667  	return c
  6668  }
  6669  
  6670  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6671  // object's ETag matches the given value. This is useful for getting updates
  6672  // only after the object has changed since the last request.
  6673  func (c *ProjectsLocationsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsGetCall {
  6674  	c.ifNoneMatch_ = entityTag
  6675  	return c
  6676  }
  6677  
  6678  // Context sets the context to be used in this call's Do method.
  6679  func (c *ProjectsLocationsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOperationsGetCall {
  6680  	c.ctx_ = ctx
  6681  	return c
  6682  }
  6683  
  6684  // Header returns a http.Header that can be modified by the caller to add
  6685  // headers to the request.
  6686  func (c *ProjectsLocationsOperationsGetCall) Header() http.Header {
  6687  	if c.header_ == nil {
  6688  		c.header_ = make(http.Header)
  6689  	}
  6690  	return c.header_
  6691  }
  6692  
  6693  func (c *ProjectsLocationsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
  6694  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6695  	if c.ifNoneMatch_ != "" {
  6696  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6697  	}
  6698  	var body io.Reader = nil
  6699  	c.urlParams_.Set("alt", alt)
  6700  	c.urlParams_.Set("prettyPrint", "false")
  6701  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  6702  	urls += "?" + c.urlParams_.Encode()
  6703  	req, err := http.NewRequest("GET", urls, body)
  6704  	if err != nil {
  6705  		return nil, err
  6706  	}
  6707  	req.Header = reqHeaders
  6708  	googleapi.Expand(req.URL, map[string]string{
  6709  		"name": c.name,
  6710  	})
  6711  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6712  }
  6713  
  6714  // Do executes the "vmwareengine.projects.locations.operations.get" call.
  6715  // Any non-2xx status code is an error. Response headers are in either
  6716  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  6717  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  6718  // whether the returned error was because http.StatusNotModified was returned.
  6719  func (c *ProjectsLocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  6720  	gensupport.SetOptions(c.urlParams_, opts...)
  6721  	res, err := c.doRequest("json")
  6722  	if res != nil && res.StatusCode == http.StatusNotModified {
  6723  		if res.Body != nil {
  6724  			res.Body.Close()
  6725  		}
  6726  		return nil, gensupport.WrapError(&googleapi.Error{
  6727  			Code:   res.StatusCode,
  6728  			Header: res.Header,
  6729  		})
  6730  	}
  6731  	if err != nil {
  6732  		return nil, err
  6733  	}
  6734  	defer googleapi.CloseBody(res)
  6735  	if err := googleapi.CheckResponse(res); err != nil {
  6736  		return nil, gensupport.WrapError(err)
  6737  	}
  6738  	ret := &Operation{
  6739  		ServerResponse: googleapi.ServerResponse{
  6740  			Header:         res.Header,
  6741  			HTTPStatusCode: res.StatusCode,
  6742  		},
  6743  	}
  6744  	target := &ret
  6745  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6746  		return nil, err
  6747  	}
  6748  	return ret, nil
  6749  }
  6750  
  6751  type ProjectsLocationsOperationsListCall struct {
  6752  	s            *Service
  6753  	name         string
  6754  	urlParams_   gensupport.URLParams
  6755  	ifNoneMatch_ string
  6756  	ctx_         context.Context
  6757  	header_      http.Header
  6758  }
  6759  
  6760  // List: Lists operations that match the specified filter in the request. If
  6761  // the server doesn't support this method, it returns `UNIMPLEMENTED`.
  6762  //
  6763  // - name: The name of the operation's parent resource.
  6764  func (r *ProjectsLocationsOperationsService) List(name string) *ProjectsLocationsOperationsListCall {
  6765  	c := &ProjectsLocationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6766  	c.name = name
  6767  	return c
  6768  }
  6769  
  6770  // Filter sets the optional parameter "filter": The standard list filter.
  6771  func (c *ProjectsLocationsOperationsListCall) Filter(filter string) *ProjectsLocationsOperationsListCall {
  6772  	c.urlParams_.Set("filter", filter)
  6773  	return c
  6774  }
  6775  
  6776  // PageSize sets the optional parameter "pageSize": The standard list page
  6777  // size.
  6778  func (c *ProjectsLocationsOperationsListCall) PageSize(pageSize int64) *ProjectsLocationsOperationsListCall {
  6779  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  6780  	return c
  6781  }
  6782  
  6783  // PageToken sets the optional parameter "pageToken": The standard list page
  6784  // token.
  6785  func (c *ProjectsLocationsOperationsListCall) PageToken(pageToken string) *ProjectsLocationsOperationsListCall {
  6786  	c.urlParams_.Set("pageToken", pageToken)
  6787  	return c
  6788  }
  6789  
  6790  // Fields allows partial responses to be retrieved. See
  6791  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6792  // details.
  6793  func (c *ProjectsLocationsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsListCall {
  6794  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6795  	return c
  6796  }
  6797  
  6798  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  6799  // object's ETag matches the given value. This is useful for getting updates
  6800  // only after the object has changed since the last request.
  6801  func (c *ProjectsLocationsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsListCall {
  6802  	c.ifNoneMatch_ = entityTag
  6803  	return c
  6804  }
  6805  
  6806  // Context sets the context to be used in this call's Do method.
  6807  func (c *ProjectsLocationsOperationsListCall) Context(ctx context.Context) *ProjectsLocationsOperationsListCall {
  6808  	c.ctx_ = ctx
  6809  	return c
  6810  }
  6811  
  6812  // Header returns a http.Header that can be modified by the caller to add
  6813  // headers to the request.
  6814  func (c *ProjectsLocationsOperationsListCall) Header() http.Header {
  6815  	if c.header_ == nil {
  6816  		c.header_ = make(http.Header)
  6817  	}
  6818  	return c.header_
  6819  }
  6820  
  6821  func (c *ProjectsLocationsOperationsListCall) doRequest(alt string) (*http.Response, error) {
  6822  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  6823  	if c.ifNoneMatch_ != "" {
  6824  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  6825  	}
  6826  	var body io.Reader = nil
  6827  	c.urlParams_.Set("alt", alt)
  6828  	c.urlParams_.Set("prettyPrint", "false")
  6829  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}/operations")
  6830  	urls += "?" + c.urlParams_.Encode()
  6831  	req, err := http.NewRequest("GET", urls, body)
  6832  	if err != nil {
  6833  		return nil, err
  6834  	}
  6835  	req.Header = reqHeaders
  6836  	googleapi.Expand(req.URL, map[string]string{
  6837  		"name": c.name,
  6838  	})
  6839  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6840  }
  6841  
  6842  // Do executes the "vmwareengine.projects.locations.operations.list" call.
  6843  // Any non-2xx status code is an error. Response headers are in either
  6844  // *ListOperationsResponse.ServerResponse.Header or (if a response was returned
  6845  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  6846  // check whether the returned error was because http.StatusNotModified was
  6847  // returned.
  6848  func (c *ProjectsLocationsOperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) {
  6849  	gensupport.SetOptions(c.urlParams_, opts...)
  6850  	res, err := c.doRequest("json")
  6851  	if res != nil && res.StatusCode == http.StatusNotModified {
  6852  		if res.Body != nil {
  6853  			res.Body.Close()
  6854  		}
  6855  		return nil, gensupport.WrapError(&googleapi.Error{
  6856  			Code:   res.StatusCode,
  6857  			Header: res.Header,
  6858  		})
  6859  	}
  6860  	if err != nil {
  6861  		return nil, err
  6862  	}
  6863  	defer googleapi.CloseBody(res)
  6864  	if err := googleapi.CheckResponse(res); err != nil {
  6865  		return nil, gensupport.WrapError(err)
  6866  	}
  6867  	ret := &ListOperationsResponse{
  6868  		ServerResponse: googleapi.ServerResponse{
  6869  			Header:         res.Header,
  6870  			HTTPStatusCode: res.StatusCode,
  6871  		},
  6872  	}
  6873  	target := &ret
  6874  	if err := gensupport.DecodeResponse(target, res); err != nil {
  6875  		return nil, err
  6876  	}
  6877  	return ret, nil
  6878  }
  6879  
  6880  // Pages invokes f for each page of results.
  6881  // A non-nil error returned from f will halt the iteration.
  6882  // The provided context supersedes any context provided to the Context method.
  6883  func (c *ProjectsLocationsOperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error {
  6884  	c.ctx_ = ctx
  6885  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  6886  	for {
  6887  		x, err := c.Do()
  6888  		if err != nil {
  6889  			return err
  6890  		}
  6891  		if err := f(x); err != nil {
  6892  			return err
  6893  		}
  6894  		if x.NextPageToken == "" {
  6895  			return nil
  6896  		}
  6897  		c.PageToken(x.NextPageToken)
  6898  	}
  6899  }
  6900  
  6901  type ProjectsLocationsPrivateCloudsCreateCall struct {
  6902  	s            *Service
  6903  	parent       string
  6904  	privatecloud *PrivateCloud
  6905  	urlParams_   gensupport.URLParams
  6906  	ctx_         context.Context
  6907  	header_      http.Header
  6908  }
  6909  
  6910  // Create: Creates a new `PrivateCloud` resource in a given project and
  6911  // location. Private clouds of type `STANDARD` and `TIME_LIMITED` are zonal
  6912  // resources, `STRETCHED` private clouds are regional. Creating a private cloud
  6913  // also creates a management cluster
  6914  // (https://cloud.google.com/vmware-engine/docs/concepts-vmware-components) for
  6915  // that private cloud.
  6916  //
  6917  //   - parent: The resource name of the location to create the new private cloud
  6918  //     in. Resource names are schemeless URIs that follow the conventions in
  6919  //     https://cloud.google.com/apis/design/resource_names. For example:
  6920  //     `projects/my-project/locations/us-central1-a`.
  6921  func (r *ProjectsLocationsPrivateCloudsService) Create(parent string, privatecloud *PrivateCloud) *ProjectsLocationsPrivateCloudsCreateCall {
  6922  	c := &ProjectsLocationsPrivateCloudsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  6923  	c.parent = parent
  6924  	c.privatecloud = privatecloud
  6925  	return c
  6926  }
  6927  
  6928  // PrivateCloudId sets the optional parameter "privateCloudId": Required. The
  6929  // user-provided identifier of the private cloud to be created. This identifier
  6930  // must be unique among each `PrivateCloud` within the parent and becomes the
  6931  // final token in the name URI. The identifier must meet the following
  6932  // requirements: * Only contains 1-63 alphanumeric characters and hyphens *
  6933  // Begins with an alphabetical character * Ends with a non-hyphen character *
  6934  // Not formatted as a UUID * Complies with RFC 1034
  6935  // (https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
  6936  func (c *ProjectsLocationsPrivateCloudsCreateCall) PrivateCloudId(privateCloudId string) *ProjectsLocationsPrivateCloudsCreateCall {
  6937  	c.urlParams_.Set("privateCloudId", privateCloudId)
  6938  	return c
  6939  }
  6940  
  6941  // RequestId sets the optional parameter "requestId": The request ID must be a
  6942  // valid UUID with the exception that zero UUID is not supported
  6943  // (00000000-0000-0000-0000-000000000000).
  6944  func (c *ProjectsLocationsPrivateCloudsCreateCall) RequestId(requestId string) *ProjectsLocationsPrivateCloudsCreateCall {
  6945  	c.urlParams_.Set("requestId", requestId)
  6946  	return c
  6947  }
  6948  
  6949  // ValidateOnly sets the optional parameter "validateOnly": True if you want
  6950  // the request to be validated and not executed; false otherwise.
  6951  func (c *ProjectsLocationsPrivateCloudsCreateCall) ValidateOnly(validateOnly bool) *ProjectsLocationsPrivateCloudsCreateCall {
  6952  	c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly))
  6953  	return c
  6954  }
  6955  
  6956  // Fields allows partial responses to be retrieved. See
  6957  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  6958  // details.
  6959  func (c *ProjectsLocationsPrivateCloudsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsCreateCall {
  6960  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  6961  	return c
  6962  }
  6963  
  6964  // Context sets the context to be used in this call's Do method.
  6965  func (c *ProjectsLocationsPrivateCloudsCreateCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsCreateCall {
  6966  	c.ctx_ = ctx
  6967  	return c
  6968  }
  6969  
  6970  // Header returns a http.Header that can be modified by the caller to add
  6971  // headers to the request.
  6972  func (c *ProjectsLocationsPrivateCloudsCreateCall) Header() http.Header {
  6973  	if c.header_ == nil {
  6974  		c.header_ = make(http.Header)
  6975  	}
  6976  	return c.header_
  6977  }
  6978  
  6979  func (c *ProjectsLocationsPrivateCloudsCreateCall) doRequest(alt string) (*http.Response, error) {
  6980  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  6981  	var body io.Reader = nil
  6982  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.privatecloud)
  6983  	if err != nil {
  6984  		return nil, err
  6985  	}
  6986  	c.urlParams_.Set("alt", alt)
  6987  	c.urlParams_.Set("prettyPrint", "false")
  6988  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/privateClouds")
  6989  	urls += "?" + c.urlParams_.Encode()
  6990  	req, err := http.NewRequest("POST", urls, body)
  6991  	if err != nil {
  6992  		return nil, err
  6993  	}
  6994  	req.Header = reqHeaders
  6995  	googleapi.Expand(req.URL, map[string]string{
  6996  		"parent": c.parent,
  6997  	})
  6998  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  6999  }
  7000  
  7001  // Do executes the "vmwareengine.projects.locations.privateClouds.create" call.
  7002  // Any non-2xx status code is an error. Response headers are in either
  7003  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  7004  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7005  // whether the returned error was because http.StatusNotModified was returned.
  7006  func (c *ProjectsLocationsPrivateCloudsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  7007  	gensupport.SetOptions(c.urlParams_, opts...)
  7008  	res, err := c.doRequest("json")
  7009  	if res != nil && res.StatusCode == http.StatusNotModified {
  7010  		if res.Body != nil {
  7011  			res.Body.Close()
  7012  		}
  7013  		return nil, gensupport.WrapError(&googleapi.Error{
  7014  			Code:   res.StatusCode,
  7015  			Header: res.Header,
  7016  		})
  7017  	}
  7018  	if err != nil {
  7019  		return nil, err
  7020  	}
  7021  	defer googleapi.CloseBody(res)
  7022  	if err := googleapi.CheckResponse(res); err != nil {
  7023  		return nil, gensupport.WrapError(err)
  7024  	}
  7025  	ret := &Operation{
  7026  		ServerResponse: googleapi.ServerResponse{
  7027  			Header:         res.Header,
  7028  			HTTPStatusCode: res.StatusCode,
  7029  		},
  7030  	}
  7031  	target := &ret
  7032  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7033  		return nil, err
  7034  	}
  7035  	return ret, nil
  7036  }
  7037  
  7038  type ProjectsLocationsPrivateCloudsDeleteCall struct {
  7039  	s          *Service
  7040  	name       string
  7041  	urlParams_ gensupport.URLParams
  7042  	ctx_       context.Context
  7043  	header_    http.Header
  7044  }
  7045  
  7046  // Delete: Schedules a `PrivateCloud` resource for deletion. A `PrivateCloud`
  7047  // resource scheduled for deletion has `PrivateCloud.state` set to `DELETED`
  7048  // and `expireTime` set to the time when deletion is final and can no longer be
  7049  // reversed. The delete operation is marked as done as soon as the
  7050  // `PrivateCloud` is successfully scheduled for deletion (this also applies
  7051  // when `delayHours` is set to zero), and the operation is not kept in pending
  7052  // state until `PrivateCloud` is purged. `PrivateCloud` can be restored using
  7053  // `UndeletePrivateCloud` method before the `expireTime` elapses. When
  7054  // `expireTime` is reached, deletion is final and all private cloud resources
  7055  // are irreversibly removed and billing stops. During the final removal
  7056  // process, `PrivateCloud.state` is set to `PURGING`. `PrivateCloud` can be
  7057  // polled using standard `GET` method for the whole period of deletion and
  7058  // purging. It will not be returned only when it is completely purged.
  7059  //
  7060  //   - name: The resource name of the private cloud to delete. Resource names are
  7061  //     schemeless URIs that follow the conventions in
  7062  //     https://cloud.google.com/apis/design/resource_names. For example:
  7063  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud`.
  7064  func (r *ProjectsLocationsPrivateCloudsService) Delete(name string) *ProjectsLocationsPrivateCloudsDeleteCall {
  7065  	c := &ProjectsLocationsPrivateCloudsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7066  	c.name = name
  7067  	return c
  7068  }
  7069  
  7070  // DelayHours sets the optional parameter "delayHours": Time delay of the
  7071  // deletion specified in hours. The default value is `3`. Specifying a non-zero
  7072  // value for this field changes the value of `PrivateCloud.state` to `DELETED`
  7073  // and sets `expire_time` to the planned deletion time. Deletion can be
  7074  // cancelled before `expire_time` elapses using
  7075  // VmwareEngine.UndeletePrivateCloud. Specifying a value of `0` for this field
  7076  // instead begins the deletion process and ceases billing immediately. During
  7077  // the final deletion process, the value of `PrivateCloud.state` becomes
  7078  // `PURGING`.
  7079  func (c *ProjectsLocationsPrivateCloudsDeleteCall) DelayHours(delayHours int64) *ProjectsLocationsPrivateCloudsDeleteCall {
  7080  	c.urlParams_.Set("delayHours", fmt.Sprint(delayHours))
  7081  	return c
  7082  }
  7083  
  7084  // Force sets the optional parameter "force": If set to true, cascade delete is
  7085  // enabled and all children of this private cloud resource are also deleted.
  7086  // When this flag is set to false, the private cloud will not be deleted if
  7087  // there are any children other than the management cluster. The management
  7088  // cluster is always deleted.
  7089  func (c *ProjectsLocationsPrivateCloudsDeleteCall) Force(force bool) *ProjectsLocationsPrivateCloudsDeleteCall {
  7090  	c.urlParams_.Set("force", fmt.Sprint(force))
  7091  	return c
  7092  }
  7093  
  7094  // RequestId sets the optional parameter "requestId": The request ID must be a
  7095  // valid UUID with the exception that zero UUID is not supported
  7096  // (00000000-0000-0000-0000-000000000000).
  7097  func (c *ProjectsLocationsPrivateCloudsDeleteCall) RequestId(requestId string) *ProjectsLocationsPrivateCloudsDeleteCall {
  7098  	c.urlParams_.Set("requestId", requestId)
  7099  	return c
  7100  }
  7101  
  7102  // Fields allows partial responses to be retrieved. See
  7103  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7104  // details.
  7105  func (c *ProjectsLocationsPrivateCloudsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsDeleteCall {
  7106  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7107  	return c
  7108  }
  7109  
  7110  // Context sets the context to be used in this call's Do method.
  7111  func (c *ProjectsLocationsPrivateCloudsDeleteCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsDeleteCall {
  7112  	c.ctx_ = ctx
  7113  	return c
  7114  }
  7115  
  7116  // Header returns a http.Header that can be modified by the caller to add
  7117  // headers to the request.
  7118  func (c *ProjectsLocationsPrivateCloudsDeleteCall) Header() http.Header {
  7119  	if c.header_ == nil {
  7120  		c.header_ = make(http.Header)
  7121  	}
  7122  	return c.header_
  7123  }
  7124  
  7125  func (c *ProjectsLocationsPrivateCloudsDeleteCall) doRequest(alt string) (*http.Response, error) {
  7126  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7127  	var body io.Reader = nil
  7128  	c.urlParams_.Set("alt", alt)
  7129  	c.urlParams_.Set("prettyPrint", "false")
  7130  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  7131  	urls += "?" + c.urlParams_.Encode()
  7132  	req, err := http.NewRequest("DELETE", urls, body)
  7133  	if err != nil {
  7134  		return nil, err
  7135  	}
  7136  	req.Header = reqHeaders
  7137  	googleapi.Expand(req.URL, map[string]string{
  7138  		"name": c.name,
  7139  	})
  7140  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7141  }
  7142  
  7143  // Do executes the "vmwareengine.projects.locations.privateClouds.delete" call.
  7144  // Any non-2xx status code is an error. Response headers are in either
  7145  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  7146  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7147  // whether the returned error was because http.StatusNotModified was returned.
  7148  func (c *ProjectsLocationsPrivateCloudsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  7149  	gensupport.SetOptions(c.urlParams_, opts...)
  7150  	res, err := c.doRequest("json")
  7151  	if res != nil && res.StatusCode == http.StatusNotModified {
  7152  		if res.Body != nil {
  7153  			res.Body.Close()
  7154  		}
  7155  		return nil, gensupport.WrapError(&googleapi.Error{
  7156  			Code:   res.StatusCode,
  7157  			Header: res.Header,
  7158  		})
  7159  	}
  7160  	if err != nil {
  7161  		return nil, err
  7162  	}
  7163  	defer googleapi.CloseBody(res)
  7164  	if err := googleapi.CheckResponse(res); err != nil {
  7165  		return nil, gensupport.WrapError(err)
  7166  	}
  7167  	ret := &Operation{
  7168  		ServerResponse: googleapi.ServerResponse{
  7169  			Header:         res.Header,
  7170  			HTTPStatusCode: res.StatusCode,
  7171  		},
  7172  	}
  7173  	target := &ret
  7174  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7175  		return nil, err
  7176  	}
  7177  	return ret, nil
  7178  }
  7179  
  7180  type ProjectsLocationsPrivateCloudsGetCall struct {
  7181  	s            *Service
  7182  	name         string
  7183  	urlParams_   gensupport.URLParams
  7184  	ifNoneMatch_ string
  7185  	ctx_         context.Context
  7186  	header_      http.Header
  7187  }
  7188  
  7189  // Get: Retrieves a `PrivateCloud` resource by its resource name.
  7190  //
  7191  //   - name: The resource name of the private cloud to retrieve. Resource names
  7192  //     are schemeless URIs that follow the conventions in
  7193  //     https://cloud.google.com/apis/design/resource_names. For example:
  7194  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud`.
  7195  func (r *ProjectsLocationsPrivateCloudsService) Get(name string) *ProjectsLocationsPrivateCloudsGetCall {
  7196  	c := &ProjectsLocationsPrivateCloudsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7197  	c.name = name
  7198  	return c
  7199  }
  7200  
  7201  // Fields allows partial responses to be retrieved. See
  7202  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7203  // details.
  7204  func (c *ProjectsLocationsPrivateCloudsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsGetCall {
  7205  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7206  	return c
  7207  }
  7208  
  7209  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  7210  // object's ETag matches the given value. This is useful for getting updates
  7211  // only after the object has changed since the last request.
  7212  func (c *ProjectsLocationsPrivateCloudsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsGetCall {
  7213  	c.ifNoneMatch_ = entityTag
  7214  	return c
  7215  }
  7216  
  7217  // Context sets the context to be used in this call's Do method.
  7218  func (c *ProjectsLocationsPrivateCloudsGetCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsGetCall {
  7219  	c.ctx_ = ctx
  7220  	return c
  7221  }
  7222  
  7223  // Header returns a http.Header that can be modified by the caller to add
  7224  // headers to the request.
  7225  func (c *ProjectsLocationsPrivateCloudsGetCall) Header() http.Header {
  7226  	if c.header_ == nil {
  7227  		c.header_ = make(http.Header)
  7228  	}
  7229  	return c.header_
  7230  }
  7231  
  7232  func (c *ProjectsLocationsPrivateCloudsGetCall) doRequest(alt string) (*http.Response, error) {
  7233  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7234  	if c.ifNoneMatch_ != "" {
  7235  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7236  	}
  7237  	var body io.Reader = nil
  7238  	c.urlParams_.Set("alt", alt)
  7239  	c.urlParams_.Set("prettyPrint", "false")
  7240  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  7241  	urls += "?" + c.urlParams_.Encode()
  7242  	req, err := http.NewRequest("GET", urls, body)
  7243  	if err != nil {
  7244  		return nil, err
  7245  	}
  7246  	req.Header = reqHeaders
  7247  	googleapi.Expand(req.URL, map[string]string{
  7248  		"name": c.name,
  7249  	})
  7250  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7251  }
  7252  
  7253  // Do executes the "vmwareengine.projects.locations.privateClouds.get" call.
  7254  // Any non-2xx status code is an error. Response headers are in either
  7255  // *PrivateCloud.ServerResponse.Header or (if a response was returned at all)
  7256  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7257  // whether the returned error was because http.StatusNotModified was returned.
  7258  func (c *ProjectsLocationsPrivateCloudsGetCall) Do(opts ...googleapi.CallOption) (*PrivateCloud, error) {
  7259  	gensupport.SetOptions(c.urlParams_, opts...)
  7260  	res, err := c.doRequest("json")
  7261  	if res != nil && res.StatusCode == http.StatusNotModified {
  7262  		if res.Body != nil {
  7263  			res.Body.Close()
  7264  		}
  7265  		return nil, gensupport.WrapError(&googleapi.Error{
  7266  			Code:   res.StatusCode,
  7267  			Header: res.Header,
  7268  		})
  7269  	}
  7270  	if err != nil {
  7271  		return nil, err
  7272  	}
  7273  	defer googleapi.CloseBody(res)
  7274  	if err := googleapi.CheckResponse(res); err != nil {
  7275  		return nil, gensupport.WrapError(err)
  7276  	}
  7277  	ret := &PrivateCloud{
  7278  		ServerResponse: googleapi.ServerResponse{
  7279  			Header:         res.Header,
  7280  			HTTPStatusCode: res.StatusCode,
  7281  		},
  7282  	}
  7283  	target := &ret
  7284  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7285  		return nil, err
  7286  	}
  7287  	return ret, nil
  7288  }
  7289  
  7290  type ProjectsLocationsPrivateCloudsGetDnsForwardingCall struct {
  7291  	s            *Service
  7292  	name         string
  7293  	urlParams_   gensupport.URLParams
  7294  	ifNoneMatch_ string
  7295  	ctx_         context.Context
  7296  	header_      http.Header
  7297  }
  7298  
  7299  // GetDnsForwarding: Gets details of the `DnsForwarding` config.
  7300  //
  7301  //   - name: The resource name of a `DnsForwarding` to retrieve. Resource names
  7302  //     are schemeless URIs that follow the conventions in
  7303  //     https://cloud.google.com/apis/design/resource_names. For example:
  7304  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/dnsForw
  7305  //     arding`.
  7306  func (r *ProjectsLocationsPrivateCloudsService) GetDnsForwarding(name string) *ProjectsLocationsPrivateCloudsGetDnsForwardingCall {
  7307  	c := &ProjectsLocationsPrivateCloudsGetDnsForwardingCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7308  	c.name = name
  7309  	return c
  7310  }
  7311  
  7312  // Fields allows partial responses to be retrieved. See
  7313  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7314  // details.
  7315  func (c *ProjectsLocationsPrivateCloudsGetDnsForwardingCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsGetDnsForwardingCall {
  7316  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7317  	return c
  7318  }
  7319  
  7320  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  7321  // object's ETag matches the given value. This is useful for getting updates
  7322  // only after the object has changed since the last request.
  7323  func (c *ProjectsLocationsPrivateCloudsGetDnsForwardingCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsGetDnsForwardingCall {
  7324  	c.ifNoneMatch_ = entityTag
  7325  	return c
  7326  }
  7327  
  7328  // Context sets the context to be used in this call's Do method.
  7329  func (c *ProjectsLocationsPrivateCloudsGetDnsForwardingCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsGetDnsForwardingCall {
  7330  	c.ctx_ = ctx
  7331  	return c
  7332  }
  7333  
  7334  // Header returns a http.Header that can be modified by the caller to add
  7335  // headers to the request.
  7336  func (c *ProjectsLocationsPrivateCloudsGetDnsForwardingCall) Header() http.Header {
  7337  	if c.header_ == nil {
  7338  		c.header_ = make(http.Header)
  7339  	}
  7340  	return c.header_
  7341  }
  7342  
  7343  func (c *ProjectsLocationsPrivateCloudsGetDnsForwardingCall) doRequest(alt string) (*http.Response, error) {
  7344  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7345  	if c.ifNoneMatch_ != "" {
  7346  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7347  	}
  7348  	var body io.Reader = nil
  7349  	c.urlParams_.Set("alt", alt)
  7350  	c.urlParams_.Set("prettyPrint", "false")
  7351  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  7352  	urls += "?" + c.urlParams_.Encode()
  7353  	req, err := http.NewRequest("GET", urls, body)
  7354  	if err != nil {
  7355  		return nil, err
  7356  	}
  7357  	req.Header = reqHeaders
  7358  	googleapi.Expand(req.URL, map[string]string{
  7359  		"name": c.name,
  7360  	})
  7361  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7362  }
  7363  
  7364  // Do executes the "vmwareengine.projects.locations.privateClouds.getDnsForwarding" call.
  7365  // Any non-2xx status code is an error. Response headers are in either
  7366  // *DnsForwarding.ServerResponse.Header or (if a response was returned at all)
  7367  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7368  // whether the returned error was because http.StatusNotModified was returned.
  7369  func (c *ProjectsLocationsPrivateCloudsGetDnsForwardingCall) Do(opts ...googleapi.CallOption) (*DnsForwarding, error) {
  7370  	gensupport.SetOptions(c.urlParams_, opts...)
  7371  	res, err := c.doRequest("json")
  7372  	if res != nil && res.StatusCode == http.StatusNotModified {
  7373  		if res.Body != nil {
  7374  			res.Body.Close()
  7375  		}
  7376  		return nil, gensupport.WrapError(&googleapi.Error{
  7377  			Code:   res.StatusCode,
  7378  			Header: res.Header,
  7379  		})
  7380  	}
  7381  	if err != nil {
  7382  		return nil, err
  7383  	}
  7384  	defer googleapi.CloseBody(res)
  7385  	if err := googleapi.CheckResponse(res); err != nil {
  7386  		return nil, gensupport.WrapError(err)
  7387  	}
  7388  	ret := &DnsForwarding{
  7389  		ServerResponse: googleapi.ServerResponse{
  7390  			Header:         res.Header,
  7391  			HTTPStatusCode: res.StatusCode,
  7392  		},
  7393  	}
  7394  	target := &ret
  7395  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7396  		return nil, err
  7397  	}
  7398  	return ret, nil
  7399  }
  7400  
  7401  type ProjectsLocationsPrivateCloudsGetIamPolicyCall struct {
  7402  	s            *Service
  7403  	resource     string
  7404  	urlParams_   gensupport.URLParams
  7405  	ifNoneMatch_ string
  7406  	ctx_         context.Context
  7407  	header_      http.Header
  7408  }
  7409  
  7410  // GetIamPolicy: Gets the access control policy for a resource. Returns an
  7411  // empty policy if the resource exists and does not have a policy set.
  7412  //
  7413  //   - resource: REQUIRED: The resource for which the policy is being requested.
  7414  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  7415  //     for the appropriate value for this field.
  7416  func (r *ProjectsLocationsPrivateCloudsService) GetIamPolicy(resource string) *ProjectsLocationsPrivateCloudsGetIamPolicyCall {
  7417  	c := &ProjectsLocationsPrivateCloudsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7418  	c.resource = resource
  7419  	return c
  7420  }
  7421  
  7422  // OptionsRequestedPolicyVersion sets the optional parameter
  7423  // "options.requestedPolicyVersion": The maximum policy version that will be
  7424  // used to format the policy. Valid values are 0, 1, and 3. Requests specifying
  7425  // an invalid value will be rejected. Requests for policies with any
  7426  // conditional role bindings must specify version 3. Policies with no
  7427  // conditional role bindings may specify any valid value or leave the field
  7428  // unset. The policy in the response might use the policy version that you
  7429  // specified, or it might use a lower policy version. For example, if you
  7430  // specify version 3, but the policy has no conditional role bindings, the
  7431  // response uses version 1. To learn which resources support conditions in
  7432  // their IAM policies, see the IAM documentation
  7433  // (https://cloud.google.com/iam/help/conditions/resource-policies).
  7434  func (c *ProjectsLocationsPrivateCloudsGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsPrivateCloudsGetIamPolicyCall {
  7435  	c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion))
  7436  	return c
  7437  }
  7438  
  7439  // Fields allows partial responses to be retrieved. See
  7440  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7441  // details.
  7442  func (c *ProjectsLocationsPrivateCloudsGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsGetIamPolicyCall {
  7443  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7444  	return c
  7445  }
  7446  
  7447  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  7448  // object's ETag matches the given value. This is useful for getting updates
  7449  // only after the object has changed since the last request.
  7450  func (c *ProjectsLocationsPrivateCloudsGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsGetIamPolicyCall {
  7451  	c.ifNoneMatch_ = entityTag
  7452  	return c
  7453  }
  7454  
  7455  // Context sets the context to be used in this call's Do method.
  7456  func (c *ProjectsLocationsPrivateCloudsGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsGetIamPolicyCall {
  7457  	c.ctx_ = ctx
  7458  	return c
  7459  }
  7460  
  7461  // Header returns a http.Header that can be modified by the caller to add
  7462  // headers to the request.
  7463  func (c *ProjectsLocationsPrivateCloudsGetIamPolicyCall) Header() http.Header {
  7464  	if c.header_ == nil {
  7465  		c.header_ = make(http.Header)
  7466  	}
  7467  	return c.header_
  7468  }
  7469  
  7470  func (c *ProjectsLocationsPrivateCloudsGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  7471  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7472  	if c.ifNoneMatch_ != "" {
  7473  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7474  	}
  7475  	var body io.Reader = nil
  7476  	c.urlParams_.Set("alt", alt)
  7477  	c.urlParams_.Set("prettyPrint", "false")
  7478  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy")
  7479  	urls += "?" + c.urlParams_.Encode()
  7480  	req, err := http.NewRequest("GET", urls, body)
  7481  	if err != nil {
  7482  		return nil, err
  7483  	}
  7484  	req.Header = reqHeaders
  7485  	googleapi.Expand(req.URL, map[string]string{
  7486  		"resource": c.resource,
  7487  	})
  7488  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7489  }
  7490  
  7491  // Do executes the "vmwareengine.projects.locations.privateClouds.getIamPolicy" call.
  7492  // Any non-2xx status code is an error. Response headers are in either
  7493  // *Policy.ServerResponse.Header or (if a response was returned at all) in
  7494  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7495  // whether the returned error was because http.StatusNotModified was returned.
  7496  func (c *ProjectsLocationsPrivateCloudsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
  7497  	gensupport.SetOptions(c.urlParams_, opts...)
  7498  	res, err := c.doRequest("json")
  7499  	if res != nil && res.StatusCode == http.StatusNotModified {
  7500  		if res.Body != nil {
  7501  			res.Body.Close()
  7502  		}
  7503  		return nil, gensupport.WrapError(&googleapi.Error{
  7504  			Code:   res.StatusCode,
  7505  			Header: res.Header,
  7506  		})
  7507  	}
  7508  	if err != nil {
  7509  		return nil, err
  7510  	}
  7511  	defer googleapi.CloseBody(res)
  7512  	if err := googleapi.CheckResponse(res); err != nil {
  7513  		return nil, gensupport.WrapError(err)
  7514  	}
  7515  	ret := &Policy{
  7516  		ServerResponse: googleapi.ServerResponse{
  7517  			Header:         res.Header,
  7518  			HTTPStatusCode: res.StatusCode,
  7519  		},
  7520  	}
  7521  	target := &ret
  7522  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7523  		return nil, err
  7524  	}
  7525  	return ret, nil
  7526  }
  7527  
  7528  type ProjectsLocationsPrivateCloudsListCall struct {
  7529  	s            *Service
  7530  	parent       string
  7531  	urlParams_   gensupport.URLParams
  7532  	ifNoneMatch_ string
  7533  	ctx_         context.Context
  7534  	header_      http.Header
  7535  }
  7536  
  7537  // List: Lists `PrivateCloud` resources in a given project and location.
  7538  //
  7539  //   - parent: The resource name of the private cloud to be queried for clusters.
  7540  //     Resource names are schemeless URIs that follow the conventions in
  7541  //     https://cloud.google.com/apis/design/resource_names. For example:
  7542  //     `projects/my-project/locations/us-central1-a`.
  7543  func (r *ProjectsLocationsPrivateCloudsService) List(parent string) *ProjectsLocationsPrivateCloudsListCall {
  7544  	c := &ProjectsLocationsPrivateCloudsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7545  	c.parent = parent
  7546  	return c
  7547  }
  7548  
  7549  // Filter sets the optional parameter "filter": A filter expression that
  7550  // matches resources returned in the response. The expression must specify the
  7551  // field name, a comparison operator, and the value that you want to use for
  7552  // filtering. The value must be a string, a number, or a boolean. The
  7553  // comparison operator must be `=`, `!=`, `>`, or `<`. For example, if you are
  7554  // filtering a list of private clouds, you can exclude the ones named
  7555  // `example-pc` by specifying `name != "example-pc". You can also filter
  7556  // nested fields. For example, you could specify `networkConfig.managementCidr
  7557  // = "192.168.0.0/24" to include private clouds only if they have a matching
  7558  // address in their network configuration. To filter on multiple expressions,
  7559  // provide each separate expression within parentheses. For example: ``` (name
  7560  // = "example-pc") (createTime > "2021-04-12T08:15:10.40Z") ``` By default,
  7561  // each expression is an `AND` expression. However, you can include `AND` and
  7562  // `OR` expressions explicitly. For example: ``` (name = "private-cloud-1") AND
  7563  // (createTime > "2021-04-12T08:15:10.40Z") OR (name = "private-cloud-2") ```
  7564  func (c *ProjectsLocationsPrivateCloudsListCall) Filter(filter string) *ProjectsLocationsPrivateCloudsListCall {
  7565  	c.urlParams_.Set("filter", filter)
  7566  	return c
  7567  }
  7568  
  7569  // OrderBy sets the optional parameter "orderBy": Sorts list results by a
  7570  // certain order. By default, returned results are ordered by `name` in
  7571  // ascending order. You can also sort results in descending order based on the
  7572  // `name` value using `orderBy="name desc". Currently, only ordering by `name`
  7573  // is supported.
  7574  func (c *ProjectsLocationsPrivateCloudsListCall) OrderBy(orderBy string) *ProjectsLocationsPrivateCloudsListCall {
  7575  	c.urlParams_.Set("orderBy", orderBy)
  7576  	return c
  7577  }
  7578  
  7579  // PageSize sets the optional parameter "pageSize": The maximum number of
  7580  // private clouds to return in one page. The service may return fewer than this
  7581  // value. The maximum value is coerced to 1000. The default value of this field
  7582  // is 500.
  7583  func (c *ProjectsLocationsPrivateCloudsListCall) PageSize(pageSize int64) *ProjectsLocationsPrivateCloudsListCall {
  7584  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  7585  	return c
  7586  }
  7587  
  7588  // PageToken sets the optional parameter "pageToken": A page token, received
  7589  // from a previous `ListPrivateClouds` call. Provide this to retrieve the
  7590  // subsequent page. When paginating, all other parameters provided to
  7591  // `ListPrivateClouds` must match the call that provided the page token.
  7592  func (c *ProjectsLocationsPrivateCloudsListCall) PageToken(pageToken string) *ProjectsLocationsPrivateCloudsListCall {
  7593  	c.urlParams_.Set("pageToken", pageToken)
  7594  	return c
  7595  }
  7596  
  7597  // Fields allows partial responses to be retrieved. See
  7598  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7599  // details.
  7600  func (c *ProjectsLocationsPrivateCloudsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsListCall {
  7601  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7602  	return c
  7603  }
  7604  
  7605  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  7606  // object's ETag matches the given value. This is useful for getting updates
  7607  // only after the object has changed since the last request.
  7608  func (c *ProjectsLocationsPrivateCloudsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsListCall {
  7609  	c.ifNoneMatch_ = entityTag
  7610  	return c
  7611  }
  7612  
  7613  // Context sets the context to be used in this call's Do method.
  7614  func (c *ProjectsLocationsPrivateCloudsListCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsListCall {
  7615  	c.ctx_ = ctx
  7616  	return c
  7617  }
  7618  
  7619  // Header returns a http.Header that can be modified by the caller to add
  7620  // headers to the request.
  7621  func (c *ProjectsLocationsPrivateCloudsListCall) Header() http.Header {
  7622  	if c.header_ == nil {
  7623  		c.header_ = make(http.Header)
  7624  	}
  7625  	return c.header_
  7626  }
  7627  
  7628  func (c *ProjectsLocationsPrivateCloudsListCall) doRequest(alt string) (*http.Response, error) {
  7629  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  7630  	if c.ifNoneMatch_ != "" {
  7631  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  7632  	}
  7633  	var body io.Reader = nil
  7634  	c.urlParams_.Set("alt", alt)
  7635  	c.urlParams_.Set("prettyPrint", "false")
  7636  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/privateClouds")
  7637  	urls += "?" + c.urlParams_.Encode()
  7638  	req, err := http.NewRequest("GET", urls, body)
  7639  	if err != nil {
  7640  		return nil, err
  7641  	}
  7642  	req.Header = reqHeaders
  7643  	googleapi.Expand(req.URL, map[string]string{
  7644  		"parent": c.parent,
  7645  	})
  7646  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7647  }
  7648  
  7649  // Do executes the "vmwareengine.projects.locations.privateClouds.list" call.
  7650  // Any non-2xx status code is an error. Response headers are in either
  7651  // *ListPrivateCloudsResponse.ServerResponse.Header or (if a response was
  7652  // returned at all) in error.(*googleapi.Error).Header. Use
  7653  // googleapi.IsNotModified to check whether the returned error was because
  7654  // http.StatusNotModified was returned.
  7655  func (c *ProjectsLocationsPrivateCloudsListCall) Do(opts ...googleapi.CallOption) (*ListPrivateCloudsResponse, error) {
  7656  	gensupport.SetOptions(c.urlParams_, opts...)
  7657  	res, err := c.doRequest("json")
  7658  	if res != nil && res.StatusCode == http.StatusNotModified {
  7659  		if res.Body != nil {
  7660  			res.Body.Close()
  7661  		}
  7662  		return nil, gensupport.WrapError(&googleapi.Error{
  7663  			Code:   res.StatusCode,
  7664  			Header: res.Header,
  7665  		})
  7666  	}
  7667  	if err != nil {
  7668  		return nil, err
  7669  	}
  7670  	defer googleapi.CloseBody(res)
  7671  	if err := googleapi.CheckResponse(res); err != nil {
  7672  		return nil, gensupport.WrapError(err)
  7673  	}
  7674  	ret := &ListPrivateCloudsResponse{
  7675  		ServerResponse: googleapi.ServerResponse{
  7676  			Header:         res.Header,
  7677  			HTTPStatusCode: res.StatusCode,
  7678  		},
  7679  	}
  7680  	target := &ret
  7681  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7682  		return nil, err
  7683  	}
  7684  	return ret, nil
  7685  }
  7686  
  7687  // Pages invokes f for each page of results.
  7688  // A non-nil error returned from f will halt the iteration.
  7689  // The provided context supersedes any context provided to the Context method.
  7690  func (c *ProjectsLocationsPrivateCloudsListCall) Pages(ctx context.Context, f func(*ListPrivateCloudsResponse) error) error {
  7691  	c.ctx_ = ctx
  7692  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  7693  	for {
  7694  		x, err := c.Do()
  7695  		if err != nil {
  7696  			return err
  7697  		}
  7698  		if err := f(x); err != nil {
  7699  			return err
  7700  		}
  7701  		if x.NextPageToken == "" {
  7702  			return nil
  7703  		}
  7704  		c.PageToken(x.NextPageToken)
  7705  	}
  7706  }
  7707  
  7708  type ProjectsLocationsPrivateCloudsPatchCall struct {
  7709  	s            *Service
  7710  	name         string
  7711  	privatecloud *PrivateCloud
  7712  	urlParams_   gensupport.URLParams
  7713  	ctx_         context.Context
  7714  	header_      http.Header
  7715  }
  7716  
  7717  // Patch: Modifies a `PrivateCloud` resource. Only the following fields can be
  7718  // updated: `description`. Only fields specified in `updateMask` are applied.
  7719  // During operation processing, the resource is temporarily in the `ACTIVE`
  7720  // state before the operation fully completes. For that period of time, you
  7721  // can't update the resource. Use the operation status to determine when the
  7722  // processing fully completes.
  7723  //
  7724  //   - name: Output only. The resource name of this private cloud. Resource names
  7725  //     are schemeless URIs that follow the conventions in
  7726  //     https://cloud.google.com/apis/design/resource_names. For example:
  7727  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud`.
  7728  func (r *ProjectsLocationsPrivateCloudsService) Patch(name string, privatecloud *PrivateCloud) *ProjectsLocationsPrivateCloudsPatchCall {
  7729  	c := &ProjectsLocationsPrivateCloudsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7730  	c.name = name
  7731  	c.privatecloud = privatecloud
  7732  	return c
  7733  }
  7734  
  7735  // RequestId sets the optional parameter "requestId": The request ID must be a
  7736  // valid UUID with the exception that zero UUID is not supported
  7737  // (00000000-0000-0000-0000-000000000000).
  7738  func (c *ProjectsLocationsPrivateCloudsPatchCall) RequestId(requestId string) *ProjectsLocationsPrivateCloudsPatchCall {
  7739  	c.urlParams_.Set("requestId", requestId)
  7740  	return c
  7741  }
  7742  
  7743  // UpdateMask sets the optional parameter "updateMask": Required. Field mask is
  7744  // used to specify the fields to be overwritten in the `PrivateCloud` resource
  7745  // by the update. The fields specified in `updateMask` are relative to the
  7746  // resource, not the full request. A field will be overwritten if it is in the
  7747  // mask. If the user does not provide a mask then all fields will be
  7748  // overwritten.
  7749  func (c *ProjectsLocationsPrivateCloudsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsPrivateCloudsPatchCall {
  7750  	c.urlParams_.Set("updateMask", updateMask)
  7751  	return c
  7752  }
  7753  
  7754  // Fields allows partial responses to be retrieved. See
  7755  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7756  // details.
  7757  func (c *ProjectsLocationsPrivateCloudsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsPatchCall {
  7758  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7759  	return c
  7760  }
  7761  
  7762  // Context sets the context to be used in this call's Do method.
  7763  func (c *ProjectsLocationsPrivateCloudsPatchCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsPatchCall {
  7764  	c.ctx_ = ctx
  7765  	return c
  7766  }
  7767  
  7768  // Header returns a http.Header that can be modified by the caller to add
  7769  // headers to the request.
  7770  func (c *ProjectsLocationsPrivateCloudsPatchCall) Header() http.Header {
  7771  	if c.header_ == nil {
  7772  		c.header_ = make(http.Header)
  7773  	}
  7774  	return c.header_
  7775  }
  7776  
  7777  func (c *ProjectsLocationsPrivateCloudsPatchCall) doRequest(alt string) (*http.Response, error) {
  7778  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7779  	var body io.Reader = nil
  7780  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.privatecloud)
  7781  	if err != nil {
  7782  		return nil, err
  7783  	}
  7784  	c.urlParams_.Set("alt", alt)
  7785  	c.urlParams_.Set("prettyPrint", "false")
  7786  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  7787  	urls += "?" + c.urlParams_.Encode()
  7788  	req, err := http.NewRequest("PATCH", urls, body)
  7789  	if err != nil {
  7790  		return nil, err
  7791  	}
  7792  	req.Header = reqHeaders
  7793  	googleapi.Expand(req.URL, map[string]string{
  7794  		"name": c.name,
  7795  	})
  7796  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7797  }
  7798  
  7799  // Do executes the "vmwareengine.projects.locations.privateClouds.patch" call.
  7800  // Any non-2xx status code is an error. Response headers are in either
  7801  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  7802  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7803  // whether the returned error was because http.StatusNotModified was returned.
  7804  func (c *ProjectsLocationsPrivateCloudsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  7805  	gensupport.SetOptions(c.urlParams_, opts...)
  7806  	res, err := c.doRequest("json")
  7807  	if res != nil && res.StatusCode == http.StatusNotModified {
  7808  		if res.Body != nil {
  7809  			res.Body.Close()
  7810  		}
  7811  		return nil, gensupport.WrapError(&googleapi.Error{
  7812  			Code:   res.StatusCode,
  7813  			Header: res.Header,
  7814  		})
  7815  	}
  7816  	if err != nil {
  7817  		return nil, err
  7818  	}
  7819  	defer googleapi.CloseBody(res)
  7820  	if err := googleapi.CheckResponse(res); err != nil {
  7821  		return nil, gensupport.WrapError(err)
  7822  	}
  7823  	ret := &Operation{
  7824  		ServerResponse: googleapi.ServerResponse{
  7825  			Header:         res.Header,
  7826  			HTTPStatusCode: res.StatusCode,
  7827  		},
  7828  	}
  7829  	target := &ret
  7830  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7831  		return nil, err
  7832  	}
  7833  	return ret, nil
  7834  }
  7835  
  7836  type ProjectsLocationsPrivateCloudsResetNsxCredentialsCall struct {
  7837  	s                          *Service
  7838  	privateCloud               string
  7839  	resetnsxcredentialsrequest *ResetNsxCredentialsRequest
  7840  	urlParams_                 gensupport.URLParams
  7841  	ctx_                       context.Context
  7842  	header_                    http.Header
  7843  }
  7844  
  7845  // ResetNsxCredentials: Resets credentials of the NSX appliance.
  7846  //
  7847  //   - privateCloud: The resource name of the private cloud to reset credentials
  7848  //     for. Resource names are schemeless URIs that follow the conventions in
  7849  //     https://cloud.google.com/apis/design/resource_names. For example:
  7850  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud`.
  7851  func (r *ProjectsLocationsPrivateCloudsService) ResetNsxCredentials(privateCloud string, resetnsxcredentialsrequest *ResetNsxCredentialsRequest) *ProjectsLocationsPrivateCloudsResetNsxCredentialsCall {
  7852  	c := &ProjectsLocationsPrivateCloudsResetNsxCredentialsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7853  	c.privateCloud = privateCloud
  7854  	c.resetnsxcredentialsrequest = resetnsxcredentialsrequest
  7855  	return c
  7856  }
  7857  
  7858  // Fields allows partial responses to be retrieved. See
  7859  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7860  // details.
  7861  func (c *ProjectsLocationsPrivateCloudsResetNsxCredentialsCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsResetNsxCredentialsCall {
  7862  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7863  	return c
  7864  }
  7865  
  7866  // Context sets the context to be used in this call's Do method.
  7867  func (c *ProjectsLocationsPrivateCloudsResetNsxCredentialsCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsResetNsxCredentialsCall {
  7868  	c.ctx_ = ctx
  7869  	return c
  7870  }
  7871  
  7872  // Header returns a http.Header that can be modified by the caller to add
  7873  // headers to the request.
  7874  func (c *ProjectsLocationsPrivateCloudsResetNsxCredentialsCall) Header() http.Header {
  7875  	if c.header_ == nil {
  7876  		c.header_ = make(http.Header)
  7877  	}
  7878  	return c.header_
  7879  }
  7880  
  7881  func (c *ProjectsLocationsPrivateCloudsResetNsxCredentialsCall) doRequest(alt string) (*http.Response, error) {
  7882  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7883  	var body io.Reader = nil
  7884  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.resetnsxcredentialsrequest)
  7885  	if err != nil {
  7886  		return nil, err
  7887  	}
  7888  	c.urlParams_.Set("alt", alt)
  7889  	c.urlParams_.Set("prettyPrint", "false")
  7890  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+privateCloud}:resetNsxCredentials")
  7891  	urls += "?" + c.urlParams_.Encode()
  7892  	req, err := http.NewRequest("POST", urls, body)
  7893  	if err != nil {
  7894  		return nil, err
  7895  	}
  7896  	req.Header = reqHeaders
  7897  	googleapi.Expand(req.URL, map[string]string{
  7898  		"privateCloud": c.privateCloud,
  7899  	})
  7900  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  7901  }
  7902  
  7903  // Do executes the "vmwareengine.projects.locations.privateClouds.resetNsxCredentials" call.
  7904  // Any non-2xx status code is an error. Response headers are in either
  7905  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  7906  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  7907  // whether the returned error was because http.StatusNotModified was returned.
  7908  func (c *ProjectsLocationsPrivateCloudsResetNsxCredentialsCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  7909  	gensupport.SetOptions(c.urlParams_, opts...)
  7910  	res, err := c.doRequest("json")
  7911  	if res != nil && res.StatusCode == http.StatusNotModified {
  7912  		if res.Body != nil {
  7913  			res.Body.Close()
  7914  		}
  7915  		return nil, gensupport.WrapError(&googleapi.Error{
  7916  			Code:   res.StatusCode,
  7917  			Header: res.Header,
  7918  		})
  7919  	}
  7920  	if err != nil {
  7921  		return nil, err
  7922  	}
  7923  	defer googleapi.CloseBody(res)
  7924  	if err := googleapi.CheckResponse(res); err != nil {
  7925  		return nil, gensupport.WrapError(err)
  7926  	}
  7927  	ret := &Operation{
  7928  		ServerResponse: googleapi.ServerResponse{
  7929  			Header:         res.Header,
  7930  			HTTPStatusCode: res.StatusCode,
  7931  		},
  7932  	}
  7933  	target := &ret
  7934  	if err := gensupport.DecodeResponse(target, res); err != nil {
  7935  		return nil, err
  7936  	}
  7937  	return ret, nil
  7938  }
  7939  
  7940  type ProjectsLocationsPrivateCloudsResetVcenterCredentialsCall struct {
  7941  	s                              *Service
  7942  	privateCloud                   string
  7943  	resetvcentercredentialsrequest *ResetVcenterCredentialsRequest
  7944  	urlParams_                     gensupport.URLParams
  7945  	ctx_                           context.Context
  7946  	header_                        http.Header
  7947  }
  7948  
  7949  // ResetVcenterCredentials: Resets credentials of the Vcenter appliance.
  7950  //
  7951  //   - privateCloud: The resource name of the private cloud to reset credentials
  7952  //     for. Resource names are schemeless URIs that follow the conventions in
  7953  //     https://cloud.google.com/apis/design/resource_names. For example:
  7954  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud`.
  7955  func (r *ProjectsLocationsPrivateCloudsService) ResetVcenterCredentials(privateCloud string, resetvcentercredentialsrequest *ResetVcenterCredentialsRequest) *ProjectsLocationsPrivateCloudsResetVcenterCredentialsCall {
  7956  	c := &ProjectsLocationsPrivateCloudsResetVcenterCredentialsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  7957  	c.privateCloud = privateCloud
  7958  	c.resetvcentercredentialsrequest = resetvcentercredentialsrequest
  7959  	return c
  7960  }
  7961  
  7962  // Fields allows partial responses to be retrieved. See
  7963  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  7964  // details.
  7965  func (c *ProjectsLocationsPrivateCloudsResetVcenterCredentialsCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsResetVcenterCredentialsCall {
  7966  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  7967  	return c
  7968  }
  7969  
  7970  // Context sets the context to be used in this call's Do method.
  7971  func (c *ProjectsLocationsPrivateCloudsResetVcenterCredentialsCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsResetVcenterCredentialsCall {
  7972  	c.ctx_ = ctx
  7973  	return c
  7974  }
  7975  
  7976  // Header returns a http.Header that can be modified by the caller to add
  7977  // headers to the request.
  7978  func (c *ProjectsLocationsPrivateCloudsResetVcenterCredentialsCall) Header() http.Header {
  7979  	if c.header_ == nil {
  7980  		c.header_ = make(http.Header)
  7981  	}
  7982  	return c.header_
  7983  }
  7984  
  7985  func (c *ProjectsLocationsPrivateCloudsResetVcenterCredentialsCall) doRequest(alt string) (*http.Response, error) {
  7986  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  7987  	var body io.Reader = nil
  7988  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.resetvcentercredentialsrequest)
  7989  	if err != nil {
  7990  		return nil, err
  7991  	}
  7992  	c.urlParams_.Set("alt", alt)
  7993  	c.urlParams_.Set("prettyPrint", "false")
  7994  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+privateCloud}:resetVcenterCredentials")
  7995  	urls += "?" + c.urlParams_.Encode()
  7996  	req, err := http.NewRequest("POST", urls, body)
  7997  	if err != nil {
  7998  		return nil, err
  7999  	}
  8000  	req.Header = reqHeaders
  8001  	googleapi.Expand(req.URL, map[string]string{
  8002  		"privateCloud": c.privateCloud,
  8003  	})
  8004  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8005  }
  8006  
  8007  // Do executes the "vmwareengine.projects.locations.privateClouds.resetVcenterCredentials" call.
  8008  // Any non-2xx status code is an error. Response headers are in either
  8009  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  8010  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  8011  // whether the returned error was because http.StatusNotModified was returned.
  8012  func (c *ProjectsLocationsPrivateCloudsResetVcenterCredentialsCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  8013  	gensupport.SetOptions(c.urlParams_, opts...)
  8014  	res, err := c.doRequest("json")
  8015  	if res != nil && res.StatusCode == http.StatusNotModified {
  8016  		if res.Body != nil {
  8017  			res.Body.Close()
  8018  		}
  8019  		return nil, gensupport.WrapError(&googleapi.Error{
  8020  			Code:   res.StatusCode,
  8021  			Header: res.Header,
  8022  		})
  8023  	}
  8024  	if err != nil {
  8025  		return nil, err
  8026  	}
  8027  	defer googleapi.CloseBody(res)
  8028  	if err := googleapi.CheckResponse(res); err != nil {
  8029  		return nil, gensupport.WrapError(err)
  8030  	}
  8031  	ret := &Operation{
  8032  		ServerResponse: googleapi.ServerResponse{
  8033  			Header:         res.Header,
  8034  			HTTPStatusCode: res.StatusCode,
  8035  		},
  8036  	}
  8037  	target := &ret
  8038  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8039  		return nil, err
  8040  	}
  8041  	return ret, nil
  8042  }
  8043  
  8044  type ProjectsLocationsPrivateCloudsSetIamPolicyCall struct {
  8045  	s                   *Service
  8046  	resource            string
  8047  	setiampolicyrequest *SetIamPolicyRequest
  8048  	urlParams_          gensupport.URLParams
  8049  	ctx_                context.Context
  8050  	header_             http.Header
  8051  }
  8052  
  8053  // SetIamPolicy: Sets the access control policy on the specified resource.
  8054  // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`,
  8055  // and `PERMISSION_DENIED` errors.
  8056  //
  8057  //   - resource: REQUIRED: The resource for which the policy is being specified.
  8058  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  8059  //     for the appropriate value for this field.
  8060  func (r *ProjectsLocationsPrivateCloudsService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsPrivateCloudsSetIamPolicyCall {
  8061  	c := &ProjectsLocationsPrivateCloudsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8062  	c.resource = resource
  8063  	c.setiampolicyrequest = setiampolicyrequest
  8064  	return c
  8065  }
  8066  
  8067  // Fields allows partial responses to be retrieved. See
  8068  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8069  // details.
  8070  func (c *ProjectsLocationsPrivateCloudsSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsSetIamPolicyCall {
  8071  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8072  	return c
  8073  }
  8074  
  8075  // Context sets the context to be used in this call's Do method.
  8076  func (c *ProjectsLocationsPrivateCloudsSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsSetIamPolicyCall {
  8077  	c.ctx_ = ctx
  8078  	return c
  8079  }
  8080  
  8081  // Header returns a http.Header that can be modified by the caller to add
  8082  // headers to the request.
  8083  func (c *ProjectsLocationsPrivateCloudsSetIamPolicyCall) Header() http.Header {
  8084  	if c.header_ == nil {
  8085  		c.header_ = make(http.Header)
  8086  	}
  8087  	return c.header_
  8088  }
  8089  
  8090  func (c *ProjectsLocationsPrivateCloudsSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  8091  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8092  	var body io.Reader = nil
  8093  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
  8094  	if err != nil {
  8095  		return nil, err
  8096  	}
  8097  	c.urlParams_.Set("alt", alt)
  8098  	c.urlParams_.Set("prettyPrint", "false")
  8099  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy")
  8100  	urls += "?" + c.urlParams_.Encode()
  8101  	req, err := http.NewRequest("POST", urls, body)
  8102  	if err != nil {
  8103  		return nil, err
  8104  	}
  8105  	req.Header = reqHeaders
  8106  	googleapi.Expand(req.URL, map[string]string{
  8107  		"resource": c.resource,
  8108  	})
  8109  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8110  }
  8111  
  8112  // Do executes the "vmwareengine.projects.locations.privateClouds.setIamPolicy" call.
  8113  // Any non-2xx status code is an error. Response headers are in either
  8114  // *Policy.ServerResponse.Header or (if a response was returned at all) in
  8115  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  8116  // whether the returned error was because http.StatusNotModified was returned.
  8117  func (c *ProjectsLocationsPrivateCloudsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
  8118  	gensupport.SetOptions(c.urlParams_, opts...)
  8119  	res, err := c.doRequest("json")
  8120  	if res != nil && res.StatusCode == http.StatusNotModified {
  8121  		if res.Body != nil {
  8122  			res.Body.Close()
  8123  		}
  8124  		return nil, gensupport.WrapError(&googleapi.Error{
  8125  			Code:   res.StatusCode,
  8126  			Header: res.Header,
  8127  		})
  8128  	}
  8129  	if err != nil {
  8130  		return nil, err
  8131  	}
  8132  	defer googleapi.CloseBody(res)
  8133  	if err := googleapi.CheckResponse(res); err != nil {
  8134  		return nil, gensupport.WrapError(err)
  8135  	}
  8136  	ret := &Policy{
  8137  		ServerResponse: googleapi.ServerResponse{
  8138  			Header:         res.Header,
  8139  			HTTPStatusCode: res.StatusCode,
  8140  		},
  8141  	}
  8142  	target := &ret
  8143  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8144  		return nil, err
  8145  	}
  8146  	return ret, nil
  8147  }
  8148  
  8149  type ProjectsLocationsPrivateCloudsShowNsxCredentialsCall struct {
  8150  	s            *Service
  8151  	privateCloud string
  8152  	urlParams_   gensupport.URLParams
  8153  	ifNoneMatch_ string
  8154  	ctx_         context.Context
  8155  	header_      http.Header
  8156  }
  8157  
  8158  // ShowNsxCredentials: Gets details of credentials for NSX appliance.
  8159  //
  8160  //   - privateCloud: The resource name of the private cloud to be queried for
  8161  //     credentials. Resource names are schemeless URIs that follow the
  8162  //     conventions in https://cloud.google.com/apis/design/resource_names. For
  8163  //     example:
  8164  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud`.
  8165  func (r *ProjectsLocationsPrivateCloudsService) ShowNsxCredentials(privateCloud string) *ProjectsLocationsPrivateCloudsShowNsxCredentialsCall {
  8166  	c := &ProjectsLocationsPrivateCloudsShowNsxCredentialsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8167  	c.privateCloud = privateCloud
  8168  	return c
  8169  }
  8170  
  8171  // Fields allows partial responses to be retrieved. See
  8172  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8173  // details.
  8174  func (c *ProjectsLocationsPrivateCloudsShowNsxCredentialsCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsShowNsxCredentialsCall {
  8175  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8176  	return c
  8177  }
  8178  
  8179  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  8180  // object's ETag matches the given value. This is useful for getting updates
  8181  // only after the object has changed since the last request.
  8182  func (c *ProjectsLocationsPrivateCloudsShowNsxCredentialsCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsShowNsxCredentialsCall {
  8183  	c.ifNoneMatch_ = entityTag
  8184  	return c
  8185  }
  8186  
  8187  // Context sets the context to be used in this call's Do method.
  8188  func (c *ProjectsLocationsPrivateCloudsShowNsxCredentialsCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsShowNsxCredentialsCall {
  8189  	c.ctx_ = ctx
  8190  	return c
  8191  }
  8192  
  8193  // Header returns a http.Header that can be modified by the caller to add
  8194  // headers to the request.
  8195  func (c *ProjectsLocationsPrivateCloudsShowNsxCredentialsCall) Header() http.Header {
  8196  	if c.header_ == nil {
  8197  		c.header_ = make(http.Header)
  8198  	}
  8199  	return c.header_
  8200  }
  8201  
  8202  func (c *ProjectsLocationsPrivateCloudsShowNsxCredentialsCall) doRequest(alt string) (*http.Response, error) {
  8203  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8204  	if c.ifNoneMatch_ != "" {
  8205  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8206  	}
  8207  	var body io.Reader = nil
  8208  	c.urlParams_.Set("alt", alt)
  8209  	c.urlParams_.Set("prettyPrint", "false")
  8210  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+privateCloud}:showNsxCredentials")
  8211  	urls += "?" + c.urlParams_.Encode()
  8212  	req, err := http.NewRequest("GET", urls, body)
  8213  	if err != nil {
  8214  		return nil, err
  8215  	}
  8216  	req.Header = reqHeaders
  8217  	googleapi.Expand(req.URL, map[string]string{
  8218  		"privateCloud": c.privateCloud,
  8219  	})
  8220  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8221  }
  8222  
  8223  // Do executes the "vmwareengine.projects.locations.privateClouds.showNsxCredentials" call.
  8224  // Any non-2xx status code is an error. Response headers are in either
  8225  // *Credentials.ServerResponse.Header or (if a response was returned at all) in
  8226  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  8227  // whether the returned error was because http.StatusNotModified was returned.
  8228  func (c *ProjectsLocationsPrivateCloudsShowNsxCredentialsCall) Do(opts ...googleapi.CallOption) (*Credentials, error) {
  8229  	gensupport.SetOptions(c.urlParams_, opts...)
  8230  	res, err := c.doRequest("json")
  8231  	if res != nil && res.StatusCode == http.StatusNotModified {
  8232  		if res.Body != nil {
  8233  			res.Body.Close()
  8234  		}
  8235  		return nil, gensupport.WrapError(&googleapi.Error{
  8236  			Code:   res.StatusCode,
  8237  			Header: res.Header,
  8238  		})
  8239  	}
  8240  	if err != nil {
  8241  		return nil, err
  8242  	}
  8243  	defer googleapi.CloseBody(res)
  8244  	if err := googleapi.CheckResponse(res); err != nil {
  8245  		return nil, gensupport.WrapError(err)
  8246  	}
  8247  	ret := &Credentials{
  8248  		ServerResponse: googleapi.ServerResponse{
  8249  			Header:         res.Header,
  8250  			HTTPStatusCode: res.StatusCode,
  8251  		},
  8252  	}
  8253  	target := &ret
  8254  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8255  		return nil, err
  8256  	}
  8257  	return ret, nil
  8258  }
  8259  
  8260  type ProjectsLocationsPrivateCloudsShowVcenterCredentialsCall struct {
  8261  	s            *Service
  8262  	privateCloud string
  8263  	urlParams_   gensupport.URLParams
  8264  	ifNoneMatch_ string
  8265  	ctx_         context.Context
  8266  	header_      http.Header
  8267  }
  8268  
  8269  // ShowVcenterCredentials: Gets details of credentials for Vcenter appliance.
  8270  //
  8271  //   - privateCloud: The resource name of the private cloud to be queried for
  8272  //     credentials. Resource names are schemeless URIs that follow the
  8273  //     conventions in https://cloud.google.com/apis/design/resource_names. For
  8274  //     example:
  8275  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud`.
  8276  func (r *ProjectsLocationsPrivateCloudsService) ShowVcenterCredentials(privateCloud string) *ProjectsLocationsPrivateCloudsShowVcenterCredentialsCall {
  8277  	c := &ProjectsLocationsPrivateCloudsShowVcenterCredentialsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8278  	c.privateCloud = privateCloud
  8279  	return c
  8280  }
  8281  
  8282  // Username sets the optional parameter "username": The username of the user to
  8283  // be queried for credentials. The default value of this field is
  8284  // CloudOwner@gve.local. The provided value must be one of the following:
  8285  // CloudOwner@gve.local, solution-user-01@gve.local,
  8286  // solution-user-02@gve.local, solution-user-03@gve.local,
  8287  // solution-user-04@gve.local, solution-user-05@gve.local,
  8288  // zertoadmin@gve.local.
  8289  func (c *ProjectsLocationsPrivateCloudsShowVcenterCredentialsCall) Username(username string) *ProjectsLocationsPrivateCloudsShowVcenterCredentialsCall {
  8290  	c.urlParams_.Set("username", username)
  8291  	return c
  8292  }
  8293  
  8294  // Fields allows partial responses to be retrieved. See
  8295  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8296  // details.
  8297  func (c *ProjectsLocationsPrivateCloudsShowVcenterCredentialsCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsShowVcenterCredentialsCall {
  8298  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8299  	return c
  8300  }
  8301  
  8302  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  8303  // object's ETag matches the given value. This is useful for getting updates
  8304  // only after the object has changed since the last request.
  8305  func (c *ProjectsLocationsPrivateCloudsShowVcenterCredentialsCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsShowVcenterCredentialsCall {
  8306  	c.ifNoneMatch_ = entityTag
  8307  	return c
  8308  }
  8309  
  8310  // Context sets the context to be used in this call's Do method.
  8311  func (c *ProjectsLocationsPrivateCloudsShowVcenterCredentialsCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsShowVcenterCredentialsCall {
  8312  	c.ctx_ = ctx
  8313  	return c
  8314  }
  8315  
  8316  // Header returns a http.Header that can be modified by the caller to add
  8317  // headers to the request.
  8318  func (c *ProjectsLocationsPrivateCloudsShowVcenterCredentialsCall) Header() http.Header {
  8319  	if c.header_ == nil {
  8320  		c.header_ = make(http.Header)
  8321  	}
  8322  	return c.header_
  8323  }
  8324  
  8325  func (c *ProjectsLocationsPrivateCloudsShowVcenterCredentialsCall) doRequest(alt string) (*http.Response, error) {
  8326  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8327  	if c.ifNoneMatch_ != "" {
  8328  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  8329  	}
  8330  	var body io.Reader = nil
  8331  	c.urlParams_.Set("alt", alt)
  8332  	c.urlParams_.Set("prettyPrint", "false")
  8333  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+privateCloud}:showVcenterCredentials")
  8334  	urls += "?" + c.urlParams_.Encode()
  8335  	req, err := http.NewRequest("GET", urls, body)
  8336  	if err != nil {
  8337  		return nil, err
  8338  	}
  8339  	req.Header = reqHeaders
  8340  	googleapi.Expand(req.URL, map[string]string{
  8341  		"privateCloud": c.privateCloud,
  8342  	})
  8343  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8344  }
  8345  
  8346  // Do executes the "vmwareengine.projects.locations.privateClouds.showVcenterCredentials" call.
  8347  // Any non-2xx status code is an error. Response headers are in either
  8348  // *Credentials.ServerResponse.Header or (if a response was returned at all) in
  8349  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  8350  // whether the returned error was because http.StatusNotModified was returned.
  8351  func (c *ProjectsLocationsPrivateCloudsShowVcenterCredentialsCall) Do(opts ...googleapi.CallOption) (*Credentials, error) {
  8352  	gensupport.SetOptions(c.urlParams_, opts...)
  8353  	res, err := c.doRequest("json")
  8354  	if res != nil && res.StatusCode == http.StatusNotModified {
  8355  		if res.Body != nil {
  8356  			res.Body.Close()
  8357  		}
  8358  		return nil, gensupport.WrapError(&googleapi.Error{
  8359  			Code:   res.StatusCode,
  8360  			Header: res.Header,
  8361  		})
  8362  	}
  8363  	if err != nil {
  8364  		return nil, err
  8365  	}
  8366  	defer googleapi.CloseBody(res)
  8367  	if err := googleapi.CheckResponse(res); err != nil {
  8368  		return nil, gensupport.WrapError(err)
  8369  	}
  8370  	ret := &Credentials{
  8371  		ServerResponse: googleapi.ServerResponse{
  8372  			Header:         res.Header,
  8373  			HTTPStatusCode: res.StatusCode,
  8374  		},
  8375  	}
  8376  	target := &ret
  8377  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8378  		return nil, err
  8379  	}
  8380  	return ret, nil
  8381  }
  8382  
  8383  type ProjectsLocationsPrivateCloudsTestIamPermissionsCall struct {
  8384  	s                         *Service
  8385  	resource                  string
  8386  	testiampermissionsrequest *TestIamPermissionsRequest
  8387  	urlParams_                gensupport.URLParams
  8388  	ctx_                      context.Context
  8389  	header_                   http.Header
  8390  }
  8391  
  8392  // TestIamPermissions: Returns permissions that a caller has on the specified
  8393  // resource. If the resource does not exist, this will return an empty set of
  8394  // permissions, not a `NOT_FOUND` error. Note: This operation is designed to be
  8395  // used for building permission-aware UIs and command-line tools, not for
  8396  // authorization checking. This operation may "fail open" without warning.
  8397  //
  8398  //   - resource: REQUIRED: The resource for which the policy detail is being
  8399  //     requested. See Resource names
  8400  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
  8401  //     value for this field.
  8402  func (r *ProjectsLocationsPrivateCloudsService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsPrivateCloudsTestIamPermissionsCall {
  8403  	c := &ProjectsLocationsPrivateCloudsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8404  	c.resource = resource
  8405  	c.testiampermissionsrequest = testiampermissionsrequest
  8406  	return c
  8407  }
  8408  
  8409  // Fields allows partial responses to be retrieved. See
  8410  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8411  // details.
  8412  func (c *ProjectsLocationsPrivateCloudsTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsTestIamPermissionsCall {
  8413  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8414  	return c
  8415  }
  8416  
  8417  // Context sets the context to be used in this call's Do method.
  8418  func (c *ProjectsLocationsPrivateCloudsTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsTestIamPermissionsCall {
  8419  	c.ctx_ = ctx
  8420  	return c
  8421  }
  8422  
  8423  // Header returns a http.Header that can be modified by the caller to add
  8424  // headers to the request.
  8425  func (c *ProjectsLocationsPrivateCloudsTestIamPermissionsCall) Header() http.Header {
  8426  	if c.header_ == nil {
  8427  		c.header_ = make(http.Header)
  8428  	}
  8429  	return c.header_
  8430  }
  8431  
  8432  func (c *ProjectsLocationsPrivateCloudsTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
  8433  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8434  	var body io.Reader = nil
  8435  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
  8436  	if err != nil {
  8437  		return nil, err
  8438  	}
  8439  	c.urlParams_.Set("alt", alt)
  8440  	c.urlParams_.Set("prettyPrint", "false")
  8441  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions")
  8442  	urls += "?" + c.urlParams_.Encode()
  8443  	req, err := http.NewRequest("POST", urls, body)
  8444  	if err != nil {
  8445  		return nil, err
  8446  	}
  8447  	req.Header = reqHeaders
  8448  	googleapi.Expand(req.URL, map[string]string{
  8449  		"resource": c.resource,
  8450  	})
  8451  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8452  }
  8453  
  8454  // Do executes the "vmwareengine.projects.locations.privateClouds.testIamPermissions" call.
  8455  // Any non-2xx status code is an error. Response headers are in either
  8456  // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was
  8457  // returned at all) in error.(*googleapi.Error).Header. Use
  8458  // googleapi.IsNotModified to check whether the returned error was because
  8459  // http.StatusNotModified was returned.
  8460  func (c *ProjectsLocationsPrivateCloudsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
  8461  	gensupport.SetOptions(c.urlParams_, opts...)
  8462  	res, err := c.doRequest("json")
  8463  	if res != nil && res.StatusCode == http.StatusNotModified {
  8464  		if res.Body != nil {
  8465  			res.Body.Close()
  8466  		}
  8467  		return nil, gensupport.WrapError(&googleapi.Error{
  8468  			Code:   res.StatusCode,
  8469  			Header: res.Header,
  8470  		})
  8471  	}
  8472  	if err != nil {
  8473  		return nil, err
  8474  	}
  8475  	defer googleapi.CloseBody(res)
  8476  	if err := googleapi.CheckResponse(res); err != nil {
  8477  		return nil, gensupport.WrapError(err)
  8478  	}
  8479  	ret := &TestIamPermissionsResponse{
  8480  		ServerResponse: googleapi.ServerResponse{
  8481  			Header:         res.Header,
  8482  			HTTPStatusCode: res.StatusCode,
  8483  		},
  8484  	}
  8485  	target := &ret
  8486  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8487  		return nil, err
  8488  	}
  8489  	return ret, nil
  8490  }
  8491  
  8492  type ProjectsLocationsPrivateCloudsUndeleteCall struct {
  8493  	s                           *Service
  8494  	name                        string
  8495  	undeleteprivatecloudrequest *UndeletePrivateCloudRequest
  8496  	urlParams_                  gensupport.URLParams
  8497  	ctx_                        context.Context
  8498  	header_                     http.Header
  8499  }
  8500  
  8501  // Undelete: Restores a private cloud that was previously scheduled for
  8502  // deletion by `DeletePrivateCloud`. A `PrivateCloud` resource scheduled for
  8503  // deletion has `PrivateCloud.state` set to `DELETED` and
  8504  // `PrivateCloud.expireTime` set to the time when deletion can no longer be
  8505  // reversed.
  8506  //
  8507  //   - name: The resource name of the private cloud scheduled for deletion.
  8508  //     Resource names are schemeless URIs that follow the conventions in
  8509  //     https://cloud.google.com/apis/design/resource_names. For example:
  8510  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud`.
  8511  func (r *ProjectsLocationsPrivateCloudsService) Undelete(name string, undeleteprivatecloudrequest *UndeletePrivateCloudRequest) *ProjectsLocationsPrivateCloudsUndeleteCall {
  8512  	c := &ProjectsLocationsPrivateCloudsUndeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8513  	c.name = name
  8514  	c.undeleteprivatecloudrequest = undeleteprivatecloudrequest
  8515  	return c
  8516  }
  8517  
  8518  // Fields allows partial responses to be retrieved. See
  8519  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8520  // details.
  8521  func (c *ProjectsLocationsPrivateCloudsUndeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsUndeleteCall {
  8522  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8523  	return c
  8524  }
  8525  
  8526  // Context sets the context to be used in this call's Do method.
  8527  func (c *ProjectsLocationsPrivateCloudsUndeleteCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsUndeleteCall {
  8528  	c.ctx_ = ctx
  8529  	return c
  8530  }
  8531  
  8532  // Header returns a http.Header that can be modified by the caller to add
  8533  // headers to the request.
  8534  func (c *ProjectsLocationsPrivateCloudsUndeleteCall) Header() http.Header {
  8535  	if c.header_ == nil {
  8536  		c.header_ = make(http.Header)
  8537  	}
  8538  	return c.header_
  8539  }
  8540  
  8541  func (c *ProjectsLocationsPrivateCloudsUndeleteCall) doRequest(alt string) (*http.Response, error) {
  8542  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8543  	var body io.Reader = nil
  8544  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.undeleteprivatecloudrequest)
  8545  	if err != nil {
  8546  		return nil, err
  8547  	}
  8548  	c.urlParams_.Set("alt", alt)
  8549  	c.urlParams_.Set("prettyPrint", "false")
  8550  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:undelete")
  8551  	urls += "?" + c.urlParams_.Encode()
  8552  	req, err := http.NewRequest("POST", urls, body)
  8553  	if err != nil {
  8554  		return nil, err
  8555  	}
  8556  	req.Header = reqHeaders
  8557  	googleapi.Expand(req.URL, map[string]string{
  8558  		"name": c.name,
  8559  	})
  8560  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8561  }
  8562  
  8563  // Do executes the "vmwareengine.projects.locations.privateClouds.undelete" call.
  8564  // Any non-2xx status code is an error. Response headers are in either
  8565  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  8566  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  8567  // whether the returned error was because http.StatusNotModified was returned.
  8568  func (c *ProjectsLocationsPrivateCloudsUndeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  8569  	gensupport.SetOptions(c.urlParams_, opts...)
  8570  	res, err := c.doRequest("json")
  8571  	if res != nil && res.StatusCode == http.StatusNotModified {
  8572  		if res.Body != nil {
  8573  			res.Body.Close()
  8574  		}
  8575  		return nil, gensupport.WrapError(&googleapi.Error{
  8576  			Code:   res.StatusCode,
  8577  			Header: res.Header,
  8578  		})
  8579  	}
  8580  	if err != nil {
  8581  		return nil, err
  8582  	}
  8583  	defer googleapi.CloseBody(res)
  8584  	if err := googleapi.CheckResponse(res); err != nil {
  8585  		return nil, gensupport.WrapError(err)
  8586  	}
  8587  	ret := &Operation{
  8588  		ServerResponse: googleapi.ServerResponse{
  8589  			Header:         res.Header,
  8590  			HTTPStatusCode: res.StatusCode,
  8591  		},
  8592  	}
  8593  	target := &ret
  8594  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8595  		return nil, err
  8596  	}
  8597  	return ret, nil
  8598  }
  8599  
  8600  type ProjectsLocationsPrivateCloudsUpdateDnsForwardingCall struct {
  8601  	s             *Service
  8602  	name          string
  8603  	dnsforwarding *DnsForwarding
  8604  	urlParams_    gensupport.URLParams
  8605  	ctx_          context.Context
  8606  	header_       http.Header
  8607  }
  8608  
  8609  // UpdateDnsForwarding: Updates the parameters of the `DnsForwarding` config,
  8610  // like associated domains. Only fields specified in `update_mask` are applied.
  8611  //
  8612  //   - name: Output only. The resource name of this DNS profile. Resource names
  8613  //     are schemeless URIs that follow the conventions in
  8614  //     https://cloud.google.com/apis/design/resource_names. For example:
  8615  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/dnsForw
  8616  //     arding`.
  8617  func (r *ProjectsLocationsPrivateCloudsService) UpdateDnsForwarding(name string, dnsforwarding *DnsForwarding) *ProjectsLocationsPrivateCloudsUpdateDnsForwardingCall {
  8618  	c := &ProjectsLocationsPrivateCloudsUpdateDnsForwardingCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8619  	c.name = name
  8620  	c.dnsforwarding = dnsforwarding
  8621  	return c
  8622  }
  8623  
  8624  // RequestId sets the optional parameter "requestId": A request ID to identify
  8625  // requests. Specify a unique request ID so that if you must retry your
  8626  // request, the server will know to ignore the request if it has already been
  8627  // completed. The server guarantees that a request doesn't result in creation
  8628  // of duplicate commitments for at least 60 minutes. For example, consider a
  8629  // situation where you make an initial request and the request times out. If
  8630  // you make the request again with the same request ID, the server can check if
  8631  // original operation with the same request ID was received, and if so, will
  8632  // ignore the second request. This prevents clients from accidentally creating
  8633  // duplicate commitments. The request ID must be a valid UUID with the
  8634  // exception that zero UUID is not supported
  8635  // (00000000-0000-0000-0000-000000000000).
  8636  func (c *ProjectsLocationsPrivateCloudsUpdateDnsForwardingCall) RequestId(requestId string) *ProjectsLocationsPrivateCloudsUpdateDnsForwardingCall {
  8637  	c.urlParams_.Set("requestId", requestId)
  8638  	return c
  8639  }
  8640  
  8641  // UpdateMask sets the optional parameter "updateMask": Required. Field mask is
  8642  // used to specify the fields to be overwritten in the `DnsForwarding` resource
  8643  // by the update. The fields specified in the `update_mask` are relative to the
  8644  // resource, not the full request. A field will be overwritten if it is in the
  8645  // mask. If the user does not provide a mask then all fields will be
  8646  // overwritten.
  8647  func (c *ProjectsLocationsPrivateCloudsUpdateDnsForwardingCall) UpdateMask(updateMask string) *ProjectsLocationsPrivateCloudsUpdateDnsForwardingCall {
  8648  	c.urlParams_.Set("updateMask", updateMask)
  8649  	return c
  8650  }
  8651  
  8652  // Fields allows partial responses to be retrieved. See
  8653  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8654  // details.
  8655  func (c *ProjectsLocationsPrivateCloudsUpdateDnsForwardingCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsUpdateDnsForwardingCall {
  8656  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8657  	return c
  8658  }
  8659  
  8660  // Context sets the context to be used in this call's Do method.
  8661  func (c *ProjectsLocationsPrivateCloudsUpdateDnsForwardingCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsUpdateDnsForwardingCall {
  8662  	c.ctx_ = ctx
  8663  	return c
  8664  }
  8665  
  8666  // Header returns a http.Header that can be modified by the caller to add
  8667  // headers to the request.
  8668  func (c *ProjectsLocationsPrivateCloudsUpdateDnsForwardingCall) Header() http.Header {
  8669  	if c.header_ == nil {
  8670  		c.header_ = make(http.Header)
  8671  	}
  8672  	return c.header_
  8673  }
  8674  
  8675  func (c *ProjectsLocationsPrivateCloudsUpdateDnsForwardingCall) doRequest(alt string) (*http.Response, error) {
  8676  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8677  	var body io.Reader = nil
  8678  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.dnsforwarding)
  8679  	if err != nil {
  8680  		return nil, err
  8681  	}
  8682  	c.urlParams_.Set("alt", alt)
  8683  	c.urlParams_.Set("prettyPrint", "false")
  8684  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  8685  	urls += "?" + c.urlParams_.Encode()
  8686  	req, err := http.NewRequest("PATCH", urls, body)
  8687  	if err != nil {
  8688  		return nil, err
  8689  	}
  8690  	req.Header = reqHeaders
  8691  	googleapi.Expand(req.URL, map[string]string{
  8692  		"name": c.name,
  8693  	})
  8694  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8695  }
  8696  
  8697  // Do executes the "vmwareengine.projects.locations.privateClouds.updateDnsForwarding" call.
  8698  // Any non-2xx status code is an error. Response headers are in either
  8699  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  8700  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  8701  // whether the returned error was because http.StatusNotModified was returned.
  8702  func (c *ProjectsLocationsPrivateCloudsUpdateDnsForwardingCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  8703  	gensupport.SetOptions(c.urlParams_, opts...)
  8704  	res, err := c.doRequest("json")
  8705  	if res != nil && res.StatusCode == http.StatusNotModified {
  8706  		if res.Body != nil {
  8707  			res.Body.Close()
  8708  		}
  8709  		return nil, gensupport.WrapError(&googleapi.Error{
  8710  			Code:   res.StatusCode,
  8711  			Header: res.Header,
  8712  		})
  8713  	}
  8714  	if err != nil {
  8715  		return nil, err
  8716  	}
  8717  	defer googleapi.CloseBody(res)
  8718  	if err := googleapi.CheckResponse(res); err != nil {
  8719  		return nil, gensupport.WrapError(err)
  8720  	}
  8721  	ret := &Operation{
  8722  		ServerResponse: googleapi.ServerResponse{
  8723  			Header:         res.Header,
  8724  			HTTPStatusCode: res.StatusCode,
  8725  		},
  8726  	}
  8727  	target := &ret
  8728  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8729  		return nil, err
  8730  	}
  8731  	return ret, nil
  8732  }
  8733  
  8734  type ProjectsLocationsPrivateCloudsClustersCreateCall struct {
  8735  	s          *Service
  8736  	parent     string
  8737  	cluster    *Cluster
  8738  	urlParams_ gensupport.URLParams
  8739  	ctx_       context.Context
  8740  	header_    http.Header
  8741  }
  8742  
  8743  // Create: Creates a new cluster in a given private cloud. Creating a new
  8744  // cluster provides additional nodes for use in the parent private cloud and
  8745  // requires sufficient node quota
  8746  // (https://cloud.google.com/vmware-engine/quotas).
  8747  //
  8748  //   - parent: The resource name of the private cloud to create a new cluster in.
  8749  //     Resource names are schemeless URIs that follow the conventions in
  8750  //     https://cloud.google.com/apis/design/resource_names. For example:
  8751  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud`.
  8752  func (r *ProjectsLocationsPrivateCloudsClustersService) Create(parent string, cluster *Cluster) *ProjectsLocationsPrivateCloudsClustersCreateCall {
  8753  	c := &ProjectsLocationsPrivateCloudsClustersCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8754  	c.parent = parent
  8755  	c.cluster = cluster
  8756  	return c
  8757  }
  8758  
  8759  // ClusterId sets the optional parameter "clusterId": Required. The
  8760  // user-provided identifier of the new `Cluster`. This identifier must be
  8761  // unique among clusters within the parent and becomes the final token in the
  8762  // name URI. The identifier must meet the following requirements: * Only
  8763  // contains 1-63 alphanumeric characters and hyphens * Begins with an
  8764  // alphabetical character * Ends with a non-hyphen character * Not formatted as
  8765  // a UUID * Complies with RFC 1034
  8766  // (https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
  8767  func (c *ProjectsLocationsPrivateCloudsClustersCreateCall) ClusterId(clusterId string) *ProjectsLocationsPrivateCloudsClustersCreateCall {
  8768  	c.urlParams_.Set("clusterId", clusterId)
  8769  	return c
  8770  }
  8771  
  8772  // RequestId sets the optional parameter "requestId": The request ID must be a
  8773  // valid UUID with the exception that zero UUID is not supported
  8774  // (00000000-0000-0000-0000-000000000000).
  8775  func (c *ProjectsLocationsPrivateCloudsClustersCreateCall) RequestId(requestId string) *ProjectsLocationsPrivateCloudsClustersCreateCall {
  8776  	c.urlParams_.Set("requestId", requestId)
  8777  	return c
  8778  }
  8779  
  8780  // ValidateOnly sets the optional parameter "validateOnly": True if you want
  8781  // the request to be validated and not executed; false otherwise.
  8782  func (c *ProjectsLocationsPrivateCloudsClustersCreateCall) ValidateOnly(validateOnly bool) *ProjectsLocationsPrivateCloudsClustersCreateCall {
  8783  	c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly))
  8784  	return c
  8785  }
  8786  
  8787  // Fields allows partial responses to be retrieved. See
  8788  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8789  // details.
  8790  func (c *ProjectsLocationsPrivateCloudsClustersCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsClustersCreateCall {
  8791  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8792  	return c
  8793  }
  8794  
  8795  // Context sets the context to be used in this call's Do method.
  8796  func (c *ProjectsLocationsPrivateCloudsClustersCreateCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsClustersCreateCall {
  8797  	c.ctx_ = ctx
  8798  	return c
  8799  }
  8800  
  8801  // Header returns a http.Header that can be modified by the caller to add
  8802  // headers to the request.
  8803  func (c *ProjectsLocationsPrivateCloudsClustersCreateCall) Header() http.Header {
  8804  	if c.header_ == nil {
  8805  		c.header_ = make(http.Header)
  8806  	}
  8807  	return c.header_
  8808  }
  8809  
  8810  func (c *ProjectsLocationsPrivateCloudsClustersCreateCall) doRequest(alt string) (*http.Response, error) {
  8811  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  8812  	var body io.Reader = nil
  8813  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.cluster)
  8814  	if err != nil {
  8815  		return nil, err
  8816  	}
  8817  	c.urlParams_.Set("alt", alt)
  8818  	c.urlParams_.Set("prettyPrint", "false")
  8819  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/clusters")
  8820  	urls += "?" + c.urlParams_.Encode()
  8821  	req, err := http.NewRequest("POST", urls, body)
  8822  	if err != nil {
  8823  		return nil, err
  8824  	}
  8825  	req.Header = reqHeaders
  8826  	googleapi.Expand(req.URL, map[string]string{
  8827  		"parent": c.parent,
  8828  	})
  8829  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8830  }
  8831  
  8832  // Do executes the "vmwareengine.projects.locations.privateClouds.clusters.create" call.
  8833  // Any non-2xx status code is an error. Response headers are in either
  8834  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  8835  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  8836  // whether the returned error was because http.StatusNotModified was returned.
  8837  func (c *ProjectsLocationsPrivateCloudsClustersCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  8838  	gensupport.SetOptions(c.urlParams_, opts...)
  8839  	res, err := c.doRequest("json")
  8840  	if res != nil && res.StatusCode == http.StatusNotModified {
  8841  		if res.Body != nil {
  8842  			res.Body.Close()
  8843  		}
  8844  		return nil, gensupport.WrapError(&googleapi.Error{
  8845  			Code:   res.StatusCode,
  8846  			Header: res.Header,
  8847  		})
  8848  	}
  8849  	if err != nil {
  8850  		return nil, err
  8851  	}
  8852  	defer googleapi.CloseBody(res)
  8853  	if err := googleapi.CheckResponse(res); err != nil {
  8854  		return nil, gensupport.WrapError(err)
  8855  	}
  8856  	ret := &Operation{
  8857  		ServerResponse: googleapi.ServerResponse{
  8858  			Header:         res.Header,
  8859  			HTTPStatusCode: res.StatusCode,
  8860  		},
  8861  	}
  8862  	target := &ret
  8863  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8864  		return nil, err
  8865  	}
  8866  	return ret, nil
  8867  }
  8868  
  8869  type ProjectsLocationsPrivateCloudsClustersDeleteCall struct {
  8870  	s          *Service
  8871  	name       string
  8872  	urlParams_ gensupport.URLParams
  8873  	ctx_       context.Context
  8874  	header_    http.Header
  8875  }
  8876  
  8877  // Delete: Deletes a `Cluster` resource. To avoid unintended data loss, migrate
  8878  // or gracefully shut down any workloads running on the cluster before
  8879  // deletion. You cannot delete the management cluster of a private cloud using
  8880  // this method.
  8881  //
  8882  //   - name: The resource name of the cluster to delete. Resource names are
  8883  //     schemeless URIs that follow the conventions in
  8884  //     https://cloud.google.com/apis/design/resource_names. For example:
  8885  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/cluster
  8886  //     s/my-cluster`.
  8887  func (r *ProjectsLocationsPrivateCloudsClustersService) Delete(name string) *ProjectsLocationsPrivateCloudsClustersDeleteCall {
  8888  	c := &ProjectsLocationsPrivateCloudsClustersDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8889  	c.name = name
  8890  	return c
  8891  }
  8892  
  8893  // RequestId sets the optional parameter "requestId": The request ID must be a
  8894  // valid UUID with the exception that zero UUID is not supported
  8895  // (00000000-0000-0000-0000-000000000000).
  8896  func (c *ProjectsLocationsPrivateCloudsClustersDeleteCall) RequestId(requestId string) *ProjectsLocationsPrivateCloudsClustersDeleteCall {
  8897  	c.urlParams_.Set("requestId", requestId)
  8898  	return c
  8899  }
  8900  
  8901  // Fields allows partial responses to be retrieved. See
  8902  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  8903  // details.
  8904  func (c *ProjectsLocationsPrivateCloudsClustersDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsClustersDeleteCall {
  8905  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  8906  	return c
  8907  }
  8908  
  8909  // Context sets the context to be used in this call's Do method.
  8910  func (c *ProjectsLocationsPrivateCloudsClustersDeleteCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsClustersDeleteCall {
  8911  	c.ctx_ = ctx
  8912  	return c
  8913  }
  8914  
  8915  // Header returns a http.Header that can be modified by the caller to add
  8916  // headers to the request.
  8917  func (c *ProjectsLocationsPrivateCloudsClustersDeleteCall) Header() http.Header {
  8918  	if c.header_ == nil {
  8919  		c.header_ = make(http.Header)
  8920  	}
  8921  	return c.header_
  8922  }
  8923  
  8924  func (c *ProjectsLocationsPrivateCloudsClustersDeleteCall) doRequest(alt string) (*http.Response, error) {
  8925  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  8926  	var body io.Reader = nil
  8927  	c.urlParams_.Set("alt", alt)
  8928  	c.urlParams_.Set("prettyPrint", "false")
  8929  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  8930  	urls += "?" + c.urlParams_.Encode()
  8931  	req, err := http.NewRequest("DELETE", urls, body)
  8932  	if err != nil {
  8933  		return nil, err
  8934  	}
  8935  	req.Header = reqHeaders
  8936  	googleapi.Expand(req.URL, map[string]string{
  8937  		"name": c.name,
  8938  	})
  8939  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  8940  }
  8941  
  8942  // Do executes the "vmwareengine.projects.locations.privateClouds.clusters.delete" call.
  8943  // Any non-2xx status code is an error. Response headers are in either
  8944  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  8945  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  8946  // whether the returned error was because http.StatusNotModified was returned.
  8947  func (c *ProjectsLocationsPrivateCloudsClustersDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  8948  	gensupport.SetOptions(c.urlParams_, opts...)
  8949  	res, err := c.doRequest("json")
  8950  	if res != nil && res.StatusCode == http.StatusNotModified {
  8951  		if res.Body != nil {
  8952  			res.Body.Close()
  8953  		}
  8954  		return nil, gensupport.WrapError(&googleapi.Error{
  8955  			Code:   res.StatusCode,
  8956  			Header: res.Header,
  8957  		})
  8958  	}
  8959  	if err != nil {
  8960  		return nil, err
  8961  	}
  8962  	defer googleapi.CloseBody(res)
  8963  	if err := googleapi.CheckResponse(res); err != nil {
  8964  		return nil, gensupport.WrapError(err)
  8965  	}
  8966  	ret := &Operation{
  8967  		ServerResponse: googleapi.ServerResponse{
  8968  			Header:         res.Header,
  8969  			HTTPStatusCode: res.StatusCode,
  8970  		},
  8971  	}
  8972  	target := &ret
  8973  	if err := gensupport.DecodeResponse(target, res); err != nil {
  8974  		return nil, err
  8975  	}
  8976  	return ret, nil
  8977  }
  8978  
  8979  type ProjectsLocationsPrivateCloudsClustersGetCall struct {
  8980  	s            *Service
  8981  	name         string
  8982  	urlParams_   gensupport.URLParams
  8983  	ifNoneMatch_ string
  8984  	ctx_         context.Context
  8985  	header_      http.Header
  8986  }
  8987  
  8988  // Get: Retrieves a `Cluster` resource by its resource name.
  8989  //
  8990  //   - name: The cluster resource name to retrieve. Resource names are schemeless
  8991  //     URIs that follow the conventions in
  8992  //     https://cloud.google.com/apis/design/resource_names. For example:
  8993  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/cluster
  8994  //     s/my-cluster`.
  8995  func (r *ProjectsLocationsPrivateCloudsClustersService) Get(name string) *ProjectsLocationsPrivateCloudsClustersGetCall {
  8996  	c := &ProjectsLocationsPrivateCloudsClustersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  8997  	c.name = name
  8998  	return c
  8999  }
  9000  
  9001  // Fields allows partial responses to be retrieved. See
  9002  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9003  // details.
  9004  func (c *ProjectsLocationsPrivateCloudsClustersGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsClustersGetCall {
  9005  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9006  	return c
  9007  }
  9008  
  9009  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  9010  // object's ETag matches the given value. This is useful for getting updates
  9011  // only after the object has changed since the last request.
  9012  func (c *ProjectsLocationsPrivateCloudsClustersGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsClustersGetCall {
  9013  	c.ifNoneMatch_ = entityTag
  9014  	return c
  9015  }
  9016  
  9017  // Context sets the context to be used in this call's Do method.
  9018  func (c *ProjectsLocationsPrivateCloudsClustersGetCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsClustersGetCall {
  9019  	c.ctx_ = ctx
  9020  	return c
  9021  }
  9022  
  9023  // Header returns a http.Header that can be modified by the caller to add
  9024  // headers to the request.
  9025  func (c *ProjectsLocationsPrivateCloudsClustersGetCall) Header() http.Header {
  9026  	if c.header_ == nil {
  9027  		c.header_ = make(http.Header)
  9028  	}
  9029  	return c.header_
  9030  }
  9031  
  9032  func (c *ProjectsLocationsPrivateCloudsClustersGetCall) doRequest(alt string) (*http.Response, error) {
  9033  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9034  	if c.ifNoneMatch_ != "" {
  9035  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  9036  	}
  9037  	var body io.Reader = nil
  9038  	c.urlParams_.Set("alt", alt)
  9039  	c.urlParams_.Set("prettyPrint", "false")
  9040  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  9041  	urls += "?" + c.urlParams_.Encode()
  9042  	req, err := http.NewRequest("GET", urls, body)
  9043  	if err != nil {
  9044  		return nil, err
  9045  	}
  9046  	req.Header = reqHeaders
  9047  	googleapi.Expand(req.URL, map[string]string{
  9048  		"name": c.name,
  9049  	})
  9050  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9051  }
  9052  
  9053  // Do executes the "vmwareengine.projects.locations.privateClouds.clusters.get" call.
  9054  // Any non-2xx status code is an error. Response headers are in either
  9055  // *Cluster.ServerResponse.Header or (if a response was returned at all) in
  9056  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  9057  // whether the returned error was because http.StatusNotModified was returned.
  9058  func (c *ProjectsLocationsPrivateCloudsClustersGetCall) Do(opts ...googleapi.CallOption) (*Cluster, error) {
  9059  	gensupport.SetOptions(c.urlParams_, opts...)
  9060  	res, err := c.doRequest("json")
  9061  	if res != nil && res.StatusCode == http.StatusNotModified {
  9062  		if res.Body != nil {
  9063  			res.Body.Close()
  9064  		}
  9065  		return nil, gensupport.WrapError(&googleapi.Error{
  9066  			Code:   res.StatusCode,
  9067  			Header: res.Header,
  9068  		})
  9069  	}
  9070  	if err != nil {
  9071  		return nil, err
  9072  	}
  9073  	defer googleapi.CloseBody(res)
  9074  	if err := googleapi.CheckResponse(res); err != nil {
  9075  		return nil, gensupport.WrapError(err)
  9076  	}
  9077  	ret := &Cluster{
  9078  		ServerResponse: googleapi.ServerResponse{
  9079  			Header:         res.Header,
  9080  			HTTPStatusCode: res.StatusCode,
  9081  		},
  9082  	}
  9083  	target := &ret
  9084  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9085  		return nil, err
  9086  	}
  9087  	return ret, nil
  9088  }
  9089  
  9090  type ProjectsLocationsPrivateCloudsClustersGetIamPolicyCall struct {
  9091  	s            *Service
  9092  	resource     string
  9093  	urlParams_   gensupport.URLParams
  9094  	ifNoneMatch_ string
  9095  	ctx_         context.Context
  9096  	header_      http.Header
  9097  }
  9098  
  9099  // GetIamPolicy: Gets the access control policy for a resource. Returns an
  9100  // empty policy if the resource exists and does not have a policy set.
  9101  //
  9102  //   - resource: REQUIRED: The resource for which the policy is being requested.
  9103  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  9104  //     for the appropriate value for this field.
  9105  func (r *ProjectsLocationsPrivateCloudsClustersService) GetIamPolicy(resource string) *ProjectsLocationsPrivateCloudsClustersGetIamPolicyCall {
  9106  	c := &ProjectsLocationsPrivateCloudsClustersGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9107  	c.resource = resource
  9108  	return c
  9109  }
  9110  
  9111  // OptionsRequestedPolicyVersion sets the optional parameter
  9112  // "options.requestedPolicyVersion": The maximum policy version that will be
  9113  // used to format the policy. Valid values are 0, 1, and 3. Requests specifying
  9114  // an invalid value will be rejected. Requests for policies with any
  9115  // conditional role bindings must specify version 3. Policies with no
  9116  // conditional role bindings may specify any valid value or leave the field
  9117  // unset. The policy in the response might use the policy version that you
  9118  // specified, or it might use a lower policy version. For example, if you
  9119  // specify version 3, but the policy has no conditional role bindings, the
  9120  // response uses version 1. To learn which resources support conditions in
  9121  // their IAM policies, see the IAM documentation
  9122  // (https://cloud.google.com/iam/help/conditions/resource-policies).
  9123  func (c *ProjectsLocationsPrivateCloudsClustersGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsPrivateCloudsClustersGetIamPolicyCall {
  9124  	c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion))
  9125  	return c
  9126  }
  9127  
  9128  // Fields allows partial responses to be retrieved. See
  9129  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9130  // details.
  9131  func (c *ProjectsLocationsPrivateCloudsClustersGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsClustersGetIamPolicyCall {
  9132  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9133  	return c
  9134  }
  9135  
  9136  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  9137  // object's ETag matches the given value. This is useful for getting updates
  9138  // only after the object has changed since the last request.
  9139  func (c *ProjectsLocationsPrivateCloudsClustersGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsClustersGetIamPolicyCall {
  9140  	c.ifNoneMatch_ = entityTag
  9141  	return c
  9142  }
  9143  
  9144  // Context sets the context to be used in this call's Do method.
  9145  func (c *ProjectsLocationsPrivateCloudsClustersGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsClustersGetIamPolicyCall {
  9146  	c.ctx_ = ctx
  9147  	return c
  9148  }
  9149  
  9150  // Header returns a http.Header that can be modified by the caller to add
  9151  // headers to the request.
  9152  func (c *ProjectsLocationsPrivateCloudsClustersGetIamPolicyCall) Header() http.Header {
  9153  	if c.header_ == nil {
  9154  		c.header_ = make(http.Header)
  9155  	}
  9156  	return c.header_
  9157  }
  9158  
  9159  func (c *ProjectsLocationsPrivateCloudsClustersGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  9160  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9161  	if c.ifNoneMatch_ != "" {
  9162  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  9163  	}
  9164  	var body io.Reader = nil
  9165  	c.urlParams_.Set("alt", alt)
  9166  	c.urlParams_.Set("prettyPrint", "false")
  9167  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy")
  9168  	urls += "?" + c.urlParams_.Encode()
  9169  	req, err := http.NewRequest("GET", urls, body)
  9170  	if err != nil {
  9171  		return nil, err
  9172  	}
  9173  	req.Header = reqHeaders
  9174  	googleapi.Expand(req.URL, map[string]string{
  9175  		"resource": c.resource,
  9176  	})
  9177  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9178  }
  9179  
  9180  // Do executes the "vmwareengine.projects.locations.privateClouds.clusters.getIamPolicy" call.
  9181  // Any non-2xx status code is an error. Response headers are in either
  9182  // *Policy.ServerResponse.Header or (if a response was returned at all) in
  9183  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  9184  // whether the returned error was because http.StatusNotModified was returned.
  9185  func (c *ProjectsLocationsPrivateCloudsClustersGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
  9186  	gensupport.SetOptions(c.urlParams_, opts...)
  9187  	res, err := c.doRequest("json")
  9188  	if res != nil && res.StatusCode == http.StatusNotModified {
  9189  		if res.Body != nil {
  9190  			res.Body.Close()
  9191  		}
  9192  		return nil, gensupport.WrapError(&googleapi.Error{
  9193  			Code:   res.StatusCode,
  9194  			Header: res.Header,
  9195  		})
  9196  	}
  9197  	if err != nil {
  9198  		return nil, err
  9199  	}
  9200  	defer googleapi.CloseBody(res)
  9201  	if err := googleapi.CheckResponse(res); err != nil {
  9202  		return nil, gensupport.WrapError(err)
  9203  	}
  9204  	ret := &Policy{
  9205  		ServerResponse: googleapi.ServerResponse{
  9206  			Header:         res.Header,
  9207  			HTTPStatusCode: res.StatusCode,
  9208  		},
  9209  	}
  9210  	target := &ret
  9211  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9212  		return nil, err
  9213  	}
  9214  	return ret, nil
  9215  }
  9216  
  9217  type ProjectsLocationsPrivateCloudsClustersListCall struct {
  9218  	s            *Service
  9219  	parent       string
  9220  	urlParams_   gensupport.URLParams
  9221  	ifNoneMatch_ string
  9222  	ctx_         context.Context
  9223  	header_      http.Header
  9224  }
  9225  
  9226  // List: Lists `Cluster` resources in a given private cloud.
  9227  //
  9228  //   - parent: The resource name of the private cloud to query for clusters.
  9229  //     Resource names are schemeless URIs that follow the conventions in
  9230  //     https://cloud.google.com/apis/design/resource_names. For example:
  9231  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud`.
  9232  func (r *ProjectsLocationsPrivateCloudsClustersService) List(parent string) *ProjectsLocationsPrivateCloudsClustersListCall {
  9233  	c := &ProjectsLocationsPrivateCloudsClustersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9234  	c.parent = parent
  9235  	return c
  9236  }
  9237  
  9238  // Filter sets the optional parameter "filter": To filter on multiple
  9239  // expressions, provide each separate expression within parentheses. For
  9240  // example: ``` (name = "example-cluster") (nodeCount = "3") ``` By default,
  9241  // each expression is an `AND` expression. However, you can include `AND` and
  9242  // `OR` expressions explicitly. For example: ``` (name = "example-cluster-1")
  9243  // AND (createTime > "2021-04-12T08:15:10.40Z") OR (name = "example-cluster-2")
  9244  // ```
  9245  func (c *ProjectsLocationsPrivateCloudsClustersListCall) Filter(filter string) *ProjectsLocationsPrivateCloudsClustersListCall {
  9246  	c.urlParams_.Set("filter", filter)
  9247  	return c
  9248  }
  9249  
  9250  // OrderBy sets the optional parameter "orderBy": Sorts list results by a
  9251  // certain order. By default, returned results are ordered by `name` in
  9252  // ascending order. You can also sort results in descending order based on the
  9253  // `name` value using `orderBy="name desc". Currently, only ordering by `name`
  9254  // is supported.
  9255  func (c *ProjectsLocationsPrivateCloudsClustersListCall) OrderBy(orderBy string) *ProjectsLocationsPrivateCloudsClustersListCall {
  9256  	c.urlParams_.Set("orderBy", orderBy)
  9257  	return c
  9258  }
  9259  
  9260  // PageSize sets the optional parameter "pageSize": The maximum number of
  9261  // clusters to return in one page. The service may return fewer than this
  9262  // value. The maximum value is coerced to 1000. The default value of this field
  9263  // is 500.
  9264  func (c *ProjectsLocationsPrivateCloudsClustersListCall) PageSize(pageSize int64) *ProjectsLocationsPrivateCloudsClustersListCall {
  9265  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  9266  	return c
  9267  }
  9268  
  9269  // PageToken sets the optional parameter "pageToken": A page token, received
  9270  // from a previous `ListClusters` call. Provide this to retrieve the subsequent
  9271  // page. When paginating, all other parameters provided to `ListClusters` must
  9272  // match the call that provided the page token.
  9273  func (c *ProjectsLocationsPrivateCloudsClustersListCall) PageToken(pageToken string) *ProjectsLocationsPrivateCloudsClustersListCall {
  9274  	c.urlParams_.Set("pageToken", pageToken)
  9275  	return c
  9276  }
  9277  
  9278  // Fields allows partial responses to be retrieved. See
  9279  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9280  // details.
  9281  func (c *ProjectsLocationsPrivateCloudsClustersListCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsClustersListCall {
  9282  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9283  	return c
  9284  }
  9285  
  9286  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  9287  // object's ETag matches the given value. This is useful for getting updates
  9288  // only after the object has changed since the last request.
  9289  func (c *ProjectsLocationsPrivateCloudsClustersListCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsClustersListCall {
  9290  	c.ifNoneMatch_ = entityTag
  9291  	return c
  9292  }
  9293  
  9294  // Context sets the context to be used in this call's Do method.
  9295  func (c *ProjectsLocationsPrivateCloudsClustersListCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsClustersListCall {
  9296  	c.ctx_ = ctx
  9297  	return c
  9298  }
  9299  
  9300  // Header returns a http.Header that can be modified by the caller to add
  9301  // headers to the request.
  9302  func (c *ProjectsLocationsPrivateCloudsClustersListCall) Header() http.Header {
  9303  	if c.header_ == nil {
  9304  		c.header_ = make(http.Header)
  9305  	}
  9306  	return c.header_
  9307  }
  9308  
  9309  func (c *ProjectsLocationsPrivateCloudsClustersListCall) doRequest(alt string) (*http.Response, error) {
  9310  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9311  	if c.ifNoneMatch_ != "" {
  9312  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  9313  	}
  9314  	var body io.Reader = nil
  9315  	c.urlParams_.Set("alt", alt)
  9316  	c.urlParams_.Set("prettyPrint", "false")
  9317  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/clusters")
  9318  	urls += "?" + c.urlParams_.Encode()
  9319  	req, err := http.NewRequest("GET", urls, body)
  9320  	if err != nil {
  9321  		return nil, err
  9322  	}
  9323  	req.Header = reqHeaders
  9324  	googleapi.Expand(req.URL, map[string]string{
  9325  		"parent": c.parent,
  9326  	})
  9327  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9328  }
  9329  
  9330  // Do executes the "vmwareengine.projects.locations.privateClouds.clusters.list" call.
  9331  // Any non-2xx status code is an error. Response headers are in either
  9332  // *ListClustersResponse.ServerResponse.Header or (if a response was returned
  9333  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  9334  // check whether the returned error was because http.StatusNotModified was
  9335  // returned.
  9336  func (c *ProjectsLocationsPrivateCloudsClustersListCall) Do(opts ...googleapi.CallOption) (*ListClustersResponse, error) {
  9337  	gensupport.SetOptions(c.urlParams_, opts...)
  9338  	res, err := c.doRequest("json")
  9339  	if res != nil && res.StatusCode == http.StatusNotModified {
  9340  		if res.Body != nil {
  9341  			res.Body.Close()
  9342  		}
  9343  		return nil, gensupport.WrapError(&googleapi.Error{
  9344  			Code:   res.StatusCode,
  9345  			Header: res.Header,
  9346  		})
  9347  	}
  9348  	if err != nil {
  9349  		return nil, err
  9350  	}
  9351  	defer googleapi.CloseBody(res)
  9352  	if err := googleapi.CheckResponse(res); err != nil {
  9353  		return nil, gensupport.WrapError(err)
  9354  	}
  9355  	ret := &ListClustersResponse{
  9356  		ServerResponse: googleapi.ServerResponse{
  9357  			Header:         res.Header,
  9358  			HTTPStatusCode: res.StatusCode,
  9359  		},
  9360  	}
  9361  	target := &ret
  9362  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9363  		return nil, err
  9364  	}
  9365  	return ret, nil
  9366  }
  9367  
  9368  // Pages invokes f for each page of results.
  9369  // A non-nil error returned from f will halt the iteration.
  9370  // The provided context supersedes any context provided to the Context method.
  9371  func (c *ProjectsLocationsPrivateCloudsClustersListCall) Pages(ctx context.Context, f func(*ListClustersResponse) error) error {
  9372  	c.ctx_ = ctx
  9373  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  9374  	for {
  9375  		x, err := c.Do()
  9376  		if err != nil {
  9377  			return err
  9378  		}
  9379  		if err := f(x); err != nil {
  9380  			return err
  9381  		}
  9382  		if x.NextPageToken == "" {
  9383  			return nil
  9384  		}
  9385  		c.PageToken(x.NextPageToken)
  9386  	}
  9387  }
  9388  
  9389  type ProjectsLocationsPrivateCloudsClustersPatchCall struct {
  9390  	s          *Service
  9391  	name       string
  9392  	cluster    *Cluster
  9393  	urlParams_ gensupport.URLParams
  9394  	ctx_       context.Context
  9395  	header_    http.Header
  9396  }
  9397  
  9398  // Patch: Modifies a `Cluster` resource. Only fields specified in `updateMask`
  9399  // are applied. During operation processing, the resource is temporarily in the
  9400  // `ACTIVE` state before the operation fully completes. For that period of
  9401  // time, you can't update the resource. Use the operation status to determine
  9402  // when the processing fully completes.
  9403  //
  9404  //   - name: Output only. The resource name of this cluster. Resource names are
  9405  //     schemeless URIs that follow the conventions in
  9406  //     https://cloud.google.com/apis/design/resource_names. For example:
  9407  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/cluster
  9408  //     s/my-cluster`.
  9409  func (r *ProjectsLocationsPrivateCloudsClustersService) Patch(name string, cluster *Cluster) *ProjectsLocationsPrivateCloudsClustersPatchCall {
  9410  	c := &ProjectsLocationsPrivateCloudsClustersPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9411  	c.name = name
  9412  	c.cluster = cluster
  9413  	return c
  9414  }
  9415  
  9416  // RequestId sets the optional parameter "requestId": The request ID must be a
  9417  // valid UUID with the exception that zero UUID is not supported
  9418  // (00000000-0000-0000-0000-000000000000).
  9419  func (c *ProjectsLocationsPrivateCloudsClustersPatchCall) RequestId(requestId string) *ProjectsLocationsPrivateCloudsClustersPatchCall {
  9420  	c.urlParams_.Set("requestId", requestId)
  9421  	return c
  9422  }
  9423  
  9424  // UpdateMask sets the optional parameter "updateMask": Required. Field mask is
  9425  // used to specify the fields to be overwritten in the `Cluster` resource by
  9426  // the update. The fields specified in the `updateMask` are relative to the
  9427  // resource, not the full request. A field will be overwritten if it is in the
  9428  // mask. If the user does not provide a mask then all fields will be
  9429  // overwritten.
  9430  func (c *ProjectsLocationsPrivateCloudsClustersPatchCall) UpdateMask(updateMask string) *ProjectsLocationsPrivateCloudsClustersPatchCall {
  9431  	c.urlParams_.Set("updateMask", updateMask)
  9432  	return c
  9433  }
  9434  
  9435  // ValidateOnly sets the optional parameter "validateOnly": True if you want
  9436  // the request to be validated and not executed; false otherwise.
  9437  func (c *ProjectsLocationsPrivateCloudsClustersPatchCall) ValidateOnly(validateOnly bool) *ProjectsLocationsPrivateCloudsClustersPatchCall {
  9438  	c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly))
  9439  	return c
  9440  }
  9441  
  9442  // Fields allows partial responses to be retrieved. See
  9443  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9444  // details.
  9445  func (c *ProjectsLocationsPrivateCloudsClustersPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsClustersPatchCall {
  9446  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9447  	return c
  9448  }
  9449  
  9450  // Context sets the context to be used in this call's Do method.
  9451  func (c *ProjectsLocationsPrivateCloudsClustersPatchCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsClustersPatchCall {
  9452  	c.ctx_ = ctx
  9453  	return c
  9454  }
  9455  
  9456  // Header returns a http.Header that can be modified by the caller to add
  9457  // headers to the request.
  9458  func (c *ProjectsLocationsPrivateCloudsClustersPatchCall) Header() http.Header {
  9459  	if c.header_ == nil {
  9460  		c.header_ = make(http.Header)
  9461  	}
  9462  	return c.header_
  9463  }
  9464  
  9465  func (c *ProjectsLocationsPrivateCloudsClustersPatchCall) doRequest(alt string) (*http.Response, error) {
  9466  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9467  	var body io.Reader = nil
  9468  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.cluster)
  9469  	if err != nil {
  9470  		return nil, err
  9471  	}
  9472  	c.urlParams_.Set("alt", alt)
  9473  	c.urlParams_.Set("prettyPrint", "false")
  9474  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  9475  	urls += "?" + c.urlParams_.Encode()
  9476  	req, err := http.NewRequest("PATCH", urls, body)
  9477  	if err != nil {
  9478  		return nil, err
  9479  	}
  9480  	req.Header = reqHeaders
  9481  	googleapi.Expand(req.URL, map[string]string{
  9482  		"name": c.name,
  9483  	})
  9484  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9485  }
  9486  
  9487  // Do executes the "vmwareengine.projects.locations.privateClouds.clusters.patch" call.
  9488  // Any non-2xx status code is an error. Response headers are in either
  9489  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  9490  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  9491  // whether the returned error was because http.StatusNotModified was returned.
  9492  func (c *ProjectsLocationsPrivateCloudsClustersPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  9493  	gensupport.SetOptions(c.urlParams_, opts...)
  9494  	res, err := c.doRequest("json")
  9495  	if res != nil && res.StatusCode == http.StatusNotModified {
  9496  		if res.Body != nil {
  9497  			res.Body.Close()
  9498  		}
  9499  		return nil, gensupport.WrapError(&googleapi.Error{
  9500  			Code:   res.StatusCode,
  9501  			Header: res.Header,
  9502  		})
  9503  	}
  9504  	if err != nil {
  9505  		return nil, err
  9506  	}
  9507  	defer googleapi.CloseBody(res)
  9508  	if err := googleapi.CheckResponse(res); err != nil {
  9509  		return nil, gensupport.WrapError(err)
  9510  	}
  9511  	ret := &Operation{
  9512  		ServerResponse: googleapi.ServerResponse{
  9513  			Header:         res.Header,
  9514  			HTTPStatusCode: res.StatusCode,
  9515  		},
  9516  	}
  9517  	target := &ret
  9518  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9519  		return nil, err
  9520  	}
  9521  	return ret, nil
  9522  }
  9523  
  9524  type ProjectsLocationsPrivateCloudsClustersSetIamPolicyCall struct {
  9525  	s                   *Service
  9526  	resource            string
  9527  	setiampolicyrequest *SetIamPolicyRequest
  9528  	urlParams_          gensupport.URLParams
  9529  	ctx_                context.Context
  9530  	header_             http.Header
  9531  }
  9532  
  9533  // SetIamPolicy: Sets the access control policy on the specified resource.
  9534  // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`,
  9535  // and `PERMISSION_DENIED` errors.
  9536  //
  9537  //   - resource: REQUIRED: The resource for which the policy is being specified.
  9538  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
  9539  //     for the appropriate value for this field.
  9540  func (r *ProjectsLocationsPrivateCloudsClustersService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsPrivateCloudsClustersSetIamPolicyCall {
  9541  	c := &ProjectsLocationsPrivateCloudsClustersSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9542  	c.resource = resource
  9543  	c.setiampolicyrequest = setiampolicyrequest
  9544  	return c
  9545  }
  9546  
  9547  // Fields allows partial responses to be retrieved. See
  9548  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9549  // details.
  9550  func (c *ProjectsLocationsPrivateCloudsClustersSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsClustersSetIamPolicyCall {
  9551  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9552  	return c
  9553  }
  9554  
  9555  // Context sets the context to be used in this call's Do method.
  9556  func (c *ProjectsLocationsPrivateCloudsClustersSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsClustersSetIamPolicyCall {
  9557  	c.ctx_ = ctx
  9558  	return c
  9559  }
  9560  
  9561  // Header returns a http.Header that can be modified by the caller to add
  9562  // headers to the request.
  9563  func (c *ProjectsLocationsPrivateCloudsClustersSetIamPolicyCall) Header() http.Header {
  9564  	if c.header_ == nil {
  9565  		c.header_ = make(http.Header)
  9566  	}
  9567  	return c.header_
  9568  }
  9569  
  9570  func (c *ProjectsLocationsPrivateCloudsClustersSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
  9571  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9572  	var body io.Reader = nil
  9573  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
  9574  	if err != nil {
  9575  		return nil, err
  9576  	}
  9577  	c.urlParams_.Set("alt", alt)
  9578  	c.urlParams_.Set("prettyPrint", "false")
  9579  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy")
  9580  	urls += "?" + c.urlParams_.Encode()
  9581  	req, err := http.NewRequest("POST", urls, body)
  9582  	if err != nil {
  9583  		return nil, err
  9584  	}
  9585  	req.Header = reqHeaders
  9586  	googleapi.Expand(req.URL, map[string]string{
  9587  		"resource": c.resource,
  9588  	})
  9589  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9590  }
  9591  
  9592  // Do executes the "vmwareengine.projects.locations.privateClouds.clusters.setIamPolicy" call.
  9593  // Any non-2xx status code is an error. Response headers are in either
  9594  // *Policy.ServerResponse.Header or (if a response was returned at all) in
  9595  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  9596  // whether the returned error was because http.StatusNotModified was returned.
  9597  func (c *ProjectsLocationsPrivateCloudsClustersSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
  9598  	gensupport.SetOptions(c.urlParams_, opts...)
  9599  	res, err := c.doRequest("json")
  9600  	if res != nil && res.StatusCode == http.StatusNotModified {
  9601  		if res.Body != nil {
  9602  			res.Body.Close()
  9603  		}
  9604  		return nil, gensupport.WrapError(&googleapi.Error{
  9605  			Code:   res.StatusCode,
  9606  			Header: res.Header,
  9607  		})
  9608  	}
  9609  	if err != nil {
  9610  		return nil, err
  9611  	}
  9612  	defer googleapi.CloseBody(res)
  9613  	if err := googleapi.CheckResponse(res); err != nil {
  9614  		return nil, gensupport.WrapError(err)
  9615  	}
  9616  	ret := &Policy{
  9617  		ServerResponse: googleapi.ServerResponse{
  9618  			Header:         res.Header,
  9619  			HTTPStatusCode: res.StatusCode,
  9620  		},
  9621  	}
  9622  	target := &ret
  9623  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9624  		return nil, err
  9625  	}
  9626  	return ret, nil
  9627  }
  9628  
  9629  type ProjectsLocationsPrivateCloudsClustersTestIamPermissionsCall struct {
  9630  	s                         *Service
  9631  	resource                  string
  9632  	testiampermissionsrequest *TestIamPermissionsRequest
  9633  	urlParams_                gensupport.URLParams
  9634  	ctx_                      context.Context
  9635  	header_                   http.Header
  9636  }
  9637  
  9638  // TestIamPermissions: Returns permissions that a caller has on the specified
  9639  // resource. If the resource does not exist, this will return an empty set of
  9640  // permissions, not a `NOT_FOUND` error. Note: This operation is designed to be
  9641  // used for building permission-aware UIs and command-line tools, not for
  9642  // authorization checking. This operation may "fail open" without warning.
  9643  //
  9644  //   - resource: REQUIRED: The resource for which the policy detail is being
  9645  //     requested. See Resource names
  9646  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
  9647  //     value for this field.
  9648  func (r *ProjectsLocationsPrivateCloudsClustersService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsPrivateCloudsClustersTestIamPermissionsCall {
  9649  	c := &ProjectsLocationsPrivateCloudsClustersTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9650  	c.resource = resource
  9651  	c.testiampermissionsrequest = testiampermissionsrequest
  9652  	return c
  9653  }
  9654  
  9655  // Fields allows partial responses to be retrieved. See
  9656  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9657  // details.
  9658  func (c *ProjectsLocationsPrivateCloudsClustersTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsClustersTestIamPermissionsCall {
  9659  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9660  	return c
  9661  }
  9662  
  9663  // Context sets the context to be used in this call's Do method.
  9664  func (c *ProjectsLocationsPrivateCloudsClustersTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsClustersTestIamPermissionsCall {
  9665  	c.ctx_ = ctx
  9666  	return c
  9667  }
  9668  
  9669  // Header returns a http.Header that can be modified by the caller to add
  9670  // headers to the request.
  9671  func (c *ProjectsLocationsPrivateCloudsClustersTestIamPermissionsCall) Header() http.Header {
  9672  	if c.header_ == nil {
  9673  		c.header_ = make(http.Header)
  9674  	}
  9675  	return c.header_
  9676  }
  9677  
  9678  func (c *ProjectsLocationsPrivateCloudsClustersTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
  9679  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  9680  	var body io.Reader = nil
  9681  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
  9682  	if err != nil {
  9683  		return nil, err
  9684  	}
  9685  	c.urlParams_.Set("alt", alt)
  9686  	c.urlParams_.Set("prettyPrint", "false")
  9687  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions")
  9688  	urls += "?" + c.urlParams_.Encode()
  9689  	req, err := http.NewRequest("POST", urls, body)
  9690  	if err != nil {
  9691  		return nil, err
  9692  	}
  9693  	req.Header = reqHeaders
  9694  	googleapi.Expand(req.URL, map[string]string{
  9695  		"resource": c.resource,
  9696  	})
  9697  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9698  }
  9699  
  9700  // Do executes the "vmwareengine.projects.locations.privateClouds.clusters.testIamPermissions" call.
  9701  // Any non-2xx status code is an error. Response headers are in either
  9702  // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was
  9703  // returned at all) in error.(*googleapi.Error).Header. Use
  9704  // googleapi.IsNotModified to check whether the returned error was because
  9705  // http.StatusNotModified was returned.
  9706  func (c *ProjectsLocationsPrivateCloudsClustersTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
  9707  	gensupport.SetOptions(c.urlParams_, opts...)
  9708  	res, err := c.doRequest("json")
  9709  	if res != nil && res.StatusCode == http.StatusNotModified {
  9710  		if res.Body != nil {
  9711  			res.Body.Close()
  9712  		}
  9713  		return nil, gensupport.WrapError(&googleapi.Error{
  9714  			Code:   res.StatusCode,
  9715  			Header: res.Header,
  9716  		})
  9717  	}
  9718  	if err != nil {
  9719  		return nil, err
  9720  	}
  9721  	defer googleapi.CloseBody(res)
  9722  	if err := googleapi.CheckResponse(res); err != nil {
  9723  		return nil, gensupport.WrapError(err)
  9724  	}
  9725  	ret := &TestIamPermissionsResponse{
  9726  		ServerResponse: googleapi.ServerResponse{
  9727  			Header:         res.Header,
  9728  			HTTPStatusCode: res.StatusCode,
  9729  		},
  9730  	}
  9731  	target := &ret
  9732  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9733  		return nil, err
  9734  	}
  9735  	return ret, nil
  9736  }
  9737  
  9738  type ProjectsLocationsPrivateCloudsClustersNodesGetCall struct {
  9739  	s            *Service
  9740  	name         string
  9741  	urlParams_   gensupport.URLParams
  9742  	ifNoneMatch_ string
  9743  	ctx_         context.Context
  9744  	header_      http.Header
  9745  }
  9746  
  9747  // Get: Gets details of a single node.
  9748  //
  9749  //   - name: The resource name of the node to retrieve. For example:
  9750  //     `projects/{project}/locations/{location}/privateClouds/{private_cloud}/clus
  9751  //     ters/{cluster}/nodes/{node}`.
  9752  func (r *ProjectsLocationsPrivateCloudsClustersNodesService) Get(name string) *ProjectsLocationsPrivateCloudsClustersNodesGetCall {
  9753  	c := &ProjectsLocationsPrivateCloudsClustersNodesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9754  	c.name = name
  9755  	return c
  9756  }
  9757  
  9758  // Fields allows partial responses to be retrieved. See
  9759  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9760  // details.
  9761  func (c *ProjectsLocationsPrivateCloudsClustersNodesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsClustersNodesGetCall {
  9762  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9763  	return c
  9764  }
  9765  
  9766  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  9767  // object's ETag matches the given value. This is useful for getting updates
  9768  // only after the object has changed since the last request.
  9769  func (c *ProjectsLocationsPrivateCloudsClustersNodesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsClustersNodesGetCall {
  9770  	c.ifNoneMatch_ = entityTag
  9771  	return c
  9772  }
  9773  
  9774  // Context sets the context to be used in this call's Do method.
  9775  func (c *ProjectsLocationsPrivateCloudsClustersNodesGetCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsClustersNodesGetCall {
  9776  	c.ctx_ = ctx
  9777  	return c
  9778  }
  9779  
  9780  // Header returns a http.Header that can be modified by the caller to add
  9781  // headers to the request.
  9782  func (c *ProjectsLocationsPrivateCloudsClustersNodesGetCall) Header() http.Header {
  9783  	if c.header_ == nil {
  9784  		c.header_ = make(http.Header)
  9785  	}
  9786  	return c.header_
  9787  }
  9788  
  9789  func (c *ProjectsLocationsPrivateCloudsClustersNodesGetCall) doRequest(alt string) (*http.Response, error) {
  9790  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9791  	if c.ifNoneMatch_ != "" {
  9792  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  9793  	}
  9794  	var body io.Reader = nil
  9795  	c.urlParams_.Set("alt", alt)
  9796  	c.urlParams_.Set("prettyPrint", "false")
  9797  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  9798  	urls += "?" + c.urlParams_.Encode()
  9799  	req, err := http.NewRequest("GET", urls, body)
  9800  	if err != nil {
  9801  		return nil, err
  9802  	}
  9803  	req.Header = reqHeaders
  9804  	googleapi.Expand(req.URL, map[string]string{
  9805  		"name": c.name,
  9806  	})
  9807  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9808  }
  9809  
  9810  // Do executes the "vmwareengine.projects.locations.privateClouds.clusters.nodes.get" call.
  9811  // Any non-2xx status code is an error. Response headers are in either
  9812  // *Node.ServerResponse.Header or (if a response was returned at all) in
  9813  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  9814  // whether the returned error was because http.StatusNotModified was returned.
  9815  func (c *ProjectsLocationsPrivateCloudsClustersNodesGetCall) Do(opts ...googleapi.CallOption) (*Node, error) {
  9816  	gensupport.SetOptions(c.urlParams_, opts...)
  9817  	res, err := c.doRequest("json")
  9818  	if res != nil && res.StatusCode == http.StatusNotModified {
  9819  		if res.Body != nil {
  9820  			res.Body.Close()
  9821  		}
  9822  		return nil, gensupport.WrapError(&googleapi.Error{
  9823  			Code:   res.StatusCode,
  9824  			Header: res.Header,
  9825  		})
  9826  	}
  9827  	if err != nil {
  9828  		return nil, err
  9829  	}
  9830  	defer googleapi.CloseBody(res)
  9831  	if err := googleapi.CheckResponse(res); err != nil {
  9832  		return nil, gensupport.WrapError(err)
  9833  	}
  9834  	ret := &Node{
  9835  		ServerResponse: googleapi.ServerResponse{
  9836  			Header:         res.Header,
  9837  			HTTPStatusCode: res.StatusCode,
  9838  		},
  9839  	}
  9840  	target := &ret
  9841  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9842  		return nil, err
  9843  	}
  9844  	return ret, nil
  9845  }
  9846  
  9847  type ProjectsLocationsPrivateCloudsClustersNodesListCall struct {
  9848  	s            *Service
  9849  	parent       string
  9850  	urlParams_   gensupport.URLParams
  9851  	ifNoneMatch_ string
  9852  	ctx_         context.Context
  9853  	header_      http.Header
  9854  }
  9855  
  9856  // List: Lists nodes in a given cluster.
  9857  //
  9858  //   - parent: The resource name of the cluster to be queried for nodes. Resource
  9859  //     names are schemeless URIs that follow the conventions in
  9860  //     https://cloud.google.com/apis/design/resource_names. For example:
  9861  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/cluster
  9862  //     s/my-cluster`.
  9863  func (r *ProjectsLocationsPrivateCloudsClustersNodesService) List(parent string) *ProjectsLocationsPrivateCloudsClustersNodesListCall {
  9864  	c := &ProjectsLocationsPrivateCloudsClustersNodesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  9865  	c.parent = parent
  9866  	return c
  9867  }
  9868  
  9869  // PageSize sets the optional parameter "pageSize": The maximum number of nodes
  9870  // to return in one page. The service may return fewer than this value. The
  9871  // maximum value is coerced to 1000. The default value of this field is 500.
  9872  func (c *ProjectsLocationsPrivateCloudsClustersNodesListCall) PageSize(pageSize int64) *ProjectsLocationsPrivateCloudsClustersNodesListCall {
  9873  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  9874  	return c
  9875  }
  9876  
  9877  // PageToken sets the optional parameter "pageToken": A page token, received
  9878  // from a previous `ListNodes` call. Provide this to retrieve the subsequent
  9879  // page. When paginating, all other parameters provided to `ListNodes` must
  9880  // match the call that provided the page token.
  9881  func (c *ProjectsLocationsPrivateCloudsClustersNodesListCall) PageToken(pageToken string) *ProjectsLocationsPrivateCloudsClustersNodesListCall {
  9882  	c.urlParams_.Set("pageToken", pageToken)
  9883  	return c
  9884  }
  9885  
  9886  // Fields allows partial responses to be retrieved. See
  9887  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  9888  // details.
  9889  func (c *ProjectsLocationsPrivateCloudsClustersNodesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsClustersNodesListCall {
  9890  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  9891  	return c
  9892  }
  9893  
  9894  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  9895  // object's ETag matches the given value. This is useful for getting updates
  9896  // only after the object has changed since the last request.
  9897  func (c *ProjectsLocationsPrivateCloudsClustersNodesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsClustersNodesListCall {
  9898  	c.ifNoneMatch_ = entityTag
  9899  	return c
  9900  }
  9901  
  9902  // Context sets the context to be used in this call's Do method.
  9903  func (c *ProjectsLocationsPrivateCloudsClustersNodesListCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsClustersNodesListCall {
  9904  	c.ctx_ = ctx
  9905  	return c
  9906  }
  9907  
  9908  // Header returns a http.Header that can be modified by the caller to add
  9909  // headers to the request.
  9910  func (c *ProjectsLocationsPrivateCloudsClustersNodesListCall) Header() http.Header {
  9911  	if c.header_ == nil {
  9912  		c.header_ = make(http.Header)
  9913  	}
  9914  	return c.header_
  9915  }
  9916  
  9917  func (c *ProjectsLocationsPrivateCloudsClustersNodesListCall) doRequest(alt string) (*http.Response, error) {
  9918  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  9919  	if c.ifNoneMatch_ != "" {
  9920  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  9921  	}
  9922  	var body io.Reader = nil
  9923  	c.urlParams_.Set("alt", alt)
  9924  	c.urlParams_.Set("prettyPrint", "false")
  9925  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/nodes")
  9926  	urls += "?" + c.urlParams_.Encode()
  9927  	req, err := http.NewRequest("GET", urls, body)
  9928  	if err != nil {
  9929  		return nil, err
  9930  	}
  9931  	req.Header = reqHeaders
  9932  	googleapi.Expand(req.URL, map[string]string{
  9933  		"parent": c.parent,
  9934  	})
  9935  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  9936  }
  9937  
  9938  // Do executes the "vmwareengine.projects.locations.privateClouds.clusters.nodes.list" call.
  9939  // Any non-2xx status code is an error. Response headers are in either
  9940  // *ListNodesResponse.ServerResponse.Header or (if a response was returned at
  9941  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  9942  // check whether the returned error was because http.StatusNotModified was
  9943  // returned.
  9944  func (c *ProjectsLocationsPrivateCloudsClustersNodesListCall) Do(opts ...googleapi.CallOption) (*ListNodesResponse, error) {
  9945  	gensupport.SetOptions(c.urlParams_, opts...)
  9946  	res, err := c.doRequest("json")
  9947  	if res != nil && res.StatusCode == http.StatusNotModified {
  9948  		if res.Body != nil {
  9949  			res.Body.Close()
  9950  		}
  9951  		return nil, gensupport.WrapError(&googleapi.Error{
  9952  			Code:   res.StatusCode,
  9953  			Header: res.Header,
  9954  		})
  9955  	}
  9956  	if err != nil {
  9957  		return nil, err
  9958  	}
  9959  	defer googleapi.CloseBody(res)
  9960  	if err := googleapi.CheckResponse(res); err != nil {
  9961  		return nil, gensupport.WrapError(err)
  9962  	}
  9963  	ret := &ListNodesResponse{
  9964  		ServerResponse: googleapi.ServerResponse{
  9965  			Header:         res.Header,
  9966  			HTTPStatusCode: res.StatusCode,
  9967  		},
  9968  	}
  9969  	target := &ret
  9970  	if err := gensupport.DecodeResponse(target, res); err != nil {
  9971  		return nil, err
  9972  	}
  9973  	return ret, nil
  9974  }
  9975  
  9976  // Pages invokes f for each page of results.
  9977  // A non-nil error returned from f will halt the iteration.
  9978  // The provided context supersedes any context provided to the Context method.
  9979  func (c *ProjectsLocationsPrivateCloudsClustersNodesListCall) Pages(ctx context.Context, f func(*ListNodesResponse) error) error {
  9980  	c.ctx_ = ctx
  9981  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  9982  	for {
  9983  		x, err := c.Do()
  9984  		if err != nil {
  9985  			return err
  9986  		}
  9987  		if err := f(x); err != nil {
  9988  			return err
  9989  		}
  9990  		if x.NextPageToken == "" {
  9991  			return nil
  9992  		}
  9993  		c.PageToken(x.NextPageToken)
  9994  	}
  9995  }
  9996  
  9997  type ProjectsLocationsPrivateCloudsExternalAddressesCreateCall struct {
  9998  	s               *Service
  9999  	parent          string
 10000  	externaladdress *ExternalAddress
 10001  	urlParams_      gensupport.URLParams
 10002  	ctx_            context.Context
 10003  	header_         http.Header
 10004  }
 10005  
 10006  // Create: Creates a new `ExternalAddress` resource in a given private cloud.
 10007  // The network policy that corresponds to the private cloud must have the
 10008  // external IP address network service enabled (`NetworkPolicy.external_ip`).
 10009  //
 10010  //   - parent: The resource name of the private cloud to create a new external IP
 10011  //     address in. Resource names are schemeless URIs that follow the conventions
 10012  //     in https://cloud.google.com/apis/design/resource_names. For example:
 10013  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud`.
 10014  func (r *ProjectsLocationsPrivateCloudsExternalAddressesService) Create(parent string, externaladdress *ExternalAddress) *ProjectsLocationsPrivateCloudsExternalAddressesCreateCall {
 10015  	c := &ProjectsLocationsPrivateCloudsExternalAddressesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10016  	c.parent = parent
 10017  	c.externaladdress = externaladdress
 10018  	return c
 10019  }
 10020  
 10021  // ExternalAddressId sets the optional parameter "externalAddressId": Required.
 10022  // The user-provided identifier of the `ExternalAddress` to be created. This
 10023  // identifier must be unique among `ExternalAddress` resources within the
 10024  // parent and becomes the final token in the name URI. The identifier must meet
 10025  // the following requirements: * Only contains 1-63 alphanumeric characters and
 10026  // hyphens * Begins with an alphabetical character * Ends with a non-hyphen
 10027  // character * Not formatted as a UUID * Complies with RFC 1034
 10028  // (https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
 10029  func (c *ProjectsLocationsPrivateCloudsExternalAddressesCreateCall) ExternalAddressId(externalAddressId string) *ProjectsLocationsPrivateCloudsExternalAddressesCreateCall {
 10030  	c.urlParams_.Set("externalAddressId", externalAddressId)
 10031  	return c
 10032  }
 10033  
 10034  // RequestId sets the optional parameter "requestId": A request ID to identify
 10035  // requests. Specify a unique request ID so that if you must retry your
 10036  // request, the server will know to ignore the request if it has already been
 10037  // completed. The server guarantees that a request doesn't result in creation
 10038  // of duplicate commitments for at least 60 minutes. For example, consider a
 10039  // situation where you make an initial request and the request times out. If
 10040  // you make the request again with the same request ID, the server can check if
 10041  // the original operation with the same request ID was received, and if so,
 10042  // will ignore the second request. This prevents clients from accidentally
 10043  // creating duplicate commitments. The request ID must be a valid UUID with the
 10044  // exception that zero UUID is not supported
 10045  // (00000000-0000-0000-0000-000000000000).
 10046  func (c *ProjectsLocationsPrivateCloudsExternalAddressesCreateCall) RequestId(requestId string) *ProjectsLocationsPrivateCloudsExternalAddressesCreateCall {
 10047  	c.urlParams_.Set("requestId", requestId)
 10048  	return c
 10049  }
 10050  
 10051  // Fields allows partial responses to be retrieved. See
 10052  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10053  // details.
 10054  func (c *ProjectsLocationsPrivateCloudsExternalAddressesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsExternalAddressesCreateCall {
 10055  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10056  	return c
 10057  }
 10058  
 10059  // Context sets the context to be used in this call's Do method.
 10060  func (c *ProjectsLocationsPrivateCloudsExternalAddressesCreateCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsExternalAddressesCreateCall {
 10061  	c.ctx_ = ctx
 10062  	return c
 10063  }
 10064  
 10065  // Header returns a http.Header that can be modified by the caller to add
 10066  // headers to the request.
 10067  func (c *ProjectsLocationsPrivateCloudsExternalAddressesCreateCall) Header() http.Header {
 10068  	if c.header_ == nil {
 10069  		c.header_ = make(http.Header)
 10070  	}
 10071  	return c.header_
 10072  }
 10073  
 10074  func (c *ProjectsLocationsPrivateCloudsExternalAddressesCreateCall) doRequest(alt string) (*http.Response, error) {
 10075  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10076  	var body io.Reader = nil
 10077  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.externaladdress)
 10078  	if err != nil {
 10079  		return nil, err
 10080  	}
 10081  	c.urlParams_.Set("alt", alt)
 10082  	c.urlParams_.Set("prettyPrint", "false")
 10083  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/externalAddresses")
 10084  	urls += "?" + c.urlParams_.Encode()
 10085  	req, err := http.NewRequest("POST", urls, body)
 10086  	if err != nil {
 10087  		return nil, err
 10088  	}
 10089  	req.Header = reqHeaders
 10090  	googleapi.Expand(req.URL, map[string]string{
 10091  		"parent": c.parent,
 10092  	})
 10093  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10094  }
 10095  
 10096  // Do executes the "vmwareengine.projects.locations.privateClouds.externalAddresses.create" call.
 10097  // Any non-2xx status code is an error. Response headers are in either
 10098  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 10099  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 10100  // whether the returned error was because http.StatusNotModified was returned.
 10101  func (c *ProjectsLocationsPrivateCloudsExternalAddressesCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 10102  	gensupport.SetOptions(c.urlParams_, opts...)
 10103  	res, err := c.doRequest("json")
 10104  	if res != nil && res.StatusCode == http.StatusNotModified {
 10105  		if res.Body != nil {
 10106  			res.Body.Close()
 10107  		}
 10108  		return nil, gensupport.WrapError(&googleapi.Error{
 10109  			Code:   res.StatusCode,
 10110  			Header: res.Header,
 10111  		})
 10112  	}
 10113  	if err != nil {
 10114  		return nil, err
 10115  	}
 10116  	defer googleapi.CloseBody(res)
 10117  	if err := googleapi.CheckResponse(res); err != nil {
 10118  		return nil, gensupport.WrapError(err)
 10119  	}
 10120  	ret := &Operation{
 10121  		ServerResponse: googleapi.ServerResponse{
 10122  			Header:         res.Header,
 10123  			HTTPStatusCode: res.StatusCode,
 10124  		},
 10125  	}
 10126  	target := &ret
 10127  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10128  		return nil, err
 10129  	}
 10130  	return ret, nil
 10131  }
 10132  
 10133  type ProjectsLocationsPrivateCloudsExternalAddressesDeleteCall struct {
 10134  	s          *Service
 10135  	name       string
 10136  	urlParams_ gensupport.URLParams
 10137  	ctx_       context.Context
 10138  	header_    http.Header
 10139  }
 10140  
 10141  // Delete: Deletes a single external IP address. When you delete an external IP
 10142  // address, connectivity between the external IP address and the corresponding
 10143  // internal IP address is lost.
 10144  //
 10145  //   - name: The resource name of the external IP address to delete. Resource
 10146  //     names are schemeless URIs that follow the conventions in
 10147  //     https://cloud.google.com/apis/design/resource_names. For example:
 10148  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/externa
 10149  //     lAddresses/my-ip`.
 10150  func (r *ProjectsLocationsPrivateCloudsExternalAddressesService) Delete(name string) *ProjectsLocationsPrivateCloudsExternalAddressesDeleteCall {
 10151  	c := &ProjectsLocationsPrivateCloudsExternalAddressesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10152  	c.name = name
 10153  	return c
 10154  }
 10155  
 10156  // RequestId sets the optional parameter "requestId": A request ID to identify
 10157  // requests. Specify a unique request ID so that if you must retry your
 10158  // request, the server will know to ignore the request if it has already been
 10159  // completed. The server guarantees that a request doesn't result in creation
 10160  // of duplicate commitments for at least 60 minutes. For example, consider a
 10161  // situation where you make an initial request and the request times out. If
 10162  // you make the request again with the same request ID, the server can check if
 10163  // the original operation with the same request ID was received, and if so,
 10164  // will ignore the second request. This prevents clients from accidentally
 10165  // creating duplicate commitments. The request ID must be a valid UUID with the
 10166  // exception that zero UUID is not supported
 10167  // (00000000-0000-0000-0000-000000000000).
 10168  func (c *ProjectsLocationsPrivateCloudsExternalAddressesDeleteCall) RequestId(requestId string) *ProjectsLocationsPrivateCloudsExternalAddressesDeleteCall {
 10169  	c.urlParams_.Set("requestId", requestId)
 10170  	return c
 10171  }
 10172  
 10173  // Fields allows partial responses to be retrieved. See
 10174  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10175  // details.
 10176  func (c *ProjectsLocationsPrivateCloudsExternalAddressesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsExternalAddressesDeleteCall {
 10177  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10178  	return c
 10179  }
 10180  
 10181  // Context sets the context to be used in this call's Do method.
 10182  func (c *ProjectsLocationsPrivateCloudsExternalAddressesDeleteCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsExternalAddressesDeleteCall {
 10183  	c.ctx_ = ctx
 10184  	return c
 10185  }
 10186  
 10187  // Header returns a http.Header that can be modified by the caller to add
 10188  // headers to the request.
 10189  func (c *ProjectsLocationsPrivateCloudsExternalAddressesDeleteCall) Header() http.Header {
 10190  	if c.header_ == nil {
 10191  		c.header_ = make(http.Header)
 10192  	}
 10193  	return c.header_
 10194  }
 10195  
 10196  func (c *ProjectsLocationsPrivateCloudsExternalAddressesDeleteCall) doRequest(alt string) (*http.Response, error) {
 10197  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 10198  	var body io.Reader = nil
 10199  	c.urlParams_.Set("alt", alt)
 10200  	c.urlParams_.Set("prettyPrint", "false")
 10201  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 10202  	urls += "?" + c.urlParams_.Encode()
 10203  	req, err := http.NewRequest("DELETE", urls, body)
 10204  	if err != nil {
 10205  		return nil, err
 10206  	}
 10207  	req.Header = reqHeaders
 10208  	googleapi.Expand(req.URL, map[string]string{
 10209  		"name": c.name,
 10210  	})
 10211  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10212  }
 10213  
 10214  // Do executes the "vmwareengine.projects.locations.privateClouds.externalAddresses.delete" call.
 10215  // Any non-2xx status code is an error. Response headers are in either
 10216  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 10217  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 10218  // whether the returned error was because http.StatusNotModified was returned.
 10219  func (c *ProjectsLocationsPrivateCloudsExternalAddressesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 10220  	gensupport.SetOptions(c.urlParams_, opts...)
 10221  	res, err := c.doRequest("json")
 10222  	if res != nil && res.StatusCode == http.StatusNotModified {
 10223  		if res.Body != nil {
 10224  			res.Body.Close()
 10225  		}
 10226  		return nil, gensupport.WrapError(&googleapi.Error{
 10227  			Code:   res.StatusCode,
 10228  			Header: res.Header,
 10229  		})
 10230  	}
 10231  	if err != nil {
 10232  		return nil, err
 10233  	}
 10234  	defer googleapi.CloseBody(res)
 10235  	if err := googleapi.CheckResponse(res); err != nil {
 10236  		return nil, gensupport.WrapError(err)
 10237  	}
 10238  	ret := &Operation{
 10239  		ServerResponse: googleapi.ServerResponse{
 10240  			Header:         res.Header,
 10241  			HTTPStatusCode: res.StatusCode,
 10242  		},
 10243  	}
 10244  	target := &ret
 10245  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10246  		return nil, err
 10247  	}
 10248  	return ret, nil
 10249  }
 10250  
 10251  type ProjectsLocationsPrivateCloudsExternalAddressesGetCall struct {
 10252  	s            *Service
 10253  	name         string
 10254  	urlParams_   gensupport.URLParams
 10255  	ifNoneMatch_ string
 10256  	ctx_         context.Context
 10257  	header_      http.Header
 10258  }
 10259  
 10260  // Get: Gets details of a single external IP address.
 10261  //
 10262  //   - name: The resource name of the external IP address to retrieve. Resource
 10263  //     names are schemeless URIs that follow the conventions in
 10264  //     https://cloud.google.com/apis/design/resource_names. For example:
 10265  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/externa
 10266  //     lAddresses/my-ip`.
 10267  func (r *ProjectsLocationsPrivateCloudsExternalAddressesService) Get(name string) *ProjectsLocationsPrivateCloudsExternalAddressesGetCall {
 10268  	c := &ProjectsLocationsPrivateCloudsExternalAddressesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10269  	c.name = name
 10270  	return c
 10271  }
 10272  
 10273  // Fields allows partial responses to be retrieved. See
 10274  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10275  // details.
 10276  func (c *ProjectsLocationsPrivateCloudsExternalAddressesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsExternalAddressesGetCall {
 10277  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10278  	return c
 10279  }
 10280  
 10281  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 10282  // object's ETag matches the given value. This is useful for getting updates
 10283  // only after the object has changed since the last request.
 10284  func (c *ProjectsLocationsPrivateCloudsExternalAddressesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsExternalAddressesGetCall {
 10285  	c.ifNoneMatch_ = entityTag
 10286  	return c
 10287  }
 10288  
 10289  // Context sets the context to be used in this call's Do method.
 10290  func (c *ProjectsLocationsPrivateCloudsExternalAddressesGetCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsExternalAddressesGetCall {
 10291  	c.ctx_ = ctx
 10292  	return c
 10293  }
 10294  
 10295  // Header returns a http.Header that can be modified by the caller to add
 10296  // headers to the request.
 10297  func (c *ProjectsLocationsPrivateCloudsExternalAddressesGetCall) Header() http.Header {
 10298  	if c.header_ == nil {
 10299  		c.header_ = make(http.Header)
 10300  	}
 10301  	return c.header_
 10302  }
 10303  
 10304  func (c *ProjectsLocationsPrivateCloudsExternalAddressesGetCall) doRequest(alt string) (*http.Response, error) {
 10305  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 10306  	if c.ifNoneMatch_ != "" {
 10307  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 10308  	}
 10309  	var body io.Reader = nil
 10310  	c.urlParams_.Set("alt", alt)
 10311  	c.urlParams_.Set("prettyPrint", "false")
 10312  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 10313  	urls += "?" + c.urlParams_.Encode()
 10314  	req, err := http.NewRequest("GET", urls, body)
 10315  	if err != nil {
 10316  		return nil, err
 10317  	}
 10318  	req.Header = reqHeaders
 10319  	googleapi.Expand(req.URL, map[string]string{
 10320  		"name": c.name,
 10321  	})
 10322  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10323  }
 10324  
 10325  // Do executes the "vmwareengine.projects.locations.privateClouds.externalAddresses.get" call.
 10326  // Any non-2xx status code is an error. Response headers are in either
 10327  // *ExternalAddress.ServerResponse.Header or (if a response was returned at
 10328  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 10329  // check whether the returned error was because http.StatusNotModified was
 10330  // returned.
 10331  func (c *ProjectsLocationsPrivateCloudsExternalAddressesGetCall) Do(opts ...googleapi.CallOption) (*ExternalAddress, error) {
 10332  	gensupport.SetOptions(c.urlParams_, opts...)
 10333  	res, err := c.doRequest("json")
 10334  	if res != nil && res.StatusCode == http.StatusNotModified {
 10335  		if res.Body != nil {
 10336  			res.Body.Close()
 10337  		}
 10338  		return nil, gensupport.WrapError(&googleapi.Error{
 10339  			Code:   res.StatusCode,
 10340  			Header: res.Header,
 10341  		})
 10342  	}
 10343  	if err != nil {
 10344  		return nil, err
 10345  	}
 10346  	defer googleapi.CloseBody(res)
 10347  	if err := googleapi.CheckResponse(res); err != nil {
 10348  		return nil, gensupport.WrapError(err)
 10349  	}
 10350  	ret := &ExternalAddress{
 10351  		ServerResponse: googleapi.ServerResponse{
 10352  			Header:         res.Header,
 10353  			HTTPStatusCode: res.StatusCode,
 10354  		},
 10355  	}
 10356  	target := &ret
 10357  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10358  		return nil, err
 10359  	}
 10360  	return ret, nil
 10361  }
 10362  
 10363  type ProjectsLocationsPrivateCloudsExternalAddressesListCall struct {
 10364  	s            *Service
 10365  	parent       string
 10366  	urlParams_   gensupport.URLParams
 10367  	ifNoneMatch_ string
 10368  	ctx_         context.Context
 10369  	header_      http.Header
 10370  }
 10371  
 10372  // List: Lists external IP addresses assigned to VMware workload VMs in a given
 10373  // private cloud.
 10374  //
 10375  //   - parent: The resource name of the private cloud to be queried for external
 10376  //     IP addresses. Resource names are schemeless URIs that follow the
 10377  //     conventions in https://cloud.google.com/apis/design/resource_names. For
 10378  //     example:
 10379  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud`.
 10380  func (r *ProjectsLocationsPrivateCloudsExternalAddressesService) List(parent string) *ProjectsLocationsPrivateCloudsExternalAddressesListCall {
 10381  	c := &ProjectsLocationsPrivateCloudsExternalAddressesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10382  	c.parent = parent
 10383  	return c
 10384  }
 10385  
 10386  // Filter sets the optional parameter "filter": A filter expression that
 10387  // matches resources returned in the response. The expression must specify the
 10388  // field name, a comparison operator, and the value that you want to use for
 10389  // filtering. The value must be a string, a number, or a boolean. The
 10390  // comparison operator must be `=`, `!=`, `>`, or `<`. For example, if you are
 10391  // filtering a list of IP addresses, you can exclude the ones named
 10392  // `example-ip` by specifying `name != "example-ip". To filter on multiple
 10393  // expressions, provide each separate expression within parentheses. For
 10394  // example: ``` (name = "example-ip") (createTime > "2021-04-12T08:15:10.40Z")
 10395  // ``` By default, each expression is an `AND` expression. However, you can
 10396  // include `AND` and `OR` expressions explicitly. For example: ``` (name =
 10397  // "example-ip-1") AND (createTime > "2021-04-12T08:15:10.40Z") OR (name =
 10398  // "example-ip-2") ```
 10399  func (c *ProjectsLocationsPrivateCloudsExternalAddressesListCall) Filter(filter string) *ProjectsLocationsPrivateCloudsExternalAddressesListCall {
 10400  	c.urlParams_.Set("filter", filter)
 10401  	return c
 10402  }
 10403  
 10404  // OrderBy sets the optional parameter "orderBy": Sorts list results by a
 10405  // certain order. By default, returned results are ordered by `name` in
 10406  // ascending order. You can also sort results in descending order based on the
 10407  // `name` value using `orderBy="name desc". Currently, only ordering by `name`
 10408  // is supported.
 10409  func (c *ProjectsLocationsPrivateCloudsExternalAddressesListCall) OrderBy(orderBy string) *ProjectsLocationsPrivateCloudsExternalAddressesListCall {
 10410  	c.urlParams_.Set("orderBy", orderBy)
 10411  	return c
 10412  }
 10413  
 10414  // PageSize sets the optional parameter "pageSize": The maximum number of
 10415  // external IP addresses to return in one page. The service may return fewer
 10416  // than this value. The maximum value is coerced to 1000. The default value of
 10417  // this field is 500.
 10418  func (c *ProjectsLocationsPrivateCloudsExternalAddressesListCall) PageSize(pageSize int64) *ProjectsLocationsPrivateCloudsExternalAddressesListCall {
 10419  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 10420  	return c
 10421  }
 10422  
 10423  // PageToken sets the optional parameter "pageToken": A page token, received
 10424  // from a previous `ListExternalAddresses` call. Provide this to retrieve the
 10425  // subsequent page. When paginating, all other parameters provided to
 10426  // `ListExternalAddresses` must match the call that provided the page token.
 10427  func (c *ProjectsLocationsPrivateCloudsExternalAddressesListCall) PageToken(pageToken string) *ProjectsLocationsPrivateCloudsExternalAddressesListCall {
 10428  	c.urlParams_.Set("pageToken", pageToken)
 10429  	return c
 10430  }
 10431  
 10432  // Fields allows partial responses to be retrieved. See
 10433  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10434  // details.
 10435  func (c *ProjectsLocationsPrivateCloudsExternalAddressesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsExternalAddressesListCall {
 10436  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10437  	return c
 10438  }
 10439  
 10440  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 10441  // object's ETag matches the given value. This is useful for getting updates
 10442  // only after the object has changed since the last request.
 10443  func (c *ProjectsLocationsPrivateCloudsExternalAddressesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsExternalAddressesListCall {
 10444  	c.ifNoneMatch_ = entityTag
 10445  	return c
 10446  }
 10447  
 10448  // Context sets the context to be used in this call's Do method.
 10449  func (c *ProjectsLocationsPrivateCloudsExternalAddressesListCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsExternalAddressesListCall {
 10450  	c.ctx_ = ctx
 10451  	return c
 10452  }
 10453  
 10454  // Header returns a http.Header that can be modified by the caller to add
 10455  // headers to the request.
 10456  func (c *ProjectsLocationsPrivateCloudsExternalAddressesListCall) Header() http.Header {
 10457  	if c.header_ == nil {
 10458  		c.header_ = make(http.Header)
 10459  	}
 10460  	return c.header_
 10461  }
 10462  
 10463  func (c *ProjectsLocationsPrivateCloudsExternalAddressesListCall) doRequest(alt string) (*http.Response, error) {
 10464  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 10465  	if c.ifNoneMatch_ != "" {
 10466  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 10467  	}
 10468  	var body io.Reader = nil
 10469  	c.urlParams_.Set("alt", alt)
 10470  	c.urlParams_.Set("prettyPrint", "false")
 10471  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/externalAddresses")
 10472  	urls += "?" + c.urlParams_.Encode()
 10473  	req, err := http.NewRequest("GET", urls, body)
 10474  	if err != nil {
 10475  		return nil, err
 10476  	}
 10477  	req.Header = reqHeaders
 10478  	googleapi.Expand(req.URL, map[string]string{
 10479  		"parent": c.parent,
 10480  	})
 10481  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10482  }
 10483  
 10484  // Do executes the "vmwareengine.projects.locations.privateClouds.externalAddresses.list" call.
 10485  // Any non-2xx status code is an error. Response headers are in either
 10486  // *ListExternalAddressesResponse.ServerResponse.Header or (if a response was
 10487  // returned at all) in error.(*googleapi.Error).Header. Use
 10488  // googleapi.IsNotModified to check whether the returned error was because
 10489  // http.StatusNotModified was returned.
 10490  func (c *ProjectsLocationsPrivateCloudsExternalAddressesListCall) Do(opts ...googleapi.CallOption) (*ListExternalAddressesResponse, error) {
 10491  	gensupport.SetOptions(c.urlParams_, opts...)
 10492  	res, err := c.doRequest("json")
 10493  	if res != nil && res.StatusCode == http.StatusNotModified {
 10494  		if res.Body != nil {
 10495  			res.Body.Close()
 10496  		}
 10497  		return nil, gensupport.WrapError(&googleapi.Error{
 10498  			Code:   res.StatusCode,
 10499  			Header: res.Header,
 10500  		})
 10501  	}
 10502  	if err != nil {
 10503  		return nil, err
 10504  	}
 10505  	defer googleapi.CloseBody(res)
 10506  	if err := googleapi.CheckResponse(res); err != nil {
 10507  		return nil, gensupport.WrapError(err)
 10508  	}
 10509  	ret := &ListExternalAddressesResponse{
 10510  		ServerResponse: googleapi.ServerResponse{
 10511  			Header:         res.Header,
 10512  			HTTPStatusCode: res.StatusCode,
 10513  		},
 10514  	}
 10515  	target := &ret
 10516  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10517  		return nil, err
 10518  	}
 10519  	return ret, nil
 10520  }
 10521  
 10522  // Pages invokes f for each page of results.
 10523  // A non-nil error returned from f will halt the iteration.
 10524  // The provided context supersedes any context provided to the Context method.
 10525  func (c *ProjectsLocationsPrivateCloudsExternalAddressesListCall) Pages(ctx context.Context, f func(*ListExternalAddressesResponse) error) error {
 10526  	c.ctx_ = ctx
 10527  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 10528  	for {
 10529  		x, err := c.Do()
 10530  		if err != nil {
 10531  			return err
 10532  		}
 10533  		if err := f(x); err != nil {
 10534  			return err
 10535  		}
 10536  		if x.NextPageToken == "" {
 10537  			return nil
 10538  		}
 10539  		c.PageToken(x.NextPageToken)
 10540  	}
 10541  }
 10542  
 10543  type ProjectsLocationsPrivateCloudsExternalAddressesPatchCall struct {
 10544  	s               *Service
 10545  	name            string
 10546  	externaladdress *ExternalAddress
 10547  	urlParams_      gensupport.URLParams
 10548  	ctx_            context.Context
 10549  	header_         http.Header
 10550  }
 10551  
 10552  // Patch: Updates the parameters of a single external IP address. Only fields
 10553  // specified in `update_mask` are applied. During operation processing, the
 10554  // resource is temporarily in the `ACTIVE` state before the operation fully
 10555  // completes. For that period of time, you can't update the resource. Use the
 10556  // operation status to determine when the processing fully completes.
 10557  //
 10558  //   - name: Output only. The resource name of this external IP address. Resource
 10559  //     names are schemeless URIs that follow the conventions in
 10560  //     https://cloud.google.com/apis/design/resource_names. For example:
 10561  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/externa
 10562  //     lAddresses/my-address`.
 10563  func (r *ProjectsLocationsPrivateCloudsExternalAddressesService) Patch(name string, externaladdress *ExternalAddress) *ProjectsLocationsPrivateCloudsExternalAddressesPatchCall {
 10564  	c := &ProjectsLocationsPrivateCloudsExternalAddressesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10565  	c.name = name
 10566  	c.externaladdress = externaladdress
 10567  	return c
 10568  }
 10569  
 10570  // RequestId sets the optional parameter "requestId": A request ID to identify
 10571  // requests. Specify a unique request ID so that if you must retry your
 10572  // request, the server will know to ignore the request if it has already been
 10573  // completed. The server guarantees that a request doesn't result in creation
 10574  // of duplicate commitments for at least 60 minutes. For example, consider a
 10575  // situation where you make an initial request and the request times out. If
 10576  // you make the request again with the same request ID, the server can check if
 10577  // the original operation with the same request ID was received, and if so,
 10578  // will ignore the second request. This prevents clients from accidentally
 10579  // creating duplicate commitments. The request ID must be a valid UUID with the
 10580  // exception that zero UUID is not supported
 10581  // (00000000-0000-0000-0000-000000000000).
 10582  func (c *ProjectsLocationsPrivateCloudsExternalAddressesPatchCall) RequestId(requestId string) *ProjectsLocationsPrivateCloudsExternalAddressesPatchCall {
 10583  	c.urlParams_.Set("requestId", requestId)
 10584  	return c
 10585  }
 10586  
 10587  // UpdateMask sets the optional parameter "updateMask": Required. Field mask is
 10588  // used to specify the fields to be overwritten in the `ExternalAddress`
 10589  // resource by the update. The fields specified in the `update_mask` are
 10590  // relative to the resource, not the full request. A field will be overwritten
 10591  // if it is in the mask. If the user does not provide a mask then all fields
 10592  // will be overwritten.
 10593  func (c *ProjectsLocationsPrivateCloudsExternalAddressesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsPrivateCloudsExternalAddressesPatchCall {
 10594  	c.urlParams_.Set("updateMask", updateMask)
 10595  	return c
 10596  }
 10597  
 10598  // Fields allows partial responses to be retrieved. See
 10599  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10600  // details.
 10601  func (c *ProjectsLocationsPrivateCloudsExternalAddressesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsExternalAddressesPatchCall {
 10602  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10603  	return c
 10604  }
 10605  
 10606  // Context sets the context to be used in this call's Do method.
 10607  func (c *ProjectsLocationsPrivateCloudsExternalAddressesPatchCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsExternalAddressesPatchCall {
 10608  	c.ctx_ = ctx
 10609  	return c
 10610  }
 10611  
 10612  // Header returns a http.Header that can be modified by the caller to add
 10613  // headers to the request.
 10614  func (c *ProjectsLocationsPrivateCloudsExternalAddressesPatchCall) Header() http.Header {
 10615  	if c.header_ == nil {
 10616  		c.header_ = make(http.Header)
 10617  	}
 10618  	return c.header_
 10619  }
 10620  
 10621  func (c *ProjectsLocationsPrivateCloudsExternalAddressesPatchCall) doRequest(alt string) (*http.Response, error) {
 10622  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10623  	var body io.Reader = nil
 10624  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.externaladdress)
 10625  	if err != nil {
 10626  		return nil, err
 10627  	}
 10628  	c.urlParams_.Set("alt", alt)
 10629  	c.urlParams_.Set("prettyPrint", "false")
 10630  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 10631  	urls += "?" + c.urlParams_.Encode()
 10632  	req, err := http.NewRequest("PATCH", urls, body)
 10633  	if err != nil {
 10634  		return nil, err
 10635  	}
 10636  	req.Header = reqHeaders
 10637  	googleapi.Expand(req.URL, map[string]string{
 10638  		"name": c.name,
 10639  	})
 10640  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10641  }
 10642  
 10643  // Do executes the "vmwareengine.projects.locations.privateClouds.externalAddresses.patch" call.
 10644  // Any non-2xx status code is an error. Response headers are in either
 10645  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 10646  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 10647  // whether the returned error was because http.StatusNotModified was returned.
 10648  func (c *ProjectsLocationsPrivateCloudsExternalAddressesPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 10649  	gensupport.SetOptions(c.urlParams_, opts...)
 10650  	res, err := c.doRequest("json")
 10651  	if res != nil && res.StatusCode == http.StatusNotModified {
 10652  		if res.Body != nil {
 10653  			res.Body.Close()
 10654  		}
 10655  		return nil, gensupport.WrapError(&googleapi.Error{
 10656  			Code:   res.StatusCode,
 10657  			Header: res.Header,
 10658  		})
 10659  	}
 10660  	if err != nil {
 10661  		return nil, err
 10662  	}
 10663  	defer googleapi.CloseBody(res)
 10664  	if err := googleapi.CheckResponse(res); err != nil {
 10665  		return nil, gensupport.WrapError(err)
 10666  	}
 10667  	ret := &Operation{
 10668  		ServerResponse: googleapi.ServerResponse{
 10669  			Header:         res.Header,
 10670  			HTTPStatusCode: res.StatusCode,
 10671  		},
 10672  	}
 10673  	target := &ret
 10674  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10675  		return nil, err
 10676  	}
 10677  	return ret, nil
 10678  }
 10679  
 10680  type ProjectsLocationsPrivateCloudsHcxActivationKeysCreateCall struct {
 10681  	s                *Service
 10682  	parent           string
 10683  	hcxactivationkey *HcxActivationKey
 10684  	urlParams_       gensupport.URLParams
 10685  	ctx_             context.Context
 10686  	header_          http.Header
 10687  }
 10688  
 10689  // Create: Creates a new HCX activation key in a given private cloud.
 10690  //
 10691  //   - parent: The resource name of the private cloud to create the key for.
 10692  //     Resource names are schemeless URIs that follow the conventions in
 10693  //     https://cloud.google.com/apis/design/resource_names. For example:
 10694  //     `projects/my-project/locations/us-central1/privateClouds/my-cloud`.
 10695  func (r *ProjectsLocationsPrivateCloudsHcxActivationKeysService) Create(parent string, hcxactivationkey *HcxActivationKey) *ProjectsLocationsPrivateCloudsHcxActivationKeysCreateCall {
 10696  	c := &ProjectsLocationsPrivateCloudsHcxActivationKeysCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10697  	c.parent = parent
 10698  	c.hcxactivationkey = hcxactivationkey
 10699  	return c
 10700  }
 10701  
 10702  // HcxActivationKeyId sets the optional parameter "hcxActivationKeyId":
 10703  // Required. The user-provided identifier of the `HcxActivationKey` to be
 10704  // created. This identifier must be unique among `HcxActivationKey` resources
 10705  // within the parent and becomes the final token in the name URI. The
 10706  // identifier must meet the following requirements: * Only contains 1-63
 10707  // alphanumeric characters and hyphens * Begins with an alphabetical character
 10708  // * Ends with a non-hyphen character * Not formatted as a UUID * Complies with
 10709  // RFC 1034 (https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
 10710  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysCreateCall) HcxActivationKeyId(hcxActivationKeyId string) *ProjectsLocationsPrivateCloudsHcxActivationKeysCreateCall {
 10711  	c.urlParams_.Set("hcxActivationKeyId", hcxActivationKeyId)
 10712  	return c
 10713  }
 10714  
 10715  // RequestId sets the optional parameter "requestId": A request ID to identify
 10716  // requests. Specify a unique request ID so that if you must retry your
 10717  // request, the server will know to ignore the request if it has already been
 10718  // completed. The server guarantees that a request doesn't result in creation
 10719  // of duplicate commitments for at least 60 minutes. For example, consider a
 10720  // situation where you make an initial request and the request times out. If
 10721  // you make the request again with the same request ID, the server can check if
 10722  // original operation with the same request ID was received, and if so, will
 10723  // ignore the second request. This prevents clients from accidentally creating
 10724  // duplicate commitments. The request ID must be a valid UUID with the
 10725  // exception that zero UUID is not supported
 10726  // (00000000-0000-0000-0000-000000000000).
 10727  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysCreateCall) RequestId(requestId string) *ProjectsLocationsPrivateCloudsHcxActivationKeysCreateCall {
 10728  	c.urlParams_.Set("requestId", requestId)
 10729  	return c
 10730  }
 10731  
 10732  // Fields allows partial responses to be retrieved. See
 10733  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10734  // details.
 10735  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsHcxActivationKeysCreateCall {
 10736  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10737  	return c
 10738  }
 10739  
 10740  // Context sets the context to be used in this call's Do method.
 10741  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysCreateCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsHcxActivationKeysCreateCall {
 10742  	c.ctx_ = ctx
 10743  	return c
 10744  }
 10745  
 10746  // Header returns a http.Header that can be modified by the caller to add
 10747  // headers to the request.
 10748  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysCreateCall) Header() http.Header {
 10749  	if c.header_ == nil {
 10750  		c.header_ = make(http.Header)
 10751  	}
 10752  	return c.header_
 10753  }
 10754  
 10755  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysCreateCall) doRequest(alt string) (*http.Response, error) {
 10756  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 10757  	var body io.Reader = nil
 10758  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.hcxactivationkey)
 10759  	if err != nil {
 10760  		return nil, err
 10761  	}
 10762  	c.urlParams_.Set("alt", alt)
 10763  	c.urlParams_.Set("prettyPrint", "false")
 10764  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/hcxActivationKeys")
 10765  	urls += "?" + c.urlParams_.Encode()
 10766  	req, err := http.NewRequest("POST", urls, body)
 10767  	if err != nil {
 10768  		return nil, err
 10769  	}
 10770  	req.Header = reqHeaders
 10771  	googleapi.Expand(req.URL, map[string]string{
 10772  		"parent": c.parent,
 10773  	})
 10774  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10775  }
 10776  
 10777  // Do executes the "vmwareengine.projects.locations.privateClouds.hcxActivationKeys.create" call.
 10778  // Any non-2xx status code is an error. Response headers are in either
 10779  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 10780  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 10781  // whether the returned error was because http.StatusNotModified was returned.
 10782  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 10783  	gensupport.SetOptions(c.urlParams_, opts...)
 10784  	res, err := c.doRequest("json")
 10785  	if res != nil && res.StatusCode == http.StatusNotModified {
 10786  		if res.Body != nil {
 10787  			res.Body.Close()
 10788  		}
 10789  		return nil, gensupport.WrapError(&googleapi.Error{
 10790  			Code:   res.StatusCode,
 10791  			Header: res.Header,
 10792  		})
 10793  	}
 10794  	if err != nil {
 10795  		return nil, err
 10796  	}
 10797  	defer googleapi.CloseBody(res)
 10798  	if err := googleapi.CheckResponse(res); err != nil {
 10799  		return nil, gensupport.WrapError(err)
 10800  	}
 10801  	ret := &Operation{
 10802  		ServerResponse: googleapi.ServerResponse{
 10803  			Header:         res.Header,
 10804  			HTTPStatusCode: res.StatusCode,
 10805  		},
 10806  	}
 10807  	target := &ret
 10808  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10809  		return nil, err
 10810  	}
 10811  	return ret, nil
 10812  }
 10813  
 10814  type ProjectsLocationsPrivateCloudsHcxActivationKeysGetCall struct {
 10815  	s            *Service
 10816  	name         string
 10817  	urlParams_   gensupport.URLParams
 10818  	ifNoneMatch_ string
 10819  	ctx_         context.Context
 10820  	header_      http.Header
 10821  }
 10822  
 10823  // Get: Retrieves a `HcxActivationKey` resource by its resource name.
 10824  //
 10825  //   - name: The resource name of the HCX activation key to retrieve. Resource
 10826  //     names are schemeless URIs that follow the conventions in
 10827  //     https://cloud.google.com/apis/design/resource_names. For example:
 10828  //     `projects/my-project/locations/us-central1/privateClouds/my-cloud/hcxActiva
 10829  //     tionKeys/my-key`.
 10830  func (r *ProjectsLocationsPrivateCloudsHcxActivationKeysService) Get(name string) *ProjectsLocationsPrivateCloudsHcxActivationKeysGetCall {
 10831  	c := &ProjectsLocationsPrivateCloudsHcxActivationKeysGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10832  	c.name = name
 10833  	return c
 10834  }
 10835  
 10836  // Fields allows partial responses to be retrieved. See
 10837  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10838  // details.
 10839  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsHcxActivationKeysGetCall {
 10840  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10841  	return c
 10842  }
 10843  
 10844  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 10845  // object's ETag matches the given value. This is useful for getting updates
 10846  // only after the object has changed since the last request.
 10847  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsHcxActivationKeysGetCall {
 10848  	c.ifNoneMatch_ = entityTag
 10849  	return c
 10850  }
 10851  
 10852  // Context sets the context to be used in this call's Do method.
 10853  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysGetCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsHcxActivationKeysGetCall {
 10854  	c.ctx_ = ctx
 10855  	return c
 10856  }
 10857  
 10858  // Header returns a http.Header that can be modified by the caller to add
 10859  // headers to the request.
 10860  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysGetCall) Header() http.Header {
 10861  	if c.header_ == nil {
 10862  		c.header_ = make(http.Header)
 10863  	}
 10864  	return c.header_
 10865  }
 10866  
 10867  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysGetCall) doRequest(alt string) (*http.Response, error) {
 10868  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 10869  	if c.ifNoneMatch_ != "" {
 10870  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 10871  	}
 10872  	var body io.Reader = nil
 10873  	c.urlParams_.Set("alt", alt)
 10874  	c.urlParams_.Set("prettyPrint", "false")
 10875  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 10876  	urls += "?" + c.urlParams_.Encode()
 10877  	req, err := http.NewRequest("GET", urls, body)
 10878  	if err != nil {
 10879  		return nil, err
 10880  	}
 10881  	req.Header = reqHeaders
 10882  	googleapi.Expand(req.URL, map[string]string{
 10883  		"name": c.name,
 10884  	})
 10885  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 10886  }
 10887  
 10888  // Do executes the "vmwareengine.projects.locations.privateClouds.hcxActivationKeys.get" call.
 10889  // Any non-2xx status code is an error. Response headers are in either
 10890  // *HcxActivationKey.ServerResponse.Header or (if a response was returned at
 10891  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 10892  // check whether the returned error was because http.StatusNotModified was
 10893  // returned.
 10894  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysGetCall) Do(opts ...googleapi.CallOption) (*HcxActivationKey, error) {
 10895  	gensupport.SetOptions(c.urlParams_, opts...)
 10896  	res, err := c.doRequest("json")
 10897  	if res != nil && res.StatusCode == http.StatusNotModified {
 10898  		if res.Body != nil {
 10899  			res.Body.Close()
 10900  		}
 10901  		return nil, gensupport.WrapError(&googleapi.Error{
 10902  			Code:   res.StatusCode,
 10903  			Header: res.Header,
 10904  		})
 10905  	}
 10906  	if err != nil {
 10907  		return nil, err
 10908  	}
 10909  	defer googleapi.CloseBody(res)
 10910  	if err := googleapi.CheckResponse(res); err != nil {
 10911  		return nil, gensupport.WrapError(err)
 10912  	}
 10913  	ret := &HcxActivationKey{
 10914  		ServerResponse: googleapi.ServerResponse{
 10915  			Header:         res.Header,
 10916  			HTTPStatusCode: res.StatusCode,
 10917  		},
 10918  	}
 10919  	target := &ret
 10920  	if err := gensupport.DecodeResponse(target, res); err != nil {
 10921  		return nil, err
 10922  	}
 10923  	return ret, nil
 10924  }
 10925  
 10926  type ProjectsLocationsPrivateCloudsHcxActivationKeysGetIamPolicyCall struct {
 10927  	s            *Service
 10928  	resource     string
 10929  	urlParams_   gensupport.URLParams
 10930  	ifNoneMatch_ string
 10931  	ctx_         context.Context
 10932  	header_      http.Header
 10933  }
 10934  
 10935  // GetIamPolicy: Gets the access control policy for a resource. Returns an
 10936  // empty policy if the resource exists and does not have a policy set.
 10937  //
 10938  //   - resource: REQUIRED: The resource for which the policy is being requested.
 10939  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
 10940  //     for the appropriate value for this field.
 10941  func (r *ProjectsLocationsPrivateCloudsHcxActivationKeysService) GetIamPolicy(resource string) *ProjectsLocationsPrivateCloudsHcxActivationKeysGetIamPolicyCall {
 10942  	c := &ProjectsLocationsPrivateCloudsHcxActivationKeysGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 10943  	c.resource = resource
 10944  	return c
 10945  }
 10946  
 10947  // OptionsRequestedPolicyVersion sets the optional parameter
 10948  // "options.requestedPolicyVersion": The maximum policy version that will be
 10949  // used to format the policy. Valid values are 0, 1, and 3. Requests specifying
 10950  // an invalid value will be rejected. Requests for policies with any
 10951  // conditional role bindings must specify version 3. Policies with no
 10952  // conditional role bindings may specify any valid value or leave the field
 10953  // unset. The policy in the response might use the policy version that you
 10954  // specified, or it might use a lower policy version. For example, if you
 10955  // specify version 3, but the policy has no conditional role bindings, the
 10956  // response uses version 1. To learn which resources support conditions in
 10957  // their IAM policies, see the IAM documentation
 10958  // (https://cloud.google.com/iam/help/conditions/resource-policies).
 10959  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsPrivateCloudsHcxActivationKeysGetIamPolicyCall {
 10960  	c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion))
 10961  	return c
 10962  }
 10963  
 10964  // Fields allows partial responses to be retrieved. See
 10965  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 10966  // details.
 10967  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsHcxActivationKeysGetIamPolicyCall {
 10968  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 10969  	return c
 10970  }
 10971  
 10972  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 10973  // object's ETag matches the given value. This is useful for getting updates
 10974  // only after the object has changed since the last request.
 10975  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsHcxActivationKeysGetIamPolicyCall {
 10976  	c.ifNoneMatch_ = entityTag
 10977  	return c
 10978  }
 10979  
 10980  // Context sets the context to be used in this call's Do method.
 10981  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsHcxActivationKeysGetIamPolicyCall {
 10982  	c.ctx_ = ctx
 10983  	return c
 10984  }
 10985  
 10986  // Header returns a http.Header that can be modified by the caller to add
 10987  // headers to the request.
 10988  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysGetIamPolicyCall) Header() http.Header {
 10989  	if c.header_ == nil {
 10990  		c.header_ = make(http.Header)
 10991  	}
 10992  	return c.header_
 10993  }
 10994  
 10995  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
 10996  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 10997  	if c.ifNoneMatch_ != "" {
 10998  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 10999  	}
 11000  	var body io.Reader = nil
 11001  	c.urlParams_.Set("alt", alt)
 11002  	c.urlParams_.Set("prettyPrint", "false")
 11003  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy")
 11004  	urls += "?" + c.urlParams_.Encode()
 11005  	req, err := http.NewRequest("GET", urls, body)
 11006  	if err != nil {
 11007  		return nil, err
 11008  	}
 11009  	req.Header = reqHeaders
 11010  	googleapi.Expand(req.URL, map[string]string{
 11011  		"resource": c.resource,
 11012  	})
 11013  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11014  }
 11015  
 11016  // Do executes the "vmwareengine.projects.locations.privateClouds.hcxActivationKeys.getIamPolicy" call.
 11017  // Any non-2xx status code is an error. Response headers are in either
 11018  // *Policy.ServerResponse.Header or (if a response was returned at all) in
 11019  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11020  // whether the returned error was because http.StatusNotModified was returned.
 11021  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
 11022  	gensupport.SetOptions(c.urlParams_, opts...)
 11023  	res, err := c.doRequest("json")
 11024  	if res != nil && res.StatusCode == http.StatusNotModified {
 11025  		if res.Body != nil {
 11026  			res.Body.Close()
 11027  		}
 11028  		return nil, gensupport.WrapError(&googleapi.Error{
 11029  			Code:   res.StatusCode,
 11030  			Header: res.Header,
 11031  		})
 11032  	}
 11033  	if err != nil {
 11034  		return nil, err
 11035  	}
 11036  	defer googleapi.CloseBody(res)
 11037  	if err := googleapi.CheckResponse(res); err != nil {
 11038  		return nil, gensupport.WrapError(err)
 11039  	}
 11040  	ret := &Policy{
 11041  		ServerResponse: googleapi.ServerResponse{
 11042  			Header:         res.Header,
 11043  			HTTPStatusCode: res.StatusCode,
 11044  		},
 11045  	}
 11046  	target := &ret
 11047  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11048  		return nil, err
 11049  	}
 11050  	return ret, nil
 11051  }
 11052  
 11053  type ProjectsLocationsPrivateCloudsHcxActivationKeysListCall struct {
 11054  	s            *Service
 11055  	parent       string
 11056  	urlParams_   gensupport.URLParams
 11057  	ifNoneMatch_ string
 11058  	ctx_         context.Context
 11059  	header_      http.Header
 11060  }
 11061  
 11062  // List: Lists `HcxActivationKey` resources in a given private cloud.
 11063  //
 11064  //   - parent: The resource name of the private cloud to be queried for HCX
 11065  //     activation keys. Resource names are schemeless URIs that follow the
 11066  //     conventions in https://cloud.google.com/apis/design/resource_names. For
 11067  //     example:
 11068  //     `projects/my-project/locations/us-central1/privateClouds/my-cloud`.
 11069  func (r *ProjectsLocationsPrivateCloudsHcxActivationKeysService) List(parent string) *ProjectsLocationsPrivateCloudsHcxActivationKeysListCall {
 11070  	c := &ProjectsLocationsPrivateCloudsHcxActivationKeysListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11071  	c.parent = parent
 11072  	return c
 11073  }
 11074  
 11075  // PageSize sets the optional parameter "pageSize": The maximum number of HCX
 11076  // activation keys to return in one page. The service may return fewer than
 11077  // this value. The maximum value is coerced to 1000. The default value of this
 11078  // field is 500.
 11079  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysListCall) PageSize(pageSize int64) *ProjectsLocationsPrivateCloudsHcxActivationKeysListCall {
 11080  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 11081  	return c
 11082  }
 11083  
 11084  // PageToken sets the optional parameter "pageToken": A page token, received
 11085  // from a previous `ListHcxActivationKeys` call. Provide this to retrieve the
 11086  // subsequent page. When paginating, all other parameters provided to
 11087  // `ListHcxActivationKeys` must match the call that provided the page token.
 11088  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysListCall) PageToken(pageToken string) *ProjectsLocationsPrivateCloudsHcxActivationKeysListCall {
 11089  	c.urlParams_.Set("pageToken", pageToken)
 11090  	return c
 11091  }
 11092  
 11093  // Fields allows partial responses to be retrieved. See
 11094  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11095  // details.
 11096  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysListCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsHcxActivationKeysListCall {
 11097  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11098  	return c
 11099  }
 11100  
 11101  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 11102  // object's ETag matches the given value. This is useful for getting updates
 11103  // only after the object has changed since the last request.
 11104  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysListCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsHcxActivationKeysListCall {
 11105  	c.ifNoneMatch_ = entityTag
 11106  	return c
 11107  }
 11108  
 11109  // Context sets the context to be used in this call's Do method.
 11110  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysListCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsHcxActivationKeysListCall {
 11111  	c.ctx_ = ctx
 11112  	return c
 11113  }
 11114  
 11115  // Header returns a http.Header that can be modified by the caller to add
 11116  // headers to the request.
 11117  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysListCall) Header() http.Header {
 11118  	if c.header_ == nil {
 11119  		c.header_ = make(http.Header)
 11120  	}
 11121  	return c.header_
 11122  }
 11123  
 11124  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysListCall) doRequest(alt string) (*http.Response, error) {
 11125  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11126  	if c.ifNoneMatch_ != "" {
 11127  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 11128  	}
 11129  	var body io.Reader = nil
 11130  	c.urlParams_.Set("alt", alt)
 11131  	c.urlParams_.Set("prettyPrint", "false")
 11132  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/hcxActivationKeys")
 11133  	urls += "?" + c.urlParams_.Encode()
 11134  	req, err := http.NewRequest("GET", urls, body)
 11135  	if err != nil {
 11136  		return nil, err
 11137  	}
 11138  	req.Header = reqHeaders
 11139  	googleapi.Expand(req.URL, map[string]string{
 11140  		"parent": c.parent,
 11141  	})
 11142  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11143  }
 11144  
 11145  // Do executes the "vmwareengine.projects.locations.privateClouds.hcxActivationKeys.list" call.
 11146  // Any non-2xx status code is an error. Response headers are in either
 11147  // *ListHcxActivationKeysResponse.ServerResponse.Header or (if a response was
 11148  // returned at all) in error.(*googleapi.Error).Header. Use
 11149  // googleapi.IsNotModified to check whether the returned error was because
 11150  // http.StatusNotModified was returned.
 11151  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysListCall) Do(opts ...googleapi.CallOption) (*ListHcxActivationKeysResponse, error) {
 11152  	gensupport.SetOptions(c.urlParams_, opts...)
 11153  	res, err := c.doRequest("json")
 11154  	if res != nil && res.StatusCode == http.StatusNotModified {
 11155  		if res.Body != nil {
 11156  			res.Body.Close()
 11157  		}
 11158  		return nil, gensupport.WrapError(&googleapi.Error{
 11159  			Code:   res.StatusCode,
 11160  			Header: res.Header,
 11161  		})
 11162  	}
 11163  	if err != nil {
 11164  		return nil, err
 11165  	}
 11166  	defer googleapi.CloseBody(res)
 11167  	if err := googleapi.CheckResponse(res); err != nil {
 11168  		return nil, gensupport.WrapError(err)
 11169  	}
 11170  	ret := &ListHcxActivationKeysResponse{
 11171  		ServerResponse: googleapi.ServerResponse{
 11172  			Header:         res.Header,
 11173  			HTTPStatusCode: res.StatusCode,
 11174  		},
 11175  	}
 11176  	target := &ret
 11177  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11178  		return nil, err
 11179  	}
 11180  	return ret, nil
 11181  }
 11182  
 11183  // Pages invokes f for each page of results.
 11184  // A non-nil error returned from f will halt the iteration.
 11185  // The provided context supersedes any context provided to the Context method.
 11186  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysListCall) Pages(ctx context.Context, f func(*ListHcxActivationKeysResponse) error) error {
 11187  	c.ctx_ = ctx
 11188  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 11189  	for {
 11190  		x, err := c.Do()
 11191  		if err != nil {
 11192  			return err
 11193  		}
 11194  		if err := f(x); err != nil {
 11195  			return err
 11196  		}
 11197  		if x.NextPageToken == "" {
 11198  			return nil
 11199  		}
 11200  		c.PageToken(x.NextPageToken)
 11201  	}
 11202  }
 11203  
 11204  type ProjectsLocationsPrivateCloudsHcxActivationKeysSetIamPolicyCall struct {
 11205  	s                   *Service
 11206  	resource            string
 11207  	setiampolicyrequest *SetIamPolicyRequest
 11208  	urlParams_          gensupport.URLParams
 11209  	ctx_                context.Context
 11210  	header_             http.Header
 11211  }
 11212  
 11213  // SetIamPolicy: Sets the access control policy on the specified resource.
 11214  // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`,
 11215  // and `PERMISSION_DENIED` errors.
 11216  //
 11217  //   - resource: REQUIRED: The resource for which the policy is being specified.
 11218  //     See Resource names (https://cloud.google.com/apis/design/resource_names)
 11219  //     for the appropriate value for this field.
 11220  func (r *ProjectsLocationsPrivateCloudsHcxActivationKeysService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsPrivateCloudsHcxActivationKeysSetIamPolicyCall {
 11221  	c := &ProjectsLocationsPrivateCloudsHcxActivationKeysSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11222  	c.resource = resource
 11223  	c.setiampolicyrequest = setiampolicyrequest
 11224  	return c
 11225  }
 11226  
 11227  // Fields allows partial responses to be retrieved. See
 11228  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11229  // details.
 11230  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsHcxActivationKeysSetIamPolicyCall {
 11231  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11232  	return c
 11233  }
 11234  
 11235  // Context sets the context to be used in this call's Do method.
 11236  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsHcxActivationKeysSetIamPolicyCall {
 11237  	c.ctx_ = ctx
 11238  	return c
 11239  }
 11240  
 11241  // Header returns a http.Header that can be modified by the caller to add
 11242  // headers to the request.
 11243  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysSetIamPolicyCall) Header() http.Header {
 11244  	if c.header_ == nil {
 11245  		c.header_ = make(http.Header)
 11246  	}
 11247  	return c.header_
 11248  }
 11249  
 11250  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
 11251  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 11252  	var body io.Reader = nil
 11253  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
 11254  	if err != nil {
 11255  		return nil, err
 11256  	}
 11257  	c.urlParams_.Set("alt", alt)
 11258  	c.urlParams_.Set("prettyPrint", "false")
 11259  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy")
 11260  	urls += "?" + c.urlParams_.Encode()
 11261  	req, err := http.NewRequest("POST", urls, body)
 11262  	if err != nil {
 11263  		return nil, err
 11264  	}
 11265  	req.Header = reqHeaders
 11266  	googleapi.Expand(req.URL, map[string]string{
 11267  		"resource": c.resource,
 11268  	})
 11269  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11270  }
 11271  
 11272  // Do executes the "vmwareengine.projects.locations.privateClouds.hcxActivationKeys.setIamPolicy" call.
 11273  // Any non-2xx status code is an error. Response headers are in either
 11274  // *Policy.ServerResponse.Header or (if a response was returned at all) in
 11275  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11276  // whether the returned error was because http.StatusNotModified was returned.
 11277  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
 11278  	gensupport.SetOptions(c.urlParams_, opts...)
 11279  	res, err := c.doRequest("json")
 11280  	if res != nil && res.StatusCode == http.StatusNotModified {
 11281  		if res.Body != nil {
 11282  			res.Body.Close()
 11283  		}
 11284  		return nil, gensupport.WrapError(&googleapi.Error{
 11285  			Code:   res.StatusCode,
 11286  			Header: res.Header,
 11287  		})
 11288  	}
 11289  	if err != nil {
 11290  		return nil, err
 11291  	}
 11292  	defer googleapi.CloseBody(res)
 11293  	if err := googleapi.CheckResponse(res); err != nil {
 11294  		return nil, gensupport.WrapError(err)
 11295  	}
 11296  	ret := &Policy{
 11297  		ServerResponse: googleapi.ServerResponse{
 11298  			Header:         res.Header,
 11299  			HTTPStatusCode: res.StatusCode,
 11300  		},
 11301  	}
 11302  	target := &ret
 11303  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11304  		return nil, err
 11305  	}
 11306  	return ret, nil
 11307  }
 11308  
 11309  type ProjectsLocationsPrivateCloudsHcxActivationKeysTestIamPermissionsCall struct {
 11310  	s                         *Service
 11311  	resource                  string
 11312  	testiampermissionsrequest *TestIamPermissionsRequest
 11313  	urlParams_                gensupport.URLParams
 11314  	ctx_                      context.Context
 11315  	header_                   http.Header
 11316  }
 11317  
 11318  // TestIamPermissions: Returns permissions that a caller has on the specified
 11319  // resource. If the resource does not exist, this will return an empty set of
 11320  // permissions, not a `NOT_FOUND` error. Note: This operation is designed to be
 11321  // used for building permission-aware UIs and command-line tools, not for
 11322  // authorization checking. This operation may "fail open" without warning.
 11323  //
 11324  //   - resource: REQUIRED: The resource for which the policy detail is being
 11325  //     requested. See Resource names
 11326  //     (https://cloud.google.com/apis/design/resource_names) for the appropriate
 11327  //     value for this field.
 11328  func (r *ProjectsLocationsPrivateCloudsHcxActivationKeysService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsPrivateCloudsHcxActivationKeysTestIamPermissionsCall {
 11329  	c := &ProjectsLocationsPrivateCloudsHcxActivationKeysTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11330  	c.resource = resource
 11331  	c.testiampermissionsrequest = testiampermissionsrequest
 11332  	return c
 11333  }
 11334  
 11335  // Fields allows partial responses to be retrieved. See
 11336  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11337  // details.
 11338  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsHcxActivationKeysTestIamPermissionsCall {
 11339  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11340  	return c
 11341  }
 11342  
 11343  // Context sets the context to be used in this call's Do method.
 11344  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsHcxActivationKeysTestIamPermissionsCall {
 11345  	c.ctx_ = ctx
 11346  	return c
 11347  }
 11348  
 11349  // Header returns a http.Header that can be modified by the caller to add
 11350  // headers to the request.
 11351  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysTestIamPermissionsCall) Header() http.Header {
 11352  	if c.header_ == nil {
 11353  		c.header_ = make(http.Header)
 11354  	}
 11355  	return c.header_
 11356  }
 11357  
 11358  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
 11359  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 11360  	var body io.Reader = nil
 11361  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
 11362  	if err != nil {
 11363  		return nil, err
 11364  	}
 11365  	c.urlParams_.Set("alt", alt)
 11366  	c.urlParams_.Set("prettyPrint", "false")
 11367  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions")
 11368  	urls += "?" + c.urlParams_.Encode()
 11369  	req, err := http.NewRequest("POST", urls, body)
 11370  	if err != nil {
 11371  		return nil, err
 11372  	}
 11373  	req.Header = reqHeaders
 11374  	googleapi.Expand(req.URL, map[string]string{
 11375  		"resource": c.resource,
 11376  	})
 11377  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11378  }
 11379  
 11380  // Do executes the "vmwareengine.projects.locations.privateClouds.hcxActivationKeys.testIamPermissions" call.
 11381  // Any non-2xx status code is an error. Response headers are in either
 11382  // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was
 11383  // returned at all) in error.(*googleapi.Error).Header. Use
 11384  // googleapi.IsNotModified to check whether the returned error was because
 11385  // http.StatusNotModified was returned.
 11386  func (c *ProjectsLocationsPrivateCloudsHcxActivationKeysTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
 11387  	gensupport.SetOptions(c.urlParams_, opts...)
 11388  	res, err := c.doRequest("json")
 11389  	if res != nil && res.StatusCode == http.StatusNotModified {
 11390  		if res.Body != nil {
 11391  			res.Body.Close()
 11392  		}
 11393  		return nil, gensupport.WrapError(&googleapi.Error{
 11394  			Code:   res.StatusCode,
 11395  			Header: res.Header,
 11396  		})
 11397  	}
 11398  	if err != nil {
 11399  		return nil, err
 11400  	}
 11401  	defer googleapi.CloseBody(res)
 11402  	if err := googleapi.CheckResponse(res); err != nil {
 11403  		return nil, gensupport.WrapError(err)
 11404  	}
 11405  	ret := &TestIamPermissionsResponse{
 11406  		ServerResponse: googleapi.ServerResponse{
 11407  			Header:         res.Header,
 11408  			HTTPStatusCode: res.StatusCode,
 11409  		},
 11410  	}
 11411  	target := &ret
 11412  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11413  		return nil, err
 11414  	}
 11415  	return ret, nil
 11416  }
 11417  
 11418  type ProjectsLocationsPrivateCloudsLoggingServersCreateCall struct {
 11419  	s             *Service
 11420  	parent        string
 11421  	loggingserver *LoggingServer
 11422  	urlParams_    gensupport.URLParams
 11423  	ctx_          context.Context
 11424  	header_       http.Header
 11425  }
 11426  
 11427  // Create: Create a new logging server for a given private cloud.
 11428  //
 11429  //   - parent: The resource name of the private cloud to create a new Logging
 11430  //     Server in. Resource names are schemeless URIs that follow the conventions
 11431  //     in https://cloud.google.com/apis/design/resource_names. For example:
 11432  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud`.
 11433  func (r *ProjectsLocationsPrivateCloudsLoggingServersService) Create(parent string, loggingserver *LoggingServer) *ProjectsLocationsPrivateCloudsLoggingServersCreateCall {
 11434  	c := &ProjectsLocationsPrivateCloudsLoggingServersCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11435  	c.parent = parent
 11436  	c.loggingserver = loggingserver
 11437  	return c
 11438  }
 11439  
 11440  // LoggingServerId sets the optional parameter "loggingServerId": Required. The
 11441  // user-provided identifier of the `LoggingServer` to be created. This
 11442  // identifier must be unique among `LoggingServer` resources within the parent
 11443  // and becomes the final token in the name URI. The identifier must meet the
 11444  // following requirements: * Only contains 1-63 alphanumeric characters and
 11445  // hyphens * Begins with an alphabetical character * Ends with a non-hyphen
 11446  // character * Not formatted as a UUID * Complies with RFC 1034
 11447  // (https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
 11448  func (c *ProjectsLocationsPrivateCloudsLoggingServersCreateCall) LoggingServerId(loggingServerId string) *ProjectsLocationsPrivateCloudsLoggingServersCreateCall {
 11449  	c.urlParams_.Set("loggingServerId", loggingServerId)
 11450  	return c
 11451  }
 11452  
 11453  // RequestId sets the optional parameter "requestId": A request ID to identify
 11454  // requests. Specify a unique request ID so that if you must retry your
 11455  // request, the server will know to ignore the request if it has already been
 11456  // completed. The server guarantees that a request doesn't result in creation
 11457  // of duplicate commitments for at least 60 minutes. For example, consider a
 11458  // situation where you make an initial request and the request times out. If
 11459  // you make the request again with the same request ID, the server can check if
 11460  // original operation with the same request ID was received, and if so, will
 11461  // ignore the second request. This prevents clients from accidentally creating
 11462  // duplicate commitments. The request ID must be a valid UUID with the
 11463  // exception that zero UUID is not supported
 11464  // (00000000-0000-0000-0000-000000000000).
 11465  func (c *ProjectsLocationsPrivateCloudsLoggingServersCreateCall) RequestId(requestId string) *ProjectsLocationsPrivateCloudsLoggingServersCreateCall {
 11466  	c.urlParams_.Set("requestId", requestId)
 11467  	return c
 11468  }
 11469  
 11470  // Fields allows partial responses to be retrieved. See
 11471  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11472  // details.
 11473  func (c *ProjectsLocationsPrivateCloudsLoggingServersCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsLoggingServersCreateCall {
 11474  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11475  	return c
 11476  }
 11477  
 11478  // Context sets the context to be used in this call's Do method.
 11479  func (c *ProjectsLocationsPrivateCloudsLoggingServersCreateCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsLoggingServersCreateCall {
 11480  	c.ctx_ = ctx
 11481  	return c
 11482  }
 11483  
 11484  // Header returns a http.Header that can be modified by the caller to add
 11485  // headers to the request.
 11486  func (c *ProjectsLocationsPrivateCloudsLoggingServersCreateCall) Header() http.Header {
 11487  	if c.header_ == nil {
 11488  		c.header_ = make(http.Header)
 11489  	}
 11490  	return c.header_
 11491  }
 11492  
 11493  func (c *ProjectsLocationsPrivateCloudsLoggingServersCreateCall) doRequest(alt string) (*http.Response, error) {
 11494  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 11495  	var body io.Reader = nil
 11496  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.loggingserver)
 11497  	if err != nil {
 11498  		return nil, err
 11499  	}
 11500  	c.urlParams_.Set("alt", alt)
 11501  	c.urlParams_.Set("prettyPrint", "false")
 11502  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/loggingServers")
 11503  	urls += "?" + c.urlParams_.Encode()
 11504  	req, err := http.NewRequest("POST", urls, body)
 11505  	if err != nil {
 11506  		return nil, err
 11507  	}
 11508  	req.Header = reqHeaders
 11509  	googleapi.Expand(req.URL, map[string]string{
 11510  		"parent": c.parent,
 11511  	})
 11512  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11513  }
 11514  
 11515  // Do executes the "vmwareengine.projects.locations.privateClouds.loggingServers.create" call.
 11516  // Any non-2xx status code is an error. Response headers are in either
 11517  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 11518  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11519  // whether the returned error was because http.StatusNotModified was returned.
 11520  func (c *ProjectsLocationsPrivateCloudsLoggingServersCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 11521  	gensupport.SetOptions(c.urlParams_, opts...)
 11522  	res, err := c.doRequest("json")
 11523  	if res != nil && res.StatusCode == http.StatusNotModified {
 11524  		if res.Body != nil {
 11525  			res.Body.Close()
 11526  		}
 11527  		return nil, gensupport.WrapError(&googleapi.Error{
 11528  			Code:   res.StatusCode,
 11529  			Header: res.Header,
 11530  		})
 11531  	}
 11532  	if err != nil {
 11533  		return nil, err
 11534  	}
 11535  	defer googleapi.CloseBody(res)
 11536  	if err := googleapi.CheckResponse(res); err != nil {
 11537  		return nil, gensupport.WrapError(err)
 11538  	}
 11539  	ret := &Operation{
 11540  		ServerResponse: googleapi.ServerResponse{
 11541  			Header:         res.Header,
 11542  			HTTPStatusCode: res.StatusCode,
 11543  		},
 11544  	}
 11545  	target := &ret
 11546  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11547  		return nil, err
 11548  	}
 11549  	return ret, nil
 11550  }
 11551  
 11552  type ProjectsLocationsPrivateCloudsLoggingServersDeleteCall struct {
 11553  	s          *Service
 11554  	name       string
 11555  	urlParams_ gensupport.URLParams
 11556  	ctx_       context.Context
 11557  	header_    http.Header
 11558  }
 11559  
 11560  // Delete: Deletes a single logging server.
 11561  //
 11562  //   - name: The resource name of the logging server to delete. Resource names
 11563  //     are schemeless URIs that follow the conventions in
 11564  //     https://cloud.google.com/apis/design/resource_names. For example:
 11565  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/logging
 11566  //     Servers/my-logging-server`.
 11567  func (r *ProjectsLocationsPrivateCloudsLoggingServersService) Delete(name string) *ProjectsLocationsPrivateCloudsLoggingServersDeleteCall {
 11568  	c := &ProjectsLocationsPrivateCloudsLoggingServersDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11569  	c.name = name
 11570  	return c
 11571  }
 11572  
 11573  // RequestId sets the optional parameter "requestId": A request ID to identify
 11574  // requests. Specify a unique request ID so that if you must retry your
 11575  // request, the server will know to ignore the request if it has already been
 11576  // completed. The server guarantees that a request doesn't result in creation
 11577  // of duplicate commitments for at least 60 minutes. For example, consider a
 11578  // situation where you make an initial request and the request times out. If
 11579  // you make the request again with the same request ID, the server can check if
 11580  // original operation with the same request ID was received, and if so, will
 11581  // ignore the second request. This prevents clients from accidentally creating
 11582  // duplicate commitments. The request ID must be a valid UUID with the
 11583  // exception that zero UUID is not supported
 11584  // (00000000-0000-0000-0000-000000000000).
 11585  func (c *ProjectsLocationsPrivateCloudsLoggingServersDeleteCall) RequestId(requestId string) *ProjectsLocationsPrivateCloudsLoggingServersDeleteCall {
 11586  	c.urlParams_.Set("requestId", requestId)
 11587  	return c
 11588  }
 11589  
 11590  // Fields allows partial responses to be retrieved. See
 11591  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11592  // details.
 11593  func (c *ProjectsLocationsPrivateCloudsLoggingServersDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsLoggingServersDeleteCall {
 11594  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11595  	return c
 11596  }
 11597  
 11598  // Context sets the context to be used in this call's Do method.
 11599  func (c *ProjectsLocationsPrivateCloudsLoggingServersDeleteCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsLoggingServersDeleteCall {
 11600  	c.ctx_ = ctx
 11601  	return c
 11602  }
 11603  
 11604  // Header returns a http.Header that can be modified by the caller to add
 11605  // headers to the request.
 11606  func (c *ProjectsLocationsPrivateCloudsLoggingServersDeleteCall) Header() http.Header {
 11607  	if c.header_ == nil {
 11608  		c.header_ = make(http.Header)
 11609  	}
 11610  	return c.header_
 11611  }
 11612  
 11613  func (c *ProjectsLocationsPrivateCloudsLoggingServersDeleteCall) doRequest(alt string) (*http.Response, error) {
 11614  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11615  	var body io.Reader = nil
 11616  	c.urlParams_.Set("alt", alt)
 11617  	c.urlParams_.Set("prettyPrint", "false")
 11618  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 11619  	urls += "?" + c.urlParams_.Encode()
 11620  	req, err := http.NewRequest("DELETE", urls, body)
 11621  	if err != nil {
 11622  		return nil, err
 11623  	}
 11624  	req.Header = reqHeaders
 11625  	googleapi.Expand(req.URL, map[string]string{
 11626  		"name": c.name,
 11627  	})
 11628  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11629  }
 11630  
 11631  // Do executes the "vmwareengine.projects.locations.privateClouds.loggingServers.delete" call.
 11632  // Any non-2xx status code is an error. Response headers are in either
 11633  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 11634  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11635  // whether the returned error was because http.StatusNotModified was returned.
 11636  func (c *ProjectsLocationsPrivateCloudsLoggingServersDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 11637  	gensupport.SetOptions(c.urlParams_, opts...)
 11638  	res, err := c.doRequest("json")
 11639  	if res != nil && res.StatusCode == http.StatusNotModified {
 11640  		if res.Body != nil {
 11641  			res.Body.Close()
 11642  		}
 11643  		return nil, gensupport.WrapError(&googleapi.Error{
 11644  			Code:   res.StatusCode,
 11645  			Header: res.Header,
 11646  		})
 11647  	}
 11648  	if err != nil {
 11649  		return nil, err
 11650  	}
 11651  	defer googleapi.CloseBody(res)
 11652  	if err := googleapi.CheckResponse(res); err != nil {
 11653  		return nil, gensupport.WrapError(err)
 11654  	}
 11655  	ret := &Operation{
 11656  		ServerResponse: googleapi.ServerResponse{
 11657  			Header:         res.Header,
 11658  			HTTPStatusCode: res.StatusCode,
 11659  		},
 11660  	}
 11661  	target := &ret
 11662  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11663  		return nil, err
 11664  	}
 11665  	return ret, nil
 11666  }
 11667  
 11668  type ProjectsLocationsPrivateCloudsLoggingServersGetCall struct {
 11669  	s            *Service
 11670  	name         string
 11671  	urlParams_   gensupport.URLParams
 11672  	ifNoneMatch_ string
 11673  	ctx_         context.Context
 11674  	header_      http.Header
 11675  }
 11676  
 11677  // Get: Gets details of a logging server.
 11678  //
 11679  //   - name: The resource name of the Logging Server to retrieve. Resource names
 11680  //     are schemeless URIs that follow the conventions in
 11681  //     https://cloud.google.com/apis/design/resource_names. For example:
 11682  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/logging
 11683  //     Servers/my-logging-server`.
 11684  func (r *ProjectsLocationsPrivateCloudsLoggingServersService) Get(name string) *ProjectsLocationsPrivateCloudsLoggingServersGetCall {
 11685  	c := &ProjectsLocationsPrivateCloudsLoggingServersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11686  	c.name = name
 11687  	return c
 11688  }
 11689  
 11690  // Fields allows partial responses to be retrieved. See
 11691  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11692  // details.
 11693  func (c *ProjectsLocationsPrivateCloudsLoggingServersGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsLoggingServersGetCall {
 11694  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11695  	return c
 11696  }
 11697  
 11698  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 11699  // object's ETag matches the given value. This is useful for getting updates
 11700  // only after the object has changed since the last request.
 11701  func (c *ProjectsLocationsPrivateCloudsLoggingServersGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsLoggingServersGetCall {
 11702  	c.ifNoneMatch_ = entityTag
 11703  	return c
 11704  }
 11705  
 11706  // Context sets the context to be used in this call's Do method.
 11707  func (c *ProjectsLocationsPrivateCloudsLoggingServersGetCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsLoggingServersGetCall {
 11708  	c.ctx_ = ctx
 11709  	return c
 11710  }
 11711  
 11712  // Header returns a http.Header that can be modified by the caller to add
 11713  // headers to the request.
 11714  func (c *ProjectsLocationsPrivateCloudsLoggingServersGetCall) Header() http.Header {
 11715  	if c.header_ == nil {
 11716  		c.header_ = make(http.Header)
 11717  	}
 11718  	return c.header_
 11719  }
 11720  
 11721  func (c *ProjectsLocationsPrivateCloudsLoggingServersGetCall) doRequest(alt string) (*http.Response, error) {
 11722  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11723  	if c.ifNoneMatch_ != "" {
 11724  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 11725  	}
 11726  	var body io.Reader = nil
 11727  	c.urlParams_.Set("alt", alt)
 11728  	c.urlParams_.Set("prettyPrint", "false")
 11729  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 11730  	urls += "?" + c.urlParams_.Encode()
 11731  	req, err := http.NewRequest("GET", urls, body)
 11732  	if err != nil {
 11733  		return nil, err
 11734  	}
 11735  	req.Header = reqHeaders
 11736  	googleapi.Expand(req.URL, map[string]string{
 11737  		"name": c.name,
 11738  	})
 11739  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11740  }
 11741  
 11742  // Do executes the "vmwareengine.projects.locations.privateClouds.loggingServers.get" call.
 11743  // Any non-2xx status code is an error. Response headers are in either
 11744  // *LoggingServer.ServerResponse.Header or (if a response was returned at all)
 11745  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 11746  // whether the returned error was because http.StatusNotModified was returned.
 11747  func (c *ProjectsLocationsPrivateCloudsLoggingServersGetCall) Do(opts ...googleapi.CallOption) (*LoggingServer, error) {
 11748  	gensupport.SetOptions(c.urlParams_, opts...)
 11749  	res, err := c.doRequest("json")
 11750  	if res != nil && res.StatusCode == http.StatusNotModified {
 11751  		if res.Body != nil {
 11752  			res.Body.Close()
 11753  		}
 11754  		return nil, gensupport.WrapError(&googleapi.Error{
 11755  			Code:   res.StatusCode,
 11756  			Header: res.Header,
 11757  		})
 11758  	}
 11759  	if err != nil {
 11760  		return nil, err
 11761  	}
 11762  	defer googleapi.CloseBody(res)
 11763  	if err := googleapi.CheckResponse(res); err != nil {
 11764  		return nil, gensupport.WrapError(err)
 11765  	}
 11766  	ret := &LoggingServer{
 11767  		ServerResponse: googleapi.ServerResponse{
 11768  			Header:         res.Header,
 11769  			HTTPStatusCode: res.StatusCode,
 11770  		},
 11771  	}
 11772  	target := &ret
 11773  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11774  		return nil, err
 11775  	}
 11776  	return ret, nil
 11777  }
 11778  
 11779  type ProjectsLocationsPrivateCloudsLoggingServersListCall struct {
 11780  	s            *Service
 11781  	parent       string
 11782  	urlParams_   gensupport.URLParams
 11783  	ifNoneMatch_ string
 11784  	ctx_         context.Context
 11785  	header_      http.Header
 11786  }
 11787  
 11788  // List: Lists logging servers configured for a given private cloud.
 11789  //
 11790  //   - parent: The resource name of the private cloud to be queried for logging
 11791  //     servers. Resource names are schemeless URIs that follow the conventions in
 11792  //     https://cloud.google.com/apis/design/resource_names. For example:
 11793  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud`.
 11794  func (r *ProjectsLocationsPrivateCloudsLoggingServersService) List(parent string) *ProjectsLocationsPrivateCloudsLoggingServersListCall {
 11795  	c := &ProjectsLocationsPrivateCloudsLoggingServersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11796  	c.parent = parent
 11797  	return c
 11798  }
 11799  
 11800  // Filter sets the optional parameter "filter": A filter expression that
 11801  // matches resources returned in the response. The expression must specify the
 11802  // field name, a comparison operator, and the value that you want to use for
 11803  // filtering. The value must be a string, a number, or a boolean. The
 11804  // comparison operator must be `=`, `!=`, `>`, or `<`. For example, if you are
 11805  // filtering a list of logging servers, you can exclude the ones named
 11806  // `example-server` by specifying `name != "example-server". To filter on
 11807  // multiple expressions, provide each separate expression within parentheses.
 11808  // For example: ``` (name = "example-server") (createTime >
 11809  // "2021-04-12T08:15:10.40Z") ``` By default, each expression is an `AND`
 11810  // expression. However, you can include `AND` and `OR` expressions explicitly.
 11811  // For example: ``` (name = "example-server-1") AND (createTime >
 11812  // "2021-04-12T08:15:10.40Z") OR (name = "example-server-2") ```
 11813  func (c *ProjectsLocationsPrivateCloudsLoggingServersListCall) Filter(filter string) *ProjectsLocationsPrivateCloudsLoggingServersListCall {
 11814  	c.urlParams_.Set("filter", filter)
 11815  	return c
 11816  }
 11817  
 11818  // OrderBy sets the optional parameter "orderBy": Sorts list results by a
 11819  // certain order. By default, returned results are ordered by `name` in
 11820  // ascending order. You can also sort results in descending order based on the
 11821  // `name` value using `orderBy="name desc". Currently, only ordering by `name`
 11822  // is supported.
 11823  func (c *ProjectsLocationsPrivateCloudsLoggingServersListCall) OrderBy(orderBy string) *ProjectsLocationsPrivateCloudsLoggingServersListCall {
 11824  	c.urlParams_.Set("orderBy", orderBy)
 11825  	return c
 11826  }
 11827  
 11828  // PageSize sets the optional parameter "pageSize": The maximum number of
 11829  // logging servers to return in one page. The service may return fewer than
 11830  // this value. The maximum value is coerced to 1000. The default value of this
 11831  // field is 500.
 11832  func (c *ProjectsLocationsPrivateCloudsLoggingServersListCall) PageSize(pageSize int64) *ProjectsLocationsPrivateCloudsLoggingServersListCall {
 11833  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 11834  	return c
 11835  }
 11836  
 11837  // PageToken sets the optional parameter "pageToken": A page token, received
 11838  // from a previous `ListLoggingServersRequest` call. Provide this to retrieve
 11839  // the subsequent page. When paginating, all other parameters provided to
 11840  // `ListLoggingServersRequest` must match the call that provided the page
 11841  // token.
 11842  func (c *ProjectsLocationsPrivateCloudsLoggingServersListCall) PageToken(pageToken string) *ProjectsLocationsPrivateCloudsLoggingServersListCall {
 11843  	c.urlParams_.Set("pageToken", pageToken)
 11844  	return c
 11845  }
 11846  
 11847  // Fields allows partial responses to be retrieved. See
 11848  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 11849  // details.
 11850  func (c *ProjectsLocationsPrivateCloudsLoggingServersListCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsLoggingServersListCall {
 11851  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 11852  	return c
 11853  }
 11854  
 11855  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 11856  // object's ETag matches the given value. This is useful for getting updates
 11857  // only after the object has changed since the last request.
 11858  func (c *ProjectsLocationsPrivateCloudsLoggingServersListCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsLoggingServersListCall {
 11859  	c.ifNoneMatch_ = entityTag
 11860  	return c
 11861  }
 11862  
 11863  // Context sets the context to be used in this call's Do method.
 11864  func (c *ProjectsLocationsPrivateCloudsLoggingServersListCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsLoggingServersListCall {
 11865  	c.ctx_ = ctx
 11866  	return c
 11867  }
 11868  
 11869  // Header returns a http.Header that can be modified by the caller to add
 11870  // headers to the request.
 11871  func (c *ProjectsLocationsPrivateCloudsLoggingServersListCall) Header() http.Header {
 11872  	if c.header_ == nil {
 11873  		c.header_ = make(http.Header)
 11874  	}
 11875  	return c.header_
 11876  }
 11877  
 11878  func (c *ProjectsLocationsPrivateCloudsLoggingServersListCall) doRequest(alt string) (*http.Response, error) {
 11879  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 11880  	if c.ifNoneMatch_ != "" {
 11881  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 11882  	}
 11883  	var body io.Reader = nil
 11884  	c.urlParams_.Set("alt", alt)
 11885  	c.urlParams_.Set("prettyPrint", "false")
 11886  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/loggingServers")
 11887  	urls += "?" + c.urlParams_.Encode()
 11888  	req, err := http.NewRequest("GET", urls, body)
 11889  	if err != nil {
 11890  		return nil, err
 11891  	}
 11892  	req.Header = reqHeaders
 11893  	googleapi.Expand(req.URL, map[string]string{
 11894  		"parent": c.parent,
 11895  	})
 11896  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 11897  }
 11898  
 11899  // Do executes the "vmwareengine.projects.locations.privateClouds.loggingServers.list" call.
 11900  // Any non-2xx status code is an error. Response headers are in either
 11901  // *ListLoggingServersResponse.ServerResponse.Header or (if a response was
 11902  // returned at all) in error.(*googleapi.Error).Header. Use
 11903  // googleapi.IsNotModified to check whether the returned error was because
 11904  // http.StatusNotModified was returned.
 11905  func (c *ProjectsLocationsPrivateCloudsLoggingServersListCall) Do(opts ...googleapi.CallOption) (*ListLoggingServersResponse, error) {
 11906  	gensupport.SetOptions(c.urlParams_, opts...)
 11907  	res, err := c.doRequest("json")
 11908  	if res != nil && res.StatusCode == http.StatusNotModified {
 11909  		if res.Body != nil {
 11910  			res.Body.Close()
 11911  		}
 11912  		return nil, gensupport.WrapError(&googleapi.Error{
 11913  			Code:   res.StatusCode,
 11914  			Header: res.Header,
 11915  		})
 11916  	}
 11917  	if err != nil {
 11918  		return nil, err
 11919  	}
 11920  	defer googleapi.CloseBody(res)
 11921  	if err := googleapi.CheckResponse(res); err != nil {
 11922  		return nil, gensupport.WrapError(err)
 11923  	}
 11924  	ret := &ListLoggingServersResponse{
 11925  		ServerResponse: googleapi.ServerResponse{
 11926  			Header:         res.Header,
 11927  			HTTPStatusCode: res.StatusCode,
 11928  		},
 11929  	}
 11930  	target := &ret
 11931  	if err := gensupport.DecodeResponse(target, res); err != nil {
 11932  		return nil, err
 11933  	}
 11934  	return ret, nil
 11935  }
 11936  
 11937  // Pages invokes f for each page of results.
 11938  // A non-nil error returned from f will halt the iteration.
 11939  // The provided context supersedes any context provided to the Context method.
 11940  func (c *ProjectsLocationsPrivateCloudsLoggingServersListCall) Pages(ctx context.Context, f func(*ListLoggingServersResponse) error) error {
 11941  	c.ctx_ = ctx
 11942  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 11943  	for {
 11944  		x, err := c.Do()
 11945  		if err != nil {
 11946  			return err
 11947  		}
 11948  		if err := f(x); err != nil {
 11949  			return err
 11950  		}
 11951  		if x.NextPageToken == "" {
 11952  			return nil
 11953  		}
 11954  		c.PageToken(x.NextPageToken)
 11955  	}
 11956  }
 11957  
 11958  type ProjectsLocationsPrivateCloudsLoggingServersPatchCall struct {
 11959  	s             *Service
 11960  	name          string
 11961  	loggingserver *LoggingServer
 11962  	urlParams_    gensupport.URLParams
 11963  	ctx_          context.Context
 11964  	header_       http.Header
 11965  }
 11966  
 11967  // Patch: Updates the parameters of a single logging server. Only fields
 11968  // specified in `update_mask` are applied.
 11969  //
 11970  //   - name: Output only. The resource name of this logging server. Resource
 11971  //     names are schemeless URIs that follow the conventions in
 11972  //     https://cloud.google.com/apis/design/resource_names. For example:
 11973  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/logging
 11974  //     Servers/my-logging-server`.
 11975  func (r *ProjectsLocationsPrivateCloudsLoggingServersService) Patch(name string, loggingserver *LoggingServer) *ProjectsLocationsPrivateCloudsLoggingServersPatchCall {
 11976  	c := &ProjectsLocationsPrivateCloudsLoggingServersPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 11977  	c.name = name
 11978  	c.loggingserver = loggingserver
 11979  	return c
 11980  }
 11981  
 11982  // RequestId sets the optional parameter "requestId": A request ID to identify
 11983  // requests. Specify a unique request ID so that if you must retry your
 11984  // request, the server will know to ignore the request if it has already been
 11985  // completed. The server guarantees that a request doesn't result in creation
 11986  // of duplicate commitments for at least 60 minutes. For example, consider a
 11987  // situation where you make an initial request and the request times out. If
 11988  // you make the request again with the same request ID, the server can check if
 11989  // original operation with the same request ID was received, and if so, will
 11990  // ignore the second request. This prevents clients from accidentally creating
 11991  // duplicate commitments. The request ID must be a valid UUID with the
 11992  // exception that zero UUID is not supported
 11993  // (00000000-0000-0000-0000-000000000000).
 11994  func (c *ProjectsLocationsPrivateCloudsLoggingServersPatchCall) RequestId(requestId string) *ProjectsLocationsPrivateCloudsLoggingServersPatchCall {
 11995  	c.urlParams_.Set("requestId", requestId)
 11996  	return c
 11997  }
 11998  
 11999  // UpdateMask sets the optional parameter "updateMask": Required. Field mask is
 12000  // used to specify the fields to be overwritten in the `LoggingServer` resource
 12001  // by the update. The fields specified in the `update_mask` are relative to the
 12002  // resource, not the full request. A field will be overwritten if it is in the
 12003  // mask. If the user does not provide a mask then all fields will be
 12004  // overwritten.
 12005  func (c *ProjectsLocationsPrivateCloudsLoggingServersPatchCall) UpdateMask(updateMask string) *ProjectsLocationsPrivateCloudsLoggingServersPatchCall {
 12006  	c.urlParams_.Set("updateMask", updateMask)
 12007  	return c
 12008  }
 12009  
 12010  // Fields allows partial responses to be retrieved. See
 12011  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12012  // details.
 12013  func (c *ProjectsLocationsPrivateCloudsLoggingServersPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsLoggingServersPatchCall {
 12014  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12015  	return c
 12016  }
 12017  
 12018  // Context sets the context to be used in this call's Do method.
 12019  func (c *ProjectsLocationsPrivateCloudsLoggingServersPatchCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsLoggingServersPatchCall {
 12020  	c.ctx_ = ctx
 12021  	return c
 12022  }
 12023  
 12024  // Header returns a http.Header that can be modified by the caller to add
 12025  // headers to the request.
 12026  func (c *ProjectsLocationsPrivateCloudsLoggingServersPatchCall) Header() http.Header {
 12027  	if c.header_ == nil {
 12028  		c.header_ = make(http.Header)
 12029  	}
 12030  	return c.header_
 12031  }
 12032  
 12033  func (c *ProjectsLocationsPrivateCloudsLoggingServersPatchCall) doRequest(alt string) (*http.Response, error) {
 12034  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 12035  	var body io.Reader = nil
 12036  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.loggingserver)
 12037  	if err != nil {
 12038  		return nil, err
 12039  	}
 12040  	c.urlParams_.Set("alt", alt)
 12041  	c.urlParams_.Set("prettyPrint", "false")
 12042  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 12043  	urls += "?" + c.urlParams_.Encode()
 12044  	req, err := http.NewRequest("PATCH", urls, body)
 12045  	if err != nil {
 12046  		return nil, err
 12047  	}
 12048  	req.Header = reqHeaders
 12049  	googleapi.Expand(req.URL, map[string]string{
 12050  		"name": c.name,
 12051  	})
 12052  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12053  }
 12054  
 12055  // Do executes the "vmwareengine.projects.locations.privateClouds.loggingServers.patch" call.
 12056  // Any non-2xx status code is an error. Response headers are in either
 12057  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 12058  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 12059  // whether the returned error was because http.StatusNotModified was returned.
 12060  func (c *ProjectsLocationsPrivateCloudsLoggingServersPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 12061  	gensupport.SetOptions(c.urlParams_, opts...)
 12062  	res, err := c.doRequest("json")
 12063  	if res != nil && res.StatusCode == http.StatusNotModified {
 12064  		if res.Body != nil {
 12065  			res.Body.Close()
 12066  		}
 12067  		return nil, gensupport.WrapError(&googleapi.Error{
 12068  			Code:   res.StatusCode,
 12069  			Header: res.Header,
 12070  		})
 12071  	}
 12072  	if err != nil {
 12073  		return nil, err
 12074  	}
 12075  	defer googleapi.CloseBody(res)
 12076  	if err := googleapi.CheckResponse(res); err != nil {
 12077  		return nil, gensupport.WrapError(err)
 12078  	}
 12079  	ret := &Operation{
 12080  		ServerResponse: googleapi.ServerResponse{
 12081  			Header:         res.Header,
 12082  			HTTPStatusCode: res.StatusCode,
 12083  		},
 12084  	}
 12085  	target := &ret
 12086  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12087  		return nil, err
 12088  	}
 12089  	return ret, nil
 12090  }
 12091  
 12092  type ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsCreateCall struct {
 12093  	s                        *Service
 12094  	parent                   string
 12095  	managementdnszonebinding *ManagementDnsZoneBinding
 12096  	urlParams_               gensupport.URLParams
 12097  	ctx_                     context.Context
 12098  	header_                  http.Header
 12099  }
 12100  
 12101  // Create: Creates a new `ManagementDnsZoneBinding` resource in a private
 12102  // cloud. This RPC creates the DNS binding and the resource that represents the
 12103  // DNS binding of the consumer VPC network to the management DNS zone. A
 12104  // management DNS zone is the Cloud DNS cross-project binding zone that VMware
 12105  // Engine creates for each private cloud. It contains FQDNs and corresponding
 12106  // IP addresses for the private cloud's ESXi hosts and management VM appliances
 12107  // like vCenter and NSX Manager.
 12108  //
 12109  //   - parent: The resource name of the private cloud to create a new management
 12110  //     DNS zone binding for. Resource names are schemeless URIs that follow the
 12111  //     conventions in https://cloud.google.com/apis/design/resource_names. For
 12112  //     example:
 12113  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud`.
 12114  func (r *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsService) Create(parent string, managementdnszonebinding *ManagementDnsZoneBinding) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsCreateCall {
 12115  	c := &ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12116  	c.parent = parent
 12117  	c.managementdnszonebinding = managementdnszonebinding
 12118  	return c
 12119  }
 12120  
 12121  // ManagementDnsZoneBindingId sets the optional parameter
 12122  // "managementDnsZoneBindingId": Required. The user-provided identifier of the
 12123  // `ManagementDnsZoneBinding` resource to be created. This identifier must be
 12124  // unique among `ManagementDnsZoneBinding` resources within the parent and
 12125  // becomes the final token in the name URI. The identifier must meet the
 12126  // following requirements: * Only contains 1-63 alphanumeric characters and
 12127  // hyphens * Begins with an alphabetical character * Ends with a non-hyphen
 12128  // character * Not formatted as a UUID * Complies with RFC 1034
 12129  // (https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
 12130  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsCreateCall) ManagementDnsZoneBindingId(managementDnsZoneBindingId string) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsCreateCall {
 12131  	c.urlParams_.Set("managementDnsZoneBindingId", managementDnsZoneBindingId)
 12132  	return c
 12133  }
 12134  
 12135  // RequestId sets the optional parameter "requestId": A request ID to identify
 12136  // requests. Specify a unique request ID so that if you must retry your
 12137  // request, the server will know to ignore the request if it has already been
 12138  // completed. The server guarantees that a request doesn't result in creation
 12139  // of duplicate commitments for at least 60 minutes. For example, consider a
 12140  // situation where you make an initial request and the request times out. If
 12141  // you make the request again with the same request ID, the server can check if
 12142  // the original operation with the same request ID was received, and if so,
 12143  // will ignore the second request. This prevents clients from accidentally
 12144  // creating duplicate commitments. The request ID must be a valid UUID with the
 12145  // exception that zero UUID is not supported
 12146  // (00000000-0000-0000-0000-000000000000).
 12147  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsCreateCall) RequestId(requestId string) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsCreateCall {
 12148  	c.urlParams_.Set("requestId", requestId)
 12149  	return c
 12150  }
 12151  
 12152  // Fields allows partial responses to be retrieved. See
 12153  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12154  // details.
 12155  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsCreateCall {
 12156  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12157  	return c
 12158  }
 12159  
 12160  // Context sets the context to be used in this call's Do method.
 12161  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsCreateCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsCreateCall {
 12162  	c.ctx_ = ctx
 12163  	return c
 12164  }
 12165  
 12166  // Header returns a http.Header that can be modified by the caller to add
 12167  // headers to the request.
 12168  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsCreateCall) Header() http.Header {
 12169  	if c.header_ == nil {
 12170  		c.header_ = make(http.Header)
 12171  	}
 12172  	return c.header_
 12173  }
 12174  
 12175  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsCreateCall) doRequest(alt string) (*http.Response, error) {
 12176  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 12177  	var body io.Reader = nil
 12178  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.managementdnszonebinding)
 12179  	if err != nil {
 12180  		return nil, err
 12181  	}
 12182  	c.urlParams_.Set("alt", alt)
 12183  	c.urlParams_.Set("prettyPrint", "false")
 12184  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/managementDnsZoneBindings")
 12185  	urls += "?" + c.urlParams_.Encode()
 12186  	req, err := http.NewRequest("POST", urls, body)
 12187  	if err != nil {
 12188  		return nil, err
 12189  	}
 12190  	req.Header = reqHeaders
 12191  	googleapi.Expand(req.URL, map[string]string{
 12192  		"parent": c.parent,
 12193  	})
 12194  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12195  }
 12196  
 12197  // Do executes the "vmwareengine.projects.locations.privateClouds.managementDnsZoneBindings.create" call.
 12198  // Any non-2xx status code is an error. Response headers are in either
 12199  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 12200  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 12201  // whether the returned error was because http.StatusNotModified was returned.
 12202  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 12203  	gensupport.SetOptions(c.urlParams_, opts...)
 12204  	res, err := c.doRequest("json")
 12205  	if res != nil && res.StatusCode == http.StatusNotModified {
 12206  		if res.Body != nil {
 12207  			res.Body.Close()
 12208  		}
 12209  		return nil, gensupport.WrapError(&googleapi.Error{
 12210  			Code:   res.StatusCode,
 12211  			Header: res.Header,
 12212  		})
 12213  	}
 12214  	if err != nil {
 12215  		return nil, err
 12216  	}
 12217  	defer googleapi.CloseBody(res)
 12218  	if err := googleapi.CheckResponse(res); err != nil {
 12219  		return nil, gensupport.WrapError(err)
 12220  	}
 12221  	ret := &Operation{
 12222  		ServerResponse: googleapi.ServerResponse{
 12223  			Header:         res.Header,
 12224  			HTTPStatusCode: res.StatusCode,
 12225  		},
 12226  	}
 12227  	target := &ret
 12228  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12229  		return nil, err
 12230  	}
 12231  	return ret, nil
 12232  }
 12233  
 12234  type ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsDeleteCall struct {
 12235  	s          *Service
 12236  	name       string
 12237  	urlParams_ gensupport.URLParams
 12238  	ctx_       context.Context
 12239  	header_    http.Header
 12240  }
 12241  
 12242  // Delete: Deletes a `ManagementDnsZoneBinding` resource. When a management DNS
 12243  // zone binding is deleted, the corresponding consumer VPC network is no longer
 12244  // bound to the management DNS zone.
 12245  //
 12246  //   - name: The resource name of the management DNS zone binding to delete.
 12247  //     Resource names are schemeless URIs that follow the conventions in
 12248  //     https://cloud.google.com/apis/design/resource_names. For example:
 12249  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/managem
 12250  //     entDnsZoneBindings/my-management-dns-zone-binding`.
 12251  func (r *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsService) Delete(name string) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsDeleteCall {
 12252  	c := &ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12253  	c.name = name
 12254  	return c
 12255  }
 12256  
 12257  // RequestId sets the optional parameter "requestId": A request ID to identify
 12258  // requests. Specify a unique request ID so that if you must retry your
 12259  // request, the server will know to ignore the request if it has already been
 12260  // completed. The server guarantees that a request doesn't result in creation
 12261  // of duplicate commitments for at least 60 minutes. For example, consider a
 12262  // situation where you make an initial request and the request times out. If
 12263  // you make the request again with the same request ID, the server can check if
 12264  // the original operation with the same request ID was received, and if so,
 12265  // will ignore the second request. This prevents clients from accidentally
 12266  // creating duplicate commitments. The request ID must be a valid UUID with the
 12267  // exception that zero UUID is not supported
 12268  // (00000000-0000-0000-0000-000000000000).
 12269  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsDeleteCall) RequestId(requestId string) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsDeleteCall {
 12270  	c.urlParams_.Set("requestId", requestId)
 12271  	return c
 12272  }
 12273  
 12274  // Fields allows partial responses to be retrieved. See
 12275  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12276  // details.
 12277  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsDeleteCall {
 12278  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12279  	return c
 12280  }
 12281  
 12282  // Context sets the context to be used in this call's Do method.
 12283  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsDeleteCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsDeleteCall {
 12284  	c.ctx_ = ctx
 12285  	return c
 12286  }
 12287  
 12288  // Header returns a http.Header that can be modified by the caller to add
 12289  // headers to the request.
 12290  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsDeleteCall) Header() http.Header {
 12291  	if c.header_ == nil {
 12292  		c.header_ = make(http.Header)
 12293  	}
 12294  	return c.header_
 12295  }
 12296  
 12297  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsDeleteCall) doRequest(alt string) (*http.Response, error) {
 12298  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12299  	var body io.Reader = nil
 12300  	c.urlParams_.Set("alt", alt)
 12301  	c.urlParams_.Set("prettyPrint", "false")
 12302  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 12303  	urls += "?" + c.urlParams_.Encode()
 12304  	req, err := http.NewRequest("DELETE", urls, body)
 12305  	if err != nil {
 12306  		return nil, err
 12307  	}
 12308  	req.Header = reqHeaders
 12309  	googleapi.Expand(req.URL, map[string]string{
 12310  		"name": c.name,
 12311  	})
 12312  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12313  }
 12314  
 12315  // Do executes the "vmwareengine.projects.locations.privateClouds.managementDnsZoneBindings.delete" call.
 12316  // Any non-2xx status code is an error. Response headers are in either
 12317  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 12318  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 12319  // whether the returned error was because http.StatusNotModified was returned.
 12320  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 12321  	gensupport.SetOptions(c.urlParams_, opts...)
 12322  	res, err := c.doRequest("json")
 12323  	if res != nil && res.StatusCode == http.StatusNotModified {
 12324  		if res.Body != nil {
 12325  			res.Body.Close()
 12326  		}
 12327  		return nil, gensupport.WrapError(&googleapi.Error{
 12328  			Code:   res.StatusCode,
 12329  			Header: res.Header,
 12330  		})
 12331  	}
 12332  	if err != nil {
 12333  		return nil, err
 12334  	}
 12335  	defer googleapi.CloseBody(res)
 12336  	if err := googleapi.CheckResponse(res); err != nil {
 12337  		return nil, gensupport.WrapError(err)
 12338  	}
 12339  	ret := &Operation{
 12340  		ServerResponse: googleapi.ServerResponse{
 12341  			Header:         res.Header,
 12342  			HTTPStatusCode: res.StatusCode,
 12343  		},
 12344  	}
 12345  	target := &ret
 12346  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12347  		return nil, err
 12348  	}
 12349  	return ret, nil
 12350  }
 12351  
 12352  type ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsGetCall struct {
 12353  	s            *Service
 12354  	name         string
 12355  	urlParams_   gensupport.URLParams
 12356  	ifNoneMatch_ string
 12357  	ctx_         context.Context
 12358  	header_      http.Header
 12359  }
 12360  
 12361  // Get: Retrieves a 'ManagementDnsZoneBinding' resource by its resource name.
 12362  //
 12363  //   - name: The resource name of the management DNS zone binding to retrieve.
 12364  //     Resource names are schemeless URIs that follow the conventions in
 12365  //     https://cloud.google.com/apis/design/resource_names. For example:
 12366  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/managem
 12367  //     entDnsZoneBindings/my-management-dns-zone-binding`.
 12368  func (r *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsService) Get(name string) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsGetCall {
 12369  	c := &ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12370  	c.name = name
 12371  	return c
 12372  }
 12373  
 12374  // Fields allows partial responses to be retrieved. See
 12375  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12376  // details.
 12377  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsGetCall {
 12378  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12379  	return c
 12380  }
 12381  
 12382  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12383  // object's ETag matches the given value. This is useful for getting updates
 12384  // only after the object has changed since the last request.
 12385  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsGetCall {
 12386  	c.ifNoneMatch_ = entityTag
 12387  	return c
 12388  }
 12389  
 12390  // Context sets the context to be used in this call's Do method.
 12391  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsGetCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsGetCall {
 12392  	c.ctx_ = ctx
 12393  	return c
 12394  }
 12395  
 12396  // Header returns a http.Header that can be modified by the caller to add
 12397  // headers to the request.
 12398  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsGetCall) Header() http.Header {
 12399  	if c.header_ == nil {
 12400  		c.header_ = make(http.Header)
 12401  	}
 12402  	return c.header_
 12403  }
 12404  
 12405  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsGetCall) doRequest(alt string) (*http.Response, error) {
 12406  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12407  	if c.ifNoneMatch_ != "" {
 12408  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12409  	}
 12410  	var body io.Reader = nil
 12411  	c.urlParams_.Set("alt", alt)
 12412  	c.urlParams_.Set("prettyPrint", "false")
 12413  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 12414  	urls += "?" + c.urlParams_.Encode()
 12415  	req, err := http.NewRequest("GET", urls, body)
 12416  	if err != nil {
 12417  		return nil, err
 12418  	}
 12419  	req.Header = reqHeaders
 12420  	googleapi.Expand(req.URL, map[string]string{
 12421  		"name": c.name,
 12422  	})
 12423  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12424  }
 12425  
 12426  // Do executes the "vmwareengine.projects.locations.privateClouds.managementDnsZoneBindings.get" call.
 12427  // Any non-2xx status code is an error. Response headers are in either
 12428  // *ManagementDnsZoneBinding.ServerResponse.Header or (if a response was
 12429  // returned at all) in error.(*googleapi.Error).Header. Use
 12430  // googleapi.IsNotModified to check whether the returned error was because
 12431  // http.StatusNotModified was returned.
 12432  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsGetCall) Do(opts ...googleapi.CallOption) (*ManagementDnsZoneBinding, error) {
 12433  	gensupport.SetOptions(c.urlParams_, opts...)
 12434  	res, err := c.doRequest("json")
 12435  	if res != nil && res.StatusCode == http.StatusNotModified {
 12436  		if res.Body != nil {
 12437  			res.Body.Close()
 12438  		}
 12439  		return nil, gensupport.WrapError(&googleapi.Error{
 12440  			Code:   res.StatusCode,
 12441  			Header: res.Header,
 12442  		})
 12443  	}
 12444  	if err != nil {
 12445  		return nil, err
 12446  	}
 12447  	defer googleapi.CloseBody(res)
 12448  	if err := googleapi.CheckResponse(res); err != nil {
 12449  		return nil, gensupport.WrapError(err)
 12450  	}
 12451  	ret := &ManagementDnsZoneBinding{
 12452  		ServerResponse: googleapi.ServerResponse{
 12453  			Header:         res.Header,
 12454  			HTTPStatusCode: res.StatusCode,
 12455  		},
 12456  	}
 12457  	target := &ret
 12458  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12459  		return nil, err
 12460  	}
 12461  	return ret, nil
 12462  }
 12463  
 12464  type ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall struct {
 12465  	s            *Service
 12466  	parent       string
 12467  	urlParams_   gensupport.URLParams
 12468  	ifNoneMatch_ string
 12469  	ctx_         context.Context
 12470  	header_      http.Header
 12471  }
 12472  
 12473  // List: Lists Consumer VPCs bound to Management DNS Zone of a given private
 12474  // cloud.
 12475  //
 12476  //   - parent: The resource name of the private cloud to be queried for
 12477  //     management DNS zone bindings. Resource names are schemeless URIs that
 12478  //     follow the conventions in
 12479  //     https://cloud.google.com/apis/design/resource_names. For example:
 12480  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud`.
 12481  func (r *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsService) List(parent string) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall {
 12482  	c := &ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12483  	c.parent = parent
 12484  	return c
 12485  }
 12486  
 12487  // Filter sets the optional parameter "filter": A filter expression that
 12488  // matches resources returned in the response. The expression must specify the
 12489  // field name, a comparison operator, and the value that you want to use for
 12490  // filtering. The value must be a string, a number, or a boolean. The
 12491  // comparison operator must be `=`, `!=`, `>`, or `<`. For example, if you are
 12492  // filtering a list of Management DNS Zone Bindings, you can exclude the ones
 12493  // named `example-management-dns-zone-binding` by specifying `name !=
 12494  // "example-management-dns-zone-binding". To filter on multiple expressions,
 12495  // provide each separate expression within parentheses. For example: ``` (name
 12496  // = "example-management-dns-zone-binding") (createTime >
 12497  // "2021-04-12T08:15:10.40Z") ``` By default, each expression is an `AND`
 12498  // expression. However, you can include `AND` and `OR` expressions explicitly.
 12499  // For example: ``` (name = "example-management-dns-zone-binding-1") AND
 12500  // (createTime > "2021-04-12T08:15:10.40Z") OR (name =
 12501  // "example-management-dns-zone-binding-2") ```
 12502  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall) Filter(filter string) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall {
 12503  	c.urlParams_.Set("filter", filter)
 12504  	return c
 12505  }
 12506  
 12507  // OrderBy sets the optional parameter "orderBy": Sorts list results by a
 12508  // certain order. By default, returned results are ordered by `name` in
 12509  // ascending order. You can also sort results in descending order based on the
 12510  // `name` value using `orderBy="name desc". Currently, only ordering by `name`
 12511  // is supported.
 12512  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall) OrderBy(orderBy string) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall {
 12513  	c.urlParams_.Set("orderBy", orderBy)
 12514  	return c
 12515  }
 12516  
 12517  // PageSize sets the optional parameter "pageSize": The maximum number of
 12518  // management DNS zone bindings to return in one page. The service may return
 12519  // fewer than this value. The maximum value is coerced to 1000. The default
 12520  // value of this field is 500.
 12521  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall) PageSize(pageSize int64) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall {
 12522  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 12523  	return c
 12524  }
 12525  
 12526  // PageToken sets the optional parameter "pageToken": A page token, received
 12527  // from a previous `ListManagementDnsZoneBindings` call. Provide this to
 12528  // retrieve the subsequent page. When paginating, all other parameters provided
 12529  // to `ListManagementDnsZoneBindings` must match the call that provided the
 12530  // page token.
 12531  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall) PageToken(pageToken string) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall {
 12532  	c.urlParams_.Set("pageToken", pageToken)
 12533  	return c
 12534  }
 12535  
 12536  // Fields allows partial responses to be retrieved. See
 12537  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12538  // details.
 12539  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall {
 12540  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12541  	return c
 12542  }
 12543  
 12544  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12545  // object's ETag matches the given value. This is useful for getting updates
 12546  // only after the object has changed since the last request.
 12547  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall {
 12548  	c.ifNoneMatch_ = entityTag
 12549  	return c
 12550  }
 12551  
 12552  // Context sets the context to be used in this call's Do method.
 12553  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall {
 12554  	c.ctx_ = ctx
 12555  	return c
 12556  }
 12557  
 12558  // Header returns a http.Header that can be modified by the caller to add
 12559  // headers to the request.
 12560  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall) Header() http.Header {
 12561  	if c.header_ == nil {
 12562  		c.header_ = make(http.Header)
 12563  	}
 12564  	return c.header_
 12565  }
 12566  
 12567  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall) doRequest(alt string) (*http.Response, error) {
 12568  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12569  	if c.ifNoneMatch_ != "" {
 12570  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12571  	}
 12572  	var body io.Reader = nil
 12573  	c.urlParams_.Set("alt", alt)
 12574  	c.urlParams_.Set("prettyPrint", "false")
 12575  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/managementDnsZoneBindings")
 12576  	urls += "?" + c.urlParams_.Encode()
 12577  	req, err := http.NewRequest("GET", urls, body)
 12578  	if err != nil {
 12579  		return nil, err
 12580  	}
 12581  	req.Header = reqHeaders
 12582  	googleapi.Expand(req.URL, map[string]string{
 12583  		"parent": c.parent,
 12584  	})
 12585  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12586  }
 12587  
 12588  // Do executes the "vmwareengine.projects.locations.privateClouds.managementDnsZoneBindings.list" call.
 12589  // Any non-2xx status code is an error. Response headers are in either
 12590  // *ListManagementDnsZoneBindingsResponse.ServerResponse.Header or (if a
 12591  // response was returned at all) in error.(*googleapi.Error).Header. Use
 12592  // googleapi.IsNotModified to check whether the returned error was because
 12593  // http.StatusNotModified was returned.
 12594  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall) Do(opts ...googleapi.CallOption) (*ListManagementDnsZoneBindingsResponse, error) {
 12595  	gensupport.SetOptions(c.urlParams_, opts...)
 12596  	res, err := c.doRequest("json")
 12597  	if res != nil && res.StatusCode == http.StatusNotModified {
 12598  		if res.Body != nil {
 12599  			res.Body.Close()
 12600  		}
 12601  		return nil, gensupport.WrapError(&googleapi.Error{
 12602  			Code:   res.StatusCode,
 12603  			Header: res.Header,
 12604  		})
 12605  	}
 12606  	if err != nil {
 12607  		return nil, err
 12608  	}
 12609  	defer googleapi.CloseBody(res)
 12610  	if err := googleapi.CheckResponse(res); err != nil {
 12611  		return nil, gensupport.WrapError(err)
 12612  	}
 12613  	ret := &ListManagementDnsZoneBindingsResponse{
 12614  		ServerResponse: googleapi.ServerResponse{
 12615  			Header:         res.Header,
 12616  			HTTPStatusCode: res.StatusCode,
 12617  		},
 12618  	}
 12619  	target := &ret
 12620  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12621  		return nil, err
 12622  	}
 12623  	return ret, nil
 12624  }
 12625  
 12626  // Pages invokes f for each page of results.
 12627  // A non-nil error returned from f will halt the iteration.
 12628  // The provided context supersedes any context provided to the Context method.
 12629  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsListCall) Pages(ctx context.Context, f func(*ListManagementDnsZoneBindingsResponse) error) error {
 12630  	c.ctx_ = ctx
 12631  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 12632  	for {
 12633  		x, err := c.Do()
 12634  		if err != nil {
 12635  			return err
 12636  		}
 12637  		if err := f(x); err != nil {
 12638  			return err
 12639  		}
 12640  		if x.NextPageToken == "" {
 12641  			return nil
 12642  		}
 12643  		c.PageToken(x.NextPageToken)
 12644  	}
 12645  }
 12646  
 12647  type ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsPatchCall struct {
 12648  	s                        *Service
 12649  	name                     string
 12650  	managementdnszonebinding *ManagementDnsZoneBinding
 12651  	urlParams_               gensupport.URLParams
 12652  	ctx_                     context.Context
 12653  	header_                  http.Header
 12654  }
 12655  
 12656  // Patch: Updates a `ManagementDnsZoneBinding` resource. Only fields specified
 12657  // in `update_mask` are applied.
 12658  //
 12659  //   - name: Output only. The resource name of this binding. Resource names are
 12660  //     schemeless URIs that follow the conventions in
 12661  //     https://cloud.google.com/apis/design/resource_names. For example:
 12662  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/managem
 12663  //     entDnsZoneBindings/my-management-dns-zone-binding`.
 12664  func (r *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsService) Patch(name string, managementdnszonebinding *ManagementDnsZoneBinding) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsPatchCall {
 12665  	c := &ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12666  	c.name = name
 12667  	c.managementdnszonebinding = managementdnszonebinding
 12668  	return c
 12669  }
 12670  
 12671  // RequestId sets the optional parameter "requestId": A request ID to identify
 12672  // requests. Specify a unique request ID so that if you must retry your
 12673  // request, the server will know to ignore the request if it has already been
 12674  // completed. The server guarantees that a request doesn't result in creation
 12675  // of duplicate commitments for at least 60 minutes. For example, consider a
 12676  // situation where you make an initial request and the request times out. If
 12677  // you make the request again with the same request ID, the server can check if
 12678  // the original operation with the same request ID was received, and if so,
 12679  // will ignore the second request. This prevents clients from accidentally
 12680  // creating duplicate commitments. The request ID must be a valid UUID with the
 12681  // exception that zero UUID is not supported
 12682  // (00000000-0000-0000-0000-000000000000).
 12683  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsPatchCall) RequestId(requestId string) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsPatchCall {
 12684  	c.urlParams_.Set("requestId", requestId)
 12685  	return c
 12686  }
 12687  
 12688  // UpdateMask sets the optional parameter "updateMask": Required. Field mask is
 12689  // used to specify the fields to be overwritten in the
 12690  // `ManagementDnsZoneBinding` resource by the update. The fields specified in
 12691  // the `update_mask` are relative to the resource, not the full request. A
 12692  // field will be overwritten if it is in the mask. If the user does not provide
 12693  // a mask then all fields will be overwritten.
 12694  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsPatchCall {
 12695  	c.urlParams_.Set("updateMask", updateMask)
 12696  	return c
 12697  }
 12698  
 12699  // Fields allows partial responses to be retrieved. See
 12700  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12701  // details.
 12702  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsPatchCall {
 12703  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12704  	return c
 12705  }
 12706  
 12707  // Context sets the context to be used in this call's Do method.
 12708  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsPatchCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsPatchCall {
 12709  	c.ctx_ = ctx
 12710  	return c
 12711  }
 12712  
 12713  // Header returns a http.Header that can be modified by the caller to add
 12714  // headers to the request.
 12715  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsPatchCall) Header() http.Header {
 12716  	if c.header_ == nil {
 12717  		c.header_ = make(http.Header)
 12718  	}
 12719  	return c.header_
 12720  }
 12721  
 12722  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsPatchCall) doRequest(alt string) (*http.Response, error) {
 12723  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 12724  	var body io.Reader = nil
 12725  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.managementdnszonebinding)
 12726  	if err != nil {
 12727  		return nil, err
 12728  	}
 12729  	c.urlParams_.Set("alt", alt)
 12730  	c.urlParams_.Set("prettyPrint", "false")
 12731  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 12732  	urls += "?" + c.urlParams_.Encode()
 12733  	req, err := http.NewRequest("PATCH", urls, body)
 12734  	if err != nil {
 12735  		return nil, err
 12736  	}
 12737  	req.Header = reqHeaders
 12738  	googleapi.Expand(req.URL, map[string]string{
 12739  		"name": c.name,
 12740  	})
 12741  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12742  }
 12743  
 12744  // Do executes the "vmwareengine.projects.locations.privateClouds.managementDnsZoneBindings.patch" call.
 12745  // Any non-2xx status code is an error. Response headers are in either
 12746  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 12747  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 12748  // whether the returned error was because http.StatusNotModified was returned.
 12749  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 12750  	gensupport.SetOptions(c.urlParams_, opts...)
 12751  	res, err := c.doRequest("json")
 12752  	if res != nil && res.StatusCode == http.StatusNotModified {
 12753  		if res.Body != nil {
 12754  			res.Body.Close()
 12755  		}
 12756  		return nil, gensupport.WrapError(&googleapi.Error{
 12757  			Code:   res.StatusCode,
 12758  			Header: res.Header,
 12759  		})
 12760  	}
 12761  	if err != nil {
 12762  		return nil, err
 12763  	}
 12764  	defer googleapi.CloseBody(res)
 12765  	if err := googleapi.CheckResponse(res); err != nil {
 12766  		return nil, gensupport.WrapError(err)
 12767  	}
 12768  	ret := &Operation{
 12769  		ServerResponse: googleapi.ServerResponse{
 12770  			Header:         res.Header,
 12771  			HTTPStatusCode: res.StatusCode,
 12772  		},
 12773  	}
 12774  	target := &ret
 12775  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12776  		return nil, err
 12777  	}
 12778  	return ret, nil
 12779  }
 12780  
 12781  type ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsRepairCall struct {
 12782  	s                                     *Service
 12783  	name                                  string
 12784  	repairmanagementdnszonebindingrequest *RepairManagementDnsZoneBindingRequest
 12785  	urlParams_                            gensupport.URLParams
 12786  	ctx_                                  context.Context
 12787  	header_                               http.Header
 12788  }
 12789  
 12790  // Repair: Retries to create a `ManagementDnsZoneBinding` resource that is in
 12791  // failed state.
 12792  //
 12793  //   - name: The resource name of the management DNS zone binding to repair.
 12794  //     Resource names are schemeless URIs that follow the conventions in
 12795  //     https://cloud.google.com/apis/design/resource_names. For example:
 12796  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/managem
 12797  //     entDnsZoneBindings/my-management-dns-zone-binding`.
 12798  func (r *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsService) Repair(name string, repairmanagementdnszonebindingrequest *RepairManagementDnsZoneBindingRequest) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsRepairCall {
 12799  	c := &ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsRepairCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12800  	c.name = name
 12801  	c.repairmanagementdnszonebindingrequest = repairmanagementdnszonebindingrequest
 12802  	return c
 12803  }
 12804  
 12805  // Fields allows partial responses to be retrieved. See
 12806  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12807  // details.
 12808  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsRepairCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsRepairCall {
 12809  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12810  	return c
 12811  }
 12812  
 12813  // Context sets the context to be used in this call's Do method.
 12814  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsRepairCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsRepairCall {
 12815  	c.ctx_ = ctx
 12816  	return c
 12817  }
 12818  
 12819  // Header returns a http.Header that can be modified by the caller to add
 12820  // headers to the request.
 12821  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsRepairCall) Header() http.Header {
 12822  	if c.header_ == nil {
 12823  		c.header_ = make(http.Header)
 12824  	}
 12825  	return c.header_
 12826  }
 12827  
 12828  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsRepairCall) doRequest(alt string) (*http.Response, error) {
 12829  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 12830  	var body io.Reader = nil
 12831  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.repairmanagementdnszonebindingrequest)
 12832  	if err != nil {
 12833  		return nil, err
 12834  	}
 12835  	c.urlParams_.Set("alt", alt)
 12836  	c.urlParams_.Set("prettyPrint", "false")
 12837  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:repair")
 12838  	urls += "?" + c.urlParams_.Encode()
 12839  	req, err := http.NewRequest("POST", urls, body)
 12840  	if err != nil {
 12841  		return nil, err
 12842  	}
 12843  	req.Header = reqHeaders
 12844  	googleapi.Expand(req.URL, map[string]string{
 12845  		"name": c.name,
 12846  	})
 12847  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12848  }
 12849  
 12850  // Do executes the "vmwareengine.projects.locations.privateClouds.managementDnsZoneBindings.repair" call.
 12851  // Any non-2xx status code is an error. Response headers are in either
 12852  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 12853  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 12854  // whether the returned error was because http.StatusNotModified was returned.
 12855  func (c *ProjectsLocationsPrivateCloudsManagementDnsZoneBindingsRepairCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 12856  	gensupport.SetOptions(c.urlParams_, opts...)
 12857  	res, err := c.doRequest("json")
 12858  	if res != nil && res.StatusCode == http.StatusNotModified {
 12859  		if res.Body != nil {
 12860  			res.Body.Close()
 12861  		}
 12862  		return nil, gensupport.WrapError(&googleapi.Error{
 12863  			Code:   res.StatusCode,
 12864  			Header: res.Header,
 12865  		})
 12866  	}
 12867  	if err != nil {
 12868  		return nil, err
 12869  	}
 12870  	defer googleapi.CloseBody(res)
 12871  	if err := googleapi.CheckResponse(res); err != nil {
 12872  		return nil, gensupport.WrapError(err)
 12873  	}
 12874  	ret := &Operation{
 12875  		ServerResponse: googleapi.ServerResponse{
 12876  			Header:         res.Header,
 12877  			HTTPStatusCode: res.StatusCode,
 12878  		},
 12879  	}
 12880  	target := &ret
 12881  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12882  		return nil, err
 12883  	}
 12884  	return ret, nil
 12885  }
 12886  
 12887  type ProjectsLocationsPrivateCloudsSubnetsGetCall struct {
 12888  	s            *Service
 12889  	name         string
 12890  	urlParams_   gensupport.URLParams
 12891  	ifNoneMatch_ string
 12892  	ctx_         context.Context
 12893  	header_      http.Header
 12894  }
 12895  
 12896  // Get: Gets details of a single subnet.
 12897  //
 12898  //   - name: The resource name of the subnet to retrieve. Resource names are
 12899  //     schemeless URIs that follow the conventions in
 12900  //     https://cloud.google.com/apis/design/resource_names. For example:
 12901  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/subnets
 12902  //     /my-subnet`.
 12903  func (r *ProjectsLocationsPrivateCloudsSubnetsService) Get(name string) *ProjectsLocationsPrivateCloudsSubnetsGetCall {
 12904  	c := &ProjectsLocationsPrivateCloudsSubnetsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12905  	c.name = name
 12906  	return c
 12907  }
 12908  
 12909  // Fields allows partial responses to be retrieved. See
 12910  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12911  // details.
 12912  func (c *ProjectsLocationsPrivateCloudsSubnetsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsSubnetsGetCall {
 12913  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12914  	return c
 12915  }
 12916  
 12917  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12918  // object's ETag matches the given value. This is useful for getting updates
 12919  // only after the object has changed since the last request.
 12920  func (c *ProjectsLocationsPrivateCloudsSubnetsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsSubnetsGetCall {
 12921  	c.ifNoneMatch_ = entityTag
 12922  	return c
 12923  }
 12924  
 12925  // Context sets the context to be used in this call's Do method.
 12926  func (c *ProjectsLocationsPrivateCloudsSubnetsGetCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsSubnetsGetCall {
 12927  	c.ctx_ = ctx
 12928  	return c
 12929  }
 12930  
 12931  // Header returns a http.Header that can be modified by the caller to add
 12932  // headers to the request.
 12933  func (c *ProjectsLocationsPrivateCloudsSubnetsGetCall) Header() http.Header {
 12934  	if c.header_ == nil {
 12935  		c.header_ = make(http.Header)
 12936  	}
 12937  	return c.header_
 12938  }
 12939  
 12940  func (c *ProjectsLocationsPrivateCloudsSubnetsGetCall) doRequest(alt string) (*http.Response, error) {
 12941  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12942  	if c.ifNoneMatch_ != "" {
 12943  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12944  	}
 12945  	var body io.Reader = nil
 12946  	c.urlParams_.Set("alt", alt)
 12947  	c.urlParams_.Set("prettyPrint", "false")
 12948  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 12949  	urls += "?" + c.urlParams_.Encode()
 12950  	req, err := http.NewRequest("GET", urls, body)
 12951  	if err != nil {
 12952  		return nil, err
 12953  	}
 12954  	req.Header = reqHeaders
 12955  	googleapi.Expand(req.URL, map[string]string{
 12956  		"name": c.name,
 12957  	})
 12958  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12959  }
 12960  
 12961  // Do executes the "vmwareengine.projects.locations.privateClouds.subnets.get" call.
 12962  // Any non-2xx status code is an error. Response headers are in either
 12963  // *Subnet.ServerResponse.Header or (if a response was returned at all) in
 12964  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 12965  // whether the returned error was because http.StatusNotModified was returned.
 12966  func (c *ProjectsLocationsPrivateCloudsSubnetsGetCall) Do(opts ...googleapi.CallOption) (*Subnet, error) {
 12967  	gensupport.SetOptions(c.urlParams_, opts...)
 12968  	res, err := c.doRequest("json")
 12969  	if res != nil && res.StatusCode == http.StatusNotModified {
 12970  		if res.Body != nil {
 12971  			res.Body.Close()
 12972  		}
 12973  		return nil, gensupport.WrapError(&googleapi.Error{
 12974  			Code:   res.StatusCode,
 12975  			Header: res.Header,
 12976  		})
 12977  	}
 12978  	if err != nil {
 12979  		return nil, err
 12980  	}
 12981  	defer googleapi.CloseBody(res)
 12982  	if err := googleapi.CheckResponse(res); err != nil {
 12983  		return nil, gensupport.WrapError(err)
 12984  	}
 12985  	ret := &Subnet{
 12986  		ServerResponse: googleapi.ServerResponse{
 12987  			Header:         res.Header,
 12988  			HTTPStatusCode: res.StatusCode,
 12989  		},
 12990  	}
 12991  	target := &ret
 12992  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12993  		return nil, err
 12994  	}
 12995  	return ret, nil
 12996  }
 12997  
 12998  type ProjectsLocationsPrivateCloudsSubnetsListCall struct {
 12999  	s            *Service
 13000  	parent       string
 13001  	urlParams_   gensupport.URLParams
 13002  	ifNoneMatch_ string
 13003  	ctx_         context.Context
 13004  	header_      http.Header
 13005  }
 13006  
 13007  // List: Lists subnets in a given private cloud.
 13008  //
 13009  //   - parent: The resource name of the private cloud to be queried for subnets.
 13010  //     Resource names are schemeless URIs that follow the conventions in
 13011  //     https://cloud.google.com/apis/design/resource_names. For example:
 13012  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud`.
 13013  func (r *ProjectsLocationsPrivateCloudsSubnetsService) List(parent string) *ProjectsLocationsPrivateCloudsSubnetsListCall {
 13014  	c := &ProjectsLocationsPrivateCloudsSubnetsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13015  	c.parent = parent
 13016  	return c
 13017  }
 13018  
 13019  // PageSize sets the optional parameter "pageSize": The maximum number of
 13020  // subnets to return in one page. The service may return fewer than this value.
 13021  // The maximum value is coerced to 1000. The default value of this field is
 13022  // 500.
 13023  func (c *ProjectsLocationsPrivateCloudsSubnetsListCall) PageSize(pageSize int64) *ProjectsLocationsPrivateCloudsSubnetsListCall {
 13024  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 13025  	return c
 13026  }
 13027  
 13028  // PageToken sets the optional parameter "pageToken": A page token, received
 13029  // from a previous `ListSubnetsRequest` call. Provide this to retrieve the
 13030  // subsequent page. When paginating, all other parameters provided to
 13031  // `ListSubnetsRequest` must match the call that provided the page token.
 13032  func (c *ProjectsLocationsPrivateCloudsSubnetsListCall) PageToken(pageToken string) *ProjectsLocationsPrivateCloudsSubnetsListCall {
 13033  	c.urlParams_.Set("pageToken", pageToken)
 13034  	return c
 13035  }
 13036  
 13037  // Fields allows partial responses to be retrieved. See
 13038  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13039  // details.
 13040  func (c *ProjectsLocationsPrivateCloudsSubnetsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsSubnetsListCall {
 13041  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13042  	return c
 13043  }
 13044  
 13045  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13046  // object's ETag matches the given value. This is useful for getting updates
 13047  // only after the object has changed since the last request.
 13048  func (c *ProjectsLocationsPrivateCloudsSubnetsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateCloudsSubnetsListCall {
 13049  	c.ifNoneMatch_ = entityTag
 13050  	return c
 13051  }
 13052  
 13053  // Context sets the context to be used in this call's Do method.
 13054  func (c *ProjectsLocationsPrivateCloudsSubnetsListCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsSubnetsListCall {
 13055  	c.ctx_ = ctx
 13056  	return c
 13057  }
 13058  
 13059  // Header returns a http.Header that can be modified by the caller to add
 13060  // headers to the request.
 13061  func (c *ProjectsLocationsPrivateCloudsSubnetsListCall) Header() http.Header {
 13062  	if c.header_ == nil {
 13063  		c.header_ = make(http.Header)
 13064  	}
 13065  	return c.header_
 13066  }
 13067  
 13068  func (c *ProjectsLocationsPrivateCloudsSubnetsListCall) doRequest(alt string) (*http.Response, error) {
 13069  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13070  	if c.ifNoneMatch_ != "" {
 13071  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13072  	}
 13073  	var body io.Reader = nil
 13074  	c.urlParams_.Set("alt", alt)
 13075  	c.urlParams_.Set("prettyPrint", "false")
 13076  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/subnets")
 13077  	urls += "?" + c.urlParams_.Encode()
 13078  	req, err := http.NewRequest("GET", urls, body)
 13079  	if err != nil {
 13080  		return nil, err
 13081  	}
 13082  	req.Header = reqHeaders
 13083  	googleapi.Expand(req.URL, map[string]string{
 13084  		"parent": c.parent,
 13085  	})
 13086  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13087  }
 13088  
 13089  // Do executes the "vmwareengine.projects.locations.privateClouds.subnets.list" call.
 13090  // Any non-2xx status code is an error. Response headers are in either
 13091  // *ListSubnetsResponse.ServerResponse.Header or (if a response was returned at
 13092  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 13093  // check whether the returned error was because http.StatusNotModified was
 13094  // returned.
 13095  func (c *ProjectsLocationsPrivateCloudsSubnetsListCall) Do(opts ...googleapi.CallOption) (*ListSubnetsResponse, error) {
 13096  	gensupport.SetOptions(c.urlParams_, opts...)
 13097  	res, err := c.doRequest("json")
 13098  	if res != nil && res.StatusCode == http.StatusNotModified {
 13099  		if res.Body != nil {
 13100  			res.Body.Close()
 13101  		}
 13102  		return nil, gensupport.WrapError(&googleapi.Error{
 13103  			Code:   res.StatusCode,
 13104  			Header: res.Header,
 13105  		})
 13106  	}
 13107  	if err != nil {
 13108  		return nil, err
 13109  	}
 13110  	defer googleapi.CloseBody(res)
 13111  	if err := googleapi.CheckResponse(res); err != nil {
 13112  		return nil, gensupport.WrapError(err)
 13113  	}
 13114  	ret := &ListSubnetsResponse{
 13115  		ServerResponse: googleapi.ServerResponse{
 13116  			Header:         res.Header,
 13117  			HTTPStatusCode: res.StatusCode,
 13118  		},
 13119  	}
 13120  	target := &ret
 13121  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13122  		return nil, err
 13123  	}
 13124  	return ret, nil
 13125  }
 13126  
 13127  // Pages invokes f for each page of results.
 13128  // A non-nil error returned from f will halt the iteration.
 13129  // The provided context supersedes any context provided to the Context method.
 13130  func (c *ProjectsLocationsPrivateCloudsSubnetsListCall) Pages(ctx context.Context, f func(*ListSubnetsResponse) error) error {
 13131  	c.ctx_ = ctx
 13132  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 13133  	for {
 13134  		x, err := c.Do()
 13135  		if err != nil {
 13136  			return err
 13137  		}
 13138  		if err := f(x); err != nil {
 13139  			return err
 13140  		}
 13141  		if x.NextPageToken == "" {
 13142  			return nil
 13143  		}
 13144  		c.PageToken(x.NextPageToken)
 13145  	}
 13146  }
 13147  
 13148  type ProjectsLocationsPrivateCloudsSubnetsPatchCall struct {
 13149  	s          *Service
 13150  	name       string
 13151  	subnet     *Subnet
 13152  	urlParams_ gensupport.URLParams
 13153  	ctx_       context.Context
 13154  	header_    http.Header
 13155  }
 13156  
 13157  // Patch: Updates the parameters of a single subnet. Only fields specified in
 13158  // `update_mask` are applied. *Note*: This API is synchronous and always
 13159  // returns a successful `google.longrunning.Operation` (LRO). The returned LRO
 13160  // will only have `done` and `response` fields.
 13161  //
 13162  //   - name: Output only. The resource name of this subnet. Resource names are
 13163  //     schemeless URIs that follow the conventions in
 13164  //     https://cloud.google.com/apis/design/resource_names. For example:
 13165  //     `projects/my-project/locations/us-central1-a/privateClouds/my-cloud/subnets
 13166  //     /my-subnet`.
 13167  func (r *ProjectsLocationsPrivateCloudsSubnetsService) Patch(name string, subnet *Subnet) *ProjectsLocationsPrivateCloudsSubnetsPatchCall {
 13168  	c := &ProjectsLocationsPrivateCloudsSubnetsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13169  	c.name = name
 13170  	c.subnet = subnet
 13171  	return c
 13172  }
 13173  
 13174  // UpdateMask sets the optional parameter "updateMask": Required. Field mask is
 13175  // used to specify the fields to be overwritten in the `Subnet` resource by the
 13176  // update. The fields specified in the `update_mask` are relative to the
 13177  // resource, not the full request. A field will be overwritten if it is in the
 13178  // mask. If the user does not provide a mask then all fields will be
 13179  // overwritten.
 13180  func (c *ProjectsLocationsPrivateCloudsSubnetsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsPrivateCloudsSubnetsPatchCall {
 13181  	c.urlParams_.Set("updateMask", updateMask)
 13182  	return c
 13183  }
 13184  
 13185  // Fields allows partial responses to be retrieved. See
 13186  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13187  // details.
 13188  func (c *ProjectsLocationsPrivateCloudsSubnetsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateCloudsSubnetsPatchCall {
 13189  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13190  	return c
 13191  }
 13192  
 13193  // Context sets the context to be used in this call's Do method.
 13194  func (c *ProjectsLocationsPrivateCloudsSubnetsPatchCall) Context(ctx context.Context) *ProjectsLocationsPrivateCloudsSubnetsPatchCall {
 13195  	c.ctx_ = ctx
 13196  	return c
 13197  }
 13198  
 13199  // Header returns a http.Header that can be modified by the caller to add
 13200  // headers to the request.
 13201  func (c *ProjectsLocationsPrivateCloudsSubnetsPatchCall) Header() http.Header {
 13202  	if c.header_ == nil {
 13203  		c.header_ = make(http.Header)
 13204  	}
 13205  	return c.header_
 13206  }
 13207  
 13208  func (c *ProjectsLocationsPrivateCloudsSubnetsPatchCall) doRequest(alt string) (*http.Response, error) {
 13209  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 13210  	var body io.Reader = nil
 13211  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.subnet)
 13212  	if err != nil {
 13213  		return nil, err
 13214  	}
 13215  	c.urlParams_.Set("alt", alt)
 13216  	c.urlParams_.Set("prettyPrint", "false")
 13217  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 13218  	urls += "?" + c.urlParams_.Encode()
 13219  	req, err := http.NewRequest("PATCH", urls, body)
 13220  	if err != nil {
 13221  		return nil, err
 13222  	}
 13223  	req.Header = reqHeaders
 13224  	googleapi.Expand(req.URL, map[string]string{
 13225  		"name": c.name,
 13226  	})
 13227  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13228  }
 13229  
 13230  // Do executes the "vmwareengine.projects.locations.privateClouds.subnets.patch" call.
 13231  // Any non-2xx status code is an error. Response headers are in either
 13232  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 13233  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 13234  // whether the returned error was because http.StatusNotModified was returned.
 13235  func (c *ProjectsLocationsPrivateCloudsSubnetsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 13236  	gensupport.SetOptions(c.urlParams_, opts...)
 13237  	res, err := c.doRequest("json")
 13238  	if res != nil && res.StatusCode == http.StatusNotModified {
 13239  		if res.Body != nil {
 13240  			res.Body.Close()
 13241  		}
 13242  		return nil, gensupport.WrapError(&googleapi.Error{
 13243  			Code:   res.StatusCode,
 13244  			Header: res.Header,
 13245  		})
 13246  	}
 13247  	if err != nil {
 13248  		return nil, err
 13249  	}
 13250  	defer googleapi.CloseBody(res)
 13251  	if err := googleapi.CheckResponse(res); err != nil {
 13252  		return nil, gensupport.WrapError(err)
 13253  	}
 13254  	ret := &Operation{
 13255  		ServerResponse: googleapi.ServerResponse{
 13256  			Header:         res.Header,
 13257  			HTTPStatusCode: res.StatusCode,
 13258  		},
 13259  	}
 13260  	target := &ret
 13261  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13262  		return nil, err
 13263  	}
 13264  	return ret, nil
 13265  }
 13266  
 13267  type ProjectsLocationsPrivateConnectionsCreateCall struct {
 13268  	s                 *Service
 13269  	parent            string
 13270  	privateconnection *PrivateConnection
 13271  	urlParams_        gensupport.URLParams
 13272  	ctx_              context.Context
 13273  	header_           http.Header
 13274  }
 13275  
 13276  // Create: Creates a new private connection that can be used for accessing
 13277  // private Clouds.
 13278  //
 13279  //   - parent: The resource name of the location to create the new private
 13280  //     connection in. Private connection is a regional resource. Resource names
 13281  //     are schemeless URIs that follow the conventions in
 13282  //     https://cloud.google.com/apis/design/resource_names. For example:
 13283  //     `projects/my-project/locations/us-central1`.
 13284  func (r *ProjectsLocationsPrivateConnectionsService) Create(parent string, privateconnection *PrivateConnection) *ProjectsLocationsPrivateConnectionsCreateCall {
 13285  	c := &ProjectsLocationsPrivateConnectionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13286  	c.parent = parent
 13287  	c.privateconnection = privateconnection
 13288  	return c
 13289  }
 13290  
 13291  // PrivateConnectionId sets the optional parameter "privateConnectionId":
 13292  // Required. The user-provided identifier of the new private connection. This
 13293  // identifier must be unique among private connection resources within the
 13294  // parent and becomes the final token in the name URI. The identifier must meet
 13295  // the following requirements: * Only contains 1-63 alphanumeric characters and
 13296  // hyphens * Begins with an alphabetical character * Ends with a non-hyphen
 13297  // character * Not formatted as a UUID * Complies with RFC 1034
 13298  // (https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
 13299  func (c *ProjectsLocationsPrivateConnectionsCreateCall) PrivateConnectionId(privateConnectionId string) *ProjectsLocationsPrivateConnectionsCreateCall {
 13300  	c.urlParams_.Set("privateConnectionId", privateConnectionId)
 13301  	return c
 13302  }
 13303  
 13304  // RequestId sets the optional parameter "requestId": A request ID to identify
 13305  // requests. Specify a unique request ID so that if you must retry your
 13306  // request, the server will know to ignore the request if it has already been
 13307  // completed. The server guarantees that a request doesn't result in creation
 13308  // of duplicate commitments for at least 60 minutes. For example, consider a
 13309  // situation where you make an initial request and the request times out. If
 13310  // you make the request again with the same request ID, the server can check if
 13311  // original operation with the same request ID was received, and if so, will
 13312  // ignore the second request. This prevents clients from accidentally creating
 13313  // duplicate commitments. The request ID must be a valid UUID with the
 13314  // exception that zero UUID is not supported
 13315  // (00000000-0000-0000-0000-000000000000).
 13316  func (c *ProjectsLocationsPrivateConnectionsCreateCall) RequestId(requestId string) *ProjectsLocationsPrivateConnectionsCreateCall {
 13317  	c.urlParams_.Set("requestId", requestId)
 13318  	return c
 13319  }
 13320  
 13321  // Fields allows partial responses to be retrieved. See
 13322  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13323  // details.
 13324  func (c *ProjectsLocationsPrivateConnectionsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateConnectionsCreateCall {
 13325  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13326  	return c
 13327  }
 13328  
 13329  // Context sets the context to be used in this call's Do method.
 13330  func (c *ProjectsLocationsPrivateConnectionsCreateCall) Context(ctx context.Context) *ProjectsLocationsPrivateConnectionsCreateCall {
 13331  	c.ctx_ = ctx
 13332  	return c
 13333  }
 13334  
 13335  // Header returns a http.Header that can be modified by the caller to add
 13336  // headers to the request.
 13337  func (c *ProjectsLocationsPrivateConnectionsCreateCall) Header() http.Header {
 13338  	if c.header_ == nil {
 13339  		c.header_ = make(http.Header)
 13340  	}
 13341  	return c.header_
 13342  }
 13343  
 13344  func (c *ProjectsLocationsPrivateConnectionsCreateCall) doRequest(alt string) (*http.Response, error) {
 13345  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 13346  	var body io.Reader = nil
 13347  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.privateconnection)
 13348  	if err != nil {
 13349  		return nil, err
 13350  	}
 13351  	c.urlParams_.Set("alt", alt)
 13352  	c.urlParams_.Set("prettyPrint", "false")
 13353  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/privateConnections")
 13354  	urls += "?" + c.urlParams_.Encode()
 13355  	req, err := http.NewRequest("POST", urls, body)
 13356  	if err != nil {
 13357  		return nil, err
 13358  	}
 13359  	req.Header = reqHeaders
 13360  	googleapi.Expand(req.URL, map[string]string{
 13361  		"parent": c.parent,
 13362  	})
 13363  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13364  }
 13365  
 13366  // Do executes the "vmwareengine.projects.locations.privateConnections.create" call.
 13367  // Any non-2xx status code is an error. Response headers are in either
 13368  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 13369  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 13370  // whether the returned error was because http.StatusNotModified was returned.
 13371  func (c *ProjectsLocationsPrivateConnectionsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 13372  	gensupport.SetOptions(c.urlParams_, opts...)
 13373  	res, err := c.doRequest("json")
 13374  	if res != nil && res.StatusCode == http.StatusNotModified {
 13375  		if res.Body != nil {
 13376  			res.Body.Close()
 13377  		}
 13378  		return nil, gensupport.WrapError(&googleapi.Error{
 13379  			Code:   res.StatusCode,
 13380  			Header: res.Header,
 13381  		})
 13382  	}
 13383  	if err != nil {
 13384  		return nil, err
 13385  	}
 13386  	defer googleapi.CloseBody(res)
 13387  	if err := googleapi.CheckResponse(res); err != nil {
 13388  		return nil, gensupport.WrapError(err)
 13389  	}
 13390  	ret := &Operation{
 13391  		ServerResponse: googleapi.ServerResponse{
 13392  			Header:         res.Header,
 13393  			HTTPStatusCode: res.StatusCode,
 13394  		},
 13395  	}
 13396  	target := &ret
 13397  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13398  		return nil, err
 13399  	}
 13400  	return ret, nil
 13401  }
 13402  
 13403  type ProjectsLocationsPrivateConnectionsDeleteCall struct {
 13404  	s          *Service
 13405  	name       string
 13406  	urlParams_ gensupport.URLParams
 13407  	ctx_       context.Context
 13408  	header_    http.Header
 13409  }
 13410  
 13411  // Delete: Deletes a `PrivateConnection` resource. When a private connection is
 13412  // deleted for a VMware Engine network, the connected network becomes
 13413  // inaccessible to that VMware Engine network.
 13414  //
 13415  //   - name: The resource name of the private connection to be deleted. Resource
 13416  //     names are schemeless URIs that follow the conventions in
 13417  //     https://cloud.google.com/apis/design/resource_names. For example:
 13418  //     `projects/my-project/locations/us-central1/privateConnections/my-connection
 13419  //     `.
 13420  func (r *ProjectsLocationsPrivateConnectionsService) Delete(name string) *ProjectsLocationsPrivateConnectionsDeleteCall {
 13421  	c := &ProjectsLocationsPrivateConnectionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13422  	c.name = name
 13423  	return c
 13424  }
 13425  
 13426  // RequestId sets the optional parameter "requestId": A request ID to identify
 13427  // requests. Specify a unique request ID so that if you must retry your
 13428  // request, the server will know to ignore the request if it has already been
 13429  // completed. The server guarantees that a request doesn't result in creation
 13430  // of duplicate commitments for at least 60 minutes. For example, consider a
 13431  // situation where you make an initial request and the request times out. If
 13432  // you make the request again with the same request ID, the server can check if
 13433  // original operation with the same request ID was received, and if so, will
 13434  // ignore the second request. This prevents clients from accidentally creating
 13435  // duplicate commitments. The request ID must be a valid UUID with the
 13436  // exception that zero UUID is not supported
 13437  // (00000000-0000-0000-0000-000000000000).
 13438  func (c *ProjectsLocationsPrivateConnectionsDeleteCall) RequestId(requestId string) *ProjectsLocationsPrivateConnectionsDeleteCall {
 13439  	c.urlParams_.Set("requestId", requestId)
 13440  	return c
 13441  }
 13442  
 13443  // Fields allows partial responses to be retrieved. See
 13444  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13445  // details.
 13446  func (c *ProjectsLocationsPrivateConnectionsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateConnectionsDeleteCall {
 13447  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13448  	return c
 13449  }
 13450  
 13451  // Context sets the context to be used in this call's Do method.
 13452  func (c *ProjectsLocationsPrivateConnectionsDeleteCall) Context(ctx context.Context) *ProjectsLocationsPrivateConnectionsDeleteCall {
 13453  	c.ctx_ = ctx
 13454  	return c
 13455  }
 13456  
 13457  // Header returns a http.Header that can be modified by the caller to add
 13458  // headers to the request.
 13459  func (c *ProjectsLocationsPrivateConnectionsDeleteCall) Header() http.Header {
 13460  	if c.header_ == nil {
 13461  		c.header_ = make(http.Header)
 13462  	}
 13463  	return c.header_
 13464  }
 13465  
 13466  func (c *ProjectsLocationsPrivateConnectionsDeleteCall) doRequest(alt string) (*http.Response, error) {
 13467  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13468  	var body io.Reader = nil
 13469  	c.urlParams_.Set("alt", alt)
 13470  	c.urlParams_.Set("prettyPrint", "false")
 13471  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 13472  	urls += "?" + c.urlParams_.Encode()
 13473  	req, err := http.NewRequest("DELETE", urls, body)
 13474  	if err != nil {
 13475  		return nil, err
 13476  	}
 13477  	req.Header = reqHeaders
 13478  	googleapi.Expand(req.URL, map[string]string{
 13479  		"name": c.name,
 13480  	})
 13481  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13482  }
 13483  
 13484  // Do executes the "vmwareengine.projects.locations.privateConnections.delete" call.
 13485  // Any non-2xx status code is an error. Response headers are in either
 13486  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 13487  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 13488  // whether the returned error was because http.StatusNotModified was returned.
 13489  func (c *ProjectsLocationsPrivateConnectionsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 13490  	gensupport.SetOptions(c.urlParams_, opts...)
 13491  	res, err := c.doRequest("json")
 13492  	if res != nil && res.StatusCode == http.StatusNotModified {
 13493  		if res.Body != nil {
 13494  			res.Body.Close()
 13495  		}
 13496  		return nil, gensupport.WrapError(&googleapi.Error{
 13497  			Code:   res.StatusCode,
 13498  			Header: res.Header,
 13499  		})
 13500  	}
 13501  	if err != nil {
 13502  		return nil, err
 13503  	}
 13504  	defer googleapi.CloseBody(res)
 13505  	if err := googleapi.CheckResponse(res); err != nil {
 13506  		return nil, gensupport.WrapError(err)
 13507  	}
 13508  	ret := &Operation{
 13509  		ServerResponse: googleapi.ServerResponse{
 13510  			Header:         res.Header,
 13511  			HTTPStatusCode: res.StatusCode,
 13512  		},
 13513  	}
 13514  	target := &ret
 13515  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13516  		return nil, err
 13517  	}
 13518  	return ret, nil
 13519  }
 13520  
 13521  type ProjectsLocationsPrivateConnectionsGetCall struct {
 13522  	s            *Service
 13523  	name         string
 13524  	urlParams_   gensupport.URLParams
 13525  	ifNoneMatch_ string
 13526  	ctx_         context.Context
 13527  	header_      http.Header
 13528  }
 13529  
 13530  // Get: Retrieves a `PrivateConnection` resource by its resource name. The
 13531  // resource contains details of the private connection, such as connected
 13532  // network, routing mode and state.
 13533  //
 13534  //   - name: The resource name of the private connection to retrieve. Resource
 13535  //     names are schemeless URIs that follow the conventions in
 13536  //     https://cloud.google.com/apis/design/resource_names. For example:
 13537  //     `projects/my-project/locations/us-central1/privateConnections/my-connection
 13538  //     `.
 13539  func (r *ProjectsLocationsPrivateConnectionsService) Get(name string) *ProjectsLocationsPrivateConnectionsGetCall {
 13540  	c := &ProjectsLocationsPrivateConnectionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13541  	c.name = name
 13542  	return c
 13543  }
 13544  
 13545  // Fields allows partial responses to be retrieved. See
 13546  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13547  // details.
 13548  func (c *ProjectsLocationsPrivateConnectionsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateConnectionsGetCall {
 13549  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13550  	return c
 13551  }
 13552  
 13553  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13554  // object's ETag matches the given value. This is useful for getting updates
 13555  // only after the object has changed since the last request.
 13556  func (c *ProjectsLocationsPrivateConnectionsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateConnectionsGetCall {
 13557  	c.ifNoneMatch_ = entityTag
 13558  	return c
 13559  }
 13560  
 13561  // Context sets the context to be used in this call's Do method.
 13562  func (c *ProjectsLocationsPrivateConnectionsGetCall) Context(ctx context.Context) *ProjectsLocationsPrivateConnectionsGetCall {
 13563  	c.ctx_ = ctx
 13564  	return c
 13565  }
 13566  
 13567  // Header returns a http.Header that can be modified by the caller to add
 13568  // headers to the request.
 13569  func (c *ProjectsLocationsPrivateConnectionsGetCall) Header() http.Header {
 13570  	if c.header_ == nil {
 13571  		c.header_ = make(http.Header)
 13572  	}
 13573  	return c.header_
 13574  }
 13575  
 13576  func (c *ProjectsLocationsPrivateConnectionsGetCall) doRequest(alt string) (*http.Response, error) {
 13577  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13578  	if c.ifNoneMatch_ != "" {
 13579  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13580  	}
 13581  	var body io.Reader = nil
 13582  	c.urlParams_.Set("alt", alt)
 13583  	c.urlParams_.Set("prettyPrint", "false")
 13584  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 13585  	urls += "?" + c.urlParams_.Encode()
 13586  	req, err := http.NewRequest("GET", urls, body)
 13587  	if err != nil {
 13588  		return nil, err
 13589  	}
 13590  	req.Header = reqHeaders
 13591  	googleapi.Expand(req.URL, map[string]string{
 13592  		"name": c.name,
 13593  	})
 13594  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13595  }
 13596  
 13597  // Do executes the "vmwareengine.projects.locations.privateConnections.get" call.
 13598  // Any non-2xx status code is an error. Response headers are in either
 13599  // *PrivateConnection.ServerResponse.Header or (if a response was returned at
 13600  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 13601  // check whether the returned error was because http.StatusNotModified was
 13602  // returned.
 13603  func (c *ProjectsLocationsPrivateConnectionsGetCall) Do(opts ...googleapi.CallOption) (*PrivateConnection, error) {
 13604  	gensupport.SetOptions(c.urlParams_, opts...)
 13605  	res, err := c.doRequest("json")
 13606  	if res != nil && res.StatusCode == http.StatusNotModified {
 13607  		if res.Body != nil {
 13608  			res.Body.Close()
 13609  		}
 13610  		return nil, gensupport.WrapError(&googleapi.Error{
 13611  			Code:   res.StatusCode,
 13612  			Header: res.Header,
 13613  		})
 13614  	}
 13615  	if err != nil {
 13616  		return nil, err
 13617  	}
 13618  	defer googleapi.CloseBody(res)
 13619  	if err := googleapi.CheckResponse(res); err != nil {
 13620  		return nil, gensupport.WrapError(err)
 13621  	}
 13622  	ret := &PrivateConnection{
 13623  		ServerResponse: googleapi.ServerResponse{
 13624  			Header:         res.Header,
 13625  			HTTPStatusCode: res.StatusCode,
 13626  		},
 13627  	}
 13628  	target := &ret
 13629  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13630  		return nil, err
 13631  	}
 13632  	return ret, nil
 13633  }
 13634  
 13635  type ProjectsLocationsPrivateConnectionsListCall struct {
 13636  	s            *Service
 13637  	parent       string
 13638  	urlParams_   gensupport.URLParams
 13639  	ifNoneMatch_ string
 13640  	ctx_         context.Context
 13641  	header_      http.Header
 13642  }
 13643  
 13644  // List: Lists `PrivateConnection` resources in a given project and location.
 13645  //
 13646  //   - parent: The resource name of the location to query for private
 13647  //     connections. Resource names are schemeless URIs that follow the
 13648  //     conventions in https://cloud.google.com/apis/design/resource_names. For
 13649  //     example: `projects/my-project/locations/us-central1`.
 13650  func (r *ProjectsLocationsPrivateConnectionsService) List(parent string) *ProjectsLocationsPrivateConnectionsListCall {
 13651  	c := &ProjectsLocationsPrivateConnectionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13652  	c.parent = parent
 13653  	return c
 13654  }
 13655  
 13656  // Filter sets the optional parameter "filter": A filter expression that
 13657  // matches resources returned in the response. The expression must specify the
 13658  // field name, a comparison operator, and the value that you want to use for
 13659  // filtering. The value must be a string, a number, or a boolean. The
 13660  // comparison operator must be `=`, `!=`, `>`, or `<`. For example, if you are
 13661  // filtering a list of private connections, you can exclude the ones named
 13662  // `example-connection` by specifying `name != "example-connection". To filter
 13663  // on multiple expressions, provide each separate expression within
 13664  // parentheses. For example: ``` (name = "example-connection") (createTime >
 13665  // "2022-09-22T08:15:10.40Z") ``` By default, each expression is an `AND`
 13666  // expression. However, you can include `AND` and `OR` expressions explicitly.
 13667  // For example: ``` (name = "example-connection-1") AND (createTime >
 13668  // "2021-04-12T08:15:10.40Z") OR (name = "example-connection-2") ```
 13669  func (c *ProjectsLocationsPrivateConnectionsListCall) Filter(filter string) *ProjectsLocationsPrivateConnectionsListCall {
 13670  	c.urlParams_.Set("filter", filter)
 13671  	return c
 13672  }
 13673  
 13674  // OrderBy sets the optional parameter "orderBy": Sorts list results by a
 13675  // certain order. By default, returned results are ordered by `name` in
 13676  // ascending order. You can also sort results in descending order based on the
 13677  // `name` value using `orderBy="name desc". Currently, only ordering by `name`
 13678  // is supported.
 13679  func (c *ProjectsLocationsPrivateConnectionsListCall) OrderBy(orderBy string) *ProjectsLocationsPrivateConnectionsListCall {
 13680  	c.urlParams_.Set("orderBy", orderBy)
 13681  	return c
 13682  }
 13683  
 13684  // PageSize sets the optional parameter "pageSize": The maximum number of
 13685  // private connections to return in one page. The maximum value is coerced to
 13686  // 1000. The default value of this field is 500.
 13687  func (c *ProjectsLocationsPrivateConnectionsListCall) PageSize(pageSize int64) *ProjectsLocationsPrivateConnectionsListCall {
 13688  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 13689  	return c
 13690  }
 13691  
 13692  // PageToken sets the optional parameter "pageToken": A page token, received
 13693  // from a previous `ListPrivateConnections` call. Provide this to retrieve the
 13694  // subsequent page. When paginating, all other parameters provided to
 13695  // `ListPrivateConnections` must match the call that provided the page token.
 13696  func (c *ProjectsLocationsPrivateConnectionsListCall) PageToken(pageToken string) *ProjectsLocationsPrivateConnectionsListCall {
 13697  	c.urlParams_.Set("pageToken", pageToken)
 13698  	return c
 13699  }
 13700  
 13701  // Fields allows partial responses to be retrieved. See
 13702  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13703  // details.
 13704  func (c *ProjectsLocationsPrivateConnectionsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateConnectionsListCall {
 13705  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13706  	return c
 13707  }
 13708  
 13709  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13710  // object's ETag matches the given value. This is useful for getting updates
 13711  // only after the object has changed since the last request.
 13712  func (c *ProjectsLocationsPrivateConnectionsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateConnectionsListCall {
 13713  	c.ifNoneMatch_ = entityTag
 13714  	return c
 13715  }
 13716  
 13717  // Context sets the context to be used in this call's Do method.
 13718  func (c *ProjectsLocationsPrivateConnectionsListCall) Context(ctx context.Context) *ProjectsLocationsPrivateConnectionsListCall {
 13719  	c.ctx_ = ctx
 13720  	return c
 13721  }
 13722  
 13723  // Header returns a http.Header that can be modified by the caller to add
 13724  // headers to the request.
 13725  func (c *ProjectsLocationsPrivateConnectionsListCall) Header() http.Header {
 13726  	if c.header_ == nil {
 13727  		c.header_ = make(http.Header)
 13728  	}
 13729  	return c.header_
 13730  }
 13731  
 13732  func (c *ProjectsLocationsPrivateConnectionsListCall) doRequest(alt string) (*http.Response, error) {
 13733  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13734  	if c.ifNoneMatch_ != "" {
 13735  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13736  	}
 13737  	var body io.Reader = nil
 13738  	c.urlParams_.Set("alt", alt)
 13739  	c.urlParams_.Set("prettyPrint", "false")
 13740  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/privateConnections")
 13741  	urls += "?" + c.urlParams_.Encode()
 13742  	req, err := http.NewRequest("GET", urls, body)
 13743  	if err != nil {
 13744  		return nil, err
 13745  	}
 13746  	req.Header = reqHeaders
 13747  	googleapi.Expand(req.URL, map[string]string{
 13748  		"parent": c.parent,
 13749  	})
 13750  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13751  }
 13752  
 13753  // Do executes the "vmwareengine.projects.locations.privateConnections.list" call.
 13754  // Any non-2xx status code is an error. Response headers are in either
 13755  // *ListPrivateConnectionsResponse.ServerResponse.Header or (if a response was
 13756  // returned at all) in error.(*googleapi.Error).Header. Use
 13757  // googleapi.IsNotModified to check whether the returned error was because
 13758  // http.StatusNotModified was returned.
 13759  func (c *ProjectsLocationsPrivateConnectionsListCall) Do(opts ...googleapi.CallOption) (*ListPrivateConnectionsResponse, error) {
 13760  	gensupport.SetOptions(c.urlParams_, opts...)
 13761  	res, err := c.doRequest("json")
 13762  	if res != nil && res.StatusCode == http.StatusNotModified {
 13763  		if res.Body != nil {
 13764  			res.Body.Close()
 13765  		}
 13766  		return nil, gensupport.WrapError(&googleapi.Error{
 13767  			Code:   res.StatusCode,
 13768  			Header: res.Header,
 13769  		})
 13770  	}
 13771  	if err != nil {
 13772  		return nil, err
 13773  	}
 13774  	defer googleapi.CloseBody(res)
 13775  	if err := googleapi.CheckResponse(res); err != nil {
 13776  		return nil, gensupport.WrapError(err)
 13777  	}
 13778  	ret := &ListPrivateConnectionsResponse{
 13779  		ServerResponse: googleapi.ServerResponse{
 13780  			Header:         res.Header,
 13781  			HTTPStatusCode: res.StatusCode,
 13782  		},
 13783  	}
 13784  	target := &ret
 13785  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13786  		return nil, err
 13787  	}
 13788  	return ret, nil
 13789  }
 13790  
 13791  // Pages invokes f for each page of results.
 13792  // A non-nil error returned from f will halt the iteration.
 13793  // The provided context supersedes any context provided to the Context method.
 13794  func (c *ProjectsLocationsPrivateConnectionsListCall) Pages(ctx context.Context, f func(*ListPrivateConnectionsResponse) error) error {
 13795  	c.ctx_ = ctx
 13796  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 13797  	for {
 13798  		x, err := c.Do()
 13799  		if err != nil {
 13800  			return err
 13801  		}
 13802  		if err := f(x); err != nil {
 13803  			return err
 13804  		}
 13805  		if x.NextPageToken == "" {
 13806  			return nil
 13807  		}
 13808  		c.PageToken(x.NextPageToken)
 13809  	}
 13810  }
 13811  
 13812  type ProjectsLocationsPrivateConnectionsPatchCall struct {
 13813  	s                 *Service
 13814  	name              string
 13815  	privateconnection *PrivateConnection
 13816  	urlParams_        gensupport.URLParams
 13817  	ctx_              context.Context
 13818  	header_           http.Header
 13819  }
 13820  
 13821  // Patch: Modifies a `PrivateConnection` resource. Only `description` and
 13822  // `routing_mode` fields can be updated. Only fields specified in `updateMask`
 13823  // are applied.
 13824  //
 13825  //   - name: Output only. The resource name of the private connection. Resource
 13826  //     names are schemeless URIs that follow the conventions in
 13827  //     https://cloud.google.com/apis/design/resource_names. For example:
 13828  //     `projects/my-project/locations/us-central1/privateConnections/my-connection
 13829  //     `.
 13830  func (r *ProjectsLocationsPrivateConnectionsService) Patch(name string, privateconnection *PrivateConnection) *ProjectsLocationsPrivateConnectionsPatchCall {
 13831  	c := &ProjectsLocationsPrivateConnectionsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13832  	c.name = name
 13833  	c.privateconnection = privateconnection
 13834  	return c
 13835  }
 13836  
 13837  // RequestId sets the optional parameter "requestId": A request ID to identify
 13838  // requests. Specify a unique request ID so that if you must retry your
 13839  // request, the server will know to ignore the request if it has already been
 13840  // completed. The server guarantees that a request doesn't result in creation
 13841  // of duplicate commitments for at least 60 minutes. For example, consider a
 13842  // situation where you make an initial request and the request times out. If
 13843  // you make the request again with the same request ID, the server can check if
 13844  // original operation with the same request ID was received, and if so, will
 13845  // ignore the second request. This prevents clients from accidentally creating
 13846  // duplicate commitments. The request ID must be a valid UUID with the
 13847  // exception that zero UUID is not supported
 13848  // (00000000-0000-0000-0000-000000000000).
 13849  func (c *ProjectsLocationsPrivateConnectionsPatchCall) RequestId(requestId string) *ProjectsLocationsPrivateConnectionsPatchCall {
 13850  	c.urlParams_.Set("requestId", requestId)
 13851  	return c
 13852  }
 13853  
 13854  // UpdateMask sets the optional parameter "updateMask": Required. Field mask is
 13855  // used to specify the fields to be overwritten in the `PrivateConnection`
 13856  // resource by the update. The fields specified in the `update_mask` are
 13857  // relative to the resource, not the full request. A field will be overwritten
 13858  // if it is in the mask. If the user does not provide a mask then all fields
 13859  // will be overwritten.
 13860  func (c *ProjectsLocationsPrivateConnectionsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsPrivateConnectionsPatchCall {
 13861  	c.urlParams_.Set("updateMask", updateMask)
 13862  	return c
 13863  }
 13864  
 13865  // Fields allows partial responses to be retrieved. See
 13866  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13867  // details.
 13868  func (c *ProjectsLocationsPrivateConnectionsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateConnectionsPatchCall {
 13869  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13870  	return c
 13871  }
 13872  
 13873  // Context sets the context to be used in this call's Do method.
 13874  func (c *ProjectsLocationsPrivateConnectionsPatchCall) Context(ctx context.Context) *ProjectsLocationsPrivateConnectionsPatchCall {
 13875  	c.ctx_ = ctx
 13876  	return c
 13877  }
 13878  
 13879  // Header returns a http.Header that can be modified by the caller to add
 13880  // headers to the request.
 13881  func (c *ProjectsLocationsPrivateConnectionsPatchCall) Header() http.Header {
 13882  	if c.header_ == nil {
 13883  		c.header_ = make(http.Header)
 13884  	}
 13885  	return c.header_
 13886  }
 13887  
 13888  func (c *ProjectsLocationsPrivateConnectionsPatchCall) doRequest(alt string) (*http.Response, error) {
 13889  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 13890  	var body io.Reader = nil
 13891  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.privateconnection)
 13892  	if err != nil {
 13893  		return nil, err
 13894  	}
 13895  	c.urlParams_.Set("alt", alt)
 13896  	c.urlParams_.Set("prettyPrint", "false")
 13897  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 13898  	urls += "?" + c.urlParams_.Encode()
 13899  	req, err := http.NewRequest("PATCH", urls, body)
 13900  	if err != nil {
 13901  		return nil, err
 13902  	}
 13903  	req.Header = reqHeaders
 13904  	googleapi.Expand(req.URL, map[string]string{
 13905  		"name": c.name,
 13906  	})
 13907  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13908  }
 13909  
 13910  // Do executes the "vmwareengine.projects.locations.privateConnections.patch" call.
 13911  // Any non-2xx status code is an error. Response headers are in either
 13912  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 13913  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 13914  // whether the returned error was because http.StatusNotModified was returned.
 13915  func (c *ProjectsLocationsPrivateConnectionsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 13916  	gensupport.SetOptions(c.urlParams_, opts...)
 13917  	res, err := c.doRequest("json")
 13918  	if res != nil && res.StatusCode == http.StatusNotModified {
 13919  		if res.Body != nil {
 13920  			res.Body.Close()
 13921  		}
 13922  		return nil, gensupport.WrapError(&googleapi.Error{
 13923  			Code:   res.StatusCode,
 13924  			Header: res.Header,
 13925  		})
 13926  	}
 13927  	if err != nil {
 13928  		return nil, err
 13929  	}
 13930  	defer googleapi.CloseBody(res)
 13931  	if err := googleapi.CheckResponse(res); err != nil {
 13932  		return nil, gensupport.WrapError(err)
 13933  	}
 13934  	ret := &Operation{
 13935  		ServerResponse: googleapi.ServerResponse{
 13936  			Header:         res.Header,
 13937  			HTTPStatusCode: res.StatusCode,
 13938  		},
 13939  	}
 13940  	target := &ret
 13941  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13942  		return nil, err
 13943  	}
 13944  	return ret, nil
 13945  }
 13946  
 13947  type ProjectsLocationsPrivateConnectionsPeeringRoutesListCall struct {
 13948  	s            *Service
 13949  	parent       string
 13950  	urlParams_   gensupport.URLParams
 13951  	ifNoneMatch_ string
 13952  	ctx_         context.Context
 13953  	header_      http.Header
 13954  }
 13955  
 13956  // List: Lists the private connection routes exchanged over a peering
 13957  // connection.
 13958  //
 13959  //   - parent: The resource name of the private connection to retrieve peering
 13960  //     routes from. Resource names are schemeless URIs that follow the
 13961  //     conventions in https://cloud.google.com/apis/design/resource_names. For
 13962  //     example:
 13963  //     `projects/my-project/locations/us-west1/privateConnections/my-connection`.
 13964  func (r *ProjectsLocationsPrivateConnectionsPeeringRoutesService) List(parent string) *ProjectsLocationsPrivateConnectionsPeeringRoutesListCall {
 13965  	c := &ProjectsLocationsPrivateConnectionsPeeringRoutesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13966  	c.parent = parent
 13967  	return c
 13968  }
 13969  
 13970  // PageSize sets the optional parameter "pageSize": The maximum number of
 13971  // peering routes to return in one page. The service may return fewer than this
 13972  // value. The maximum value is coerced to 1000. The default value of this field
 13973  // is 500.
 13974  func (c *ProjectsLocationsPrivateConnectionsPeeringRoutesListCall) PageSize(pageSize int64) *ProjectsLocationsPrivateConnectionsPeeringRoutesListCall {
 13975  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 13976  	return c
 13977  }
 13978  
 13979  // PageToken sets the optional parameter "pageToken": A page token, received
 13980  // from a previous `ListPrivateConnectionPeeringRoutes` call. Provide this to
 13981  // retrieve the subsequent page. When paginating, all other parameters provided
 13982  // to `ListPrivateConnectionPeeringRoutes` must match the call that provided
 13983  // the page token.
 13984  func (c *ProjectsLocationsPrivateConnectionsPeeringRoutesListCall) PageToken(pageToken string) *ProjectsLocationsPrivateConnectionsPeeringRoutesListCall {
 13985  	c.urlParams_.Set("pageToken", pageToken)
 13986  	return c
 13987  }
 13988  
 13989  // Fields allows partial responses to be retrieved. See
 13990  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13991  // details.
 13992  func (c *ProjectsLocationsPrivateConnectionsPeeringRoutesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsPrivateConnectionsPeeringRoutesListCall {
 13993  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13994  	return c
 13995  }
 13996  
 13997  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13998  // object's ETag matches the given value. This is useful for getting updates
 13999  // only after the object has changed since the last request.
 14000  func (c *ProjectsLocationsPrivateConnectionsPeeringRoutesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsPrivateConnectionsPeeringRoutesListCall {
 14001  	c.ifNoneMatch_ = entityTag
 14002  	return c
 14003  }
 14004  
 14005  // Context sets the context to be used in this call's Do method.
 14006  func (c *ProjectsLocationsPrivateConnectionsPeeringRoutesListCall) Context(ctx context.Context) *ProjectsLocationsPrivateConnectionsPeeringRoutesListCall {
 14007  	c.ctx_ = ctx
 14008  	return c
 14009  }
 14010  
 14011  // Header returns a http.Header that can be modified by the caller to add
 14012  // headers to the request.
 14013  func (c *ProjectsLocationsPrivateConnectionsPeeringRoutesListCall) Header() http.Header {
 14014  	if c.header_ == nil {
 14015  		c.header_ = make(http.Header)
 14016  	}
 14017  	return c.header_
 14018  }
 14019  
 14020  func (c *ProjectsLocationsPrivateConnectionsPeeringRoutesListCall) doRequest(alt string) (*http.Response, error) {
 14021  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14022  	if c.ifNoneMatch_ != "" {
 14023  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14024  	}
 14025  	var body io.Reader = nil
 14026  	c.urlParams_.Set("alt", alt)
 14027  	c.urlParams_.Set("prettyPrint", "false")
 14028  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/peeringRoutes")
 14029  	urls += "?" + c.urlParams_.Encode()
 14030  	req, err := http.NewRequest("GET", urls, body)
 14031  	if err != nil {
 14032  		return nil, err
 14033  	}
 14034  	req.Header = reqHeaders
 14035  	googleapi.Expand(req.URL, map[string]string{
 14036  		"parent": c.parent,
 14037  	})
 14038  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14039  }
 14040  
 14041  // Do executes the "vmwareengine.projects.locations.privateConnections.peeringRoutes.list" call.
 14042  // Any non-2xx status code is an error. Response headers are in either
 14043  // *ListPrivateConnectionPeeringRoutesResponse.ServerResponse.Header or (if a
 14044  // response was returned at all) in error.(*googleapi.Error).Header. Use
 14045  // googleapi.IsNotModified to check whether the returned error was because
 14046  // http.StatusNotModified was returned.
 14047  func (c *ProjectsLocationsPrivateConnectionsPeeringRoutesListCall) Do(opts ...googleapi.CallOption) (*ListPrivateConnectionPeeringRoutesResponse, error) {
 14048  	gensupport.SetOptions(c.urlParams_, opts...)
 14049  	res, err := c.doRequest("json")
 14050  	if res != nil && res.StatusCode == http.StatusNotModified {
 14051  		if res.Body != nil {
 14052  			res.Body.Close()
 14053  		}
 14054  		return nil, gensupport.WrapError(&googleapi.Error{
 14055  			Code:   res.StatusCode,
 14056  			Header: res.Header,
 14057  		})
 14058  	}
 14059  	if err != nil {
 14060  		return nil, err
 14061  	}
 14062  	defer googleapi.CloseBody(res)
 14063  	if err := googleapi.CheckResponse(res); err != nil {
 14064  		return nil, gensupport.WrapError(err)
 14065  	}
 14066  	ret := &ListPrivateConnectionPeeringRoutesResponse{
 14067  		ServerResponse: googleapi.ServerResponse{
 14068  			Header:         res.Header,
 14069  			HTTPStatusCode: res.StatusCode,
 14070  		},
 14071  	}
 14072  	target := &ret
 14073  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14074  		return nil, err
 14075  	}
 14076  	return ret, nil
 14077  }
 14078  
 14079  // Pages invokes f for each page of results.
 14080  // A non-nil error returned from f will halt the iteration.
 14081  // The provided context supersedes any context provided to the Context method.
 14082  func (c *ProjectsLocationsPrivateConnectionsPeeringRoutesListCall) Pages(ctx context.Context, f func(*ListPrivateConnectionPeeringRoutesResponse) error) error {
 14083  	c.ctx_ = ctx
 14084  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 14085  	for {
 14086  		x, err := c.Do()
 14087  		if err != nil {
 14088  			return err
 14089  		}
 14090  		if err := f(x); err != nil {
 14091  			return err
 14092  		}
 14093  		if x.NextPageToken == "" {
 14094  			return nil
 14095  		}
 14096  		c.PageToken(x.NextPageToken)
 14097  	}
 14098  }
 14099  
 14100  type ProjectsLocationsVmwareEngineNetworksCreateCall struct {
 14101  	s                   *Service
 14102  	parent              string
 14103  	vmwareenginenetwork *VmwareEngineNetwork
 14104  	urlParams_          gensupport.URLParams
 14105  	ctx_                context.Context
 14106  	header_             http.Header
 14107  }
 14108  
 14109  // Create: Creates a new VMware Engine network that can be used by a private
 14110  // cloud.
 14111  //
 14112  //   - parent: The resource name of the location to create the new VMware Engine
 14113  //     network in. A VMware Engine network of type `LEGACY` is a regional
 14114  //     resource, and a VMware Engine network of type `STANDARD` is a global
 14115  //     resource. Resource names are schemeless URIs that follow the conventions
 14116  //     in https://cloud.google.com/apis/design/resource_names. For example:
 14117  //     `projects/my-project/locations/global`.
 14118  func (r *ProjectsLocationsVmwareEngineNetworksService) Create(parent string, vmwareenginenetwork *VmwareEngineNetwork) *ProjectsLocationsVmwareEngineNetworksCreateCall {
 14119  	c := &ProjectsLocationsVmwareEngineNetworksCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14120  	c.parent = parent
 14121  	c.vmwareenginenetwork = vmwareenginenetwork
 14122  	return c
 14123  }
 14124  
 14125  // RequestId sets the optional parameter "requestId": A request ID to identify
 14126  // requests. Specify a unique request ID so that if you must retry your
 14127  // request, the server will know to ignore the request if it has already been
 14128  // completed. The server guarantees that a request doesn't result in creation
 14129  // of duplicate commitments for at least 60 minutes. For example, consider a
 14130  // situation where you make an initial request and the request times out. If
 14131  // you make the request again with the same request ID, the server can check if
 14132  // original operation with the same request ID was received, and if so, will
 14133  // ignore the second request. This prevents clients from accidentally creating
 14134  // duplicate commitments. The request ID must be a valid UUID with the
 14135  // exception that zero UUID is not supported
 14136  // (00000000-0000-0000-0000-000000000000).
 14137  func (c *ProjectsLocationsVmwareEngineNetworksCreateCall) RequestId(requestId string) *ProjectsLocationsVmwareEngineNetworksCreateCall {
 14138  	c.urlParams_.Set("requestId", requestId)
 14139  	return c
 14140  }
 14141  
 14142  // VmwareEngineNetworkId sets the optional parameter "vmwareEngineNetworkId":
 14143  // Required. The user-provided identifier of the new VMware Engine network.
 14144  // This identifier must be unique among VMware Engine network resources within
 14145  // the parent and becomes the final token in the name URI. The identifier must
 14146  // meet the following requirements: * For networks of type LEGACY, adheres to
 14147  // the format: `{region-id}-default`. Replace `{region-id}` with the region
 14148  // where you want to create the VMware Engine network. For example,
 14149  // "us-central1-default". * Only contains 1-63 alphanumeric characters and
 14150  // hyphens * Begins with an alphabetical character * Ends with a non-hyphen
 14151  // character * Not formatted as a UUID * Complies with RFC 1034
 14152  // (https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
 14153  func (c *ProjectsLocationsVmwareEngineNetworksCreateCall) VmwareEngineNetworkId(vmwareEngineNetworkId string) *ProjectsLocationsVmwareEngineNetworksCreateCall {
 14154  	c.urlParams_.Set("vmwareEngineNetworkId", vmwareEngineNetworkId)
 14155  	return c
 14156  }
 14157  
 14158  // Fields allows partial responses to be retrieved. See
 14159  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14160  // details.
 14161  func (c *ProjectsLocationsVmwareEngineNetworksCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsVmwareEngineNetworksCreateCall {
 14162  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14163  	return c
 14164  }
 14165  
 14166  // Context sets the context to be used in this call's Do method.
 14167  func (c *ProjectsLocationsVmwareEngineNetworksCreateCall) Context(ctx context.Context) *ProjectsLocationsVmwareEngineNetworksCreateCall {
 14168  	c.ctx_ = ctx
 14169  	return c
 14170  }
 14171  
 14172  // Header returns a http.Header that can be modified by the caller to add
 14173  // headers to the request.
 14174  func (c *ProjectsLocationsVmwareEngineNetworksCreateCall) Header() http.Header {
 14175  	if c.header_ == nil {
 14176  		c.header_ = make(http.Header)
 14177  	}
 14178  	return c.header_
 14179  }
 14180  
 14181  func (c *ProjectsLocationsVmwareEngineNetworksCreateCall) doRequest(alt string) (*http.Response, error) {
 14182  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 14183  	var body io.Reader = nil
 14184  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.vmwareenginenetwork)
 14185  	if err != nil {
 14186  		return nil, err
 14187  	}
 14188  	c.urlParams_.Set("alt", alt)
 14189  	c.urlParams_.Set("prettyPrint", "false")
 14190  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/vmwareEngineNetworks")
 14191  	urls += "?" + c.urlParams_.Encode()
 14192  	req, err := http.NewRequest("POST", urls, body)
 14193  	if err != nil {
 14194  		return nil, err
 14195  	}
 14196  	req.Header = reqHeaders
 14197  	googleapi.Expand(req.URL, map[string]string{
 14198  		"parent": c.parent,
 14199  	})
 14200  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14201  }
 14202  
 14203  // Do executes the "vmwareengine.projects.locations.vmwareEngineNetworks.create" call.
 14204  // Any non-2xx status code is an error. Response headers are in either
 14205  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 14206  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 14207  // whether the returned error was because http.StatusNotModified was returned.
 14208  func (c *ProjectsLocationsVmwareEngineNetworksCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 14209  	gensupport.SetOptions(c.urlParams_, opts...)
 14210  	res, err := c.doRequest("json")
 14211  	if res != nil && res.StatusCode == http.StatusNotModified {
 14212  		if res.Body != nil {
 14213  			res.Body.Close()
 14214  		}
 14215  		return nil, gensupport.WrapError(&googleapi.Error{
 14216  			Code:   res.StatusCode,
 14217  			Header: res.Header,
 14218  		})
 14219  	}
 14220  	if err != nil {
 14221  		return nil, err
 14222  	}
 14223  	defer googleapi.CloseBody(res)
 14224  	if err := googleapi.CheckResponse(res); err != nil {
 14225  		return nil, gensupport.WrapError(err)
 14226  	}
 14227  	ret := &Operation{
 14228  		ServerResponse: googleapi.ServerResponse{
 14229  			Header:         res.Header,
 14230  			HTTPStatusCode: res.StatusCode,
 14231  		},
 14232  	}
 14233  	target := &ret
 14234  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14235  		return nil, err
 14236  	}
 14237  	return ret, nil
 14238  }
 14239  
 14240  type ProjectsLocationsVmwareEngineNetworksDeleteCall struct {
 14241  	s          *Service
 14242  	name       string
 14243  	urlParams_ gensupport.URLParams
 14244  	ctx_       context.Context
 14245  	header_    http.Header
 14246  }
 14247  
 14248  // Delete: Deletes a `VmwareEngineNetwork` resource. You can only delete a
 14249  // VMware Engine network after all resources that refer to it are deleted. For
 14250  // example, a private cloud, a network peering, and a network policy can all
 14251  // refer to the same VMware Engine network.
 14252  //
 14253  //   - name: The resource name of the VMware Engine network to be deleted.
 14254  //     Resource names are schemeless URIs that follow the conventions in
 14255  //     https://cloud.google.com/apis/design/resource_names. For example:
 14256  //     `projects/my-project/locations/global/vmwareEngineNetworks/my-network`.
 14257  func (r *ProjectsLocationsVmwareEngineNetworksService) Delete(name string) *ProjectsLocationsVmwareEngineNetworksDeleteCall {
 14258  	c := &ProjectsLocationsVmwareEngineNetworksDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14259  	c.name = name
 14260  	return c
 14261  }
 14262  
 14263  // Etag sets the optional parameter "etag": Checksum used to ensure that the
 14264  // user-provided value is up to date before the server processes the request.
 14265  // The server compares provided checksum with the current checksum of the
 14266  // resource. If the user-provided value is out of date, this request returns an
 14267  // `ABORTED` error.
 14268  func (c *ProjectsLocationsVmwareEngineNetworksDeleteCall) Etag(etag string) *ProjectsLocationsVmwareEngineNetworksDeleteCall {
 14269  	c.urlParams_.Set("etag", etag)
 14270  	return c
 14271  }
 14272  
 14273  // RequestId sets the optional parameter "requestId": A request ID to identify
 14274  // requests. Specify a unique request ID so that if you must retry your
 14275  // request, the server will know to ignore the request if it has already been
 14276  // completed. The server guarantees that a request doesn't result in creation
 14277  // of duplicate commitments for at least 60 minutes. For example, consider a
 14278  // situation where you make an initial request and the request times out. If
 14279  // you make the request again with the same request ID, the server can check if
 14280  // original operation with the same request ID was received, and if so, will
 14281  // ignore the second request. This prevents clients from accidentally creating
 14282  // duplicate commitments. The request ID must be a valid UUID with the
 14283  // exception that zero UUID is not supported
 14284  // (00000000-0000-0000-0000-000000000000).
 14285  func (c *ProjectsLocationsVmwareEngineNetworksDeleteCall) RequestId(requestId string) *ProjectsLocationsVmwareEngineNetworksDeleteCall {
 14286  	c.urlParams_.Set("requestId", requestId)
 14287  	return c
 14288  }
 14289  
 14290  // Fields allows partial responses to be retrieved. See
 14291  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14292  // details.
 14293  func (c *ProjectsLocationsVmwareEngineNetworksDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsVmwareEngineNetworksDeleteCall {
 14294  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14295  	return c
 14296  }
 14297  
 14298  // Context sets the context to be used in this call's Do method.
 14299  func (c *ProjectsLocationsVmwareEngineNetworksDeleteCall) Context(ctx context.Context) *ProjectsLocationsVmwareEngineNetworksDeleteCall {
 14300  	c.ctx_ = ctx
 14301  	return c
 14302  }
 14303  
 14304  // Header returns a http.Header that can be modified by the caller to add
 14305  // headers to the request.
 14306  func (c *ProjectsLocationsVmwareEngineNetworksDeleteCall) Header() http.Header {
 14307  	if c.header_ == nil {
 14308  		c.header_ = make(http.Header)
 14309  	}
 14310  	return c.header_
 14311  }
 14312  
 14313  func (c *ProjectsLocationsVmwareEngineNetworksDeleteCall) doRequest(alt string) (*http.Response, error) {
 14314  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14315  	var body io.Reader = nil
 14316  	c.urlParams_.Set("alt", alt)
 14317  	c.urlParams_.Set("prettyPrint", "false")
 14318  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 14319  	urls += "?" + c.urlParams_.Encode()
 14320  	req, err := http.NewRequest("DELETE", urls, body)
 14321  	if err != nil {
 14322  		return nil, err
 14323  	}
 14324  	req.Header = reqHeaders
 14325  	googleapi.Expand(req.URL, map[string]string{
 14326  		"name": c.name,
 14327  	})
 14328  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14329  }
 14330  
 14331  // Do executes the "vmwareengine.projects.locations.vmwareEngineNetworks.delete" call.
 14332  // Any non-2xx status code is an error. Response headers are in either
 14333  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 14334  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 14335  // whether the returned error was because http.StatusNotModified was returned.
 14336  func (c *ProjectsLocationsVmwareEngineNetworksDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 14337  	gensupport.SetOptions(c.urlParams_, opts...)
 14338  	res, err := c.doRequest("json")
 14339  	if res != nil && res.StatusCode == http.StatusNotModified {
 14340  		if res.Body != nil {
 14341  			res.Body.Close()
 14342  		}
 14343  		return nil, gensupport.WrapError(&googleapi.Error{
 14344  			Code:   res.StatusCode,
 14345  			Header: res.Header,
 14346  		})
 14347  	}
 14348  	if err != nil {
 14349  		return nil, err
 14350  	}
 14351  	defer googleapi.CloseBody(res)
 14352  	if err := googleapi.CheckResponse(res); err != nil {
 14353  		return nil, gensupport.WrapError(err)
 14354  	}
 14355  	ret := &Operation{
 14356  		ServerResponse: googleapi.ServerResponse{
 14357  			Header:         res.Header,
 14358  			HTTPStatusCode: res.StatusCode,
 14359  		},
 14360  	}
 14361  	target := &ret
 14362  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14363  		return nil, err
 14364  	}
 14365  	return ret, nil
 14366  }
 14367  
 14368  type ProjectsLocationsVmwareEngineNetworksGetCall struct {
 14369  	s            *Service
 14370  	name         string
 14371  	urlParams_   gensupport.URLParams
 14372  	ifNoneMatch_ string
 14373  	ctx_         context.Context
 14374  	header_      http.Header
 14375  }
 14376  
 14377  // Get: Retrieves a `VmwareEngineNetwork` resource by its resource name. The
 14378  // resource contains details of the VMware Engine network, such as its VMware
 14379  // Engine network type, peered networks in a service project, and state (for
 14380  // example, `CREATING`, `ACTIVE`, `DELETING`).
 14381  //
 14382  //   - name: The resource name of the VMware Engine network to retrieve. Resource
 14383  //     names are schemeless URIs that follow the conventions in
 14384  //     https://cloud.google.com/apis/design/resource_names. For example:
 14385  //     `projects/my-project/locations/global/vmwareEngineNetworks/my-network`.
 14386  func (r *ProjectsLocationsVmwareEngineNetworksService) Get(name string) *ProjectsLocationsVmwareEngineNetworksGetCall {
 14387  	c := &ProjectsLocationsVmwareEngineNetworksGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14388  	c.name = name
 14389  	return c
 14390  }
 14391  
 14392  // Fields allows partial responses to be retrieved. See
 14393  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14394  // details.
 14395  func (c *ProjectsLocationsVmwareEngineNetworksGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsVmwareEngineNetworksGetCall {
 14396  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14397  	return c
 14398  }
 14399  
 14400  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 14401  // object's ETag matches the given value. This is useful for getting updates
 14402  // only after the object has changed since the last request.
 14403  func (c *ProjectsLocationsVmwareEngineNetworksGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsVmwareEngineNetworksGetCall {
 14404  	c.ifNoneMatch_ = entityTag
 14405  	return c
 14406  }
 14407  
 14408  // Context sets the context to be used in this call's Do method.
 14409  func (c *ProjectsLocationsVmwareEngineNetworksGetCall) Context(ctx context.Context) *ProjectsLocationsVmwareEngineNetworksGetCall {
 14410  	c.ctx_ = ctx
 14411  	return c
 14412  }
 14413  
 14414  // Header returns a http.Header that can be modified by the caller to add
 14415  // headers to the request.
 14416  func (c *ProjectsLocationsVmwareEngineNetworksGetCall) Header() http.Header {
 14417  	if c.header_ == nil {
 14418  		c.header_ = make(http.Header)
 14419  	}
 14420  	return c.header_
 14421  }
 14422  
 14423  func (c *ProjectsLocationsVmwareEngineNetworksGetCall) doRequest(alt string) (*http.Response, error) {
 14424  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14425  	if c.ifNoneMatch_ != "" {
 14426  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14427  	}
 14428  	var body io.Reader = nil
 14429  	c.urlParams_.Set("alt", alt)
 14430  	c.urlParams_.Set("prettyPrint", "false")
 14431  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 14432  	urls += "?" + c.urlParams_.Encode()
 14433  	req, err := http.NewRequest("GET", urls, body)
 14434  	if err != nil {
 14435  		return nil, err
 14436  	}
 14437  	req.Header = reqHeaders
 14438  	googleapi.Expand(req.URL, map[string]string{
 14439  		"name": c.name,
 14440  	})
 14441  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14442  }
 14443  
 14444  // Do executes the "vmwareengine.projects.locations.vmwareEngineNetworks.get" call.
 14445  // Any non-2xx status code is an error. Response headers are in either
 14446  // *VmwareEngineNetwork.ServerResponse.Header or (if a response was returned at
 14447  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 14448  // check whether the returned error was because http.StatusNotModified was
 14449  // returned.
 14450  func (c *ProjectsLocationsVmwareEngineNetworksGetCall) Do(opts ...googleapi.CallOption) (*VmwareEngineNetwork, error) {
 14451  	gensupport.SetOptions(c.urlParams_, opts...)
 14452  	res, err := c.doRequest("json")
 14453  	if res != nil && res.StatusCode == http.StatusNotModified {
 14454  		if res.Body != nil {
 14455  			res.Body.Close()
 14456  		}
 14457  		return nil, gensupport.WrapError(&googleapi.Error{
 14458  			Code:   res.StatusCode,
 14459  			Header: res.Header,
 14460  		})
 14461  	}
 14462  	if err != nil {
 14463  		return nil, err
 14464  	}
 14465  	defer googleapi.CloseBody(res)
 14466  	if err := googleapi.CheckResponse(res); err != nil {
 14467  		return nil, gensupport.WrapError(err)
 14468  	}
 14469  	ret := &VmwareEngineNetwork{
 14470  		ServerResponse: googleapi.ServerResponse{
 14471  			Header:         res.Header,
 14472  			HTTPStatusCode: res.StatusCode,
 14473  		},
 14474  	}
 14475  	target := &ret
 14476  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14477  		return nil, err
 14478  	}
 14479  	return ret, nil
 14480  }
 14481  
 14482  type ProjectsLocationsVmwareEngineNetworksListCall struct {
 14483  	s            *Service
 14484  	parent       string
 14485  	urlParams_   gensupport.URLParams
 14486  	ifNoneMatch_ string
 14487  	ctx_         context.Context
 14488  	header_      http.Header
 14489  }
 14490  
 14491  // List: Lists `VmwareEngineNetwork` resources in a given project and location.
 14492  //
 14493  //   - parent: The resource name of the location to query for VMware Engine
 14494  //     networks. Resource names are schemeless URIs that follow the conventions
 14495  //     in https://cloud.google.com/apis/design/resource_names. For example:
 14496  //     `projects/my-project/locations/global`.
 14497  func (r *ProjectsLocationsVmwareEngineNetworksService) List(parent string) *ProjectsLocationsVmwareEngineNetworksListCall {
 14498  	c := &ProjectsLocationsVmwareEngineNetworksListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14499  	c.parent = parent
 14500  	return c
 14501  }
 14502  
 14503  // Filter sets the optional parameter "filter": A filter expression that
 14504  // matches resources returned in the response. The expression must specify the
 14505  // field name, a comparison operator, and the value that you want to use for
 14506  // filtering. The value must be a string, a number, or a boolean. The
 14507  // comparison operator must be `=`, `!=`, `>`, or `<`. For example, if you are
 14508  // filtering a list of network peerings, you can exclude the ones named
 14509  // `example-network` by specifying `name != "example-network". To filter on
 14510  // multiple expressions, provide each separate expression within parentheses.
 14511  // For example: ``` (name = "example-network") (createTime >
 14512  // "2021-04-12T08:15:10.40Z") ``` By default, each expression is an `AND`
 14513  // expression. However, you can include `AND` and `OR` expressions explicitly.
 14514  // For example: ``` (name = "example-network-1") AND (createTime >
 14515  // "2021-04-12T08:15:10.40Z") OR (name = "example-network-2") ```
 14516  func (c *ProjectsLocationsVmwareEngineNetworksListCall) Filter(filter string) *ProjectsLocationsVmwareEngineNetworksListCall {
 14517  	c.urlParams_.Set("filter", filter)
 14518  	return c
 14519  }
 14520  
 14521  // OrderBy sets the optional parameter "orderBy": Sorts list results by a
 14522  // certain order. By default, returned results are ordered by `name` in
 14523  // ascending order. You can also sort results in descending order based on the
 14524  // `name` value using `orderBy="name desc". Currently, only ordering by `name`
 14525  // is supported.
 14526  func (c *ProjectsLocationsVmwareEngineNetworksListCall) OrderBy(orderBy string) *ProjectsLocationsVmwareEngineNetworksListCall {
 14527  	c.urlParams_.Set("orderBy", orderBy)
 14528  	return c
 14529  }
 14530  
 14531  // PageSize sets the optional parameter "pageSize": The maximum number of
 14532  // results to return in one page. The maximum value is coerced to 1000. The
 14533  // default value of this field is 500.
 14534  func (c *ProjectsLocationsVmwareEngineNetworksListCall) PageSize(pageSize int64) *ProjectsLocationsVmwareEngineNetworksListCall {
 14535  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
 14536  	return c
 14537  }
 14538  
 14539  // PageToken sets the optional parameter "pageToken": A page token, received
 14540  // from a previous `ListVmwareEngineNetworks` call. Provide this to retrieve
 14541  // the subsequent page. When paginating, all other parameters provided to
 14542  // `ListVmwareEngineNetworks` must match the call that provided the page token.
 14543  func (c *ProjectsLocationsVmwareEngineNetworksListCall) PageToken(pageToken string) *ProjectsLocationsVmwareEngineNetworksListCall {
 14544  	c.urlParams_.Set("pageToken", pageToken)
 14545  	return c
 14546  }
 14547  
 14548  // Fields allows partial responses to be retrieved. See
 14549  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14550  // details.
 14551  func (c *ProjectsLocationsVmwareEngineNetworksListCall) Fields(s ...googleapi.Field) *ProjectsLocationsVmwareEngineNetworksListCall {
 14552  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14553  	return c
 14554  }
 14555  
 14556  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 14557  // object's ETag matches the given value. This is useful for getting updates
 14558  // only after the object has changed since the last request.
 14559  func (c *ProjectsLocationsVmwareEngineNetworksListCall) IfNoneMatch(entityTag string) *ProjectsLocationsVmwareEngineNetworksListCall {
 14560  	c.ifNoneMatch_ = entityTag
 14561  	return c
 14562  }
 14563  
 14564  // Context sets the context to be used in this call's Do method.
 14565  func (c *ProjectsLocationsVmwareEngineNetworksListCall) Context(ctx context.Context) *ProjectsLocationsVmwareEngineNetworksListCall {
 14566  	c.ctx_ = ctx
 14567  	return c
 14568  }
 14569  
 14570  // Header returns a http.Header that can be modified by the caller to add
 14571  // headers to the request.
 14572  func (c *ProjectsLocationsVmwareEngineNetworksListCall) Header() http.Header {
 14573  	if c.header_ == nil {
 14574  		c.header_ = make(http.Header)
 14575  	}
 14576  	return c.header_
 14577  }
 14578  
 14579  func (c *ProjectsLocationsVmwareEngineNetworksListCall) doRequest(alt string) (*http.Response, error) {
 14580  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14581  	if c.ifNoneMatch_ != "" {
 14582  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14583  	}
 14584  	var body io.Reader = nil
 14585  	c.urlParams_.Set("alt", alt)
 14586  	c.urlParams_.Set("prettyPrint", "false")
 14587  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/vmwareEngineNetworks")
 14588  	urls += "?" + c.urlParams_.Encode()
 14589  	req, err := http.NewRequest("GET", urls, body)
 14590  	if err != nil {
 14591  		return nil, err
 14592  	}
 14593  	req.Header = reqHeaders
 14594  	googleapi.Expand(req.URL, map[string]string{
 14595  		"parent": c.parent,
 14596  	})
 14597  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14598  }
 14599  
 14600  // Do executes the "vmwareengine.projects.locations.vmwareEngineNetworks.list" call.
 14601  // Any non-2xx status code is an error. Response headers are in either
 14602  // *ListVmwareEngineNetworksResponse.ServerResponse.Header or (if a response
 14603  // was returned at all) in error.(*googleapi.Error).Header. Use
 14604  // googleapi.IsNotModified to check whether the returned error was because
 14605  // http.StatusNotModified was returned.
 14606  func (c *ProjectsLocationsVmwareEngineNetworksListCall) Do(opts ...googleapi.CallOption) (*ListVmwareEngineNetworksResponse, error) {
 14607  	gensupport.SetOptions(c.urlParams_, opts...)
 14608  	res, err := c.doRequest("json")
 14609  	if res != nil && res.StatusCode == http.StatusNotModified {
 14610  		if res.Body != nil {
 14611  			res.Body.Close()
 14612  		}
 14613  		return nil, gensupport.WrapError(&googleapi.Error{
 14614  			Code:   res.StatusCode,
 14615  			Header: res.Header,
 14616  		})
 14617  	}
 14618  	if err != nil {
 14619  		return nil, err
 14620  	}
 14621  	defer googleapi.CloseBody(res)
 14622  	if err := googleapi.CheckResponse(res); err != nil {
 14623  		return nil, gensupport.WrapError(err)
 14624  	}
 14625  	ret := &ListVmwareEngineNetworksResponse{
 14626  		ServerResponse: googleapi.ServerResponse{
 14627  			Header:         res.Header,
 14628  			HTTPStatusCode: res.StatusCode,
 14629  		},
 14630  	}
 14631  	target := &ret
 14632  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14633  		return nil, err
 14634  	}
 14635  	return ret, nil
 14636  }
 14637  
 14638  // Pages invokes f for each page of results.
 14639  // A non-nil error returned from f will halt the iteration.
 14640  // The provided context supersedes any context provided to the Context method.
 14641  func (c *ProjectsLocationsVmwareEngineNetworksListCall) Pages(ctx context.Context, f func(*ListVmwareEngineNetworksResponse) error) error {
 14642  	c.ctx_ = ctx
 14643  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 14644  	for {
 14645  		x, err := c.Do()
 14646  		if err != nil {
 14647  			return err
 14648  		}
 14649  		if err := f(x); err != nil {
 14650  			return err
 14651  		}
 14652  		if x.NextPageToken == "" {
 14653  			return nil
 14654  		}
 14655  		c.PageToken(x.NextPageToken)
 14656  	}
 14657  }
 14658  
 14659  type ProjectsLocationsVmwareEngineNetworksPatchCall struct {
 14660  	s                   *Service
 14661  	name                string
 14662  	vmwareenginenetwork *VmwareEngineNetwork
 14663  	urlParams_          gensupport.URLParams
 14664  	ctx_                context.Context
 14665  	header_             http.Header
 14666  }
 14667  
 14668  // Patch: Modifies a VMware Engine network resource. Only the following fields
 14669  // can be updated: `description`. Only fields specified in `updateMask` are
 14670  // applied.
 14671  //
 14672  //   - name: Output only. The resource name of the VMware Engine network.
 14673  //     Resource names are schemeless URIs that follow the conventions in
 14674  //     https://cloud.google.com/apis/design/resource_names. For example:
 14675  //     `projects/my-project/locations/global/vmwareEngineNetworks/my-network`.
 14676  func (r *ProjectsLocationsVmwareEngineNetworksService) Patch(name string, vmwareenginenetwork *VmwareEngineNetwork) *ProjectsLocationsVmwareEngineNetworksPatchCall {
 14677  	c := &ProjectsLocationsVmwareEngineNetworksPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14678  	c.name = name
 14679  	c.vmwareenginenetwork = vmwareenginenetwork
 14680  	return c
 14681  }
 14682  
 14683  // RequestId sets the optional parameter "requestId": A request ID to identify
 14684  // requests. Specify a unique request ID so that if you must retry your
 14685  // request, the server will know to ignore the request if it has already been
 14686  // completed. The server guarantees that a request doesn't result in creation
 14687  // of duplicate commitments for at least 60 minutes. For example, consider a
 14688  // situation where you make an initial request and the request times out. If
 14689  // you make the request again with the same request ID, the server can check if
 14690  // original operation with the same request ID was received, and if so, will
 14691  // ignore the second request. This prevents clients from accidentally creating
 14692  // duplicate commitments. The request ID must be a valid UUID with the
 14693  // exception that zero UUID is not supported
 14694  // (00000000-0000-0000-0000-000000000000).
 14695  func (c *ProjectsLocationsVmwareEngineNetworksPatchCall) RequestId(requestId string) *ProjectsLocationsVmwareEngineNetworksPatchCall {
 14696  	c.urlParams_.Set("requestId", requestId)
 14697  	return c
 14698  }
 14699  
 14700  // UpdateMask sets the optional parameter "updateMask": Required. Field mask is
 14701  // used to specify the fields to be overwritten in the VMware Engine network
 14702  // resource by the update. The fields specified in the `update_mask` are
 14703  // relative to the resource, not the full request. A field will be overwritten
 14704  // if it is in the mask. If the user does not provide a mask then all fields
 14705  // will be overwritten. Only the following fields can be updated:
 14706  // `description`.
 14707  func (c *ProjectsLocationsVmwareEngineNetworksPatchCall) UpdateMask(updateMask string) *ProjectsLocationsVmwareEngineNetworksPatchCall {
 14708  	c.urlParams_.Set("updateMask", updateMask)
 14709  	return c
 14710  }
 14711  
 14712  // Fields allows partial responses to be retrieved. See
 14713  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14714  // details.
 14715  func (c *ProjectsLocationsVmwareEngineNetworksPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsVmwareEngineNetworksPatchCall {
 14716  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14717  	return c
 14718  }
 14719  
 14720  // Context sets the context to be used in this call's Do method.
 14721  func (c *ProjectsLocationsVmwareEngineNetworksPatchCall) Context(ctx context.Context) *ProjectsLocationsVmwareEngineNetworksPatchCall {
 14722  	c.ctx_ = ctx
 14723  	return c
 14724  }
 14725  
 14726  // Header returns a http.Header that can be modified by the caller to add
 14727  // headers to the request.
 14728  func (c *ProjectsLocationsVmwareEngineNetworksPatchCall) Header() http.Header {
 14729  	if c.header_ == nil {
 14730  		c.header_ = make(http.Header)
 14731  	}
 14732  	return c.header_
 14733  }
 14734  
 14735  func (c *ProjectsLocationsVmwareEngineNetworksPatchCall) doRequest(alt string) (*http.Response, error) {
 14736  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 14737  	var body io.Reader = nil
 14738  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.vmwareenginenetwork)
 14739  	if err != nil {
 14740  		return nil, err
 14741  	}
 14742  	c.urlParams_.Set("alt", alt)
 14743  	c.urlParams_.Set("prettyPrint", "false")
 14744  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
 14745  	urls += "?" + c.urlParams_.Encode()
 14746  	req, err := http.NewRequest("PATCH", urls, body)
 14747  	if err != nil {
 14748  		return nil, err
 14749  	}
 14750  	req.Header = reqHeaders
 14751  	googleapi.Expand(req.URL, map[string]string{
 14752  		"name": c.name,
 14753  	})
 14754  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14755  }
 14756  
 14757  // Do executes the "vmwareengine.projects.locations.vmwareEngineNetworks.patch" call.
 14758  // Any non-2xx status code is an error. Response headers are in either
 14759  // *Operation.ServerResponse.Header or (if a response was returned at all) in
 14760  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 14761  // whether the returned error was because http.StatusNotModified was returned.
 14762  func (c *ProjectsLocationsVmwareEngineNetworksPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
 14763  	gensupport.SetOptions(c.urlParams_, opts...)
 14764  	res, err := c.doRequest("json")
 14765  	if res != nil && res.StatusCode == http.StatusNotModified {
 14766  		if res.Body != nil {
 14767  			res.Body.Close()
 14768  		}
 14769  		return nil, gensupport.WrapError(&googleapi.Error{
 14770  			Code:   res.StatusCode,
 14771  			Header: res.Header,
 14772  		})
 14773  	}
 14774  	if err != nil {
 14775  		return nil, err
 14776  	}
 14777  	defer googleapi.CloseBody(res)
 14778  	if err := googleapi.CheckResponse(res); err != nil {
 14779  		return nil, gensupport.WrapError(err)
 14780  	}
 14781  	ret := &Operation{
 14782  		ServerResponse: googleapi.ServerResponse{
 14783  			Header:         res.Header,
 14784  			HTTPStatusCode: res.StatusCode,
 14785  		},
 14786  	}
 14787  	target := &ret
 14788  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14789  		return nil, err
 14790  	}
 14791  	return ret, nil
 14792  }
 14793  

View as plain text