...

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

Documentation: google.golang.org/api/file/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 file provides access to the Cloud Filestore API.
     8  //
     9  // For product documentation, see: https://cloud.google.com/filestore/
    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/file/v1"
    27  //	...
    28  //	ctx := context.Background()
    29  //	fileService, err := file.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  //	fileService, err := file.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  //	fileService, err := file.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
    49  //
    50  // See [google.golang.org/api/option.ClientOption] for details on options.
    51  package file // import "google.golang.org/api/file/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 = "file:v1"
    90  const apiName = "file"
    91  const apiVersion = "v1"
    92  const basePath = "https://file.googleapis.com/"
    93  const basePathTemplate = "https://file.UNIVERSE_DOMAIN/"
    94  const mtlsBasePath = "https://file.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.Backups = NewProjectsLocationsBackupsService(s)
   172  	rs.Instances = NewProjectsLocationsInstancesService(s)
   173  	rs.Operations = NewProjectsLocationsOperationsService(s)
   174  	return rs
   175  }
   176  
   177  type ProjectsLocationsService struct {
   178  	s *Service
   179  
   180  	Backups *ProjectsLocationsBackupsService
   181  
   182  	Instances *ProjectsLocationsInstancesService
   183  
   184  	Operations *ProjectsLocationsOperationsService
   185  }
   186  
   187  func NewProjectsLocationsBackupsService(s *Service) *ProjectsLocationsBackupsService {
   188  	rs := &ProjectsLocationsBackupsService{s: s}
   189  	return rs
   190  }
   191  
   192  type ProjectsLocationsBackupsService struct {
   193  	s *Service
   194  }
   195  
   196  func NewProjectsLocationsInstancesService(s *Service) *ProjectsLocationsInstancesService {
   197  	rs := &ProjectsLocationsInstancesService{s: s}
   198  	rs.Snapshots = NewProjectsLocationsInstancesSnapshotsService(s)
   199  	return rs
   200  }
   201  
   202  type ProjectsLocationsInstancesService struct {
   203  	s *Service
   204  
   205  	Snapshots *ProjectsLocationsInstancesSnapshotsService
   206  }
   207  
   208  func NewProjectsLocationsInstancesSnapshotsService(s *Service) *ProjectsLocationsInstancesSnapshotsService {
   209  	rs := &ProjectsLocationsInstancesSnapshotsService{s: s}
   210  	return rs
   211  }
   212  
   213  type ProjectsLocationsInstancesSnapshotsService struct {
   214  	s *Service
   215  }
   216  
   217  func NewProjectsLocationsOperationsService(s *Service) *ProjectsLocationsOperationsService {
   218  	rs := &ProjectsLocationsOperationsService{s: s}
   219  	return rs
   220  }
   221  
   222  type ProjectsLocationsOperationsService struct {
   223  	s *Service
   224  }
   225  
   226  // Backup: A Filestore backup.
   227  type Backup struct {
   228  	// CapacityGb: Output only. Capacity of the source file share when the backup
   229  	// was created.
   230  	CapacityGb int64 `json:"capacityGb,omitempty,string"`
   231  	// CreateTime: Output only. The time when the backup was created.
   232  	CreateTime string `json:"createTime,omitempty"`
   233  	// Description: A description of the backup with 2048 characters or less.
   234  	// Requests with longer descriptions will be rejected.
   235  	Description string `json:"description,omitempty"`
   236  	// DownloadBytes: Output only. Amount of bytes that will be downloaded if the
   237  	// backup is restored. This may be different than storage bytes, since
   238  	// sequential backups of the same disk will share storage.
   239  	DownloadBytes int64 `json:"downloadBytes,omitempty,string"`
   240  	// KmsKey: Immutable. KMS key name used for data encryption.
   241  	KmsKey string `json:"kmsKey,omitempty"`
   242  	// Labels: Resource labels to represent user provided metadata.
   243  	Labels map[string]string `json:"labels,omitempty"`
   244  	// Name: Output only. The resource name of the backup, in the format
   245  	// `projects/{project_number}/locations/{location_id}/backups/{backup_id}`.
   246  	Name string `json:"name,omitempty"`
   247  	// SatisfiesPzi: Output only. Reserved for future use.
   248  	SatisfiesPzi bool `json:"satisfiesPzi,omitempty"`
   249  	// SatisfiesPzs: Output only. Reserved for future use.
   250  	SatisfiesPzs bool `json:"satisfiesPzs,omitempty"`
   251  	// SourceFileShare: Name of the file share in the source Filestore instance
   252  	// that the backup is created from.
   253  	SourceFileShare string `json:"sourceFileShare,omitempty"`
   254  	// SourceInstance: The resource name of the source Filestore instance, in the
   255  	// format
   256  	// `projects/{project_number}/locations/{location_id}/instances/{instance_id}`,
   257  	// used to create this backup.
   258  	SourceInstance string `json:"sourceInstance,omitempty"`
   259  	// SourceInstanceTier: Output only. The service tier of the source Filestore
   260  	// instance that this backup is created from.
   261  	//
   262  	// Possible values:
   263  	//   "TIER_UNSPECIFIED" - Not set.
   264  	//   "STANDARD" - STANDARD tier. BASIC_HDD is the preferred term for this tier.
   265  	//   "PREMIUM" - PREMIUM tier. BASIC_SSD is the preferred term for this tier.
   266  	//   "BASIC_HDD" - BASIC instances offer a maximum capacity of 63.9 TB.
   267  	// BASIC_HDD is an alias for STANDARD Tier, offering economical performance
   268  	// backed by HDD.
   269  	//   "BASIC_SSD" - BASIC instances offer a maximum capacity of 63.9 TB.
   270  	// BASIC_SSD is an alias for PREMIUM Tier, and offers improved performance
   271  	// backed by SSD.
   272  	//   "HIGH_SCALE_SSD" - HIGH_SCALE instances offer expanded capacity and
   273  	// performance scaling capabilities.
   274  	//   "ENTERPRISE" - ENTERPRISE instances offer the features and availability
   275  	// needed for mission-critical workloads.
   276  	//   "ZONAL" - ZONAL instances offer expanded capacity and performance scaling
   277  	// capabilities.
   278  	//   "REGIONAL" - REGIONAL instances offer the features and availability needed
   279  	// for mission-critical workloads.
   280  	SourceInstanceTier string `json:"sourceInstanceTier,omitempty"`
   281  	// State: Output only. The backup state.
   282  	//
   283  	// Possible values:
   284  	//   "STATE_UNSPECIFIED" - State not set.
   285  	//   "CREATING" - Backup is being created.
   286  	//   "FINALIZING" - Backup has been taken and the operation is being finalized.
   287  	// At this point, changes to the file share will not be reflected in the
   288  	// backup.
   289  	//   "READY" - Backup is available for use.
   290  	//   "DELETING" - Backup is being deleted.
   291  	//   "INVALID" - Backup is not valid and cannot be used for creating new
   292  	// instances or restoring existing instances.
   293  	State string `json:"state,omitempty"`
   294  	// StorageBytes: Output only. The size of the storage used by the backup. As
   295  	// backups share storage, this number is expected to change with backup
   296  	// creation/deletion.
   297  	StorageBytes int64 `json:"storageBytes,omitempty,string"`
   298  
   299  	// ServerResponse contains the HTTP response code and headers from the server.
   300  	googleapi.ServerResponse `json:"-"`
   301  	// ForceSendFields is a list of field names (e.g. "CapacityGb") to
   302  	// unconditionally include in API requests. By default, fields with empty or
   303  	// default values are omitted from API requests. See
   304  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   305  	// details.
   306  	ForceSendFields []string `json:"-"`
   307  	// NullFields is a list of field names (e.g. "CapacityGb") to include in API
   308  	// requests with the JSON null value. By default, fields with empty values are
   309  	// omitted from API requests. See
   310  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   311  	NullFields []string `json:"-"`
   312  }
   313  
   314  func (s *Backup) MarshalJSON() ([]byte, error) {
   315  	type NoMethod Backup
   316  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   317  }
   318  
   319  // CancelOperationRequest: The request message for Operations.CancelOperation.
   320  type CancelOperationRequest struct {
   321  }
   322  
   323  // DailyCycle: Time window specified for daily operations.
   324  type DailyCycle struct {
   325  	// Duration: Output only. Duration of the time window, set by service producer.
   326  	Duration string `json:"duration,omitempty"`
   327  	// StartTime: Time within the day to start the operations.
   328  	StartTime *TimeOfDay `json:"startTime,omitempty"`
   329  	// ForceSendFields is a list of field names (e.g. "Duration") to
   330  	// unconditionally include in API requests. By default, fields with empty or
   331  	// default values are omitted from API requests. See
   332  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   333  	// details.
   334  	ForceSendFields []string `json:"-"`
   335  	// NullFields is a list of field names (e.g. "Duration") to include in API
   336  	// requests with the JSON null value. By default, fields with empty values are
   337  	// omitted from API requests. See
   338  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   339  	NullFields []string `json:"-"`
   340  }
   341  
   342  func (s *DailyCycle) MarshalJSON() ([]byte, error) {
   343  	type NoMethod DailyCycle
   344  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   345  }
   346  
   347  // Date: Represents a whole or partial calendar date, such as a birthday. The
   348  // time of day and time zone are either specified elsewhere or are
   349  // insignificant. The date is relative to the Gregorian Calendar. This can
   350  // represent one of the following: * A full date, with non-zero year, month,
   351  // and day values. * A month and day, with a zero year (for example, an
   352  // anniversary). * A year on its own, with a zero month and a zero day. * A
   353  // year and month, with a zero day (for example, a credit card expiration
   354  // date). Related types: * google.type.TimeOfDay * google.type.DateTime *
   355  // google.protobuf.Timestamp
   356  type Date struct {
   357  	// Day: Day of a month. Must be from 1 to 31 and valid for the year and month,
   358  	// or 0 to specify a year by itself or a year and month where the day isn't
   359  	// significant.
   360  	Day int64 `json:"day,omitempty"`
   361  	// Month: Month of a year. Must be from 1 to 12, or 0 to specify a year without
   362  	// a month and day.
   363  	Month int64 `json:"month,omitempty"`
   364  	// Year: Year of the date. Must be from 1 to 9999, or 0 to specify a date
   365  	// without a year.
   366  	Year int64 `json:"year,omitempty"`
   367  	// ForceSendFields is a list of field names (e.g. "Day") to unconditionally
   368  	// include in API requests. By default, fields with empty or default values are
   369  	// omitted from API requests. See
   370  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   371  	// details.
   372  	ForceSendFields []string `json:"-"`
   373  	// NullFields is a list of field names (e.g. "Day") to include in API requests
   374  	// with the JSON null value. By default, fields with empty values are omitted
   375  	// from API requests. See
   376  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   377  	NullFields []string `json:"-"`
   378  }
   379  
   380  func (s *Date) MarshalJSON() ([]byte, error) {
   381  	type NoMethod Date
   382  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   383  }
   384  
   385  // DenyMaintenancePeriod: DenyMaintenancePeriod definition. Maintenance is
   386  // forbidden within the deny period. The start_date must be less than the
   387  // end_date.
   388  type DenyMaintenancePeriod struct {
   389  	// EndDate: Deny period end date. This can be: * A full date, with non-zero
   390  	// year, month and day values. * A month and day value, with a zero year.
   391  	// Allows recurring deny periods each year. Date matching this period will have
   392  	// to be before the end.
   393  	EndDate *Date `json:"endDate,omitempty"`
   394  	// StartDate: Deny period start date. This can be: * A full date, with non-zero
   395  	// year, month and day values. * A month and day value, with a zero year.
   396  	// Allows recurring deny periods each year. Date matching this period will have
   397  	// to be the same or after the start.
   398  	StartDate *Date `json:"startDate,omitempty"`
   399  	// Time: Time in UTC when the Blackout period starts on start_date and ends on
   400  	// end_date. This can be: * Full time. * All zeros for 00:00:00 UTC
   401  	Time *TimeOfDay `json:"time,omitempty"`
   402  	// ForceSendFields is a list of field names (e.g. "EndDate") to unconditionally
   403  	// include in API requests. By default, fields with empty or default values are
   404  	// omitted from API requests. See
   405  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   406  	// details.
   407  	ForceSendFields []string `json:"-"`
   408  	// NullFields is a list of field names (e.g. "EndDate") to include in API
   409  	// requests with the JSON null value. By default, fields with empty values are
   410  	// omitted from API requests. See
   411  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   412  	NullFields []string `json:"-"`
   413  }
   414  
   415  func (s *DenyMaintenancePeriod) MarshalJSON() ([]byte, error) {
   416  	type NoMethod DenyMaintenancePeriod
   417  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   418  }
   419  
   420  // Empty: A generic empty message that you can re-use to avoid defining
   421  // duplicated empty messages in your APIs. A typical example is to use it as
   422  // the request or the response type of an API method. For instance: service Foo
   423  // { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
   424  type Empty struct {
   425  	// ServerResponse contains the HTTP response code and headers from the server.
   426  	googleapi.ServerResponse `json:"-"`
   427  }
   428  
   429  // FileShareConfig: File share configuration for the instance.
   430  type FileShareConfig struct {
   431  	// CapacityGb: File share capacity in gigabytes (GB). Filestore defines 1 GB as
   432  	// 1024^3 bytes.
   433  	CapacityGb int64 `json:"capacityGb,omitempty,string"`
   434  	// Name: Required. The name of the file share. Must use 1-16 characters for the
   435  	// basic service tier and 1-63 characters for all other service tiers. Must use
   436  	// lowercase letters, numbers, or underscores `[a-z0-9_]`. Must start with a
   437  	// letter. Immutable.
   438  	Name string `json:"name,omitempty"`
   439  	// NfsExportOptions: Nfs Export Options. There is a limit of 10 export options
   440  	// per file share.
   441  	NfsExportOptions []*NfsExportOptions `json:"nfsExportOptions,omitempty"`
   442  	// SourceBackup: The resource name of the backup, in the format
   443  	// `projects/{project_number}/locations/{location_id}/backups/{backup_id}`,
   444  	// that this file share has been restored from.
   445  	SourceBackup string `json:"sourceBackup,omitempty"`
   446  	// ForceSendFields is a list of field names (e.g. "CapacityGb") to
   447  	// unconditionally include in API requests. By default, fields with empty or
   448  	// default values are omitted from API requests. See
   449  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   450  	// details.
   451  	ForceSendFields []string `json:"-"`
   452  	// NullFields is a list of field names (e.g. "CapacityGb") to include in API
   453  	// requests with the JSON null value. By default, fields with empty values are
   454  	// omitted from API requests. See
   455  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   456  	NullFields []string `json:"-"`
   457  }
   458  
   459  func (s *FileShareConfig) MarshalJSON() ([]byte, error) {
   460  	type NoMethod FileShareConfig
   461  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   462  }
   463  
   464  // GoogleCloudSaasacceleratorManagementProvidersV1Instance: Instance represents
   465  // the interface for SLM services to actuate the state of control plane
   466  // resources. Example Instance in JSON, where consumer-project-number=123456,
   467  // producer-project-id=cloud-sql: ```json Instance: { "name":
   468  // "projects/123456/locations/us-east1/instances/prod-instance", "create_time":
   469  // { "seconds": 1526406431, }, "labels": { "env": "prod", "foo": "bar" },
   470  // "state": READY, "software_versions": { "software_update":
   471  // "cloud-sql-09-28-2018", }, "maintenance_policy_names": { "UpdatePolicy":
   472  // "projects/123456/locations/us-east1/maintenancePolicies/prod-update-policy",
   473  // } "tenant_project_id": "cloud-sql-test-tenant", "producer_metadata": {
   474  // "cloud-sql-tier": "basic", "cloud-sql-instance-size": "1G", },
   475  // "provisioned_resources": [ { "resource-type": "compute-instance",
   476  // "resource-url":
   477  // "https://www.googleapis.com/compute/v1/projects/cloud-sql/zones/us-east1-b/in
   478  // stances/vm-1", } ], "maintenance_schedules": { "csa_rollout": {
   479  // "start_time": { "seconds": 1526406431, }, "end_time": { "seconds":
   480  // 1535406431, }, }, "ncsa_rollout": { "start_time": { "seconds": 1526406431,
   481  // }, "end_time": { "seconds": 1535406431, }, } }, "consumer_defined_name":
   482  // "my-sql-instance1", } ``` LINT.IfChange
   483  type GoogleCloudSaasacceleratorManagementProvidersV1Instance struct {
   484  	// ConsumerDefinedName: consumer_defined_name is the name of the instance set
   485  	// by the service consumers. Generally this is different from the `name` field
   486  	// which reperesents the system-assigned id of the instance which the service
   487  	// consumers do not recognize. This is a required field for tenants onboarding
   488  	// to Maintenance Window notifications
   489  	// (go/slm-rollout-maintenance-policies#prerequisites).
   490  	ConsumerDefinedName string `json:"consumerDefinedName,omitempty"`
   491  	// CreateTime: Output only. Timestamp when the resource was created.
   492  	CreateTime string `json:"createTime,omitempty"`
   493  	// InstanceType: Optional. The instance_type of this instance of format:
   494  	// projects/{project_number}/locations/{location_id}/instanceTypes/{instance_typ
   495  	// e_id}. Instance Type represents a high-level tier or SKU of the service that
   496  	// this instance belong to. When enabled(eg: Maintenance Rollout), Rollout uses
   497  	// 'instance_type' along with 'software_versions' to determine whether instance
   498  	// needs an update or not.
   499  	InstanceType string `json:"instanceType,omitempty"`
   500  	// Labels: Optional. Resource labels to represent user provided metadata. Each
   501  	// label is a key-value pair, where both the key and the value are arbitrary
   502  	// strings provided by the user.
   503  	Labels map[string]string `json:"labels,omitempty"`
   504  	// MaintenancePolicyNames: Optional. The MaintenancePolicies that have been
   505  	// attached to the instance. The key must be of the type name of the oneof
   506  	// policy name defined in MaintenancePolicy, and the referenced policy must
   507  	// define the same policy type. For details, please refer to go/mr-user-guide.
   508  	// Should not be set if maintenance_settings.maintenance_policies is set.
   509  	MaintenancePolicyNames map[string]string `json:"maintenancePolicyNames,omitempty"`
   510  	// MaintenanceSchedules: The MaintenanceSchedule contains the scheduling
   511  	// information of published maintenance schedule with same key as
   512  	// software_versions.
   513  	MaintenanceSchedules map[string]GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSchedule `json:"maintenanceSchedules,omitempty"`
   514  	// MaintenanceSettings: Optional. The MaintenanceSettings associated with
   515  	// instance.
   516  	MaintenanceSettings *GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSettings `json:"maintenanceSettings,omitempty"`
   517  	// Name: Unique name of the resource. It uses the form:
   518  	// `projects/{project_number}/locations/{location_id}/instances/{instance_id}`
   519  	// Note: This name is passed, stored and logged across the rollout system. So
   520  	// use of consumer project_id or any other consumer PII in the name is strongly
   521  	// discouraged for wipeout (go/wipeout) compliance. See
   522  	// go/elysium/project_ids#storage-guidance for more details.
   523  	Name string `json:"name,omitempty"`
   524  	// NotificationParameters: Optional. notification_parameter are information
   525  	// that service producers may like to include that is not relevant to Rollout.
   526  	// This parameter will only be passed to Gamma and Cloud Logging for
   527  	// notification/logging purpose.
   528  	NotificationParameters map[string]GoogleCloudSaasacceleratorManagementProvidersV1NotificationParameter `json:"notificationParameters,omitempty"`
   529  	// ProducerMetadata: Output only. Custom string attributes used primarily to
   530  	// expose producer-specific information in monitoring dashboards. See
   531  	// go/get-instance-metadata.
   532  	ProducerMetadata map[string]string `json:"producerMetadata,omitempty"`
   533  	// ProvisionedResources: Output only. The list of data plane resources
   534  	// provisioned for this instance, e.g. compute VMs. See
   535  	// go/get-instance-metadata.
   536  	ProvisionedResources []*GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource `json:"provisionedResources,omitempty"`
   537  	// SlmInstanceTemplate: Link to the SLM instance template. Only populated when
   538  	// updating SLM instances via SSA's Actuation service adaptor. Service
   539  	// producers with custom control plane (e.g. Cloud SQL) doesn't need to
   540  	// populate this field. Instead they should use software_versions.
   541  	SlmInstanceTemplate string `json:"slmInstanceTemplate,omitempty"`
   542  	// SloMetadata: Output only. SLO metadata for instance classification in the
   543  	// Standardized dataplane SLO platform. See go/cloud-ssa-standard-slo for
   544  	// feature description.
   545  	SloMetadata *GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata `json:"sloMetadata,omitempty"`
   546  	// SoftwareVersions: Software versions that are used to deploy this instance.
   547  	// This can be mutated by rollout services.
   548  	SoftwareVersions map[string]string `json:"softwareVersions,omitempty"`
   549  	// State: Output only. Current lifecycle state of the resource (e.g. if it's
   550  	// being created or ready to use).
   551  	//
   552  	// Possible values:
   553  	//   "STATE_UNSPECIFIED" - Unspecified state.
   554  	//   "CREATING" - Instance is being created.
   555  	//   "READY" - Instance has been created and is ready to use.
   556  	//   "UPDATING" - Instance is being updated.
   557  	//   "REPAIRING" - Instance is unheathy and under repair.
   558  	//   "DELETING" - Instance is being deleted.
   559  	//   "ERROR" - Instance encountered an error and is in indeterministic state.
   560  	State string `json:"state,omitempty"`
   561  	// TenantProjectId: Output only. ID of the associated GCP tenant project. See
   562  	// go/get-instance-metadata.
   563  	TenantProjectId string `json:"tenantProjectId,omitempty"`
   564  	// UpdateTime: Output only. Timestamp when the resource was last modified.
   565  	UpdateTime string `json:"updateTime,omitempty"`
   566  	// ForceSendFields is a list of field names (e.g. "ConsumerDefinedName") to
   567  	// unconditionally include in API requests. By default, fields with empty or
   568  	// default values are omitted from API requests. See
   569  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   570  	// details.
   571  	ForceSendFields []string `json:"-"`
   572  	// NullFields is a list of field names (e.g. "ConsumerDefinedName") to include
   573  	// in API requests with the JSON null value. By default, fields with empty
   574  	// values are omitted from API requests. See
   575  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   576  	NullFields []string `json:"-"`
   577  }
   578  
   579  func (s *GoogleCloudSaasacceleratorManagementProvidersV1Instance) MarshalJSON() ([]byte, error) {
   580  	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1Instance
   581  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   582  }
   583  
   584  // GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSchedule:
   585  // Maintenance schedule which is exposed to customer and potentially end user,
   586  // indicating published upcoming future maintenance schedule
   587  type GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSchedule struct {
   588  	// CanReschedule: This field is deprecated, and will be always set to true
   589  	// since reschedule can happen multiple times now. This field should not be
   590  	// removed until all service producers remove this for their customers.
   591  	CanReschedule bool `json:"canReschedule,omitempty"`
   592  	// EndTime: The scheduled end time for the maintenance.
   593  	EndTime string `json:"endTime,omitempty"`
   594  	// RolloutManagementPolicy: The rollout management policy this maintenance
   595  	// schedule is associated with. When doing reschedule update request, the
   596  	// reschedule should be against this given policy.
   597  	RolloutManagementPolicy string `json:"rolloutManagementPolicy,omitempty"`
   598  	// ScheduleDeadlineTime: schedule_deadline_time is the time deadline any
   599  	// schedule start time cannot go beyond, including reschedule. It's normally
   600  	// the initial schedule start time plus maintenance window length (1 day or 1
   601  	// week). Maintenance cannot be scheduled to start beyond this deadline.
   602  	ScheduleDeadlineTime string `json:"scheduleDeadlineTime,omitempty"`
   603  	// StartTime: The scheduled start time for the maintenance.
   604  	StartTime string `json:"startTime,omitempty"`
   605  	// ForceSendFields is a list of field names (e.g. "CanReschedule") to
   606  	// unconditionally include in API requests. By default, fields with empty or
   607  	// default values are omitted from API requests. See
   608  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   609  	// details.
   610  	ForceSendFields []string `json:"-"`
   611  	// NullFields is a list of field names (e.g. "CanReschedule") to include in API
   612  	// requests with the JSON null value. By default, fields with empty values are
   613  	// omitted from API requests. See
   614  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   615  	NullFields []string `json:"-"`
   616  }
   617  
   618  func (s *GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSchedule) MarshalJSON() ([]byte, error) {
   619  	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSchedule
   620  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   621  }
   622  
   623  // GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSettings:
   624  // Maintenance settings associated with instance. Allows service producers and
   625  // end users to assign settings that controls maintenance on this instance.
   626  type GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSettings struct {
   627  	// Exclude: Optional. Exclude instance from maintenance. When true, rollout
   628  	// service will not attempt maintenance on the instance. Rollout service will
   629  	// include the instance in reported rollout progress as not attempted.
   630  	Exclude bool `json:"exclude,omitempty"`
   631  	// IsRollback: Optional. If the update call is triggered from rollback, set the
   632  	// value as true.
   633  	IsRollback bool `json:"isRollback,omitempty"`
   634  	// MaintenancePolicies: Optional. The MaintenancePolicies that have been
   635  	// attached to the instance. The key must be of the type name of the oneof
   636  	// policy name defined in MaintenancePolicy, and the embedded policy must
   637  	// define the same policy type. For details, please refer to go/mr-user-guide.
   638  	// Should not be set if maintenance_policy_names is set. If only the name is
   639  	// needed, then only populate MaintenancePolicy.name.
   640  	MaintenancePolicies map[string]MaintenancePolicy `json:"maintenancePolicies,omitempty"`
   641  	// ForceSendFields is a list of field names (e.g. "Exclude") to unconditionally
   642  	// include in API requests. By default, fields with empty or default values are
   643  	// omitted from API requests. See
   644  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   645  	// details.
   646  	ForceSendFields []string `json:"-"`
   647  	// NullFields is a list of field names (e.g. "Exclude") to include in API
   648  	// requests with the JSON null value. By default, fields with empty values are
   649  	// omitted from API requests. See
   650  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   651  	NullFields []string `json:"-"`
   652  }
   653  
   654  func (s *GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSettings) MarshalJSON() ([]byte, error) {
   655  	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSettings
   656  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   657  }
   658  
   659  // GoogleCloudSaasacceleratorManagementProvidersV1NodeSloMetadata: Node
   660  // information for custom per-node SLO implementations. SSA does not support
   661  // per-node SLO, but producers can populate per-node information in SloMetadata
   662  // for custom precomputations. SSA Eligibility Exporter will emit per-node
   663  // metric based on this information.
   664  type GoogleCloudSaasacceleratorManagementProvidersV1NodeSloMetadata struct {
   665  	// Location: The location of the node, if different from instance location.
   666  	Location string `json:"location,omitempty"`
   667  	// NodeId: The id of the node. This should be equal to
   668  	// SaasInstanceNode.node_id.
   669  	NodeId string `json:"nodeId,omitempty"`
   670  	// PerSliEligibility: If present, this will override eligibility for the node
   671  	// coming from instance or exclusions for specified SLIs.
   672  	PerSliEligibility *GoogleCloudSaasacceleratorManagementProvidersV1PerSliSloEligibility `json:"perSliEligibility,omitempty"`
   673  	// ForceSendFields is a list of field names (e.g. "Location") to
   674  	// unconditionally include in API requests. By default, fields with empty or
   675  	// default values are omitted from API requests. See
   676  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   677  	// details.
   678  	ForceSendFields []string `json:"-"`
   679  	// NullFields is a list of field names (e.g. "Location") to include in API
   680  	// requests with the JSON null value. By default, fields with empty values are
   681  	// omitted from API requests. See
   682  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   683  	NullFields []string `json:"-"`
   684  }
   685  
   686  func (s *GoogleCloudSaasacceleratorManagementProvidersV1NodeSloMetadata) MarshalJSON() ([]byte, error) {
   687  	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1NodeSloMetadata
   688  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   689  }
   690  
   691  // GoogleCloudSaasacceleratorManagementProvidersV1NotificationParameter:
   692  // Contains notification related data.
   693  type GoogleCloudSaasacceleratorManagementProvidersV1NotificationParameter struct {
   694  	// Values: Optional. Array of string values. e.g. instance's replica
   695  	// information.
   696  	Values []string `json:"values,omitempty"`
   697  	// ForceSendFields is a list of field names (e.g. "Values") to unconditionally
   698  	// include in API requests. By default, fields with empty or default values are
   699  	// omitted from API requests. See
   700  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   701  	// details.
   702  	ForceSendFields []string `json:"-"`
   703  	// NullFields is a list of field names (e.g. "Values") to include in API
   704  	// requests with the JSON null value. By default, fields with empty values are
   705  	// omitted from API requests. See
   706  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   707  	NullFields []string `json:"-"`
   708  }
   709  
   710  func (s *GoogleCloudSaasacceleratorManagementProvidersV1NotificationParameter) MarshalJSON() ([]byte, error) {
   711  	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1NotificationParameter
   712  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   713  }
   714  
   715  // GoogleCloudSaasacceleratorManagementProvidersV1PerSliSloEligibility:
   716  // PerSliSloEligibility is a mapping from an SLI name to eligibility.
   717  type GoogleCloudSaasacceleratorManagementProvidersV1PerSliSloEligibility struct {
   718  	// Eligibilities: An entry in the eligibilities map specifies an eligibility
   719  	// for a particular SLI for the given instance. The SLI key in the name must be
   720  	// a valid SLI name specified in the Eligibility Exporter binary flags
   721  	// otherwise an error will be emitted by Eligibility Exporter and the oncaller
   722  	// will be alerted. If an SLI has been defined in the binary flags but the
   723  	// eligibilities map does not contain it, the corresponding SLI time series
   724  	// will not be emitted by the Eligibility Exporter. This ensures a smooth
   725  	// rollout and compatibility between the data produced by different versions of
   726  	// the Eligibility Exporters. If eligibilities map contains a key for an SLI
   727  	// which has not been declared in the binary flags, there will be an error
   728  	// message emitted in the Eligibility Exporter log and the metric for the SLI
   729  	// in question will not be emitted.
   730  	Eligibilities map[string]GoogleCloudSaasacceleratorManagementProvidersV1SloEligibility `json:"eligibilities,omitempty"`
   731  	// ForceSendFields is a list of field names (e.g. "Eligibilities") to
   732  	// unconditionally include in API requests. By default, fields with empty or
   733  	// default values are omitted from API requests. See
   734  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   735  	// details.
   736  	ForceSendFields []string `json:"-"`
   737  	// NullFields is a list of field names (e.g. "Eligibilities") to include in API
   738  	// requests with the JSON null value. By default, fields with empty values are
   739  	// omitted from API requests. See
   740  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   741  	NullFields []string `json:"-"`
   742  }
   743  
   744  func (s *GoogleCloudSaasacceleratorManagementProvidersV1PerSliSloEligibility) MarshalJSON() ([]byte, error) {
   745  	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1PerSliSloEligibility
   746  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   747  }
   748  
   749  // GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource:
   750  // Describes provisioned dataplane resources.
   751  type GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource struct {
   752  	// ResourceType: Type of the resource. This can be either a GCP resource or a
   753  	// custom one (e.g. another cloud provider's VM). For GCP compute resources use
   754  	// singular form of the names listed in GCP compute API documentation
   755  	// (https://cloud.google.com/compute/docs/reference/rest/v1/), prefixed with
   756  	// 'compute-', for example: 'compute-instance', 'compute-disk',
   757  	// 'compute-autoscaler'.
   758  	ResourceType string `json:"resourceType,omitempty"`
   759  	// ResourceUrl: URL identifying the resource, e.g.
   760  	// "https://www.googleapis.com/compute/v1/projects/...)".
   761  	ResourceUrl string `json:"resourceUrl,omitempty"`
   762  	// ForceSendFields is a list of field names (e.g. "ResourceType") to
   763  	// unconditionally include in API requests. By default, fields with empty or
   764  	// default values are omitted from API requests. See
   765  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   766  	// details.
   767  	ForceSendFields []string `json:"-"`
   768  	// NullFields is a list of field names (e.g. "ResourceType") to include in API
   769  	// requests with the JSON null value. By default, fields with empty values are
   770  	// omitted from API requests. See
   771  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   772  	NullFields []string `json:"-"`
   773  }
   774  
   775  func (s *GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource) MarshalJSON() ([]byte, error) {
   776  	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource
   777  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   778  }
   779  
   780  // GoogleCloudSaasacceleratorManagementProvidersV1SloEligibility:
   781  // SloEligibility is a tuple containing eligibility value: true if an instance
   782  // is eligible for SLO calculation or false if it should be excluded from all
   783  // SLO-related calculations along with a user-defined reason.
   784  type GoogleCloudSaasacceleratorManagementProvidersV1SloEligibility struct {
   785  	// Eligible: Whether an instance is eligible or ineligible.
   786  	Eligible bool `json:"eligible,omitempty"`
   787  	// Reason: User-defined reason for the current value of instance eligibility.
   788  	// Usually, this can be directly mapped to the internal state. An empty reason
   789  	// is allowed.
   790  	Reason string `json:"reason,omitempty"`
   791  	// ForceSendFields is a list of field names (e.g. "Eligible") to
   792  	// unconditionally include in API requests. By default, fields with empty or
   793  	// default values are omitted from API requests. See
   794  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   795  	// details.
   796  	ForceSendFields []string `json:"-"`
   797  	// NullFields is a list of field names (e.g. "Eligible") to include in API
   798  	// requests with the JSON null value. By default, fields with empty values are
   799  	// omitted from API requests. See
   800  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   801  	NullFields []string `json:"-"`
   802  }
   803  
   804  func (s *GoogleCloudSaasacceleratorManagementProvidersV1SloEligibility) MarshalJSON() ([]byte, error) {
   805  	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1SloEligibility
   806  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   807  }
   808  
   809  // GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata: SloMetadata
   810  // contains resources required for proper SLO classification of the instance.
   811  type GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata struct {
   812  	// Nodes: Optional. List of nodes. Some producers need to use per-node metadata
   813  	// to calculate SLO. This field allows such producers to publish per-node SLO
   814  	// meta data, which will be consumed by SSA Eligibility Exporter and published
   815  	// in the form of per node metric to Monarch.
   816  	Nodes []*GoogleCloudSaasacceleratorManagementProvidersV1NodeSloMetadata `json:"nodes,omitempty"`
   817  	// PerSliEligibility: Optional. Multiple per-instance SLI eligibilities which
   818  	// apply for individual SLIs.
   819  	PerSliEligibility *GoogleCloudSaasacceleratorManagementProvidersV1PerSliSloEligibility `json:"perSliEligibility,omitempty"`
   820  	// Tier: Name of the SLO tier the Instance belongs to. This name will be
   821  	// expected to match the tiers specified in the service SLO configuration.
   822  	// Field is mandatory and must not be empty.
   823  	Tier string `json:"tier,omitempty"`
   824  	// ForceSendFields is a list of field names (e.g. "Nodes") to unconditionally
   825  	// include in API requests. By default, fields with empty or default values are
   826  	// omitted from API requests. See
   827  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   828  	// details.
   829  	ForceSendFields []string `json:"-"`
   830  	// NullFields is a list of field names (e.g. "Nodes") to include in API
   831  	// requests with the JSON null value. By default, fields with empty values are
   832  	// omitted from API requests. See
   833  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   834  	NullFields []string `json:"-"`
   835  }
   836  
   837  func (s *GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata) MarshalJSON() ([]byte, error) {
   838  	type NoMethod GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata
   839  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   840  }
   841  
   842  // Instance: A Filestore instance.
   843  type Instance struct {
   844  	// CreateTime: Output only. The time when the instance was created.
   845  	CreateTime string `json:"createTime,omitempty"`
   846  	// Description: The description of the instance (2048 characters or less).
   847  	Description string `json:"description,omitempty"`
   848  	// Etag: Server-specified ETag for the instance resource to prevent
   849  	// simultaneous updates from overwriting each other.
   850  	Etag string `json:"etag,omitempty"`
   851  	// FileShares: File system shares on the instance. For this version, only a
   852  	// single file share is supported.
   853  	FileShares []*FileShareConfig `json:"fileShares,omitempty"`
   854  	// KmsKeyName: KMS key name used for data encryption.
   855  	KmsKeyName string `json:"kmsKeyName,omitempty"`
   856  	// Labels: Resource labels to represent user provided metadata.
   857  	Labels map[string]string `json:"labels,omitempty"`
   858  	// Name: Output only. The resource name of the instance, in the format
   859  	// `projects/{project}/locations/{location}/instances/{instance}`.
   860  	Name string `json:"name,omitempty"`
   861  	// Networks: VPC networks to which the instance is connected. For this version,
   862  	// only a single network is supported.
   863  	Networks []*NetworkConfig `json:"networks,omitempty"`
   864  	// SatisfiesPzi: Output only. Reserved for future use.
   865  	SatisfiesPzi bool `json:"satisfiesPzi,omitempty"`
   866  	// SatisfiesPzs: Output only. Reserved for future use.
   867  	SatisfiesPzs bool `json:"satisfiesPzs,omitempty"`
   868  	// State: Output only. The instance state.
   869  	//
   870  	// Possible values:
   871  	//   "STATE_UNSPECIFIED" - State not set.
   872  	//   "CREATING" - The instance is being created.
   873  	//   "READY" - The instance is available for use.
   874  	//   "REPAIRING" - Work is being done on the instance. You can get further
   875  	// details from the `statusMessage` field of the `Instance` resource.
   876  	//   "DELETING" - The instance is shutting down.
   877  	//   "ERROR" - The instance is experiencing an issue and might be unusable. You
   878  	// can get further details from the `statusMessage` field of the `Instance`
   879  	// resource.
   880  	//   "RESTORING" - The instance is restoring a backup to an existing file share
   881  	// and may be unusable during this time.
   882  	//   "SUSPENDED" - The instance is suspended. You can get further details from
   883  	// the `suspension_reasons` field of the `Instance` resource.
   884  	//   "SUSPENDING" - The instance is in the process of becoming suspended.
   885  	//   "RESUMING" - The instance is in the process of becoming active.
   886  	//   "REVERTING" - The instance is reverting to a snapshot.
   887  	State string `json:"state,omitempty"`
   888  	// StatusMessage: Output only. Additional information about the instance state,
   889  	// if available.
   890  	StatusMessage string `json:"statusMessage,omitempty"`
   891  	// SuspensionReasons: Output only. Field indicates all the reasons the instance
   892  	// is in "SUSPENDED" state.
   893  	//
   894  	// Possible values:
   895  	//   "SUSPENSION_REASON_UNSPECIFIED" - Not set.
   896  	//   "KMS_KEY_ISSUE" - The KMS key used by the instance is either revoked or
   897  	// denied access to.
   898  	SuspensionReasons []string `json:"suspensionReasons,omitempty"`
   899  	// Tier: The service tier of the instance.
   900  	//
   901  	// Possible values:
   902  	//   "TIER_UNSPECIFIED" - Not set.
   903  	//   "STANDARD" - STANDARD tier. BASIC_HDD is the preferred term for this tier.
   904  	//   "PREMIUM" - PREMIUM tier. BASIC_SSD is the preferred term for this tier.
   905  	//   "BASIC_HDD" - BASIC instances offer a maximum capacity of 63.9 TB.
   906  	// BASIC_HDD is an alias for STANDARD Tier, offering economical performance
   907  	// backed by HDD.
   908  	//   "BASIC_SSD" - BASIC instances offer a maximum capacity of 63.9 TB.
   909  	// BASIC_SSD is an alias for PREMIUM Tier, and offers improved performance
   910  	// backed by SSD.
   911  	//   "HIGH_SCALE_SSD" - HIGH_SCALE instances offer expanded capacity and
   912  	// performance scaling capabilities.
   913  	//   "ENTERPRISE" - ENTERPRISE instances offer the features and availability
   914  	// needed for mission-critical workloads.
   915  	//   "ZONAL" - ZONAL instances offer expanded capacity and performance scaling
   916  	// capabilities.
   917  	//   "REGIONAL" - REGIONAL instances offer the features and availability needed
   918  	// for mission-critical workloads.
   919  	Tier string `json:"tier,omitempty"`
   920  
   921  	// ServerResponse contains the HTTP response code and headers from the server.
   922  	googleapi.ServerResponse `json:"-"`
   923  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
   924  	// unconditionally include in API requests. By default, fields with empty or
   925  	// default values are omitted from API requests. See
   926  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   927  	// details.
   928  	ForceSendFields []string `json:"-"`
   929  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
   930  	// requests with the JSON null value. By default, fields with empty values are
   931  	// omitted from API requests. See
   932  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   933  	NullFields []string `json:"-"`
   934  }
   935  
   936  func (s *Instance) MarshalJSON() ([]byte, error) {
   937  	type NoMethod Instance
   938  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   939  }
   940  
   941  // ListBackupsResponse: ListBackupsResponse is the result of
   942  // ListBackupsRequest.
   943  type ListBackupsResponse struct {
   944  	// Backups: A list of backups in the project for the specified location. If the
   945  	// `{location}` value in the request is "-", the response contains a list of
   946  	// backups from all locations. If any location is unreachable, the response
   947  	// will only return backups in reachable locations and the "unreachable" field
   948  	// will be populated with a list of unreachable locations.
   949  	Backups []*Backup `json:"backups,omitempty"`
   950  	// NextPageToken: The token you can use to retrieve the next page of results.
   951  	// Not returned if there are no more results in the list.
   952  	NextPageToken string `json:"nextPageToken,omitempty"`
   953  	// Unreachable: Locations that could not be reached.
   954  	Unreachable []string `json:"unreachable,omitempty"`
   955  
   956  	// ServerResponse contains the HTTP response code and headers from the server.
   957  	googleapi.ServerResponse `json:"-"`
   958  	// ForceSendFields is a list of field names (e.g. "Backups") to unconditionally
   959  	// include in API requests. By default, fields with empty or default values are
   960  	// omitted from API requests. See
   961  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   962  	// details.
   963  	ForceSendFields []string `json:"-"`
   964  	// NullFields is a list of field names (e.g. "Backups") to include in API
   965  	// requests with the JSON null value. By default, fields with empty values are
   966  	// omitted from API requests. See
   967  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   968  	NullFields []string `json:"-"`
   969  }
   970  
   971  func (s *ListBackupsResponse) MarshalJSON() ([]byte, error) {
   972  	type NoMethod ListBackupsResponse
   973  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   974  }
   975  
   976  // ListInstancesResponse: ListInstancesResponse is the result of
   977  // ListInstancesRequest.
   978  type ListInstancesResponse struct {
   979  	// Instances: A list of instances in the project for the specified location. If
   980  	// the `{location}` value in the request is "-", the response contains a list
   981  	// of instances from all locations. If any location is unreachable, the
   982  	// response will only return instances in reachable locations and the
   983  	// "unreachable" field will be populated with a list of unreachable locations.
   984  	Instances []*Instance `json:"instances,omitempty"`
   985  	// NextPageToken: The token you can use to retrieve the next page of results.
   986  	// Not returned if there are no more results in the list.
   987  	NextPageToken string `json:"nextPageToken,omitempty"`
   988  	// Unreachable: Locations that could not be reached.
   989  	Unreachable []string `json:"unreachable,omitempty"`
   990  
   991  	// ServerResponse contains the HTTP response code and headers from the server.
   992  	googleapi.ServerResponse `json:"-"`
   993  	// ForceSendFields is a list of field names (e.g. "Instances") to
   994  	// unconditionally include in API requests. By default, fields with empty or
   995  	// default values are omitted from API requests. See
   996  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   997  	// details.
   998  	ForceSendFields []string `json:"-"`
   999  	// NullFields is a list of field names (e.g. "Instances") to include in API
  1000  	// requests with the JSON null value. By default, fields with empty values are
  1001  	// omitted from API requests. See
  1002  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1003  	NullFields []string `json:"-"`
  1004  }
  1005  
  1006  func (s *ListInstancesResponse) MarshalJSON() ([]byte, error) {
  1007  	type NoMethod ListInstancesResponse
  1008  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1009  }
  1010  
  1011  // ListLocationsResponse: The response message for Locations.ListLocations.
  1012  type ListLocationsResponse struct {
  1013  	// Locations: A list of locations that matches the specified filter in the
  1014  	// request.
  1015  	Locations []*Location `json:"locations,omitempty"`
  1016  	// NextPageToken: The standard List next-page token.
  1017  	NextPageToken string `json:"nextPageToken,omitempty"`
  1018  
  1019  	// ServerResponse contains the HTTP response code and headers from the server.
  1020  	googleapi.ServerResponse `json:"-"`
  1021  	// ForceSendFields is a list of field names (e.g. "Locations") to
  1022  	// unconditionally include in API requests. By default, fields with empty or
  1023  	// default values are omitted from API requests. See
  1024  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1025  	// details.
  1026  	ForceSendFields []string `json:"-"`
  1027  	// NullFields is a list of field names (e.g. "Locations") to include in API
  1028  	// requests with the JSON null value. By default, fields with empty values are
  1029  	// omitted from API requests. See
  1030  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1031  	NullFields []string `json:"-"`
  1032  }
  1033  
  1034  func (s *ListLocationsResponse) MarshalJSON() ([]byte, error) {
  1035  	type NoMethod ListLocationsResponse
  1036  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1037  }
  1038  
  1039  // ListOperationsResponse: The response message for Operations.ListOperations.
  1040  type ListOperationsResponse struct {
  1041  	// NextPageToken: The standard List next-page token.
  1042  	NextPageToken string `json:"nextPageToken,omitempty"`
  1043  	// Operations: A list of operations that matches the specified filter in the
  1044  	// request.
  1045  	Operations []*Operation `json:"operations,omitempty"`
  1046  
  1047  	// ServerResponse contains the HTTP response code and headers from the server.
  1048  	googleapi.ServerResponse `json:"-"`
  1049  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1050  	// unconditionally include in API requests. By default, fields with empty or
  1051  	// default values are omitted from API requests. See
  1052  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1053  	// details.
  1054  	ForceSendFields []string `json:"-"`
  1055  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1056  	// requests with the JSON null value. By default, fields with empty values are
  1057  	// omitted from API requests. See
  1058  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1059  	NullFields []string `json:"-"`
  1060  }
  1061  
  1062  func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) {
  1063  	type NoMethod ListOperationsResponse
  1064  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1065  }
  1066  
  1067  // ListSnapshotsResponse: ListSnapshotsResponse is the result of
  1068  // ListSnapshotsRequest.
  1069  type ListSnapshotsResponse struct {
  1070  	// NextPageToken: The token you can use to retrieve the next page of results.
  1071  	// Not returned if there are no more results in the list.
  1072  	NextPageToken string `json:"nextPageToken,omitempty"`
  1073  	// Snapshots: A list of snapshots in the project for the specified instance.
  1074  	Snapshots []*Snapshot `json:"snapshots,omitempty"`
  1075  
  1076  	// ServerResponse contains the HTTP response code and headers from the server.
  1077  	googleapi.ServerResponse `json:"-"`
  1078  	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
  1079  	// unconditionally include in API requests. By default, fields with empty or
  1080  	// default values are omitted from API requests. See
  1081  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1082  	// details.
  1083  	ForceSendFields []string `json:"-"`
  1084  	// NullFields is a list of field names (e.g. "NextPageToken") to include in API
  1085  	// requests with the JSON null value. By default, fields with empty values are
  1086  	// omitted from API requests. See
  1087  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1088  	NullFields []string `json:"-"`
  1089  }
  1090  
  1091  func (s *ListSnapshotsResponse) MarshalJSON() ([]byte, error) {
  1092  	type NoMethod ListSnapshotsResponse
  1093  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1094  }
  1095  
  1096  // Location: A resource that represents a Google Cloud location.
  1097  type Location struct {
  1098  	// DisplayName: The friendly name for this location, typically a nearby city
  1099  	// name. For example, "Tokyo".
  1100  	DisplayName string `json:"displayName,omitempty"`
  1101  	// Labels: Cross-service attributes for the location. For example
  1102  	// {"cloud.googleapis.com/region": "us-east1"}
  1103  	Labels map[string]string `json:"labels,omitempty"`
  1104  	// LocationId: The canonical id for this location. For example: "us-east1".
  1105  	LocationId string `json:"locationId,omitempty"`
  1106  	// Metadata: Service-specific metadata. For example the available capacity at
  1107  	// the given location.
  1108  	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
  1109  	// Name: Resource name for the location, which may vary between
  1110  	// implementations. For example:
  1111  	// "projects/example-project/locations/us-east1"
  1112  	Name string `json:"name,omitempty"`
  1113  
  1114  	// ServerResponse contains the HTTP response code and headers from the server.
  1115  	googleapi.ServerResponse `json:"-"`
  1116  	// ForceSendFields is a list of field names (e.g. "DisplayName") to
  1117  	// unconditionally include in API requests. By default, fields with empty or
  1118  	// default values are omitted from API requests. See
  1119  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1120  	// details.
  1121  	ForceSendFields []string `json:"-"`
  1122  	// NullFields is a list of field names (e.g. "DisplayName") to include in API
  1123  	// requests with the JSON null value. By default, fields with empty values are
  1124  	// omitted from API requests. See
  1125  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1126  	NullFields []string `json:"-"`
  1127  }
  1128  
  1129  func (s *Location) MarshalJSON() ([]byte, error) {
  1130  	type NoMethod Location
  1131  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1132  }
  1133  
  1134  // MaintenancePolicy: Defines policies to service maintenance events.
  1135  type MaintenancePolicy struct {
  1136  	// CreateTime: Output only. The time when the resource was created.
  1137  	CreateTime string `json:"createTime,omitempty"`
  1138  	// Description: Optional. Description of what this policy is for. Create/Update
  1139  	// methods return INVALID_ARGUMENT if the length is greater than 512.
  1140  	Description string `json:"description,omitempty"`
  1141  	// Labels: Optional. Resource labels to represent user provided metadata. Each
  1142  	// label is a key-value pair, where both the key and the value are arbitrary
  1143  	// strings provided by the user.
  1144  	Labels map[string]string `json:"labels,omitempty"`
  1145  	// Name: Required. MaintenancePolicy name using the form:
  1146  	// `projects/{project_id}/locations/{location_id}/maintenancePolicies/{maintenan
  1147  	// ce_policy_id}` where {project_id} refers to a GCP consumer project ID,
  1148  	// {location_id} refers to a GCP region/zone, {maintenance_policy_id} must be
  1149  	// 1-63 characters long and match the regular expression
  1150  	// `[a-z0-9]([-a-z0-9]*[a-z0-9])?`.
  1151  	Name string `json:"name,omitempty"`
  1152  	// State: Optional. The state of the policy.
  1153  	//
  1154  	// Possible values:
  1155  	//   "STATE_UNSPECIFIED" - Unspecified state.
  1156  	//   "READY" - Resource is ready to be used.
  1157  	//   "DELETING" - Resource is being deleted. It can no longer be attached to
  1158  	// instances.
  1159  	State string `json:"state,omitempty"`
  1160  	// UpdatePolicy: Maintenance policy applicable to instance update.
  1161  	UpdatePolicy *UpdatePolicy `json:"updatePolicy,omitempty"`
  1162  	// UpdateTime: Output only. The time when the resource was updated.
  1163  	UpdateTime string `json:"updateTime,omitempty"`
  1164  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  1165  	// unconditionally include in API requests. By default, fields with empty or
  1166  	// default values are omitted from API requests. See
  1167  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1168  	// details.
  1169  	ForceSendFields []string `json:"-"`
  1170  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  1171  	// requests with the JSON null value. By default, fields with empty values are
  1172  	// omitted from API requests. See
  1173  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1174  	NullFields []string `json:"-"`
  1175  }
  1176  
  1177  func (s *MaintenancePolicy) MarshalJSON() ([]byte, error) {
  1178  	type NoMethod MaintenancePolicy
  1179  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1180  }
  1181  
  1182  // MaintenanceWindow: MaintenanceWindow definition.
  1183  type MaintenanceWindow struct {
  1184  	// DailyCycle: Daily cycle.
  1185  	DailyCycle *DailyCycle `json:"dailyCycle,omitempty"`
  1186  	// WeeklyCycle: Weekly cycle.
  1187  	WeeklyCycle *WeeklyCycle `json:"weeklyCycle,omitempty"`
  1188  	// ForceSendFields is a list of field names (e.g. "DailyCycle") to
  1189  	// unconditionally include in API requests. By default, fields with empty or
  1190  	// default values are omitted from API requests. See
  1191  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1192  	// details.
  1193  	ForceSendFields []string `json:"-"`
  1194  	// NullFields is a list of field names (e.g. "DailyCycle") to include in API
  1195  	// requests with the JSON null value. By default, fields with empty values are
  1196  	// omitted from API requests. See
  1197  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1198  	NullFields []string `json:"-"`
  1199  }
  1200  
  1201  func (s *MaintenanceWindow) MarshalJSON() ([]byte, error) {
  1202  	type NoMethod MaintenanceWindow
  1203  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1204  }
  1205  
  1206  // NetworkConfig: Network configuration for the instance.
  1207  type NetworkConfig struct {
  1208  	// ConnectMode: The network connect mode of the Filestore instance. If not
  1209  	// provided, the connect mode defaults to DIRECT_PEERING.
  1210  	//
  1211  	// Possible values:
  1212  	//   "CONNECT_MODE_UNSPECIFIED" - Not set.
  1213  	//   "DIRECT_PEERING" - Connect via direct peering to the Filestore service.
  1214  	//   "PRIVATE_SERVICE_ACCESS" - Connect to your Filestore instance using
  1215  	// Private Service Access. Private services access provides an IP address range
  1216  	// for multiple Google Cloud services, including Filestore.
  1217  	ConnectMode string `json:"connectMode,omitempty"`
  1218  	// IpAddresses: Output only. IPv4 addresses in the format
  1219  	// `{octet1}.{octet2}.{octet3}.{octet4}` or IPv6 addresses in the format
  1220  	// `{block1}:{block2}:{block3}:{block4}:{block5}:{block6}:{block7}:{block8}`.
  1221  	IpAddresses []string `json:"ipAddresses,omitempty"`
  1222  	// Modes: Internet protocol versions for which the instance has IP addresses
  1223  	// assigned. For this version, only MODE_IPV4 is supported.
  1224  	//
  1225  	// Possible values:
  1226  	//   "ADDRESS_MODE_UNSPECIFIED" - Internet protocol not set.
  1227  	//   "MODE_IPV4" - Use the IPv4 internet protocol.
  1228  	Modes []string `json:"modes,omitempty"`
  1229  	// Network: The name of the Google Compute Engine VPC network
  1230  	// (https://cloud.google.com/vpc/docs/vpc) to which the instance is connected.
  1231  	Network string `json:"network,omitempty"`
  1232  	// ReservedIpRange: Optional, reserved_ip_range can have one of the following
  1233  	// two types of values. * CIDR range value when using DIRECT_PEERING connect
  1234  	// mode. * Allocated IP address range
  1235  	// (https://cloud.google.com/compute/docs/ip-addresses/reserve-static-internal-ip-address)
  1236  	// when using PRIVATE_SERVICE_ACCESS connect mode. When the name of an
  1237  	// allocated IP address range is specified, it must be one of the ranges
  1238  	// associated with the private service access connection. When specified as a
  1239  	// direct CIDR value, it must be a /29 CIDR block for Basic tier, a /24 CIDR
  1240  	// block for High Scale tier, or a /26 CIDR block for Enterprise tier in one of
  1241  	// the internal IP address ranges
  1242  	// (https://www.arin.net/reference/research/statistics/address_filters/) that
  1243  	// identifies the range of IP addresses reserved for this instance. For
  1244  	// example, 10.0.0.0/29, 192.168.0.0/24 or 192.168.0.0/26, respectively. The
  1245  	// range you specify can't overlap with either existing subnets or assigned IP
  1246  	// address ranges for other Filestore instances in the selected VPC network.
  1247  	ReservedIpRange string `json:"reservedIpRange,omitempty"`
  1248  	// ForceSendFields is a list of field names (e.g. "ConnectMode") to
  1249  	// unconditionally include in API requests. By default, fields with empty or
  1250  	// default values are omitted from API requests. See
  1251  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1252  	// details.
  1253  	ForceSendFields []string `json:"-"`
  1254  	// NullFields is a list of field names (e.g. "ConnectMode") to include in API
  1255  	// requests with the JSON null value. By default, fields with empty values are
  1256  	// omitted from API requests. See
  1257  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1258  	NullFields []string `json:"-"`
  1259  }
  1260  
  1261  func (s *NetworkConfig) MarshalJSON() ([]byte, error) {
  1262  	type NoMethod NetworkConfig
  1263  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1264  }
  1265  
  1266  // NfsExportOptions: NFS export options specifications.
  1267  type NfsExportOptions struct {
  1268  	// AccessMode: Either READ_ONLY, for allowing only read requests on the
  1269  	// exported directory, or READ_WRITE, for allowing both read and write
  1270  	// requests. The default is READ_WRITE.
  1271  	//
  1272  	// Possible values:
  1273  	//   "ACCESS_MODE_UNSPECIFIED" - AccessMode not set.
  1274  	//   "READ_ONLY" - The client can only read the file share.
  1275  	//   "READ_WRITE" - The client can read and write the file share (default).
  1276  	AccessMode string `json:"accessMode,omitempty"`
  1277  	// AnonGid: An integer representing the anonymous group id with a default value
  1278  	// of 65534. Anon_gid may only be set with squash_mode of ROOT_SQUASH. An error
  1279  	// will be returned if this field is specified for other squash_mode settings.
  1280  	AnonGid int64 `json:"anonGid,omitempty,string"`
  1281  	// AnonUid: An integer representing the anonymous user id with a default value
  1282  	// of 65534. Anon_uid may only be set with squash_mode of ROOT_SQUASH. An error
  1283  	// will be returned if this field is specified for other squash_mode settings.
  1284  	AnonUid int64 `json:"anonUid,omitempty,string"`
  1285  	// IpRanges: List of either an IPv4 addresses in the format
  1286  	// `{octet1}.{octet2}.{octet3}.{octet4}` or CIDR ranges in the format
  1287  	// `{octet1}.{octet2}.{octet3}.{octet4}/{mask size}` which may mount the file
  1288  	// share. Overlapping IP ranges are not allowed, both within and across
  1289  	// NfsExportOptions. An error will be returned. The limit is 64 IP
  1290  	// ranges/addresses for each FileShareConfig among all NfsExportOptions.
  1291  	IpRanges []string `json:"ipRanges,omitempty"`
  1292  	// SquashMode: Either NO_ROOT_SQUASH, for allowing root access on the exported
  1293  	// directory, or ROOT_SQUASH, for not allowing root access. The default is
  1294  	// NO_ROOT_SQUASH.
  1295  	//
  1296  	// Possible values:
  1297  	//   "SQUASH_MODE_UNSPECIFIED" - SquashMode not set.
  1298  	//   "NO_ROOT_SQUASH" - The Root user has root access to the file share
  1299  	// (default).
  1300  	//   "ROOT_SQUASH" - The Root user has squashed access to the anonymous
  1301  	// uid/gid.
  1302  	SquashMode string `json:"squashMode,omitempty"`
  1303  	// ForceSendFields is a list of field names (e.g. "AccessMode") to
  1304  	// unconditionally include in API requests. By default, fields with empty or
  1305  	// default values are omitted from API requests. See
  1306  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1307  	// details.
  1308  	ForceSendFields []string `json:"-"`
  1309  	// NullFields is a list of field names (e.g. "AccessMode") to include in API
  1310  	// requests with the JSON null value. By default, fields with empty values are
  1311  	// omitted from API requests. See
  1312  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1313  	NullFields []string `json:"-"`
  1314  }
  1315  
  1316  func (s *NfsExportOptions) MarshalJSON() ([]byte, error) {
  1317  	type NoMethod NfsExportOptions
  1318  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1319  }
  1320  
  1321  // Operation: This resource represents a long-running operation that is the
  1322  // result of a network API call.
  1323  type Operation struct {
  1324  	// Done: If the value is `false`, it means the operation is still in progress.
  1325  	// If `true`, the operation is completed, and either `error` or `response` is
  1326  	// available.
  1327  	Done bool `json:"done,omitempty"`
  1328  	// Error: The error result of the operation in case of failure or cancellation.
  1329  	Error *Status `json:"error,omitempty"`
  1330  	// Metadata: Service-specific metadata associated with the operation. It
  1331  	// typically contains progress information and common metadata such as create
  1332  	// time. Some services might not provide such metadata. Any method that returns
  1333  	// a long-running operation should document the metadata type, if any.
  1334  	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
  1335  	// Name: The server-assigned name, which is only unique within the same service
  1336  	// that originally returns it. If you use the default HTTP mapping, the `name`
  1337  	// should be a resource name ending with `operations/{unique_id}`.
  1338  	Name string `json:"name,omitempty"`
  1339  	// Response: The normal, successful response of the operation. If the original
  1340  	// method returns no data on success, such as `Delete`, the response is
  1341  	// `google.protobuf.Empty`. If the original method is standard
  1342  	// `Get`/`Create`/`Update`, the response should be the resource. For other
  1343  	// methods, the response should have the type `XxxResponse`, where `Xxx` is the
  1344  	// original method name. For example, if the original method name is
  1345  	// `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
  1346  	Response googleapi.RawMessage `json:"response,omitempty"`
  1347  
  1348  	// ServerResponse contains the HTTP response code and headers from the server.
  1349  	googleapi.ServerResponse `json:"-"`
  1350  	// ForceSendFields is a list of field names (e.g. "Done") to unconditionally
  1351  	// include in API requests. By default, fields with empty or default values are
  1352  	// omitted from API requests. See
  1353  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1354  	// details.
  1355  	ForceSendFields []string `json:"-"`
  1356  	// NullFields is a list of field names (e.g. "Done") to include in API requests
  1357  	// with the JSON null value. By default, fields with empty values are omitted
  1358  	// from API requests. See
  1359  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1360  	NullFields []string `json:"-"`
  1361  }
  1362  
  1363  func (s *Operation) MarshalJSON() ([]byte, error) {
  1364  	type NoMethod Operation
  1365  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1366  }
  1367  
  1368  // OperationMetadata: Represents the metadata of the long-running operation.
  1369  type OperationMetadata struct {
  1370  	// ApiVersion: Output only. API version used to start the operation.
  1371  	ApiVersion string `json:"apiVersion,omitempty"`
  1372  	// CancelRequested: Output only. Identifies whether the user has requested
  1373  	// cancellation of the operation. Operations that have been cancelled
  1374  	// successfully have Operation.error value with a google.rpc.Status.code of 1,
  1375  	// corresponding to `Code.CANCELLED`.
  1376  	CancelRequested bool `json:"cancelRequested,omitempty"`
  1377  	// CreateTime: Output only. The time the operation was created.
  1378  	CreateTime string `json:"createTime,omitempty"`
  1379  	// EndTime: Output only. The time the operation finished running.
  1380  	EndTime string `json:"endTime,omitempty"`
  1381  	// StatusDetail: Output only. Human-readable status of the operation, if any.
  1382  	StatusDetail string `json:"statusDetail,omitempty"`
  1383  	// Target: Output only. Server-defined resource path for the target of the
  1384  	// operation.
  1385  	Target string `json:"target,omitempty"`
  1386  	// Verb: Output only. Name of the verb executed by the operation.
  1387  	Verb string `json:"verb,omitempty"`
  1388  	// ForceSendFields is a list of field names (e.g. "ApiVersion") to
  1389  	// unconditionally include in API requests. By default, fields with empty or
  1390  	// default values are omitted from API requests. See
  1391  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1392  	// details.
  1393  	ForceSendFields []string `json:"-"`
  1394  	// NullFields is a list of field names (e.g. "ApiVersion") to include in API
  1395  	// requests with the JSON null value. By default, fields with empty values are
  1396  	// omitted from API requests. See
  1397  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1398  	NullFields []string `json:"-"`
  1399  }
  1400  
  1401  func (s *OperationMetadata) MarshalJSON() ([]byte, error) {
  1402  	type NoMethod OperationMetadata
  1403  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1404  }
  1405  
  1406  // RestoreInstanceRequest: RestoreInstanceRequest restores an existing
  1407  // instance's file share from a backup.
  1408  type RestoreInstanceRequest struct {
  1409  	// FileShare: Required. Name of the file share in the Filestore instance that
  1410  	// the backup is being restored to.
  1411  	FileShare string `json:"fileShare,omitempty"`
  1412  	// SourceBackup: The resource name of the backup, in the format
  1413  	// `projects/{project_number}/locations/{location_id}/backups/{backup_id}`.
  1414  	SourceBackup string `json:"sourceBackup,omitempty"`
  1415  	// ForceSendFields is a list of field names (e.g. "FileShare") to
  1416  	// unconditionally include in API requests. By default, fields with empty or
  1417  	// default values are omitted from API requests. See
  1418  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1419  	// details.
  1420  	ForceSendFields []string `json:"-"`
  1421  	// NullFields is a list of field names (e.g. "FileShare") to include in API
  1422  	// requests with the JSON null value. By default, fields with empty values are
  1423  	// omitted from API requests. See
  1424  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1425  	NullFields []string `json:"-"`
  1426  }
  1427  
  1428  func (s *RestoreInstanceRequest) MarshalJSON() ([]byte, error) {
  1429  	type NoMethod RestoreInstanceRequest
  1430  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1431  }
  1432  
  1433  // RevertInstanceRequest: RevertInstanceRequest reverts the given instance's
  1434  // file share to the specified snapshot.
  1435  type RevertInstanceRequest struct {
  1436  	// TargetSnapshotId: Required. The snapshot resource ID, in the format
  1437  	// 'my-snapshot', where the specified ID is the {snapshot_id} of the fully
  1438  	// qualified name like
  1439  	// `projects/{project_id}/locations/{location_id}/instances/{instance_id}/snapsh
  1440  	// ots/{snapshot_id}`
  1441  	TargetSnapshotId string `json:"targetSnapshotId,omitempty"`
  1442  	// ForceSendFields is a list of field names (e.g. "TargetSnapshotId") to
  1443  	// unconditionally include in API requests. By default, fields with empty or
  1444  	// default values are omitted from API requests. See
  1445  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1446  	// details.
  1447  	ForceSendFields []string `json:"-"`
  1448  	// NullFields is a list of field names (e.g. "TargetSnapshotId") to include in
  1449  	// API requests with the JSON null value. By default, fields with empty values
  1450  	// are omitted from API requests. See
  1451  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1452  	NullFields []string `json:"-"`
  1453  }
  1454  
  1455  func (s *RevertInstanceRequest) MarshalJSON() ([]byte, error) {
  1456  	type NoMethod RevertInstanceRequest
  1457  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1458  }
  1459  
  1460  // Schedule: Configure the schedule.
  1461  type Schedule struct {
  1462  	// Day: Allows to define schedule that runs specified day of the week.
  1463  	//
  1464  	// Possible values:
  1465  	//   "DAY_OF_WEEK_UNSPECIFIED" - The day of the week is unspecified.
  1466  	//   "MONDAY" - Monday
  1467  	//   "TUESDAY" - Tuesday
  1468  	//   "WEDNESDAY" - Wednesday
  1469  	//   "THURSDAY" - Thursday
  1470  	//   "FRIDAY" - Friday
  1471  	//   "SATURDAY" - Saturday
  1472  	//   "SUNDAY" - Sunday
  1473  	Day string `json:"day,omitempty"`
  1474  	// Duration: Output only. Duration of the time window, set by service producer.
  1475  	Duration string `json:"duration,omitempty"`
  1476  	// StartTime: Time within the window to start the operations.
  1477  	StartTime *TimeOfDay `json:"startTime,omitempty"`
  1478  	// ForceSendFields is a list of field names (e.g. "Day") to unconditionally
  1479  	// include in API requests. By default, fields with empty or default values are
  1480  	// omitted from API requests. See
  1481  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1482  	// details.
  1483  	ForceSendFields []string `json:"-"`
  1484  	// NullFields is a list of field names (e.g. "Day") to include in API requests
  1485  	// with the JSON null value. By default, fields with empty values are omitted
  1486  	// from API requests. See
  1487  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1488  	NullFields []string `json:"-"`
  1489  }
  1490  
  1491  func (s *Schedule) MarshalJSON() ([]byte, error) {
  1492  	type NoMethod Schedule
  1493  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1494  }
  1495  
  1496  // Snapshot: A Filestore snapshot.
  1497  type Snapshot struct {
  1498  	// CreateTime: Output only. The time when the snapshot was created.
  1499  	CreateTime string `json:"createTime,omitempty"`
  1500  	// Description: A description of the snapshot with 2048 characters or less.
  1501  	// Requests with longer descriptions will be rejected.
  1502  	Description string `json:"description,omitempty"`
  1503  	// FilesystemUsedBytes: Output only. The amount of bytes needed to allocate a
  1504  	// full copy of the snapshot content
  1505  	FilesystemUsedBytes int64 `json:"filesystemUsedBytes,omitempty,string"`
  1506  	// Labels: Resource labels to represent user provided metadata.
  1507  	Labels map[string]string `json:"labels,omitempty"`
  1508  	// Name: Output only. The resource name of the snapshot, in the format
  1509  	// `projects/{project_id}/locations/{location_id}/instances/{instance_id}/snapsh
  1510  	// ots/{snapshot_id}`.
  1511  	Name string `json:"name,omitempty"`
  1512  	// State: Output only. The snapshot state.
  1513  	//
  1514  	// Possible values:
  1515  	//   "STATE_UNSPECIFIED" - State not set.
  1516  	//   "CREATING" - Snapshot is being created.
  1517  	//   "READY" - Snapshot is available for use.
  1518  	//   "DELETING" - Snapshot is being deleted.
  1519  	State string `json:"state,omitempty"`
  1520  
  1521  	// ServerResponse contains the HTTP response code and headers from the server.
  1522  	googleapi.ServerResponse `json:"-"`
  1523  	// ForceSendFields is a list of field names (e.g. "CreateTime") to
  1524  	// unconditionally include in API requests. By default, fields with empty or
  1525  	// default values are omitted from API requests. See
  1526  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1527  	// details.
  1528  	ForceSendFields []string `json:"-"`
  1529  	// NullFields is a list of field names (e.g. "CreateTime") to include in API
  1530  	// requests with the JSON null value. By default, fields with empty values are
  1531  	// omitted from API requests. See
  1532  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1533  	NullFields []string `json:"-"`
  1534  }
  1535  
  1536  func (s *Snapshot) MarshalJSON() ([]byte, error) {
  1537  	type NoMethod Snapshot
  1538  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1539  }
  1540  
  1541  // Status: The `Status` type defines a logical error model that is suitable for
  1542  // different programming environments, including REST APIs and RPC APIs. It is
  1543  // used by gRPC (https://github.com/grpc). Each `Status` message contains three
  1544  // pieces of data: error code, error message, and error details. You can find
  1545  // out more about this error model and how to work with it in the API Design
  1546  // Guide (https://cloud.google.com/apis/design/errors).
  1547  type Status struct {
  1548  	// Code: The status code, which should be an enum value of google.rpc.Code.
  1549  	Code int64 `json:"code,omitempty"`
  1550  	// Details: A list of messages that carry the error details. There is a common
  1551  	// set of message types for APIs to use.
  1552  	Details []googleapi.RawMessage `json:"details,omitempty"`
  1553  	// Message: A developer-facing error message, which should be in English. Any
  1554  	// user-facing error message should be localized and sent in the
  1555  	// google.rpc.Status.details field, or localized by the client.
  1556  	Message string `json:"message,omitempty"`
  1557  	// ForceSendFields is a list of field names (e.g. "Code") to unconditionally
  1558  	// include in API requests. By default, fields with empty or default values are
  1559  	// omitted from API requests. See
  1560  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1561  	// details.
  1562  	ForceSendFields []string `json:"-"`
  1563  	// NullFields is a list of field names (e.g. "Code") to include in API requests
  1564  	// with the JSON null value. By default, fields with empty values are omitted
  1565  	// from API requests. See
  1566  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1567  	NullFields []string `json:"-"`
  1568  }
  1569  
  1570  func (s *Status) MarshalJSON() ([]byte, error) {
  1571  	type NoMethod Status
  1572  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1573  }
  1574  
  1575  // TimeOfDay: Represents a time of day. The date and time zone are either not
  1576  // significant or are specified elsewhere. An API may choose to allow leap
  1577  // seconds. Related types are google.type.Date and `google.protobuf.Timestamp`.
  1578  type TimeOfDay struct {
  1579  	// Hours: Hours of day in 24 hour format. Should be from 0 to 23. An API may
  1580  	// choose to allow the value "24:00:00" for scenarios like business closing
  1581  	// time.
  1582  	Hours int64 `json:"hours,omitempty"`
  1583  	// Minutes: Minutes of hour of day. Must be from 0 to 59.
  1584  	Minutes int64 `json:"minutes,omitempty"`
  1585  	// Nanos: Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
  1586  	Nanos int64 `json:"nanos,omitempty"`
  1587  	// Seconds: Seconds of minutes of the time. Must normally be from 0 to 59. An
  1588  	// API may allow the value 60 if it allows leap-seconds.
  1589  	Seconds int64 `json:"seconds,omitempty"`
  1590  	// ForceSendFields is a list of field names (e.g. "Hours") to unconditionally
  1591  	// include in API requests. By default, fields with empty or default values are
  1592  	// omitted from API requests. See
  1593  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1594  	// details.
  1595  	ForceSendFields []string `json:"-"`
  1596  	// NullFields is a list of field names (e.g. "Hours") to include in API
  1597  	// requests with the JSON null value. By default, fields with empty values are
  1598  	// omitted from API requests. See
  1599  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1600  	NullFields []string `json:"-"`
  1601  }
  1602  
  1603  func (s *TimeOfDay) MarshalJSON() ([]byte, error) {
  1604  	type NoMethod TimeOfDay
  1605  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1606  }
  1607  
  1608  // UpdatePolicy: Maintenance policy applicable to instance updates.
  1609  type UpdatePolicy struct {
  1610  	// Channel: Optional. Relative scheduling channel applied to resource.
  1611  	//
  1612  	// Possible values:
  1613  	//   "UPDATE_CHANNEL_UNSPECIFIED" - Unspecified channel.
  1614  	//   "EARLIER" - Early channel within a customer project.
  1615  	//   "LATER" - Later channel within a customer project.
  1616  	//   "WEEK1" - ! ! The follow channels can ONLY be used if you adopt the new MW
  1617  	// system! ! ! NOTE: all WEEK channels are assumed to be under a weekly window.
  1618  	// ! There is currently no dedicated channel definitions for Daily windows. !
  1619  	// If you use Daily window, the system will assume a 1d (24Hours) advanced !
  1620  	// notification period b/w EARLY and LATER. ! We may consider support more
  1621  	// flexible daily channel specifications in ! the future. WEEK1 == EARLIER with
  1622  	// minimum 7d advanced notification. {7d, 14d} The system will treat them
  1623  	// equally and will use WEEK1 whenever it can. New customers are encouraged to
  1624  	// use this channel annotation.
  1625  	//   "WEEK2" - WEEK2 == LATER with minimum 14d advanced notification {14d,
  1626  	// 21d}.
  1627  	//   "WEEK5" - WEEK5 == 40d support. minimum 35d advanced notification {35d,
  1628  	// 42d}.
  1629  	Channel string `json:"channel,omitempty"`
  1630  	// DenyMaintenancePeriods: Deny Maintenance Period that is applied to resource
  1631  	// to indicate when maintenance is forbidden. The protocol supports
  1632  	// zero-to-many such periods, but the current SLM Rollout implementation only
  1633  	// supports zero-to-one.
  1634  	DenyMaintenancePeriods []*DenyMaintenancePeriod `json:"denyMaintenancePeriods,omitempty"`
  1635  	// Window: Optional. Maintenance window that is applied to resources covered by
  1636  	// this policy.
  1637  	Window *MaintenanceWindow `json:"window,omitempty"`
  1638  	// ForceSendFields is a list of field names (e.g. "Channel") to unconditionally
  1639  	// include in API requests. By default, fields with empty or default values are
  1640  	// omitted from API requests. See
  1641  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1642  	// details.
  1643  	ForceSendFields []string `json:"-"`
  1644  	// NullFields is a list of field names (e.g. "Channel") to include in API
  1645  	// requests with the JSON null value. By default, fields with empty values are
  1646  	// omitted from API requests. See
  1647  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1648  	NullFields []string `json:"-"`
  1649  }
  1650  
  1651  func (s *UpdatePolicy) MarshalJSON() ([]byte, error) {
  1652  	type NoMethod UpdatePolicy
  1653  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1654  }
  1655  
  1656  // WeeklyCycle: Time window specified for weekly operations.
  1657  type WeeklyCycle struct {
  1658  	// Schedule: User can specify multiple windows in a week. Minimum of 1 window.
  1659  	Schedule []*Schedule `json:"schedule,omitempty"`
  1660  	// ForceSendFields is a list of field names (e.g. "Schedule") to
  1661  	// unconditionally include in API requests. By default, fields with empty or
  1662  	// default values are omitted from API requests. See
  1663  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1664  	// details.
  1665  	ForceSendFields []string `json:"-"`
  1666  	// NullFields is a list of field names (e.g. "Schedule") to include in API
  1667  	// requests with the JSON null value. By default, fields with empty values are
  1668  	// omitted from API requests. See
  1669  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1670  	NullFields []string `json:"-"`
  1671  }
  1672  
  1673  func (s *WeeklyCycle) MarshalJSON() ([]byte, error) {
  1674  	type NoMethod WeeklyCycle
  1675  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1676  }
  1677  
  1678  type ProjectsLocationsGetCall struct {
  1679  	s            *Service
  1680  	name         string
  1681  	urlParams_   gensupport.URLParams
  1682  	ifNoneMatch_ string
  1683  	ctx_         context.Context
  1684  	header_      http.Header
  1685  }
  1686  
  1687  // Get: Gets information about a location.
  1688  //
  1689  // - name: Resource name for the location.
  1690  func (r *ProjectsLocationsService) Get(name string) *ProjectsLocationsGetCall {
  1691  	c := &ProjectsLocationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  1692  	c.name = name
  1693  	return c
  1694  }
  1695  
  1696  // Fields allows partial responses to be retrieved. See
  1697  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  1698  // details.
  1699  func (c *ProjectsLocationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsGetCall {
  1700  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  1701  	return c
  1702  }
  1703  
  1704  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  1705  // object's ETag matches the given value. This is useful for getting updates
  1706  // only after the object has changed since the last request.
  1707  func (c *ProjectsLocationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsGetCall {
  1708  	c.ifNoneMatch_ = entityTag
  1709  	return c
  1710  }
  1711  
  1712  // Context sets the context to be used in this call's Do method.
  1713  func (c *ProjectsLocationsGetCall) Context(ctx context.Context) *ProjectsLocationsGetCall {
  1714  	c.ctx_ = ctx
  1715  	return c
  1716  }
  1717  
  1718  // Header returns a http.Header that can be modified by the caller to add
  1719  // headers to the request.
  1720  func (c *ProjectsLocationsGetCall) Header() http.Header {
  1721  	if c.header_ == nil {
  1722  		c.header_ = make(http.Header)
  1723  	}
  1724  	return c.header_
  1725  }
  1726  
  1727  func (c *ProjectsLocationsGetCall) doRequest(alt string) (*http.Response, error) {
  1728  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  1729  	if c.ifNoneMatch_ != "" {
  1730  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  1731  	}
  1732  	var body io.Reader = nil
  1733  	c.urlParams_.Set("alt", alt)
  1734  	c.urlParams_.Set("prettyPrint", "false")
  1735  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  1736  	urls += "?" + c.urlParams_.Encode()
  1737  	req, err := http.NewRequest("GET", urls, body)
  1738  	if err != nil {
  1739  		return nil, err
  1740  	}
  1741  	req.Header = reqHeaders
  1742  	googleapi.Expand(req.URL, map[string]string{
  1743  		"name": c.name,
  1744  	})
  1745  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  1746  }
  1747  
  1748  // Do executes the "file.projects.locations.get" call.
  1749  // Any non-2xx status code is an error. Response headers are in either
  1750  // *Location.ServerResponse.Header or (if a response was returned at all) in
  1751  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  1752  // whether the returned error was because http.StatusNotModified was returned.
  1753  func (c *ProjectsLocationsGetCall) Do(opts ...googleapi.CallOption) (*Location, error) {
  1754  	gensupport.SetOptions(c.urlParams_, opts...)
  1755  	res, err := c.doRequest("json")
  1756  	if res != nil && res.StatusCode == http.StatusNotModified {
  1757  		if res.Body != nil {
  1758  			res.Body.Close()
  1759  		}
  1760  		return nil, gensupport.WrapError(&googleapi.Error{
  1761  			Code:   res.StatusCode,
  1762  			Header: res.Header,
  1763  		})
  1764  	}
  1765  	if err != nil {
  1766  		return nil, err
  1767  	}
  1768  	defer googleapi.CloseBody(res)
  1769  	if err := googleapi.CheckResponse(res); err != nil {
  1770  		return nil, gensupport.WrapError(err)
  1771  	}
  1772  	ret := &Location{
  1773  		ServerResponse: googleapi.ServerResponse{
  1774  			Header:         res.Header,
  1775  			HTTPStatusCode: res.StatusCode,
  1776  		},
  1777  	}
  1778  	target := &ret
  1779  	if err := gensupport.DecodeResponse(target, res); err != nil {
  1780  		return nil, err
  1781  	}
  1782  	return ret, nil
  1783  }
  1784  
  1785  type ProjectsLocationsListCall struct {
  1786  	s            *Service
  1787  	name         string
  1788  	urlParams_   gensupport.URLParams
  1789  	ifNoneMatch_ string
  1790  	ctx_         context.Context
  1791  	header_      http.Header
  1792  }
  1793  
  1794  // List: Lists information about the supported locations for this service.
  1795  //
  1796  // - name: The resource that owns the locations collection, if applicable.
  1797  func (r *ProjectsLocationsService) List(name string) *ProjectsLocationsListCall {
  1798  	c := &ProjectsLocationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  1799  	c.name = name
  1800  	return c
  1801  }
  1802  
  1803  // Filter sets the optional parameter "filter": A filter to narrow down results
  1804  // to a preferred subset. The filtering language accepts strings like
  1805  // "displayName=tokyo", and is documented in more detail in AIP-160
  1806  // (https://google.aip.dev/160).
  1807  func (c *ProjectsLocationsListCall) Filter(filter string) *ProjectsLocationsListCall {
  1808  	c.urlParams_.Set("filter", filter)
  1809  	return c
  1810  }
  1811  
  1812  // IncludeUnrevealedLocations sets the optional parameter
  1813  // "includeUnrevealedLocations": If true, the returned list will include
  1814  // locations which are not yet revealed.
  1815  func (c *ProjectsLocationsListCall) IncludeUnrevealedLocations(includeUnrevealedLocations bool) *ProjectsLocationsListCall {
  1816  	c.urlParams_.Set("includeUnrevealedLocations", fmt.Sprint(includeUnrevealedLocations))
  1817  	return c
  1818  }
  1819  
  1820  // PageSize sets the optional parameter "pageSize": The maximum number of
  1821  // results to return. If not set, the service selects a default.
  1822  func (c *ProjectsLocationsListCall) PageSize(pageSize int64) *ProjectsLocationsListCall {
  1823  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  1824  	return c
  1825  }
  1826  
  1827  // PageToken sets the optional parameter "pageToken": A page token received
  1828  // from the `next_page_token` field in the response. Send that page token to
  1829  // receive the subsequent page.
  1830  func (c *ProjectsLocationsListCall) PageToken(pageToken string) *ProjectsLocationsListCall {
  1831  	c.urlParams_.Set("pageToken", pageToken)
  1832  	return c
  1833  }
  1834  
  1835  // Fields allows partial responses to be retrieved. See
  1836  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  1837  // details.
  1838  func (c *ProjectsLocationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsListCall {
  1839  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  1840  	return c
  1841  }
  1842  
  1843  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  1844  // object's ETag matches the given value. This is useful for getting updates
  1845  // only after the object has changed since the last request.
  1846  func (c *ProjectsLocationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsListCall {
  1847  	c.ifNoneMatch_ = entityTag
  1848  	return c
  1849  }
  1850  
  1851  // Context sets the context to be used in this call's Do method.
  1852  func (c *ProjectsLocationsListCall) Context(ctx context.Context) *ProjectsLocationsListCall {
  1853  	c.ctx_ = ctx
  1854  	return c
  1855  }
  1856  
  1857  // Header returns a http.Header that can be modified by the caller to add
  1858  // headers to the request.
  1859  func (c *ProjectsLocationsListCall) Header() http.Header {
  1860  	if c.header_ == nil {
  1861  		c.header_ = make(http.Header)
  1862  	}
  1863  	return c.header_
  1864  }
  1865  
  1866  func (c *ProjectsLocationsListCall) doRequest(alt string) (*http.Response, error) {
  1867  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  1868  	if c.ifNoneMatch_ != "" {
  1869  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  1870  	}
  1871  	var body io.Reader = nil
  1872  	c.urlParams_.Set("alt", alt)
  1873  	c.urlParams_.Set("prettyPrint", "false")
  1874  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}/locations")
  1875  	urls += "?" + c.urlParams_.Encode()
  1876  	req, err := http.NewRequest("GET", urls, body)
  1877  	if err != nil {
  1878  		return nil, err
  1879  	}
  1880  	req.Header = reqHeaders
  1881  	googleapi.Expand(req.URL, map[string]string{
  1882  		"name": c.name,
  1883  	})
  1884  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  1885  }
  1886  
  1887  // Do executes the "file.projects.locations.list" call.
  1888  // Any non-2xx status code is an error. Response headers are in either
  1889  // *ListLocationsResponse.ServerResponse.Header or (if a response was returned
  1890  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  1891  // check whether the returned error was because http.StatusNotModified was
  1892  // returned.
  1893  func (c *ProjectsLocationsListCall) Do(opts ...googleapi.CallOption) (*ListLocationsResponse, error) {
  1894  	gensupport.SetOptions(c.urlParams_, opts...)
  1895  	res, err := c.doRequest("json")
  1896  	if res != nil && res.StatusCode == http.StatusNotModified {
  1897  		if res.Body != nil {
  1898  			res.Body.Close()
  1899  		}
  1900  		return nil, gensupport.WrapError(&googleapi.Error{
  1901  			Code:   res.StatusCode,
  1902  			Header: res.Header,
  1903  		})
  1904  	}
  1905  	if err != nil {
  1906  		return nil, err
  1907  	}
  1908  	defer googleapi.CloseBody(res)
  1909  	if err := googleapi.CheckResponse(res); err != nil {
  1910  		return nil, gensupport.WrapError(err)
  1911  	}
  1912  	ret := &ListLocationsResponse{
  1913  		ServerResponse: googleapi.ServerResponse{
  1914  			Header:         res.Header,
  1915  			HTTPStatusCode: res.StatusCode,
  1916  		},
  1917  	}
  1918  	target := &ret
  1919  	if err := gensupport.DecodeResponse(target, res); err != nil {
  1920  		return nil, err
  1921  	}
  1922  	return ret, nil
  1923  }
  1924  
  1925  // Pages invokes f for each page of results.
  1926  // A non-nil error returned from f will halt the iteration.
  1927  // The provided context supersedes any context provided to the Context method.
  1928  func (c *ProjectsLocationsListCall) Pages(ctx context.Context, f func(*ListLocationsResponse) error) error {
  1929  	c.ctx_ = ctx
  1930  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  1931  	for {
  1932  		x, err := c.Do()
  1933  		if err != nil {
  1934  			return err
  1935  		}
  1936  		if err := f(x); err != nil {
  1937  			return err
  1938  		}
  1939  		if x.NextPageToken == "" {
  1940  			return nil
  1941  		}
  1942  		c.PageToken(x.NextPageToken)
  1943  	}
  1944  }
  1945  
  1946  type ProjectsLocationsBackupsCreateCall struct {
  1947  	s          *Service
  1948  	parent     string
  1949  	backup     *Backup
  1950  	urlParams_ gensupport.URLParams
  1951  	ctx_       context.Context
  1952  	header_    http.Header
  1953  }
  1954  
  1955  // Create: Creates a backup.
  1956  //
  1957  //   - parent: The backup's project and location, in the format
  1958  //     `projects/{project_number}/locations/{location}`. In Filestore, backup
  1959  //     locations map to Google Cloud regions, for example **us-west1**.
  1960  func (r *ProjectsLocationsBackupsService) Create(parent string, backup *Backup) *ProjectsLocationsBackupsCreateCall {
  1961  	c := &ProjectsLocationsBackupsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  1962  	c.parent = parent
  1963  	c.backup = backup
  1964  	return c
  1965  }
  1966  
  1967  // BackupId sets the optional parameter "backupId": Required. The ID to use for
  1968  // the backup. The ID must be unique within the specified project and location.
  1969  // This value must start with a lowercase letter followed by up to 62 lowercase
  1970  // letters, numbers, or hyphens, and cannot end with a hyphen. Values that do
  1971  // not match this pattern will trigger an INVALID_ARGUMENT error.
  1972  func (c *ProjectsLocationsBackupsCreateCall) BackupId(backupId string) *ProjectsLocationsBackupsCreateCall {
  1973  	c.urlParams_.Set("backupId", backupId)
  1974  	return c
  1975  }
  1976  
  1977  // Fields allows partial responses to be retrieved. See
  1978  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  1979  // details.
  1980  func (c *ProjectsLocationsBackupsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsBackupsCreateCall {
  1981  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  1982  	return c
  1983  }
  1984  
  1985  // Context sets the context to be used in this call's Do method.
  1986  func (c *ProjectsLocationsBackupsCreateCall) Context(ctx context.Context) *ProjectsLocationsBackupsCreateCall {
  1987  	c.ctx_ = ctx
  1988  	return c
  1989  }
  1990  
  1991  // Header returns a http.Header that can be modified by the caller to add
  1992  // headers to the request.
  1993  func (c *ProjectsLocationsBackupsCreateCall) Header() http.Header {
  1994  	if c.header_ == nil {
  1995  		c.header_ = make(http.Header)
  1996  	}
  1997  	return c.header_
  1998  }
  1999  
  2000  func (c *ProjectsLocationsBackupsCreateCall) doRequest(alt string) (*http.Response, error) {
  2001  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  2002  	var body io.Reader = nil
  2003  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.backup)
  2004  	if err != nil {
  2005  		return nil, err
  2006  	}
  2007  	c.urlParams_.Set("alt", alt)
  2008  	c.urlParams_.Set("prettyPrint", "false")
  2009  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/backups")
  2010  	urls += "?" + c.urlParams_.Encode()
  2011  	req, err := http.NewRequest("POST", urls, body)
  2012  	if err != nil {
  2013  		return nil, err
  2014  	}
  2015  	req.Header = reqHeaders
  2016  	googleapi.Expand(req.URL, map[string]string{
  2017  		"parent": c.parent,
  2018  	})
  2019  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2020  }
  2021  
  2022  // Do executes the "file.projects.locations.backups.create" call.
  2023  // Any non-2xx status code is an error. Response headers are in either
  2024  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  2025  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  2026  // whether the returned error was because http.StatusNotModified was returned.
  2027  func (c *ProjectsLocationsBackupsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  2028  	gensupport.SetOptions(c.urlParams_, opts...)
  2029  	res, err := c.doRequest("json")
  2030  	if res != nil && res.StatusCode == http.StatusNotModified {
  2031  		if res.Body != nil {
  2032  			res.Body.Close()
  2033  		}
  2034  		return nil, gensupport.WrapError(&googleapi.Error{
  2035  			Code:   res.StatusCode,
  2036  			Header: res.Header,
  2037  		})
  2038  	}
  2039  	if err != nil {
  2040  		return nil, err
  2041  	}
  2042  	defer googleapi.CloseBody(res)
  2043  	if err := googleapi.CheckResponse(res); err != nil {
  2044  		return nil, gensupport.WrapError(err)
  2045  	}
  2046  	ret := &Operation{
  2047  		ServerResponse: googleapi.ServerResponse{
  2048  			Header:         res.Header,
  2049  			HTTPStatusCode: res.StatusCode,
  2050  		},
  2051  	}
  2052  	target := &ret
  2053  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2054  		return nil, err
  2055  	}
  2056  	return ret, nil
  2057  }
  2058  
  2059  type ProjectsLocationsBackupsDeleteCall struct {
  2060  	s          *Service
  2061  	name       string
  2062  	urlParams_ gensupport.URLParams
  2063  	ctx_       context.Context
  2064  	header_    http.Header
  2065  }
  2066  
  2067  // Delete: Deletes a backup.
  2068  //
  2069  //   - name: The backup resource name, in the format
  2070  //     `projects/{project_number}/locations/{location}/backups/{backup_id}`.
  2071  func (r *ProjectsLocationsBackupsService) Delete(name string) *ProjectsLocationsBackupsDeleteCall {
  2072  	c := &ProjectsLocationsBackupsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2073  	c.name = name
  2074  	return c
  2075  }
  2076  
  2077  // Fields allows partial responses to be retrieved. See
  2078  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  2079  // details.
  2080  func (c *ProjectsLocationsBackupsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsBackupsDeleteCall {
  2081  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2082  	return c
  2083  }
  2084  
  2085  // Context sets the context to be used in this call's Do method.
  2086  func (c *ProjectsLocationsBackupsDeleteCall) Context(ctx context.Context) *ProjectsLocationsBackupsDeleteCall {
  2087  	c.ctx_ = ctx
  2088  	return c
  2089  }
  2090  
  2091  // Header returns a http.Header that can be modified by the caller to add
  2092  // headers to the request.
  2093  func (c *ProjectsLocationsBackupsDeleteCall) Header() http.Header {
  2094  	if c.header_ == nil {
  2095  		c.header_ = make(http.Header)
  2096  	}
  2097  	return c.header_
  2098  }
  2099  
  2100  func (c *ProjectsLocationsBackupsDeleteCall) doRequest(alt string) (*http.Response, error) {
  2101  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  2102  	var body io.Reader = nil
  2103  	c.urlParams_.Set("alt", alt)
  2104  	c.urlParams_.Set("prettyPrint", "false")
  2105  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  2106  	urls += "?" + c.urlParams_.Encode()
  2107  	req, err := http.NewRequest("DELETE", urls, body)
  2108  	if err != nil {
  2109  		return nil, err
  2110  	}
  2111  	req.Header = reqHeaders
  2112  	googleapi.Expand(req.URL, map[string]string{
  2113  		"name": c.name,
  2114  	})
  2115  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2116  }
  2117  
  2118  // Do executes the "file.projects.locations.backups.delete" call.
  2119  // Any non-2xx status code is an error. Response headers are in either
  2120  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  2121  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  2122  // whether the returned error was because http.StatusNotModified was returned.
  2123  func (c *ProjectsLocationsBackupsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  2124  	gensupport.SetOptions(c.urlParams_, opts...)
  2125  	res, err := c.doRequest("json")
  2126  	if res != nil && res.StatusCode == http.StatusNotModified {
  2127  		if res.Body != nil {
  2128  			res.Body.Close()
  2129  		}
  2130  		return nil, gensupport.WrapError(&googleapi.Error{
  2131  			Code:   res.StatusCode,
  2132  			Header: res.Header,
  2133  		})
  2134  	}
  2135  	if err != nil {
  2136  		return nil, err
  2137  	}
  2138  	defer googleapi.CloseBody(res)
  2139  	if err := googleapi.CheckResponse(res); err != nil {
  2140  		return nil, gensupport.WrapError(err)
  2141  	}
  2142  	ret := &Operation{
  2143  		ServerResponse: googleapi.ServerResponse{
  2144  			Header:         res.Header,
  2145  			HTTPStatusCode: res.StatusCode,
  2146  		},
  2147  	}
  2148  	target := &ret
  2149  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2150  		return nil, err
  2151  	}
  2152  	return ret, nil
  2153  }
  2154  
  2155  type ProjectsLocationsBackupsGetCall struct {
  2156  	s            *Service
  2157  	name         string
  2158  	urlParams_   gensupport.URLParams
  2159  	ifNoneMatch_ string
  2160  	ctx_         context.Context
  2161  	header_      http.Header
  2162  }
  2163  
  2164  // Get: Gets the details of a specific backup.
  2165  //
  2166  //   - name: The backup resource name, in the format
  2167  //     `projects/{project_number}/locations/{location}/backups/{backup_id}`.
  2168  func (r *ProjectsLocationsBackupsService) Get(name string) *ProjectsLocationsBackupsGetCall {
  2169  	c := &ProjectsLocationsBackupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2170  	c.name = name
  2171  	return c
  2172  }
  2173  
  2174  // Fields allows partial responses to be retrieved. See
  2175  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  2176  // details.
  2177  func (c *ProjectsLocationsBackupsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsBackupsGetCall {
  2178  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2179  	return c
  2180  }
  2181  
  2182  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  2183  // object's ETag matches the given value. This is useful for getting updates
  2184  // only after the object has changed since the last request.
  2185  func (c *ProjectsLocationsBackupsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsBackupsGetCall {
  2186  	c.ifNoneMatch_ = entityTag
  2187  	return c
  2188  }
  2189  
  2190  // Context sets the context to be used in this call's Do method.
  2191  func (c *ProjectsLocationsBackupsGetCall) Context(ctx context.Context) *ProjectsLocationsBackupsGetCall {
  2192  	c.ctx_ = ctx
  2193  	return c
  2194  }
  2195  
  2196  // Header returns a http.Header that can be modified by the caller to add
  2197  // headers to the request.
  2198  func (c *ProjectsLocationsBackupsGetCall) Header() http.Header {
  2199  	if c.header_ == nil {
  2200  		c.header_ = make(http.Header)
  2201  	}
  2202  	return c.header_
  2203  }
  2204  
  2205  func (c *ProjectsLocationsBackupsGetCall) doRequest(alt string) (*http.Response, error) {
  2206  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  2207  	if c.ifNoneMatch_ != "" {
  2208  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  2209  	}
  2210  	var body io.Reader = nil
  2211  	c.urlParams_.Set("alt", alt)
  2212  	c.urlParams_.Set("prettyPrint", "false")
  2213  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  2214  	urls += "?" + c.urlParams_.Encode()
  2215  	req, err := http.NewRequest("GET", urls, body)
  2216  	if err != nil {
  2217  		return nil, err
  2218  	}
  2219  	req.Header = reqHeaders
  2220  	googleapi.Expand(req.URL, map[string]string{
  2221  		"name": c.name,
  2222  	})
  2223  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2224  }
  2225  
  2226  // Do executes the "file.projects.locations.backups.get" call.
  2227  // Any non-2xx status code is an error. Response headers are in either
  2228  // *Backup.ServerResponse.Header or (if a response was returned at all) in
  2229  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  2230  // whether the returned error was because http.StatusNotModified was returned.
  2231  func (c *ProjectsLocationsBackupsGetCall) Do(opts ...googleapi.CallOption) (*Backup, error) {
  2232  	gensupport.SetOptions(c.urlParams_, opts...)
  2233  	res, err := c.doRequest("json")
  2234  	if res != nil && res.StatusCode == http.StatusNotModified {
  2235  		if res.Body != nil {
  2236  			res.Body.Close()
  2237  		}
  2238  		return nil, gensupport.WrapError(&googleapi.Error{
  2239  			Code:   res.StatusCode,
  2240  			Header: res.Header,
  2241  		})
  2242  	}
  2243  	if err != nil {
  2244  		return nil, err
  2245  	}
  2246  	defer googleapi.CloseBody(res)
  2247  	if err := googleapi.CheckResponse(res); err != nil {
  2248  		return nil, gensupport.WrapError(err)
  2249  	}
  2250  	ret := &Backup{
  2251  		ServerResponse: googleapi.ServerResponse{
  2252  			Header:         res.Header,
  2253  			HTTPStatusCode: res.StatusCode,
  2254  		},
  2255  	}
  2256  	target := &ret
  2257  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2258  		return nil, err
  2259  	}
  2260  	return ret, nil
  2261  }
  2262  
  2263  type ProjectsLocationsBackupsListCall struct {
  2264  	s            *Service
  2265  	parent       string
  2266  	urlParams_   gensupport.URLParams
  2267  	ifNoneMatch_ string
  2268  	ctx_         context.Context
  2269  	header_      http.Header
  2270  }
  2271  
  2272  // List: Lists all backups in a project for either a specified location or for
  2273  // all locations.
  2274  //
  2275  //   - parent: The project and location for which to retrieve backup information,
  2276  //     in the format `projects/{project_number}/locations/{location}`. In
  2277  //     Filestore, backup locations map to Google Cloud regions, for example
  2278  //     **us-west1**. To retrieve backup information for all locations, use "-"
  2279  //     for the `{location}` value.
  2280  func (r *ProjectsLocationsBackupsService) List(parent string) *ProjectsLocationsBackupsListCall {
  2281  	c := &ProjectsLocationsBackupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2282  	c.parent = parent
  2283  	return c
  2284  }
  2285  
  2286  // Filter sets the optional parameter "filter": List filter.
  2287  func (c *ProjectsLocationsBackupsListCall) Filter(filter string) *ProjectsLocationsBackupsListCall {
  2288  	c.urlParams_.Set("filter", filter)
  2289  	return c
  2290  }
  2291  
  2292  // OrderBy sets the optional parameter "orderBy": Sort results. Supported
  2293  // values are "name", "name desc" or "" (unsorted).
  2294  func (c *ProjectsLocationsBackupsListCall) OrderBy(orderBy string) *ProjectsLocationsBackupsListCall {
  2295  	c.urlParams_.Set("orderBy", orderBy)
  2296  	return c
  2297  }
  2298  
  2299  // PageSize sets the optional parameter "pageSize": The maximum number of items
  2300  // to return.
  2301  func (c *ProjectsLocationsBackupsListCall) PageSize(pageSize int64) *ProjectsLocationsBackupsListCall {
  2302  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  2303  	return c
  2304  }
  2305  
  2306  // PageToken sets the optional parameter "pageToken": The next_page_token value
  2307  // to use if there are additional results to retrieve for this list request.
  2308  func (c *ProjectsLocationsBackupsListCall) PageToken(pageToken string) *ProjectsLocationsBackupsListCall {
  2309  	c.urlParams_.Set("pageToken", pageToken)
  2310  	return c
  2311  }
  2312  
  2313  // Fields allows partial responses to be retrieved. See
  2314  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  2315  // details.
  2316  func (c *ProjectsLocationsBackupsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsBackupsListCall {
  2317  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2318  	return c
  2319  }
  2320  
  2321  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  2322  // object's ETag matches the given value. This is useful for getting updates
  2323  // only after the object has changed since the last request.
  2324  func (c *ProjectsLocationsBackupsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsBackupsListCall {
  2325  	c.ifNoneMatch_ = entityTag
  2326  	return c
  2327  }
  2328  
  2329  // Context sets the context to be used in this call's Do method.
  2330  func (c *ProjectsLocationsBackupsListCall) Context(ctx context.Context) *ProjectsLocationsBackupsListCall {
  2331  	c.ctx_ = ctx
  2332  	return c
  2333  }
  2334  
  2335  // Header returns a http.Header that can be modified by the caller to add
  2336  // headers to the request.
  2337  func (c *ProjectsLocationsBackupsListCall) Header() http.Header {
  2338  	if c.header_ == nil {
  2339  		c.header_ = make(http.Header)
  2340  	}
  2341  	return c.header_
  2342  }
  2343  
  2344  func (c *ProjectsLocationsBackupsListCall) doRequest(alt string) (*http.Response, error) {
  2345  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  2346  	if c.ifNoneMatch_ != "" {
  2347  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  2348  	}
  2349  	var body io.Reader = nil
  2350  	c.urlParams_.Set("alt", alt)
  2351  	c.urlParams_.Set("prettyPrint", "false")
  2352  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/backups")
  2353  	urls += "?" + c.urlParams_.Encode()
  2354  	req, err := http.NewRequest("GET", urls, body)
  2355  	if err != nil {
  2356  		return nil, err
  2357  	}
  2358  	req.Header = reqHeaders
  2359  	googleapi.Expand(req.URL, map[string]string{
  2360  		"parent": c.parent,
  2361  	})
  2362  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2363  }
  2364  
  2365  // Do executes the "file.projects.locations.backups.list" call.
  2366  // Any non-2xx status code is an error. Response headers are in either
  2367  // *ListBackupsResponse.ServerResponse.Header or (if a response was returned at
  2368  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  2369  // check whether the returned error was because http.StatusNotModified was
  2370  // returned.
  2371  func (c *ProjectsLocationsBackupsListCall) Do(opts ...googleapi.CallOption) (*ListBackupsResponse, error) {
  2372  	gensupport.SetOptions(c.urlParams_, opts...)
  2373  	res, err := c.doRequest("json")
  2374  	if res != nil && res.StatusCode == http.StatusNotModified {
  2375  		if res.Body != nil {
  2376  			res.Body.Close()
  2377  		}
  2378  		return nil, gensupport.WrapError(&googleapi.Error{
  2379  			Code:   res.StatusCode,
  2380  			Header: res.Header,
  2381  		})
  2382  	}
  2383  	if err != nil {
  2384  		return nil, err
  2385  	}
  2386  	defer googleapi.CloseBody(res)
  2387  	if err := googleapi.CheckResponse(res); err != nil {
  2388  		return nil, gensupport.WrapError(err)
  2389  	}
  2390  	ret := &ListBackupsResponse{
  2391  		ServerResponse: googleapi.ServerResponse{
  2392  			Header:         res.Header,
  2393  			HTTPStatusCode: res.StatusCode,
  2394  		},
  2395  	}
  2396  	target := &ret
  2397  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2398  		return nil, err
  2399  	}
  2400  	return ret, nil
  2401  }
  2402  
  2403  // Pages invokes f for each page of results.
  2404  // A non-nil error returned from f will halt the iteration.
  2405  // The provided context supersedes any context provided to the Context method.
  2406  func (c *ProjectsLocationsBackupsListCall) Pages(ctx context.Context, f func(*ListBackupsResponse) error) error {
  2407  	c.ctx_ = ctx
  2408  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  2409  	for {
  2410  		x, err := c.Do()
  2411  		if err != nil {
  2412  			return err
  2413  		}
  2414  		if err := f(x); err != nil {
  2415  			return err
  2416  		}
  2417  		if x.NextPageToken == "" {
  2418  			return nil
  2419  		}
  2420  		c.PageToken(x.NextPageToken)
  2421  	}
  2422  }
  2423  
  2424  type ProjectsLocationsBackupsPatchCall struct {
  2425  	s          *Service
  2426  	name       string
  2427  	backup     *Backup
  2428  	urlParams_ gensupport.URLParams
  2429  	ctx_       context.Context
  2430  	header_    http.Header
  2431  }
  2432  
  2433  // Patch: Updates the settings of a specific backup.
  2434  //
  2435  //   - name: Output only. The resource name of the backup, in the format
  2436  //     `projects/{project_number}/locations/{location_id}/backups/{backup_id}`.
  2437  func (r *ProjectsLocationsBackupsService) Patch(name string, backup *Backup) *ProjectsLocationsBackupsPatchCall {
  2438  	c := &ProjectsLocationsBackupsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2439  	c.name = name
  2440  	c.backup = backup
  2441  	return c
  2442  }
  2443  
  2444  // UpdateMask sets the optional parameter "updateMask": Required. Mask of
  2445  // fields to update. At least one path must be supplied in this field.
  2446  func (c *ProjectsLocationsBackupsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsBackupsPatchCall {
  2447  	c.urlParams_.Set("updateMask", updateMask)
  2448  	return c
  2449  }
  2450  
  2451  // Fields allows partial responses to be retrieved. See
  2452  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  2453  // details.
  2454  func (c *ProjectsLocationsBackupsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsBackupsPatchCall {
  2455  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2456  	return c
  2457  }
  2458  
  2459  // Context sets the context to be used in this call's Do method.
  2460  func (c *ProjectsLocationsBackupsPatchCall) Context(ctx context.Context) *ProjectsLocationsBackupsPatchCall {
  2461  	c.ctx_ = ctx
  2462  	return c
  2463  }
  2464  
  2465  // Header returns a http.Header that can be modified by the caller to add
  2466  // headers to the request.
  2467  func (c *ProjectsLocationsBackupsPatchCall) Header() http.Header {
  2468  	if c.header_ == nil {
  2469  		c.header_ = make(http.Header)
  2470  	}
  2471  	return c.header_
  2472  }
  2473  
  2474  func (c *ProjectsLocationsBackupsPatchCall) doRequest(alt string) (*http.Response, error) {
  2475  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  2476  	var body io.Reader = nil
  2477  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.backup)
  2478  	if err != nil {
  2479  		return nil, err
  2480  	}
  2481  	c.urlParams_.Set("alt", alt)
  2482  	c.urlParams_.Set("prettyPrint", "false")
  2483  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  2484  	urls += "?" + c.urlParams_.Encode()
  2485  	req, err := http.NewRequest("PATCH", urls, body)
  2486  	if err != nil {
  2487  		return nil, err
  2488  	}
  2489  	req.Header = reqHeaders
  2490  	googleapi.Expand(req.URL, map[string]string{
  2491  		"name": c.name,
  2492  	})
  2493  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2494  }
  2495  
  2496  // Do executes the "file.projects.locations.backups.patch" call.
  2497  // Any non-2xx status code is an error. Response headers are in either
  2498  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  2499  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  2500  // whether the returned error was because http.StatusNotModified was returned.
  2501  func (c *ProjectsLocationsBackupsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  2502  	gensupport.SetOptions(c.urlParams_, opts...)
  2503  	res, err := c.doRequest("json")
  2504  	if res != nil && res.StatusCode == http.StatusNotModified {
  2505  		if res.Body != nil {
  2506  			res.Body.Close()
  2507  		}
  2508  		return nil, gensupport.WrapError(&googleapi.Error{
  2509  			Code:   res.StatusCode,
  2510  			Header: res.Header,
  2511  		})
  2512  	}
  2513  	if err != nil {
  2514  		return nil, err
  2515  	}
  2516  	defer googleapi.CloseBody(res)
  2517  	if err := googleapi.CheckResponse(res); err != nil {
  2518  		return nil, gensupport.WrapError(err)
  2519  	}
  2520  	ret := &Operation{
  2521  		ServerResponse: googleapi.ServerResponse{
  2522  			Header:         res.Header,
  2523  			HTTPStatusCode: res.StatusCode,
  2524  		},
  2525  	}
  2526  	target := &ret
  2527  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2528  		return nil, err
  2529  	}
  2530  	return ret, nil
  2531  }
  2532  
  2533  type ProjectsLocationsInstancesCreateCall struct {
  2534  	s          *Service
  2535  	parent     string
  2536  	instance   *Instance
  2537  	urlParams_ gensupport.URLParams
  2538  	ctx_       context.Context
  2539  	header_    http.Header
  2540  }
  2541  
  2542  // Create: Creates an instance. When creating from a backup, the capacity of
  2543  // the new instance needs to be equal to or larger than the capacity of the
  2544  // backup (and also equal to or larger than the minimum capacity of the tier).
  2545  //
  2546  //   - parent: The instance's project and location, in the format
  2547  //     `projects/{project_id}/locations/{location}`. In Filestore, locations map
  2548  //     to Google Cloud zones, for example **us-west1-b**.
  2549  func (r *ProjectsLocationsInstancesService) Create(parent string, instance *Instance) *ProjectsLocationsInstancesCreateCall {
  2550  	c := &ProjectsLocationsInstancesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2551  	c.parent = parent
  2552  	c.instance = instance
  2553  	return c
  2554  }
  2555  
  2556  // InstanceId sets the optional parameter "instanceId": Required. The name of
  2557  // the instance to create. The name must be unique for the specified project
  2558  // and location.
  2559  func (c *ProjectsLocationsInstancesCreateCall) InstanceId(instanceId string) *ProjectsLocationsInstancesCreateCall {
  2560  	c.urlParams_.Set("instanceId", instanceId)
  2561  	return c
  2562  }
  2563  
  2564  // Fields allows partial responses to be retrieved. See
  2565  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  2566  // details.
  2567  func (c *ProjectsLocationsInstancesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsInstancesCreateCall {
  2568  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2569  	return c
  2570  }
  2571  
  2572  // Context sets the context to be used in this call's Do method.
  2573  func (c *ProjectsLocationsInstancesCreateCall) Context(ctx context.Context) *ProjectsLocationsInstancesCreateCall {
  2574  	c.ctx_ = ctx
  2575  	return c
  2576  }
  2577  
  2578  // Header returns a http.Header that can be modified by the caller to add
  2579  // headers to the request.
  2580  func (c *ProjectsLocationsInstancesCreateCall) Header() http.Header {
  2581  	if c.header_ == nil {
  2582  		c.header_ = make(http.Header)
  2583  	}
  2584  	return c.header_
  2585  }
  2586  
  2587  func (c *ProjectsLocationsInstancesCreateCall) doRequest(alt string) (*http.Response, error) {
  2588  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  2589  	var body io.Reader = nil
  2590  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.instance)
  2591  	if err != nil {
  2592  		return nil, err
  2593  	}
  2594  	c.urlParams_.Set("alt", alt)
  2595  	c.urlParams_.Set("prettyPrint", "false")
  2596  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/instances")
  2597  	urls += "?" + c.urlParams_.Encode()
  2598  	req, err := http.NewRequest("POST", urls, body)
  2599  	if err != nil {
  2600  		return nil, err
  2601  	}
  2602  	req.Header = reqHeaders
  2603  	googleapi.Expand(req.URL, map[string]string{
  2604  		"parent": c.parent,
  2605  	})
  2606  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2607  }
  2608  
  2609  // Do executes the "file.projects.locations.instances.create" call.
  2610  // Any non-2xx status code is an error. Response headers are in either
  2611  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  2612  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  2613  // whether the returned error was because http.StatusNotModified was returned.
  2614  func (c *ProjectsLocationsInstancesCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  2615  	gensupport.SetOptions(c.urlParams_, opts...)
  2616  	res, err := c.doRequest("json")
  2617  	if res != nil && res.StatusCode == http.StatusNotModified {
  2618  		if res.Body != nil {
  2619  			res.Body.Close()
  2620  		}
  2621  		return nil, gensupport.WrapError(&googleapi.Error{
  2622  			Code:   res.StatusCode,
  2623  			Header: res.Header,
  2624  		})
  2625  	}
  2626  	if err != nil {
  2627  		return nil, err
  2628  	}
  2629  	defer googleapi.CloseBody(res)
  2630  	if err := googleapi.CheckResponse(res); err != nil {
  2631  		return nil, gensupport.WrapError(err)
  2632  	}
  2633  	ret := &Operation{
  2634  		ServerResponse: googleapi.ServerResponse{
  2635  			Header:         res.Header,
  2636  			HTTPStatusCode: res.StatusCode,
  2637  		},
  2638  	}
  2639  	target := &ret
  2640  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2641  		return nil, err
  2642  	}
  2643  	return ret, nil
  2644  }
  2645  
  2646  type ProjectsLocationsInstancesDeleteCall struct {
  2647  	s          *Service
  2648  	name       string
  2649  	urlParams_ gensupport.URLParams
  2650  	ctx_       context.Context
  2651  	header_    http.Header
  2652  }
  2653  
  2654  // Delete: Deletes an instance.
  2655  //
  2656  //   - name: The instance resource name, in the format
  2657  //     `projects/{project_id}/locations/{location}/instances/{instance_id}`.
  2658  func (r *ProjectsLocationsInstancesService) Delete(name string) *ProjectsLocationsInstancesDeleteCall {
  2659  	c := &ProjectsLocationsInstancesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2660  	c.name = name
  2661  	return c
  2662  }
  2663  
  2664  // Force sets the optional parameter "force": If set to true, all snapshots of
  2665  // the instance will also be deleted. (Otherwise, the request will only work if
  2666  // the instance has no snapshots.)
  2667  func (c *ProjectsLocationsInstancesDeleteCall) Force(force bool) *ProjectsLocationsInstancesDeleteCall {
  2668  	c.urlParams_.Set("force", fmt.Sprint(force))
  2669  	return c
  2670  }
  2671  
  2672  // Fields allows partial responses to be retrieved. See
  2673  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  2674  // details.
  2675  func (c *ProjectsLocationsInstancesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsInstancesDeleteCall {
  2676  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2677  	return c
  2678  }
  2679  
  2680  // Context sets the context to be used in this call's Do method.
  2681  func (c *ProjectsLocationsInstancesDeleteCall) Context(ctx context.Context) *ProjectsLocationsInstancesDeleteCall {
  2682  	c.ctx_ = ctx
  2683  	return c
  2684  }
  2685  
  2686  // Header returns a http.Header that can be modified by the caller to add
  2687  // headers to the request.
  2688  func (c *ProjectsLocationsInstancesDeleteCall) Header() http.Header {
  2689  	if c.header_ == nil {
  2690  		c.header_ = make(http.Header)
  2691  	}
  2692  	return c.header_
  2693  }
  2694  
  2695  func (c *ProjectsLocationsInstancesDeleteCall) doRequest(alt string) (*http.Response, error) {
  2696  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  2697  	var body io.Reader = nil
  2698  	c.urlParams_.Set("alt", alt)
  2699  	c.urlParams_.Set("prettyPrint", "false")
  2700  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  2701  	urls += "?" + c.urlParams_.Encode()
  2702  	req, err := http.NewRequest("DELETE", urls, body)
  2703  	if err != nil {
  2704  		return nil, err
  2705  	}
  2706  	req.Header = reqHeaders
  2707  	googleapi.Expand(req.URL, map[string]string{
  2708  		"name": c.name,
  2709  	})
  2710  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2711  }
  2712  
  2713  // Do executes the "file.projects.locations.instances.delete" call.
  2714  // Any non-2xx status code is an error. Response headers are in either
  2715  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  2716  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  2717  // whether the returned error was because http.StatusNotModified was returned.
  2718  func (c *ProjectsLocationsInstancesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  2719  	gensupport.SetOptions(c.urlParams_, opts...)
  2720  	res, err := c.doRequest("json")
  2721  	if res != nil && res.StatusCode == http.StatusNotModified {
  2722  		if res.Body != nil {
  2723  			res.Body.Close()
  2724  		}
  2725  		return nil, gensupport.WrapError(&googleapi.Error{
  2726  			Code:   res.StatusCode,
  2727  			Header: res.Header,
  2728  		})
  2729  	}
  2730  	if err != nil {
  2731  		return nil, err
  2732  	}
  2733  	defer googleapi.CloseBody(res)
  2734  	if err := googleapi.CheckResponse(res); err != nil {
  2735  		return nil, gensupport.WrapError(err)
  2736  	}
  2737  	ret := &Operation{
  2738  		ServerResponse: googleapi.ServerResponse{
  2739  			Header:         res.Header,
  2740  			HTTPStatusCode: res.StatusCode,
  2741  		},
  2742  	}
  2743  	target := &ret
  2744  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2745  		return nil, err
  2746  	}
  2747  	return ret, nil
  2748  }
  2749  
  2750  type ProjectsLocationsInstancesGetCall struct {
  2751  	s            *Service
  2752  	name         string
  2753  	urlParams_   gensupport.URLParams
  2754  	ifNoneMatch_ string
  2755  	ctx_         context.Context
  2756  	header_      http.Header
  2757  }
  2758  
  2759  // Get: Gets the details of a specific instance.
  2760  //
  2761  //   - name: The instance resource name, in the format
  2762  //     `projects/{project_id}/locations/{location}/instances/{instance_id}`.
  2763  func (r *ProjectsLocationsInstancesService) Get(name string) *ProjectsLocationsInstancesGetCall {
  2764  	c := &ProjectsLocationsInstancesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2765  	c.name = name
  2766  	return c
  2767  }
  2768  
  2769  // Fields allows partial responses to be retrieved. See
  2770  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  2771  // details.
  2772  func (c *ProjectsLocationsInstancesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsInstancesGetCall {
  2773  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2774  	return c
  2775  }
  2776  
  2777  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  2778  // object's ETag matches the given value. This is useful for getting updates
  2779  // only after the object has changed since the last request.
  2780  func (c *ProjectsLocationsInstancesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsInstancesGetCall {
  2781  	c.ifNoneMatch_ = entityTag
  2782  	return c
  2783  }
  2784  
  2785  // Context sets the context to be used in this call's Do method.
  2786  func (c *ProjectsLocationsInstancesGetCall) Context(ctx context.Context) *ProjectsLocationsInstancesGetCall {
  2787  	c.ctx_ = ctx
  2788  	return c
  2789  }
  2790  
  2791  // Header returns a http.Header that can be modified by the caller to add
  2792  // headers to the request.
  2793  func (c *ProjectsLocationsInstancesGetCall) Header() http.Header {
  2794  	if c.header_ == nil {
  2795  		c.header_ = make(http.Header)
  2796  	}
  2797  	return c.header_
  2798  }
  2799  
  2800  func (c *ProjectsLocationsInstancesGetCall) doRequest(alt string) (*http.Response, error) {
  2801  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  2802  	if c.ifNoneMatch_ != "" {
  2803  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  2804  	}
  2805  	var body io.Reader = nil
  2806  	c.urlParams_.Set("alt", alt)
  2807  	c.urlParams_.Set("prettyPrint", "false")
  2808  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  2809  	urls += "?" + c.urlParams_.Encode()
  2810  	req, err := http.NewRequest("GET", urls, body)
  2811  	if err != nil {
  2812  		return nil, err
  2813  	}
  2814  	req.Header = reqHeaders
  2815  	googleapi.Expand(req.URL, map[string]string{
  2816  		"name": c.name,
  2817  	})
  2818  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2819  }
  2820  
  2821  // Do executes the "file.projects.locations.instances.get" call.
  2822  // Any non-2xx status code is an error. Response headers are in either
  2823  // *Instance.ServerResponse.Header or (if a response was returned at all) in
  2824  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  2825  // whether the returned error was because http.StatusNotModified was returned.
  2826  func (c *ProjectsLocationsInstancesGetCall) Do(opts ...googleapi.CallOption) (*Instance, error) {
  2827  	gensupport.SetOptions(c.urlParams_, opts...)
  2828  	res, err := c.doRequest("json")
  2829  	if res != nil && res.StatusCode == http.StatusNotModified {
  2830  		if res.Body != nil {
  2831  			res.Body.Close()
  2832  		}
  2833  		return nil, gensupport.WrapError(&googleapi.Error{
  2834  			Code:   res.StatusCode,
  2835  			Header: res.Header,
  2836  		})
  2837  	}
  2838  	if err != nil {
  2839  		return nil, err
  2840  	}
  2841  	defer googleapi.CloseBody(res)
  2842  	if err := googleapi.CheckResponse(res); err != nil {
  2843  		return nil, gensupport.WrapError(err)
  2844  	}
  2845  	ret := &Instance{
  2846  		ServerResponse: googleapi.ServerResponse{
  2847  			Header:         res.Header,
  2848  			HTTPStatusCode: res.StatusCode,
  2849  		},
  2850  	}
  2851  	target := &ret
  2852  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2853  		return nil, err
  2854  	}
  2855  	return ret, nil
  2856  }
  2857  
  2858  type ProjectsLocationsInstancesListCall struct {
  2859  	s            *Service
  2860  	parent       string
  2861  	urlParams_   gensupport.URLParams
  2862  	ifNoneMatch_ string
  2863  	ctx_         context.Context
  2864  	header_      http.Header
  2865  }
  2866  
  2867  // List: Lists all instances in a project for either a specified location or
  2868  // for all locations.
  2869  //
  2870  //   - parent: The project and location for which to retrieve instance
  2871  //     information, in the format `projects/{project_id}/locations/{location}`.
  2872  //     In Cloud Filestore, locations map to Google Cloud zones, for example
  2873  //     **us-west1-b**. To retrieve instance information for all locations, use
  2874  //     "-" for the `{location}` value.
  2875  func (r *ProjectsLocationsInstancesService) List(parent string) *ProjectsLocationsInstancesListCall {
  2876  	c := &ProjectsLocationsInstancesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  2877  	c.parent = parent
  2878  	return c
  2879  }
  2880  
  2881  // Filter sets the optional parameter "filter": List filter.
  2882  func (c *ProjectsLocationsInstancesListCall) Filter(filter string) *ProjectsLocationsInstancesListCall {
  2883  	c.urlParams_.Set("filter", filter)
  2884  	return c
  2885  }
  2886  
  2887  // OrderBy sets the optional parameter "orderBy": Sort results. Supported
  2888  // values are "name", "name desc" or "" (unsorted).
  2889  func (c *ProjectsLocationsInstancesListCall) OrderBy(orderBy string) *ProjectsLocationsInstancesListCall {
  2890  	c.urlParams_.Set("orderBy", orderBy)
  2891  	return c
  2892  }
  2893  
  2894  // PageSize sets the optional parameter "pageSize": The maximum number of items
  2895  // to return.
  2896  func (c *ProjectsLocationsInstancesListCall) PageSize(pageSize int64) *ProjectsLocationsInstancesListCall {
  2897  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  2898  	return c
  2899  }
  2900  
  2901  // PageToken sets the optional parameter "pageToken": The next_page_token value
  2902  // to use if there are additional results to retrieve for this list request.
  2903  func (c *ProjectsLocationsInstancesListCall) PageToken(pageToken string) *ProjectsLocationsInstancesListCall {
  2904  	c.urlParams_.Set("pageToken", pageToken)
  2905  	return c
  2906  }
  2907  
  2908  // Fields allows partial responses to be retrieved. See
  2909  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  2910  // details.
  2911  func (c *ProjectsLocationsInstancesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsInstancesListCall {
  2912  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  2913  	return c
  2914  }
  2915  
  2916  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  2917  // object's ETag matches the given value. This is useful for getting updates
  2918  // only after the object has changed since the last request.
  2919  func (c *ProjectsLocationsInstancesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsInstancesListCall {
  2920  	c.ifNoneMatch_ = entityTag
  2921  	return c
  2922  }
  2923  
  2924  // Context sets the context to be used in this call's Do method.
  2925  func (c *ProjectsLocationsInstancesListCall) Context(ctx context.Context) *ProjectsLocationsInstancesListCall {
  2926  	c.ctx_ = ctx
  2927  	return c
  2928  }
  2929  
  2930  // Header returns a http.Header that can be modified by the caller to add
  2931  // headers to the request.
  2932  func (c *ProjectsLocationsInstancesListCall) Header() http.Header {
  2933  	if c.header_ == nil {
  2934  		c.header_ = make(http.Header)
  2935  	}
  2936  	return c.header_
  2937  }
  2938  
  2939  func (c *ProjectsLocationsInstancesListCall) doRequest(alt string) (*http.Response, error) {
  2940  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  2941  	if c.ifNoneMatch_ != "" {
  2942  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  2943  	}
  2944  	var body io.Reader = nil
  2945  	c.urlParams_.Set("alt", alt)
  2946  	c.urlParams_.Set("prettyPrint", "false")
  2947  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/instances")
  2948  	urls += "?" + c.urlParams_.Encode()
  2949  	req, err := http.NewRequest("GET", urls, body)
  2950  	if err != nil {
  2951  		return nil, err
  2952  	}
  2953  	req.Header = reqHeaders
  2954  	googleapi.Expand(req.URL, map[string]string{
  2955  		"parent": c.parent,
  2956  	})
  2957  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  2958  }
  2959  
  2960  // Do executes the "file.projects.locations.instances.list" call.
  2961  // Any non-2xx status code is an error. Response headers are in either
  2962  // *ListInstancesResponse.ServerResponse.Header or (if a response was returned
  2963  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  2964  // check whether the returned error was because http.StatusNotModified was
  2965  // returned.
  2966  func (c *ProjectsLocationsInstancesListCall) Do(opts ...googleapi.CallOption) (*ListInstancesResponse, error) {
  2967  	gensupport.SetOptions(c.urlParams_, opts...)
  2968  	res, err := c.doRequest("json")
  2969  	if res != nil && res.StatusCode == http.StatusNotModified {
  2970  		if res.Body != nil {
  2971  			res.Body.Close()
  2972  		}
  2973  		return nil, gensupport.WrapError(&googleapi.Error{
  2974  			Code:   res.StatusCode,
  2975  			Header: res.Header,
  2976  		})
  2977  	}
  2978  	if err != nil {
  2979  		return nil, err
  2980  	}
  2981  	defer googleapi.CloseBody(res)
  2982  	if err := googleapi.CheckResponse(res); err != nil {
  2983  		return nil, gensupport.WrapError(err)
  2984  	}
  2985  	ret := &ListInstancesResponse{
  2986  		ServerResponse: googleapi.ServerResponse{
  2987  			Header:         res.Header,
  2988  			HTTPStatusCode: res.StatusCode,
  2989  		},
  2990  	}
  2991  	target := &ret
  2992  	if err := gensupport.DecodeResponse(target, res); err != nil {
  2993  		return nil, err
  2994  	}
  2995  	return ret, nil
  2996  }
  2997  
  2998  // Pages invokes f for each page of results.
  2999  // A non-nil error returned from f will halt the iteration.
  3000  // The provided context supersedes any context provided to the Context method.
  3001  func (c *ProjectsLocationsInstancesListCall) Pages(ctx context.Context, f func(*ListInstancesResponse) error) error {
  3002  	c.ctx_ = ctx
  3003  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  3004  	for {
  3005  		x, err := c.Do()
  3006  		if err != nil {
  3007  			return err
  3008  		}
  3009  		if err := f(x); err != nil {
  3010  			return err
  3011  		}
  3012  		if x.NextPageToken == "" {
  3013  			return nil
  3014  		}
  3015  		c.PageToken(x.NextPageToken)
  3016  	}
  3017  }
  3018  
  3019  type ProjectsLocationsInstancesPatchCall struct {
  3020  	s          *Service
  3021  	name       string
  3022  	instance   *Instance
  3023  	urlParams_ gensupport.URLParams
  3024  	ctx_       context.Context
  3025  	header_    http.Header
  3026  }
  3027  
  3028  // Patch: Updates the settings of a specific instance.
  3029  //
  3030  //   - name: Output only. The resource name of the instance, in the format
  3031  //     `projects/{project}/locations/{location}/instances/{instance}`.
  3032  func (r *ProjectsLocationsInstancesService) Patch(name string, instance *Instance) *ProjectsLocationsInstancesPatchCall {
  3033  	c := &ProjectsLocationsInstancesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3034  	c.name = name
  3035  	c.instance = instance
  3036  	return c
  3037  }
  3038  
  3039  // UpdateMask sets the optional parameter "updateMask": Mask of fields to
  3040  // update. At least one path must be supplied in this field. The elements of
  3041  // the repeated paths field may only include these fields: * "description" *
  3042  // "file_shares" * "labels"
  3043  func (c *ProjectsLocationsInstancesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsInstancesPatchCall {
  3044  	c.urlParams_.Set("updateMask", updateMask)
  3045  	return c
  3046  }
  3047  
  3048  // Fields allows partial responses to be retrieved. See
  3049  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3050  // details.
  3051  func (c *ProjectsLocationsInstancesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsInstancesPatchCall {
  3052  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3053  	return c
  3054  }
  3055  
  3056  // Context sets the context to be used in this call's Do method.
  3057  func (c *ProjectsLocationsInstancesPatchCall) Context(ctx context.Context) *ProjectsLocationsInstancesPatchCall {
  3058  	c.ctx_ = ctx
  3059  	return c
  3060  }
  3061  
  3062  // Header returns a http.Header that can be modified by the caller to add
  3063  // headers to the request.
  3064  func (c *ProjectsLocationsInstancesPatchCall) Header() http.Header {
  3065  	if c.header_ == nil {
  3066  		c.header_ = make(http.Header)
  3067  	}
  3068  	return c.header_
  3069  }
  3070  
  3071  func (c *ProjectsLocationsInstancesPatchCall) doRequest(alt string) (*http.Response, error) {
  3072  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3073  	var body io.Reader = nil
  3074  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.instance)
  3075  	if err != nil {
  3076  		return nil, err
  3077  	}
  3078  	c.urlParams_.Set("alt", alt)
  3079  	c.urlParams_.Set("prettyPrint", "false")
  3080  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  3081  	urls += "?" + c.urlParams_.Encode()
  3082  	req, err := http.NewRequest("PATCH", urls, body)
  3083  	if err != nil {
  3084  		return nil, err
  3085  	}
  3086  	req.Header = reqHeaders
  3087  	googleapi.Expand(req.URL, map[string]string{
  3088  		"name": c.name,
  3089  	})
  3090  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3091  }
  3092  
  3093  // Do executes the "file.projects.locations.instances.patch" call.
  3094  // Any non-2xx status code is an error. Response headers are in either
  3095  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3096  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3097  // whether the returned error was because http.StatusNotModified was returned.
  3098  func (c *ProjectsLocationsInstancesPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3099  	gensupport.SetOptions(c.urlParams_, opts...)
  3100  	res, err := c.doRequest("json")
  3101  	if res != nil && res.StatusCode == http.StatusNotModified {
  3102  		if res.Body != nil {
  3103  			res.Body.Close()
  3104  		}
  3105  		return nil, gensupport.WrapError(&googleapi.Error{
  3106  			Code:   res.StatusCode,
  3107  			Header: res.Header,
  3108  		})
  3109  	}
  3110  	if err != nil {
  3111  		return nil, err
  3112  	}
  3113  	defer googleapi.CloseBody(res)
  3114  	if err := googleapi.CheckResponse(res); err != nil {
  3115  		return nil, gensupport.WrapError(err)
  3116  	}
  3117  	ret := &Operation{
  3118  		ServerResponse: googleapi.ServerResponse{
  3119  			Header:         res.Header,
  3120  			HTTPStatusCode: res.StatusCode,
  3121  		},
  3122  	}
  3123  	target := &ret
  3124  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3125  		return nil, err
  3126  	}
  3127  	return ret, nil
  3128  }
  3129  
  3130  type ProjectsLocationsInstancesRestoreCall struct {
  3131  	s                      *Service
  3132  	name                   string
  3133  	restoreinstancerequest *RestoreInstanceRequest
  3134  	urlParams_             gensupport.URLParams
  3135  	ctx_                   context.Context
  3136  	header_                http.Header
  3137  }
  3138  
  3139  // Restore: Restores an existing instance's file share from a backup. The
  3140  // capacity of the instance needs to be equal to or larger than the capacity of
  3141  // the backup (and also equal to or larger than the minimum capacity of the
  3142  // tier).
  3143  //
  3144  //   - name: The resource name of the instance, in the format
  3145  //     `projects/{project_number}/locations/{location_id}/instances/{instance_id}`
  3146  //     .
  3147  func (r *ProjectsLocationsInstancesService) Restore(name string, restoreinstancerequest *RestoreInstanceRequest) *ProjectsLocationsInstancesRestoreCall {
  3148  	c := &ProjectsLocationsInstancesRestoreCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3149  	c.name = name
  3150  	c.restoreinstancerequest = restoreinstancerequest
  3151  	return c
  3152  }
  3153  
  3154  // Fields allows partial responses to be retrieved. See
  3155  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3156  // details.
  3157  func (c *ProjectsLocationsInstancesRestoreCall) Fields(s ...googleapi.Field) *ProjectsLocationsInstancesRestoreCall {
  3158  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3159  	return c
  3160  }
  3161  
  3162  // Context sets the context to be used in this call's Do method.
  3163  func (c *ProjectsLocationsInstancesRestoreCall) Context(ctx context.Context) *ProjectsLocationsInstancesRestoreCall {
  3164  	c.ctx_ = ctx
  3165  	return c
  3166  }
  3167  
  3168  // Header returns a http.Header that can be modified by the caller to add
  3169  // headers to the request.
  3170  func (c *ProjectsLocationsInstancesRestoreCall) Header() http.Header {
  3171  	if c.header_ == nil {
  3172  		c.header_ = make(http.Header)
  3173  	}
  3174  	return c.header_
  3175  }
  3176  
  3177  func (c *ProjectsLocationsInstancesRestoreCall) doRequest(alt string) (*http.Response, error) {
  3178  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3179  	var body io.Reader = nil
  3180  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.restoreinstancerequest)
  3181  	if err != nil {
  3182  		return nil, err
  3183  	}
  3184  	c.urlParams_.Set("alt", alt)
  3185  	c.urlParams_.Set("prettyPrint", "false")
  3186  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:restore")
  3187  	urls += "?" + c.urlParams_.Encode()
  3188  	req, err := http.NewRequest("POST", urls, body)
  3189  	if err != nil {
  3190  		return nil, err
  3191  	}
  3192  	req.Header = reqHeaders
  3193  	googleapi.Expand(req.URL, map[string]string{
  3194  		"name": c.name,
  3195  	})
  3196  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3197  }
  3198  
  3199  // Do executes the "file.projects.locations.instances.restore" call.
  3200  // Any non-2xx status code is an error. Response headers are in either
  3201  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3202  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3203  // whether the returned error was because http.StatusNotModified was returned.
  3204  func (c *ProjectsLocationsInstancesRestoreCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3205  	gensupport.SetOptions(c.urlParams_, opts...)
  3206  	res, err := c.doRequest("json")
  3207  	if res != nil && res.StatusCode == http.StatusNotModified {
  3208  		if res.Body != nil {
  3209  			res.Body.Close()
  3210  		}
  3211  		return nil, gensupport.WrapError(&googleapi.Error{
  3212  			Code:   res.StatusCode,
  3213  			Header: res.Header,
  3214  		})
  3215  	}
  3216  	if err != nil {
  3217  		return nil, err
  3218  	}
  3219  	defer googleapi.CloseBody(res)
  3220  	if err := googleapi.CheckResponse(res); err != nil {
  3221  		return nil, gensupport.WrapError(err)
  3222  	}
  3223  	ret := &Operation{
  3224  		ServerResponse: googleapi.ServerResponse{
  3225  			Header:         res.Header,
  3226  			HTTPStatusCode: res.StatusCode,
  3227  		},
  3228  	}
  3229  	target := &ret
  3230  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3231  		return nil, err
  3232  	}
  3233  	return ret, nil
  3234  }
  3235  
  3236  type ProjectsLocationsInstancesRevertCall struct {
  3237  	s                     *Service
  3238  	name                  string
  3239  	revertinstancerequest *RevertInstanceRequest
  3240  	urlParams_            gensupport.URLParams
  3241  	ctx_                  context.Context
  3242  	header_               http.Header
  3243  }
  3244  
  3245  // Revert: Revert an existing instance's file system to a specified snapshot.
  3246  //
  3247  //   - name: The resource name of the instance, in the format
  3248  //     `projects/{project_id}/locations/{location_id}/instances/{instance_id}`.
  3249  func (r *ProjectsLocationsInstancesService) Revert(name string, revertinstancerequest *RevertInstanceRequest) *ProjectsLocationsInstancesRevertCall {
  3250  	c := &ProjectsLocationsInstancesRevertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3251  	c.name = name
  3252  	c.revertinstancerequest = revertinstancerequest
  3253  	return c
  3254  }
  3255  
  3256  // Fields allows partial responses to be retrieved. See
  3257  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3258  // details.
  3259  func (c *ProjectsLocationsInstancesRevertCall) Fields(s ...googleapi.Field) *ProjectsLocationsInstancesRevertCall {
  3260  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3261  	return c
  3262  }
  3263  
  3264  // Context sets the context to be used in this call's Do method.
  3265  func (c *ProjectsLocationsInstancesRevertCall) Context(ctx context.Context) *ProjectsLocationsInstancesRevertCall {
  3266  	c.ctx_ = ctx
  3267  	return c
  3268  }
  3269  
  3270  // Header returns a http.Header that can be modified by the caller to add
  3271  // headers to the request.
  3272  func (c *ProjectsLocationsInstancesRevertCall) Header() http.Header {
  3273  	if c.header_ == nil {
  3274  		c.header_ = make(http.Header)
  3275  	}
  3276  	return c.header_
  3277  }
  3278  
  3279  func (c *ProjectsLocationsInstancesRevertCall) doRequest(alt string) (*http.Response, error) {
  3280  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3281  	var body io.Reader = nil
  3282  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.revertinstancerequest)
  3283  	if err != nil {
  3284  		return nil, err
  3285  	}
  3286  	c.urlParams_.Set("alt", alt)
  3287  	c.urlParams_.Set("prettyPrint", "false")
  3288  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:revert")
  3289  	urls += "?" + c.urlParams_.Encode()
  3290  	req, err := http.NewRequest("POST", urls, body)
  3291  	if err != nil {
  3292  		return nil, err
  3293  	}
  3294  	req.Header = reqHeaders
  3295  	googleapi.Expand(req.URL, map[string]string{
  3296  		"name": c.name,
  3297  	})
  3298  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3299  }
  3300  
  3301  // Do executes the "file.projects.locations.instances.revert" call.
  3302  // Any non-2xx status code is an error. Response headers are in either
  3303  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3304  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3305  // whether the returned error was because http.StatusNotModified was returned.
  3306  func (c *ProjectsLocationsInstancesRevertCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3307  	gensupport.SetOptions(c.urlParams_, opts...)
  3308  	res, err := c.doRequest("json")
  3309  	if res != nil && res.StatusCode == http.StatusNotModified {
  3310  		if res.Body != nil {
  3311  			res.Body.Close()
  3312  		}
  3313  		return nil, gensupport.WrapError(&googleapi.Error{
  3314  			Code:   res.StatusCode,
  3315  			Header: res.Header,
  3316  		})
  3317  	}
  3318  	if err != nil {
  3319  		return nil, err
  3320  	}
  3321  	defer googleapi.CloseBody(res)
  3322  	if err := googleapi.CheckResponse(res); err != nil {
  3323  		return nil, gensupport.WrapError(err)
  3324  	}
  3325  	ret := &Operation{
  3326  		ServerResponse: googleapi.ServerResponse{
  3327  			Header:         res.Header,
  3328  			HTTPStatusCode: res.StatusCode,
  3329  		},
  3330  	}
  3331  	target := &ret
  3332  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3333  		return nil, err
  3334  	}
  3335  	return ret, nil
  3336  }
  3337  
  3338  type ProjectsLocationsInstancesSnapshotsCreateCall struct {
  3339  	s          *Service
  3340  	parent     string
  3341  	snapshot   *Snapshot
  3342  	urlParams_ gensupport.URLParams
  3343  	ctx_       context.Context
  3344  	header_    http.Header
  3345  }
  3346  
  3347  // Create: Creates a snapshot.
  3348  //
  3349  //   - parent: The Filestore Instance to create the snapshots of, in the format
  3350  //     `projects/{project_id}/locations/{location}/instances/{instance_id}`.
  3351  func (r *ProjectsLocationsInstancesSnapshotsService) Create(parent string, snapshot *Snapshot) *ProjectsLocationsInstancesSnapshotsCreateCall {
  3352  	c := &ProjectsLocationsInstancesSnapshotsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3353  	c.parent = parent
  3354  	c.snapshot = snapshot
  3355  	return c
  3356  }
  3357  
  3358  // SnapshotId sets the optional parameter "snapshotId": Required. The ID to use
  3359  // for the snapshot. The ID must be unique within the specified instance. This
  3360  // value must start with a lowercase letter followed by up to 62 lowercase
  3361  // letters, numbers, or hyphens, and cannot end with a hyphen.
  3362  func (c *ProjectsLocationsInstancesSnapshotsCreateCall) SnapshotId(snapshotId string) *ProjectsLocationsInstancesSnapshotsCreateCall {
  3363  	c.urlParams_.Set("snapshotId", snapshotId)
  3364  	return c
  3365  }
  3366  
  3367  // Fields allows partial responses to be retrieved. See
  3368  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3369  // details.
  3370  func (c *ProjectsLocationsInstancesSnapshotsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsInstancesSnapshotsCreateCall {
  3371  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3372  	return c
  3373  }
  3374  
  3375  // Context sets the context to be used in this call's Do method.
  3376  func (c *ProjectsLocationsInstancesSnapshotsCreateCall) Context(ctx context.Context) *ProjectsLocationsInstancesSnapshotsCreateCall {
  3377  	c.ctx_ = ctx
  3378  	return c
  3379  }
  3380  
  3381  // Header returns a http.Header that can be modified by the caller to add
  3382  // headers to the request.
  3383  func (c *ProjectsLocationsInstancesSnapshotsCreateCall) Header() http.Header {
  3384  	if c.header_ == nil {
  3385  		c.header_ = make(http.Header)
  3386  	}
  3387  	return c.header_
  3388  }
  3389  
  3390  func (c *ProjectsLocationsInstancesSnapshotsCreateCall) doRequest(alt string) (*http.Response, error) {
  3391  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3392  	var body io.Reader = nil
  3393  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.snapshot)
  3394  	if err != nil {
  3395  		return nil, err
  3396  	}
  3397  	c.urlParams_.Set("alt", alt)
  3398  	c.urlParams_.Set("prettyPrint", "false")
  3399  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/snapshots")
  3400  	urls += "?" + c.urlParams_.Encode()
  3401  	req, err := http.NewRequest("POST", urls, body)
  3402  	if err != nil {
  3403  		return nil, err
  3404  	}
  3405  	req.Header = reqHeaders
  3406  	googleapi.Expand(req.URL, map[string]string{
  3407  		"parent": c.parent,
  3408  	})
  3409  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3410  }
  3411  
  3412  // Do executes the "file.projects.locations.instances.snapshots.create" call.
  3413  // Any non-2xx status code is an error. Response headers are in either
  3414  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3415  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3416  // whether the returned error was because http.StatusNotModified was returned.
  3417  func (c *ProjectsLocationsInstancesSnapshotsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3418  	gensupport.SetOptions(c.urlParams_, opts...)
  3419  	res, err := c.doRequest("json")
  3420  	if res != nil && res.StatusCode == http.StatusNotModified {
  3421  		if res.Body != nil {
  3422  			res.Body.Close()
  3423  		}
  3424  		return nil, gensupport.WrapError(&googleapi.Error{
  3425  			Code:   res.StatusCode,
  3426  			Header: res.Header,
  3427  		})
  3428  	}
  3429  	if err != nil {
  3430  		return nil, err
  3431  	}
  3432  	defer googleapi.CloseBody(res)
  3433  	if err := googleapi.CheckResponse(res); err != nil {
  3434  		return nil, gensupport.WrapError(err)
  3435  	}
  3436  	ret := &Operation{
  3437  		ServerResponse: googleapi.ServerResponse{
  3438  			Header:         res.Header,
  3439  			HTTPStatusCode: res.StatusCode,
  3440  		},
  3441  	}
  3442  	target := &ret
  3443  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3444  		return nil, err
  3445  	}
  3446  	return ret, nil
  3447  }
  3448  
  3449  type ProjectsLocationsInstancesSnapshotsDeleteCall struct {
  3450  	s          *Service
  3451  	name       string
  3452  	urlParams_ gensupport.URLParams
  3453  	ctx_       context.Context
  3454  	header_    http.Header
  3455  }
  3456  
  3457  // Delete: Deletes a snapshot.
  3458  //
  3459  //   - name: The snapshot resource name, in the format
  3460  //     `projects/{project_id}/locations/{location}/instances/{instance_id}/snapsho
  3461  //     ts/{snapshot_id}`.
  3462  func (r *ProjectsLocationsInstancesSnapshotsService) Delete(name string) *ProjectsLocationsInstancesSnapshotsDeleteCall {
  3463  	c := &ProjectsLocationsInstancesSnapshotsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3464  	c.name = name
  3465  	return c
  3466  }
  3467  
  3468  // Fields allows partial responses to be retrieved. See
  3469  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3470  // details.
  3471  func (c *ProjectsLocationsInstancesSnapshotsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsInstancesSnapshotsDeleteCall {
  3472  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3473  	return c
  3474  }
  3475  
  3476  // Context sets the context to be used in this call's Do method.
  3477  func (c *ProjectsLocationsInstancesSnapshotsDeleteCall) Context(ctx context.Context) *ProjectsLocationsInstancesSnapshotsDeleteCall {
  3478  	c.ctx_ = ctx
  3479  	return c
  3480  }
  3481  
  3482  // Header returns a http.Header that can be modified by the caller to add
  3483  // headers to the request.
  3484  func (c *ProjectsLocationsInstancesSnapshotsDeleteCall) Header() http.Header {
  3485  	if c.header_ == nil {
  3486  		c.header_ = make(http.Header)
  3487  	}
  3488  	return c.header_
  3489  }
  3490  
  3491  func (c *ProjectsLocationsInstancesSnapshotsDeleteCall) doRequest(alt string) (*http.Response, error) {
  3492  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  3493  	var body io.Reader = nil
  3494  	c.urlParams_.Set("alt", alt)
  3495  	c.urlParams_.Set("prettyPrint", "false")
  3496  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  3497  	urls += "?" + c.urlParams_.Encode()
  3498  	req, err := http.NewRequest("DELETE", urls, body)
  3499  	if err != nil {
  3500  		return nil, err
  3501  	}
  3502  	req.Header = reqHeaders
  3503  	googleapi.Expand(req.URL, map[string]string{
  3504  		"name": c.name,
  3505  	})
  3506  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3507  }
  3508  
  3509  // Do executes the "file.projects.locations.instances.snapshots.delete" call.
  3510  // Any non-2xx status code is an error. Response headers are in either
  3511  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3512  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3513  // whether the returned error was because http.StatusNotModified was returned.
  3514  func (c *ProjectsLocationsInstancesSnapshotsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3515  	gensupport.SetOptions(c.urlParams_, opts...)
  3516  	res, err := c.doRequest("json")
  3517  	if res != nil && res.StatusCode == http.StatusNotModified {
  3518  		if res.Body != nil {
  3519  			res.Body.Close()
  3520  		}
  3521  		return nil, gensupport.WrapError(&googleapi.Error{
  3522  			Code:   res.StatusCode,
  3523  			Header: res.Header,
  3524  		})
  3525  	}
  3526  	if err != nil {
  3527  		return nil, err
  3528  	}
  3529  	defer googleapi.CloseBody(res)
  3530  	if err := googleapi.CheckResponse(res); err != nil {
  3531  		return nil, gensupport.WrapError(err)
  3532  	}
  3533  	ret := &Operation{
  3534  		ServerResponse: googleapi.ServerResponse{
  3535  			Header:         res.Header,
  3536  			HTTPStatusCode: res.StatusCode,
  3537  		},
  3538  	}
  3539  	target := &ret
  3540  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3541  		return nil, err
  3542  	}
  3543  	return ret, nil
  3544  }
  3545  
  3546  type ProjectsLocationsInstancesSnapshotsGetCall struct {
  3547  	s            *Service
  3548  	name         string
  3549  	urlParams_   gensupport.URLParams
  3550  	ifNoneMatch_ string
  3551  	ctx_         context.Context
  3552  	header_      http.Header
  3553  }
  3554  
  3555  // Get: Gets the details of a specific snapshot.
  3556  //
  3557  //   - name: The snapshot resource name, in the format
  3558  //     `projects/{project_id}/locations/{location}/instances/{instance_id}/snapsho
  3559  //     ts/{snapshot_id}`.
  3560  func (r *ProjectsLocationsInstancesSnapshotsService) Get(name string) *ProjectsLocationsInstancesSnapshotsGetCall {
  3561  	c := &ProjectsLocationsInstancesSnapshotsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3562  	c.name = name
  3563  	return c
  3564  }
  3565  
  3566  // Fields allows partial responses to be retrieved. See
  3567  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3568  // details.
  3569  func (c *ProjectsLocationsInstancesSnapshotsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsInstancesSnapshotsGetCall {
  3570  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3571  	return c
  3572  }
  3573  
  3574  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  3575  // object's ETag matches the given value. This is useful for getting updates
  3576  // only after the object has changed since the last request.
  3577  func (c *ProjectsLocationsInstancesSnapshotsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsInstancesSnapshotsGetCall {
  3578  	c.ifNoneMatch_ = entityTag
  3579  	return c
  3580  }
  3581  
  3582  // Context sets the context to be used in this call's Do method.
  3583  func (c *ProjectsLocationsInstancesSnapshotsGetCall) Context(ctx context.Context) *ProjectsLocationsInstancesSnapshotsGetCall {
  3584  	c.ctx_ = ctx
  3585  	return c
  3586  }
  3587  
  3588  // Header returns a http.Header that can be modified by the caller to add
  3589  // headers to the request.
  3590  func (c *ProjectsLocationsInstancesSnapshotsGetCall) Header() http.Header {
  3591  	if c.header_ == nil {
  3592  		c.header_ = make(http.Header)
  3593  	}
  3594  	return c.header_
  3595  }
  3596  
  3597  func (c *ProjectsLocationsInstancesSnapshotsGetCall) doRequest(alt string) (*http.Response, error) {
  3598  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  3599  	if c.ifNoneMatch_ != "" {
  3600  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  3601  	}
  3602  	var body io.Reader = nil
  3603  	c.urlParams_.Set("alt", alt)
  3604  	c.urlParams_.Set("prettyPrint", "false")
  3605  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  3606  	urls += "?" + c.urlParams_.Encode()
  3607  	req, err := http.NewRequest("GET", urls, body)
  3608  	if err != nil {
  3609  		return nil, err
  3610  	}
  3611  	req.Header = reqHeaders
  3612  	googleapi.Expand(req.URL, map[string]string{
  3613  		"name": c.name,
  3614  	})
  3615  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3616  }
  3617  
  3618  // Do executes the "file.projects.locations.instances.snapshots.get" call.
  3619  // Any non-2xx status code is an error. Response headers are in either
  3620  // *Snapshot.ServerResponse.Header or (if a response was returned at all) in
  3621  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3622  // whether the returned error was because http.StatusNotModified was returned.
  3623  func (c *ProjectsLocationsInstancesSnapshotsGetCall) Do(opts ...googleapi.CallOption) (*Snapshot, error) {
  3624  	gensupport.SetOptions(c.urlParams_, opts...)
  3625  	res, err := c.doRequest("json")
  3626  	if res != nil && res.StatusCode == http.StatusNotModified {
  3627  		if res.Body != nil {
  3628  			res.Body.Close()
  3629  		}
  3630  		return nil, gensupport.WrapError(&googleapi.Error{
  3631  			Code:   res.StatusCode,
  3632  			Header: res.Header,
  3633  		})
  3634  	}
  3635  	if err != nil {
  3636  		return nil, err
  3637  	}
  3638  	defer googleapi.CloseBody(res)
  3639  	if err := googleapi.CheckResponse(res); err != nil {
  3640  		return nil, gensupport.WrapError(err)
  3641  	}
  3642  	ret := &Snapshot{
  3643  		ServerResponse: googleapi.ServerResponse{
  3644  			Header:         res.Header,
  3645  			HTTPStatusCode: res.StatusCode,
  3646  		},
  3647  	}
  3648  	target := &ret
  3649  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3650  		return nil, err
  3651  	}
  3652  	return ret, nil
  3653  }
  3654  
  3655  type ProjectsLocationsInstancesSnapshotsListCall struct {
  3656  	s            *Service
  3657  	parent       string
  3658  	urlParams_   gensupport.URLParams
  3659  	ifNoneMatch_ string
  3660  	ctx_         context.Context
  3661  	header_      http.Header
  3662  }
  3663  
  3664  // List: Lists all snapshots in a project for either a specified location or
  3665  // for all locations.
  3666  //
  3667  //   - parent: The instance for which to retrieve snapshot information, in the
  3668  //     format
  3669  //     `projects/{project_id}/locations/{location}/instances/{instance_id}`.
  3670  func (r *ProjectsLocationsInstancesSnapshotsService) List(parent string) *ProjectsLocationsInstancesSnapshotsListCall {
  3671  	c := &ProjectsLocationsInstancesSnapshotsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3672  	c.parent = parent
  3673  	return c
  3674  }
  3675  
  3676  // Filter sets the optional parameter "filter": List filter.
  3677  func (c *ProjectsLocationsInstancesSnapshotsListCall) Filter(filter string) *ProjectsLocationsInstancesSnapshotsListCall {
  3678  	c.urlParams_.Set("filter", filter)
  3679  	return c
  3680  }
  3681  
  3682  // OrderBy sets the optional parameter "orderBy": Sort results. Supported
  3683  // values are "name", "name desc" or "" (unsorted).
  3684  func (c *ProjectsLocationsInstancesSnapshotsListCall) OrderBy(orderBy string) *ProjectsLocationsInstancesSnapshotsListCall {
  3685  	c.urlParams_.Set("orderBy", orderBy)
  3686  	return c
  3687  }
  3688  
  3689  // PageSize sets the optional parameter "pageSize": The maximum number of items
  3690  // to return.
  3691  func (c *ProjectsLocationsInstancesSnapshotsListCall) PageSize(pageSize int64) *ProjectsLocationsInstancesSnapshotsListCall {
  3692  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  3693  	return c
  3694  }
  3695  
  3696  // PageToken sets the optional parameter "pageToken": The next_page_token value
  3697  // to use if there are additional results to retrieve for this list request.
  3698  func (c *ProjectsLocationsInstancesSnapshotsListCall) PageToken(pageToken string) *ProjectsLocationsInstancesSnapshotsListCall {
  3699  	c.urlParams_.Set("pageToken", pageToken)
  3700  	return c
  3701  }
  3702  
  3703  // Fields allows partial responses to be retrieved. See
  3704  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3705  // details.
  3706  func (c *ProjectsLocationsInstancesSnapshotsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsInstancesSnapshotsListCall {
  3707  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3708  	return c
  3709  }
  3710  
  3711  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  3712  // object's ETag matches the given value. This is useful for getting updates
  3713  // only after the object has changed since the last request.
  3714  func (c *ProjectsLocationsInstancesSnapshotsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsInstancesSnapshotsListCall {
  3715  	c.ifNoneMatch_ = entityTag
  3716  	return c
  3717  }
  3718  
  3719  // Context sets the context to be used in this call's Do method.
  3720  func (c *ProjectsLocationsInstancesSnapshotsListCall) Context(ctx context.Context) *ProjectsLocationsInstancesSnapshotsListCall {
  3721  	c.ctx_ = ctx
  3722  	return c
  3723  }
  3724  
  3725  // Header returns a http.Header that can be modified by the caller to add
  3726  // headers to the request.
  3727  func (c *ProjectsLocationsInstancesSnapshotsListCall) Header() http.Header {
  3728  	if c.header_ == nil {
  3729  		c.header_ = make(http.Header)
  3730  	}
  3731  	return c.header_
  3732  }
  3733  
  3734  func (c *ProjectsLocationsInstancesSnapshotsListCall) doRequest(alt string) (*http.Response, error) {
  3735  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  3736  	if c.ifNoneMatch_ != "" {
  3737  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  3738  	}
  3739  	var body io.Reader = nil
  3740  	c.urlParams_.Set("alt", alt)
  3741  	c.urlParams_.Set("prettyPrint", "false")
  3742  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/snapshots")
  3743  	urls += "?" + c.urlParams_.Encode()
  3744  	req, err := http.NewRequest("GET", urls, body)
  3745  	if err != nil {
  3746  		return nil, err
  3747  	}
  3748  	req.Header = reqHeaders
  3749  	googleapi.Expand(req.URL, map[string]string{
  3750  		"parent": c.parent,
  3751  	})
  3752  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3753  }
  3754  
  3755  // Do executes the "file.projects.locations.instances.snapshots.list" call.
  3756  // Any non-2xx status code is an error. Response headers are in either
  3757  // *ListSnapshotsResponse.ServerResponse.Header or (if a response was returned
  3758  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  3759  // check whether the returned error was because http.StatusNotModified was
  3760  // returned.
  3761  func (c *ProjectsLocationsInstancesSnapshotsListCall) Do(opts ...googleapi.CallOption) (*ListSnapshotsResponse, error) {
  3762  	gensupport.SetOptions(c.urlParams_, opts...)
  3763  	res, err := c.doRequest("json")
  3764  	if res != nil && res.StatusCode == http.StatusNotModified {
  3765  		if res.Body != nil {
  3766  			res.Body.Close()
  3767  		}
  3768  		return nil, gensupport.WrapError(&googleapi.Error{
  3769  			Code:   res.StatusCode,
  3770  			Header: res.Header,
  3771  		})
  3772  	}
  3773  	if err != nil {
  3774  		return nil, err
  3775  	}
  3776  	defer googleapi.CloseBody(res)
  3777  	if err := googleapi.CheckResponse(res); err != nil {
  3778  		return nil, gensupport.WrapError(err)
  3779  	}
  3780  	ret := &ListSnapshotsResponse{
  3781  		ServerResponse: googleapi.ServerResponse{
  3782  			Header:         res.Header,
  3783  			HTTPStatusCode: res.StatusCode,
  3784  		},
  3785  	}
  3786  	target := &ret
  3787  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3788  		return nil, err
  3789  	}
  3790  	return ret, nil
  3791  }
  3792  
  3793  // Pages invokes f for each page of results.
  3794  // A non-nil error returned from f will halt the iteration.
  3795  // The provided context supersedes any context provided to the Context method.
  3796  func (c *ProjectsLocationsInstancesSnapshotsListCall) Pages(ctx context.Context, f func(*ListSnapshotsResponse) error) error {
  3797  	c.ctx_ = ctx
  3798  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  3799  	for {
  3800  		x, err := c.Do()
  3801  		if err != nil {
  3802  			return err
  3803  		}
  3804  		if err := f(x); err != nil {
  3805  			return err
  3806  		}
  3807  		if x.NextPageToken == "" {
  3808  			return nil
  3809  		}
  3810  		c.PageToken(x.NextPageToken)
  3811  	}
  3812  }
  3813  
  3814  type ProjectsLocationsInstancesSnapshotsPatchCall struct {
  3815  	s          *Service
  3816  	name       string
  3817  	snapshot   *Snapshot
  3818  	urlParams_ gensupport.URLParams
  3819  	ctx_       context.Context
  3820  	header_    http.Header
  3821  }
  3822  
  3823  // Patch: Updates the settings of a specific snapshot.
  3824  //
  3825  //   - name: Output only. The resource name of the snapshot, in the format
  3826  //     `projects/{project_id}/locations/{location_id}/instances/{instance_id}/snap
  3827  //     shots/{snapshot_id}`.
  3828  func (r *ProjectsLocationsInstancesSnapshotsService) Patch(name string, snapshot *Snapshot) *ProjectsLocationsInstancesSnapshotsPatchCall {
  3829  	c := &ProjectsLocationsInstancesSnapshotsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3830  	c.name = name
  3831  	c.snapshot = snapshot
  3832  	return c
  3833  }
  3834  
  3835  // UpdateMask sets the optional parameter "updateMask": Required. Mask of
  3836  // fields to update. At least one path must be supplied in this field.
  3837  func (c *ProjectsLocationsInstancesSnapshotsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsInstancesSnapshotsPatchCall {
  3838  	c.urlParams_.Set("updateMask", updateMask)
  3839  	return c
  3840  }
  3841  
  3842  // Fields allows partial responses to be retrieved. See
  3843  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3844  // details.
  3845  func (c *ProjectsLocationsInstancesSnapshotsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsInstancesSnapshotsPatchCall {
  3846  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3847  	return c
  3848  }
  3849  
  3850  // Context sets the context to be used in this call's Do method.
  3851  func (c *ProjectsLocationsInstancesSnapshotsPatchCall) Context(ctx context.Context) *ProjectsLocationsInstancesSnapshotsPatchCall {
  3852  	c.ctx_ = ctx
  3853  	return c
  3854  }
  3855  
  3856  // Header returns a http.Header that can be modified by the caller to add
  3857  // headers to the request.
  3858  func (c *ProjectsLocationsInstancesSnapshotsPatchCall) Header() http.Header {
  3859  	if c.header_ == nil {
  3860  		c.header_ = make(http.Header)
  3861  	}
  3862  	return c.header_
  3863  }
  3864  
  3865  func (c *ProjectsLocationsInstancesSnapshotsPatchCall) doRequest(alt string) (*http.Response, error) {
  3866  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3867  	var body io.Reader = nil
  3868  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.snapshot)
  3869  	if err != nil {
  3870  		return nil, err
  3871  	}
  3872  	c.urlParams_.Set("alt", alt)
  3873  	c.urlParams_.Set("prettyPrint", "false")
  3874  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  3875  	urls += "?" + c.urlParams_.Encode()
  3876  	req, err := http.NewRequest("PATCH", urls, body)
  3877  	if err != nil {
  3878  		return nil, err
  3879  	}
  3880  	req.Header = reqHeaders
  3881  	googleapi.Expand(req.URL, map[string]string{
  3882  		"name": c.name,
  3883  	})
  3884  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3885  }
  3886  
  3887  // Do executes the "file.projects.locations.instances.snapshots.patch" call.
  3888  // Any non-2xx status code is an error. Response headers are in either
  3889  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  3890  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  3891  // whether the returned error was because http.StatusNotModified was returned.
  3892  func (c *ProjectsLocationsInstancesSnapshotsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  3893  	gensupport.SetOptions(c.urlParams_, opts...)
  3894  	res, err := c.doRequest("json")
  3895  	if res != nil && res.StatusCode == http.StatusNotModified {
  3896  		if res.Body != nil {
  3897  			res.Body.Close()
  3898  		}
  3899  		return nil, gensupport.WrapError(&googleapi.Error{
  3900  			Code:   res.StatusCode,
  3901  			Header: res.Header,
  3902  		})
  3903  	}
  3904  	if err != nil {
  3905  		return nil, err
  3906  	}
  3907  	defer googleapi.CloseBody(res)
  3908  	if err := googleapi.CheckResponse(res); err != nil {
  3909  		return nil, gensupport.WrapError(err)
  3910  	}
  3911  	ret := &Operation{
  3912  		ServerResponse: googleapi.ServerResponse{
  3913  			Header:         res.Header,
  3914  			HTTPStatusCode: res.StatusCode,
  3915  		},
  3916  	}
  3917  	target := &ret
  3918  	if err := gensupport.DecodeResponse(target, res); err != nil {
  3919  		return nil, err
  3920  	}
  3921  	return ret, nil
  3922  }
  3923  
  3924  type ProjectsLocationsOperationsCancelCall struct {
  3925  	s                      *Service
  3926  	name                   string
  3927  	canceloperationrequest *CancelOperationRequest
  3928  	urlParams_             gensupport.URLParams
  3929  	ctx_                   context.Context
  3930  	header_                http.Header
  3931  }
  3932  
  3933  // Cancel: Starts asynchronous cancellation on a long-running operation. The
  3934  // server makes a best effort to cancel the operation, but success is not
  3935  // guaranteed. If the server doesn't support this method, it returns
  3936  // `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or
  3937  // other methods to check whether the cancellation succeeded or whether the
  3938  // operation completed despite cancellation. On successful cancellation, the
  3939  // operation is not deleted; instead, it becomes an operation with an
  3940  // Operation.error value with a google.rpc.Status.code of 1, corresponding to
  3941  // `Code.CANCELLED`.
  3942  //
  3943  // - name: The name of the operation resource to be cancelled.
  3944  func (r *ProjectsLocationsOperationsService) Cancel(name string, canceloperationrequest *CancelOperationRequest) *ProjectsLocationsOperationsCancelCall {
  3945  	c := &ProjectsLocationsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  3946  	c.name = name
  3947  	c.canceloperationrequest = canceloperationrequest
  3948  	return c
  3949  }
  3950  
  3951  // Fields allows partial responses to be retrieved. See
  3952  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  3953  // details.
  3954  func (c *ProjectsLocationsOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsCancelCall {
  3955  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  3956  	return c
  3957  }
  3958  
  3959  // Context sets the context to be used in this call's Do method.
  3960  func (c *ProjectsLocationsOperationsCancelCall) Context(ctx context.Context) *ProjectsLocationsOperationsCancelCall {
  3961  	c.ctx_ = ctx
  3962  	return c
  3963  }
  3964  
  3965  // Header returns a http.Header that can be modified by the caller to add
  3966  // headers to the request.
  3967  func (c *ProjectsLocationsOperationsCancelCall) Header() http.Header {
  3968  	if c.header_ == nil {
  3969  		c.header_ = make(http.Header)
  3970  	}
  3971  	return c.header_
  3972  }
  3973  
  3974  func (c *ProjectsLocationsOperationsCancelCall) doRequest(alt string) (*http.Response, error) {
  3975  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  3976  	var body io.Reader = nil
  3977  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.canceloperationrequest)
  3978  	if err != nil {
  3979  		return nil, err
  3980  	}
  3981  	c.urlParams_.Set("alt", alt)
  3982  	c.urlParams_.Set("prettyPrint", "false")
  3983  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:cancel")
  3984  	urls += "?" + c.urlParams_.Encode()
  3985  	req, err := http.NewRequest("POST", urls, body)
  3986  	if err != nil {
  3987  		return nil, err
  3988  	}
  3989  	req.Header = reqHeaders
  3990  	googleapi.Expand(req.URL, map[string]string{
  3991  		"name": c.name,
  3992  	})
  3993  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  3994  }
  3995  
  3996  // Do executes the "file.projects.locations.operations.cancel" call.
  3997  // Any non-2xx status code is an error. Response headers are in either
  3998  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  3999  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4000  // whether the returned error was because http.StatusNotModified was returned.
  4001  func (c *ProjectsLocationsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  4002  	gensupport.SetOptions(c.urlParams_, opts...)
  4003  	res, err := c.doRequest("json")
  4004  	if res != nil && res.StatusCode == http.StatusNotModified {
  4005  		if res.Body != nil {
  4006  			res.Body.Close()
  4007  		}
  4008  		return nil, gensupport.WrapError(&googleapi.Error{
  4009  			Code:   res.StatusCode,
  4010  			Header: res.Header,
  4011  		})
  4012  	}
  4013  	if err != nil {
  4014  		return nil, err
  4015  	}
  4016  	defer googleapi.CloseBody(res)
  4017  	if err := googleapi.CheckResponse(res); err != nil {
  4018  		return nil, gensupport.WrapError(err)
  4019  	}
  4020  	ret := &Empty{
  4021  		ServerResponse: googleapi.ServerResponse{
  4022  			Header:         res.Header,
  4023  			HTTPStatusCode: res.StatusCode,
  4024  		},
  4025  	}
  4026  	target := &ret
  4027  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4028  		return nil, err
  4029  	}
  4030  	return ret, nil
  4031  }
  4032  
  4033  type ProjectsLocationsOperationsDeleteCall struct {
  4034  	s          *Service
  4035  	name       string
  4036  	urlParams_ gensupport.URLParams
  4037  	ctx_       context.Context
  4038  	header_    http.Header
  4039  }
  4040  
  4041  // Delete: Deletes a long-running operation. This method indicates that the
  4042  // client is no longer interested in the operation result. It does not cancel
  4043  // the operation. If the server doesn't support this method, it returns
  4044  // `google.rpc.Code.UNIMPLEMENTED`.
  4045  //
  4046  // - name: The name of the operation resource to be deleted.
  4047  func (r *ProjectsLocationsOperationsService) Delete(name string) *ProjectsLocationsOperationsDeleteCall {
  4048  	c := &ProjectsLocationsOperationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4049  	c.name = name
  4050  	return c
  4051  }
  4052  
  4053  // Fields allows partial responses to be retrieved. See
  4054  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4055  // details.
  4056  func (c *ProjectsLocationsOperationsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsDeleteCall {
  4057  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4058  	return c
  4059  }
  4060  
  4061  // Context sets the context to be used in this call's Do method.
  4062  func (c *ProjectsLocationsOperationsDeleteCall) Context(ctx context.Context) *ProjectsLocationsOperationsDeleteCall {
  4063  	c.ctx_ = ctx
  4064  	return c
  4065  }
  4066  
  4067  // Header returns a http.Header that can be modified by the caller to add
  4068  // headers to the request.
  4069  func (c *ProjectsLocationsOperationsDeleteCall) Header() http.Header {
  4070  	if c.header_ == nil {
  4071  		c.header_ = make(http.Header)
  4072  	}
  4073  	return c.header_
  4074  }
  4075  
  4076  func (c *ProjectsLocationsOperationsDeleteCall) doRequest(alt string) (*http.Response, error) {
  4077  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4078  	var body io.Reader = nil
  4079  	c.urlParams_.Set("alt", alt)
  4080  	c.urlParams_.Set("prettyPrint", "false")
  4081  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  4082  	urls += "?" + c.urlParams_.Encode()
  4083  	req, err := http.NewRequest("DELETE", urls, body)
  4084  	if err != nil {
  4085  		return nil, err
  4086  	}
  4087  	req.Header = reqHeaders
  4088  	googleapi.Expand(req.URL, map[string]string{
  4089  		"name": c.name,
  4090  	})
  4091  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4092  }
  4093  
  4094  // Do executes the "file.projects.locations.operations.delete" call.
  4095  // Any non-2xx status code is an error. Response headers are in either
  4096  // *Empty.ServerResponse.Header or (if a response was returned at all) in
  4097  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4098  // whether the returned error was because http.StatusNotModified was returned.
  4099  func (c *ProjectsLocationsOperationsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
  4100  	gensupport.SetOptions(c.urlParams_, opts...)
  4101  	res, err := c.doRequest("json")
  4102  	if res != nil && res.StatusCode == http.StatusNotModified {
  4103  		if res.Body != nil {
  4104  			res.Body.Close()
  4105  		}
  4106  		return nil, gensupport.WrapError(&googleapi.Error{
  4107  			Code:   res.StatusCode,
  4108  			Header: res.Header,
  4109  		})
  4110  	}
  4111  	if err != nil {
  4112  		return nil, err
  4113  	}
  4114  	defer googleapi.CloseBody(res)
  4115  	if err := googleapi.CheckResponse(res); err != nil {
  4116  		return nil, gensupport.WrapError(err)
  4117  	}
  4118  	ret := &Empty{
  4119  		ServerResponse: googleapi.ServerResponse{
  4120  			Header:         res.Header,
  4121  			HTTPStatusCode: res.StatusCode,
  4122  		},
  4123  	}
  4124  	target := &ret
  4125  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4126  		return nil, err
  4127  	}
  4128  	return ret, nil
  4129  }
  4130  
  4131  type ProjectsLocationsOperationsGetCall struct {
  4132  	s            *Service
  4133  	name         string
  4134  	urlParams_   gensupport.URLParams
  4135  	ifNoneMatch_ string
  4136  	ctx_         context.Context
  4137  	header_      http.Header
  4138  }
  4139  
  4140  // Get: Gets the latest state of a long-running operation. Clients can use this
  4141  // method to poll the operation result at intervals as recommended by the API
  4142  // service.
  4143  //
  4144  // - name: The name of the operation resource.
  4145  func (r *ProjectsLocationsOperationsService) Get(name string) *ProjectsLocationsOperationsGetCall {
  4146  	c := &ProjectsLocationsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4147  	c.name = name
  4148  	return c
  4149  }
  4150  
  4151  // Fields allows partial responses to be retrieved. See
  4152  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4153  // details.
  4154  func (c *ProjectsLocationsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsGetCall {
  4155  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4156  	return c
  4157  }
  4158  
  4159  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  4160  // object's ETag matches the given value. This is useful for getting updates
  4161  // only after the object has changed since the last request.
  4162  func (c *ProjectsLocationsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsGetCall {
  4163  	c.ifNoneMatch_ = entityTag
  4164  	return c
  4165  }
  4166  
  4167  // Context sets the context to be used in this call's Do method.
  4168  func (c *ProjectsLocationsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOperationsGetCall {
  4169  	c.ctx_ = ctx
  4170  	return c
  4171  }
  4172  
  4173  // Header returns a http.Header that can be modified by the caller to add
  4174  // headers to the request.
  4175  func (c *ProjectsLocationsOperationsGetCall) Header() http.Header {
  4176  	if c.header_ == nil {
  4177  		c.header_ = make(http.Header)
  4178  	}
  4179  	return c.header_
  4180  }
  4181  
  4182  func (c *ProjectsLocationsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
  4183  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4184  	if c.ifNoneMatch_ != "" {
  4185  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4186  	}
  4187  	var body io.Reader = nil
  4188  	c.urlParams_.Set("alt", alt)
  4189  	c.urlParams_.Set("prettyPrint", "false")
  4190  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}")
  4191  	urls += "?" + c.urlParams_.Encode()
  4192  	req, err := http.NewRequest("GET", urls, body)
  4193  	if err != nil {
  4194  		return nil, err
  4195  	}
  4196  	req.Header = reqHeaders
  4197  	googleapi.Expand(req.URL, map[string]string{
  4198  		"name": c.name,
  4199  	})
  4200  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4201  }
  4202  
  4203  // Do executes the "file.projects.locations.operations.get" call.
  4204  // Any non-2xx status code is an error. Response headers are in either
  4205  // *Operation.ServerResponse.Header or (if a response was returned at all) in
  4206  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  4207  // whether the returned error was because http.StatusNotModified was returned.
  4208  func (c *ProjectsLocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
  4209  	gensupport.SetOptions(c.urlParams_, opts...)
  4210  	res, err := c.doRequest("json")
  4211  	if res != nil && res.StatusCode == http.StatusNotModified {
  4212  		if res.Body != nil {
  4213  			res.Body.Close()
  4214  		}
  4215  		return nil, gensupport.WrapError(&googleapi.Error{
  4216  			Code:   res.StatusCode,
  4217  			Header: res.Header,
  4218  		})
  4219  	}
  4220  	if err != nil {
  4221  		return nil, err
  4222  	}
  4223  	defer googleapi.CloseBody(res)
  4224  	if err := googleapi.CheckResponse(res); err != nil {
  4225  		return nil, gensupport.WrapError(err)
  4226  	}
  4227  	ret := &Operation{
  4228  		ServerResponse: googleapi.ServerResponse{
  4229  			Header:         res.Header,
  4230  			HTTPStatusCode: res.StatusCode,
  4231  		},
  4232  	}
  4233  	target := &ret
  4234  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4235  		return nil, err
  4236  	}
  4237  	return ret, nil
  4238  }
  4239  
  4240  type ProjectsLocationsOperationsListCall struct {
  4241  	s            *Service
  4242  	name         string
  4243  	urlParams_   gensupport.URLParams
  4244  	ifNoneMatch_ string
  4245  	ctx_         context.Context
  4246  	header_      http.Header
  4247  }
  4248  
  4249  // List: Lists operations that match the specified filter in the request. If
  4250  // the server doesn't support this method, it returns `UNIMPLEMENTED`.
  4251  //
  4252  // - name: The name of the operation's parent resource.
  4253  func (r *ProjectsLocationsOperationsService) List(name string) *ProjectsLocationsOperationsListCall {
  4254  	c := &ProjectsLocationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  4255  	c.name = name
  4256  	return c
  4257  }
  4258  
  4259  // Filter sets the optional parameter "filter": The standard list filter.
  4260  func (c *ProjectsLocationsOperationsListCall) Filter(filter string) *ProjectsLocationsOperationsListCall {
  4261  	c.urlParams_.Set("filter", filter)
  4262  	return c
  4263  }
  4264  
  4265  // PageSize sets the optional parameter "pageSize": The standard list page
  4266  // size.
  4267  func (c *ProjectsLocationsOperationsListCall) PageSize(pageSize int64) *ProjectsLocationsOperationsListCall {
  4268  	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
  4269  	return c
  4270  }
  4271  
  4272  // PageToken sets the optional parameter "pageToken": The standard list page
  4273  // token.
  4274  func (c *ProjectsLocationsOperationsListCall) PageToken(pageToken string) *ProjectsLocationsOperationsListCall {
  4275  	c.urlParams_.Set("pageToken", pageToken)
  4276  	return c
  4277  }
  4278  
  4279  // Fields allows partial responses to be retrieved. See
  4280  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  4281  // details.
  4282  func (c *ProjectsLocationsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsListCall {
  4283  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  4284  	return c
  4285  }
  4286  
  4287  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  4288  // object's ETag matches the given value. This is useful for getting updates
  4289  // only after the object has changed since the last request.
  4290  func (c *ProjectsLocationsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsListCall {
  4291  	c.ifNoneMatch_ = entityTag
  4292  	return c
  4293  }
  4294  
  4295  // Context sets the context to be used in this call's Do method.
  4296  func (c *ProjectsLocationsOperationsListCall) Context(ctx context.Context) *ProjectsLocationsOperationsListCall {
  4297  	c.ctx_ = ctx
  4298  	return c
  4299  }
  4300  
  4301  // Header returns a http.Header that can be modified by the caller to add
  4302  // headers to the request.
  4303  func (c *ProjectsLocationsOperationsListCall) Header() http.Header {
  4304  	if c.header_ == nil {
  4305  		c.header_ = make(http.Header)
  4306  	}
  4307  	return c.header_
  4308  }
  4309  
  4310  func (c *ProjectsLocationsOperationsListCall) doRequest(alt string) (*http.Response, error) {
  4311  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  4312  	if c.ifNoneMatch_ != "" {
  4313  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  4314  	}
  4315  	var body io.Reader = nil
  4316  	c.urlParams_.Set("alt", alt)
  4317  	c.urlParams_.Set("prettyPrint", "false")
  4318  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}/operations")
  4319  	urls += "?" + c.urlParams_.Encode()
  4320  	req, err := http.NewRequest("GET", urls, body)
  4321  	if err != nil {
  4322  		return nil, err
  4323  	}
  4324  	req.Header = reqHeaders
  4325  	googleapi.Expand(req.URL, map[string]string{
  4326  		"name": c.name,
  4327  	})
  4328  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  4329  }
  4330  
  4331  // Do executes the "file.projects.locations.operations.list" call.
  4332  // Any non-2xx status code is an error. Response headers are in either
  4333  // *ListOperationsResponse.ServerResponse.Header or (if a response was returned
  4334  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
  4335  // check whether the returned error was because http.StatusNotModified was
  4336  // returned.
  4337  func (c *ProjectsLocationsOperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) {
  4338  	gensupport.SetOptions(c.urlParams_, opts...)
  4339  	res, err := c.doRequest("json")
  4340  	if res != nil && res.StatusCode == http.StatusNotModified {
  4341  		if res.Body != nil {
  4342  			res.Body.Close()
  4343  		}
  4344  		return nil, gensupport.WrapError(&googleapi.Error{
  4345  			Code:   res.StatusCode,
  4346  			Header: res.Header,
  4347  		})
  4348  	}
  4349  	if err != nil {
  4350  		return nil, err
  4351  	}
  4352  	defer googleapi.CloseBody(res)
  4353  	if err := googleapi.CheckResponse(res); err != nil {
  4354  		return nil, gensupport.WrapError(err)
  4355  	}
  4356  	ret := &ListOperationsResponse{
  4357  		ServerResponse: googleapi.ServerResponse{
  4358  			Header:         res.Header,
  4359  			HTTPStatusCode: res.StatusCode,
  4360  		},
  4361  	}
  4362  	target := &ret
  4363  	if err := gensupport.DecodeResponse(target, res); err != nil {
  4364  		return nil, err
  4365  	}
  4366  	return ret, nil
  4367  }
  4368  
  4369  // Pages invokes f for each page of results.
  4370  // A non-nil error returned from f will halt the iteration.
  4371  // The provided context supersedes any context provided to the Context method.
  4372  func (c *ProjectsLocationsOperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error {
  4373  	c.ctx_ = ctx
  4374  	defer c.PageToken(c.urlParams_.Get("pageToken"))
  4375  	for {
  4376  		x, err := c.Do()
  4377  		if err != nil {
  4378  			return err
  4379  		}
  4380  		if err := f(x); err != nil {
  4381  			return err
  4382  		}
  4383  		if x.NextPageToken == "" {
  4384  			return nil
  4385  		}
  4386  		c.PageToken(x.NextPageToken)
  4387  	}
  4388  }
  4389  

View as plain text